Install Jentic One Beta
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the ContentGroove API, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.
Two steps, two machines. Install the instance in a safe environment, then register your agent from wherever it runs.
Step 1: Jentic One Host machine
# On the machine that will host your Jentic One instance:
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Fcontentgroove.com%2Fcontentgroove" | shStep 2: Agent machine
# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Fcontentgroove.com%2Fcontentgroove" | sh
jentic register # connects your agent to your Jentic One instanceJentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.
What an agent can do with ContentGroove API.
Ingest video or audio from a source URL or via direct upload up to 5 GB
Trigger automatic transcription, topic extraction, and keyword detection on uploaded media
Read suggested AI-generated video clips along with manually created clips
Define custom video clip ranges over an existing media
Subscribe to webhooks that fire when a media finishes processing
GET STARTED
Track media processing state to know when transcripts and clips are ready
Patterns agents use ContentGroove API for, with concrete tasks.
★ Podcast and Webinar Repurposing
Marketing teams upload long-form podcast episodes or webinar recordings and use ContentGroove's AI to surface suggested short clips, transcripts, and topic tags. The clips and transcript can be pulled back into a CMS or social-media scheduler so editors review rather than create from scratch. Typical processing time scales with media duration, and webhook callbacks remove the need to poll.
POST a media to /api/v1/medias with source_url pointing to a 60-minute podcast MP3, register a webhook on /api/v1/webhook_subscriptions, and on callback retrieve the suggested clips list
Searchable Video Library
Education and training platforms ingest course videos, attach transcripts, and expose keywords and topics so students can search inside videos rather than scrubbing manually. ContentGroove returns transcript text, keyword lists, and topic groupings tied to the media id, which a downstream search index can pick up. Webhook callbacks make ingestion event-driven instead of poll-driven.
Upload a course video via direct upload, wait for the processing-complete webhook, and store the returned transcript, topics, and keywords in a search index
Direct Upload Workflow for Large Files
When source media is not reachable by URL, applications use the direct upload flow: GET /api/v1/direct_uploads to obtain a signed upload URL and upload id, PUT the file to the signed URL, then POST /api/v1/medias with the upload id. This keeps large files (up to 5 GB) off the application server and avoids streaming through middleware. Direct uploads are the recommended path for user-generated content from a browser or mobile client.
Call GET /api/v1/direct_uploads, PUT a 2 GB MP4 to the returned URL, then POST /api/v1/medias with the upload id and a name
AI Agent Video Clip Generator via Jentic
An AI agent embedded in a content production tool uses Jentic to upload a recording, wait for processing, and return a list of clip suggestions ranked by topic relevance. Jentic stores the ContentGroove API key in your Jentic One instance and signs each call with a scoped token. Webhook delivery URLs are still owned by the application; Jentic only proxies the API calls the agent makes.
Search Jentic for 'create a contentgroove media', execute with source_url, poll /api/v1/medias/{id} until state is processed, and return the suggested clips
15 endpoints — jentic publishes the only available openapi specification for contentgroove api, keeping it validated and agent-ready.
METHOD
PATH
DESCRIPTION
/api/v1/medias
Create a new media from a source URL or upload id
/api/v1/medias
List medias in the account
/api/v1/medias/{id}
Read media state, transcript, topics, and keywords
/api/v1/clips
List clips across medias
/api/v1/clips
Create a custom clip from a media
/api/v1/direct_uploads
Obtain a signed upload URL and upload id
/api/v1/webhook_subscriptions
Register a webhook for media-processing events
/api/v1/webhook_subscriptions
List webhook subscriptions on the account
/api/v1/medias
Create a new media from a source URL or upload id
/api/v1/medias
List medias in the account
/api/v1/medias/{id}
Read media state, transcript, topics, and keywords
/api/v1/clips
List clips across medias
/api/v1/clips
Create a custom clip from a media
/api/v1/direct_uploads
Obtain a signed upload URL and upload id
/api/v1/webhook_subscriptions
Register a webhook for media-processing events
/api/v1/webhook_subscriptions
List webhook subscriptions on the account
What agents get from Jentic-routed access to this vendor.
Setup
Wiring the ContentGroove API by hand means passing your api_key in the Authorization header and coordinating the media, clip, direct-upload, and webhook operations yourself. Through Jentic you install once, import the ContentGroove API from the API Directory, store the api_key once, and your agent calls it.
Permission scoping
ContentGroove puts the media id in the URL path (/api/v1/medias/{id}), so a rule can pin your agent to reading one media item and its clips and nothing else. You choose the operations it may call, so state-changing ones like creating media or clips are not included unless you add them.
Credential isolation
Your ContentGroove api_key is stored once, encrypted, by your own Jentic One instance and injected into the Authorization header at execution time. It never enters the agent's prompt, logs, or context.
Intent-based discovery
Agents search Jentic by intent such as 'transcribe an uploaded video' or 'list clip suggestions', and Jentic returns the matching ContentGroove operation with its input schema so the agent calls the right endpoint without browsing the reference docs.
Alternatives and complements available in the Jentic catalogue.
Specific to using ContentGroove API through Jentic.
Why is there no official OpenAPI spec for ContentGroove API?
ContentGroove publishes a Swagger reference at developers.contentgroove.com but does not host a stable, agent-consumable OpenAPI 3 file. Jentic generates and maintains this spec so that AI agents and developers can call ContentGroove API via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.
What authentication does the ContentGroove API use?
Server-side API keys are passed in the Authorization Bearer header, the X-API-KEY header, or the api_key query parameter. Through Jentic the API key is held in your Jentic One instance and the agent never receives the raw key - only short-lived scoped credentials applied at call time.
Can I generate AI clip suggestions with the ContentGroove API?
Yes. POST /api/v1/medias creates a new media from either a source_url or a prior direct upload, and once processing finishes GET /api/v1/medias/{id} returns the transcript, topics, keywords, and AI-suggested clips. Custom clips can be added through POST /api/v1/clips.
What are the rate limits for the ContentGroove API?
ContentGroove returns 429 Too Many Requests when per-account rate limits are exceeded and 402 Payment Required when an account exceeds its plan quota; current usage is visible at app.contentgroove.com/quota_usage. Through Jentic, retries with exponential backoff are handled at the SDK level so agents do not need to implement throttling logic themselves.
How do I upload a large video with the ContentGroove API through Jentic?
Run `jentic.search('upload a contentgroove media')`, load the operation, and the workflow returned chains GET /api/v1/direct_uploads, a PUT to the signed URL, then POST /api/v1/medias with the upload id. File uploads are limited to 5 GB per file.
Does the ContentGroove API support webhooks?
Yes. POST /api/v1/webhook_subscriptions registers a callback URL that receives a JSON POST when a media finishes processing. The application must respond with HTTP 200; non-200 responses trigger retries with exponential backoff and webhooks must be treated as at-least-once.
Can I limit what my agent is allowed to do with the ContentGroove API?
Yes. Jentic One is self-hosted, so your own rules decide which ContentGroove operations and credentials the agent may use. Because ContentGroove puts the media id in the URL path (/api/v1/medias/{id}), you can pin the agent to reading a single media item and its clips through GET /api/v1/medias/{id} and GET /api/v1/clips and nothing else. State-changing operations such as POST /api/v1/medias or POST /api/v1/clips stay out of reach unless you explicitly add them to the allowed set.
Know of an official OpenAPI document? Contribute it →
For Agents
Upload video or audio, run ContentGroove's AI to transcribe and extract suggested clips, and receive webhook callbacks when processing completes.
Use for: I need to upload a podcast episode for AI clip suggestion, I want to fetch the transcript of a processed media, Get all suggested clips ContentGroove generated from a video, Set up a webhook that fires when a media finishes processing
Not supported: Does not handle live video streaming, video hosting, or video editing UI - use for AI transcription and clip suggestion on uploaded media only.
Jentic publishes the only available OpenAPI specification for ContentGroove API, keeping it validated and agent-ready. ContentGroove ingests video and audio media, runs AI processing for transcription, topic and keyword extraction, and suggested clips, and exposes the results through 15 endpoints across media, clips, direct uploads, and webhook subscriptions. Authentication uses an API key passed as Authorization Bearer, X-API-KEY header, or api_key query parameter, and webhook callbacks notify external systems when a media has finished processing.