> ## Documentation Index
> Fetch the complete documentation index at: https://docs.chessa.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Introduction

> Chessa API documentation.

## Welcome

Welcome to the Chessa API. Our goal is to make it easy to send money, on-chain. This API provides a collection of services to manage accounts, process orders, and handle cross-border payments seamlessly.

This documentation provides a complete reference for all available endpoints.

## Authentication

All API endpoints are authenticated using a client ID and client secret passed in the request headers.

To authenticate your requests, you must include the following headers:

* `x-client-id`: Your unique client identifier.
* `x-client-secret`: Your client secret.

<Card title="Get API Credentials" icon="key" href="https://chessa.ai">
  Get your API credentials from the Chessa dashboard.
</Card>

Make sure to replace `YOUR_CLIENT_ID` and `YOUR_CLIENT_SECRET` with your actual credentials. All API requests must be made over HTTPS.

## Response Structure

All successful API requests will return a `2xx` HTTP status code. The body of the response will be a JSON object containing the requested information. The exact structure of this object depends on the specific endpoint being called.

For example, a successful call to get user details might look like this:

```json theme={null}
{
  "userId": "usr_12345",
  "name": "John Doe",
  "email": "john.doe@example.com",
  "createdAt": "2025-01-01T12:00:00Z"
}
```

Please refer to the documentation for each specific endpoint to see detailed examples of success response structures.

## Error Handling

If an API request fails, the response will contain a `4xx` or `5xx` HTTP status code and a JSON body with details about the error. The error response object follows a standard structure:

```json theme={null}
{
  "error": "error_code",
  "message": "A human-readable description of the error.",
  "statusCode": 400
}
```

* `error`: A unique code for the error type.
* `message`: A clear, descriptive message explaining the cause of the error.
* `statusCode`: The HTTP status code for the response.

Common HTTP status codes include:

* `400 Bad Request`: The request was improperly formatted or contained invalid parameters.
* `401 Unauthorized`: Authentication credentials were missing or invalid.
* `403 Forbidden`: You do not have permission to access the requested resource.
* `404 Not Found`: The requested resource could not be found.
* `500 Internal Server Error`: An unexpected error occurred on our servers.
