If your request fails, the API returns a 3-digit HTTP status code.
| Code | Type |
|---|---|
| 400 | Bad Request |
| 401 | Unauthorized |
| 404 | Not Found - the resource does not exist, for example a template, image, PDF or video |
| 422 | Validation error |
| 429 | Too Many Requests - Rate Limit reached |
| 500 | Server Error - If the error persists, please contact armin@placid.app |
If an image, PDF or video fails while Placid renders it, its status is error and its reply has one of these error codes.
| Code | Meaning | Who can fix it |
|---|---|---|
INVALID_INPUT |
The request contains values that cannot be used. | You: check error_details and send the request again. |
MEDIA_DOWNLOAD_FAILED |
A media file could not be downloaded. | You: make sure that the URL is public and points to an image, video, audio file or web page. |
FONT_LOAD_FAILED |
A font of the template could not be loaded. | Choose another font in the editor, or contact our support. |
RENDER_SCRIPT_ERROR |
The template could not be drawn because of an error on our side. | Placid: our team is notified. |
RENDER_TIMEOUT |
Creating the file took too long and was stopped. | Try again. If it happens again, contact our support. |
ENCODING_FAILED |
The video could not be encoded (videos only). | Placid: our team is notified. |
STORAGE_FAILED |
The file could not be saved. | Try again. If it happens again, contact our support. |
TRANSFER_FAILED |
The file could not be transferred to your storage (transfer). |
You: check the bucket, the path and the credentials of the transfer. |
CANCELLED |
The generation was cancelled, for example because its automation run was stopped. | – |
INTERNAL |
An internal error occurred. | Placid: our team is notified. If it persists, contact our support. |
New codes can be added later. Treat an unknown code like INTERNAL.
These fields are always in the reply of Retrieve an image, Retrieve a PDF and Retrieve a video. They are null (error_details is []) unless status is error.
| Field | Values |
|---|---|
error_code |
One code from the list of error codes. Use it in your code to decide what to do. It does not change. |
error_message |
One sentence for people: what happened and what to do. The text can be improved over time, so do not compare it in your code. |
error_details |
A list of {layer, message}: the layer or input that caused the error, for example a URL that could not be downloaded. layer is null for a detail of the whole request. The list is empty when there is no detail. |
errors |
Deprecated, will be removed. Image replies only: the old text lines (Layer 0: …), [] unless status is error. Use error_code, error_message and error_details instead. |