Content

Content operations and usage information

Get usage information

get

Returns current usage statistics and remaining credits

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Responses
chevron-right
200

Successful response

application/json
get
/content/Usage

Get all podcasts

get

Returns all podcasts created by the current client, optionally filtered by status. Supports optional pagination.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Query parameters
statusstring ยท enumOptional

Filter podcasts by status (all=all podcasts, queued=status=0 and no error, failed=has errorOn, succeeded=status=100, processed=has processingOn)

Default: allPossible values:
pageinteger ยท min: 1Optional

Page number for pagination (starts at 1). If not provided, returns all results.

Example: 1
limitinteger ยท min: 1 ยท max: 100Optional

Number of items per page (max 100, default 50 if page is specified)

Example: 20
Responses
chevron-right
200

Successful response

application/json
Responseone of
or
get
/content/Podcasts

Get all transcripts

get

Returns all transcripts created by the current client, optionally filtered by status. Supports optional pagination.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Query parameters
statusstring ยท enumOptional

Filter transcripts by status (all=all transcripts, queued=status=0 and no error, failed=has errorOn, succeeded=status=100, processed=has processingOn)

Default: allPossible values:
pageinteger ยท min: 1Optional

Page number for pagination (starts at 1). If not provided, returns all results.

Example: 1
limitinteger ยท min: 1 ยท max: 100Optional

Number of items per page (max 100, default 50 if page is specified)

Example: 20
Responses
chevron-right
200

Successful response

application/json
Responseone of
or
get
/content/Transcripts

Create new content

post

Generate new content based on resources, topic, feed selections, researches, YouTube channels, or linked podcast episodes. Use video metadata fields (titlePrompt, descriptionPrompt, thumbnailImagePrompt, introImagePrompt, voices, publishTargets) when outputType is video. Set isScheduled or templateMode to create recurring templates instead of immediate processing.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
topicstringOptional

Topic for content generation (alternative to resources, feedSelections, or researches)

researchesstring[]Optional

Array of research IDs to include as text resources (max 10)

projectsstring[]Optional

Array of project IDs to use as context for generation (max 10)

youtubeChannelsstring[]Optional

YouTube channel IDs already connected to the account to use as sources

podcastEpisodeIdsstring[]Optional

Completed audio request IDs to reuse as podcast episode sources (max 10)

textstringOptional

Instructions or query for content generation

outputTypestring ยท enumRequired

Type of output content to generate

Possible values:
durationstring ยท enumOptional

Duration preference for content generation

Possible values:
formatstring ยท enumOptional

Video format (defaults to explainer). Ignored for non-video outputs.

Possible values:
stylestringOptional

Style of the generated content. For audio/text, use one of: deep dive, brief, critique, debate. For video, any custom style text is accepted (defaults to classic when omitted).

introMusicUrlstringOptional

HTTPS URL to optional intro music (.mp3, .wav, or .m4a) mixed at lower volume at the start of the podcast

includeCitationsbooleanOptional

Whether to include citations (PRO only)

infographicOrientationstring ยท enumOptional

Infographic orientation (defaults to landscape)

Possible values:
infographicDetailstring ยท enumOptional

Infographic detail level (defaults to standard)

Possible values:
slideDeckFormatstring ยท enumOptional

Slide deck format (defaults to detailed). Length is controlled via the standard duration field (short, default, long). Slide deck prompt uses the main text field.

Possible values:
quizDifficultystring ยท enumOptional

Difficulty level for quiz outputs (defaults to medium). Quiz prompt uses the main text field.

Possible values:
callbackDatastringOptional

Optional data to include in webhooks

relatedIdstringOptional

Existing request ID to relate this request to (must belong to the same token)

notebookIdstringOptional

Notebook ID for enterprise clients

languagestringOptional

Language for content generation

scheduledOnstring ยท date-timeOptional

Schedule the content generation for a specific time

podcastIdstringOptional

Podcast show ID to associate this content with

episodeTitlestringOptional

Optional episode title when attaching to a podcast show

titlestringOptional

Custom title to use for generated video outputs. When provided, overrides the automatically generated title.

titlePromptstringOptional

Prompt to guide the generated video title

descriptionPromptstringOptional

Prompt to guide the generated video description

thumbnailImagePromptstringOptional

Prompt to control the generated thumbnail image for video outputs

introImagePromptstringOptional

Prompt to control the intro image for video outputs

voice1integerOptional

Primary custom voice ID (required when providing voice2 for video requests)

voice2integerOptional

Secondary custom voice ID (requires voice1)

isScheduledbooleanOptional

Create a recurring schedule instead of a single request

dailyCountinteger ยท min: 1 ยท max: 24Optional

Number of times per day to run when isScheduled is true

scheduleEndDatestring ยท date-timeOptional

Optional end date for recurring schedules (requires isScheduled true)

Responses
chevron-right
200

Request accepted

application/json
Responseone of
or
or
post
/content/Create

Repurpose a completed request

post

Creates a new request using the resources and parameters of a completed request, allowing a new output type and optional updated text.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
requestIdstringRequired

Identifier of the completed request to repurpose

outputTypestring ยท enumRequired

Output type for the new request

Possible values:
textstringOptional

Optional text instructions that replace the original TEXT parameter

callbackDatastringOptional

Optional callback data to associate with the new request

durationstring ยท enumOptional

Duration preference (slide decks use this for length)

Possible values:
infographicOrientationstring ยท enumOptional

Orientation when repurposing to an infographic

Possible values:
infographicDetailstring ยท enumOptional

Detail level when repurposing to an infographic

Possible values:
slideDeckFormatstring ยท enumOptional

Format when repurposing to a slide deck

Possible values:
quizDifficultystring ยท enumOptional

Difficulty level when repurposing to a quiz

Possible values:
titlestringOptional

Override video title when repurposing to video

titlePromptstringOptional

Prompt to guide the generated title when repurposing to video

descriptionPromptstringOptional

Prompt to guide the generated description when repurposing to video

formatstring ยท enumOptional

Video format (defaults to explainer). Only applies when outputType is video.

Possible values:
stylestringOptional

Custom style text for video outputs

thumbnailImagePromptstringOptional

Prompt to control the generated thumbnail image for video outputs

introImagePromptstringOptional

Prompt to control the generated intro image for video outputs

Responses
chevron-right
200

Request accepted

application/json
post
/content/Repurpose

Check request status

get

Get the status of a content generation request

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
idstringRequired

Request ID

Responses
chevron-right
200

Successful response

application/json
Responseone of
or
get
/content/Status/{id}

List content requests

get

Get a list of content generation requests. Supports optional pagination.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Query parameters
pageinteger ยท min: 1Optional

Page number for pagination (starts at 1). If not provided, returns all results.

Example: 1
limitinteger ยท min: 1 ยท max: 100Optional

Number of items per page (max 100, default 50 if page is specified)

Example: 20
Responses
chevron-right
200

Successful response

application/json
Responseone of
or
get
/content/List

Get available voices

get

List all available voices for audio generation

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Responses
chevron-right
200

Successful response

application/json
get
/content/GetVoices

Get current client info

get

Returns current client ID

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Responses
chevron-right
200

Successful response

application/json
get
/content/Me

Register webhook

post

Register a webhook URL for notifications

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
urlstring ยท uriRequired

Webhook URL to register

Responses
chevron-right
200

Webhook registered

application/json
post
/content/Webhook

Remove webhook

post

Remove a registered webhook

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
idstringRequired

ID of the webhook to remove

Responses
chevron-right
200

Webhook removed

application/json
post
/content/RemoveWebhook

Get webhooks

get

List all registered webhooks

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Responses
chevron-right
200

Successful response

application/json
get
/content/Webhooks

Modify podcast

post

Modify an existing podcast with new voices and background music

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
audioUrlstringRequired

URL to the audio file to modify

voice1stringRequired

ID of first voice to use

voice2stringRequired

ID of second voice to use

instructionsstringOptional

Additional instructions

backgroundMusicUrlstringOptional

Optional URL to background music file

callbackDatastringOptional

Optional data for webhook callbacks

Responses
chevron-right
200

Request accepted

application/json
post
/content/ModifyPodcast

Separate speakers in audio

post

Separate speakers in an audio file

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
audioUrlstringRequired

URL to the audio file

callbackDatastringOptional

Optional data for webhook callbacks

Responses
chevron-right
200

Request accepted

application/json
post
/content/SeparateSpeakersAudio

Clone voice

post

Clone a voice from an audio file (PRO only). Accepts either a file upload or a URL.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
audioFilestring ยท binaryOptional

MP3 audio file to upload (max 10MB). Cannot be used with audioUrl.

namestringRequired

Name for the cloned voice

Responses
chevron-right
200

Request accepted

application/json
post
/content/CloneVoice

Get transcript

post

Generate transcript from an audio file or episode. Accepts file upload, URL, or episode ID (only one at a time).

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
audioFilestring ยท binaryOptional

MP3 or WAV audio file to upload (max 50MB). Cannot be used with audioUrl or episodeId.

callbackDatastringOptional

Optional data for webhook callbacks

Responses
chevron-right
200

Request accepted

application/json
post
/content/GetTranscript

Get transcript by episode ID

get

Retrieve an existing transcript for a specific episode

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
episodeIdstringRequired

The ID of the episode to get the transcript for

Responses
chevron-right
200

Transcript retrieved successfully

application/json
get
/content/GetTranscript/{episodeId}

Create podcast from custom script

post

Create a podcast using a custom script

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
scriptstringRequired

Script with SPEAKER_00/SPEAKER_01 prefixes

voice1stringRequired

ID of first voice to use (SPEAKER_00)

voice2stringRequired

ID of second voice to use (SPEAKER_01)

callbackDatastringOptional

Optional data for webhook callbacks

Responses
chevron-right
200

Request accepted

application/json
post
/content/CreatePodcastCustomScript

Create podcast with custom voices

post

Create a podcast with specified voices based on resources, topic, or feeds. Either 'resources', 'topic', or 'feeds' must be provided.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
topicstringOptional

Topic for content generation (alternative to resources or feeds)

feedsinteger[]Optional

Array of feed IDs for content generation (alternative to resources or topic, max 10)

projectsstring[]Optional

Array of project IDs to use as context for generation (max 10)

textstringOptional

Instructions or query for content generation

voice1stringRequired

ID of first voice to use

voice2stringRequired

ID of second voice to use

durationstring ยท enumOptional

Duration preference for content generation

Possible values:
stylestring ยท enumOptional

Style of podcast content (defaults to deep dive)

Possible values:
languagestringOptional

Optional language for the generated podcast (leave empty to use the default)

notebookIdstringOptional

Notebook ID for enterprise clients

callbackDatastringOptional

Optional data for webhook callbacks

Responses
chevron-right
200

Request accepted

application/json
post
/content/CreatePodcastCustomVoices

Remove cloned voice

post

Remove a cloned voice owned by the current user

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
idintegerRequired

ID of the voice to remove

Responses
chevron-right
200

Voice removed successfully

application/json
post
/content/RemoveVoice

Delete request

post

Mark a content request as deleted

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
idstringRequired

ID of the request to delete

Responses
chevron-right
200

Request deleted successfully

application/json
post
/content/DeleteRequest

Schedule multiple podcasts

post

Create multiple podcasts at once, scheduled at intervals from a start time. Supports two modes - URLs mode (one podcast per episode, with each episode containing multiple URLs) or cached sources mode (feedSelections and/or youtubeChannels). Either 'urls' or (feedSelections/youtubeChannels + numberOfEpisodes) must be provided, but not both.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Body
anyOptional
or
anyOptional
or
anyOptional
Responses
chevron-right
200

Podcasts scheduled successfully

application/json
post
/content/Schedule

Last updated