Pages
Every list takeslimit (1 to 500, default 100) and cursor, and answers:
next_cursor as cursor to read the next page. It is null on the last page. There is no
total and no offset. The cursor is opaque: do not build or parse one. A cursor that andteam did
not issue answers invalid-parameter.
Nothing is skipped while you page
Lists that change (employees, positions, time off and events) are read in the order records last changed. A record that changes while you page moves to the end and is read again there, so a page never skips it and never repeats it out of order. Small configuration lists (companies, locations, lookups and org units) page by id.Changed since
To stay in step with andteam, read everything once, then read again withupdated_since set to the
time your last full read began, not when it ended:
- Note the time. Read every page of
GET /v1/employees. - Later, note the time again. Read
GET /v1/employees?updated_since=<the earlier time>. - Apply what comes back, by
id. Repeat from step 2.
updated_since takes an ISO 8601 instant and returns records changed after it. Starting the window
at the beginning of the previous read means a record that changed during that read is read again, not
lost. Applying it by id makes reading it twice harmless.
GET /v1/time-off takes updated_since too. An absence that was approved and then withdrawn or
cancelled is returned with status cancelled, inside the window of its change, so you can remove it.
GET /v1/events takes since, which filters on when the event became readable.
Filters
A
company_id the key does not hold answers company-not-allowed.