# Overview

The Aurex Dashboard API provides programmatic access to users, wallets, deposits, cards, and swap functionality.

All requests are performed over HTTPS and use JSON for request and response bodies.

***

### Base URL

All API endpoints are relative to:

```
https://aurex.cash/api/dashboard
```

All examples in this documentation assume this base URL.

***

### Authentication

All endpoints require a valid API key.

Requests must include the following header:

```
Authorization: Bearer YOUR_API_KEY
```

Requests without this header will return 401 Unauthorized.

***

### Request Format

* Content type must be application/json for POST requests
* Parameters may be passed in the URL path or query string
* Numeric values must be sent as numbers, not strings

Example:

```json
curl -X POST https://aurex.cash/api/dashboard/users \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"firstName":"John","lastName":"Doe"}'
```

***

### Response Format

All responses follow a consistent structure.

#### Success Response

```json
{
  "success": true,
  "data": {}
}
```

Some endpoints may also include a message field.

#### Error Response

```json
{
  "success": false,
  "error": "Error description"
}
```

***

### HTTP Status Codes

The API uses standard HTTP status codes.

* 200 Request successful
* 400 Invalid request parameters
* 401 Invalid or missing API key
* 404 Resource not found
* 409 Conflict or insufficient balance
* 429 Rate limit exceeded
* 500 Internal server error

***

### Rate Limiting

API requests are limited to:

60 requests per minute per API key

If the limit is exceeded, the API returns:

* HTTP 429
* Standard error response format

Rate limits apply per API key, not per account.

***

### Pagination

List endpoints support pagination using query parameters.

* limit Number of records to return
* offset Pagination offset

Example:

```
GET /users/{userId}/deposits?limit=10&offset=0
```

If not specified, default limits may apply.

***

### Timestamps

All timestamps are returned in ISO 8601 UTC format.

Example:

```
2026-01-31T12:00:00Z
```

***

### Balance Model

Aurex uses a two-layer balance system.

Wallet balance

* Holds deposited funds
* Used to create and top up cards

Card balance

* Used for transactions
* Independent from wallet balance

Transactions affect only the card balance.

Deposits affect only the wallet balance.

***

### Status Values

Common status values used across the API.

Deposit statuses:

* waiting
* confirmed
* failed
* expired

Card statuses:

* active
* frozen
* blocked
* expired

Transaction statuses:

* pending
* completed
* declined
* failed

***

### Environment

The API operates in a production environment.

There is currently no public sandbox environment.

You should test integrations carefully before processing real funds.

***

### Versioning

The current API version is implicitly defined by the base path.

No version prefix is used in the URL at this time.

Future breaking changes may introduce explicit versioning.
