The goal of this REST API is to provide a way for integrations to manage your iCap cloud captioning resources with Ai-Media / EEG. We recommend accessing this REST API through this load balanced multi-region entry point for the most resilient and up to date version:
https://icap.eegapis.com/api/
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:
- Users - Retrieving, creating and deleting user accounts
- Accesscode - Retrieving, creating, and deleting accesscodes
- Encoder Permissions - Retrieving, creating, and deleting encoder shares
- Encoder Activity - Retrieving, information about current encoder activity
- Shared Encoders - Retrieving encoders granted to you by other companies
- CaptionCast - Creating, retrieving, and deleting CaptionCast definitions
- Logs - Retrieving log data
- Activities - Retrieving live captioner/encoder status
- Session IDs - Retrieving past and current session IDs for a username account
- Uptime Statistics - Retrieving past uptime statistics for a username account. Broadcast Plus Exclusive
- iCap Providers - Retrieve a list of iCap Captioning providers.
- Relay Servers - Retrieve a list of iCap relay servers.
- Email Notices - Subscribe to iCap email notices related to your account status.
- Session Login - Login to receive a session cookie and avoid needing to send header-based authentication on each subsequent call.
- System Health - Retrieving system health information related to iCap
The following table provides a quick definition for managing user accounts through the REST API.
Resource | Description | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
GET /api/1.0/:company/users |
ActionRetrieves list of users under :company.GET Parameters
Query Parameters
|
||||||||||||
GET /api/1.0/:company/users/:username |
ActionRetrieves the specified :username data under :company.GET Parameters
|
||||||||||||
POST /api/1.0/:company/users |
ActionCreates a new user under :company's namespace.GET Parameters
POST Parameters (JSON)
|
||||||||||||
DELETE /api/1.0/:company/users/:username |
ActionDeletes the specified :username under :company's namespace.GET Parameters
Query Parameters
|
denotes an optional parameter.
The following table provides a quick definition for managing accesscodes through the REST API.
Resource | Description | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
GET /api/1.0/:company/accesscodes |
ActionRetrieves list of accesscodes under :company.
GET Parameters
Query Parameters
|
||||||||||||||||||
GET /api/1.0/:company/accesscodes/:ac |
ActionRetrieves the specified :ac (accesscode) data under :company.GET Parameters
|
||||||||||||||||||
POST /api/1.0/:company/accesscodes |
ActionCreates a new accesscode under :company's namespace. Returns a 201 HTTP Code on completion.Use HTTP "PUT" to make changes to an existing access code. All parameters need to be included, and are overwritten, with each PUT update. GET Parameters
POST Parameters (JSON)
|
||||||||||||||||||
DELETE /api/1.0/:company/accesscodes/:ac |
ActionDeletes the specified :ac under :company's namespace.GET Parameters
|
denotes an optional parameter.
The following table provides a quick definition for managing encoder shares through the REST API.
Resource | Description | ||||||
---|---|---|---|---|---|---|---|
GET /api/1.0/:company/encoderpermissions |
ActionRetrieves a list of encoder shares, each of which includes an encoder username under :company and a list of other companies that it is shared with. The encoders under :company that have not been shared with any other companies will not be included in the response.
GET Parameters
|
||||||
GET /api/1.0/:company/encoderpermissions/:encoder |
ActionRetrieves the encoder share information (as defined in the previous endpoint) for the specified :encoder under :company.
GET Parameters
|
||||||
POST /api/1.0/:company/encoderpermissions |
ActionShares one of the encoders under :company with a list of other companies.
GET Parameters
POST Parameters (JSON)
|
||||||
DELETE /api/1.0/:company/encoderpermissions/:encoder/:agency |
ActionUnshares the specified :encoder under :company from the specified :agency.
GET Parameters
|
denotes an optional parameter.
The following table provides a quick definition for retrieving encoder activity through the REST API.
Resource | Description | ||||
---|---|---|---|---|---|
GET /api/1.0/:company/encoderactivity |
ActionRetrieves a list of caption agencies currently delivering service to the encoder, via what access code, and on what caption service.The encoder name is taken from the credentials supplied with the request. This is most useful when using the Ai-Media iCap SDK to create a virtual encoder.
GET Parameters
|
||||
GET /api/1.0/:company/encoderactivity/:encoder |
ActionRetrieves a list of caption agencies currently delivering service to the :encoder, via what access code, and on what caption service.The encoder name is taken from the credentials supplied with the request.
GET Parameters
|
denotes an optional parameter.
The following table provides a quick definition for retrieving logs through the REST API.
Resource | Description | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
GET /api/1.0/:company/logs/:logtype/:filterby/:value/:timeframe |
ActionRetrieves log data under specified :company.GET Parameters
Query Parameters
|
denotes an optional parameter.
The following table provides a quick definition for retrieving live captioner & encoder activities through the REST API.
Resource | Description | ||
---|---|---|---|
GET /api/1.0/:company/active-encoders |
ActionRetrieves the current active encoders under specified :company.GET Parameters
|
||
GET /api/1.0/:company/active-captioners |
ActionRetrieves the current active captioners under specified :company.GET Parameters
|
denotes an optional parameter.
The following table defines functions for retrieving current or historical live session IDs for a user through the REST API.
Resource | Description | ||||||||
---|---|---|---|---|---|---|---|---|---|
GET /api/1.0/:company/sessions/:username/:epoch_start/:epoch_end |
ActionRetrieves the session IDs assigned to this account (company and username) over the period of time specified by the start and end stamps. .GET Parameters
|
denotes an optional parameter.
This feature requires a company/user iCap Broadcast Plus plan.
The following table defines functions for retrieving historical uptime information for a user through the REST API. Note that this is mostly useful for user accounts like encoders that are expected to maintain a continuous connection to iCap. Over the default period of 1 month, in typical applications an uptime expectation would be at least 99% (returned as 0.99), and may be as high as 99.99% (0.9999). Facilities often strive for "5 nines reliability" or 99.999% (0.99999), but a measurement period of several months or more is typically required for uptime figures at this level to stabilize.
Resource | Description | ||||||||
---|---|---|---|---|---|---|---|---|---|
GET /api/1.0/:company/uptime/:username/:epoch_start/:epoch_end |
ActionRetrieves the communication uptime with iCap calculated for this account (company and username) over the period of time specified by the start and end stamps. Each interval of non-connectivity during the period is returned, as well as a final fractional figure. If you do not specify a start and end time, data for the last 30 days will be returned.GET Parameters
|
denotes an optional parameter.
Retrieves a list of iCap Captioning agencies with their iCap agency codes, full names, email and phone contacts (if provided).
Note: No authorization credentials are required in order to access this list.
Resource | Description |
---|---|
GET /api/1.0/providers |
ActionRetrieves a list of iCap Captioning agencies.Note: If your agency's contact information is missing or incorrect, and you wish it to be included, please notify Ai-Media Support. |
denotes an optional parameter.
Retrieves a list of iCap relay servers.
Note: No authorization credentials are required in order to access this list.
Resource | Description |
---|---|
GET /api/1.0/relaynames |
ActionRetrieves a list of iCap relay servers. |
denotes an optional parameter.
Subscribe to email notices the iCap system will send about your account such as encoders going online and offline, or daily logs of caption activity
Resource | Description | ||||||||
---|---|---|---|---|---|---|---|---|---|
GET /api/1.0/:company/emailnotices/subscriptions/:emailaddr |
ActionRetrieves a list of previously created email subscriptions for activites under specified :companyGET Parameters
|
||||||||
POST /api/1.0/:company/emailnotices/subscriptions |
ActionCreates a new email subscription for an activity under :company's namespace.GET Parameters
POST Parameters (JSON)
|
||||||||
DELETE /api/1.0/:company/emailnotices/subscriptions |
ActionDeletes the specified subscription under :company's namespace.GET Parameters
Post Parameters
|
denotes an optional parameter.
The Login resource provides a signed cookie that the client can use to make additional calls within the company namespace without providing authentication headers for each subsequent request. The cookie is time limited and you will be asked for authentication data again when it expires.
Resource | Description |
---|---|
POST /api/1.0/:company/login/admin |
ActionMust login with header-based authentication, will return a signed cookie that can be presented in place of header-authentication for subsequent calls until the cookie expires. |
POST /api/1.0/:company/logout |
ActionRemoves and invalidates your cookie session. |
The Health resource provides an overview of current and historical material related to iCap system health, notices, and outages.
Note: No authorization credentials are required in order to access this list.
Resource | Description |
---|---|
GET /api/1.0/health/overview |
ActionRetrieves a set of overview parameters about the current and historical system health . |