Transcription

Start a direct upload (large files)

For large files: get a short-lived upload URL, send the file bytes to it with the returned method and headers, then call POST /v1/uploads/{job_id}/commit. Requires an API key bound to an account.

post/v1/uploads/init

Request

  • Base URL: https://whipscribe.com/api
  • URL: https://whipscribe.com/api/v1/uploads/init
  • Auth: API key in header X-API-Key

Headers

Idempotency-Keystring

Optional. Retries that carry the same key (per API key) return the original job (HTTP 200, X-Idempotent-Replay: true) instead of creating a duplicate. Up to 255 characters from [A-Za-z0-9_.:/-].

Request body

filenamestring required
content_typestring
size_bytesinteger required
languagestring

ISO 639-1 language code (en, es, fr, ...), or auto to detect it.

diarizeboolean

Label who is speaking.

word_timestampsboolean

Include per-word start and end times.

source'upload' | 'url' | 'recording' | 'api'

How the transcript was created. Defaults to upload for file submits and url for link submits.

Example request

{
  "filename": "episode-412.mp3",
  "content_type": "audio/mpeg",
  "size_bytes": 48213344,
  "language": "en"
}

Response

Upload ticket.

job_idstring uuid required
object_keystring required

Echo this back to the commit call.

upload_urlstring uri required

Short-lived URL to send the file bytes to.

methodstring required
headersobject

Headers to send with the upload request.

expires_ininteger required

Seconds until upload_url expires.

optionsobject required

Echo this back to the commit call unchanged.

Example response

{
  "job_id": "35f4be54-aa3e-4adc-85b7-b44f284d1fc3",
  "method": "PUT"
}

Changes

No recorded changes to this operation across all 1 revision of this API.