API Error Codes

Besides the declared potential errors in an API call, there exist general API errors related to security and parameter types. Here you will find a list of these general errors.


Error description

The errors are reported as a JSON or XML, depending on the format requested. The error report contains mainly an error code, an error description message and a timestamp when the error had occurred. Below you can see a sample API error in the JSON format:


  {
    "error": "101",
    "error_description": "The user has not been  authenticated",
    "timestamp": "2012-09-21T09:30:08.057+0000"
  }

And a sample API error in XML format:


<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<exception>
  <error>202</error>
  <error_description>Missing required parameter for API operation: /</error_description>
  <timestamp>2012-10-03T11:24:57.488+02:00</timestamp>
</exception>

Internal Errors

Potentially, the API may raise internal errors in which case, only general information about the error is provided and further support is needed by InfoJobs to help you. Below you can see a sample of an internal error:


  {
    "error_description":"Error processing API call",
    "status": 500,
    "timestamp": "2012-09-26T15:45:04.157+0000",
    "requestId": "db0c9329-5e0d-4644-b87d-dbed0a37514a"
  }

An important piece of trace data within the error is the requestId value. Make sure to track correctly and provide this value to get reliable support on your API operations.


For each API error, the following fields are returned:

Name Description

error

String code that identifies the API error.

error_description

Human readable description of the API error.

timestamp

The date and time when the API error has ocurred.

requestId

For internal errors this is the identificator for query more details of the errror when requesting InfoJobs support


Generic error codes

Code Description Recommendations

1

API operation does not exist

Verify the name of the operation is correct, and also its version

201

Invalid parameter

Ensure the parameter is provided and the value is has the correct type

202

Required parameter

Ensure the parameter is included in the API operation call

211

Invalid HTTP request header

This may happen when the type of content is wrongly set in the header of the API operation call. Ensure the content type is any of the supported types, like JSON (application/json) or XML (text/xml)

221

Invalid JSON body

When submiting data using the JSON format, ensure the curly brackets are correctly balanced, and also the string delimiters are correct. You may use any JSON validator prior to make the call to ensure the JSON format is correct.

222

Invalid XML body

When submitting data using the XML format, ensure there is only one element root and that you respect the XML format for the API operation call. You may use any XML validator prior to make the call to ensure the XML format is correct.

223

Missing body

The API call requires a content to be submitted, ensure one is passed in the correct format (JSON, XML, etc.)

224

Content body too long

Ensure you do not exceed the limit of the content body when you are calling API operations.

225

Message conversion error

When trying to convert the body content of your API call, there was an error converting one or more of its fields. Ensure the correct field names and data types are used.

226

Invalid date format

Ensure you are using the RTC 3339 date format the is something like yyyy-MM-ddTHH:mm:ssZ

Security error codes

Code Description Recommendation

101

The user has not been authenticated

This call needs an OAuth authentication context, this is normally done launching the login screen for the user before attempting to recall this API operation.

102

The client credentials are not valid

When API calls are issued, a client id and a client secret (password) is required, ensure you are sending your correct client credentials

invalid_grant

OAuth has several ways to assign permissions (grant type). At InfoJobs API we support authorization_code and refresh_token

This error is issued when the authorization has expired. When this error is received you should redirect the user to the login screen again, to be able to have a new and fresh authorization.

116

Operation is temporally dissabled

Some of the operations are generally available, but others are hiden or deactivated. Ensure the use of the API operation is not forbidden.