> ## Client identification
>
> Requests to this API should include a `Client-Platform` header alongside
> `Authorization`, identifying the application, tool, or model making the
> request. This is used for integration support and analytics.
>
> Use your model or tool name, for example `claude-code` or `chatgpt`.
>
> Example:
>
> ```bash
> curl https://api.salaryboxapp.com/... \
>   -H "Authorization: Api-Key <api-key>" \
>   -H "Client-Platform: claude-code"
> ```

# Endpoint differences

Endpoints were added over time and do not all filter, page or select staff the same way.
This page lists every difference in one place. The API itself is unchanged.

## Filters and page sizes

| Endpoints                                                                                                                                                                                                                           | Staff filter                                                                | Branch / department filter                                                                                                              | Page size (default / max) |
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- | ------------------------- |
| List Daily Attendance, List Attendance Muster, List Punches                                                                                                                                                                         | `salarybox_ids`, **comma-separated**                                        | `branch_names`, `department_names`, comma-separated **names**                                                                           | 500 / 500                 |
| List Leave Balances                                                                                                                                                                                                                 | `salarybox_ids`, **comma-separated**                                        | none                                                                                                                                    | 500 / 500                 |
| List Attendance Timesheets, List Staff Schedules, List Staff Attendance Settings                                                                                                                                                    | `salarybox_ids`, repeatable                                                 | `branch_names`, `department_names`, repeatable exact **names**                                                                          | 500 / 500                 |
| List Staff, List Inactive Staff                                                                                                                                                                                                     | one `salarybox_id`, plus `employee_id`, `name`, `job_title`, `phone_number` | `branches`, `departments`, repeatable **IDs** from List Branches / List Departments; comma-separated values are **rejected with `400`** | **25** / 500              |
| List Staff CTC, List Salary Breakdowns, List Salary Paid, List Advances Paid, List Payroll History, List Payroll Payments, List Tax Declarations, List Late Fine Settings, List Early Leaving Fine Settings, List Overtime Settings | `salarybox_ids`, repeatable                                                 | none                                                                                                                                    | **50** / 50               |
| List Wallet Ledger                                                                                                                                                                                                                  | none                                                                        | none                                                                                                                                    | **200** / 200             |
| List CRM Meetings, List CRM Trips                                                                                                                                                                                                   | `salarybox_ids`, repeatable, **at most 10**                                 | none                                                                                                                                    | **25** / 25               |
| List CRM Trip Timeline                                                                                                                                                                                                              | `salarybox_ids`, repeatable, **required, 1 to 10**                          | none                                                                                                                                    | **25** / 25               |
| Get Staff Member, Get Staff Overtime                                                                                                                                                                                                | one `salarybox_id`, **required**                                            | none                                                                                                                                    | not paginated             |
| List Staff Location History                                                                                                                                                                                                         | one `salarybox_id`, **required**                                            | none                                                                                                                                    | 500 / 500                 |
| All other list endpoints                                                                                                                                                                                                            | `salarybox_ids`, repeatable, where offered                                  | none                                                                                                                                    | 500 / 500                 |

Not paginated: Get Company Profile, Get Company Subscription, Get Payroll Settings, Get Payroll
Summary, Get Staff Member, Get Staff Overtime, List Leave Approval Flows and List Reimbursement
Approval Flows.

## Pages past the end

Most endpoints return `404` `"Invalid page."` for a page past the last one. These return
`200` with an empty `data` instead, and treat a missing, zero or non-numeric `page` as page 1:
List Staff, List Inactive Staff, List Staff CTC, List Salary Paid and List Advances Paid.

## Date ranges

| Longest range  | Endpoints                                                                                                          |
| -------------- | ------------------------------------------------------------------------------------------------------------------ |
| 31 days        | List Attendance Timesheets, List CRM Meetings, List CRM Trips, List CRM Trip Timeline                              |
| 60 days        | List Daily Attendance, List Attendance Muster, List Punches, List Staff Schedules                                  |
| 12 months      | List Payroll History                                                                                               |
| 366 days       | List Payroll Payments                                                                                              |
| under 366 days | List Wallet Ledger                                                                                                 |
| one month      | List Staff Notes, Get Staff Overtime, List Staff CTC, List Salary Breakdowns, List Salary Paid, List Advances Paid |

## Who is included

| Inactive staff                         | Endpoints                                                                                                                                                                                                                                                                                                                                                   |
| -------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Only inactive staff                    | List Inactive Staff                                                                                                                                                                                                                                                                                                                                         |
| Included                               | List Employment History, List Staff Notes, List Payroll History, List Payroll Payments, List Tax Declarations, Get Staff Overtime, List Staff Location History, List Location Tracking Requests, List CRM Meetings, List CRM Trips, List CRM Trip Timeline                                                                                                  |
| Included if they left during the month | List Salary Breakdowns                                                                                                                                                                                                                                                                                                                                      |
| Not included                           | List Staff, Get Staff Member, List Add-on Permissions, List Custom Fields, List Attendance Timesheets, List Staff Schedules, List Staff Attendance Settings, List Late Fine Settings, List Early Leaving Fine Settings, List Overtime Settings, List Leave Requests, List Reimbursement Requests, List Device Mapping Requests, List Latest Staff Locations |

Grouped endpoints list only staff who have something to show (List Employment History, List
Staff Notes, List Payroll Payments, List Latest Staff Locations). The CRM, timesheet, schedule
and settings endpoints list every included staff member, even with nothing in the range.