# Errors

The Terminal Shipping API is RESTful so we use standard HTTP codes to let your server know if a request was successful or not.

## Error Sample

### Error Codes

* **200 -** Request was successful and action was carried out as expected.
* **400 -** An error occurred while executing request. When a 400 status code is sent, we always include a `message` parameter in the response which provides a description of the error.
* **401 -** Unauthorised request. This status code is sent when an invalid or expired access token is used in a request. See [authentication](/tship/authentication.md) section for a description of how to include access tokens in request.
* **404 -** This status code is sent when an invalid endpoint is accessed. Verify that the endpoint you have is one of the provided endpoints in our reference.
* **500, 501, 502, 503, 504 -** This indicates an error processing the request from TShip, possibly due to server downtime or unavailability. Please [contact](mailto:support@terminal.africa) a member of our support team if you receive this status code.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.terminal.africa/tship/errors.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
