{
  "openapi": "3.0.1",
  "info": {
    "title": "Audio, Video & Podcast Transcription: Speech to Text",
    "description": "Audio, video and podcast transcription: MP3, M4A, WAV or MP4 links, uploaded files or podcast RSS feeds to text, timestamped segments, and SRT and VTT subtitles. Failed links are not charged. Optional translation and YouTube chapters. 99 languages, no API key needed. $0.004 per audio minute.",
    "version": "0.1",
    "x-build-id": "XcG7KgXCMdaz7Hgll"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/brasspage~media-transcriber/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-brasspage-media-transcriber",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/brasspage~media-transcriber/runs": {
      "post": {
        "operationId": "runs-sync-brasspage-media-transcriber",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/brasspage~media-transcriber/run-sync": {
      "post": {
        "operationId": "run-sync-brasspage-media-transcriber",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "mediaUrls": {
            "title": "Direct audio or video file URLs",
            "type": "array",
            "description": "Direct links to audio or video files on any public host, one per line: MP3, M4A, WAV, OGG, FLAC, MP4, MOV, WEBM and more, up to 2 GB each. Apify key-value store record URLs work too. Page links from YouTube, Spotify, TikTok, Instagram, Facebook, X, Vimeo, SoundCloud and Twitch are not supported. A link that fails to download or decode is not charged.",
            "items": {
              "type": "string"
            }
          },
          "audioFile": {
            "title": "Upload a file",
            "type": "string",
            "description": "Or upload one audio or video file from your computer."
          },
          "podcastRssUrls": {
            "title": "Podcast RSS feed URLs",
            "type": "array",
            "description": "Public podcast RSS feeds, one per line. The Actor transcribes the newest episodes of each feed (see 'Latest episodes per feed'). Most podcasts on Spotify or Apple Podcasts also publish a public RSS feed.",
            "items": {
              "type": "string"
            }
          },
          "maxEpisodesPerFeed": {
            "title": "Latest episodes per feed",
            "minimum": 1,
            "maximum": 1000,
            "type": "integer",
            "description": "How many of the newest episodes to transcribe from each feed.",
            "default": 1
          },
          "publishedAfter": {
            "title": "Only episodes published after",
            "type": "string",
            "description": "Skip feed episodes published before this date (YYYY-MM-DD)."
          },
          "onlyNewSinceLastRun": {
            "title": "Only new episodes since last run",
            "type": "boolean",
            "description": "Remember transcribed episodes (in a named key-value store in your account) and skip them next time. Good for scheduled runs.",
            "default": false
          },
          "language": {
            "title": "Language",
            "type": "string",
            "description": "Spoken language as an ISO-639-1 code (for example en, es, de). Leave empty to detect it automatically."
          },
          "translateTo": {
            "title": "Translate to (language code)",
            "pattern": "^([a-zA-Z]{2,3}(-[a-zA-Z0-9]{2,8})?)?$",
            "type": "string",
            "description": "Optional. Language code to translate the transcript into, for example es, de, fr, ja or pt-BR. You get the translated text and a translated SRT file with the same timestamps. Leave empty for no translation. $0.002 per audio minute."
          },
          "chapters": {
            "title": "Chapters, summary and keywords",
            "type": "boolean",
            "description": "Optional. Add 5-15 chapter markers with titles and start times as YouTube description lines ('00:00 Intro'), a 3-sentence summary and 5 keywords. With a translation, they are in the translation language. $0.01 per file.",
            "default": false
          },
          "maxAudioMinutesPerRun": {
            "title": "Max audio minutes per run",
            "minimum": 1,
            "maximum": 100000,
            "type": "integer",
            "description": "Safety limit. The run stops after this many audio minutes in total. A file that goes over the limit is cut at the limit, and the last dataset row says so. On the Apify free plan, runs are a free trial of the first 5 audio minutes per run and 30 free minutes per month (translation and chapters count too); upgrade to a paid Apify plan for full transcripts.",
            "default": 600
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}