List journal entries
GET
/v1/journal-entriesLists draft, booked and canceled entries, newest entry date first. For posted entries across a period as reports read them, use GET /v1/ledger-entries.
Requires one ofjournal:readread:ledger
Query parameters
- statestringOnly entries in this state. Omit for all.One of
draftbookedcanceled - Earliest date (YYYY-MM-DD)
- Latest date (YYYY-MM-DD)
- contact_idstring (uuid)Only entries on this contact
- Only the entry with this
external_reference, to find an entry again after a timeout - Maximum number of results (default 100, max 500)
Default
100 - Number of results to skip
Default
0
Errors
400Invalid input or validation failed401Invalid or missing authentication403Missing scope, or the company is archived429Rate limit exceeded500Internal Server Error
Every error has the same shape. See Errors.
curl https://api.numina.app/v1/journal-entries \
-H "Authorization: Bearer numi_YOUR_API_KEY"const response = await fetch("https://api.numina.app/v1/journal-entries", {
method: "GET",
headers: {
Authorization: `Bearer ${process.env.NUMINA_API_KEY}`,
},
});
const data = await response.json();import os
import requests
response = requests.get(
"https://api.numina.app/v1/journal-entries",
headers={
"Authorization": f"Bearer {os.environ['NUMINA_API_KEY']}",
},
)
data = response.json()Response
{
"journal_entries": [
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"date": "2026-01-15",
"text": "Invoice payment from customer",
"status": "open",
"contact_id": "550e8400-e29b-41d4-a716-446655440000",
"created_at": "2026-01-15T10:30:00Z",
"external_reference": "payroll-run-2026-01",
"lines": [
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"account_number": 3000,
"account_id": "550e8400-e29b-41d4-a716-446655440001",
"account_name": "Revenue",
"amount": -1000,
"text": "Invoice payment",
"vat_code": "U25",
"currency_code": "DKK",
"currency_rate": 1
}
],
"state": "draft",
"attachment": {
"id": "550e8400-e29b-41d4-a716-446655440000",
"file_name": "string",
"status": "string",
"attachment_number": 42
}
}
],
"has_more": false,
"next_offset": 0
}