Skip to main content
GET
/
hris
/
pay-runs
Pay Runs
curl --request GET \
  --url https://api.kombo.dev/v1/hris/pay-runs \
  --header 'Authorization: Bearer <token>' \
  --header 'X-Integration-Id: <x-integration-id>'
{
  "status": "success",
  "data": {
    "next": "eyJwYWdlIjoxMiwibm90ZSI6InRoaXMgaXMganVzdCBhbiBleGFtcGxlIGFuZCBub3QgcmVwcmVzZW50YXRpdmUgZm9yIGEgcmVhbCBjdXJzb3IhIn0=",
    "results": [
      {
        "id": "HdyE3KNfcbNzXFRqwW1Wh2eP",
        "remote_id": "300000092871122",
        "start_date": "2026-01-01T00:00:00.000Z",
        "end_date": "2026-01-31T00:00:00.000Z",
        "pay_date": "2026-01-23T00:00:00.000Z",
        "status": {
          "remote_label": "Completed: Complete",
          "unified_type": "COMPLETED"
        },
        "currency": "EUR",
        "legal_entity_id": "3Y6vdh2SPujGVx8oj4g8hdUu",
        "totals": {
          "gross_pay": 435300,
          "net_pay": 362300,
          "paid_amount": 306300.26
        },
        "changed_at": "2026-01-23T12:32:01.000Z",
        "remote_deleted_at": null,
        "remote_data": null
      }
    ]
  }
}
Closed Beta Feature: This endpoint is currently in closed beta. We’re testing it with selected customers before its public release. If you’re interested in learning more or getting early access, please reach out.
Retrieve all pay runs for all legal entities, across all time.

Authorizations

Authorization
string
header
required

Create an API key on the Secrets page in the Kombo dashboard.

Headers

X-Integration-Id
string
required

ID of the integration you want to interact with.

Query Parameters

cursor
string

An optional cursor string used for pagination. This can be retrieved from the next property of the previous page response.

page_size
integer<int64>
default:100

The number of results to return per page. Maximum is 250.

Required range: 1 <= x <= 250
updated_after
string<date-time>

Filter the entries based on the modification date in format YYYY-MM-DDTHH:mm:ss.sssZ. Returns records where either the record itself OR its nested data has been updated since this timestamp, even if the record's own changed_at field remains unchanged.

If you want to track entry deletion, also set the include_deleted=true query parameter, because otherwise, deleted entries will be hidden.

For more details, see Understanding changed_at vs updated_after Behavior.

For this endpoint, only changes to the returned record itself are considered.

Pattern: ^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(\.\d+)?)?Z?$
include_deleted
enum<string>
default:false

By default, deleted entries are not returned. Use the include_deleted query param to include deleted entries too.

Available options:
true,
false
ignore_unsupported_filters
enum<string>
default:false

When set to true, filters targeting fields not supported by this integration will be ignored instead of filtering out all results.

Available options:
true,
false
ids
string

Filter by a comma-separated list of IDs such as 222k7eCGyUdgt2JWZDNnkDs3,B5DVmypWENfU6eMe6gYDyJG3.

remote_ids
string

Filter by a comma-separated list of remote IDs.

Filter by a comma-separated list of legal entity IDs.

Response

GET /hris/pay-runs Positive response

status
string
required
Allowed value: "success"
data
object
required
Example:
{
"next": "eyJwYWdlIjoxMiwibm90ZSI6InRoaXMgaXMganVzdCBhbiBleGFtcGxlIGFuZCBub3QgcmVwcmVzZW50YXRpdmUgZm9yIGEgcmVhbCBjdXJzb3IhIn0=",
"results": [
{
"id": "HdyE3KNfcbNzXFRqwW1Wh2eP",
"remote_id": "300000092871122",
"start_date": "2026-01-01T00:00:00.000Z",
"end_date": "2026-01-31T00:00:00.000Z",
"pay_date": "2026-01-23T00:00:00.000Z",
"status": {
"remote_label": "Completed: Complete",
"unified_type": "COMPLETED"
},
"currency": "EUR",
"legal_entity_id": "3Y6vdh2SPujGVx8oj4g8hdUu",
"totals": {
"gross_pay": 435300,
"net_pay": 362300,
"paid_amount": 306300.26
},
"changed_at": "2026-01-23T12:32:01.000Z",
"remote_deleted_at": null,
"remote_data": null
}
]
}