Integration and API

Basic concept

Integration of SWITCHcast into another web service

The SWITCHcast API enables custom integration of the main functionality into another service, e.g. a Learning Management System (LMS).

From the user perspective, many benefits arise:

  • No context switch between LMS and SWITCHcast necessary
  • Familiar look and feel (from LMS) when using SWITCHcast
  • User roles and permissions can be automatically mapped from LMS to SWITCHcast
  • SWITCHcast channels can be automatically pre-configured, e.g. with University logo

Transparent interaction

All actions performed from within the LMS using the API are also visible on the "classic" SWITCHcast web page and vice versa.

Communication channels

A   "Classic" access to SWITCHcast using the web frontend
B   Access to the LMS
C   Indirect access to SWITCHcast using the API through the LMS

The API communication (C) takes place from machine to machine, thus no AAI authentication is possible. To enable maximum protection, an SSL encrypted connection with client authentication is used.

API functionality

All API calls are performed in the context of a user. This allows the SWITCHcast service to react in the same manner as if the call was performed through the web frontend (A). 

The API is divided into producer and spectator functions. Spectator functions provide read-only access, whereas producer functions also include write access to the content.

1. Producer functions

User functions

  • Create a new user
  • Check if a given user exists

Channel functions

(user context)

  • Create a new channel
  • List all channels where the given user has producer access
  • Show details for a single channel (metadata, producer URLs, etc.)
  • Modify a channel
  • Delete a channel

Clip functions

(channel context)

  • Create a new clip
  • List all clips inside the given channel
  • Show details for a single clip (metadata, producer URLs, etc.)
  • Delete a clip

2. Spectator functions

Channel functions

(user context)

  • List all channels where the given user has spectator access
  • Show details for a single channel (metadata, spectator URLs, etc.)

Clip functions

(channel context)

  • List all clips inside the given channel
  • Show details for a single clip (metadata, spectator URLs, etc.)

Data exchange interface

SWITCHcast provides a REST API (Representational State Transfer) with XML as data exchange format. Each resource (clip, channel, user, etc.) is identified by a unique URL and responds to the basic CRUD operations (create, read, update, destroy).

For the technical details about the API, examples and sample code, please refer to the detailed API specification.