Verbit Platform API v.4 Follow
Introduction
Verbit API (Application Programming Interface) version 4 provides programmatic access to Verbit's premium end to end transcription and captioning solution. It is based on a state of the art ASR (Automatic Speech Recognition) engine and thorough human review. The API can easily be integrated into customers' systems, enriching the user experience with transcriptions and closed captions for video and audio.
Sandbox API URL is https://sandbox-api.verbit.co
Main API URL is https://api.verbit.co/api/
API authorization is provided by passing api_token
you can find on your Verbit profile.
Testing API integration can be done via sandbox token (also found in profile) and using sandbox API url ( https://sandbox-api.verbit.co
). When using the sandbox, no real ASR or human editing is performed, and there are several additional params available to imitate different states of API. Please see "Create new job" section below.
Request methods are POST
and GET
(specified per request). Note, that for backward compatibility all POST
endpoints can be called with GET
method, but this approach is strongly advised against.
All API responses are JSON (except for /job/get_caption
and /job/draft
endpoints, see "Downloading Captions").
Errors are returned in form:
{"ErrorType": "ERROR_TYPE_STRING", "ErrorComment": "Error explanation"}
Current error types are:
-
ITEM_NOT_FOUND
: can't find an item by ID provided -
BAD_API_TOKEN
: wrong API token -
MISSING_PARAMETER
: required parameter is missing -
INVALID_OPTION
: the passed parameter value is incorrect or unsupported -
INVALID_QUERY
: params combination or context of their usage is invalid -
INVALID_URL
: passed URL parameter is invalid or inaccessible
Main API object is transcription job (/job
endpoint, discussed below). The main flow is:
-
Create job
Add media (video or audio files to the job) by providing an asset ID (see "Add asset" section) or a direct link to the file.
-
Start job's transcription and editing process
-
Poll the job till it is ready, e.g. have achieved "Completed" state. Alternatively, you can set up webhook to notify you when the job is finished, see below.
-
Download resulting transcription/closed captions
In addition to jobs management, Verbit API provides read-only access to your organization's users and job processing profiles.
Webhook URL can be set up in your customer profile to receive Verbit notifications once the job is finished. Webhook requirements:
-
It should be HTTP POST endpoint on your server, accessible without any authentication (or authentication params could be included in the webhook URL);
-
It will receive JSON POST with this payload (you can use "Send Test Event" button in your profile to receive sample payload immediately):
{
"job_id": "<verbit internal job id, returned from /transcription_jobs/new>",
"external_id": "<your job id you have passed to /transcription_jobs/new>",
"status": "'Completed' or 'Failure'"
}
-
If the call is successfully consumed, the endpoint should respond with body consisting of
"OK"
(without quotes) and nothing else; -
If the call was not successful (e.g. not returned
"OK"
body), Verbit platform will do several retries with a gradually increased wait period, up to 48 hours since first fail.
For more information on how to use Verbit API, visit our online API documentation through the link below:
https://verbitaiv3.docs.apiary.io