---
title: "Manage Thumbnail Person"
method: POST
path: "/api/v1/channels/{channel}/thumbnails/board/people"
tags: ["thumbnails"]
---

# Manage Thumbnail Person

`POST /api/v1/channels/{channel}/thumbnails/board/people`

## Request

- Base URL: `https://subscribr.ai`
- URL: `https://subscribr.ai/api/v1/channels/{channel}/thumbnails/board/people`
- Auth: HTTP bearer

Add a previously uploaded photo to a named person, rename a person, or select the default person. Names group photos case-insensitively; each person can have up to four photos. add_person_photo requires name and a team-owned Studio upload URL; rename_person requires name and asset_id; set_default_person requires asset_id. Read GET /thumbnails/board for people and asset IDs. Channel update access is required. Writes are not idempotent; reconcile the board before retrying an ambiguous result.

## Request body

- union
  - object
    - `asset_id` integer
    - `command` 'add_person_photo', required
    - `height` integer, nullable
    - `name` string, required
    - `url` string, uri, required
    - `width` integer, nullable
  - object
    - `asset_id` integer, required
    - `command` 'rename_person', required
    - `height` integer, nullable
    - `name` string, required
    - `url` string, uri
    - `width` integer, nullable
  - object
    - `asset_id` integer, required
    - `command` 'set_default_person', required
    - `height` integer, nullable
    - `name` string
    - `url` string, uri
    - `width` integer, nullable

## Response `200`

Successful response.

- ManageThumbnailPersonResponse
  - `data` object, required
    - `channel_id` integer, required
    - `people` ThumbnailPerson[], required
      - `asset_id` integer, required
      - `is_default` boolean, required
      - `name` string, required
      - `photos` ThumbnailPersonPhoto[], required
        - `cutoutError` string, nullable, required
        - `height` integer, nullable, required
        - `id` integer, required
        - `isDefaultFace` boolean, required
        - `isFace` boolean, required
        - `name` string, nullable, required
        - `status` string, nullable, required
        - `url` string, uri, required
        - `usage` string, nullable, required
        - `usageLabel` string, nullable, required
        - `width` integer, nullable, required
  - `success` unknown, required

## Other responses

- `400`: The request could not be processed.
- `401`: Authentication is required.
- `403`: The token, role, entitlement, or object policy denies this action.
- `404`: The resource was not found or is not visible.
- `422`: One or more request fields are invalid.
- `429`: The request exceeded a rate limit.
- `500`: The service is temporarily unavailable.

---

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