# audit_trail

`POST /api/v1/queries/audit_trail`

Base URL: `https://boringbooks.io`.



## Request body

| Field | Type | Required | Description |
|---|---|---|---|
| `principal_id` | string (uuid) | yes |  |
| `cursor` | string, nullable | no |  |
| `limit` | integer | no | Min: `1`. Max: `200`. |

Example:

```json
{
  "limit": 50,
  "principal_id": "77777777-7777-4777-8777-777777777777"
}
```

## Response (200)

| Field | Type | Required | Description |
|---|---|---|---|
| `entries` | array of object | yes |  |
| `entries[].at` | string (date-time) | no |  |
| `entries[].command` | string | no |  |
| `entries[].id` | string (uuid) | no |  |
| `entries[].status` | string | no |  |
| `has_more` | boolean | yes |  |
| `next_cursor` | string, nullable | yes |  |
| `total_count` | integer | yes |  |
| `total_count_exact` | boolean | yes |  |


## Errors

Every error response is a single `error` object with a closed `type` and a refining
`code`. The codes, and the conventions every operation shares, are in
[llms-full.txt](https://boringbooks.io/llms-full.txt).
