Errors and limits
Rate Limits
The Pyrus API handles no more than 5,000 requests per 10 minutes per user.
Response HTTP headers contain additional information about limits:
X-RateLimit-Limit
— the maximum number of requests allowed in the current time interval.X-RateLimit-Remaining
— the number of requests left in the current time interval.X-RateLimit-Reset
— the number of seconds before the beginning of the next time interval.
If you exceed the limit access to the Pyrus API will be restricted. In this case, you will receive a response with HTTP Status Code 429: too_many_requests: You have reached the limit of requests per 10 minutes.
Other Limits
- The maximum allowed catalog items count — 15000.
- The maximum allowed catalog item length — 500.
- The maximum allowed number of task comments — 10000.
- The maximum allowed number of task attachments — 3000.
- The maximum allowed number of task steps — 20.
Possible Errors
API methods return errors in the JSON format. An example of an error might look like this:
{ "error_code": "revoked_token", "error": "Authorization token has been revoked." }
In addition to the error message, the response contains its code (which can be processed automatically). Error text descriptions may change, but their codes will be constant.
Below you can find error codes that can occur when working with the API.
Code | Description |
---|---|
server_error | Internal server error. You are not supposed to see this error, however if it persists for more than 10 minutes you may want to contact support. |
invalid_credentials | Invalid login/security key |
token_not_specified | The authrozation token is not specified. Please specify the token in the HTTP authorization header. |
revoked_token | The authorization token has been revoked. Please get a new token. |
expired_token | The authorization token has expired. Please get a new token. |
invalid_token | The authorization token is invalid. Please verify the token or get a new one. |
authorization_error | Unknown authorization error. Please verify input parameters and retry the request. |
account_blocked | The user account that executed the request is blocked. You should contact your company’s administrator. |
invalid_field_id | The field with the specified identifier does not exist in the form. Please verify input parameters. |
deleted_field | The field with the specified identifier has been deleted from the form. Please verify input parameters. |
invalid_field_name | The field with the specified name does not exist in the form. Please verify input parameters. |
invalid_field_id_name | The field with the specified identifier and name does not exist or has been deleted. Please verify input parameters. |
non_unique_name | The field name is not unique within the form. Please use the form field identifier to write value into it. |
field_identity_missing | The form field identity (id or name) is not specified in the request. |
duplicate_field | You are trying to modify the same field multiple times in one request. |
invalid_catalog_id | The catalog with the id specified in the form template does not exist. |
invalid_catalog_item_name | The item with the specified name does not exist in the catalog. |
non_unique_catalog_item_name | There are multiple items with the specified name in the catalog. Please use item identifier to set a value. |
invalid_catalog_item_id | The item with the specified id does not exist in the catalog. |
catalog_item_id_name_mismatch | The item with the specified identifier doesn't have a specified value. |
invalid_email | The person with that specified email adress does not exist. |
non_unique_email | There are multiple persons with that specified email. |
invalid_person_id | The person with the specified id was not found. |
invalid_person_id_email | The person with the specified identifier has another email. |
form_has_no_task | There is no task with the specified id created based on the specified form template id. |
unrecognized_attachment_id | Invalid unique identifier of attachment. User has no attachment with specified id. |
required_field_missing | One of the required form fields is missing. (The error description will indicate which one.) |
type_is_not_supported | This field type does not support the writing of values. |
catalog_identity_missing | Catalog item_id must be specified in order to write value into the catalog field. |
incorrect_parameters_count | Incorrect parameter count for the selected filter operator. |
filter_type_is_not_supported | This field type is not supported as a filter value. |
step_field_does_not_exists | There are no step fields in the form. You can't filter this form by step number. |
catalog_item_id_missing | Catalog item_id must be specified in order to write value. |
person_identity_missing | Person id or email must be specified in order to write value. |
either_due_date_or_due_can_be_set | Can't set both due_date and due. |
negative_duration | Duration can't be negative. |
duration_is_too_long | Duration can't be more than 1 year. |
due_missing | Can't set duration without due. |
scheduled_date_in_past | A task's scheduled date can't be in the past. |
can't_add_form_project | You can't attach a task to a form project or a form's subprojects. |
form_template_cant_be_removed_from_task | Form template list can't be removed from the task. |
no_file_in_request | There are no files in the request. |
too_large_request_length | The file you are attaching exceeds the maximum allowable size. |
task_has_no_form | The task has no fields to modify. |
required_parameter_missing | One of the required request parameters is missing (The error message will indicate which one.) |
too_many_task_steps | The maximum allowed number of task steps has been exceeded. |
invalid_value_format | The provided value can't be converted to the field type. (The error message will indicate the type and value.) |
too_many_comments | The maximum allowed number of task comments exceeded (10000). |
invalid_step_number | Step number can not be less than 1. |
task_limit_exceeded | The maximum allowed number of tasks for your organization exceeded. |
field_is_in_table | The field you are trying to change is a part of the table. You can modify it only by modifing the table. |
required_table_field_missing | The required field inside table is not filled. The error text will contain the name of the table, the field name and the line number. |
department_catalog_can_not_be_modified | You can not modify department catalog using public api. |
catalog_duplicate_rows | Catalog contains duplicate rows. Remove them and try request again. |
empty_catalog_headers | Catalog headers can not be empty. |
can_not_modify_deleted_catalog | You are trying to update a catalog that was deleted. |
can_not_modify_first_column | You can not modify the first column in the catalog. |
catalog_headers_items_mismatch | Headers and values mismatch. |
too_many_catalog_items | The maximum allowed catalog items count exceeded (15000). |
catalog_item_max_length_exceeded | The maximum catalog item length exceeded (500). |
catalog_duplicate_headers | Catalog contains duplicate headers. Remove them and try request again. |
form_id_missing | form_id parameter can't be empty. |
text_missing | Task text can't be empty. |
invalid_json | The request body is not a valid JSON. |
empty_body | The request body can't be empty. |
access_denied_project | Access to the requested project is denied. Make sure that the user has all the required permissions. |
access_denied_task | Access to the requested task is denied. Make sure that the user has all the required permissions. |
access_denied_close_task | You don't have enough permissions to close the task. |
access_denied_reopen_task | You don't have enough permissions to reopen the task. |
access_denied_catalog | Access to the requested catalog is denied. Make sure that thw user has all the required permissions. |
access_denied_form | Access to the requested form is denied. Make sure that the user has all the required permissions. |
access_denied_person | You can't collaborate with the specified person. Make sure that you have this person in your contact list or send them an invitation. |
too_many_requests | You have reached the limit of requests per 10 minutes. Please wait and try again later. |
empty_file | You can not upload empty files. |
bad_multipart_content | Bad body format. |
invalid_table_row | Rows that have been deleted, or have not been created, cannot be reset. |
cannot_add_external_user | An employee from another organization cannot be added to the task. |
no_rights_to_send_sms | You cannot send a text message from this form because you don't have access (guest access does not provide the ability to send text messages). |
sms_integration_not_configured | Text message integration is not configured for this form. To configure, contact Pyrus support. |
invalid_application_id | Cannot find form by mobile app id / web widget id. |
text_missing | Text field is required to create new task. |
form_id_missing | form_id parameter can't be empty. |
single_value_is_not_supported | You can not write value to the field {field's name, id} using {obsolete property} property. Please use {actual property} instead. |
participant_limit_exceeded | One task may include no more than 1,000 participants. |
table_rows_limit_exceeded | Table cannot contain more than 5,000 rows. Please remove extra columns from the table. |
text_field_value_limit_exceeded | The text field cannot contain a value longer than 512Kb. Please trim the value of the field or attach a text file. |
unable_to_edit_field | The field {field's id, name} cannot be modified on current step. |
too_many_decimal_places | The {id, name} field contains a {number} of decimal places limit. |
external_comment_empty_text | You must specify comment text to add external comment. |
sender_address_field_missing | There is no field with code {code} on the form. |
external_comment_recipient_not_found | Email integration is not configured. The field with the "SenderEmail" code was not found. |
default_mailbox_not_found | This form does not have default mailbox to send external comments. |
catalog_null_value | Null values are not allowed in catalog. |
max_text_length_exceeded | The value of the field with id {field id} and name {field name} exceeds the maximum length: {maximum length}. |
due_outside_of_bounds | Due is outside of bounds. Allowed interval is between 01.01.1970 0:00:00 and 01.01.2099 0:00:00. |
attachments_forbidden | You can not attach files to this task. |
unrecognized_call_guid | There is no call with this id. |
unsupported_attachment_format | The attached file type is not supported. |
validation_error | Request is not valid: {description of the reason}. |
access_denied_file_access_history | Access to the file access history is denied. |
access_denied_file | User doesn't have access to the file. |
access_denied_report | Access to the report is denied. |
access_denied | Access denied. |
file_limit_exceeded | Total size of downloaded files must be less than 250Mb. |
limit_exceeded | Limit exceeded. |
items_count_out_of_range | Item_count parameter should be in range between 0 and 20'000. |
private_comment_has_forbidden_changes | Note cannot contain attached files or change form fields. |
private_channel_access_denied | You don't have access to notes. |