Ошибки и ограничения
Облачный Pyrus
Безоблачный Pyrus
Ограничение количества запросов
К методам Pyrus API можно обращаться не чаще 5000 раз в 10 минут для каждого пользователя.
В HTTP-заголовках ответа содержится дополнительная информация по ограничениям:
X-RateLimit-Limit— максимальное количество запросов, разрешенное в данном временном интервале;X-RateLimit-Remaining— количество запросов до превышения ограничения в данном временном интервале;X-RateLimit-Reset— количество секунд до начала следующего временного интервала.
После превышения лимита доступ к Pyrus API будет ограничен. В таком случае вы получите ответ с кодом состояния 429:
{
"error_code": "too_many_requests",
"error": "You have reached the limit of requests per 10 minutes."
}
Другие ограничения
- Максимально допустимое количество элементов справочника — 50000.
- Максимально допустимая длина элемента справочника — 500.
- Максимально допустимое количество комментариев к задаче — 10000.
- Максимально допустимое количество приложенных к задаче файлов — 3000.
- Максимально допустимое количество приложенных к комментарию файлов — 100.
- Максимально допустимое количество этапов в задаче — 20.
- Максимальное количество задач, получаемых в одном запросе списка задач по форме, — 20000.
Возможные ошибки
Все методы API возвращают ошибки в формате JSON. Пример ошибки может выглядеть так:
{
"error_code": "revoked_token",
"error": "Authorization token has been revoked"
}
Кроме текста ошибки, ответ содержит её код, который можно обрабатывать автоматически. Тексты ошибок могут меняться, но их коды останутся неизменными.
Ниже приведены коды ошибок, которые могут возникать при работе с API.
| Код | Описание |
|---|---|
| server_error | Внутренняя ошибка сервера, обратитесь в службу поддержки. |
| invalid_credentials | Неправильный логин/секретный ключ. |
| token_not_specified | Не указан токен авторизации. Необходимо указать токен в HTTP-заголовке Authorization. |
| revoked_token | Токен авторизации был отозван. Необходимо получить новый токен. |
| expired_token | Время токена истекло. Необходимо получить новый токен. |
| invalid_token | Неверный токен авторизации. Необходимо проверить корректность токена или получить новый. |
| account_blocked | Учётная запись пользователя, выполняющего запрос, заблокирована. Свяжитесь с администратором вашей организации. |
| authorization_error | Неизвестная ошибка авторизации. Проверьте правильность передаваемых параметров и повторите запрос. |
| invalid_field_id | Поле с указанным идентификатором отсутствует. Проверьте корректность передаваемых параметров. |
| deleted_field | Поле с указанным идентификатором было удалено. Проверьте корректность передаваемых параметров. |
| invalid_field_name | Поле с указанным названием отсутствует. Проверьте корректность передаваемых параметров. |
| invalid_field_id_name | Поле с указанным названием и идентификатором отсутствует. Проверьте корректность передаваемых параметров. |
| non_unique_name | Название поля не уникально в пределах формы. Используйте идентификатор поля формы для записи значения. |
| field_identity_missing | В запросе не заполнено ни одно из обязательных полей формы id/name. |
| duplicate_field | Попытка изменить одно из полей формы несколько раз в одном запросе. |
| invalid_catalog_id | Справочника c указанным в шаблоне формы идентификатором не существует. |
| invalid_catalog_item_name | Элемент с указанным наименованием в справочнике отсутствует. |
| non_unique_catalog_item_name | В справочнике найдено несколько элементов с одинаковым наименованием. Для записи значения используйте идентификатор соответствующего элемента. |
| invalid_catalog_item_id | Элемента справочника с указанным идентификатором не существует. |
| catalog_item_id_name_mismatch | В элементе справочника с указанным идентификатором не найдено указанного значения. |
| invalid_email | Пользователя с указанной эл. почтой не найдено. |
| non_unique_email | Пользователь с указанным идентификатором не найден. |
| invalid_person_id | Эл. почта пользователя с указанным идентификатором отличается от указанной. |
| invalid_person_id_email | Эл. почта пользователя с указанным идентификатором отличается от указанной. |
| form_has_no_task | Задача с указанным идентификатором, созданным по указанному шаблону формы, не существует. Проверьте корректность передаваемых параметров. |
| unrecognized_attachment_id | Идентификатор прикладываемого файла неверен. У пользователя отсутствует файл с указанным идентификатором. |
| required_field_missing | Не заполнено обязательное поле формы (в сообщении об ошибке будет указано, какое именно). |
| type_is_not_supported | Данный тип поля не поддерживает запись значения. |
| catalog_identity_missing | Не указан идентификатор значения в каталоге, необходимый для записи значения в поле типа Каталог. |
| incorrect_parameters_count | Некорректное количество параметров для выбранного оператора фильтрации. |
| filter_type_is_not_supported | Поле данного типа не поддерживается в качестве параметра фильтрации. |
| step_field_does_not_exists | Данная форма не содержит поля с типом step. Фильтрация по номеру этапа недоступна. |
| catalog_item_id_missing | Для записи значения в поле типа Справочник необходимо указать свойство item_id. |
| person_identity_missing | Для записи значения типа person необходимо указать ID или эл. почту пользователя. |
| either_due_date_or_due_can_be_set | Невозможно одновременно установить due_date и due для одной задачи. |
| negative_duration | Продолжительность события не может быть отрицательной. |
| duration_is_too_long | Превышена максимальная продолжительность события (1 год). |
| due_missing | Невозможно установить продолжительность события (duration) без срока (due). |
| scheduled_date_in_past | Запланированная дата не может быть в прошлом. |
| cannot_add_form_project | Нельзя прикреплять задачу к проекту формы, а также к подпроектам формы. |
| form_template_cant_be_removed_from_task | Список с шаблоном формы не может быть удалён из задачи. |
| no_file_in_request | Запрос не содержит файлов. |
| too_large_request_length | Превышен лимит объема передаваемых данных. Возможно, вы прикрепляете файл слишком большого размера. |
| required_parameter_missing | Не заполнен один из обязательных параметров запроса (в сообщении об ошибке будет указано, какой именно). |
| invalid_value_format | Не удается преобразовать переданное значение для заданного типа (в сообщении об ошибке будет указано, для какого именно) |
| too_many_task_steps | Превышено максимально допустимое количество этапов в задаче (20). |
| too_many_comments | Превышено максимально допустимое количество комментариев к задаче (10000). |
| invalid_step_number | Номер этапа не может быть меньше 1. |
| task_limit_exceeded | Превышено максимально допустимое количество задач для вашей организации. |
| field_is_in_table | Поле, которое вы пытаетесь изменить, является частью таблицы. Чтобы изменить его, необходимо изменить значение таблицы. |
| required_table_field_missing | Не заполнено обязательное поле внутри таблицы. В тексте ошибки будет указано название таблицы, название поля и номер строки. |
| department_catalog_can_not_be_modified | С помощью этого метода нельзя обновить справочник отделов организации. |
| catalog_duplicate_rows | Справочник содержит повторяющиеся строки. |
| empty_catalog_headers | Заголовки справочника не могут быть пустыми. |
| can_not_modify_deleted_catalog | Справочник, который вы пытаетесь изменить, удалён. |
| can_not_modify_first_column | Вы не можете изменить первую колонку справочника, так как она является ключевой. |
| catalog_headers_items_mismatch | Заголовки и значения не согласованы. |
| too_many_catalog_items | Превышено максимально допустимое количество элементов справочника (15000). |
| catalog_item_max_length_exceeded | Превышена максимально допустимая длина элемента справочника (500). |
| catalog_duplicate_headers | В справочнике найдены повторяющиеся колонки. |
| invalid_json | Переданные в запросе данные не являются корректным json. |
| empty_body | Тело запроса не может быть пустым. |
| access_denied_project | Нет прав доступа к запрашиваемому проекту. Убедитесь, что у пользователя, от имени которого выполняется запрос, есть все необходимые права. |
| access_denied_task | Нет прав доступа к запрашиваемой задаче. Убедитесь, что у пользователя, от имени которого выполняется запрос, есть все необходимые права. |
| access_denied_close_task | Недостаточно прав для закрытия задачи. |
| access_denied_reopen_task | Недостаточно прав для переоткрытия задачи. |
| access_denied_catalog | Нет прав доступа к запрашиваемому справочнику. Убедитесь, что у пользователя, от имени которого выполняется запрос, есть все необходимые права. |
| access_denied_form | Нет прав доступа к запрашиваемой форме. Убедитесь, что у пользователя, от имени которого выполняется запрос, есть все необходимые права. |
| access_denied_person | Вы не можете взаимодействовать с указанным пользователем. Убедитесь, что пользователь есть в списке ваших контактов или отправьте ему запрос на знакомство. |
| too_many_requests | Превышено максимальное количество запросов за период. Подождите несколько минут и повторите запрос. |
| empty_file | Нельзя загрузить пустой файл. |
| bad_multipart_content | Неверный формат тела запроса. |
| invalid_table_row | Вы не можете обновить строки таблицы, которые были удалены или не были созданы. |
| cannot_add_external_user | Вы не можете добавить сотрудника другой организации в задачу. |
| option_is_not_supported | Выбранная опция не поддерживается в данном методе API. |
| no_rights_to_send_sms | Вы не можете отправить SMS из этой формы из-за отсутствия доступа (гостевого доступа для отправки SMS недостаточно). |
| sms_integration_not_configured | SMS-интеграция не настроена для данной формы. Для настройки обратитесь в службу поддержки Pyrus. |
| invalid_application_id | Не удалось найти форму по идентификатору мобильного приложения / веб-виджета. |
| text_missing | Не заполнено обязательное поле типа Текст при создании задачи. |
| form_id_missing | Поле form_id не может быть пустым. |
| single_value_is_not_supported | Вы не можете записать значение в поле {название, id поля} с помощью свойства {название устаревшего свойства}. Используйте {актуальное свойство} вместо него. |
| participant_limit_exceeded | В задаче не может участвовать больше 1000 пользователей. |
| table_rows_limit_exceeded | В задаче не может участвовать больше 1000 пользователей. |
| text_field_value_limit_exceeded | Поле типа Текст не может содержать значение длиннее 512Kb. Пожалуйста, сократите значения поля или приложите текст в виде файла. |
| unable_to_edit_field | Поле {id, название поля} не может быть изменено на текущем этапе. |
| too_many_decimal_places | В поле {id, название} установлено ограничение на {количество} знаков после запятой. |
| external_comment_empty_text | Не заполнено обязательное для внешнего комментария поле типа Текст. |
| sender_address_field_missing | Форма не содержит поле с кодом {код поля}. |
| external_comment_recipient_not_found | Интеграция с эл. почтой в форме не настроена. Не найдено поле с кодом "SenderAddress". |
| default_mailbox_not_found | У данной формы нет привязанного почтового ящика для отправки внешних комментариев. |
| catalog_null_value | Null - значение недопустимо в каталоге. |
| max_text_length_exceeded | Значение поля с id {id поля} и name {название поля} превышает максимально допустимую длину: {максимальная длина}. |
| due_outside_of_bounds | Недопустимое значение срока. Разрешены значения между 01.01.1970 0:00:00 и 01.01.2099 0:00:00. |
| attachments_forbidden | К этой задаче не разрешается прикладывать файлы. |
| unrecognized_call_guid | Звонка с таким идентификатором не существует. |
| unsupported_attachment_format | Тип файла во вложении не поддерживается. |
| validation_error | Некорректный запрос: {описание причины}. |
| access_denied_file_access_history | Недостаточно прав для просмотра истории доступа к файлам. |
| access_denied_file | Недостаточно прав для скачивания файла. |
| access_denied_report | Недостаточно прав для просмотра отчета. |
| access_denied | Доступ запрещен. |
| file_limit_exceeded | Суммарный размер скачиваемых файлов не должен превышать 250Mb. |
| limit_exceeded | Лимит превышен. |
| items_count_out_of_range | Значение параметра item_count должно быть больше 0 и меньше или равно 20000. |
| private_comment_has_forbidden_changes | В заметке нельзя прикладывать файлы или менять поля формы. |
| private_channel_access_denied | У вас нет доступа к заметкам. |
| duplicate_position | Значение position повторяется в нескольких строках запроса. |
| invalid_position | Значение position отрицательно либо превышает максимальное значение row_id. |