---
title: "List Nail Video Templates"
method: GET
path: "/api/nail-video/templates"
---

# List Nail Video Templates

`GET /api/nail-video/templates`

## Request

- Base URL: `https://api.tintin-x.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.tintin-x.com/api/nail-video/templates`
- Auth: HTTP bearer

Return the active nail-video template catalog (admin-managed).

`id` is the template slug (the value sent back as `template_id`). Each
entry carries a presigned `video_url` (and `preview_url` when a poster is
set) so the picker can preview the clip — the raw `video_s3_key` is never
surfaced.

## Response `200`

Successful Response

- NailVideoTemplateListResponse
  - `items` NailVideoTemplateItem[], required
    - `id` string, required
    - `label` string, required
    - `video_url` string, required
    - `preview_url` string, nullable
    - `description` string, nullable

---

[API](https://skmtc.dev/tintin-x/apis/tintin-api.md) · [All operations](https://skmtc.dev/tintin-x/apis/tintin-api/llms.txt) · [OpenAPI document](https://skmtc.dev/tintin-x/apis/tintin-api/revisions/8839a8d0a66c?raw)
