Enterprise API v1API: Process Episode

API: Process Episode

An asynchronous API that begins processing the given episode information after receiving the request. 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 that must be directly accessible via public internet
    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[],
    // Podcast description
    podcastDesc?: string,
    // Output language: Traditional Chinese | Simplified Chinese | English
    language: "TC" | "SC" | "EN",
  },
  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,
  },
}

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,
}