v1

latestOpenAPI 3.1.0AGPL-3.0 license2026-07-1210336283.6 KB
Transactions

List all transactions

Retrieve a list of transactions for the authenticated team.

get/transactions

Query parameters

cursorstring nullable

Cursor for pagination, representing the last item from the previous page

Example:eyJpZCI6IjEyMyJ9

Cursor for pagination, representing the last item from the previous page

sortstring[] nullable

Sort as [column, direction]. Columns: date, amount, name, status, attachment, assigned, bank_account, category, tags, counterparty. Direction: asc or desc.

Sort as [column, direction]. Columns: date, amount, name, status, attachment, assigned, bank_account, category, tags, counterparty. Direction: asc or desc.

[
  "date",
  "desc"
]
pageSizenumber

Number of transactions to return per page (1-10000)

Example:50

Number of transactions to return per page (1-10000)

qstring nullable

Search query string to filter transactions by name, description, or other text fields

Example:office supplies

Search query string to filter transactions by name, description, or other text fields

categoriesstring[] nullable

Array of category slugs to filter transactions by specific categories

Array of category slugs to filter transactions by specific categories

[
  "office-supplies",
  "travel"
]
tagsstring[] nullable

Array of tag IDs to filter transactions by specific tags

Array of tag IDs to filter transactions by specific tags

[
  "tag-1",
  "tag-2"
]
startstring nullable

Start date (inclusive) for filtering transactions in ISO 8601 format

Example:2024-04-01T00:00:00.000Z

Start date (inclusive) for filtering transactions in ISO 8601 format

endstring nullable

End date (inclusive) for filtering transactions in ISO 8601 format

Example:2024-04-30T23:59:59.999Z

End date (inclusive) for filtering transactions in ISO 8601 format

accountsstring[] nullable

Array of bank account IDs to filter transactions by specific accounts

Array of bank account IDs to filter transactions by specific accounts

[
  "account-1",
  "account-2"
]
assigneesstring[] nullable

Array of user IDs to filter transactions by assigned users

Array of user IDs to filter transactions by assigned users

[
  "user-1",
  "user-2"
]
statusesstring[] nullable

Array of transaction list status filters. Supported UI filters: 'blank', 'receipt_match', 'in_review', 'export_error', 'exported', 'excluded', 'archived'

Array of transaction list status filters. Supported UI filters: 'blank', 'receipt_match', 'in_review', 'export_error', 'exported', 'excluded', 'archived'

[
  "in_review",
  "export_error"
]
recurringstring[] nullable

Array of recurring frequency values to filter by. Available frequencies: 'weekly', 'monthly', 'annually', 'irregular'

Array of recurring frequency values to filter by. Available frequencies: 'weekly', 'monthly', 'annually', 'irregular'

[
  "monthly",
  "annually"
]
attachments'include' | 'exclude' | 'null' nullable

Filter transactions based on attachment presence. 'include' returns only transactions with attachments, 'exclude' returns only transactions without attachments

Example:include

Filter transactions based on attachment presence. 'include' returns only transactions with attachments, 'exclude' returns only transactions without attachments

amountRangenumber[] nullable

Amount range as [min, max] to filter transactions by monetary value

Amount range as [min, max] to filter transactions by monetary value

[
  100,
  1000
]
amountstring[] nullable

Array of specific amounts (as strings) to filter transactions by exact values

Array of specific amounts (as strings) to filter transactions by exact values

[
  "150.75",
  "299.99"
]
type'income' | 'expense' | 'null' nullable

Filter by transaction type. 'income' for money received, 'expense' for money spent

Example:expense

Filter by transaction type. 'income' for money received, 'expense' for money spent

manual'include' | 'exclude' | 'null' nullable

Filter transactions based on whether they were manually imported. 'include' returns only manual transactions, 'exclude' returns only non-manual transactions

Example:include

Filter transactions based on whether they were manually imported. 'include' returns only manual transactions, 'exclude' returns only non-manual transactions

exportedboolean nullable

Filter by export status. true = only exported transactions, false = only NOT exported transactions, undefined = no filter

Filter by export status. true = only exported transactions, false = only NOT exported transactions, undefined = no filter

fulfilledboolean nullable

Filter by fulfillment status. true = transactions ready for review (has attachments OR status=completed), false = not ready, undefined = no filter

Example:true

Filter by fulfillment status. true = transactions ready for review (has attachments OR status=completed), false = not ready, undefined = no filter

Response

Retrieve a list of transactions for the authenticated team.

Example response

{
  "meta": {
    "cursor": "eyJpZCI6IjQ1NiJ9",
    "hasNextPage": true
  },
  "data": [
    {
      "id": "b3b7c8e2-1f2a-4c3d-9e4f-5a6b7c8d9e0f",
      "name": "Office Supplies Purchase",
      "amount": 150.75,
      "taxAmount": 15.07,
      "taxRate": 10,
      "taxType": "VAT",
      "currency": "USD",
      "counterpartyName": "Spotify AB",
      "date": "2024-05-01T12:00:00.000Z",
      "category": {
        "id": "office-supplies",
        "name": "Office Supplies",
        "color": "#FF5733",
        "slug": "office-supplies",
        "taxRate": 10,
        "taxType": "VAT"
      },
      "status": "completed",
      "frequency": "monthly",
      "isFulfilled": true,
      "note": "Paid with company credit card for office renovation",
      "account": {
        "id": "a43dc3a5-6925-4d91-ac9c-4c1a34bdb388",
        "name": "Company Credit Card",
        "currency": "USD",
        "connection": {
          "id": "a43dc3a5-6925-4d91-ac9c-4c1a34bdb388",
          "name": "Chase Bank",
          "logoUrl": "https://cdn.midday.ai/logos/chase-bank.png"
        }
      },
      "tags": [
        {
          "id": "b7e2f8c1-3d4a-4e2b-9f1a-2c3d4e5f6a7b",
          "name": "invoice"
        },
        {
          "id": "c8e2f8c1-3d4a-4e2b-9f1a-2c3d4e5f6a7c",
          "name": "travel"
        }
      ],
      "attachments": [
        {
          "id": "b7e2f8c1-3d4a-4e2b-9f1a-2c3d4e5f6a7b",
          "path": [
            "e1f2d3c4-b5a6-7d8e-9f0a-1b2c3d4e5f6a",
            "transactions",
            "9a8b7c6d-5e4f-3a2b-1c0d-9e8f7a6b5c4d",
            "receipt.pdf"
          ],
          "size": 1928716,
          "type": "application/pdf",
          "filename": "receipt.pdf"
        }
      ]
    }
  ]
}