---
title: "Get a user"
method: GET
path: "/api/users/{customer_identifier}/"
tags: ["Users"]
---

# Get a user

`GET /api/users/{customer_identifier}/`

## Request

- Base URL: `https://api.respan.ai`
- URL: `https://api.respan.ai/api/users/{customer_identifier}/`
- Auth: one of:
  - HTTP bearer
  - HTTP bearer

Returns the user's editable profile and current budget usage.

## Path parameters

- `customer_identifier` string, required

## Query parameters

- `environment` 'prod' | 'test'

## Response `200`

User details.

- object
  - `id` string: User identifier.
  - `name` string, nullable: User display name.
  - `email` string, nullable: User email address.
  - `customer_identifier` string: Your unique identifier for the user.
  - `environment` 'prod' | 'test': User environment.
  - `total_budget` number, nullable: Lifetime spending budget in USD.
  - `period_budget` number, nullable: Current period budget in USD.
  - `organization_name` string, nullable: Owning organization name.
  - `total_period_usage` number: Usage in the current budget period in USD.
  - `period_start` string, date-time: Start of the current budget period.
  - `period_end` string, date-time, nullable: End of the current budget period.
  - `budget_duration` 'daily' | 'weekly' | 'monthly': Budget renewal period.
  - `updated_at` string, date-time: Last update timestamp.

## Other responses

- `403`: The API key is missing, invalid or expired.
- `404`: Not Found
- `429`: Rate Limited
- `500`: Internal Server Error

## Changes

- **2026-10-21** `c30bcb383ee8`: 9 breaking, 4 info
  - the response property `email` became nullable for the status `200`
  - the response property `name` became nullable for the status `200`
  - the response property `organization_name` became nullable for the status `200`
  - the response property `period_budget` became nullable for the status `200`
  - …9 more
- **2026-10-02** `b830b79cfd52`: 2 info
  - added the non-success response with the status `403`
  - removed the non-success response with the status `401`
- **2026-09-17** `6fa8242da8c2`: 1 warning, 1 info
  - deleted the `header` request parameter `Authorization`
  - the endpoint scheme security `RespanApiKey` was added to the API
- **2026-09-12** `22b868ef3f22`: 1 info
  - api operation id `retrieve-user` removed and replaced with `users_retrieveUser`
- **2026-08-13** `4e064cf81dae`: 4 breaking, 5 warning, 6 info
  - the response property `organization_name` became nullable for the status `200`
  - the response property `id` became optional for the status `200`
  - the response property `organization_name` became optional for the status `200`
  - the `environment` response's property type changed from no type to `string` for status `200`
  - …11 more

[Operation history](https://skmtc.dev/keywordsai/apis/respan-api/changes/api/users/:customer_identifier/get.md)

---

[API](https://skmtc.dev/keywordsai/apis/respan-api.md) - [All operations](https://skmtc.dev/keywordsai/apis/respan-api/llms.txt) - [OpenAPI document](https://skmtc.dev/keywordsai/apis/respan-api/revisions/900841387635?raw)
