# Download an evidence file

Source: https://checkslip.com/en/docs/download-evidence-export

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

API key

The evidence file as NDJSON, one record per line, ordered by day. The last line is the manifest; its sha256 covers every byte before that line and is also sent in the Repr-Digest header. Not READY yet answers 409; after expires_at it answers 410 and you request a new file. Every download is written to the account activity. Uses no credit. Needs an API key with both audit:read and audit:export, or the web app sign-in.

## Parameters

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

## Responses

### 200 `application/x-ndjson`

### Possible errors

401 403 404 409 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/audit/exports/0b6c2f5e-8a41-4d1e-9c3a-5f7e2d18a6b4/file \
  -H "Authorization: Bearer $CHECKSLIP_API_KEY"
```

**Node.js**

```javascript
const res = await fetch("https://api.checkslip.com/api/audit/exports/0b6c2f5e-8a41-4d1e-9c3a-5f7e2d18a6b4/file", {
  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/audit/exports/0b6c2f5e-8a41-4d1e-9c3a-5f7e2d18a6b4/file",
    headers={
        "Authorization": f"Bearer {os.environ['CHECKSLIP_API_KEY']}",
    },
)
data = res.json()
```
