ParrotPosterParrotPoster
Getting started
Accounts
Posts
Automation
API
Site
  • English
  • Русский
Getting started
Accounts
Posts
Automation
API
Site
  • English
  • Русский
  • Introduction
  • Quick start
  • API methods

    • Authentication
    • Social accounts
    • Posts

      • Posts
      • Post object
      • Getting posts
      • Creating a post
      • Updating a post
      • Deleting a post
  • Errors

Errors

GraphQL error format

As in any GraphQL API, request errors arrive in the errors field of the response. Check for it, not only the HTTP status.

{
  "errors": [
    {
      "message": "Wrong password",
      "path": ["login"],
      "extensions": {
        "code": "wrong_password",
        "correlation_id": "..."
      }
    }
  ],
  "data": null
}
FieldDescription
messageHuman-readable error text in the user's language. Meant for people — do not rely on its wording in code
extensions.codeError category for programmatic handling (table below)
extensions.correlation_idIdentifier for support. Include it when you contact support
extensions.detailExtra details, if any
pathWhich query field caused the error

The message language is determined by the ?lang=ru|en query parameter, the X-Lang header, or Accept-Language; the default is Russian.

extensions.code values

CodeMeaningWhat to do
unauthorizedThe token is missing, invalid, or revokedCheck the Authorization: Bearer ... header and that the token is not revoked (Authentication)
forbiddenAction not allowed: someone else's post, read-only token, etc.Use a token with write access and work only with your own data
not_foundObject not found (post, account, user, file)Check the ID
validation_errorInvalid input or a disallowed actionFix the request according to message
tariff_limitThe plan has expired or a plan limit is reachedRenew or change your plan
wrong_passwordWrong password in login—
user_existsThe user already exists—
service_unavailableThe service is temporarily unavailableRetry later
internal_errorInternal server errorRetry; if it keeps happening, send the correlation_id to support

The list of codes may grow: treat unknown codes as a generic error.

Typical errors

Authentication

SituationcodeMeaning
Token missing, invalid, or revokedunauthorizedNot authorized
A mutation with a read-only tokenforbiddenRead-only session. This action is unavailable.
login: user not foundnot_foundUser not found
login: wrong passwordwrong_passwordWrong password
Empty or too long token namevalidation_errorA token name is required / the name is too long (maximum 128 characters)

An invalid or revoked token does not cause an HTTP error: the request runs as unauthenticated, and protected methods return unauthorized.

Plan

SituationcodeMeaning
Creating, updating, or deleting a post when the plan has expiredtariff_limitThe plan has expired
The plan's account limit is reached (when connecting in the web app)tariff_limitAccount limit exceeded

You can see your plan and its limits in Plans.

Posts

SituationcodeMeaning
Neither text nor imagesvalidation_errorRequired fields are missing (text or images)
No account selectedvalidation_errorSelect at least one account to publish to
Account not foundnot_foundSocial account not found
Both publishAt and publishDelayMinutes specifiedvalidation_errorYou cannot specify a publish date and a relative delay together
publishDelayMinutes outside 0–525600validation_errorInvalid publishing delay (minutes)
Invalid draftParams / draft state transitionvalidation_errorInvalid draft schedule / the draft state cannot be changed
An image from imageUrls could not be downloadedvalidation_errorFailed to load the image from the URL
Some of the fileIds not foundnot_foundSome of the specified files are missing
Post not foundnot_foundPost not found
Someone else's postforbiddenNo access to the post
Updating a published post older than a dayvalidation_errorA published post older than a day cannot be updated
Changing the date of a published postvalidation_errorThe publishing date of a published post cannot be updated
The post is being processed right nowvalidation_errorThe post is being processed, try again later

Errors publishing to a social network

An error that occurs while sending a post to a particular social network does not make the GraphQL request itself fail. The post gets the FAIL status, and the reason is written to results[].errorMsg of the corresponding account (in the user's language). Typical reasons:

ReasonWhat to do
Instagram needs at least one imageAdd an image to fields.imageUrls
Unsupported media type, text too longChange the post to meet the network's requirements
No access to the page/group/channel, social token expiredCheck the account state in the web app (error and checkedAt in listSocialAccounts) and reconnect it
The post was already published to this account successfullyNothing to do

For connection instructions and troubleshooting for a specific social network, see Accounts.

HTTP statuses and limits

  • GraphQL errors arrive in the errors field; do not rely on the HTTP status to detect request success.
  • 429 Too Many Requests — the request limit was exceeded. For API tokens the default is 600 requests per minute per token (the window is a UTC calendar minute). Wait until the next minute and retry. Tokens obtained with the login mutation are not subject to this limit.

There is also an interval between post publications (Settings → Posts), but it does not cause errors: the send time is simply shifted. See creating a post.

Edit on GitHub
Last updated: 10/10/26, 2:44 AM