---
title: "List XP history"
method: GET
path: "/v1/communities/{communityId}/members/{memberId}/xp/history"
tags: ["Members"]
---

# List XP history

`GET /v1/communities/{communityId}/members/{memberId}/xp/history`

## Request

- Base URL: `https://api.subo.ai`
- URL: `https://api.subo.ai/v1/communities/{communityId}/members/{memberId}/xp/history`
- Auth: API key in header `X-API-Key`

Append-only XP audit trail for a member: every survey completion, action block, poll vote, admin award, recalculation, and reset. Newest first, paginated. Admin role required.

## Path parameters

- `communityId` string, required
- `memberId` string, required

## Query parameters

- `page` integer
- `per_page` integer

## Response `200`

Paginated XP ledger entries

- object
  - `data` XpLedgerEntry[]
    - `id` integer
    - `delta` integer: Effective (post-clamp) XP change; negative for deductions
    - `balance_after` integer: Running lifetime XP total right after this entry
    - `source_kind` 'opening_balance' | 'unknown' | 'survey_completion' | 'action_block' | 'poll_vote' | 'poll_unwind' | 'recalculate' | 'admin_manual' | 'reset': Why the balance moved
    - `source_ref` integer, nullable: Referenced survey/poll id for survey-derived kinds; null otherwise
    - `session_number` integer, nullable: Completion index for survey/poll kinds
    - `actor_name` string, nullable: Admin who awarded, for admin_manual/reset kinds
    - `survey_name` string, nullable: Name of the survey/poll named by source_ref
    - `note` string, nullable
    - `created_at` string, date-time, nullable
  - `pagination` Pagination
    - `page` integer
    - `per_page` integer
    - `total` integer
    - `has_more` boolean

## Other responses

- `401`: Invalid or missing API key
- `403`: Forbidden — the key or user lacks permission for this resource or operation
- `404`: Resource not found
- `429`: Rate limit exceeded — wait `retry_after` seconds before retrying. The same value appears in the `Retry-After` header.

---

[API](https://skmtc.dev/subo/apis/subo-api.md) · [All operations](https://skmtc.dev/subo/apis/subo-api/llms.txt) · [OpenAPI document](https://skmtc.dev/subo/apis/subo-api/revisions/12eab2ae4505?raw)
