Get Contact Activity Log (V2)
GET/api/xero/v2/contacts/:contact/activity-log
Paginated change history for a single synced Xero contact — one entry per recorded change, newest first. Each entry includes the change type (event: created / updated / deleted / bulk_upsert), the changed field values (properties.attributes = new values, properties.old = previous values), the source tag of whatever made the change (properties.source), an optional batch_uuid grouping changes made by one bulk operation, and causer_name (the user who triggered it; null for system/sync changes).
Any valid API token can call this endpoint — no specific scope required. Manage tokens.
Query parameters: page, per_page (default 15), filter[event], filter[source], filter[batch_uuid], filter[search] — all optional.
Path parameters: the record ID is the id returned by List Contacts (V2).
Returns 404 when the record does not exist.
Authentication: Bearer token.
Request
Responses
- 200
- 401
- 403
- 404
- 429
OK
Response Headers
Unauthenticated — the bearer token is missing, revoked, expired, or malformed. Never retry automatically; fix the credential. See the Errors guide.
Forbidden — the token lacks a required scope, the endpoint is not available to API tokens, or the user behind the token lacks the permission. A human must adjust the token scopes or user permissions; do not retry.
Not found — no record with the given identifier (or the route does not exist). Verify the ID before retrying.
Rate limited — platform limit is 1,000 requests/min; individual tokens may carry lower limits. Honor the Retry-After header before retrying. See the Rate Limits guide.