Echo360 Public API Swagger Docs

Base URLs:
-- https://echo360.org (US Region)
-- https://echo360.org.uk (UK Region)
-- https://echo360.org.au (AU/ANZ Region)
-- https://echo360.ca (Canada Region)

Version: 1.0 and Version 2.0 Schedule API

31 October 2018

Summary

Tag: lms-accounts

Operation Description
GET /public/api/v1/lms-accounts

List LMS accounts for User by ID, Email, or External ID

DELETE /public/api/v1/lms-accounts

Reset all LMS accounts for User by ID, Email, or External ID

Tag: lessons

Operation Description
GET /public/api/v1/lessons/{lessonId}

Get existing Lesson by ID

PUT /public/api/v1/lessons/{lessonId}

Update existing Lesson by ID

DELETE /public/api/v1/lessons/{lessonId}

Delete existing Lesson by ID

GET /public/api/v1/sections/{sectionId}/lessons

List of all existing and future Lessons for current Section

POST /public/api/v1/sections/{sectionId}/lessons

Add Lesson

Tag: lms-profiles

Operation Description
GET /public/api/v1/lms-profiles

List of all LmsProfiles for current Institution

POST /public/api/v1/lms-profiles

Add LmsProfile by externalSystemIdRef

GET /public/api/v1/lms-profiles/{lmsProfileId}

Get LmsProfile by Id

PUT /public/api/v1/lms-profiles/{lmsProfileId}

Update LmsProfile

DELETE /public/api/v1/lms-profiles/{lmsProfileId}

Delete a LmsProfile

Tag: buildings

Operation Description
GET /public/api/v1/buildings

List of all Buildings for current Institution

POST /public/api/v1/buildings

Add Building

GET /public/api/v1/buildings/{buildingId}

Get Building by ID or External ID

PUT /public/api/v1/buildings/{buildingId}

Update Building by ID or External ID

DELETE /public/api/v1/buildings/{buildingId}

Delete Building by ID or External ID

Tag: room-configuration

Operation Description
GET /public/api/v1/rooms/{roomId}/device-access

Get Network Connection Protocol and Port for a given Room

GET /public/api/v1/rooms/{roomId}/hardware1/inputs

Get Hardware 1 (SCHD) Input Configuration

GET /public/api/v1/rooms/{roomId}/hardware2/front-panel

Get the enabled status of a Hardware 2 (Echo360 PRO) front panel

GET /public/api/v1/rooms/{roomId}/hardware2/inputs

Get Hardware 2 (Echo360 PRO) Input Configuration

GET /public/api/v1/rooms/{roomId}/hardware2/one-touch

Get the One Touch details of a front-panel-enabled Hardware 2 (Echo360 PRO) device

GET /public/api/v1/rooms/{roomId}/hardware3/front-panel

Get the enabled status of a Hardware 3 (Echo360 POD) front panel

GET /public/api/v1/rooms/{roomId}/hardware3/inputs

Get Hardware 3 (Echo360 POD) Input Configuration

GET /public/api/v1/rooms/{roomId}/hardware3/one-touch

Get the One Touch details of a front-panel-enabled Hardware 3 (Echo360 POD) device

GET /public/api/v1/rooms/{roomId}/local-user/admin

Get Local Admin User Credentials

GET /public/api/v1/rooms/{roomId}/local-user/generic

Get Local Generic User Credentials

GET /public/api/v1/rooms/{roomId}/network

Get Network Settings plus Time Servers for a given Room

GET /public/api/v1/rooms/{roomId}/outbound-proxy

Get Outbound Proxy details for a given Room

GET /public/api/v1/rooms/{roomId}/software1/inputs

Get Software (CCAP) Input Configuration

Tag: courses

Operation Description
GET /public/api/v1/courses

List of all Courses for current Institution

POST /public/api/v1/courses

Add Course

GET /public/api/v1/courses/{courseId}

Get Course by ID or External ID

PUT /public/api/v1/courses/{courseId}

Update Course By ID or External ID

DELETE /public/api/v1/courses/{courseId}

Delete Course By ID or External ID

Tag: organizations

Operation Description
GET /public/api/v1/organizations

List of all Organizations for current Institution

POST /public/api/v1/organizations

Add Organization

GET /public/api/v1/organizations/{organizationId}

Get Organization by ID or External ID

PUT /public/api/v1/organizations/{organizationId}

Update Organization by ID or External ID

DELETE /public/api/v1/organizations/{organizationId}

Delete Organization by ID or External ID

Tag: sections

Operation Description
GET /public/api/v1/sections

List of all Sections for current Institution

POST /public/api/v1/sections

Add Section

GET /public/api/v1/sections/{sectionId}

Get Section by ID or External ID

PUT /public/api/v1/sections/{sectionId}

Update Section by ID or External ID

DELETE /public/api/v1/sections/{sectionId}

Delete Section by ID or External ID

POST /public/api/v1/sections/{sectionId}/clone

Clone Section by ID or External ID

PUT /public/api/v1/sections/{sectionId}/lms-course-ids

Update Section LMS Course IDs by ID or External ID

PUT /public/api/v1/sections/{sectionId}/secondary-instructors

Update Section Secondary Instructors by ID or External ID

Tag: terms

Operation Description
GET /public/api/v1/terms

List of all Terms for current Institution

POST /public/api/v1/terms

Add Term

GET /public/api/v1/terms/{termId}

Get Term by ID or External ID

PUT /public/api/v1/terms/{termId}

Update Term by ID or External ID

DELETE /public/api/v1/terms/{termId}

Delete Term by ID or External ID

Operation Description
POST /public/api/v1/lms/{lmsProfileId}/contexts/{contextId}/links

Create LTI Link

GET /public/api/v1/lms/{lmsProfileId}/contexts/{contextId}/links/{linkId}

Get LTI Link by ID

PUT /public/api/v1/lms/{lmsProfileId}/contexts/{contextId}/links/{linkId}

Update LTI Link

DELETE /public/api/v1/lms/{lmsProfileId}/contexts/{contextId}/links/{linkId}

Delete LTI Link by ID

GET /public/api/v1/sections/{sectionId}/lti-links

List all LTI Links for a single section

Tag: oauth2access_token

Operation Description
POST /oauth2/access_token

Request an access token

Tag: enrollment

Operation Description
GET /public/api/v1/sections/{sectionId}/users

List of all User enrollments for Section

POST /public/api/v1/sections/{sectionId}/users

Enroll User in a Section

GET /public/api/v1/sections/{sectionId}/users/{userId}

Get User enrollment for Section

PUT /public/api/v1/sections/{sectionId}/users/{userId}

Update a User's Section Role (Deprecated)

DELETE /public/api/v1/sections/{sectionId}/users/{userId}

Unenroll User from Section

PUT /public/api/v2/sections/{sectionId}/users/{userId}

Update a User's Section Role

Tag: schedules

Operation Description
GET /public/api/v1/schedules

List of all Schedules for current Institution

POST /public/api/v1/schedules

Add Schedule

GET /public/api/v1/schedules/{scheduleId}

Get Schedule by ID or External ID

PUT /public/api/v1/schedules/{scheduleId}

Update Schedule by ID or External ID

DELETE /public/api/v1/schedules/{scheduleId}

Delete Schedule by ID or External ID

PUT /public/api/v1/schedules/{scheduleId}/deviceOptions

Update Schedule's Device Options by ID or External ID

PUT /public/api/v1/schedules/{scheduleId}/external_id

Update Schedule's External ID by ID or External ID

PUT /public/api/v1/schedules/{scheduleId}/flags

Update Schedule's Flags by ID or External ID

PUT /public/api/v1/schedules/{scheduleId}/instructors

Update Schedule's Instructors by ID or External ID

PUT /public/api/v1/schedules/{scheduleId}/name

Update Schedule's Name by ID or External ID

PUT /public/api/v1/schedules/{scheduleId}/section

Update Schedule's Section by ID or External ID

PUT /public/api/v1/schedules/{scheduleId}/times

Update Schedule's Times by ID or External ID

Tag: users

Operation Description
GET /public/api/v1/users

List of all Users for current Institution

POST /public/api/v1/users

Add User

GET /public/api/v1/users/{userId}

Get User by ID, Email, or External ID

PUT /public/api/v1/users/{userId}

Update User by ID, Email, or External ID

GET /public/api/v1/users/{userId}/invite

Resend User Invite by ID, Email, or External ID

GET /public/api/v1/users/{userId}/status/{status}

Disable / Enable User by ID, Email, or External ID

Tag: departments

Operation Description
GET /public/api/v1/departments

List of all Departments for current Institution

POST /public/api/v1/departments

Add Department

GET /public/api/v1/departments/{departmentId}

Get Department by ID or External ID

PUT /public/api/v1/departments/{departmentId}

Update Department by ID or External ID

DELETE /public/api/v1/departments/{departmentId}

Delete Department by ID or External ID

Tag: campuses

Operation Description
GET /public/api/v1/campuses

List of all Campuses for current Institution

POST /public/api/v1/campuses

Add Campus

GET /public/api/v1/campuses/{campusId}

Get Campus by ID or External ID

PUT /public/api/v1/campuses/{campusId}

Update Campus by ID or External ID

DELETE /public/api/v1/campuses/{campusId}

Delete Campus by ID or External ID

Tag: rooms

Operation Description
GET /public/api/v1/rooms

List of all Rooms for current Institution

POST /public/api/v1/rooms

Add Room

GET /public/api/v1/rooms/{roomId}

Get Room by ID or External ID

PUT /public/api/v1/rooms/{roomId}

Update Room by ID or External ID

DELETE /public/api/v1/rooms/{roomId}

Delete Room by ID or External ID

Tag: publish

Operation Description
GET /public/api/v1/publish/media/lessons/{lessonId}

List publishable Media for a Lesson

GET /public/api/v1/publish/media/{mediaId}/lessons

List all Lessons a Media is published to

POST /public/api/v1/publish/media/{mediaId}/lessons/{lessonId}

Publish Media to a Lesson and set the availability

PUT /public/api/v1/publish/media/{mediaId}/lessons/{lessonId}

Update the availability status of a Media published to a Lesson

DELETE /public/api/v1/publish/media/{mediaId}/lessons/{lessonId}

Unpublish Media from a Lesson

Tag: medias

Operation Description
GET /public/api/v1/medias

List of all Media for the Institution or filter by the published Lesson, Section, Course, or Term

GET /public/api/v1/medias/{mediaId}

Get Media by ID

GET /public/api/v1/medias/{mediaId}/linking

Get Access Links by Media ID

GET /public/api/v1/medias/{mediaId}/linking/{linkId}

Get Access Link by ID and Media ID

GET /public/api/v1/medias/{mediaId}/sharing

Get Shares by Media ID

GET /public/api/v1/medias/{mediaId}/sharing/{userId}

Get Share by User ID/Email/External ID and Media ID

Tag: schedules v2

Operation Description
GET /public/api/v2/schedules

List Schedules with filtering by Room details

POST /public/api/v2/schedules

Add Schedule

GET /public/api/v2/schedules/{schedule}

Get Schedule by ID, or External ID.

PUT /public/api/v2/schedules/{schedule}

Update Schedule by ID or External ID

DELETE /public/api/v2/schedules/{schedule}

Delete Schedule by ID or External ID

Paths

Request an access token

POST /oauth2/access_token

Tags: oauth2access_token

application/x-www-form-urlencoded

grant_type

Can be one of the following: client_credentials, password, or refresh_token

query string
client_id

Needed for all grant types

query string
client_secret

Needed for all grant types except refresh_token

query string
username

If password chosen

query string
password

If password chosen

query string
refresh_token

If refresh_token chosen

query string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

500 Internal Server Error

Internal Error

List of all Buildings for current Institution

GET /public/api/v1/buildings

Tags: buildings
campusId

ID or External ID of the Campus to filter Buildings

query string None
limit

Number of results

query integer (int32)
offset

Key returned from prior result to get next page

query string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Add Building

POST /public/api/v1/buildings

Tags: buildings

Building data

200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

500 Internal Server Error

Internal Error

Delete Building by ID or External ID

DELETE /public/api/v1/buildings/{buildingId}

Tags: buildings
buildingId

ID or External ID of the Building to Delete

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

500 Internal Server Error

Internal Error

Get Building by ID or External ID

GET /public/api/v1/buildings/{buildingId}

Tags: buildings
buildingId

ID or External ID of the Building to Get

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

500 Internal Server Error

Internal Error

Update Building by ID or External ID

PUT /public/api/v1/buildings/{buildingId}

Tags: buildings

Building data

buildingId

ID or External ID of the Building to Update

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

List of all Campuses for current Institution

GET /public/api/v1/campuses

Tags: campuses
limit

Number of results

query integer (int32)
offset

Key returned from prior result to get next page

query string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Add Campus

POST /public/api/v1/campuses

Tags: campuses

Campus data

200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

500 Internal Server Error

Internal Error

Delete Campus by ID or External ID

DELETE /public/api/v1/campuses/{campusId}

Tags: campuses
campusId

ID or External ID of the Campus to Delete

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

500 Internal Server Error

Internal Error

Get Campus by ID or External ID

GET /public/api/v1/campuses/{campusId}

Tags: campuses
campusId

ID or External ID of the Campus to Get

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Update Campus by ID or External ID

PUT /public/api/v1/campuses/{campusId}

Tags: campuses

Campus data

campusId

ID or External ID of the Campus to Update

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

List of all Courses for current Institution

GET /public/api/v1/courses

Tags: courses
limit

Number of results

query integer (int32)
offset

Key returned from prior result to get next page

query string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Add Course

POST /public/api/v1/courses

Tags: courses

Course data

200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

500 Internal Server Error

Internal Error

Delete Course By ID or External ID

DELETE /public/api/v1/courses/{courseId}

Tags: courses
courseId

ID or External ID of the Course to Delete

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

500 Internal Server Error

Internal Error

Get Course by ID or External ID

GET /public/api/v1/courses/{courseId}

Tags: courses
courseId

ID or External ID of the Course to Get

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Update Course By ID or External ID

PUT /public/api/v1/courses/{courseId}

Tags: courses

Course Data

courseId

ID or External ID of the Course to Update

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

List of all Departments for current Institution

GET /public/api/v1/departments

Tags: departments
organizationId

ID or External ID of the Organization to filter Departments

query string None
limit

Number of results

query integer (int32)
offset

Key returned from prior result to get next page

query string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Add Department

POST /public/api/v1/departments

Tags: departments

Department data

200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

500 Internal Server Error

Internal Error

Delete Department by ID or External ID

DELETE /public/api/v1/departments/{departmentId}

Tags: departments
departmentId

ID or External ID of the Department to Delete

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

500 Internal Server Error

Internal Error

Get Department by ID or External ID

GET /public/api/v1/departments/{departmentId}

Tags: departments
departmentId

ID of the Department to Get

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Update Department by ID or External ID

PUT /public/api/v1/departments/{departmentId}

Tags: departments

Department data

departmentId

ID or External ID of the Department to Update

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Delete existing Lesson by ID

DELETE /public/api/v1/lessons/{lessonId}

Tags: lessons
lessonId

ID of the existing Lesson to Delete

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

500 Internal Server Error

Internal Error

Get existing Lesson by ID

GET /public/api/v1/lessons/{lessonId}

Tags: lessons
lessonId

ID of the existing Lesson to Get

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Update existing Lesson by ID

PUT /public/api/v1/lessons/{lessonId}

Tags: lessons

Lesson data

lessonId

ID of the existing Lesson to Update

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Reset all LMS accounts for User by ID, Email, or External ID

DELETE /public/api/v1/lms-accounts

Tags: lms-accounts
userId

ID, Email, or External ID of the User to reset LMS account

query string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

List LMS accounts for User by ID, Email, or External ID

GET /public/api/v1/lms-accounts

Tags: lms-accounts
userId

ID, Email, or External ID of the User to list LMS accounts

query string
limit

Number of results

query integer (int32)
offset

Key returned from prior result to get next page

query string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

List of all LmsProfiles for current Institution

GET /public/api/v1/lms-profiles

Tags: lms-profiles
limit

Number of results

query integer (int32)
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Add LmsProfile by externalSystemIdRef

POST /public/api/v1/lms-profiles

Tags: lms-profiles

LmsProfile data

200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Delete a LmsProfile

DELETE /public/api/v1/lms-profiles/{lmsProfileId}

Tags: lms-profiles
lmsProfileId

Name of the LmsProfile to Deleted

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

500 Internal Server Error

Internal Error

Get LmsProfile by Id

GET /public/api/v1/lms-profiles/{lmsProfileId}

Tags: lms-profiles
lmsProfileId

ID of the LmsProfile to Get

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

500 Internal Server Error

Internal Error

Update LmsProfile

PUT /public/api/v1/lms-profiles/{lmsProfileId}

Tags: lms-profiles

LmsProfile data

lmsProfileId

ID of the LmsProfile to Update

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Create LTI Link

POST /public/api/v1/lms/{lmsProfileId}/contexts/{contextId}/links

Tags: lti-links

LTI Link Info

lmsProfileId

ID of the LMS Profile

path string
contextId

ID of the LTI Context

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

500 Internal Server Error

Internal Error

List of all Media for the Institution or filter by the published Lesson, Section, Course, or Term

GET /public/api/v1/medias

Tags: medias
lessonId

ID of the Lesson to list associated Medias

query string None
sectionId

ID or External ID of the Section to list associated Medias

query string None
courseId

ID or External ID of the Course to list associated Medias

query string None
termId

ID or External ID of the Term to list associated Medias

query string None
limit

Number of results

query integer (int32)
offset

Key returned from prior result to get next page

query string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Get Media by ID

GET /public/api/v1/medias/{mediaId}

Tags: medias
mediaId

ID Media to Get

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Get Access Links by Media ID

GET /public/api/v1/medias/{mediaId}/linking

Tags: medias
mediaId

ID Media to Get Access Links

path string
limit

Number of results

query integer (int32)
offset

Key returned from prior result to get next page

query string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Get Access Link by ID and Media ID

GET /public/api/v1/medias/{mediaId}/linking/{linkId}

Tags: medias
mediaId

ID Media to Get

path string
linkId

ID Link to Get

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Get Shares by Media ID

GET /public/api/v1/medias/{mediaId}/sharing

Tags: medias
mediaId

ID Media to Get Access Links

path string
limit

Number of results

query integer (int32)
offset

Key returned from prior result to get next page

query string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Get Share by User ID/Email/External ID and Media ID

GET /public/api/v1/medias/{mediaId}/sharing/{userId}

Tags: medias
mediaId

ID Media to Get

path string
userId

ID User to Get

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

List of all Organizations for current Institution

GET /public/api/v1/organizations

Tags: organizations
limit

Number of results

query integer (int32)
offset

Key returned from prior result to get next page

query string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Add Organization

POST /public/api/v1/organizations

Tags: organizations

Organization data

200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

500 Internal Server Error

Internal Error

Delete Organization by ID or External ID

DELETE /public/api/v1/organizations/{organizationId}

Tags: organizations
organizationId

ID or External ID of the Organization to Delete

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

500 Internal Server Error

Internal Error

Get Organization by ID or External ID

GET /public/api/v1/organizations/{organizationId}

Tags: organizations
organizationId

ID or External ID of the Organization to Get

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Update Organization by ID or External ID

PUT /public/api/v1/organizations/{organizationId}

Tags: organizations

Organization data

organizationId

ID or External ID of the Organization to Update

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

List publishable Media for a Lesson

GET /public/api/v1/publish/media/lessons/{lessonId}

Tags: publish
lessonId

ID of the lesson

path string
200 OK

Successful

400 Bad Request

Not Authenticated

500 Internal Server Error

Internal Error

List all Lessons a Media is published to

GET /public/api/v1/publish/media/{mediaId}/lessons

Tags: publish
mediaId

ID of the media

path string
200 OK

Successful

400 Bad Request

Not Authenticated

500 Internal Server Error

Internal Error

Unpublish Media from a Lesson

DELETE /public/api/v1/publish/media/{mediaId}/lessons/{lessonId}

Tags: publish
mediaId

ID of the media

path string
lessonId

ID of the lesson

path string
200 OK

Successful

400 Bad Request

Not Authenticated

500 Internal Server Error

Internal Error

Publish Media to a Lesson and set the availability

POST /public/api/v1/publish/media/{mediaId}/lessons/{lessonId}

Tags: publish

Availability

mediaId

ID of the media

path string
lessonId

ID of the lesson

path string
200 OK

Successful

400 Bad Request

Not Authenticated

500 Internal Server Error

Internal Error

Update the availability status of a Media published to a Lesson

PUT /public/api/v1/publish/media/{mediaId}/lessons/{lessonId}

Tags: publish

Availability

mediaId

ID of the media

path string
lessonId

ID of the lesson

path string
200 OK

Successful

400 Bad Request

Not Authenticated

500 Internal Server Error

Internal Error

List of all Rooms for current Institution

GET /public/api/v1/rooms

Tags: rooms
buildingId

ID or External ID of the Building to filter Rooms

query string None
limit

Number of results

query integer (int32)
offset

Key returned from prior result to get next page

query string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Add Room

POST /public/api/v1/rooms

Tags: rooms

Room data

200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

500 Internal Server Error

Internal Error

Delete Room by ID or External ID

DELETE /public/api/v1/rooms/{roomId}

Tags: rooms
roomId

ID or External ID of the Room to Delete

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

500 Internal Server Error

Internal Error

Get Room by ID or External ID

GET /public/api/v1/rooms/{roomId}

Tags: rooms
roomId

ID or External ID of Room to Get

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Update Room by ID or External ID

PUT /public/api/v1/rooms/{roomId}

Tags: rooms

Room data

roomId

ID or External ID of the Room to Update

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Get Network Connection Protocol and Port for a given Room

GET /public/api/v1/rooms/{roomId}/device-access

Tags: room-configuration
roomId

ID of the Room

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Not Found

500 Internal Server Error

Internal Error

Get Hardware 1 (SCHD) Input Configuration

GET /public/api/v1/rooms/{roomId}/hardware1/inputs

Tags: room-configuration
roomId

ID of the Room

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Not Found

500 Internal Server Error

Internal Error

Get the enabled status of a Hardware 2 (Echo360 PRO) front panel

GET /public/api/v1/rooms/{roomId}/hardware2/front-panel

Tags: room-configuration
roomId

ID of the Room

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Not Found

500 Internal Server Error

Internal Error

Get Hardware 2 (Echo360 PRO) Input Configuration

GET /public/api/v1/rooms/{roomId}/hardware2/inputs

Tags: room-configuration
roomId

ID of the Room

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Not Found

500 Internal Server Error

Internal Error

Get the One Touch details of a front-panel-enabled Hardware 2 (Echo360 PRO) device

GET /public/api/v1/rooms/{roomId}/hardware2/one-touch

Tags: room-configuration
roomId

ID of the Room

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Not Found

500 Internal Server Error

Internal Error

Get the enabled status of a Hardware 3 (Echo360 POD) front panel

GET /public/api/v1/rooms/{roomId}/hardware3/front-panel

Tags: room-configuration
roomId

ID of the Room

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Not Found

500 Internal Server Error

Internal Error

Get Hardware 3 (Echo360 POD) Input Configuration

GET /public/api/v1/rooms/{roomId}/hardware3/inputs

Tags: room-configuration
roomId

ID of the Room

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Not Found

500 Internal Server Error

Internal Error

Get the One Touch details of a front-panel-enabled Hardware 3 (Echo360 POD) device

GET /public/api/v1/rooms/{roomId}/hardware3/one-touch

Tags: room-configuration
roomId

ID of the Room

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Not Found

500 Internal Server Error

Internal Error

Get Local Admin User Credentials

GET /public/api/v1/rooms/{roomId}/local-user/admin

Tags: room-configuration
roomId

ID of the Room

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Not Found

500 Internal Server Error

Internal Error

Get Local Generic User Credentials

GET /public/api/v1/rooms/{roomId}/local-user/generic

Tags: room-configuration
roomId

ID of the Room

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Not Found

500 Internal Server Error

Internal Error

Get Network Settings plus Time Servers for a given Room

GET /public/api/v1/rooms/{roomId}/network

Tags: room-configuration
roomId

ID of the Room

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Not Found

500 Internal Server Error

Internal Error

Get Outbound Proxy details for a given Room

GET /public/api/v1/rooms/{roomId}/outbound-proxy

Tags: room-configuration
roomId

ID of the Room

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Not Found

500 Internal Server Error

Internal Error

Get Software (CCAP) Input Configuration

GET /public/api/v1/rooms/{roomId}/software1/inputs

Tags: room-configuration
roomId

ID of the Room

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Not Found

500 Internal Server Error

Internal Error

List of all Schedules for current Institution

GET /public/api/v1/schedules

Tags: schedules
roomId

ID or External ID of the Room to filter Schedules

query string None
sectionId

ID or External ID of the Section to filter Schedules

query string None
limit

Number of results

query integer (int32)
offset

Key returned from prior result to get next page

query string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Add Schedule

POST /public/api/v1/schedules

Tags: schedules

Schedule data

200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

500 Internal Server Error

Internal Error

Delete Schedule by ID or External ID

DELETE /public/api/v1/schedules/{scheduleId}

Tags: schedules
scheduleId

ID or External ID of the Schedule to Delete

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

500 Internal Server Error

Internal Error

Get Schedule by ID or External ID

GET /public/api/v1/schedules/{scheduleId}

Tags: schedules
scheduleId

ID or External ID of the Schedule to Get

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Update Schedule by ID or External ID

PUT /public/api/v1/schedules/{scheduleId}

Tags: schedules

Schedule data

scheduleId

ID or External ID of the Schedule to Update

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Update Schedule's Device Options by ID or External ID

PUT /public/api/v1/schedules/{scheduleId}/deviceOptions

Tags: schedules

Schedule Device Options data

scheduleId

ID or External ID of the Schedule to Update Device Options

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Update Schedule's External ID by ID or External ID

PUT /public/api/v1/schedules/{scheduleId}/external_id

Tags: schedules

Schedule External ID

scheduleId

ID or External ID of the Schedule to Update External ID

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Update Schedule's Flags by ID or External ID

PUT /public/api/v1/schedules/{scheduleId}/flags

Tags: schedules

Schedule flags data

scheduleId

ID or External ID of the Schedule to Update Flags

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Update Schedule's Instructors by ID or External ID

PUT /public/api/v1/schedules/{scheduleId}/instructors

Tags: schedules

Schedule Instructors

scheduleId

ID or External ID of the Schedule to Update Instructors

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Update Schedule's Name by ID or External ID

PUT /public/api/v1/schedules/{scheduleId}/name

Tags: schedules

Schedule Name data

scheduleId

ID or External ID of the Schedule to Update Name

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Update Schedule's Section by ID or External ID

PUT /public/api/v1/schedules/{scheduleId}/section

Tags: schedules

Schedule Section data

scheduleId

ID or External ID of the Schedule to Update Section

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Update Schedule's Times by ID or External ID

PUT /public/api/v1/schedules/{scheduleId}/times

Tags: schedules

Schedule Time data

scheduleId

ID or External ID of the Schedule to Update Times

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

List of all Sections for current Institution

GET /public/api/v1/sections

Tags: sections
courseId

ID or External ID of the Course to filter Sections

query string None
termId

ID or External ID of the Term to filter Sections

query string None
limit

Number of results

query integer (int32)
offset

Key returned from prior result to get next page

query string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Add Section

POST /public/api/v1/sections

Tags: sections

Section data

200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

500 Internal Server Error

Internal Error

Delete Section by ID or External ID

DELETE /public/api/v1/sections/{sectionId}

Tags: sections
sectionId

ID or External ID of the Section to Delete

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

500 Internal Server Error

Internal Error

Get Section by ID or External ID

GET /public/api/v1/sections/{sectionId}

Tags: sections
sectionId

ID or External ID of the Section to Get

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Update Section by ID or External ID

PUT /public/api/v1/sections/{sectionId}

Tags: sections

Section data

sectionId

ID or External ID of the Section to Update

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Clone Section by ID or External ID

POST /public/api/v1/sections/{sectionId}/clone

Tags: sections

Section data

sectionId

ID or External ID of the Section to Clone

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

List of all existing and future Lessons for current Section

GET /public/api/v1/sections/{sectionId}/lessons

Tags: lessons
sectionId

ID or External ID of the Section to Get Lessons

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Add Lesson

POST /public/api/v1/sections/{sectionId}/lessons

Tags: lessons

Lesson data

sectionId

ID or External ID of the Section to Create Lesson

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

500 Internal Server Error

Internal Error

Update Section LMS Course IDs by ID or External ID

PUT /public/api/v1/sections/{sectionId}/lms-course-ids

Tags: sections
sectionId

ID or External ID of the Section to Update LMS Course IDs

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Update Section Secondary Instructors by ID or External ID

PUT /public/api/v1/sections/{sectionId}/secondary-instructors

Tags: sections
sectionId

ID or External ID of the Section to Update Secondary Instructors

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

List of all User enrollments for Section

GET /public/api/v1/sections/{sectionId}/users

Tags: enrollment
sectionId

ID or External ID of the Section to Get Enrollments

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

500 Internal Server Error

Internal Error

Enroll User in a Section

POST /public/api/v1/sections/{sectionId}/users

Tags: enrollment

Section data

sectionId

ID or External ID of the Section to Enroll User

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

500 Internal Server Error

Internal Error

Unenroll User from Section

DELETE /public/api/v1/sections/{sectionId}/users/{userId}

Tags: enrollment
sectionId

ID or External ID of the Section to Delete Enrollment

path string
userId

ID or External ID of the User to Delete Enrollment

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

500 Internal Server Error

Internal Error

Get User enrollment for Section

GET /public/api/v1/sections/{sectionId}/users/{userId}

Tags: enrollment
sectionId

ID or External ID of the Section to Get Enrollments

path string
userId

ID or External ID of the User to Get Enrollments

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

500 Internal Server Error

Internal Error

Update a User's Section Role (Deprecated)

PUT /public/api/v1/sections/{sectionId}/users/{userId}

Tags: enrollment

Either "Student" or "Instructor"

sectionId

ID of the Section to Update Section Role

path string
userId

ID of the User to Update Section Role

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

500 Internal Server Error

Internal Error

List of all Terms for current Institution

GET /public/api/v1/terms

Tags: terms
limit

Number of results

query integer (int32)
offset

Key returned from prior result to get next page

query string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Add Term

POST /public/api/v1/terms

Tags: terms

Term data

200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

500 Internal Server Error

Internal Error

Delete Term by ID or External ID

DELETE /public/api/v1/terms/{termId}

Tags: terms
termId

ID or External ID of the Term to Delete

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

500 Internal Server Error

Internal Error

Get Term by ID or External ID

GET /public/api/v1/terms/{termId}

Tags: terms
termId

ID or External ID of the Term to Get

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Update Term by ID or External ID

PUT /public/api/v1/terms/{termId}

Tags: terms

Term data

termId

ID or External ID of the Term to Update

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

List of all Users for current Institution

GET /public/api/v1/users

Tags: users
limit

Number of results

query integer (int32)
offset

Key returned from prior result to get next page

query string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Add User

POST /public/api/v1/users

Tags: users

User data

200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

500 Internal Server Error

Internal Error

Get User by ID, Email, or External ID

GET /public/api/v1/users/{userId}

Tags: users
userId

ID, Email, or External ID of the User to Get

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Update User by ID, Email, or External ID

PUT /public/api/v1/users/{userId}

Tags: users

User data

userId

ID, Email, or External ID of the User to Update

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Resend User Invite by ID, Email, or External ID

GET /public/api/v1/users/{userId}/invite

Tags: users
userId

ID, Email, or External ID of the User to resend invite

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Disable / Enable User by ID, Email, or External ID

GET /public/api/v1/users/{userId}/status/{status}

Tags: users
userId

ID, Email, or External ID of the User to Disable / Enable

path string
status

Active or Inactive status of the User to Disable / Enable

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

List Schedules with filtering by Room details

GET /public/api/v2/schedules

Tags: schedules v2
room

Room ID, External ID, or Name

query string None
building

Building ID, External ID, or Name (required if Room Name is supplied)

query string None
campus

Campus ID, External ID, or Name (required if Room Name is supplied)

query string None
limit

Number of results

query integer (int32)
offset

Key returned from prior result to get next page

query string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Add Schedule

POST /public/api/v2/schedules

Tags: schedules v2

Schedule data

200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

500 Internal Server Error

Internal Error

Delete Schedule by ID or External ID

DELETE /public/api/v2/schedules/{schedule}

Tags: schedules v2
schedule

ID or External ID of the Schedule to Delete

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

500 Internal Server Error

Internal Error

Get Schedule by ID, or External ID.

GET /public/api/v2/schedules/{schedule}

Tags: schedules v2
schedule

Schedule ID, or External ID

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Update Schedule by ID or External ID

PUT /public/api/v2/schedules/{schedule}

Tags: schedules v2

Schedule data

schedule

ID or External ID of the Schedule to Update

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

404 Not Found

Resource Not Found

405 Method Not Allowed

Method Not Allowed

500 Internal Server Error

Internal Error

Update a User's Section Role

PUT /public/api/v2/sections/{sectionId}/users/{userId}

Tags: enrollment

Enrollment data

sectionId

ID of the Section to Update Section Role

path string
userId

ID of the User to Update Section Role

path string
200 OK

Successful

400 Bad Request

Bad Request

401 Unauthorized

Not Authenticated

403 Forbidden

Forbidden

500 Internal Server Error

Internal Error

Schema definitions

AccessLinkInfo: object

id: string
linkType: string
linkUrl: string
description: string
active: boolean
authenticated: boolean
createdAt: string
updatedAt: string

ActionAnyContent: object

ActionJsValue: object

Availability: object

available: boolean

Availability

when: string

Date when media will be available: YYYY-MM-DD

"2018-08-09"
                                                        

Building: object

id: string

Unique Identifier of the Building

campusId: string

ID of the Campus to which the Building belongs

institutionId: string

ID of the Institution to which the Campus belongs

name: string

Name of the Building returned

externalId: string

External system identifier for the current Building

Campus: object

id: string

Unique Identifier of the Campus

institutionId: string

ID of the Instituion to which the Campus belongs

name: string

Name of the Campus returned

timeZone: string

The Time Zone in which the Campus is located

"US/Eastern"
                                                        
timeZoneOffsetMinutes: integer (int32)

Offset in minutes to add to UTC to get the local time.

-120
                                                        
externalId: string

External system identifier for the current Campus

Chronology: object

zone: DateTimeZone

CloneSection: object

courseId: string

ID or External ID of the Course to which the cloned Section belongs

"ICT102"
                                                        
termId: string

ID or External ID of the Term to which the cloned Section belongs

"SEM1_2017"
                                                        
sectionNumber: string

Number to uniquely identify the cloned Section

"ICT102_S1_2017"
                                                        
description: string

Optional Description of the cloned Section

"Cloned Section"
                                                        
instructorId: string

ID, Email, or External ID of the Instructor for the cloned Section (if omitted the existing Section Instructor will be kept)

"Foo.Bar@echo360.com"
                                                        
externalId: string

External system identifier of the cloned Section

"ICT102_S2_2017"
                                                        

ContentAvailability: object

Course: object

id: string

Unique Identifier of the Course

institutionId: string

ID of the Instituion to which the Organization belongs

organizationId: string

ID of the Organization to which the Department belongs. Will default to ownership by Institution if non-existent

departmentId: string

ID of the Department to which the Course belongs. Will default to ownership by Organization if non-existent

name: string

Name of the Course returned

courseIdentifier: string

Institution-specific identifier for the Course

"ICT102"
                                                        
sectionCount: integer (int64)

Number of Sections that exist for the current Course

4
                                                        
externalId: string

External system identifier

CreateOrUpdateSchedule: object

startDate: string

Start date for capture in ISO 8601 Date format: YYYY-MM-DD

"2017-02-01"
                                                        
startTime: string

Start time for the capture (to the minute) in ISO 8601 Time format: HH:MM. The time zone for the schedule's linked room will be used

"09:00"
                                                        
endDate: string

The last date for the capture in ISO 8601 Date format: YYYY-MM-DD. If this is specified, daysOfWeek must also be provided

"2017-05-31"
                                                        
daysOfWeek: string[]

Days of the week this schedule should capture as 2 letter abbreviations: SU, MO, TU, WE, TH, FR, SA. This is required when endDate is specified

"[\"MO\", \"TU\"]"
                                                        
string
exclusionDates: string[]

Dates within the scheduled period skip recording in ISO 8601 Date format: YYYY-MM-DD. This is unused when no endDate/daysOfWeek is specified

"[\"2017-04-14\", \"2014-04-17\"]"
                                                        
string
durationMinutes: integer (int32)

Duration of each scheduled capture in Minutes

60
                                                        
termId: string

ID of the Term in which to Schedule the Capture

sectionId: string

Deprecated -- ID or External ID of the Section in which to Schedule the Capture

"ICT102_S1_2017"
                                                        
sections: object[]

List of the Sections in which to Schedule the Capture

name: string

Name of the Schedule

"ICT102 Sem1 2017 9:00-10:00 Mon/Tue, Rm: Rockerfeller Studio 6H"
                                                        
roomId: string

ID or External ID of the Room in which to Schedule the Capture

"ROCKEFELLER_STUDIO_6H"
                                                        
instructorId: string

ID, Email, or External ID of the Instructor

"Foo.Bar@echo360.com"
                                                        
guestInstructor: string

Name of any Guest Instructor

"Visiting consultant Prof A. Citizen"
                                                        
shouldCaption: boolean

Boolean value indicating the Capture should be Captioned

shouldStreamLive: boolean

Boolean value indicating the Capture should be Streamed Live

input1: string , x ∈ { display , video , altvideo }

Input 1 Logical Graphics Type

input2: string , x ∈ { display , video , altvideo }

Input 2 Logical Graphics Type

captureQuality: string , x ∈ { medium , high , highest }

Quality of the Capture

streamQuality: string , x ∈ { medium , high , highest }

Streaming Quality of the Capture

externalId: string

External system identifiers of the Schedule

"ICT102S12017-RECUR_MON,TUE_0900-1000_ROCKEFELLER_STUDIO_6H"
                                                        
resolvedSections: object[]

CreateSection: object

courseId: string

ID or External ID of the Course to which the Section belongs

"ICT102"
                                                        
termId: string

ID or External ID of the Term to which the Section belongs

"SEM1_2017"
                                                        
sectionNumber: string

Number to uniquely identify each Section

"ICT102_S1_2017"
                                                        
description: string

Optional Description of the current Section

instructorId: string

ID, Email, or External ID of the Instructor by whom the Section will be taught

"Foo.Bar@echo360.com"
                                                        
secondaryInstructorIds: string[]

Array of ID's of the Secondary Instructors for the current Section

string
lmsCourseIds: string[]

Array of Section Identifiers from any External Learning Management System

"[\"ICT102_S1_2017\"]"
                                                        
string
lmsCourses: object[]

Array of Section Identifiers from any External Learning Management System

externalId: string

External system identifier of the Section

"ICT102_S1_2017"
                                                        

CreateUpdateBuilding: object

campusId: string

ID or External of the Campus to which the Building belongs

"NYC"
                                                        
name: string

Name of the Building

"Rockefeller Plaza"
                                                        
externalId: string

External system identifier of the Building

"ROCKEFELLER"
                                                        

CreateUpdateCampus: object

name: string

Name of the Campus

"New York City"
                                                        
timeZone: string

The Time Zone in which the Campus is located. Will default to the Institution's Time Zone if not specified

"US/Eastern"
                                                        
externalId: string

External system identifier of the Campus

"NYC"
                                                        

CreateUpdateCourse: object

organizationId: string

ID or External ID of the Organization to which the Department belongs. Will default to ownership by Institution if left empty.

"FAC_ENGINEERING"
                                                        
departmentId: string

ID or External ID of the Department to which the Course belongs. Will default to ownership by Organization if left empty

"DEPT_CSEE"
                                                        
name: string

Name of the Course

"Introduction to Computer Science"
                                                        
courseIdentifier: string

Institution-specific identifier for the Course

"ICT102"
                                                        
externalId: string

External system identifier of the Course

"ICT102"
                                                        

CreateUpdateDepartment: object

organizationId: string

The ID or External ID of the Organization to which the Department belongs. Will default to ownership by Institution if left empty.

"FAC_ENGINEERING"
                                                        
name: string

Name of the Department

"Dept. of Computer Science & Electrical Engineering"
                                                        
externalId: string

External system identifier of the Department

"DEPT_CSEE"
                                                        

CreateUpdateOrganization: object

name: string

Name of the Organization

"Faculty of Engineering"
                                                        
externalId: string

External system identifier of the Organization

"FAC_ENGINEERING"
                                                        

CreateUpdateRoom: object

buildingId: string

ID or External ID of the Building to which to the Room belongs

"ROCKEFELLER"
                                                        
name: string

Name of the Room

"Rockerfeller Studio 6H"
                                                        
deviceId: string

Device ID to assign this room

externalId: string

External system identifier of the Room

"ROCKEFELLER_STUDIO_6H"
                                                        

CreateUpdateTerm: object

name: string

Name of the Term

"Semester 1 2017"
                                                        
session: DateRange

Object consisting of the Start Date and End Date of the Term

exceptions: object[]

Any Dates within the current Term on which Class will not be held

externalId: string

External system identifier of the Term

"SEM1_2017"
                                                        

CreateUpdateUser: object

email: string

Email address of the User

"Foo.Bar@echo360.com"
                                                        
timeZone: string

The Time Zone in which the User is located

"US/Eastern"
                                                        
firstName: string

First Name of the User

"Foo"
                                                        
lastName: string

Last Name of the User

"Bar"
                                                        
phoneNumber: PhoneNumber

Phone Number of the User. An object containing the Region and Number

"{\"region\": \"US\", \"number\": \"000-867-5309\"}"
                                                        
profileImageUrl: string

URL of the User's Profile Image

roles: string[]

Role(s) of the User within the Institution: Admin, Instructor, Student

"[\"Admin\", \"Instructor\", \"Student\"]"
                                                        
string
ssoId: string

A string that identifies the user to an external identity provider

"fbar+internet2.edu@subdomain.incommon.org"
                                                        
externalId: string

External system identifier of the User

"Foo.Bar@echo360.com"
                                                        

DateRange: object

startDate: string

Start Date of the current Term in ISO 8601 Date format: YYYY-MM-DD

endDate: string

End Date of the current Term in ISO 8601 Date format: YYYY-MM-DD

DateTimeField: object

lenient: boolean
name: string
type: DateTimeFieldType
supported: boolean
durationField: DurationField
minimumValue: integer (int32)
maximumValue: integer (int32)
rangeDurationField: DurationField
leapDurationField: DurationField

DateTimeFieldType: object

name: string
rangeDurationType: DurationFieldType
durationType: DurationFieldType

DateTimeRange: object

start: string , x ∈ { YYYY-MM-DD'T'HH:mm:ss.SSS }

Start Date Time in ISO 8601 Date format: YYYY-MM-DD'T'HH:mm:ss.SSS

"2015-10-05T12:30:00.000"
                                                        
end: string , x ∈ { YYYY-MM-DD'T'HH:mm:ss.SSS }

End Date Time in ISO 8601 Date format: YYYY-MM-DD'T'HH:mm:ss.SSS

"2015-10-05T13:30:00.000"
                                                        

DateTimeZone: object

id: string
fixed: boolean

Department: object

id: string

Unique Identifier of the Department

organizationId: string

The ID of the Organization to which the Department belongs. Will default to ownership by Institution if non-existent.

institutionId: string

ID of the Institution to which the Organization belongs

name: string

Name of the Department returned

courseCount: string

Number of Courses that exist for the current Department

"10"
                                                        
sectionCount: string

Number of Sections that exist for the current Department

"4"
                                                        
externalId: string

External system identifier for the current Department

DeviceAccess: object

protocol: string , x ∈ { http , https }

Protocol

port: integer (int32)

Port number

DurationField: object

name: string
type: DurationFieldType
supported: boolean
precise: boolean
unitMillis: integer (int64)

DurationFieldType: object

name: string

EnrollUser: object

userId: string

ID or Email of the User

role: string , x ∈ { Student , Instructor }

Role(s) of the User within the Institution

ExceptionsDateRange: object

startDate: string

Start Date of the Term Exclusion Date Range in ISO 8601 Date format: YYYY-MM-DD

endDate: string

End Date of the Term Exclusion Date Range in ISO 8601 Date format: YYYY-MM-DD

Hardware1Inputs: object

audioInput: string , x ∈ { rca , balanced , line-in , mic , none }

Audio Input Connector

audioAnalogGain: integer (int32)

Gain value for analog Audio

graphics1DviEnabled: string

Enabled status of DVI Input

graphics1DviGraphicsInput: string , x ∈ { composite , dvi , dvi_a , dvi_d , hdmi , sdi , vga }

Connector for DVI Graphics Input

graphics1DviAspectRatio: string , x ∈ { 4x3 , 16x9 }

Aspect ratio of the DVI input

graphics1DviSourceType: string , x ∈ { video , display }

Type of the DVI Input Source

graphics1CompositeEnabled: boolean

Enabled status of Composite Input

graphics1CompositeStandard: string , x ∈ { ntsc , pal }

Video Standard of the Composite Input

graphics2DviEnabled: string

Enabled status of DVI Input

graphics2DviGraphicsInput: string , x ∈ { composite , dvi , dvi_a , dvi_d , hdmi , sdi , vga }

Connector for DVI Graphics Input

graphics2DviAspectRatio: string , x ∈ { 4x3 , 16x9 }

Aspect ratio of the DVI input

graphics2DviSourceType: string , x ∈ { video , display }

Type of the DVI Input Source

graphics2CompositeEnabled: boolean

Enabled status of Composite Input

graphics2CompositeStandard: string , x ∈ { ntsc , pal }

Video Standard of the Composite Input

Hardware2Inputs: object

audioInput: string , x ∈ { rca , balanced , line-in , mic , none }

Audio Input Connector

audioAnalogGain: integer (int32)

Gain value for analog Audio

graphics1CompositeEnabled: boolean

Enabled status of Composite Input

graphics1CompositeSourceType: string , x ∈ { video , display }

Type of the Composite Input Source

graphics1CompositeStandard: string , x ∈ { ntsc , pal }

Video Standard of the Composite Input

graphics1HdmiEnabled: boolean

Enabled status of the HDMI input

graphics1HdmiSourceType: string , x ∈ { video , display }

Type of the HDMI Input Source

graphics1HdmiAspectRatio: string , x ∈ { 4x3 , 16x9 }

Aspect ratio of the HDMI input

graphics1HdmiMixAudio: boolean

Enabled status of HDMI Mixed Audio

graphics1SdiEnabled: boolean

Enabled status of SDI Input

graphics1SdiSourceType: string , x ∈ { video , display }

Type of the SDI Input Source

graphics1SdiAspectRatio: string , x ∈ { 4x3 , 16x9 }

Aspect ratio of the SDI input

graphics1VgaEnabled: boolean

Enabled status of VGA Input

graphics1VgaSourceType: string , x ∈ { video , display }

Type of the VGA Input Source

graphics1VgaAspectRatio: string , x ∈ { 4x3 , 16x9 }

Aspect ratio of the VGA input

graphics2CompositeEnabled: boolean

Enabled status of Composite Input

graphics2CompositeStandard: string , x ∈ { ntsc , pal }

Video Standard of the Composite Input

graphics2CompositeSourceType: string , x ∈ { video , display }

Type of the Composite Input Source

graphics2HdmiEnabled: boolean

Enabled status of HDMI Input

graphics2HdmiSourceType: string , x ∈ { video , display }

Type of the HDMI Input Source

graphics2HdmiAspectRatio: string , x ∈ { 4x3 , 16x9 }

Aspect ratio of the HDMI input

graphics2HdmiMixAudio: boolean

Enabled status of HDMI Mixed Audio

graphics2SdiEnabled: boolean

Enabled status of SDI Input

graphics2SdiSourceType: string , x ∈ { video , display }

Type of the SDI Input Source

graphics2SdiAspectRatio: string , x ∈ { 4x3 , 16x9 }

Aspect ratio of the SDI input

graphics2VgaEnabled: boolean

Enabled status of VGA Input

graphics2VgaSourceType: string , x ∈ { video , display }

Type of the VGA Input Source

graphics2VgaAspectRatio: string , x ∈ { 4x3 , 16x9 }

Aspect ratio of the VGA input

Hardware3Inputs: object

audioInput: string , x ∈ { rca , balanced , line-in , mic , none }

Audio Input Connector

audioAnalogGain: integer (int32)

Gain value for analog Audio

graphics1HdmiEnabled: boolean

Enabled status of the HDMI Input

graphics1HdmiAspectRatio: string , x ∈ { 4x3 , 16x9 }

Aspect ratio of the HDMI Input

graphics1HdmiSourceType: string , x ∈ { video , display }

Type of the HDMI Input Source

graphics1HdmiMixAudio: boolean

Enabled status of HDMI Mixed Audio

graphics1UsbEnabled: boolean

Enabled status of USB Input

graphics1UsbSourceType: string , x ∈ { video , display }

Type of the USB Input Source

graphics1UsbMixAudio: boolean

Enabled status of USB Mixed Audio

graphics2HdmiEnabled: boolean

Enabled status of the HDMI Input

graphics2HdmiAspectRatio: string , x ∈ { 4x3 , 16x9 }

Aspect ratio of the HDMI Input

graphics2HdmiSourceType: string , x ∈ { video , display }

Type of the HDMI Source

graphics2HdmiMixAudio: boolean

Enabled status of HDMI Mixed Audio

graphics2UsbEnabled: boolean

Enabled status of USB Input

graphics2UsbSourceType: string , x ∈ { video , display }

Type of the USB Input Source

graphics2UsbMixAudio: boolean

Enabled status of USB Mixed Audio

Lesson: object

id: string

Id of the lesson

institutionId: string

Id of the institution

sectionId: string

Id of the section

captureOccurrenceId: string

Id of the capture occurrence

name: string

Name of the lesson

info: string

Info of the lesson

timing: DateTimeRange

Timing of the lesson

timeZone: string

Name of the Time Zone; defaults to the Institution Time Zone if omitted

"US/Eastern"
                                                        
shouldStreamLive: boolean

Should stream live

createdAt: string , x ∈ { YYYY-MM-DD'T'HH:mm:ss.SSS'Z' }

DateTime value for Creation Date

"2015-10-05T15:24:53.496Z"
                                                        
updatedAt: string , x ∈ { YYYY-MM-DD'T'HH:mm:ss.SSS'Z' }

DateTime value for Updated Date

"2015-10-05T15:24:53.496Z"
                                                        

LessonInfo: object

name: string
info: string
timing: DateTimeRange
timeZone: string

LessonMedia: object

lessonId: string

Id of the lesson

publishableMediaId: string

Id of the publishable media

institutionId: string

Id of the institution

termId: string

Id of the term

termName: string

Name of the term

courseId: string

Id of the course

sectionId: string

Id of the section

lessonName: string

Name of the lesson

lessonTiming: DateTimeRange

Time range for the lesson publishable media

timeZone: string

Name of the timeZone

courseName: string

Name of the course

contentAvailability: ContentAvailability

Availability of the content

mediaType: string , x ∈ { presentation , video }

Type of the media

LessonMediaInfo: object

lessonId: string
lessonName: string
lessonTiming: DateTimeRange
sectionId: string
courseId: string
termId: string
isAvailable: boolean
contentAvailability: ContentAvailability

LmsCourseId: object

lmsProfileId: string

ID of the LMS Profile for an External Learning Management System

lmsCourseId: string

Section Identifiers from an External Learning Management System

ltiLinksToSection: boolean

Boolean value for whether this LMS Course links to the Echo360 section home

LmsProfile: object

id: string

Unique Identifier of the LmsProfile

lmsName: string

Name of the Lms

token: Token

Unique Token for LmsProfile

ltiCartridge: string

Lti Catridge for LmsProfile

courseIdField: string

External System Id Ref to Course

ltiEndpoint: string

The Host Url for the LmsProfile

LmsProfileInfo: object

lmsName: string

Name of the Lms

courseIdField: string

External System Id Ref to Course

LmsUser: object

lmsUserId: string

LMS supplied User ID

lmsProfileId: string

ID of the Echo360 LMS Profile for an External Learning Management System

institutionUserId: string

ID of the Echo360 User

firstName: string

Optional LMS supplied User First Name

lastName: string

Optional LMS supplied User Last Name

email: string

Email of the User

role: string

Role of the User

externalUserId: string

External system identifier for the User

LocalDateTime: object

year: integer (int32)
dayOfMonth: integer (int32)
dayOfWeek: integer (int32)
era: integer (int32)
dayOfYear: integer (int32)
monthOfYear: integer (int32)
chronology: Chronology
weekOfWeekyear: integer (int32)
millisOfDay: integer (int32)
hourOfDay: integer (int32)
minuteOfHour: integer (int32)
secondOfMinute: integer (int32)
millisOfSecond: integer (int32)
weekyear: integer (int32)
yearOfEra: integer (int32)
yearOfCentury: integer (int32)
centuryOfEra: integer (int32)
fields: object[]
values: integer[]
integer (int32)
fieldTypes: object[]

LocalUser: object

username: string

Local User credentials username

password: string

Local User credentials password

LtiLinkInfo: object

resourceLinkId: string

Resource Link ID from LMS: resource_link_id

resourceLinkTitle: string

Resource Link Title from LMS: resource_link_title

lmsProfileId: string

ID of Echo360 LMS Profile

contextId: string

Context ID from LMS: context_id

objectId: string

ID of Echo360 object (lesson or section) link is connected to

objectType: string

Type of Link: Section or Lesson

lisOutcomeServiceUrl: string

Outcome Service Url from LMS: lis_outcome_service_url

gradebookMetric: string

Resource Link ID from LMS: resource_link_id

validations: ValidationGroupLtiLinkInfo

MediaWithAvailabilityInfo: object

mediaId: string

Id of the Publishable Media

name: string

Name of the Media

status: string

Name of the Media

userId: string

Id of the User presenting the Media

mediaType: string

Media type of the Media

isPublishable: boolean

Publishable status of the Media

timeZone: string

The Time Zone to which the capture occurrence created the Media

createdAt: string

Date/Time of creating Media

updatedAt: string

Date/Time of updating Media

tags: string[]

Tags associated with the Media

string
captureOccurrenceId: string

Id of the Capture Occurrence for the Media

lessons: object[]

List of Lesson information associated with the Media

shares: object[]

List of Sharing information for the Media

accessLinks: object[]

List of Access Link information for the Media

Network: object

networkType: string , x ∈ { DHCP , IPv4 }

Type of the Network

ipAddress: string

IP Address of the Device on the Network

subnetMask: string

32-bit number to mask the IP address

defaultGateway: string

Node on the Network that can forward packets to other Networks

primaryDns: string

Primary Domain Name System of the Network

secondaryDns: string

Secondary Domain Name System of the Network

primaryTimeServer: string

Primary Time Server of the Network

secondaryTimeServer: string

Secondary Time Server of the Network

wifiEnabled: boolean

WiFi Enabled flag

wifiSsid: string

WiFi SSID Name

wifiPassword: string

WiFi Password

OneTouch: object

deviceType: string

The Type of Capture Device

input1: string , x ∈ { display , video , altvideo }

The Type of the First Input to the One Touch Enabled Capture Device

input2: string , x ∈ { display , video , altvideo }

The Type of the Second Input to the One Touch Enabled Capture Device

quality: string , x ∈ { medium , high }

The Quality chosen for the Capture

Organization: object

id: string

Unique Identifier of the Organization

institutionId: string

ID of the Institution to which the Organization belongs

name: string

Name of the Organization returned

departmentCount: integer (int64)

Number of Departments that exist for the current Organization

courseCount: integer (int64)

Number of Courses that exist for the current Organization

sectionCount: integer (int64)

Number of Sections that exist for the current Organization

externalId: string

External system identifier

PhoneNumber: object

region: string

Region to which the Phone Number is assigned. The Region will be used to look up the International Calling Code

"United Kingdom"
                                                        
number: string

The 10-digit Phone Number

"999-999-9999"
                                                        

ProxyOutbound: object

host: string

Host Address of the Outbound Proxy Server

port: integer (int32)

Port Number of the Outbound Proxy Server

userName: string

User Account to the Outbound Proxy Server

password: string

Password for the User Account

Room: object

id: string

Unique Identifier of the Room

buildingId: string

ID of the Building to which to the Room belongs

institutionId: string

ID of the Institution to which the Building belongs

name: string

Name of the Room returned

roomConfigurationId: string

ID of the Room Configuration. Not Required

deviceSoftwareVersion: string

Current Software Version on the Lecture Capture Device

"5.5.558149484"
                                                        
deviceId: string

ID/MAC address for room's capture device

deviceType: string , x ∈ { PersonalCapture , ProHardwareCapture , ProHardwareCapture2 , ProHardwareCapture3 }

The device type, if applicable

createdAt: string

DateTime value for Creation Date

"YYYY-MM-DD'T'HH:mm:ss.SSS'Z'"
                                                        
updatedAt: string

DateTime value for Updated Date

"YYYY-MM-DD'T'HH:mm:ss.SSS'Z'"
                                                        
externalId: string

External system identifier for the current Room

Schedule: object

id: string

ID of the Schedule

startDate: string

Start date for capture in ISO 8601 Date format: YYYY-MM-DD

"2017-02-01"
                                                        
startTime: string

Start time for the capture (to the minute) in ISO 8601 Time format: HH:MM. The time zone for the schedule's linked room will be used

"09:00"
                                                        
endDate: string

The last date for the capture, in ISO 8601 Date format: YYYY-MM-DD. If this is specified, daysOfWeek must also be provided

"2017-05-31"
                                                        
daysOfWeek: string[]

Days of the week this schedule should capture as 2 letter abbreviations: SU, MO, TU, WE, TH, FR, SA. This is required when endDate is specified

"[\"MO\", \"TU\"]"
                                                        
string
exclusionDates: string[]

Dates within the scheduled period skip recording in ISO 8601 Date format: YYYY-MM-DD. This is unused when no endDate/daysOfWeek is specified

"[\"2017-04-14\", \"2014-04-17\"]"
                                                        
string
durationMinutes: integer (int32)

Duration of each scheduled capture in Minutes

60
                                                        
sectionId: string

ID of the primary (first) Section in which to publish the Capture

sections: object[]

List of the Sections in which to Schedule the Capture

name: string

Name of the Schedule

roomId: string

ID of the Room in which to Schedule the Capture

instructorId: string

ID of the Instructor

guestInstructor: string

Name of any Guest Instructor

shouldCaption: boolean

Boolean value indicating the Capture should be Captioned

shouldAutoPublish: boolean

Boolean value indicating the Capture should be Automatically Published

shouldStreamLive: boolean

Boolean value indicating the Capture should be Streamed Live

input1: string , x ∈ { display , video , altvideo }

Input 1 Logical Graphics Type

input2: string , x ∈ { display , video , altvideo }

Input 2 Logical Graphics Type

captureQuality: string , x ∈ { medium , high , highest }

Quality of the Capture

streamQuality: string , x ∈ { medium , high , highest }

Streaming Quality of the Capture

externalId: string

External system identifiers

Schedule V2: object

institutionId: string

ID of the Institution to which the Schedule belongs

id: string

ID of the Schedule

name: string

Name of the Schedule - Optional

startDate: string

Start date for capture in ISO 8601 Date format: YYYY-MM-DD

"2017-02-01"
                                                        
startTime: string

Start time for the capture (to the minute) in ISO 8601 Time format: HH:MM - The Time Zone obtained from the Campus

"09:00"
                                                        
endTime: string

End time for the capture (to the minute) in ISO 8601 Time format: HH:MM - The Time Zone obtained from the Campus

"10:00"
                                                        
endDate: string

End date for the capture in ISO 8601 Date format: YYYY-MM-DD - Only required for recurring Schedules

"2017-05-31"
                                                        
daysOfWeek: string[]

Days of the week this schedule should capture as 2 letter abbreviations: SU, MO, TU, WE, TH, FR, SA - Only required for recurring Schedules

"[\"MO\", \"TU\"]"
                                                        
string
exclusionDates: string[]

Dates within the scheduled period skip recording in ISO 8601 Date format: YYYY-MM-DD - Only required for recurring Schedules

"[\"2017-04-14\", \"2014-04-17\"]"
                                                        
string
venue: Schedule V2 - ScheduleVenue

The Venue details comprising of Campus, Building, Room details where the Schedule will capture

presenter: Schedule V2 - SchedulePresenter

The Presenter details for the Schedule comprising of User Id and Email

guestPresenter: string

Name of any Guest Presenter without an existing User account

sections: object[]

List of the Section details in which the Capture will be published to

shouldCaption: boolean

Boolean value indicating the Capture should be Captioned; defaults to 'false' if omitted

shouldStreamLive: boolean

Boolean value indicating the Capture should be Streamed Live; defaults to 'false' if omitted

shouldAutoPublish: boolean

Boolean value indicating the Capture has one or more Sections to publish to

shouldRecurCapture: boolean

Boolean value indicating the Capture is recurring between a Start Date and End Date period

input1: string , x ∈ { display , video , altvideo }

Input 1 Logical Graphics Type

input2: string , x ∈ { display , video , altvideo }

Input 2 Logical Graphics Type

captureQuality: string , x ∈ { medium , high , highest }

Quality of the Schedule; defaults to 'high' if omitted

streamQuality: string , x ∈ { medium , high , highest }

Streaming Quality of the Schedule

externalId: string

External ID of the Schedule

Schedule V2 - Create: object

name: string

Name of the Schedule; defaults to 'Untitled' if omitted

startDate: string

Start date for capture in ISO 8601 Date format: YYYY-MM-DD

"2017-02-01"
                                                        
startTime: string

Start time for the capture (to the minute) in ISO 8601 Time format: HH:MM - The Time Zone obtained from the Campus

"09:00"
                                                        
endTime: string

End time for the capture (to the minute) in ISO 8601 Time format: HH:MM - The Time Zone obtained from the Campus

"10:00"
                                                        
endDate: string

End date for the capture in ISO 8601 Date format: YYYY-MM-DD - Only required for recurring Schedules

"2017-05-31"
                                                        
daysOfWeek: string[]

Days of the week this schedule should capture as 2 letter abbreviations: SU, MO, TU, WE, TH, FR, SA - Only required for recurring Schedules

"[\"MO\", \"TU\"]"
                                                        
string
exclusionDates: string[]

Dates within the scheduled period skip recording in ISO 8601 Date format: YYYY-MM-DD - Only required for recurring Schedules

"[\"2017-04-14\", \"2014-04-17\"]"
                                                        
string
venue: Schedule V2 - SetScheduleVenue

The Venue details comprising of Campus, Building, Room details where the Schedule will capture

presenter: Schedule V2 - SetSchedulePresenter

The Presenter details for the Schedule comprising of User Id and Email

guestPresenter: string

Name of any Guest Presenter without an existing User account

sections: object[]

List of the Section details in which the Capture will be published to

shouldCaption: boolean

Boolean value indicating the Capture should be Captioned; defaults to 'false' if omitted

shouldStreamLive: boolean

Boolean value indicating the Capture should be Streamed Live; defaults to 'false' if omitted

input1: string , x ∈ { display , video , altvideo }

Input 1 Logical Graphics Type

input2: string , x ∈ { display , video , altvideo }

Input 2 Logical Graphics Type

captureQuality: string , x ∈ { medium , high , highest }

Quality of the Schedule; defaults to 'high' if omitted

streamQuality: string , x ∈ { medium , high , highest }

Streaming Quality of the Schedule; default to 'high' if omitted and shouldStreamLive is 'true'

externalId: string

External ID of the Schedule

Schedule V2 - ScheduleAvailability: object

availability: string , x ∈ { Immediate , Concrete , Relative , Unavailable }

Availability type

relativeDelay: integer (int64)

Delay in Days from the start of the capture event for relative availability (Only valid for Relative availability)

concreteTime: string (date)

Date to make available for concrete availability (Only valid for Concrete availability)

unavailabilityDelay: integer (int64)

Delay in Days after which to make unavailable for relative availability (Only valid for Relative availability)

Schedule V2 - SchedulePresenter: object

userId: string

ID of the User presenting the Schedule

userEmail: string

Email of the User presenting the Schedule

userFullName: string

Full Name of the User presenting the Schedule

Schedule V2 - ScheduleSection: object

courseId: string

ID of the Course in which to publish the Capture

courseIdentifier: string

Identifier of the Course in which to publish the Capture

termId: string

ID of the Term in which to publish the Capture

termName: string

Name of the Term in which to publish the Capture

sectionId: string

ID of the Section in which to publish the Capture

sectionName: string

Name of the Section in which to publish the Capture

availability: Schedule V2 - ScheduleAvailability

Availability status for students

Schedule V2 - ScheduleVenue: object

campusId: string

ID of the Campus in which to record the Capture

campusName: string

Name of the Campus in which to record the Capture

buildingId: string

ID of the Building in which to record the Capture

buildingName: string

Name of the Building in which to record the Capture

roomId: string

ID of the Room in which to record the Capture

roomName: string

Name of the Room in which to record the Capture

Schedule V2 - SetSchedulePresenter: object

userId: string

ID of the User presenting the Schedule; exclude to clear existing the Schedule Presenter

userEmail: string

Email of the User presenting the Schedule; exclude to clear existing the Schedule Presenter

userExternalId: string

External ID of the User presenting the Schedule; exclude to clear existing the Schedule Presenter

Schedule V2 - SetScheduleSection: object

courseId: string

ID of the Course in which to publish the Capture

courseIdentifier: string

Identifier of the Course in which to publish the Capture

courseExternalId: string

External ID of the Course in which to publish the Capture

termId: string

ID of the Term in which to publish the Capture

termName: string

Name of the Term in which to publish the Capture

termExternalId: string

External ID of the Term in which to publish the Capture

sectionId: string

ID of the Section in which to publish the Capture

sectionName: string

Name of the Section in which to publish the Capture

sectionExternalId: string

External ID of the Section in which to publish the Capture

availability: Schedule V2 - ScheduleAvailability

Availability status for students

Schedule V2 - SetScheduleVenue: object

campusId: string

ID of the Campus in which to record the Capture

campusName: string

Name of the Campus in which to record the Capture

campusExternalId: string

External ID of the Campus in which to record the Capture

buildingId: string

ID of the Building in which to record the Capture

buildingName: string

Name of the Building in which to record the Capture

buildingExternalId: string

External ID of the Building in which to record the Capture

roomId: string

ID of the Room in which to record the Capture

roomName: string

Name of the Room in which to record the Capture

roomExternalId: string

External ID of the Room in which to record the Capture

Schedule V2 - Update: object

name: string

Name of the Schedule; defaults to existing setting if omitted

startDate: string

Start date for capture in ISO 8601 Date format: YYYY-MM-DD; defaults to existing setting if omitted

"2017-02-01"
                                                        
startTime: string

Start time for the capture (to the minute) in ISO 8601 Time format: HH:MM - The Time Zone obtained from the Campus; defaults to existing setting if omitted

"09:00"
                                                        
endTime: string

End time for the capture (to the minute) in ISO 8601 Time format: HH:MM - The Time Zone obtained from the Campus; defaults to existing setting if omitted

"10:00"
                                                        
endDate: string

End date for the capture in ISO 8601 Date format: YYYY-MM-DD - Only required for recurring Schedules; defaults to existing setting if omitted

"2017-05-31"
                                                        
daysOfWeek: string[]

Days of the week this schedule should capture as 2 letter abbreviations: SU, MO, TU, WE, TH, FR, SA - Only required for recurring Schedules; defaults to existing setting if omitted

"[\"MO\", \"TU\"]"
                                                        
string
exclusionDates: string[]

Dates within the scheduled period skip recording in ISO 8601 Date format: YYYY-MM-DD - Only required for recurring Schedules; defaults to existing setting if omitted

"[\"2017-04-14\", \"2014-04-17\"]"
                                                        
string
venue: Schedule V2 - SetScheduleVenue

The Venue details comprising of Campus, Building, Room details where the Schedule will capture; defaults to existing setting if omitted

presenter: Schedule V2 - SetSchedulePresenter

The Presenter details for the Schedule comprising of User Id and Email; defaults to existing setting if omitted

guestPresenter: string

Name of any Guest Presenter without an existing User account; defaults to existing setting if omitted

sections: object[]

List of the Section details in which the Capture will be published to; defaults to existing setting if omitted

shouldCaption: boolean

Boolean value indicating the Capture should be Captioned; defaults to existing setting if omitted

shouldStreamLive: boolean

Boolean value indicating the Capture should be Streamed Live; defaults to existing setting if omitted

input1: string , x ∈ { none , display , video , altvideo }

Input 1 Logical Graphics Type; defaults to existing setting if omitted

input2: string , x ∈ { none , display , video , altvideo }

Input 2 Logical Graphics Type; defaults to existing setting if omitted

captureQuality: string , x ∈ { medium , high , highest }

Quality of the Schedule; defaults to existing setting if omitted

streamQuality: string , x ∈ { medium , high , highest }

Streaming Quality of the Schedule; defaults to existing setting / 'high' if omitted and shouldStreamLive is 'true'

externalId: string

External ID of the Schedule

ScheduleAvailability: object

availability: string , x ∈ { Immediate , Concrete , Relative , Unavailable }

Availability type

relativeDelay: integer (int64)

Delay in Days from the start of the capture event for relative availability (Only valid for Relative availability)

concreteTime: string (date)

Date to make available for concrete availability (Only valid for Concrete availability)

unavailabilityDelay: integer (int64)

Delay in Days after which to make unavailable for relative availability (Only valid for Relative availability)

ScheduleSection: object

sectionId: string

ID of the Section in which to publish the Capture

availability: ScheduleAvailability

Should the Capture be made available to students

Section: object

id: string

Unique Identifier of the Section

institutionId: string

ID of the Institution to which the Section belongs

courseId: string

ID of the Course to which the Section belongs

termId: string

ID of the Term to which the Section belongs

scheduleIds: string[]

Array of ID's of Schedules which belong to the current Section

string
sectionNumber: string

Number to uniquely identify each Section

instructorId: string

Optional ID of the Instructor by whom the Section will be taught

description: string

Optional Description of the current Section

lessonCount: integer (int64)

Deprecated - Number of Lessons that exist for the current Section

15
                                                        
instructorCount: integer (int64)

Number of Instructors that exist for the current Section

30
                                                        
studentCount: integer (int64)

Number of Students that exist for the current Section

30
                                                        
secondaryInstructorIds: string[]

Array of ID's of the Secondary Instructors for the current Section

string
lmsCourseIds: string[]

Array of Section Identifiers from any External Learning Management System

string
lmsCourses: object[]

Array of Section Identifiers from any External Learning Management System

externalId: string

External system identifier for the current Section

ShareInfo: object

userId: string
institutionId: string
email: string
fullName: string

SoftwareInputs: object

audioName: string

Name of the Audio Input

audioIndex: integer (int32)

Index of the Audio Input

audioEnabled: boolean

Enabled status of the Audio Input

displayName: string

Name of the Display Input

displayIndex: integer (int32)

Index of the Display Input

displayEnabled: boolean

Enabled status of the Display Input

videoName: string

Name of the Video Input

videoIndex: integer (int32)

Index of the Video Input

videoEnabled: boolean

Enabled status of the Video Input

altVideoName: string

Name of the Alternative Video Input Configuration

altVideoIndex: integer (int32)

Index of the Alternative Video Input

altVideoEnabled: boolean

Enabled status of the Alternative Video Input

Term: object

id: string

Unique Identifier of the Term

institutionId: string

ID of the Institution to which the Term belongs

name: string

Name of the Term returned

session: DateRange

Object consisting of the Start Date and End Date of the Term

exceptions: object[]

Any Dates within the current Term on which Class will not be held

sectionCount: integer (int64)

Number of Sections that exist for the current Term

externalId: string

External system identifier for the current Term

Token: object

sharedSecret: string
consumerKey: string

UpdateExternalId: object

externalId: string

List of external Id for this object, can be empty

UpdateScheduleDeviceOptions: object

roomId: string

ID of the Room in which to Schedule the Capture

input1: string , x ∈ { display , video , altvideo }

Input for this schedule

input2: string , x ∈ { display , video , altvideo }

Optional secondary input for this schedule

captureQuality: string , x ∈ { medium , high , highest }

The capture quality for this schedule

streamQuality: string , x ∈ { medium , high , highest }

The (optional) quality for the live stream, if it differs from captureQuality

UpdateScheduleFlags: object

shouldCaption: boolean

Boolean value indicating the Capture should be Captioned

shouldStreamLive: boolean

Boolean value indicating the Capture should be Streamed Live

UpdateScheduleInstructors: object

instructorId: string

ID or Email of the Instructor

guestInstructor: string

Name of any Guest Instructor

UpdateScheduleName: object

name: string

Name of the Schedule

UpdateScheduleSection: object

sectionId: string

ID of the Section with which to update the Schedule

sections: object[]

List of the Sections in which to Schedule the Capture

resolvedSections: object[]

UpdateScheduleTimes: object

startDate: string

Start date for capture in ISO 8601 Date format: YYYY-MM-DD

"2017-02-01"
                                                        
startTime: string

Start time for the capture (to the minute) in ISO 8601 Time format: HH:MM. The time zone for the schedule's linked room will be used

"09:00"
                                                        
endDate: string

The last date for the capture, in ISO 8601 Date format: YYYY-MM-DD. If this is specified, daysOfWeek must also be provided

"2017-05-31"
                                                        
daysOfWeek: string[]

Days of the week this schedule should capture as 2 letter abbreviations. This is required when endDate is specified

string
exclusionDates: string[]

Dates within the scheduled period skip recording in ISO 8601 Date format: YYYY-MM-DD

"[\"2017-04-14\", \"2014-04-17\"]"
                                                        
string
durationMinutes: integer (int32)

Duration of each scheduled capture in Minutes

60
                                                        

UpdateSection: object

sectionNumber: string

Number to uniquely identify each Section

"ICT102_S1_2017"
                                                        
description: string

Optional Description of the current Section

"First year introductory unit to object-orientated and functional programming"
                                                        
instructorId: string

ID, Email, or External ID of the Instructor by whom the Section will be taught

"Foo.Bar@echo360.com"
                                                        
externalId: string

External system identifier of the Section

"ICT102_S1_2017"
                                                        

UpdateSectionInstructors: object

secondaryInstructorIds: string[]

Array of ID's of the Secondary Instructors for the current Section

string

UpdateSectionLmsCourses: object

lmsCourseIds: string[]

Set of Section Identifiers from any External Learning Management System. Required if lmsCourses is left blank

string
lmsCourses: object[]

Array of Section Identifiers from any External Learning Management System. Required if lmsCourseIds is left blank

validations: ValidationGroupUpdateSectionLmsCourses

User: object

id: string

Unique Identifier of the User

institutionId: string

ID of the Institution to which the User belongs

email: string

Email address of the User

"Foo.Bar@echo360.com"
                                                        
timeZone: string

The Time Zone in which the User is located

"US/Eastern"
                                                        
timeZoneOffsetMinutes: integer (int32)

Offset in minutes to add to UTC to get the local time

-120
                                                        
firstName: string

First Name of the User. May be blank if the User has not yet accepted the invitation Email

"Foo"
                                                        
lastName: string

Last Name of the User. May be blank if the User has not yet accepted the invitation Email

"Bar"
                                                        
status: string

Status of the User.

"Invited"
                                                        
phoneNumber: PhoneNumber

Phone Number of the User. An object containing the Region and Number

"{\"region\": \"US\", \"number\": \"000-867-5309\"}"
                                                        
profileImageUrl: string

URL of the User's Profile Image

roles: string[]

Role(s) of the User within the Institution: Admin, Instructor, Student

"[\"Admin\", \"Instructor\", \"Student\"]"
                                                        
string
ssoId: string

A string that identifies the user to an external identity provider

"fbar+internet2.edu@subdomain.incommon.org"
                                                        
externalId: string

External system identifier for the current User

"Foo.Bar@echo360.com"
                                                        

UserEnrollment: object

userId: string

ID of the User

sectionId: string

ID of the Section

role: string , x ∈ { instructor , student }

Role of the User within the Institution

institutionId: string

ID of the Institution

courseId: string

ID of the Course

termId: string

ID of the Term

UserSectionRole: object

role: string

Either "Student" or "Instructor"

ValidationGroupDateTimeRange: object

ValidationGroupLtiLinkInfo: object

ValidationGroupUpdateSectionLmsCourses: object

ValidatorDateTimeRange: object

ValidatorLtiLinkInfo: object

ValidatorUpdateSectionLmsCourses: object