Docs
API referencePeople and H R

List a person's job changes

Preview· P9
GET
/people/{person_id}/job-changes

Returns the person's job changes, newest first (up to 200): waiting for approval (pending), scheduled for their date, applied, declined, cancelled, or failed when one couldn't be made on its date (failure says why).

Scope: hr:read · Plan: Pro and Enterprise in live mode; every plan in test mode.

Authorization

headerAuthorizationBearer <token>

Send Authorization: Bearer <token> on every request. The token is one of:

PrefixWhat it isWhere it may be used
agoo_sk_live_Secret key, live modeYour servers only
agoo_sk_test_Secret key, test modeYour servers only
agoo_pk_live_Publishable key, live modeBrowsers and apps: create pre-registrations and bookings, read public booking types (with their intake questions) and their free slots, read the visit types open for pre-registration with their public forms. Never lists people.
agoo_pk_test_Publishable key, test modeAs above, in test mode

Admins create keys in Console → Developers → API keys and choose each key's scopes. A key is shown once. Never put a secret key in a URL, a browser or a mobile app.

Scope: hr:read

Path Parameters

person_id*string

The person's ID.

Match^person_[0-7][0-9a-hjkmnp-tv-z]{25}$
Example"person_01kjsesxm0e4zbyvkr7bcfxbfg"

Response Body

The person's job changes.

application/json
  1. response
data*array<>
next_cursor*|

Pass this as cursor to get the next page. null on the last page.

Example"b3BhcXVlLWN1cnNvcg"
has_more*boolean
curl -X GET 'https://api.agoohq.com/v1/people/person_01kjsesxm0e4zbyvkr7bcfxbfg/job-changes'
{  "data": [    {      "id": "pchg_01m6j4p2r6t0v4x8z2b6d0f4hm",      "object": "job_change",      "person_id": "person_01kjw4mg80efgb5aqbsqnxhtbh",      "status": "scheduled",      "source": "api",      "effective_on": "2026-11-01",      "reason": "Promotion after the 2026 review",      "fields": [        {          "field": "job_title",          "label": "Job title",          "from": "Operations officer",          "to": "Senior operations officer"        },        {          "field": "grade",          "label": "Grade",          "from": "G5",          "to": "G6"        },        {          "field": "position_id",          "label": "Position",          "from": null,          "to": "Senior operations officer"        }      ],      "failure": null,      "created_at": "2026-10-19T11:20:00Z",      "applied_at": null    }  ],  "next_cursor": null,  "has_more": false}