Direct entry earnings

Get Direct Entry Earnings

GET
/direct-entry-earnings

Returns a paginated list of direct entry earnings. A direct entry earning is a manually entered earning record for an employee — such as a bonus, reimbursement, or supplemental pay — entered directly rather than calculated from time clock punches.

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 earnings 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 direct entry earnings 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/direct-entry-earnings?api-version=3.0"
{
  "pageNumber": 0,
  "pageSize": 0,
  "totalItemsCount": 0,
  "items": [
    {
      "directEntryEarningId": 0,
      "employeeId": 0,
      "companyEarningId": 0,
      "units": 0.1,
      "rate": 0.1,
      "grossAmount": 0.1,
      "date": "2019-08-24T14:15:22Z",
      "departmentId": 0,
      "projectId": 0,
      "comment": "string",
      "uniqueExternalId": "string",
      "dataSource": "string"
    }
  ]
}
{
  "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
}

Get My Account GET

Returns basic information about the authenticated integration account, including contact details and whether webhooks are enabled. **Error Details:** - **404 Not Found** — the integration account associated with your credentials was not found

Get Employee Department Assignments GET

Returns a paginated list of employees with the departments they are assigned to work in. Each result includes the employee's company and the list of department IDs they can record time against. **Filters:** - `company-ids` — return assignments for all employees in these companies - `employee-ids` — return assignments for these specific employees - Exactly one of `company-ids` or `employee-ids` is required; providing both or neither returns 400. - `include-hidden` — when true (default), inactive departments are included in the results - `include-departments` — when true, the response includes an `included.departments` object with deduplicated department details for all department IDs referenced on the current page **Access control:** Results are limited to companies your integration has access to. When `company-ids` is supplied, only employees from accessible companies are included. Inaccessible IDs in filter parameters are silently excluded. **Error Details:** - **400 Bad Request** — neither `company-ids` nor `employee-ids` is provided, both are provided, any ID is not a positive integer, or `page-size` outside 1–500 - **404 Not Found** — no employee department assignments were found for the specified filter