achievements

Get your achievements (v3)

Returns your complete achievement list using the enhanced v3 API.

v3 vs v2 Differences

The v3 achievements API provides:

  • Direct achievement data - Raw achievement records without title grouping
  • Contract version 2 - Uses the newer Xbox Live achievements contract
  • Simplified response - Flatter data structure for easier parsing

Response Structure

Returns an array of achievement objects with:

  • id - Unique achievement identifier
  • name - Achievement display name
  • description - How to unlock the achievement
  • isUnlocked - Whether you've earned it
  • timeUnlocked - When it was earned (if unlocked)
  • gamerscore - Points awarded

Pagination

Xbox returns 32 achievements per page by default. The response carries a pagingInfo.continuationToken; pass it back as the continuationToken query param to fetch the next page:

GET /v3/achievements
GET /v3/achievements?continuationToken=32
GET /v3/achievements?continuationToken=64

Keep following pagingInfo.continuationToken until it comes back null, which signals the last page. totalRecords tells you how many achievements exist in total.

Use maxItems to request a larger page and cut down the number of round trips (e.g. ?maxItems=200). Omit it to keep Xbox's default of 32.

The token must be sent as a query parameter - it is not read from a header.

When to Use v3 vs v2

  • Use v3 when you need raw achievement data
  • Use v2 when you want achievements grouped by title
get/v3/achievements

Query parameters

continuationTokenstring
string numeric
OR
number

Response

Achievement list

{"stackTrail":"components:schemas:ApiResponse:properties:content","oasType":"schema","type":"unknown","description":"The response payload from the upstream Xbox/Microsoft API. The structure varies by endpoint - can be an object, array, or string."}
codeinteger required

HTTP status code from the upstream API. Common values: 200 (success), 400 (bad request), 401 (unauthorized), 404 (not found), 410 (deprecated/gone), 429 (rate limited), 500 (server error)

Example response

{
  "code": 200
}

Changes

No recorded changes to this endpoint across all 1 revision of this API.