---
api: 'Revolut X Crypto Exchange REST API'
---

# Get all public trades (market history)

Retrieve a list of all trades for a specific symbol, not limited to the current client's activity.

## Endpoint

GET `/trades/all/{symbol}`

## Parameters

### header parameters

- `X-Revx-Timestamp` (integer, required)
  Current timestamp in Unix epoch milliseconds. 
  Used to prevent replay attacks and construct the signature.
  Provided with other authentication headers.

- `X-Revx-Signature` (string, required)
  The Ed25519 signature of the request. 
  Provided with other authentication headers.
  
  :::tip
  See **Authentication headers: Signing a request** for details on how to generate this.
  :::

### path parameters

- `symbol` (string, required)
  Trading pair symbol (e.g., BTC-USD).

### query parameters

- `start_date` (integer, optional)
  Start timestamp for the query range in Unix epoch milliseconds.
  
  :::note
  If `start_date` is omitted, it defaults to 7 days prior to `end_date`.
  The difference between `start_date` and `end_date` must be <= 30 days.
  :::

- `end_date` (integer, optional)
  End timestamp for the query range in Unix epoch milliseconds.
  
  :::note
  If `end_date` is omitted, it defaults to `start_date` + 7 days (if `start_date` is provided) or the current date (if `start_date` is missing).
  The duration between `start_date` and `end_date` must not exceed 30 days.
  :::

- `cursor` (string, optional)
  Pagination cursor obtained from the [`metadata.next_cursor`](/docs/api/revolut-x-crypto-exchange#get-all-trades#response) property of the previous response.

- `limit` (integer, optional)
  Maximum number of records to return.

## Returns

### 200

OK

The list of trades.

#### Response attributes

- `data` (array of object)
  - `data[].tdt` (integer)
      Trade date and time, expressed in Unix epoch milliseconds.
  - `data[].aid` (string)
      Crypto-asset ID code.
  - `data[].anm` (string)
      Crypto-asset full name.
  - `data[].p` (string)
      Price in major currency units. For example, for USD, `116243.32` represents 116243.32 dollars.
  - `data[].pc` (string)
      Price currency.
  - `data[].pn` (string)
      Price notation.
  - `data[].q` (string)
      Quantity.
  - `data[].qc` (string)
      Quantity currency.
  - `data[].qn` (string)
      Quantity notation.
  - `data[].ve` (string)
      Venue of execution. Always equals `REVX`.
  - `data[].pdt` (integer)
      Publication date and time, expressed in Unix epoch milliseconds.
  - `data[].vp` (string)
      Venue of publication. Always equals `REVX`.
  - `data[].tid` (string)
      Transaction identification code.
- `metadata` (object)
  - `metadata.timestamp` (integer)
      Timestamp in Unix epoch milliseconds.
  - `metadata.next_cursor` (string, optional)
      Cursor used to retrieve the next page of results.
      
      To continue paginating through the results, make a new request and pass this value in the [`cursor`](/docs/api/revolut-x-crypto-exchange#get-all-trades#request) query parameter.

## Error responses

| HTTP status code | Description |
| --- | --- |
| 400 | Bad request |
| 401 | Unauthorized |
| 403 | Forbidden |
| 409 | Conflict |
| 429 | Rate Limit Exceeded |
| 5XX | Server Error |
