Both the Galileo APIs and Galileo's Cloudflare implementation may return response codes.
Galileo API status codes
Status codes and errors are communicated in the status_code
, status
, and errors
fields.
- Endpoint-specific status codes are documented in the description for each individual endpoint and have one of these two formats:
[3-digit-prefix]-xx
[4-digit-prefix]-xx
- Status codes that are used across endpoints are listed in the Global Response Statuses enumeration.
When the status code communicates an error, the errors
list is present and is populated with one or more details about the error.
Example error response
{
"status_code": 2,
"status": "Invalid parameter(s)",
"system_timestamp": "2020-08-13 10:20:46",
"response_data": {},
"processing_time": 0.28,
"echo": {
"transaction_id": "hymteqhhj9qlyrebeb8ktmk2GEwfql",
"provider_transaction_id": "",
"provider_timestamp": null
},
"errors": [
"achAccountNo='achAccountNo' is required and cannot be empty",
"achRoutingNo='achRoutingNo' is required and cannot be empty"
]
}
<response>
<status_code>2</status_code>
<status>Invalid parameter(s)</status>
<system_timestamp>2020-08-13 10:20:08</system_timestamp>
<response_data/>
<processing_time>0.228</processing_time>
<echo>
<transaction_id>hymteqhhj9qlyrebeb8ktmk2GEwfql</transaction_id>
<provider_transaction_id/>
<provider_timestamp/>
</echo>
<errors>
<error>achAccountNo='achAccountNo' is required and cannot be empty</error>
<error>achRoutingNo='achRoutingNo' is required and cannot be empty</error>
</errors>
</response>
Cloudflare response codes
Galileo uses Cloudflare for its API web services. Cloudflare returns standard HTTP response codes as well as codes specific to the application. The material for this table comes from the Cloudflare developer site.
Code | Description |
---|---|
200 | OK — Request was successful. |
301 | Moved Permanently — The target resource has been assigned a new permanent URI and any future references to this resource ought to use one of the enclosed URIs. |
400 | Bad Request — The web client did not send a correct request to the server. This is a web client error: malformed request syntax, invalid request, message framing, or deceptive request routing |
403 | Forbidden — If you’re seeing a 403 error without Cloudflare branding, this is always returned directly from the origin web server, not Cloudflare, and is generally related to permission rules on the server. Cloudflare will serve 403 responses if the request violated either a default web-application firewall (WAF)-managed rule enabled for all orange-clouded Cloudflare domains or a WAF-managed rule enabled for that particular zone. |
404 | Not Found — Origin server was unable or unwilling to find the resource requested. This usually means the host server could not find the resource. |
499 | Client Close Request — nginx-specific response code to indicate when the connection has been closed by the web client while the server is still processing its request, making the server unable to send a status code back. |
500 | Internal Server Error — Error 500 generally indicates an issue with the origin web server. |
502 | Bad Gateway — Cloudflare is unable to establish contact with the origin web server. |
503 | Service Unavailable — The server cannot handle the request (because it is overloaded or down for maintenance). Generally, this is a temporary state. |
504 | Gateway Timeout — Cloudflare is unable to establish contact with the origin web server. |
520 | Web server returns an unknown error — The origin server returns an empty, unknown, or unexpected response to Cloudflare. |
521 | Web server is down — The origin server refused connections from Cloudflare. Security solutions at the origin may be blocking legitimate connections from certain Cloudflare IP addresses. |
524 | A timeout occurred — Cloudflare was able to complete a TCP connection to the origin server but did not receive a timely HTTP response. In the event that a TCP session is interrupted by AWS-firewall node rebalancing, Cloudflare will send 502 or 521. |
530 | This error is returned along with a 1xxx error. |