The goal of this REST API is to provide an alternative way to manage your Lexi™ Live resources with EEG. The current API endpoint's root URI is:
https://eegcloud.tv/speech-recognition
When accessing the REST API, you will be prompted to authenticate your credentials using your administrator account via HTTP Basic Authentication.
Please note that the current service expects you to POST data in JSON format.
The current version offers the following resources:
- Engines - Retrieving available EEG ASR engines.
- Instances - Retrieving, creating, and deleting Lexi™ Live Instances
- Jobs - Retrieving, creating and deleting Lexi™ jobs (deprecated).
- Transcripts - Retrieving caption files and transcripts from Lexi™ Live jobs
- Topic Models - Retrieving, creating, editing, and deleting Lexi™ custom topic models
- Topic Models - Word entries - Retrieving, creating, editing, and deleting custom topic model word entries
- Topic Models - Substitution / blacklist entries - Retrieving, creating, editing, and deleting custom topic model substitution entries
- Scheduling - Retrieving, creating, editing, and deleting Lexi™ Live scheduled events.
The following provides retrieval of available engines.
Resource | Description |
---|---|
GET /live/v2/engines |
ActionRetrieves a list of EEG ASR Engines available to use. These are the engines supported by
Lexi™. Authentication:NoneGET ParametersNoneQuery ParametersNone |
The following provides for the creation and retrieval of instances through the Lexi™ Live API.
Resource | Description | ||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
GET /live/v2/instances |
ActionRetrieves list of Lexi™ Live instances available to your credential set. Authentication:Basic (username:password)GET ParametersNone Query Parameters
|
||||||||||||||||||||||||||||||||||||||||||||||||
GET /live/v2/instances/:instance_id |
ActionRetrieves the specified :instance_id (instance). Authentication:Basic (username:password)GET Parameters
Query Parameters
|
||||||||||||||||||||||||||||||||||||||||||||||||
POST /live/v2/instances/:instance_id/turn_on |
ActionActivates the specified :instance_id (instance) to start caption service. POST Parameters
POST Parameters (JSON)These are optional parameters that are carried with the instance job into the activity reports.
Query Parameters
|
||||||||||||||||||||||||||||||||||||||||||||||||
POST /live/v2/instances/:instance_id/turn_off |
ActionTerminates the specified :instance_id (instance) to cease caption service. Authentication:Basic (username:password)POST Parameters
POST Parameters (JSON)
Query Parameters
|
||||||||||||||||||||||||||||||||||||||||||||||||
GET /live/v2/instances/:instance_id/keep_alive |
ActionRetrieves the keep-alive status/information of the specified :instance_id (instance), if available. Authentication:Basic (username:password)GET Parameters
|
||||||||||||||||||||||||||||||||||||||||||||||||
POST /live/v2/instances/:instance_id/keep_alive |
ActionIf the specified :instance_id (instance) is scheduled to terminate within a specified number of seconds (defaulting to 30 seconds), allow the instance to keep running until the user terminates it through other means. Authentication:Basic (username:password)POST Parameters
POST Parameters (JSON)
|
||||||||||||||||||||||||||||||||||||||||||||||||
DELETE /live/v2/instances/:instance_id/keep_alive |
ActionRemoves the keep-alive status/information from the specified :instance_id (instance), if available. This removes the ability to keep the instance alive if previously activated. If the instance does not have keep-alive information, the API returns a BAD REQUEST error. Authentication:Basic (username:password)DELETE Parameters
|
||||||||||||||||||||||||||||||||||||||||||||||||
POST /live/v2/instances |
ActionCreates a new instance. Returns a JSON-Serialized instance on completion. Authentication:Basic (username:password)POST Parameters (JSON)
|
||||||||||||||||||||||||||||||||||||||||||||||||
PUT /live/v2/instances/:instance_id |
ActionUpdates an existing instance and replaces the existing settings. Returns a JSON-Serialized instance on completion. PUT Parameters (JSON)Parameters are identical to the POST request used to create instances (above). Query Parameters
|
||||||||||||||||||||||||||||||||||||||||||||||||
PATCH /live/v2/instances/:instance_id |
ActionModifies an existing instance with select settings. Returns a JSON-Serialized instance on completion. PATCH Parameters (JSON)Parameters are identical to the POST request used to create instances (above). Query Parameters
|
||||||||||||||||||||||||||||||||||||||||||||||||
DELETE /live/v2/instances/:instance_id |
Action
Deletes the specified :instance_id. Authentication:Basic (username:password)DELETE Parameters
|
Denotes an optional parameter.
The following provides for the creation and retrieval of jobs through the Lexi™ Live API.
*Note - Job creation is a deprecated method. Please refer to Instances for caption services launches in new development.
If jobs are created via instances, this job data can also be retrieved from individual instance detail objects.
This endpoint is necessary for accessing jobs created by the GPI interface of Lexi™ Live on HD-492™ and HD-1492™ encoders.
Resource | Description | ||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
GET /live/v1/jobs |
ActionRetrieve a list of recent Lexi™ Live jobs Authentication:Basic (username:password)GET ParametersNone Query Parameters
|
||||||||||||||||||||||||||||
GET /live/v1/jobs/:JobID |
ActionRetrieves detailed information of the specified :JobID. Authentication:Basic (username:password)GET Parameters
Query ParametersNone |
||||||||||||||||||||||||||||
POST /live/v1/jobs |
ActionCreates a new Lexi™ Live job and launches it immediately. Authentication:Basic (username:password)POST Parameters (JSON)
|
Denotes an optional parameter.
The following table provides a quick definition for retrieving Lexi™ Live transcripts caption files through the REST API.
Resource | Description | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
GET /live/v1/jobs/:job_id/assemble_data |
ActionRetrieves a caption transcript from a specific Lexi™ Live job. Authentication:Basic (username:password)GET Parameters
Query Parameters
|
||||||||||||||||||
POST /live/v2/instances/:instance_id/assemble_data |
ActionRetrieves a caption transcript from a specific Lexi™ Live instance. Authentication:Basic (username:password)POST Parameters
POST Parameters (JSON)
|
Denotes an optional parameter.
The following provides for the creation and retrieval of custom topic models through the Lexi™ API.
*Note - Legacy Topic Model endpoints are still supported with URL redirects to the new v3 endpoint.
You must use /v3 endpoints for Topic Models if your client does not follow URL redirects.
Example: POST /models should be changed to POST /models/v3
Resource | Description | |||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
GET /base_models |
ActionRetrieves a list of EEG Base Models available to use. These are the languages supported by
Lexi™. Authentication:NoneGET ParametersNoneQuery ParametersNone |
|||||||||||||||||||
GET /models/v3 |
Action
Retrieves list of Lexi™ your billing account's custom topic models. Authentication:Basic (username:password)GET ParametersNone Query ParametersNone |
|||||||||||||||||||
GET /models/v3/:model_id |
Action
Retrieves the specified :model_id (model). Authentication:Basic (username:password)GET Parameters
Query ParametersNone |
|||||||||||||||||||
POST /models/v3 |
ActionCreates a new custom topic model. POST ParametersNone.POST Parameters (JSON)
Returnsthe model_id to use with requests. |
|||||||||||||||||||
DELETE /models/v3/:model_id |
ActionDeletes a custom topic model. DELETE Parameters
|
|||||||||||||||||||
POST /models/v3/:model_id/words?overwrite=:overwrite |
Action
Updates the word entries of a custom topic model. POST Parameters
POST Parameters (form-data)
words_file CSV FileDo not include a header row. The CSV format is:
Example
|
|||||||||||||||||||
PATCH /models/v3/:model_id/words |
Action
Updates the word entries of a custom topic model. PATCH Parameters
PATCH Parameters (JSON)
Patch Object
ExampleThis JSON will add a pronunciation for Fred Flintstone that includes some common mispronunciations, update an existing pronunciation for Wilma Flintstone, and delete an existing pronunciation for Barney Rubble { "patchWords":{ "Fred Flintstone":{ "sounds_like":[ "Fred Flint Stone", "Fred Flind Stone", "Fred Flin Stone" ], "word":"Fred Flintstone" }, "Wilma Flintstone":{ "sounds_like":[ "Will Ma Flint Stone" ], "word":"Wilma Flintstone" }, "Barney Rubble": null } } |
|||||||||||||||||||
POST /models/v3/:model_id/substitutions?overwrite=:overwrite |
ActionSet/append substitution/blacklist words entries for a custom topic model. Authentication:Basic (username:password)POST Parameters
POST Parameters (form-data)
substitution_file CSV FileDo not include a header row. The CSV format is:
ExampleThis JSON will add a substitution for "BadWord"
|
|||||||||||||||||||
PATCH /models/v3/:model_id/substitutions |
ActionUpdates the substitution/blacklist words entries of a custom topic models. Authentication:Basic (username:password)PATCH Parameters
PATCH Parameters (JSON)
Patch Object
ExampleThis JSON will add a substitution for "BadWord", and delete an existing substitution for "OldBadWord" { "patchSubstitutions":{ "BadWord":{ "word":"BadWord", "substitution":"GoodWord" }, "OldBadWord":null } } |
Denotes an optional parameter.
The Lexi Scheduling REST API is to provide a programmatic way to schedule your Lexi™ Live resources with EEG. The current API endpoint's root URI is:
https://eegcloud.tv/events
When accessing the REST API, you will be prompted to authenticate your credentials using your administrator
account via HTTP Basic Authentication.
Please note that the current service expects you to POST data in
JSON format.
Terminology:
- event_id - Your scheduled event(s) will have an event_id that was determined by the "UID" from your ICS. This event could have a list of recurring events attached.
- recurrence_id - If you edit a single event from the group of recurring events, it will gain a recurrence_id. This recurrence_id is the start datetime (YYYYMMDDTHHmmss) the recurring event was originally meant to start.
- presumed_recurrence_id - This is the start datetime (YYYYMMDDTHHmmss) of the single recurring event that you want to modify separate from the group of recurring events.
The current version offers the following resources:
- Retrieval - Retrieving scheduled events.
- Create & Modify - Create and modify scheduled events
- Cancel & Delete - Cancel and delete scheduled events.
Resource | Description | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
GET /events |
ActionRetrieves list of all scheduled events from your credential set. Authentication:Basic (username:password)GET ParametersNone Query Parameters
|
Denotes an optional parameter.
Resource | Description | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
POST /events |
ActionCreate scheduled event(s). Authentication:Basic (username:password)POST ParametersNone POST Parameters (JSON)
Query ParametersNone ExampleThis JSON schedules an event recurring monthly every 3rd Monday for Fred Flintstone. Tasks include a reminder email 1 minute before the event start time and a email containing the transcript in WebVTT format 1 minute after the event end time. { "ics": "BEGIN:VEVENT\r\nUID:602c7db9-8098-43dd-ae24-692a1dba939d@eegcloud.tv\r \nDTSTART;TZID=America/Los_Angeles:20230717T000000\r\nDTEND;TZID=America/Los_Angeles:20230717T003000\r \nSUMMARY:fredf_event\r\nRRULE:FREQ=MONTHLY;BYDAY=3MO\r\nEND:VEVENT\r\n", "tasks": [ { "type": "reminder", "related": "start", "trigger": "-PT1M", "email_addresses": [ "fred.flintstone@ai-media.tv" ] }, { "type": "transcript", "related": "end", "trigger": "PT1M", "email_addresses": [ "fred.flintstone@ai-media.tv" ], "file_type": "vtt" } ], "instance_id": "asr_instance_385rBs8u8JzUJRZK,lango_instance_173rGd4u8JzUJRLP", "product": "lexi" } |
||||||||||||
GET /events/:event_id |
ActionGet scheduled event(s). Authentication:Basic (username:password)GET Parameters
|
||||||||||||
POST /events/:event_id |
ActionSeparate a specific event from the base group of recurring scheduled event(s). Future updates to this event will be isolated to this event only and will not affect the associated group of recurring events. Authentication:Basic (username:password)POST Parameters
Query Parameters
|
||||||||||||
PUT /events/:event_id |
ActionModify scheduled event(s). Any parameters changed or removed in the JSON body will be reflected in the scheduled event(s). Authentication:Basic (username:password)PUT Parameters
PUT Parameters (JSON)
Query Parameters
|
Denotes an optional parameter.
Resource | Description | ||||
---|---|---|---|---|---|
PUT /events/:event_id/cancel?recurrence_id=:recurrence_id |
ActionCancels a scheduled event with the given event ID. PUT Parameters
Query Parameters
|
||||
PUT /events/:event_id/uncancel?recurrence_id=:recurrence_id |
ActionUncancels a scheduled event with the given event ID. PUT Parameters
Query Parameters
|
||||
DELETE /events/:event_id |
ActionDeletes all events with the specified event ID. Authentication:Basic (username:password)DELETE Parameters
|
Denotes an optional parameter.