Time punches

Get Time Punches

GET
/time-punches

Returns a paginated list of time punches. A time punch is a clock-in or clock-out event recorded by an employee, capturing the timestamp and optionally which department or project the time was recorded against.

Filters:

  • start-date Required. Start of the date range (inclusive, YYYY-MM-DD).
  • end-date Required. End of the date range (inclusive, YYYY-MM-DD).
  • Exactly one of organization-ids, company-ids, or employee-ids is required; providing more than one or none returns 400.
  • data-source — optional, limit to punches from a specific data source
  • project-ids — optional, further filter by project IDs
  • client-ids — optional, further filter by client IDs

Multiple filters combine with AND logic; values within one parameter combine with OR.

Access control: Results are limited to companies your integration has access to. Inaccessible IDs in filter parameters are silently excluded.

Error Details:

  • 400 Bad Requeststart-date or end-date is missing or not in YYYY-MM-DD format, end-date is before start-date, more than one scope filter is provided, or no scope filter is provided
  • 404 Not Found — no time punches were found for the specified filters
X-API-KEY<token>

Your API key.

In: header

Query Parameters

api-version*string

API version

Default"3.0"
Value in"3.0"
start-date?string

Required. Start of the date range (inclusive, YYYY-MM-DD).

end-date?string

Required. End of the date range (inclusive, YYYY-MM-DD). Must be greater than or equal to start-date.

data-source?string

Optional. Filter by data source.

organization-ids?array<string>

Scope filter — provide exactly one of: organization-ids, company-ids, or employee-ids.

company-ids?array<>

Scope filter — provide exactly one of: organization-ids, company-ids, or employee-ids.

employee-ids?array<>

Scope filter — provide exactly one of: organization-ids, company-ids, or employee-ids.

project-ids?array<>

Optional. Further filter results by project IDs.

client-ids?array<>

Optional. Further filter results by client IDs.

page-number?integer

Page number (1-based, default: 1).

Formatint32
page-size?integer

Items per page (1–250, default: 50).

Formatint32

Response Body

curl -X GET "https://external-app-prod.netchexonline.net/time-punches?api-version=3.0"
{
  "pageNumber": 0,
  "pageSize": 0,
  "totalItemsCount": 0,
  "items": [
    {
      "id": "string",
      "employeeId": 0,
      "companyId": 0,
      "time": "2019-08-24T14:15:22Z",
      "type": "string",
      "departmentId": 0,
      "projectId": 0,
      "uniqueExternalId": "string",
      "dataSource": "string",
      "sequenceNumber": 0
    }
  ]
}
{
  "type": "string",
  "title": "string",
  "status": 0,
  "detail": "string",
  "instance": "string",
  "property1": null,
  "property2": null
}
{
  "type": "string",
  "title": "string",
  "status": 0,
  "detail": "string",
  "instance": "string",
  "property1": null,
  "property2": null
}
{
  "type": "string",
  "title": "string",
  "status": 0,
  "detail": "string",
  "instance": "string",
  "property1": null,
  "property2": null
}
{
  "type": "string",
  "title": "string",
  "status": 0,
  "detail": "string",
  "instance": "string",
  "property1": null,
  "property2": null
}