# Get an export

Source: https://checkslip.com/en/docs/get-slip-export

GET `https://api.checkslip.com/api/slips/exports/{export_id}`

API key

The export's state and a download link for each part. Links are short-lived; each call gives fresh ones. Needs an API key with slip:read.

## Parameters

| Field | In | Type | Required |
| --- | --- | --- | --- |
| `export_id` | path | `string (uuid)` | yes |

## Responses

### 200 `application/json`

| Field | Type | Required |
| --- | --- | --- |
| `export_id` | `string (uuid)` | yes |
| `state` | `QUEUED \| RUNNING \| READY \| FAILED \| EXPIRED` | yes |
| `mode` | `DIRECT \| JOB` | no |
| `created_at` | `string (date-time)` | yes |
| `request` | `ExportRequest` | yes |
| `request.q` | `string` | no |
| `request.trans_ref` | `string` | no |
| `request.outcome` | `FOUND \| NOT_FOUND \| DUPLICATE \| PENDING \| UNAVAILABLE \| INVALID_QR \| INVALID_FILE \| QR_TAMPERED \| TOO_OLD[]` | no |
| `request.outcome_not` | `FOUND \| NOT_FOUND \| DUPLICATE \| PENDING \| UNAVAILABLE \| INVALID_QR \| INVALID_FILE \| QR_TAMPERED \| TOO_OLD[]` | no |
| `request.sender_bank` | `string` | no |
| `request.api_key` | `string` | no |
| `request.charged` | `true \| false \| unsettled[]` | no |
| `request.free_reason` | `NOT_FOUND \| DUPLICATE \| UNAVAILABLE \| INVALID_QR \| INVALID_FILE \| QR_TAMPERED \| TOO_OLD \| SYSTEM_ERROR \| OTHER[]` | no |
| `request.from` | `string (date-time)` | no |
| `request.to` | `string (date-time)` | no |
| `request.columns` | `request_id \| outcome \| status \| checked_at \| channel \| api_key_id \| client_reference \| duplicate_of.request_id \| charge_confirmed \| charged \| free_reason \| slip.trans_ref \| slip.transferred_at \| slip.amount.satang \| slip.amount.currency \| slip.sender.bank.code \| slip.sender.bank.bot_code \| slip.sender.name_th \| slip.sender.name_en \| slip.sender.account \| slip.receiver.bank.code \| slip.receiver.bank.bot_code \| slip.receiver.name_th \| slip.receiver.name_en \| slip.receiver.account[]` | yes |
| `request.cursor` | `string` | no |
| `rows` | `integer \| null` | no |
| `truncated` | `boolean` | no |
| `truncated_after` | `object \| null` | no |
| `truncated_after.checked_at` | `string (date-time)` | yes |
| `truncated_after.request_id` | `string (uuid)` | yes |
| `continue_cursor` | `string \| null` | no |
| `expires_at` | `string (date-time) \| null` | no |
| `parts` | `object[]` | no |
| `parts[].part` | `integer` | yes |
| `parts[].rows` | `integer \| null` | no |
| `parts[].url` | `string (uri)` | yes |
| `parts[].url_expires_at` | `string (date-time)` | yes |

### Possible errors

401 403 404 410 429

An error as Problem Details. All codes are listed at [Error codes](https://checkslip.com/en/docs/errors)

**cURL**

```bash
curl https://api.checkslip.com/api/slips/exports/0b6c2f5e-8a41-4d1e-9c3a-5f7e2d18a6b4 \
  -H "Authorization: Bearer $CHECKSLIP_API_KEY"
```

**Node.js**

```javascript
const res = await fetch("https://api.checkslip.com/api/slips/exports/0b6c2f5e-8a41-4d1e-9c3a-5f7e2d18a6b4", {
  headers: {
    Authorization: `Bearer ${process.env.CHECKSLIP_API_KEY}`,
  },
});
const data = await res.json();
```

**Python**

```python
import os

import requests

res = requests.get(
    "https://api.checkslip.com/api/slips/exports/0b6c2f5e-8a41-4d1e-9c3a-5f7e2d18a6b4",
    headers={
        "Authorization": f"Bearer {os.environ['CHECKSLIP_API_KEY']}",
    },
)
data = res.json()
```

```json
{
  "export_id": "0b6c2f5e-8a41-4d1e-9c3a-5f7e2d18a6b4",
  "state": "QUEUED",
  "mode": "DIRECT",
  "created_at": "2026-11-05T09:30:00+07:00",
  "request": {
    "q": "string",
    "trans_ref": "630210534087",
    "outcome": [
      "FOUND"
    ],
    "outcome_not": [
      "FOUND"
    ],
    "sender_bank": "string",
    "api_key": "string",
    "charged": [
      "true"
    ],
    "free_reason": [
      "NOT_FOUND"
    ],
    "from": "2026-11-05T09:30:00+07:00",
    "to": "2026-11-05T09:30:00+07:00",
    "columns": [
      "request_id"
    ],
    "cursor": "string"
  },
  "rows": 1,
  "truncated": true,
  "truncated_after": {
    "checked_at": "2026-11-05T09:30:00+07:00",
    "request_id": "0b6c2f5e-8a41-4d1e-9c3a-5f7e2d18a6b4"
  },
  "continue_cursor": "string",
  "expires_at": "2026-11-05T09:30:00+07:00",
  "parts": [
    {
      "part": 1,
      "rows": 1,
      "url": "https://example.com/hooks/checkslip",
      "url_expires_at": "2026-11-05T09:30:00+07:00"
    }
  ]
}
```
