---
title: "List Avatars"
method: GET
path: "/v1/avatars"
tags: ["Avatars"]
---

# List Avatars

`GET /v1/avatars`

## Request

- Base URL: `https://api.bey.dev`
- URL: `https://api.bey.dev/v1/avatars`
- Auth: API key in header `x-api-key`

List available avatars.

Returns a cursor-paginated list of the avatars you can use in agents:
both your own trained avatars and public stock avatars.

## Query parameters

- `limit` integer: Maximum number of objects to return.
- `cursor` string, nullable: Cursor for pagination.

## Response `200`

Paginated List of Avatars

- union
  - HasMorePageAvatarResponse
    - `data` AvatarResponse[], required: List of objects.
      - `visibility` 'public' | 'private', required: Visibility of the resource.
      - `id` string, required: Unique identifier of the object in the database.
      - `name` string, required
      - `status` 'to-train' | 'training' | 'available' | 'failed', required: Status of an avatar.
    - `has_more` true: Whether there are more objects to fetch.
    - `next_cursor` string, required: The cursor for the next page of objects.
  - NoMorePageAvatarResponse
    - `data` AvatarResponse[], required: List of objects.
      - `visibility` 'public' | 'private', required: Visibility of the resource.
      - `id` string, required: Unique identifier of the object in the database.
      - `name` string, required
      - `status` 'to-train' | 'training' | 'available' | 'failed', required: Status of an avatar.
    - `has_more` false: Whether there are more objects to fetch.

## Other responses

- `401`: Authentication failed. The `x-api-key` header is missing or the provided API key is invalid.
- `402`: The plan's usage limit has been reached, or the requested feature requires a plan upgrade.
- `403`: The API key is valid but not permitted to perform this action, because the resource belongs to someone else.
- `404`: The requested resource does not exist or is not accessible with this API key.
- `422`: The request is malformed. `detail` lists each field that failed validation, where it was located, and why.
- `429`: The plan's limit on the number of concurrent sessions has been reached.

## Changes

- **2026-10-20** `0469e200c235`: 1 info
  - added the non-success response with the status `402`
- **2026-10-16** `c8f80740b51c`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/bey-dev/apis/beyond-presence-api/changes/v1/avatars/get.md)

---

[API](https://skmtc.dev/bey-dev/apis/beyond-presence-api.md) - [All operations](https://skmtc.dev/bey-dev/apis/beyond-presence-api/llms.txt) - [OpenAPI document](https://skmtc.dev/bey-dev/apis/beyond-presence-api/revisions/2d37d86bc5c1?raw)
