Skip to Content
Enterprise API v1API: Process Episode

API: Process Episode

An asynchronous API that begins processing the given episode information after receiving the request. It supports processing both audio files and YouTube videos. It can be called idempotently - episodes that are being processed or have been successfully processed will not be processed again. Failed episodes will be automatically retried.

Endpoint

POSThttps://podwise.ai/api/ent/v1/episodes/process

Request Body

type RequestBody = { // A unique ID provided by the caller that is guaranteed to be unique on their side uuid: string, episode: { // Downloadable audio file URL or YouTube video URL // - Audio file: must be directly accessible via public internet, supports formats: mp3, mp4, mav, m4a and other common audio formats // - YouTube video: a standard YouTube video URL (e.g. https://www.youtube.com/watch?v=xxxx) // You can remove access to the audio file after processing is complete audio: string, // Episode title title?: string, // Episode shownotes or description, can be either string or HTML desc?: string, // Podcast name podcast: string, // Names of hosts and guests, doesn't need to be complete but as comprehensive as possible speakers: string[], // Proper nouns and homophones, used to improve recognition accuracy keywords?: string[], // Deprecated. Use `desc` instead podcastDesc?: string, // Output language: Traditional Chinese | Simplified Chinese | English | Japanese | Korean language: "TC" | "SC" | "EN" | "JP" | "KR", }, options?: { // Whether to generate an article generateArticle?: boolean, // Whether to generate a new episode title generateTitle?: boolean, // Whether to generate a new episode introduction (shownotes) generateIntro?: boolean, // Force retry processing if already processed forceRetry?: boolean, }, }

💡 When options.forceRetry is true, if the episode has already been successfully processed, it will force reprocessing of that episode. Please note that reprocessing will generate additional usage, which will incur costs.

Response

type Response = { // Returns true if successfully queued for processing, already processing, or already processed. Returns false if queueing failed success: boolean, // Only exists when success is false. See error codes below for details errCode?: string, // Returns true if this episode has already been processed, false otherwise done: boolean, }

Last updated on