Skip to content
cn8 now works inside Claude and ChatGPT.Connect
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
  1. 1Video
  2. 2Analyze
  3. 3Chat

Try it

Video

Analyzed once. Chatting afterwards costs 2 credits per 1K tokens; setup is free. We keep your video for 7 days so it can play next to the chat — the assistant stays after that.

What you get

An assistant that has heard and watched your video. Every answer comes with the moments it is based on — click one and the player jumps there.

How do I invite my team?
Open Settings → Members and press Invite. You can paste several e-mail addresses at once.
The Members tab of the Settings page, Invite dialog open12:40
“You can paste a whole list of addresses here.”14:10
  • Knows speech and what is on screen
  • Suggested opening questions, in the video's language
  • Same chat API for your own player or widget

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

Every video chat can be chatted with key-less from any web page — built for player-side widgets. Restrict it to your own domains with public_domains when you need to.

Opening questions included

Two lists come with every video chat, in the video's language: starter_questions that fit any video (summarize, key takeaways) 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_ms–end_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

  • Key-less chat works from any site by default — no setup. To lock it to your pages, set public_domains (e.g. ["academy.example.com"]; subdomains included).
  • 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 — call key-less (optionally domain-restricted) or proxy through your backend.
  • Optional: send playback_position_ms (the player's current time in milliseconds) with each core-chat question. Viewers can then ask about the moment they are watching ("what does this mean?", "what did he just say?", "what is written on the board?") without describing it.
  • Optional: when a viewer taps a suggested question, send origin: "suggested" in the core-chat body. Statistics already recognise suggested questions by their text (light edits included); the flag only makes heavily rewritten ones count too.

Usage numbers

  • core-conversations/{chatbot_key}?from=&to= pages the threads of a period; pagination.total is the count for the same filter.
  • core-conversation-stats/{chatbot_key}?from=&to= gives the screen numbers: conversations, questions, the suggested questions asked most, languages, most cited chapters. Both take epoch ms or ISO 8601 and default to all time.

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.05 credits/second
Chat1,000 tokens0.3 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 any site, or only your public_domains if you set them) are billed to the account that owns the video chat.

FAQ

Related models