Errors

In this guide, we will talk about what happens when something goes wrong while working with the API. Mistakes happen; let's look at some status codes and error types you might encounter.

You can tell if your request was successful by checking the status code when receiving an API response. If a response comes back unsuccessful, you can use the error type and error message to figure out what has gone wrong and do some rudimentary debugging (before contacting support).

Status codes

Here is a list of the different categories of status codes returned by the API. Use these to understand if a request was successful.

  • Name
    2xx
    Type
    Description
    A 2xx status code indicates a successful response.
  • Name
    4xx
    Type
    Description
    A 4xx status code indicates a client error — this means it's a you problem.
  • Name
    5xx
    Type
    Description
    A 5xx status code indicates a server error — this means it's a problem on our side.

Error types

Whenever a request is unsuccessful, the Bodyguard.ai API will return an error response with an error type and message. You can use this information to better understand what has gone wrong and how to fix it. Most of the error messages are fairly helpful and actionable with the following fields:

  • Name
    code
    Type
    Description
    The HTTP code
  • Name
    status
    Type
    Description
    The HTTP status code
  • Name
    message
    Type
    Description
    A simple sentence to summarize the error
  • Name
    details
    Type
    Description
    An object that will contain all information you need to fix the error

Error status

Here is a list of the error types supported by the Bodyguard.ai API — use these to understand what is wrong.

  • Name
    BAD_REQUEST
    Type
    Description
    This means that one or more of the request's parameters are missing or invalid.
  • Name
    UNAUTHORIZED
    Type
    Description
    This means that the provided API Key is invalid.
  • Name
    FORBIDDEN
    Type
    Description
    This means that you do not have the right to access the resource.
  • Name
    TOO_MANY_REQUESTS
    Type
    Description
    This means that you have exceeded the rate limit.

Error example

Error response

{
	"error": {
		"message": "Please check your parameters",
		"status": "BAD_REQUEST",
		"code": 400,
		"details": ["'contents' must be an array"]
	}
}