Skip to content
Catalog

cn8/video-chat

Send one video and get an assistant that knows it: what is said, what is on

Learn more about Video Chat
Chat & RAGsyncInstant previewchatvideorag

Input

string

The chatbot_key of the video chat.

string

The viewer's question.

Instant sample preview — no cost, no account. Sign up free to run with your own input.

Result

Completed Instant preview
Json
{
  "status": "success",
  "data": {
    "conversation_key": "cv_def456",
    "response": "You can request a full refund within 30 days of purchase — head to Settings → Billing → Request refund, and it lands back on your card in 3-5 business days. After 30 days we can still offer account credit.",
    "enhanced_analysis": {
      "source_count": 3,
      "content_types": [
        "web_pages"
      ],
      "sources": [
        {
          "title": "Refund policy",
          "url": "https://docs.example.com/billing/refunds"
        },
        {
          "title": "Billing FAQ",
          "url": "https://docs.example.com/billing/faq"
        }
      ]
    }
  }
}

Sample output — generated with “cb_abc123”. Sign in to run your own input.

This request costs 0.002 credits per token.

Overview

Send one video and get an assistant that knows it: what is said, what is on screen, and when. Viewers ask questions in plain language and every answer comes back with timestamped citations, so your player can jump straight to the moment being talked about. One call builds everything — analysis, knowledge base and assistant — and you chat through the same endpoint as any other CN8 chatbot, from your backend or key-less from your own web page.

Key capabilities

One call from video to assistant

POST a video URL. The video is transcribed, its scenes are described, a knowledge base is indexed and an assistant is created — no collections or data sources to manage. Poll one status field until it says ready.

Answers that point into the video

Every answer carries citations with start_ms, end_ms and a ready-to-use seek_ms. Citations come from the retrieved passages, not from the model's wording, so they always point at a real part of the video.

Hears and sees

The assistant knows the speech and the visuals: on-screen text, slides, objects and actions are captioned per scene. Silent videos and screen recordings work too.

Embed without exposing a key

List the domains of your site in public_domains and the chat endpoint accepts key-less requests from pages on those domains — built for player-side widgets.

Opening questions included

Two lists come with every video chat, in the video's language: starter_questions that fit any video (summarize, key takeaways, topics and when) and suggested_questions written from this video's content. Show them as chips over an empty chat.

When to use it

E-learning and training

Learners ask the lesson instead of scrubbing through it and land on the exact explanation.

Product demos and webinars

Let prospects ask a recorded demo about pricing, features or setup and jump to that part.

Support and how-to libraries

Put an assistant next to every tutorial video: "where do I set this up?" answers with the step and its timestamp.

Interactive video players

Drive chapter jumps, highlights and overlays from citations in your own player.

Input & output

input

Public URL of a video file, a name, optional language and assistant instructions

JSON body

output

A video chat with a chatbot_key; chat answers with timestamped citations (REST or SSE)

JSONServer-Sent Events

Guides & tips

How it works

  • Create: the video is downloaded, speech is transcribed and every scene is described (on-screen text, objects, actions).
  • Index: scenes and transcript are stored as time-bound passages in a knowledge base private to your account.
  • Chat: each question retrieves the most relevant passages; the answer is written from them and the passages' time ranges come back as citations.

Wiring citations to your player

  • On a citation click set player.currentTime = seek_ms / 1000 and play.
  • Show text as the clickable line ("what happens there") with the time next to it; label is the full range.
  • Use start_msend_ms to highlight the range on your timeline.
  • When streaming, render the text as it arrives and add the chips when the citations event comes in.

Embedding on your site

  • Set public_domains to the domains that host your player page.
  • From those pages call POST /v1/proxy/core-chat without an API key; the request's Origin/Referer is checked against the list.
  • Never ship your API key to the browser — use public_domains or proxy through your backend.

Getting good answers

  • Set language when you know it; auto-detect can stumble on videos that open with music or silence.
  • Use system_message to set tone, scope and answer language ("Answer in Turkish, keep it under three sentences").
  • Replace suggested_questions with your own if you want to steer what viewers ask first; starter_questions stay generic and follow the video's language.

Specs

Latency
Build: roughly the length of the video. Chat: first tokens in 1–3 seconds when streaming.
Async
true
Rate Limit
Per API key
Max Input
One video per video chat, reachable by public URL (MP4, MOV, WebM, MKV).

Schema

Request body

chatbot_idrequiredstring

The chatbot_key of the video chat.

messagerequiredstring

The viewer's question.

conversation_keystring

Returned by the first answer; send it back to continue the same conversation.

streamboolean · default: false

true streams the answer as Server-Sent Events; citations arrive as a separate event after the text.

Response

data.responsestring

The answer text.

data.citationsarray

The parts of the video the answer is based on, in playback order (up to 4). Only passages that support the answer are cited. Absent when nothing time-bound was used.

start_msinteger

Start of the cited part, in milliseconds.

end_msinteger

End of the cited part, in milliseconds.

seek_msinteger

Where to move the player: the moment mentioned in the answer when there is one, otherwise start_ms.

labelstring

Human-readable range such as "12:32–13:01".

textstring

One line saying what happens in that part — what is on screen, or the quoted speech. Made to be shown as the clickable citation.

kindstring

scene (visuals + speech), transcript (speech) or section (a chapter of the video).

previewstring

Short excerpt of the cited passage.

video_urlstring

Playback URL of the video.

Pricing

You pay for analyzing the video once and for the tokens of each conversation. Setting up and managing video chats is free.

ServiceUnitPrice
Video analysis (on create)second of video0.2 credits/second
Chat1,000 tokens2 credits
Details, list, update, deleterequestFree

A 10-minute video costs about 120 credits to set up, once.

The analysis cost is reserved when you create the video chat and settled to the real video length when it finishes; failed analyses are released in full.

Key-less chats from your public_domains are billed to the account that owns the video chat.

FAQ

Related models