Skip to main content
POST
/
v1
/
extract
Extract structured data from a transcript
curl --request POST \
  --url https://api.sky-scribe.com/v1/extract \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "transcription_id": "<string>",
  "language": "<string>",
  "format": [
    "json"
  ],
  "callback": "<string>",
  "team_id": "<string>",
  "folder_id": "<string>",
  "output_config": {
    "include_timestamps": true,
    "include_speakers": false
  }
}
'
{
  "status": "completed",
  "id": "<string>",
  "data": {
    "json": {
      "results": {}
    },
    "doc": {
      "url": "<string>"
    },
    "pdf": {
      "url": "<string>"
    },
    "txt": {
      "url": "<string>"
    },
    "markdown": "<string>",
    "srt": {
      "url": "<string>"
    },
    "vtt": {
      "url": "<string>"
    },
    "csv": {
      "url": "<string>"
    }
  }
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json

Extract structured data from an existing transcript.

transcription_id
string
required

ID of an existing SkyScribe transcription.

language
string

Optional language hint; defaults to "auto".

format
enum<string>[]

(Optional) Output formats to generate. Available: doc, pdf, txt, markdown, srt, vtt, csv, json. Defaults to ["json"] if not provided.

Available options:
doc,
pdf,
txt,
markdown,
srt,
vtt,
csv,
json
callback
string<uri>

(Optional) Webhook URL for async processing. If provided, the job runs asynchronously and results are sent to this URL when complete. Without callback, the endpoint processes synchronously.

team_id
string

(Optional) Team identifier. If not provided, uses your default workspace.

folder_id
string

(Optional) Folder identifier. If not provided, file will be added to the root of the workspace.

output_config
object

(Optional) Configuration for output formatting.

Response

Extraction response. Returns one of two response types:

Option 1 - Completed (status: "completed"): Returned when no callback URL is provided (synchronous processing). Response includes status, id, and data with all requested formats (defaults to json if not specified).

Option 2 - Pending (status: "pending"): Only returned when callback URL is provided (asynchronous processing). Response includes status, id, and poll_url to check progress. Results will be sent to the callback URL when complete.

status
enum<string>
required
Available options:
completed
id
string
required
data
object
required

Map of requested formats to their data. Only formats specified in the request will be present. If no formats were specified, defaults to json only.