---
title: "Create an agentic video"
method: POST
path: "/agentic-videos"
tags: ["Agentic Videos"]
---

# Create an agentic video

`POST /agentic-videos`

Create a new agentic video from a source video. Returns immediately with the
`video_id`; processing and agent creation happen asynchronously, so poll
`GET /agentic-videos/{video_id}` and watch `status` until it reaches `done`.

## Request body

- CreateAgenticVideoRequestDto — Payload to create a new agentic video.
  - `source_url` string, required — URL of the source video to turn into an agentic video. Accepts either: - a direct file URL (`.mp4`, `.mov`, `.mpeg`) reachable over `https://`, or - a YouTube video URL (watch, shorts, `youtu.be`, embed, or live links). Uploaded/direct-file videos may be up to 20 minutes long
  - `name` string — Display name for the agentic video. If omitted, a name is derived from the source (the YouTube title or the file name).
  - `presenter_id` string, required — ID of the presenter that fronts the agent in the chat experience. Must be an expressive avatar.
  - `background` PresenterBackground
    - `color` string — Background color of the Avatar.
    - `source_url` string — Image URL used as the Avatar background.
  - `greetings` AgenticVideoGreetings — Greetings spoken by the agent at specific moments in the agentic-video flow.
    - `on_click` string — Greeting when the viewer first clicks ASK.
    - `on_video_end` string — Greeting when the video ends and the agent auto-appears.
  - `bubble_text` string — Text shown in the call-to-action bubble that invites viewers to start chatting.
  - `knowledge` string — Optional knowledge base text the agent uses to answer viewer questions. Applies to YouTube sources; for uploaded videos the knowledge is derived automatically from the video's transcript.
  - `show_agent_on_video_end` boolean — Whether the agent automatically appears when the video finishes playing.

## Response `201`

Agentic video created

- CreateAgenticVideoResponseDto — Response returned when an agentic video is created.
  - `video_id` string, required — Unique identifier of the created agentic video. Use it with the other `/agentic-videos/{video_id}` endpoints.
  - `status` 'created' | 'started' | 'ready' | 'done' | 'error', required — Processing status of an agentic video. - `created` — the video was accepted and is queued for processing. - `started` — the video is being processed. - `ready` — the agent has been created and is initializing. - `done` — the agent is active and the agentic video is fully available to viewers. - `error` — processing failed; see the `error` field for details.

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `500` — Internal Server Error

---

[API](https://skmtc.net/d-id/apis/realtime-endpoints.md) · [All operations](https://skmtc.net/d-id/apis/realtime-endpoints/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/d-id/realtime-endpoints/versions/2f2425e1b6b6/schema)
