# entries.list

Search accounting entries by query, status, account, category or date. Contributor results contain only their own entries.

`GET | POST /api/v1/accounting/entries.list`

Permissions: `accounting:read` · Roles: admin, finance, contributor

MCP tool: `accounting_search_records`

## Fields

| Field | Type | Required | Notes |
| --- | --- | --- | --- |
| `includeReversed` | boolean |  | Also include reversed. |
| `currency` | string |  | Three-letter currency code, such as CAD or USD. |
| `search` | string |  | Text to search for. at most 200 characters. |
| `status` | enum |  | Only include records with this status. One of: `needs_review`, `reviewed`. |
| `categoryId` | string (ID) |  | The ID of a category, from categories.list. |
| `accountId` | string (ID) |  | The ID of a bank, card or payment account, from accounts.list. |
| `from` | string |  | The first date to include, as YYYY-MM-DD. |
| `to` | string |  | The last date to include, as YYYY-MM-DD. |
| `limit` | integer |  | How many results to return at most. 1 to 500. Default `100`. |
| `offset` | integer |  | How many results to skip, for the next page of a list. 0 to 100000. Default `0`. |
| `deleted` | boolean |  |  |
| `autopilotState` | enum |  | One of: `working`, `needs_you`, `done`. |
| `ask` | enum |  | One of: `forward_receipt`, `review_document`, `contractor_invoice`, `choose_contractor`, `choose_category`, `confirm_business`, `confirm_income`, `confirm_tax`, `match_payout`, `approve`, `import_statement`, `reimbursement_receipts`. |
| `source` | enum |  | Where the record came from. One of: `stripe`, `receipt`, `bank`. |
| `type` | enum |  | One of: `expense`, `income`, `income_refund`, `refund`, `transfer`, `fee`. |
| `minAmount` | string |  | The smallest amount to include, in cents, written as a string. Whole number written as a string. |
| `maxAmount` | string |  | The largest amount to include, in cents, written as a string. Whole number written as a string. |
| `sortBy` | enum |  | Which field to sort by. One of: `merchant`, `date`, `type`, `status`, `amount`. |
| `sortDirection` | enum |  | asc for oldest or smallest first, desc for newest or largest first. One of: `asc`, `desc`. |
| `tagId` | string (ID) |  | The ID of a project tag, from tags.list. |
| `untagged` | boolean |  |  |

## Example request

```bash
curl https://app.getoatmilk.com/api/v1/accounting/entries.list \
  -H "Authorization: Bearer $OATMILK_API_KEY"
```

## Example response

```json
{
  "data": [
    {
      "id": "7f0f6c1e-1c1f-4b5e-9c8d-2f5e8e3c1a10",
      "organization_id": "org_synthetic",
      "submission_id": "4d5e6f7a-8b9c-4d0e-8f1a-2b3c4d5e6f7a",
      "submitted_by": "user_synthetic",
      "merchant": "Synthetic Office Supply",
      "date": "2026-09-18",
      "currency": "CAD",
      "amount_minor": "4520",
      "tax_minor": "520",
      "category_id": "1a2b3c4d-5e6f-4a7b-8c9d-0e1f2a3b4c5d",
      "payment_account_id": "9a8b7c6d-5e4f-4a3b-8c2d-1e0f9a8b7c6d",
      "type": "expense",
      "status": "reviewed",
      "notes": "",
      "revision": 3,
      "human_corrected": false,
      "autopilot_state": "done",
      "tags": []
    }
  ]
}
```

Reference page: https://app.getoatmilk.com/docs/api/entries.list
