API errors respect this common structure:
{"type": String,"http": Integer,"code": String,"message": String}
Description of fields:
type: a more generic class of errors
http: a standard http code (200, 4xx, 5xx)
code: a more specific error code
message: developer friendly message and eventual hints
{"type": "invalid_request","http": 400 | 404,"code": "missing_fields" |"unknown_fields" |"invalid_field" |"invalid_credentials_id" |"invalid_client_id" |"invalid_client_secret" |"invalid_access_token" |"invalid_input" |"invalid_body" |"invalid_headers" |"not_found""message": "Detailed error message"}
{"type": "unauthorized","http": 401,"code": "invalid_api_keys" |"unauthorized_tenant" |"invalid_access_token" |"invalid_credentials_id" |"invalid_client_id" |"invalid_client_secret" |"invalid_app_key" |"inactive_credentials" |"expired_credentials""message": "Detailed error message"}
{"type": "server_error","http": 500,"code": "internal_server_error" |"planned_maintenance""message": "Detailed error message"}