---
title: "List expenses"
method: GET
path: "/expenses"
tags: ["Expenses"]
---

# List expenses

`GET /expenses`

Returns the user's expenses, sorted by `date` descending.

**Optional filters (combinable):**
- `status=paid` or `status=unpaid` — filter by payment status
- `year=YYYY` — only expenses whose `date` falls in the given calendar year (UTC)

Any other query parameter returns a 400. Filter on additional fields (e.g. `categoryID`) client-side.

## Query parameters

- `status` 'paid' | 'unpaid'
- `year` integer

## Response `200`

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `500` — Internal Server Error

---

[API](https://skmtc.dev/vocal/apis/magic-heidi-invoicing-software-api.md) · [All operations](https://skmtc.dev/vocal/apis/magic-heidi-invoicing-software-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/vocal/magic-heidi-invoicing-software-api/revisions/591ae048f0a0/schema)
