---
title: "Create video for CRM"
method: POST
path: "/api/videos/crm/create"
tags: ["videos"]
---

# Create video for CRM

`POST /api/videos/crm/create`

Admin/coordinator endpoint to create a new video and enqueue patient notifications in background.

## Request body

- CRMVideoCreateRequest — Request model for CRM video creation.
  - `youtube_url` string, nullable — YouTube URL
  - `title` string, required — Video title
  - `description` string, required — Video description
  - `type` string, nullable — Video type/category
  - `video_id` string, nullable — Video identifier

## Response `201`

Successful Response

- CRMVideoCreateResponse — Response model for CRM video creation with async notification job metadata.
  - `data` VideoResponse, required — Video response model.
    - `id` integer, required — Video ID
    - `created_at` string, required — Creation timestamp
    - `youtube_url` string, nullable — YouTube URL
    - `title` string, required — Video title
    - `description` string, required — Video description
    - `type` string, nullable — Video type/category
    - `video_id` string, nullable — Video identifier
    - `thumbnail` string, nullable — Base64 encoded video thumbnail
    - `badge_name` string, nullable — Badge name to display for this video in app/website
    - `is_locked` boolean — Whether the video is visible but not playable
    - `locked_message` string, nullable — Reason shown when the video is locked
    - `cta_url` string, nullable — CTA URL/path shown when the video is locked
    - `cta_label` string, nullable — CTA label shown when the video is locked
  - `notification_job_id` string, nullable — Celery job id for background notification dispatch

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.dev/corabea/apis/corabea-api.md) · [All operations](https://skmtc.dev/corabea/apis/corabea-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/corabea/corabea-api/revisions/d6ed0fec5d4f/schema)
