Your recordings, transcripts, and AI summaries — over HTTP.
Sync them to a warehouse. Feed them to a RAG pipeline. Hand them to an agent. They're your videos. Now they fit in a script.
curl https://api.komododecks.com/api/public/v2/recordings?limit=5 \
-H "Authorization: Bearer $KOMMODO_TOKEN"A REST API for the recordings, transcripts, and AI metadata in your Kommodo workspace.
The Kommodo API is built for teams that capture video at scale — sales calls, customer onboarding sessions, internal training, recorded meetings, screen-shared product demos — and want that footage to live somewhere other than the dashboard. List endpoints return paginated recordings filtered by date, owner, folder, tag, or whether a published Page exists. Detail endpoints return the full AI envelope: summary, chapters with timestamps, action items, tags, suggested title, and detected language.
A separate transcript endpoint streams raw WebVTT or returns parsed JSON cues. PATCH and POST endpoints let you rename recordings, retag them, move them between folders, or publish a recording as a public Page — all without opening the dashboard. Authentication is a single JWT bearer token; pagination is opaque cursor-based; rate limits surface in headers.
Common builds: nightly transcript sync into a data warehouse, video knowledge bases backed by AI summaries, RAG pipelines that cite specific recording timestamps, agent workflows that curate recordings on a user's behalf, and automation that converts finished recordings into published Pages on a schedule.
A token in 30 seconds
Read scope by default. Toggle write to update titles or publish pages. Premium and Enterprise plans.
Open Account → API
Generate a token from your account settings. Read scope by default; toggle Write for PATCH and page creation.
Export it as $KOMMODO_TOKEN
Treat it like a password — never commit it. Tokens are scoped to your user; revoke and reissue anytime.
Send it as a Bearer header
Authorization: Bearer <token>. That’s the whole auth model. No OAuth dance, no refresh.
Common patterns
Each snippet uses live v2 endpoints. Replace $KOMMODO_TOKEN and run.
Nightly transcript sync
Watermark + cursor pagination. Pull every recording updated since your last run and ingest its VTT or JSON transcript into your data warehouse.
# Pull every recording updated since last run, then fetch transcripts.
since = read_watermark() # ISO timestamp from your last sync
cursor = None
while True:
r = session.get(BASE + "/recordings", params={
"since": since, "cursor": cursor, "limit": 100,
}).json()
for rec in r["recordings"]:
t = session.get(BASE + f"/recordings/{rec['id']}/transcript",
params={"format": "json"}).json()
ingest(rec, t["cues"])
cursor = r["next_cursor"]
if not cursor: break
write_watermark(now_utc_iso())Build a video knowledge base
Filter on tag, folder, or has_page; hydrate with AI summary, chapters, and action items. Feed an enterprise search index or RAG pipeline.
# 1. List recordings inside a specific folder
curl "$BASE/recordings?folder_id=<folder-id>&has_page=true" \
-H "Authorization: Bearer $KOMMODO_TOKEN"
# 2. Pull the AI summary + chapters for each
curl "$BASE/recordings/<id>" \
-H "Authorization: Bearer $KOMMODO_TOKEN"
# returns: ai.summary, ai.chapters, ai.action_items, ai.tagsBulk rename & curate
PATCH titles, descriptions, and tags from a script or agent. Owner-or-folder-fullAccess enforced server-side.
# Rename a recording (write scope required)
curl -X PATCH "$BASE/recordings/<id>" \
-H "Authorization: Bearer $KOMMODO_TOKEN" \
-H "Content-Type: application/json" \
-d '{"title": "Q2 onboarding — final"}'Auto-publish a Page from a recording
Turn a finished recording into a public Page with one POST. Drop publish:false for a draft you can edit in the dashboard.
# Convert a recording into a published Page (write scope required)
curl -X POST "$BASE/recordings/<id>/pages" \
-H "Authorization: Bearer $KOMMODO_TOKEN" \
-H "Content-Type: application/json" \
-d '{"publish": true}'Or just hand it to your agent.
Install the Skill once, paste your token, and your agent can list, search, transcribe, rename, and publish. No client to maintain. No schemas to memorize.
Open source · MIT · Works in any agent that supports skills
get_recording, get_transcript,
update_recording, create_page,
list_folders, list_team_members
"Onboarding — week 1"
Updating titles… ✓
Illustrative. Actual flow depends on your agent.
Limits and SLAs
Every response carries an X-RateLimit-Remaining header so you can pace requests without polling.
Common questions from developers
Open Account → API in your dashboard and generate a token. Read scope is enabled by default; toggle Write scope to update titles or publish pages. API access is included with Premium and Enterprise plans.
Read scope can list recordings, fetch transcripts, and read AI metadata. Write scope can also PATCH titles, descriptions, tags, and folders, and POST a recording to create a published Page. Tokens default to read scope; you must opt in to write scope at token creation.
Each token is limited to 1000 requests per hour and 100 concurrent in-flight requests. Every response carries an X-RateLimit-Remaining header so you can pace requests without polling. Exceed the limit and you receive a 429 with X-RateLimit-Reset indicating when to retry.
List endpoints return an opaque next_cursor. Pass it back as the cursor query parameter on the next call until next_cursor is null. Combine with since=<ISO timestamp> for incremental sync — keep a watermark of the last successful run and pass it on the next poll.
The transcript endpoint returns either WebVTT (format=vtt) or parsed JSON cues (format=json) with start_seconds, end_seconds, and text per cue. Files are capped at 5 MB; larger transcripts return a 413. The endpoint proxies the underlying file so you do not need to manage presigned URL TTLs.
List responses include ai.tags, ai.suggested_title, ai.detected_language, and ai.status. Detail responses (GET /recordings/{id}) additionally include ai.summary, ai.chapters (with timestamps), and ai.action_items. AI processing is asynchronous; check ai.status (ready, processing, pending, failed) before consuming.
Yes. We publish an open-source Skill at github.com/touchapp/kommodo-skill that wraps the v2 API as agent tools (find_recordings, get_transcript, update_recording, create_page, and more). Install once, paste your token, and your agent can curate recordings on your behalf.
API access is part of the Premium and Enterprise plans. Free and Starter accounts can preview the docs but cannot generate tokens. See pricing for current tiers.
Email support@kommodo.ai with the request URL, response status, and timestamp in UTC. We correlate from server logs and respond within one business day.
The complete request and response shapes live in the quickstart on GitHub, which includes a working Python sample for nightly transcript sync, the full endpoint table, and error codes.
Where this fits in
The API is one surface for the same recordings you see in the dashboard. Here's the rest.
Kommodo AI Assistant
The product the API exposes — meeting transcripts, summaries, and chat over your recordings.
Learn moreVideo to SOP Generator
Turn a screen recording into a step-by-step procedure. Useful for understanding what AI metadata looks like.
Learn moreVideo Knowledge Base
See the dashboard surface that the API powers — folders, search, AI tagging.
Learn moreKommodo Skill (open source)
The agent integration that wraps the v2 API. MIT-licensed reference implementation.
Learn more