Error codes
All Edifix API error responses use the same JSON error structure:
{
"errors": [
{ "error_code": "<NNNN>", "error_message": "<message>" }
]
}The errors array may contain multiple entries when more than one input parameter fails validation at the same time (for example, an invalid pubmed_flag together with an invalid crossref_flag). The HTTP status of the response always matches the first entry's status.
The error_code is a stable four-digit identifier. The error_message is human-readable, and may include server-appended detail (for example, the offending header value).
TIP
Always match on error_code, not message text—error messages may change without notice.
The same list of codes appears in the ErrorResponse schema in the API reference.
Catalogue
Codes appear in numeric order, grouped by HTTP status.
400 Bad Request
| Code | Name | Message |
|---|---|---|
0024 | Invalid JSON | The request is not valid JSON. |
0025 | Non-UTF-8 input | The request is not acceptable UTF-8. |
401 Unauthorized
| Code | Name | Message |
|---|---|---|
0004 | Login error | The server was unable to successfully authenticate your credentials. |
0026 | Auth token invalid | Unable to process your request because your authorization token is invalid. |
0027 | Auth token expired | Unable to process your request because your authorization token has expired. |
0034 | Auth token missing | Unable to process your request because your authorization token is missing. |
403 Forbidden
| Code | Name | Message |
|---|---|---|
0029 | Job ID invalid | Unable to process request because the job ID is invalid or inaccessible for this user. |
404 Not Found
| Code | Name | Message |
|---|---|---|
0023 | Deprecated URL extension | Unable to process request because URL-encoded extensions are deprecated. |
0035 | Invalid endpoint | The endpoint is invalid. |
405 Method Not Allowed
| Code | Name | Message |
|---|---|---|
0019 | Invalid HTTP method | Unable to process request because the HTTP method is invalid for this endpoint. |
406 Not Acceptable
| Code | Name | Message |
|---|---|---|
0003 | Invalid Accept header | Unable to process request because the Accept header is invalid. |
0005 | Account unverified | Unable to process references because your account is not verified. |
0006 | Account suspended | Unable to process references because your account is suspended. |
0007 | Pass-through token invalid | The API pass-through token is invalid. |
0008 | Pass-through token inactive | The API pass-through token is no longer active. |
0009 | Subscription inactive | Unable to process references because your account has no active subscription. |
0010 | No remaining references | Unable to process references because your account has no remaining reference credits. |
0011 | API access denied | Unable to process references because your account has no API access. |
0012 | Job validation error | The server encountered an unexpected issue while validating your job. |
0013 | Insufficient references | Unable to process references because your account has insufficient reference credits. |
0014 | Input refs invalid | The entered references are invalid. The input references field may not be left blank. |
0015 | Stylesheet invalid | The entered reference stylesheet is invalid. |
0016 | Editorial style invalid | The entered editorial style is invalid. The editorial style field may not be left blank. |
0017 | PubMed value invalid | The entered PubMed value is invalid. The value must be filled in as true or false. |
0018 | Crossref value invalid | The entered Crossref value is invalid. The value must be filled in as true or false. |
0020 | Invalid Content-Type | Unable to process request because the Content Type header is invalid. |
0021 | Remove-line-breaks invalid | The entered Remove Line Breaks Flag value is invalid. The value must be filled in as true or false. |
0022 | Book-processing invalid | The entered Book Processing value is invalid. The value must be filled in as true or false. |
0030 | Output format invalid | The entered value of parameter output_format is invalid. |
0031 | Results view invalid | The entered value of parameter results_view is invalid. |
0032 | Job not accounted | Unable to process request because the job is not in the accounted state. |
0033 | Too many sessions | Unable to process references because your account has exceeded the maximum number of concurrent sessions. |
0036 | Upload too large | Unable to process your request because the uploaded file or text body is too large (50 MB file / 1 MB text). |
0037 | File name too long | Unable to process your request because the file name of the uploaded file exceeds 255 characters (including the extension). |
0038 | File type invalid | Unable to process your request because the uploaded file type is invalid. |
0039 | No file uploaded | Unable to process your request because no file was uploaded. |
0040 | No references found | Unable to locate or parse any references. |
0042 | No file-upload access | Unable to process references because your subscription does not include file upload access. |
0043 | Output format forbidden | Unable to process your request because the requested output format is not available in your subscription. |
0044 | Output XML invalid | Unable to process your request because the output XML is not valid. |
0046 | Timeout value invalid | The entered value of the Timeout Time parameter is invalid. |
0047 | Password-protected upload | The uploaded document is password-protected. |
0048 | Write-protected upload | The uploaded document is write-protected. |
0049 | Virus scan failed | The uploaded document failed a virus scan. |
0053 | Stylesheet too large | The entered reference stylesheet is too large. It must be 256 KB or smaller. |
0054 | Job name too long | The entered job name is too long. It must be 255 characters or fewer. |
408 Request Timeout
| Code | Name | Message |
|---|---|---|
0002 | Job timeout | The server encountered a timeout while processing your job. |
429 Too Many Requests
| Code | Name | Message |
|---|---|---|
0028 | Rate limit exceeded | Unable to process references because your account has hit the rate limit threshold for this endpoint. See the response headers for rate limit reset details. |
See Rate limiting for the limit specifics and the response headers that accompany this error.
500 Internal Server Error
| Code | Name | Message |
|---|---|---|
0001 | Standard error | The server encountered an unexpected issue while processing your references. |
504 Gateway Timeout
| Code | Name | Message |
|---|---|---|
0045 | File upload timeout | The server timed out while transferring your file to our cloud storage provider. |
Multiple errors in one response
Edifix validates parameters for create_job and create_job_from_file before responding. A response with more than one entry in errors is normal, and each entry is a separate validation error:
{
"errors": [
{
"error_code": "0017",
"error_message": "The entered PubMed value is invalid. The value must be filled in as `true` or `false`."
},
{
"error_code": "0018",
"error_message": "The entered Crossref value is invalid. The value must be filled in as `true` or `false`."
}
]
}The HTTP status here is 406, taken from the first error.