List payroll details
Operation ID: payrollDetails
Group: Accounting › Payroll Details
Open in the interactive reference
GET /accounting/payroll-details
Read-only: Reads and returns; changes nothing.
Lists payroll details, without their lines. To get the lines, use GET accounting/payroll-details/:id or POST accounting/payroll-details/search.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
Api-Version |
header | string · 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. |
Query surface
id— filter by eq, ne, gt, gte, lt, lte, in, notIn, between, likepayrollDetailNumber— filter by eq, ne, gt, gte, lt, lte, in, notIn, between, likeperiodName— filter by eq, ne, gt, gte, lt, lte, in, notIn, between, likepayrollDate— filter by eq, ne, gt, gte, lt, lte, in, notIn, betweenstartDate— filter by eq, ne, gt, gte, lt, lte, in, notIn, betweenendDate— filter by eq, ne, gt, gte, lt, lte, in, notIn, betweencurrency— filter by eq, ne, gt, gte, lt, lte, in, notIn, between, likegrouping— filter by eq, ne, gt, gte, lt, lte, in, notIn, between, likepaymentStatus— filter by eq, ne, gt, gte, lt, lte, in, notIn, between, likeisImported— filter by eq, ne, gt, gte, lt, lte, in, notIn, betweenlastModifiedDate— filter by eq, ne, gt, gte, lt, lte, in, notIn, between- Orderable: id, payrollDetailNumber, periodName, payrollDate, startDate, endDate, currency, grouping, paymentStatus, lastModifiedDate
- Selectable: id, payrollDetailNumber, description, periodName, payrollDate, startDate, endDate, currency, grouping, paymentStatus, isImported, entityName, lastModifiedDate
page[size]— Page sizepage[cursor]— Opaque continuation cursor
Response
200 Success
Under data, an array of payrollDetailsRow:
| Field | Type | Required | Filter | Sort | Description |
|---|---|---|---|---|---|
id |
string | no | Exact (eq, ne), Range (gt, gte, lt, lte, between), Any of (in, notIn), Pattern (like) |
yes | The unique identifier for the payroll run. |
payrollDetailNumber |
string | null | no | Exact (eq, ne), Range (gt, gte, lt, lte, between), Any of (in, notIn), Pattern (like) |
yes | The payroll run number. Absent until a number has been assigned. |
description |
string | null | no | no | no | A description of the payroll run. |
periodName |
string | null | no | Exact (eq, ne), Range (gt, gte, lt, lte, between), Any of (in, notIn), Pattern (like) |
yes | The name of the payroll period this run covers, for example '2026-08'. |
payrollDate |
date | null | no | Exact (eq, ne), Range (gt, gte, lt, lte, between), Any of (in, notIn) |
yes | The date the payroll is dated. Format YYYY-MM-DD. |
startDate |
date | null | no | Exact (eq, ne), Range (gt, gte, lt, lte, between), Any of (in, notIn) |
yes | The first day of the period the run covers. Format YYYY-MM-DD. |
endDate |
date | null | no | Exact (eq, ne), Range (gt, gte, lt, lte, between), Any of (in, notIn) |
yes | The last day of the period the run covers. Format YYYY-MM-DD. |
currency |
string | null | no | Exact (eq, ne), Range (gt, gte, lt, lte, between), Any of (in, notIn), Pattern (like) |
yes | The currency the run is denominated in. Format ISO 4217, for example 'USD'. |
grouping |
string | null | no | Exact (eq, ne), Range (gt, gte, lt, lte, between), Any of (in, notIn), Pattern (like) |
yes | How the payroll run is grouped. Values include 'Employee', 'Department' and 'Multi-level'. |
paymentStatus |
string | null | no | Exact (eq, ne), Range (gt, gte, lt, lte, between), Any of (in, notIn), Pattern (like) |
yes | The payment status of the run. Values include 'unpaid', 'partiallyPaid', 'fullyPaid', 'pending', 'notApplicable' and 'voided'. |
isImported |
boolean | null | no | Exact (eq, ne), Range (gt, gte, lt, lte, between), Any of (in, notIn) |
no | Whether the run was imported from a payroll provider rather than entered by hand. |
entityName |
string | null | no | no | no | The name of the legal entity the run belongs to. |
lastModifiedDate |
date-time | null | no | Exact (eq, ne), Range (gt, gte, lt, lte, between), Any of (in, notIn) |
yes | The date and time the payroll run last changed, in UTC. Format YYYY-MM-DDTHH:mm:ss.sssZ. |
{
"data": [
{
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"payrollDetailNumber": "<payrollDetailNumber>",
"description": "<description>",
"periodName": "<periodName>",
"payrollDate": "2026-01-15",
"startDate": "2026-01-15",
"endDate": "2026-01-15",
"currency": "<currency>",
"grouping": "<grouping>",
"paymentStatus": "<paymentStatus>",
"isImported": true,
"entityName": "<entityName>",
"lastModifiedDate": "2026-01-15T09:30:00.000Z"
}
],
"pagination": {
"hasMore": true,
"nextCursor": "<nextCursor>"
}
}
Statuses
400— Invalid request or business failure401— The request carries no valid access token.403— Not authorized404— Not found429— Too many requests from this client address. The response has no body and noRetry-Afterheader.500— Internal server error