Задачи

Облачный Pyrus
Безоблачный Pyrus

Задачи в Pyrus бывают двух типов: обычные задачи и задачи по форме.

Обычная задача содержит фиксированный набор полей: заголовок и текст, а так же массив участников.

Задача по форме отличается от простой задачи тем, что в ней может быть заранее настроена маршрутизация и добавлены необходимые для работы поля.

Любое изменение задачи, например изменение значений полей или загрузка вложений, производится добавлением в нее комментария.

Подробнее о задачах и формах можно прочитать в справке.

Методы

GET /tasks/{task-id}

Получение обычной задачи со всеми комментариями

У обычной задачи есть три поля, которых нет у задачи по форме: text — текст задачи, responsible — ответственный за задачу и participants — массив участников задачи, из которых может быть выбран ответственный за нее.

GET https://api.pyrus.com/v4/tasks/11611

Тело ответа

{
  "task": {
    "id": 11613,
    "text": "Payments",
    "create_date": "2017-08-17T14:31:18Z",
    "last_modified_date": "2017-08-18T10:00:11Z",
    "author": {
      "id": 1731,
      "first_name": "Bob",
      "last_name": "Smith",
      "email": "Bob.Smith@gmail.com",
      "type": "user"
    },
    "form_id": 1345,
    "responsible": {
      "id": 1733,
      "first_name": "John",
      "last_name": "Snow",
      "email": "John.Snow@gmail.com",
      "type": "user"
    },
    "approvals": [
      [
        {
          "person": {
            "id": 1733,
            "first_name": "John",
            "last_name": "Snow",
            "email": "John.Snow@gmail.com",
            "type": "user"
          },
          "approval_choice": "waiting"
        }
      ],
      [
        {
          "person": {
            "id": 1731,
            "first_name": "Bob",
            "last_name": "Smith",
            "email": "Bob.Smith@gmail.com",
            "type": "user"
          },
          "approval_choice": "waiting"
        }
      ]
    ],
    "fields": [
      {
        "id": 1,
        "type": "text",
        "name": "Purpose",
        "value": "IT conference in Amsterdam"
      },
      {
        "id": 2,
        "type": "money",
        "name": "Amount",
        "value": 10306.25
      },
      {
        "id": 3,
        "type": "catalog",
        "name": "Payment type",
        "value": {
          "item_id": 845,
          "headers": [
            "Payment types"
          ],
          "values": [
            "IT Conference"
          ]
        }
      },
      {
        "id": 4,
        "type": "table",
        "name": "Payment Schedule",
        "value" : [
          {
            "row_id": 0,
            "cells": [
              {
                "id": 9,
                "type": "date",
                "name": "Date",
                "value": "2017-08-26",
                "parent_id": 4,
                "row_id": 0
              },
              {
                "id": 6,
                "type": "money",
                "name": "Amount",
                "value": 10000,
                "parent_id": 4,
                "row_id": 0
              }
            ]
          },
          {
            "row_id": 1,
            "cells": [
              {
                "id": 9,
                "type": "date",
                "name": "Date",
                "value": "2017-08-27",
                "parent_id": 4,
                "row_id": 1
              },
              {
                "id": 6,
                "type": "money",
                "name": "Amount",
                "value": 306.25,
                "parent_id": 4,
                "row_id": 1
              }
            ]
          }
        ]
      }
    ],
    "comments": [
      {
        "id": 13767,
        "create_date": "2017-08-17T14:31:18Z",
        "author": {
          "id": 1731,
          "first_name": "Bob",
          "last_name": "Smith",
          "email": "Bob.Smith@gmail.com",
          "type": "user"
        },
        "reassigned_to": {
          "id": 1730,
          "first_name": "John",
          "last_name": "Snow",
          "email": "John.Snow@gmail.com",
          "type": "user"
        },
        "approvals_added": [
          [
            {
              "person": {
                "id": 1733,
                "first_name": "John",
                "last_name": "Snow",
                "email": "John.Snow@gmail.com",
                "type": "user"
              },
              "step": 1
            },
            {
              "person": {
                "id": 1725,
                "first_name": "Jane",
                "last_name": "Doe",
                "email": "Jane.Doe@gmail.com",
                "type": "user"
              },
              "step": 1
            }
          ],
          [
            {
              "person": {
                "id": 1731,
                "first_name": "Bob",
                "last_name": "Smith",
                "email": "Bob.Smith@gmail.com",
                "type": "user"
              },
              "step": 2
            }
          ]
        ],
        "field_updates": [
          {
            "id": 1,
            "type": "text",
            "name": "Purpose",
            "value": "IT conference in Amsterdam"
          },
          {
            "id": 2,
            "type": "money",
            "name": "Amount",
            "value": 10306.25
          },
          {
            "id": 3,
            "type": "catalog",
            "name": "Payment type",
            "value": {
              "item_id": 845,
              "headers": [
                "Payment types"
              ],
              "values": [
                "IT Conference"
              ]
            }
          },
          {
            "id": 4,
            "type": "table",
            "name": "Payment Schedule",
            "value" : [
              {
                "row_id": 0,
                "cells": [
                  {
                    "id": 9,
                    "type": "date",
                    "name": "Date",
                    "value": "2017-08-26",
                    "parent_id": 4,
                    "row_id": 0
                  },
                  {
                    "id": 6,
                    "type": "money",
                    "name": "Amount",
                    "value": 10000,
                    "parent_id": 4,
                    "row_id": 0
                  }
                ]
              },
              {
                "row_id": 1,
                "cells": [
                  {
                    "id": 9,
                    "type": "date",
                    "name": "Date",
                    "value": "2017-08-27",
                    "parent_id": 4,
                    "row_id": 1
                  },
                  {
                    "id": 6,
                    "type": "money",
                    "name": "Amount",
                    "value": 306.25,
                    "parent_id": 4,
                    "row_id": 1
                  }
                ]
              },
              {
                "row_id": 2,
                "deleted": true
              }
            ]
          },
          {
            "id": 13768,
            "create_date": "2017-08-18T10:00:11Z",
            "author": {
              "id": 1731,
              "first_name": "Bob",
              "last_name": "Smith",
              "email": "Bob.Smith@gmail.com",
              "type": "user"
            },
            "text": "",
            "approvals_removed": [
              [{
                "person": {
                  "id": 1725,
                  "first_name": "Jane",
                  "last_name": "Doe",
                  "email": "Jane.Doe@gmail.com",
                  "type": "user"
                },
                "step": 1
              }]
            ]
          }
        ]
      }
    ]
  }
}

curl

curl -X GET \
  'https://api.pyrus.com/v4/tasks/11611' \
  -H 'Authorization: Bearer <YOUR_ACCESS_TOKEN>' \
  -H 'Content-Type: application/json'

Получение задачи по форме со всеми комментариями

У задачи по форме есть три дополнительных поля form_id — идентификатор шаблона формы, fields — массив всех полей формы и approvals массив шагов согласования.

GET https://api.pyrus.com/v4/tasks/11613

Тело ответа

{
  "task": {
    "id": 11613,
    "text": "Payments",
    "create_date": "2017-08-17T14:31:18Z",
    "last_modified_date": "2017-08-18T10:00:11Z",
    "author": {
      "id": 1731,
      "first_name": "Bob",
      "last_name": "Smith",
      "email": "Bob.Smith@gmail.com",
      "type": "user"
    },
    "form_id": 1345,
    "responsible": {
      "id": 1733,
      "first_name": "John",
      "last_name": "Snow",
      "email": "John.Snow@gmail.com",
      "type": "user"
    },
    "approvals": [
      [
        {
          "person": {
            "id": 1733,
            "first_name": "John",
            "last_name": "Snow",
            "email": "John.Snow@gmail.com",
            "type": "user"
          },
          "approval_choice": "waiting"
        }
      ],
      [
        {
          "person": {
            "id": 1731,
            "first_name": "Bob",
            "last_name": "Smith",
            "email": "Bob.Smith@gmail.com",
            "type": "user"
          },
          "approval_choice": "waiting"
        }
      ]
    ],
    "fields": [
      {
        "id": 1,
        "type": "text",
        "name": "Purpose",
        "value": "IT conference in Amsterdam"
      },
      {
        "id": 2,
        "type": "money",
        "name": "Amount",
        "value": 10306.25
      },
      {
        "id": 3,
        "type": "catalog",
        "name": "Payment type",
        "value": {
          "item_id": 845,
          "headers": [
            "Payment types"
          ],
          "values": [
            "IT Conference"
          ]
        }
      },
      {
        "id": 4,
        "type": "table",
        "name": "Payment Schedule",
        "value" : [
          {
            "row_id": 0,
            "cells": [
              {
                "id": 9,
                "type": "date",
                "name": "Date",
                "value": "2017-08-26",
                "parent_id": 4,
                "row_id": 0
              },
              {
                "id": 6,
                "type": "money",
                "name": "Amount",
                "value": 10000,
                "parent_id": 4,
                "row_id": 0
              }
            ]
          },
          {
            "row_id": 1,
            "cells": [
              {
                "id": 9,
                "type": "date",
                "name": "Date",
                "value": "2017-08-27",
                "parent_id": 4,
                "row_id": 1
              },
              {
                "id": 6,
                "type": "money",
                "name": "Amount",
                "value": 306.25,
                "parent_id": 4,
                "row_id": 1
              }
            ]
          }
        ]
      }
    ],
    "comments": [
      {
        "id": 13767,
        "create_date": "2017-08-17T14:31:18Z",
        "author": {
          "id": 1731,
          "first_name": "Bob",
          "last_name": "Smith",
          "email": "Bob.Smith@gmail.com",
          "type": "user"
        },
        "reassigned_to": {
          "id": 1730,
          "first_name": "John",
          "last_name": "Snow",
          "email": "John.Snow@gmail.com",
          "type": "user"
        },
        "approvals_added": [
          [
            {
              "person": {
                "id": 1733,
                "first_name": "John",
                "last_name": "Snow",
                "email": "John.Snow@gmail.com",
                "type": "user"
              },
              "step": 1
            },
            {
              "person": {
                "id": 1725,
                "first_name": "Jane",
                "last_name": "Doe",
                "email": "Jane.Doe@gmail.com",
                "type": "user"
              },
              "step": 1
            }
          ],
          [
            {
              "person": {
                "id": 1731,
                "first_name": "Bob",
                "last_name": "Smith",
                "email": "Bob.Smith@gmail.com",
                "type": "user"
              },
              "step": 2
            }
          ]
        ],
        "field_updates": [
          {
            "id": 1,
            "type": "text",
            "name": "Purpose",
            "value": "IT conference in Amsterdam"
          },
          {
            "id": 2,
            "type": "money",
            "name": "Amount",
            "value": 10306.25
          },
          {
            "id": 3,
            "type": "catalog",
            "name": "Payment type",
            "value": {
              "item_id": 845,
              "headers": [
                "Payment types"
              ],
              "values": [
                "IT Conference"
              ]
            }
          },
          {
            "id": 4,
            "type": "table",
            "name": "Payment Schedule",
            "value" : [
              {
                "row_id": 0,
                "cells": [
                  {
                    "id": 9,
                    "type": "date",
                    "name": "Date",
                    "value": "2017-08-26",
                    "parent_id": 4,
                    "row_id": 0
                  },
                  {
                    "id": 6,
                    "type": "money",
                    "name": "Amount",
                    "value": 10000,
                    "parent_id": 4,
                    "row_id": 0
                  }
                ]
              },
              {
                "row_id": 1,
                "cells": [
                  {
                    "id": 9,
                    "type": "date",
                    "name": "Date",
                    "value": "2017-08-27",
                    "parent_id": 4,
                    "row_id": 1
                  },
                  {
                    "id": 6,
                    "type": "money",
                    "name": "Amount",
                    "value": 306.25,
                    "parent_id": 4,
                    "row_id": 1
                  }
                ]
              }
            ]
          },
          {
            "id": 13768,
            "create_date": "2017-08-18T10:00:11Z",
            "author": {
              "id": 1731,
              "first_name": "Bob",
              "last_name": "Smith",
              "email": "Bob.Smith@gmail.com",
              "type": "user"
            },
            "text": "",
            "approvals_removed": [
              [{
                "person": {
                  "id": 1725,
                  "first_name": "Jane",
                  "last_name": "Doe",
                  "email": "Jane.Doe@gmail.com",
                  "type": "user"
                },
                "step": 1
              }]
            ]
          }
        ]
      }
    ]
  }
}

curl

curl -X GET \
  'https://api.pyrus.com/v4/tasks/11613' \
  -H 'Authorization: Bearer <YOUR_ACCESS_TOKEN>' \
  -H 'Content-Type: application/json'

POST /tasks

Создание обычной задачи

Метод возвращает созданную задачу с комментарием.

POST https://api.pyrus.com/v4/tasks

Тело запроса

{
  "text": "Help with printer",
  "responsible": {
    "id": 1733
  },
  "participants": [
    {
      "id": 1733
    },
    {
      "email": "Bob.Smith@gmail.com"
    }
  ]
}

Тело ответа

{
  "task": {
    "id": 11611,
    "text": "Help with printer",
    "create_date": "2017-08-17T15:32:11Z",
    "last_modified_date": "2017-08-17T15:32:11Z",
    "author": {
      "id": 1731,
      "first_name": "Bob",
      "last_name": "Smith",
      "email": "Bob.Smith@gmail.com",
      "type": "user"
    },
    "responsible": {
      "id": 1733,
      "first_name": "John",
      "last_name": "Snow",
      "email": "John.Snow@gmail.com",
      "type": "user"
    },
    "participants": [
      {
        "id": 1733,
        "first_name": "John",
        "last_name": "Snow",
        "email": "John.Snow@gmail.com",
        "type": "user"
      },
      {
        "id": 1731,
        "first_name": "Bob",
        "last_name": "Smith",
        "email": "Bob.Smith@gmail.com",
        "type": "user"
      }
    ],
    "comments": [
      {
        "id": 13767,
        "text": "Help with printer",
        "create_date": "2017-08-17T15:32:11Z",
        "author": {
          "id": 1731,
          "first_name": "Bob",
          "last_name": "Smith",
          "email": "Bob.Smith@gmail.com",
         "type": "user"
        },
        "reassigned_to": {
          "id": 1733,
          "first_name": "John",
          "last_name": "Snow",
          "email": "John.Snow@gmail.com",
          "type": "user"
        },
        "participants_added": [
          {
            "id": 1733,
            "first_name": "John",
            "last_name": "Snow",
            "email": "John.Snow@gmail.com",
            "type": "user"
          },
          {
            "id": 1731,
            "first_name": "Bob",
            "last_name": "Smith",
            "email": "Bob.Smith@gmail.com",
            "type": "user"
          }
        ]
      }
    ]
  }
}

curl

curl -X POST \
  https://api.pyrus.com/v4/tasks/ \
  -H 'Authorization: Bearer <YOUR_ACCESS_TOKEN>' \
  -H 'Content-Type: application/json' \
  -d '{
  "text": "Help with printer",
  "responsible": {
    "id": 1733
  },
  "participants": [
    {
      "id": 1733
    },
    {
      "email": "Bob.Smith@gmail.com"
    }
  ]
}'

Создание задачи по форме

Метод возвращает созданную задачу с комментарием.

POST https://api.pyrus.com/v4/tasks

Тело запроса

{
  "form_id": 1345,
  "fields": [
    {
      "id": 1,
      "value": "IT conference in Amsterdam"
    },
    {
      "id": 2,
      "value": 10306.25
    },
    {
      "id": 3,
      "value": {
        "item_id": 845
      }
    },
    {
      "id": 4,
      "value": [
        {
          "row_id": 0,
          "cells": [
            {
              "id": 6,
              "value": "2017-08-26"
            },
            {
              "id": 9,
              "value": 10000
            }
          ]
        }
      ]
    }
  ]
}

Тело ответа

{
  "task": {
    "id": 11615,
    "text": "Payments",
    "create_date": "2017-08-17T14:31:18Z",
    "last_modified_date": "2017-08-17T14:31:18Z",
    "author": {
      "id": 1731,
      "first_name": "Bob",
      "last_name": "Smith",
      "email": "Bob.Smith@gmail.com",
      "type": "user"
    },
    "form_id": 1345,
    "approvals": [
      [
        {
          "id": 1733,
          "first_name": "John",
          "last_name": "Snow",
          "email": "John.Snow@gmail.com",
          "type": "user"
        },
        {
          "id": 1725,
          "first_name": "Jane",
          "last_name": "Doe",
          "email": "Jane.Doe@gmail.com",
          "type": "user"
        }
      ],
      [
        {
          "id": 1731,
          "first_name": "Bob",
          "last_name": "Smith",
          "email": "Bob.Smith@gmail.com",
          "type": "user"
        }
      ]
    ],
    "fields": [
      {
        "id": 1,
        "type": "text",
        "name": "Purpose",
        "value": "IT conference in Amsterdam"
      },
      {
        "id": 2,
        "type": "money",
        "name": "Amount",
        "value": 10306.25
      },
      {
        "id": 3,
        "type": "catalog",
        "name": "Payment type",
        "value": {
          "item_id": 845,
          "headers": [
            "Payment types"
          ],
          "values": [
            "IT Conference"
          ]
        }
      },
      {
        "id": 4,
        "type": "table",
        "name": "Payment Schedule",
        "value" : [
          {
            "row_id": 0,
            "cells": [
              {
                "id": 9,
                "type": "date",
                "name": "Date",
                "value": "2017-08-26",
                "parent_id": 4,
                "row_id": 0
              },
              {
                "id": 6,
                "type": "money",
                "name": "Amount",
                "value": 10000,
                "parent_id": 4,
                "row_id": 0
              }
            ]
          }
        ]
      }
    ],
    "comments": [
      {
        "id": 13767,
        "create_date": "2017-08-17T14:31:18Z",
        "author": {
          "id": 1731,
          "first_name": "Bob",
          "last_name": "Smith",
          "email": "Bob.Smith@gmail.com",
          "type": "user"
        },
        "reassigned_to": {
          "id": 1730,
          "first_name": "John",
          "last_name": "Snow",
          "email": "John.Snow@gmail.com",
          "type": "user"
        },
        "approvals_added": [
          [
            {
              "person": {
                "id": 1733,
                "first_name": "John",
                "last_name": "Snow",
                "email": "John.Snow@gmail.com",
                "type": "user"
              },
              "step": 1
            },
            {
              "person": {
                "id": 1725,
                "first_name": "Jane",
                "last_name": "Doe",
                "email": "Jane.Doe@gmail.com",
                "type": "user"
              },
              "step": 1
            }
          ],
          [
            {
              "person": {
                "id": 1731,
                "first_name": "Bob",
                "last_name": "Smith",
                "email": "Bob.Smith@gmail.com",
                "type": "user"
              },
              "step": 2
            }
          ]
        ],
        "field_updates": [
          {
            "id": 1,
            "type": "text",
            "name": "Purpose",
            "value": "IT conference in Amsterdam"
          },
          {
            "id": 2,
            "type": "money",
            "name": "Amount",
            "value": 10306.25
          },
          {
            "id": 3,
            "type": "catalog",
            "name": "Payment type",
            "value": {
              "item_id": 845,
              "headers": [
                "Payment types"
              ],
              "values": [
                "IT Conference"
              ]
            }
          },
          {
            "id": 4,
            "type": "table",
            "name": "Payment Schedule",
            "value" : [
              {
                "row_id": 0,
                "cells": [
                  {
                    "id": 9,
                    "type": "date",
                    "name": "Date",
                    "value": "2017-08-26",
                    "parent_id": 4,
                    "row_id": 0
                  },
                  {
                    "id": 6,
                    "type": "money",
                    "name": "Amount",
                    "value": 10000,
                    "parent_id": 4,
                    "row_id": 0
                  }
                ]
              }
            ]
          }
        ]
      }
    ]
  }
}

curl

curl -X POST \
  https://api.pyrus.com/v4/tasks/ \
  -H 'Authorization: Bearer <YOUR_ACCESS_TOKEN>' \
  -H 'Content-Type: application/json' \
  -d '{
  "form_id": 1345,
  "fields": [
    {
      "id": 1,
      "value": "IT conference in Amsterdam"
    },
    {
      "id": 2,
      "value": 10306.25
    },
    {
      "id": 3,
      "value": {
        "item_id": 845
      }
    },
    {
      "id": 4,
      "value": [
        {
          "row_id": 0,
          "cells": [
            {
              "id": 6,
              "value": "2017-08-26"
            },
            {
              "id": 9,
              "value": 10000
            }
          ]
        }
      ]
    }
  ]
}'

Параметры

НаименованиеОписаниеОбычная задачаЗадача по форме
text *Текст задачи.
responsibleИдентификатор id или эл. адрес email ответственного за задачу.
due_dateСрок задачи (может быть указано только одно из свойств due_date или due).
dueСрок задачи со временем (может быть указано только одно из свойств due_date или due).
durationПродолжительность события в минутах (используется только совместно с due).
subjectЗаголовок задачи. Если не заполнено, в качестве заголовка будет использована первая строка текста задачи.
participantsМассив участников задачи, состоящий из идентификаторов id или эл. адресов email пользователей.
subscribersМассив наблюдателей задачи, — состоит из идентификаторов id или адресов электронной почты пользователей и их согласований.
parent_task_idИдентификатор надзадачи.
list_idsМассив идентификаторов списков.

attachments**

Поддерживается два варианта представления информации о файлах: Вариант 1: Массив строк, каждая из которых может быть:

  • guid загруженного файла. Загрузить файл и получить его идентификатор можно с помощью метода files/upload.

  • id уже приложенного к какой-либо задаче файла.

  • url уже приложенного к какой-либо задаче файла (можно указать и URL произвольного файла из сети, но в этом случае нельзя будет указать к нему имя ссылки).

  • guid — уникальный идентификатор загруженного файла.

  • root_id — ID уже приложенного файла для создания новой версии (опционально). или

  • attachment_id — ID уже приложенного к какой-либо задаче файла. или

  • url — URL уже приложенного к какой-либо задаче файла, либо URL произвольного файла из сети (в этом случае следует указать name).

  • name — имя, которое будет отображаться для ссылки (опционально; для URL файла из Pyrus игнорируется).

scheduled_dateЗапланировать задачу на указанную дату. Задача вернется во входящие в 7 утра во временной зоне клиента.Формат: YYYY-MM-DD.
scheduled_datetime_utcЗапланировать задачу на указанное время в нулевой временной зоне.Формат: YYYY-MM-DDThh:mm:ssZ
approvalsМассив шагов согласования, состоящий из массивов идентификаторов id или эл. адресов email пользователей.
form_id *Идентификатор шаблона формы.
fieldsМассив значений формы. Каждое значение включает в себя поля id и value. Подробное описание формата значений в зависимости от типа поля вы найдете на странице Формат полей формы.
fill_defaultsФлаг, указывающий необходимость заполнения полей формы значениями по умолчанию из шаблона формы.По умолчанию: false

* Поле обязательно для заполнения.

**guid файла может быть использован только один раз (в рамках одного запроса он не может быть передан дважды). При повторных прикреплениях файлов к задаче будут создаваться новые приложенные файлы.

POST /tasks/{task-id}/comments

Добавление комментария в задачу. Метод возвращает задачу со всеми комментариями, включая добавленный.

POST https://api.pyrus.com/v4/tasks/11613/comments

Тело запроса

{
  "text": "It's done.",
  "action": "finished"
}

Тело ответа

{
  "task": {
    "id": 11613,
    "text": "Payments",
    "create_date": "2017-08-17T14:31:18Z",
    "last_modified_date": "2017-08-18T10:02:23Z",
    "author": {
      "id": 1731,
      "first_name": "Bob",
      "last_name": "Smith",
      "email": "Bob.Smith@gmail.com",
      "type": "user"
    },
    "form_id": 1345,
    "approvals": [
      [
        {
          "person": {
            "id": 1733,
            "first_name": "John",
            "last_name": "Snow",
            "email": "John.Snow@gmail.com",
            "type": "user"
          },
          "approval_choice": "waiting"
        }
      ],
      [
        {
          "person": {
            "id": 1731,
            "first_name": "Bob",
            "last_name": "Smith",
            "email": "Bob.Smith@gmail.com",
            "type": "user"
          },
          "approval_choice": "waiting"
        }
      ]
    ],
    "fields": [
      {
        "id": 1,
        "type": "text",
        "name": "Purpose",
        "value": "IT conference in Amsterdam"
      },
      {
        "id": 2,
        "type": "money",
        "name": "Amount",
        "value": 10306.25
      },
      {
        "id": 3,
        "type": "catalog",
        "name": "Payment type",
        "value": {
          "item_id": 845,
          "headers": [
            "Payment types"
          ],
          "values": [
            "IT Conference"
          ]
        }
      },
      {
        "id": 4,
        "type": "table",
        "name": "Payment Schedule",
        "value": [
          {
            "row_id": 0,
            "cells": [
              {
                "id": 9,
                "type": "date",
                "name": "Date",
                "value": "2017-08-26",
                "parent_id": 4,
                "row_id": 0
              },
              {
                "id": 6,
                "type": "money",
                "name": "Amount",
                "value": 10000,
                "parent_id": 4,
                "row_id": 0
              }
            ]
          },
          {
            "row_id": 1,
            "cells": [
              {
                "id": 9,
                "type": "date",
                "name": "Date",
                "value": "2017-08-27",
                "parent_id": 4,
                "row_id": 1
              },
              {
                "id": 6,
                "type": "money",
                "name": "Amount",
                "value": 306.25,
                "parent_id": 4,
                "row_id": 1
              }
            ]
          }
        ]
      }
    ],
    "comments": [
      {
        "id": 13767,
        "create_date": "2017-08-17T14:31:18Z",
        "author": {
          "id": 1731,
          "first_name": "Bob",
          "last_name": "Smith",
          "email": "Bob.Smith@gmail.com",
          "type": "user"
        },
        "reassigned_to": {
          "id": 1730,
          "first_name": "John"
          "last_name": "Snow",
          "email": "John.Snow@gmail.com",
          "type": "user"
        },
        "approvals_added": [
          [
            {
              "person": {
                "id": 1733,
                "first_name": "John",
                "last_name": "Snow",
                "email": "John.Snow@gmail.com",
                "type": "user"
              },
              "step": 1
            },
            {
              "person": {
                "id": 1725,
                "first_name": "Jane",
                "last_name": "Doe",
                "email": "Jane.Doe@gmail.com",
                "type": "user"
              },
              "step": 1
            }
          ],
          [
            {
              "person": {
                "id": 1731,
                "first_name": "Bob",
                "last_name": "Smith",
                "email": "Bob.Smith@gmail.com",
                "type": "user"
              },
              "step": 2
            }
          ]
        ],
        "field_updates": [
          {
            "id": 1,
            "type": "text",
            "name": "Purpose",
            "text": "IT conference in Amsterdam"
          },
          {
            "id": 2,
            "type": "money",
            "name": "Amount",
            "number": 10306.25
          },
          {
            "id": 3,
            "type": "catalog",
            "name": "Payment type",
            "value": {
              "item_id": 845,
              "headers": [
                "Payment types"
              ],
              "values": [
                "IT Conference"
              ]
            }
          },
          {
            "id": 4,
            "type": "table",
            "name": "Payment Schedule",
            "value": [
              {
                "row_id": 0,
                "cells": [
                  {
                    "id": 9,
                    "type": "date",
                    "name": "Date",
                    "value": "2017-08-26",
                    "parent_id": 4,
                    "row_id": 0
                  },
                  {
                    "id": 6,
                    "type": "money",
                    "name": "Amount",
                    "value": 10000,
                    "parent_id": 4,
                    "row_id": 0
                  }
                ]
              },
              {
                "row_id": 1,
                "cells": [
                  {
                    "id": 9,
                    "type": "date",
                    "name": "Date",
                    "value": "2017-08-27",
                    "parent_id": 4,
                    "row_id": 1
                  },
                  {
                    "id": 6,
                    "type": "money",
                    "name": "Amount",
                    "value": 306.25,
                    "parent_id": 4,
                    "row_id": 1
                  }
                ]
              }
            ]
          }
        ]
      },
      {
        "id": 13768,
        "create_date": "2017-08-18T10:00:11Z",
        "author": {
          "id": 1731,
          "first_name": "Bob",
          "last_name": "Smith",
          "email": "Bob.Smith@gmail.com",
          "type": "user"
        },
        "text": ""
        "approvals_removed": [
          [{
            "id": 1725,
            "first_name": "Jane",
            "last_name": "Doe",
            "email": "Jane.Doe@gmail.com",
            "type": "user"
          },
          "step": 1
          ]
        ]
      },
      {
        "id": 13768,
        "create_date": "2017-08-18T10:02:23Z",
        "author": {
          "id": 1731,
          "first_name": "Bob",
          "last_name": "Smith",
          "email": "Bob.Smith@gmail.com",
          "type": "user"
        },
        "text": "It's done.",
        "action": "finished"
      }
    ]
  }
}

curl

curl -X POST \
  https://api.pyrus.com/v4/tasks/11613/comments \
  -H 'Authorization: Bearer <YOUR_ACCESS_TOKEN>' \
  -H 'Content-Type: application/json' \
  -d '{
  "text": "It's done.",
  "action": "finished"
}'

Параметры

В комментарии к задаче необходимо заполнить хотя бы одно из приведенных ниже полей. В задаче будут изменены только значения полей, которые вы передали в запросе.

textТекст комментария.

formatted_text

Текст комментария, содержащий форматирование html. Допустимые html-теги:

  • <i>text</i> — наклонный;
  • <br> — перенос на новую строку;
  • <code>text</code> код;
  • <b>text</b> — полужирный;
  • <s>text</s> — зачеркнутый;
  • <div data-type="heading">text<br></div> — заголовок;
  • <q>text<br></q> — цитата;
  • <mark data-color="red">text</mark> — красный цвет;
  • <mark data-color="yellow">text</mark> — желтый цвет;
  • <mark data-color="green">text</mark> — зеленый цвет;
  • <mark data-color="blue">text</mark> — синий цвет;
  • <ul><li>text1<br></li><li>text2<br></li></ul> — маркированный список;
  • <ol><li>text1<br></li><li>text2<br></li></ol> — нумерованный список;
  • <a href="url">text</a> — гиперссылка;
  • <button>text</button> — кнопка.
edit_comment_idОбновить текст существующего комментария. Опциональный параметр, целочисленный идентификатор существующего комментария, который требуется изменить.
subjectЗаголовок задачи. Применимо только для простой задачи.
due_dateСрок задачи (может быть указано только одно из свойств due_date или due).
dueСрок задачи со временем (может быть указано только одно из свойств due_date или due).
durationПродолжительность события в минутах (используется только совместно с due).
cancel_dueОтменить срок задачи (due_date, due и duration будут удалены).
action
  • finished — закрыть задачу
  • reopened — переоткрыть задачу
approval_choice
  • approved — утвердить
  • acknowledged — отметить, что задача просмотрена
  • rejected — отклонить
  • revoked — аннулировать свое согласование
reassign_toИдентификатор id или эл. адрес email пользователя на которого будет переназначена задача.

approvals_added

Добавляемая маршрутизация, является массивом шагов согласования, состоящим из массивов идентификаторов id или эл. адресов email пользователей. Применимо только для задачи по форме.Пример:

"approvals_added": [
  [
    {
      "id": 1234
    }
  ],
  [],
  [
    {
      "id": 4321
    }
  ]
]
approvals_removed*Удаляемая маршрутизация, является массивом шагов согласования, состоящим из массивов идентификаторов id или эл. адресов email пользователей.Применимо только для задачи по форме.
approvals_rerequestedПовторно запрошенная маршрутизация, является массивом шагов согласования, состоящим из массивов идентификаторов id или эл. адресов email пользователей. Применимо только для задачи по форме.
subscribers_addedДобавляемые наблюдатели: массив идентификаторов id или адресов электронной почты пользователей.
subscribers_removedУдаляемые наблюдатели: массив идентификаторов id или адресов электронной почты пользователей.
subscribers_rerequestedНаблюдатели, от которых требуется дополнительное согласование: массив идентификаторов id или адресов электронной почты пользователей.
participants_addedДобавляемые участники, массив идентификаторов id или эл. адресов email пользователей.Применимо только для простой задачи.
participants_removedУдаляемые участники, массив идентификаторов id или эл. адресов email пользователей.Применимо только для простой задачи.
field_updatesМассив обновляемых значений формы. Каждое значение включает в себя поля id и value. Подробное описание формата значений в зависимости от типа поля вы найдете на странице Формат полей формы.

attachments

Поддерживается два варианта представления информации о файлах: Вариант 1: Массив строк, каждая из которых может быть:

  • guid загруженного файла. Загрузить файл и получить его идентификатор можно с помощью метода files/upload.

  • id уже приложенного к какой-либо задаче файла.

  • url уже приложенного к какой-либо задаче файла (можно указать и URL произвольного файла из сети, но в этом случае нельзя будет указать к нему имя ссылки).

    Вариант 2: Массив объектов, которые могут содержать следующие поля:

  • guid — уникальный идентификатор загруженного файла.

  • root_id — ID уже приложенного файла для создания новой версии (опционально). или

  • attachment_id — ID уже приложенного к какой-либо задаче файла. или

  • url — URL уже приложенного к какой-либо задаче файла, либо URL произвольного файла из сети (в этом случае следует указать name).

  • name — имя, которое будет отображаться для ссылки (опционально; для URL файла из Pyrus игнорируется).

added_list_idsМассив идентификаторов списков в которые необходимо добавить задачу.
removed_list_idsМассив идентификаторов списков из которых необходимо исключить задачу.
scheduled_dateЗапланировать задачу на указанную дату. Задача вернется во входящие в 7 утра во временной зоне клиента.Формат: YYYY-MM-DD.
scheduled_datetime_utcЗапланировать задачу на указанное время в нулевой временной зоне.Формат: YYYY-MM-DDThh:mm:ssZ
cancel_scheduleОтменить планирование. Задача вернется во входящие.

channel

Комментарий будет отправлен по внешнему каналу (email, Telegram, Facebook, VK, Viber, Instagram, Private Channel [Заметки], WhatsApp, Web Widget, Mobile App, SMS**). Применимо только для задачи по форме.Формат:

"channel": {
  "type": "email"
}
"channel": {
  "type": "telegram"
}
"channel": {
  "type": "facebook"
}
"channel": {
  "type": "vk"
}
"channel": {
  "type": "viber"
}
"channel": {
  "type": "instagram"
}
"channel": {
  "type": "private_channel"
}
"channel": {
  "type": "whats_app"
}
"channel": {
  "type": "web_widget"
}
"channel": {
  "type": "mobile_app"
}
"channel": {
  "type": "sms",
  "phone": "+79999999999"
}
spent_minutesЗатраченное время в минутах.
skip_satisfactionНе запрашивать у клиента обратную связь для оценки качества обслуживания при закрытии заявки.
skip_notificationПозволяет комментировать задачу без отправки уведомлений участникам, такая задача не отображается как непрочитанная.

*Если согласующие на этапах добавлены в задачу через настройки маршрутизации формы, удалить нельзя. Если согласующего добавить в уже созданную по форме задачу, его можно удалить.

**Отправка SMS-сообщений возможна после заключения дополнительного соглашения. Для подключения интеграции с SMS обратитесь в службу поддержки Pyrus

Была ли эта статья полезной?