Search Journal Entries

POST /accounting/journal-entries/search

Group: Accounting › Journal Entries · Operation ID: searchJournalEntries

Returns the journal entries that match the given filters, each with its lines.

Open in the interactive reference

Parameters

Name In Type Required Description
Api-Version header "v1" yes The API version this request targets, named by its public identifier. Required on every request; omitting it, or naming a version this company does not have, is answered with 400. This document describes version v1.

Request body

Required, application/json: searchJournalEntriesInput.

Field Type Required Description
filters object no The filters to apply. A journal entry must match every filter you send. Omit to return all journal entries.
filters.id string no Limits results to the journal entry with this identifier.
filters.bookId string no Limits results to entries in this accounting book. See id on GET accounting/books/:id.
filters.status string no Limits results to entries with this posting status. Accepted values: 'posted', 'unposted', 'voided'. Any other value matches no entry.
filters.type string no Limits results to entries of this origin type, for example 'manual' or 'invoice'.
filters.name string no Limits results to entries whose name contains this text. The match is case-insensitive.
filters.description string no Limits results to entries whose description contains this text. The match is case-insensitive.
filters.postingDate object no A window on the posting date. Both bounds are inclusive. Omit a bound to leave that side open.
filters.postingDate.start string (date) no The inclusive start of the posting-date window. Use format YYYY-MM-DD.
filters.postingDate.end string (date) no The inclusive end of the posting-date window. Use format YYYY-MM-DD.
page object no The pagination controls. Omit for the first page.
page.cursor string no The cursor from the previous response's pagination.nextCursor. Omit for the first page.
page.size number no The number of entries per page. Defaults to 50. A value above 200 is treated as 200, not rejected.

Example:

{
  "filters": {
    "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "bookId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "status": "<status>",
    "type": "<type>",
    "name": "<name>",
    "description": "<description>",
    "postingDate": {
      "start": "2026-01-15",
      "end": "2026-01-15"
    }
  },
  "page": {
    "cursor": "<cursor>",
    "size": 0
  }
}

Response

200 Success

Under data (searchJournalEntriesOutput):

Field Type Required Description
items array of object yes The journal entries that match, most recently created first. An empty array when nothing matches.
items[].id string yes The unique identifier for the journal entry.
items[].approvalStatus string no The approval status of the journal entry. Possible values: 'draft', 'pendingApproval', 'revise', 'approved', 'rejected'. Absent on entries that never entered the approval workflow.
items[].bookId string no The accounting book this entry posts to. See id on GET accounting/books/:id.
items[].description string no A free-form description of the journal entry.
items[].name string no The display name of the journal entry.
items[].postingDate string (date) yes The date the entry posts to the general ledger. Format YYYY-MM-DD.
items[].reversalDate string (date) no The reversal date recorded on the entry. Format YYYY-MM-DD. Set only on a reversed entry or a reversal entry.
items[].reversalDescription string no The description recorded on the reversal.
items[].reversalReason string no The reason recorded for the reversal. Possible values: 'accrualReversal', 'revaluationReversal', 'estimate', 'rebook', 'reversingSFD', 'other'.
items[].status string yes The posting status of the journal entry. Possible values: 'posted', 'unposted', 'voided'.
items[].type string no How the entry originated, for example 'manual', 'invoice', 'revaluation' or 'reversal'. A system-assigned value.
items[].url string no A link to the source document this entry comes from.
items[].lastModifiedDate string (date-time) yes The date and time the journal entry last changed, in UTC. Format YYYY-MM-DDTHH:mm:ss.sssZ.
items[].lines array of object yes The debit and credit lines of the entry.
items[].lines[].id string yes The unique identifier for the line.
items[].lines[].accountId string yes The general ledger account this line posts to. See id on GET accounting/accounts/:id.
items[].lines[].credit string (decimal) no The credit amount for this line, in its transactionalCurrency. A line has either a debit or a credit, not both.
items[].lines[].debit string (decimal) no The debit amount for this line, in its transactionalCurrency. A line has either a debit or a credit, not both.
items[].lines[].description string no A free-form description of the line.
items[].lines[].entityId string yes The legal entity this line posts to. See id on GET base/entities.
items[].lines[].intercompanyPartnerId string no The intercompany counterparty for this line. Set on intercompany lines.
items[].lines[].exchangeRate string (decimal) no The exchange rate used to convert the line's transactional amount to its functional amount.
items[].lines[].functionalCredit string (decimal) no The credit amount for this line, in the functional currency.
items[].lines[].functionalCurrency string no The functional currency of the posting entity. Format ISO 4217, for example 'USD'.
items[].lines[].functionalDebit string (decimal) no The debit amount for this line, in the functional currency.
items[].lines[].journalEntryId string no The journal entry this line belongs to. See id on GET accounting/journal-entries/:id.
items[].lines[].lineNumber number no The line's sequential number within the entry.
items[].lines[].lineType string no The classification of the line, for example 'standard', 'tax', 'offset' or 'fxRoundingDifference'. A system-assigned value. Absent when the line has no classification.
items[].lines[].postingPeriodId string no The accounting period this line posts to. See id on GET accounting/accounting-periods/:id.
items[].lines[].revaluation boolean no Whether a currency-revaluation process created this line.
items[].lines[].sourceTransaction string no The identifier of the source transaction that generated this line, for example an invoice or payment number.
items[].lines[].transactionalCurrency string no The currency of the line's transactional amounts. Format ISO 4217, for example 'USD'.
items[].lines[].transactionDate string (date) no The date of the underlying transaction. Format YYYY-MM-DD. It can differ from the posting date.
items[].lines[].reportingTags array of object no The reporting tags assigned to this line. Set them with create or update.
items[].lines[].reportingTags[].dimensionCode string yes The reporting dimension this tag is for. Possible values: 'department', 'businessUnit', 'team', 'location', 'region', 'employee', 'vendor', 'customer', 'valueCenter', 'custom'.
items[].lines[].reportingTags[].modelId string yes The dimension record this tag points to, on the model that dimensionCode names.
items[].lines[].reportingTags[].customDimensionId string no The custom dimension this tag belongs to. Present only for a custom-dimension tag. See id on GET base/custom-dimensions.
items[].lines[].reportingTags[].isActive boolean yes Whether the referenced dimension record is currently active. A historical entry can have tags that point at records since made inactive.
pagination object yes The pagination cursor for this page.
pagination.nextCursor string no The cursor for the next page. Pass it as page.cursor. Absent on the last page.
pagination.hasMore boolean yes True when more entries remain beyond this page.

Statuses