openapi: 3.0.3
info:
title: TMS API
description: |
# Introduction
Welcome to Skillable Connect: TMS Edition, our core platform for managing your users, scheduling training to consume content, managing course assignments and subscriptions.
## Authenticate with API Key
Skillable APIs offer one form of authentication: an API Key. All methods require an API Key, which must be obtained from a Skillable team member working with your organization. Our systems use this key to validate your development account.
Pass your API Key as an HTTP request header with the header name "api_key".
termsOfService: 'https://skillable.com/terms-and-conditions/'
contact:
name: Skillable Support
url: 'https://skillable.com/customer-support/'
email: support@skillable.com
x-logo:
url: 'https://raw.githubusercontent.com/LearnOnDemandSystems/ConnectAPI/main/Skillable%20Connect%20Logo.svg'
altText: Skillable Connect
license:
name: Apache 2.0
url: 'http://www.apache.org/licenses/LICENSE-2.0.html'
version: 2.0.0
servers:
- url: 'https://lms.learnondemand.net/api/2.0'
description: Skillable Connect TMS API
security:
- api_key: []
tags:
- name: Class Enrollment Management
description: |-
Classes represent an instance of a course delivered as an instructor led event. Class enrollments define the connection of a user and the class the user will be part of. The Class Enrollment Management API allows the following tasks to be completed:
* [Create Class Enrollments for a user](https://connect.skillable.com/tms/operation/CreateClassEnrollment/)
* [Update Class Enrollments for a user](https://connect.skillable.com/tms/operation/UpdateClassEnrollment/)
* [Search for Class Enrollments for a user](https://connect.skillable.com/tms/operation/SearchClassEnrollments/)
* [Delete Class Enrollments for a user](https://connect.skillable.com/tms/operation/DeleteClassEnrollment/)
* [Retrieve specific details for Class Enrollments](https://connect.skillable.com/tms/operation/GetClassEnrollment/)
* [Retrieve Custom Fields for Class Enrollments](https://connect.skillable.com/tms/operation/GetClassEnrollmentCustomFields/)
* [Retrieve specific Custom Field values for a Class Enrollments](https://connect.skillable.com/tms/operation/GetClassEnrollmentCustomFieldValues/)
* [Update a specific Custom Field value for Class Enrollments](https://connect.skillable.com/tms/operation/UpdateClassEnrollmentCustomFieldValue/)
- name: Class Management
description: 'The Class Management group of API command allows for the creation, management and finding of scheduled classes within the Skillable TMS. Classes can be found by using Class ID''s as well as the training key associated with a class.'
- name: Company Management
description: |-
Company Management allows you to register your customers as companies. The use of companies enables you to store contact information for your customers. This information can be connected to users within the TMS, then reports can return user activity from a specific company.
* [Create a Company](https://connect.skillable.com/tms/operation/CreateCompany/)
* [Update a Company by Id](https://connect.skillable.com/tms/operation/UpdateCompany/)
* [Search for Companies](https://connect.skillable.com/tms/operation/SearchCompanies/)
* [Delete a Company by Id](https://connect.skillable.com/tms/operation/DeleteCompany/)
* [Retrieve a specific Company](https://connect.skillable.com/tms/operation/GetCompany/)
- name: Course Assignment Management
description: |-
Course Assignments are instances of a course being used for self-study purposes, and not connected with an Instructor or a class. The Course Assignment Management API group of commands allows the following capabilities:
* [Create Course Assignments for a user](https://connect.skillable.com/tms/operation/CreateCourseAssignment/)
* [Update Course Assignments for a user](https://connect.skillable.com/tms/operation/UpdateCourseAssignment/)
* [Search for Course Assignments for a user](https://connect.skillable.com/tms/operation/SearchCourseAssignments/)
* [Delete Course Assignments for a user](https://connect.skillable.com/tms/operation/DeleteCourseAssignment/)
* [Retrieve specific details for Course Assignments](https://connect.skillable.com/tms/operation/GetCourseAssignment/)
- name: Course Management
description: 'Courses in the TMS represent a related set of learning activities that create a single learning journey. The Course Management API commands allow for the searching of courses, which will be required when creating classes and/or subscriptions as well as being able to return any collected course feedback.'
- name: Lab Instance Management
description: |-
The Lab Instance Management group of API commands allows interacting with lab instances. This includes but is not limited to the following actions:
* [Find Lab Instances](https://connect.skillable.com/tms/operation/SearchLabInstances/) (Lab Instances represent individual Lab launches against the LOD platform)
* [Retrieve information about lab instances](https://connect.skillable.com/tms/operation/GetLabInstanceDetails/)
- name: Organization Management
description: 'Organizations within the TMS provide the ability to separate content and access between different customers. For most customers there is little need for Organization Management using the API. However, for large content providers Organization Management can be vital. The Organization Management of the TMS allows for the query, creation, modification, and deletion of Organizations.'
- name: Searching
description: |-
The Searching API comand group provides commands for the following scenarios:
* [To search the TMS Course Catalog Search history](https://connect.skillable.com/tms/operation/SearchCourseCatalogSearchHistory/)
* [Search for launched activities external to LOD](https://connect.skillable.com/tms/operation/SearchCourseExternalActivityLaunches/) (e.g. Video, documents, SCORM, etc)
- name: Subscription Management
description: |-
Subscriptions (previously known as Clubs), are mostly used for the assignment of self-study learning. The Subscription Management section allows the creation and management of these subscription assignments to users. The functions are grouped into the areas of:
* [Creations of Subscription Assignments](https://connect.skillable.com/tms/operation/CreateClubMembership/)
* [Searching for Subscriptions Assignments](https://connect.skillable.com/tms/operation/SearchClubMemberships/)
* [Modify a Subscriptions Assignments](https://connect.skillable.com/tms/operation/UpdateClubMembership/)
* [Delete a Subscriptions Assignments](https://connect.skillable.com/tms/operation/DeleteClubMembership/)
- name: Survey Management
description: Survey Management allows the retrival of all survey responses for a specific course.
- name: User Management
description: |-
The User Management API commands are used to administer all types of user accounts within the TMS. This includes but is not limited to the following actions:
* [Create user accounts](https://connect.skillable.com/tms/operation/CreateUser/)
* [Modify user accounts](https://connect.skillable.com/tms/operation/UpdateUser/)
* [Closure and deletion of user accounts](https://connect.skillable.com/tms/operation/DeleteUser/)
* [Retrieve user accounts properties](https://connect.skillable.com/tms/operation/GetUser/)
* [Query user activity](https://connect.skillable.com/tms/operation/SearchUserActivity/)
paths:
'/GetUser/{id}':
get:
tags:
- User Management
summary: Retrieve user information by id
description: Allows you to get information about a user (user object) with the given ID.
operationId: GetUser
parameters:
- name: id
in: path
description: The ID of the user to retrieve
required: true
style: simple
explode: true
schema:
type: integer
format: int32
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/UserResponse'
deprecated: false
/GetUserByEmail:
get:
tags:
- User Management
summary: Retrieve user information by email address
description: Allows you to get information about a user with the given primary email address.
operationId: GetUserByEmail
parameters:
- name: email
in: query
description: The primary email address of the user to retrieve.
required: true
style: form
explode: true
schema:
type: string
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/UserResponse'
deprecated: false
'/GetUserByExternalId/{id}':
get:
tags:
- User Management
summary: Retrieve user information using an external platform id
description: Allows you to get information about a user with the given ExternalID. The external ID is a unique identifier from your external system.
operationId: GetUserByExternalId
parameters:
- name: id
in: path
description: The external ID of the user to retrieve.
required: true
style: simple
explode: true
schema:
type: string
example: C9876ZFGEFER9876
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/UserResponse'
deprecated: false
/CreateUser:
get:
tags:
- User Management
summary: Create a user
description: Allows you to create a user.
operationId: CreateUser
parameters:
- name: userName
in: query
description: 'The user''s username (used during sign-in). Email address can be used as long as it is unique within the system. Note: even if the user will be using an external authentication provider, the username/password properties should still be provided.'
required: true
style: form
explode: true
schema:
type: string
example: john.smith
- name: password
in: query
description: 'The user''s password (used during sign-in). Note: even if the user will be using an external authentication provider, the username/password properties should still be provided. The user will be prompted to reset their password on the next sign in.'
required: true
style: form
explode: true
schema:
type: string
- name: email
in: query
description: The user's e-mail address
required: true
style: form
explode: true
schema:
type: string
- name: firstName
in: query
description: The user's first name
required: true
style: form
explode: true
schema:
type: string
- name: lastName
in: query
description: The user's last name
required: true
style: form
explode: true
schema:
type: string
- name: organizationId
in: query
description: 'The unique identifier of the organization the user belongs to. This can be the organization that corresponds to your API key, or a child organization.'
required: true
style: form
explode: true
schema:
type: integer
format: int32
example: 12345678
- name: externalId
in: query
description: 'The user''s external ID, usually a unique identifier from the calling system'
required: false
style: form
explode: true
schema:
type: string
- name: middleName
in: query
description: The user's middle name
required: false
style: form
explode: true
schema:
type: string
- name: title
in: query
description: The user's title.
required: false
style: form
explode: true
schema:
type: string
- name: companyId
in: query
description: The Id of the user's company (set only if the user belongs to a company).
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 12345678
- name: managerId
in: query
description: The user Id of the user's manager (set only if the user belongs to a manager).
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 12345678
- name: disabled
in: query
description: Indicates whether the user account has been disabled.
required: false
style: form
explode: true
schema:
type: boolean
example: false
- name: phone
in: query
description: The user's phone number.
required: false
style: form
explode: true
schema:
type: string
- name: phone2
in: query
description: The user's secondary phone number.
required: false
style: form
explode: true
schema:
type: string
- name: address1
in: query
description: First line of the user's address.
required: false
style: form
explode: true
schema:
type: string
- name: address2
in: query
description: Second line of the user's address
required: false
style: form
explode: true
schema:
type: string
- name: city
in: query
description: The user's city.
required: false
style: form
explode: true
schema:
type: string
- name: state
in: query
description: The user's state.
required: false
style: form
explode: true
schema:
type: string
- name: country
in: query
description: The user's country. The CountryCode field will override this value if both are provided.
required: false
style: form
explode: true
schema:
type: string
deprecated: true
- name: countryCode
in: query
description: "The input field, **Country**, has been *deprecated* in favor of **CountryCode**. If the **Country** field is provided but the **CountryCode** field is not then **CountryCode** will be defaulted to **OT - Other**. \nThe **CountryCode** field is a 2-character code for the user's country. \n\n**Allowed values** \n\n OT Other - The **Country** field must be provided \n AF\tAfghanistan \n AX\tÅland Islands \n AL\tAlbania \n DZ\tAlgeria \n AS\tAmerican Samoa \n AD\tAndorra \n AO\tAngola \n AI\tAnguilla \n AG\tAntigua and Barbuda \n AR\tArgentina \n AM\tArmenia \n AW\tAruba \n AU\tAustralia \n AT\tAustria \n AZ\tAzerbaijan \n BS\tBahamas \n BH\tBahrain \n BD\tBangladesh \n BB\tBarbados \n BY\tBelarus \n BE\tBelgium \n BZ\tBelize \n BJ\tBenin \n BM\tBermuda \n BT\tBhutan \n BO\tBolivia \n BQ\tBonaire, Sint Eustatius and Saba \n BA\tBosnia and Herzegovina \n BW\tBotswana \n BR\tBrazil \n IO\tBritish Indian Ocean Territory \n VG\tBritish Virgin Islands \n BN\tBrunei \n BG\tBulgaria \n BF\tBurkina Faso \n BI\tBurundi \n CV\tCabo Verde \n KH\tCambodia \n CM\tCameroon \n CA\tCanada \n KY\tCayman Islands \n CF\tCentral African Republic \n TD\tChad \n CL\tChile \n CN\tChina \n CX\tChristmas Island \n CC\tCocos (Keeling) Islands \n CO\tColombia \n KM\tComoros \n CG\tCongo \n CD\tCongo (DRC) \n CK\tCook Islands \n CR\tCosta Rica \n CI\tCôte d’Ivoire \n HR\tCroatia \n CU\tCuba \n CW\tCuraçao \n CY\tCyprus \n CZ\tCzech Republic \n DK\tDenmark \n DJ\tDjibouti \n DM\tDominica \n DO\tDominican Republic \n EC\tEcuador \n EG\tEgypt \n SV\tEl Salvador \n GQ\tEquatorial Guinea \n ER\tEritrea \n EE\tEstonia \n ET\tEthiopia \n FK\tFalkland Islands \n FO\tFaroe Islands \n FJ\tFiji \n FI\tFinland \n FR\tFrance \n GF\tFrench Guiana \n PF\tFrench Polynesia \n GA\tGabon \n GM\tGambia \n GE\tGeorgia \n DE\tGermany \n GH\tGhana \n GI\tGibraltar \n GR\tGreece \n GL\tGreenland \n GD\tGrenada \n GP\tGuadeloupe \n GU\tGuam \n GT\tGuatemala \n GG\tGuernsey \n GN\tGuinea \n GW\tGuinea-Bissau \n GY\tGuyana \n HT\tHaiti \n HN\tHonduras \n HK\tHong Kong SAR \n HU\tHungary \n IS\tIceland \n IN\tIndia \n ID\tIndonesia \n IR\tIran \n IQ\tIraq \n IE\tIreland \n IM\tIsle of Man \n IL\tIsrael \n IT\tItaly \n JM\tJamaica \n JP\tJapan \n JE\tJersey \n JO\tJordan \n KZ\tKazakhstan \n KE\tKenya \n KI\tKiribati \n KR\tKorea \n XK\tKosovo \n KW\tKuwait \n KG\tKyrgyzstan \n LA\tLaos \n LV\tLatvia \n LB\tLebanon \n LS\tLesotho \n LR\tLiberia \n LY\tLibya \n LI\tLiechtenstein \n LT\tLithuania \n LU\tLuxembourg \n MO\tMacao SAR \n MK\tMacedonia, FYRO \n MG\tMadagascar \n MW\tMalawi \n MY\tMalaysia \n MV\tMaldives \n ML\tMali \n MT\tMalta \n MH\tMarshall Islands \n MQ\tMartinique \n MR\tMauritania \n MU\tMauritius \n YT\tMayotte \n MX\tMexico \n FM\tMicronesia \n MD\tMoldova \n MC\tMonaco \n MN\tMongolia \n ME\tMontenegro \n MS\tMontserrat \n MA\tMorocco \n MZ\tMozambique \n MM\tMyanmar \n NA\tNamibia \n NR\tNauru \n NP\tNepal \n NL\tNetherlands \n NC\tNew Caledonia \n NZ\tNew Zealand \n NI\tNicaragua \n NE\tNiger \n NG\tNigeria \n NU\tNiue \n NF\tNorfolk Island \n KP\tNorth Korea \n MP\tNorthern Mariana Islands \n NO\tNorway \n OM\tOman \n PK\tPakistan \n PW\tPalau \n PS\tPalestinian Authority \n PA\tPanama \n PG\tPapua New Guinea \n PY\tParaguay \n PE\tPeru \n PH\tPhilippines \n PN\tPitcairn Islands \n PL\tPoland \n PT\tPortugal \n PR\tPuerto Rico \n QA\tQatar \n RE\tRéunion \n RO\tRomania \n RU\tRussia \n RW\tRwanda \n BL\tSaint Barthélemy \n KN\tSaint Kitts and Nevis \n LC\tSaint Lucia \n MF\tSaint Martin \n PM\tSaint Pierre and Miquelon \n VC\tSaint Vincent and the Grenadines \n WS\tSamoa \n SM\tSan Marino \n ST\tSão Tomé and Príncipe \n SA\tSaudi Arabia \n SN\tSenegal \n RS\tSerbia \n SC\tSeychelles \n SL\tSierra Leone \n SG\tSingapore \n SX\tSint Maarten \n SK\tSlovakia \n SI\tSlovenia \n SB\tSolomon Islands \n SO\tSomalia \n ZA\tSouth Africa \n SS\tSouth Sudan \n ES\tSpain \n LK\tSri Lanka \n SH\tSt Helena, Ascension, Tristan da Cunha \n SD\tSudan \n SR\tSuriname \n SJ\tSvalbard and Jan Mayen \n SZ\tSwaziland \n SE\tSweden \n CH\tSwitzerland \n SY\tSyria \n TW\tTaiwan \n TJ\tTajikistan \n TZ\tTanzania \n TH\tThailand \n TL\tTimor-Leste \n TG\tTogo \n TK\tTokelau \n TO\tTonga \n TT\tTrinidad and Tobago \n TN\tTunisia \n TR\tTurkey \n TM\tTurkmenistan \n TC\tTurks and Caicos Islands \n TV\tTuvalu \n UM\tU.S. Outlying Islands \n VI\tU.S. Virgin Islands \n UG\tUganda \n UA\tUkraine \n AE\tUnited Arab Emirates \n GB\tUnited Kingdom \n US\tUnited States \n UY\tUruguay \n UZ\tUzbekistan \n VU\tVanuatu \n VE\tVenezuela \n VN\tVietnam \n WF\tWallis and Futuna \n YE\tYemen \n ZM\tZambia \n ZW\tZimbabwe\n"
required: false
style: form
explode: true
schema:
type: string
- name: zip
in: query
description: The user's zip/postal code.
required: false
style: form
explode: true
schema:
type: string
- name: profileImageUrl
in: query
description: URL to the user's profile image.
required: false
style: form
explode: true
schema:
type: string
- name: timeZoneId
in: query
description: |-
The time zone for the data object. If not specified, the timezone of the organization will be used.
**Allowed values**
Afghanistan Standard Time
Alaskan Standard Time
Aleutian Standard Time
Altai Standard Time
Arab Standard Time
Arabian Standard Time
Arabic Standard Time
Argentina Standard Time
Astrakhan Standard Time
Atlantic Standard Time
AUS Central Standard Time
Aus Central W. Standard Time
AUS Eastern Standard Time
Azerbaijan Standard Time
Azores Standard Time
Bahia Standard Time
Bangladesh Standard Time
Belarus Standard Time
Bougainville Standard Time
Canada Central Standard Time
Cape Verde Standard Time
Caucasus Standard Time
Cen. Australia Standard Time
Central America Standard Time
Central Asia Standard Time
Central Brazilian Standard Time
Central Europe Standard Time
Central European Standard Time
Central Pacific Standard Time
Central Standard Time
Central Standard Time (Mexico)
Chatham Islands Standard Time
China Standard Time
Cuba Standard Time
Dateline Standard Time
E. Africa Standard Time
E. Australia Standard Time
E. Europe Standard Time
E. South America Standard Time
Easter Island Standard Time
Eastern Standard Time
Eastern Standard Time (Mexico)
Egypt Standard Time
Ekaterinburg Standard Time
Fiji Standard Time
FLE Standard Time
Georgian Standard Time
GMT Standard Time
Greenland Standard Time
Greenwich Standard Time
GTB Standard Time
Haiti Standard Time
Hawaiian Standard Time
India Standard Time
Iran Standard Time
Israel Standard Time
Jordan Standard Time
Kaliningrad Standard Time
Kamchatka Standard Time
Korea Standard Time
Libya Standard Time
Line Islands Standard Time
Lord Howe Standard Time
Magadan Standard Time
Magallanes Standard Time
Marquesas Standard Time
Mauritius Standard Time
Mid-Atlantic Standard Time
Middle East Standard Time
Montevideo Standard Time
Morocco Standard Time
Mountain Standard Time
Mountain Standard Time (Mexico)
Myanmar Standard Time
N. Central Asia Standard Time
Namibia Standard Time
Nepal Standard Time
New Zealand Standard Time
Newfoundland Standard Time
Norfolk Standard Time
North Asia East Standard Time
North Asia Standard Time
North Korea Standard Time
Omsk Standard Time
Pacific SA Standard Time
Pacific Standard Time
Pacific Standard Time (Mexico)
Pakistan Standard Time
Paraguay Standard Time
Qyzylorda Standard Time
Romance Standard Time
Russia Time Zone 10
Russia Time Zone 11
Russia Time Zone 3
Russian Standard Time
SA Eastern Standard Time
SA Pacific Standard Time
SA Western Standard Time
Saint Pierre Standard Time
Sakhalin Standard Time
Samoa Standard Time
Sao Tome Standard Time
Saratov Standard Time
SE Asia Standard Time
Singapore Standard Time
South Africa Standard Time
South Sudan Standard Time
Sri Lanka Standard Time
Sudan Standard Time
Syria Standard Time
Taipei Standard Time
Tasmania Standard Time
Tocantins Standard Time
Tokyo Standard Time
Tomsk Standard Time
Tonga Standard Time
Transbaikal Standard Time
Turkey Standard Time
Turks And Caicos Standard Time
Ulaanbaatar Standard Time
US Eastern Standard Time
US Mountain Standard Time
UTC
UTC+12
UTC+13
UTC-02
UTC-08
UTC-09
UTC-11
Venezuela Standard Time
Vladivostok Standard Time
Volgograd Standard Time
W. Australia Standard Time
W. Central Africa Standard Time
W. Europe Standard Time
W. Mongolia Standard Time
West Asia Standard Time
West Bank Standard Time
West Pacific Standard Time
Yakutsk Standard Time
Yukon Standard Time
required: false
style: form
explode: true
schema:
type: string
- name: roleId
in: query
description: 'An identifier for the role the user should belong to. You can provide multiple instances of this parameter to add the user to multiple roles. For example: roleId=0&roleId=2&roleId=20. You can discover roles available to your API integration by using the GetUserRoles command.'
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 12345678
- name: managedOrganizationId
in: query
description: 'An identifier for the organization the user should have management rights for. You can provide multiple instances of this parameter if the user should have management rights over multiple organizations. For example: managedOrganizationId=30&managedOrganizationId=45&managedOrganizationId=78. All managed organizations must belong to the API caller''s organization or one of its children.'
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 12345678
- name: enableGeneralNotifications
in: query
description: An optional parameter to allow the sending of general notifications to the user.
required: false
style: form
explode: true
schema:
type: boolean
- name: forcePasswordChange
in: query
description: An optional parameter to force the user to change their password on the next login
required: false
style: form
explode: true
schema:
type: boolean
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/CreateResponse'
deprecated: false
'/DeleteUser/{id}':
get:
tags:
- User Management
summary: Delete a user by id
description: Allows you to delete a user.
operationId: DeleteUser
parameters:
- name: id
in: path
description: The user's ID
required: true
style: simple
explode: true
schema:
type: integer
format: int32
example: 57383
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/ApiResponse'
deprecated: false
/UpdateUser:
get:
tags:
- User Management
summary: Update a user by id
description: Allows you to update a user
operationId: UpdateUser
parameters:
- name: id
in: query
description: The user's ID.
required: true
style: form
explode: true
schema:
type: integer
format: int32
example: 4873
- name: userName
in: query
description: 'The user''s username (used during sign-in). Email address can be used as long as it is unique within the system. Note: even if the user will be using an external authentication provider, the username/password properties should still be provided.'
required: true
style: form
explode: true
schema:
type: string
- name: email
in: query
description: The user's e-mail address
required: true
style: form
explode: true
schema:
type: string
- name: firstName
in: query
description: The user's first name
required: true
style: form
explode: true
schema:
type: string
- name: lastName
in: query
description: The user's last name
required: true
style: form
explode: true
schema:
type: string
- name: organizationId
in: query
description: 'The unique identifier of the organization the user belongs to. This can be the organization that corresponds to your API key, or a child organization.'
required: true
style: form
explode: true
schema:
type: integer
format: int32
example: 12345678
- name: externalId
in: query
description: 'The user''s external ID, usually a unique identifier from the calling system'
required: false
style: form
explode: true
schema:
type: string
- name: middleName
in: query
description: The user's middle name
required: false
style: form
explode: true
schema:
type: string
- name: title
in: query
description: The user's title.
required: false
style: form
explode: true
schema:
type: string
- name: companyId
in: query
description: The Id of the user's company (set only if the user belongs to a company).
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 12345678
- name: managerId
in: query
description: The user Id of the user's manager (set only if the user belongs to a manager).
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 12345678
- name: disabled
in: query
description: Indicates whether the user account has been disabled.
required: false
style: form
explode: true
schema:
type: boolean
- name: phone
in: query
description: The user's phone number.
required: false
style: form
explode: true
schema:
type: string
- name: phone2
in: query
description: The user's secondary phone number.
required: false
style: form
explode: true
schema:
type: string
- name: address1
in: query
description: First line of the user's address.
required: false
style: form
explode: true
schema:
type: string
- name: address2
in: query
description: Second line of the user's address
required: false
style: form
explode: true
schema:
type: string
- name: city
in: query
description: The user's city.
required: false
style: form
explode: true
schema:
type: string
- name: state
in: query
description: The user's state.
required: false
style: form
explode: true
schema:
type: string
- name: country
in: query
description: The user's country. The CountryCode field will override this value if both are provided.
required: false
style: form
explode: true
schema:
type: string
deprecated: true
- name: countryCode
in: query
description: "The input field, **Country**, has been *deprecated* in favor of **CountryCode**. If the **Country** field is provided but the **CountryCode** field is not then **CountryCode** will be defaulted to **OT - Other**. \nThe **CountryCode** field is a 2-character code for the user's country. \n\n**Allowed values** \n\n OT Other - The **Country** field must be provided \n AF\tAfghanistan \n AX\tÅland Islands \n AL\tAlbania \n DZ\tAlgeria \n AS\tAmerican Samoa \n AD\tAndorra \n AO\tAngola \n AI\tAnguilla \n AG\tAntigua and Barbuda \n AR\tArgentina \n AM\tArmenia \n AW\tAruba \n AU\tAustralia \n AT\tAustria \n AZ\tAzerbaijan \n BS\tBahamas \n BH\tBahrain \n BD\tBangladesh \n BB\tBarbados \n BY\tBelarus \n BE\tBelgium \n BZ\tBelize \n BJ\tBenin \n BM\tBermuda \n BT\tBhutan \n BO\tBolivia \n BQ\tBonaire, Sint Eustatius and Saba \n BA\tBosnia and Herzegovina \n BW\tBotswana \n BR\tBrazil \n IO\tBritish Indian Ocean Territory \n VG\tBritish Virgin Islands \n BN\tBrunei \n BG\tBulgaria \n BF\tBurkina Faso \n BI\tBurundi \n CV\tCabo Verde \n KH\tCambodia \n CM\tCameroon \n CA\tCanada \n KY\tCayman Islands \n CF\tCentral African Republic \n TD\tChad \n CL\tChile \n CN\tChina \n CX\tChristmas Island \n CC\tCocos (Keeling) Islands \n CO\tColombia \n KM\tComoros \n CG\tCongo \n CD\tCongo (DRC) \n CK\tCook Islands \n CR\tCosta Rica \n CI\tCôte d’Ivoire \n HR\tCroatia \n CU\tCuba \n CW\tCuraçao \n CY\tCyprus \n CZ\tCzech Republic \n DK\tDenmark \n DJ\tDjibouti \n DM\tDominica \n DO\tDominican Republic \n EC\tEcuador \n EG\tEgypt \n SV\tEl Salvador \n GQ\tEquatorial Guinea \n ER\tEritrea \n EE\tEstonia \n ET\tEthiopia \n FK\tFalkland Islands \n FO\tFaroe Islands \n FJ\tFiji \n FI\tFinland \n FR\tFrance \n GF\tFrench Guiana \n PF\tFrench Polynesia \n GA\tGabon \n GM\tGambia \n GE\tGeorgia \n DE\tGermany \n GH\tGhana \n GI\tGibraltar \n GR\tGreece \n GL\tGreenland \n GD\tGrenada \n GP\tGuadeloupe \n GU\tGuam \n GT\tGuatemala \n GG\tGuernsey \n GN\tGuinea \n GW\tGuinea-Bissau \n GY\tGuyana \n HT\tHaiti \n HN\tHonduras \n HK\tHong Kong SAR \n HU\tHungary \n IS\tIceland \n IN\tIndia \n ID\tIndonesia \n IR\tIran \n IQ\tIraq \n IE\tIreland \n IM\tIsle of Man \n IL\tIsrael \n IT\tItaly \n JM\tJamaica \n JP\tJapan \n JE\tJersey \n JO\tJordan \n KZ\tKazakhstan \n KE\tKenya \n KI\tKiribati \n KR\tKorea \n XK\tKosovo \n KW\tKuwait \n KG\tKyrgyzstan \n LA\tLaos \n LV\tLatvia \n LB\tLebanon \n LS\tLesotho \n LR\tLiberia \n LY\tLibya \n LI\tLiechtenstein \n LT\tLithuania \n LU\tLuxembourg \n MO\tMacao SAR \n MK\tMacedonia, FYRO \n MG\tMadagascar \n MW\tMalawi \n MY\tMalaysia \n MV\tMaldives \n ML\tMali \n MT\tMalta \n MH\tMarshall Islands \n MQ\tMartinique \n MR\tMauritania \n MU\tMauritius \n YT\tMayotte \n MX\tMexico \n FM\tMicronesia \n MD\tMoldova \n MC\tMonaco \n MN\tMongolia \n ME\tMontenegro \n MS\tMontserrat \n MA\tMorocco \n MZ\tMozambique \n MM\tMyanmar \n NA\tNamibia \n NR\tNauru \n NP\tNepal \n NL\tNetherlands \n NC\tNew Caledonia \n NZ\tNew Zealand \n NI\tNicaragua \n NE\tNiger \n NG\tNigeria \n NU\tNiue \n NF\tNorfolk Island \n KP\tNorth Korea \n MP\tNorthern Mariana Islands \n NO\tNorway \n OM\tOman \n PK\tPakistan \n PW\tPalau \n PS\tPalestinian Authority \n PA\tPanama \n PG\tPapua New Guinea \n PY\tParaguay \n PE\tPeru \n PH\tPhilippines \n PN\tPitcairn Islands \n PL\tPoland \n PT\tPortugal \n PR\tPuerto Rico \n QA\tQatar \n RE\tRéunion \n RO\tRomania \n RU\tRussia \n RW\tRwanda \n BL\tSaint Barthélemy \n KN\tSaint Kitts and Nevis \n LC\tSaint Lucia \n MF\tSaint Martin \n PM\tSaint Pierre and Miquelon \n VC\tSaint Vincent and the Grenadines \n WS\tSamoa \n SM\tSan Marino \n ST\tSão Tomé and Príncipe \n SA\tSaudi Arabia \n SN\tSenegal \n RS\tSerbia \n SC\tSeychelles \n SL\tSierra Leone \n SG\tSingapore \n SX\tSint Maarten \n SK\tSlovakia \n SI\tSlovenia \n SB\tSolomon Islands \n SO\tSomalia \n ZA\tSouth Africa \n SS\tSouth Sudan \n ES\tSpain \n LK\tSri Lanka \n SH\tSt Helena, Ascension, Tristan da Cunha \n SD\tSudan \n SR\tSuriname \n SJ\tSvalbard and Jan Mayen \n SZ\tSwaziland \n SE\tSweden \n CH\tSwitzerland \n SY\tSyria \n TW\tTaiwan \n TJ\tTajikistan \n TZ\tTanzania \n TH\tThailand \n TL\tTimor-Leste \n TG\tTogo \n TK\tTokelau \n TO\tTonga \n TT\tTrinidad and Tobago \n TN\tTunisia \n TR\tTurkey \n TM\tTurkmenistan \n TC\tTurks and Caicos Islands \n TV\tTuvalu \n UM\tU.S. Outlying Islands \n VI\tU.S. Virgin Islands \n UG\tUganda \n UA\tUkraine \n AE\tUnited Arab Emirates \n GB\tUnited Kingdom \n US\tUnited States \n UY\tUruguay \n UZ\tUzbekistan \n VU\tVanuatu \n VE\tVenezuela \n VN\tVietnam \n WF\tWallis and Futuna \n YE\tYemen \n ZM\tZambia \n ZW\tZimbabwe\n"
required: false
style: form
explode: true
schema:
type: string
- name: zip
in: query
description: The user's zip/postal code.
required: false
style: form
explode: true
schema:
type: string
- name: profileImageUrl
in: query
description: URL to the user's profile image.
required: false
style: form
explode: true
schema:
type: string
- name: timeZoneId
in: query
description: |
The user's time zone. If not specified, the timezone of the organization will be used.
**Allowed values**
Afghanistan Standard Time
Alaskan Standard Time
Aleutian Standard Time
Altai Standard Time
Arab Standard Time
Arabian Standard Time
Arabic Standard Time
Argentina Standard Time
Astrakhan Standard Time
Atlantic Standard Time
AUS Central Standard Time
Aus Central W. Standard Time
AUS Eastern Standard Time
Azerbaijan Standard Time
Azores Standard Time
Bahia Standard Time
Bangladesh Standard Time
Belarus Standard Time
Bougainville Standard Time
Canada Central Standard Time
Cape Verde Standard Time
Caucasus Standard Time
Cen. Australia Standard Time
Central America Standard Time
Central Asia Standard Time
Central Brazilian Standard Time
Central Europe Standard Time
Central European Standard Time
Central Pacific Standard Time
Central Standard Time
Central Standard Time (Mexico)
Chatham Islands Standard Time
China Standard Time
Cuba Standard Time
Dateline Standard Time
E. Africa Standard Time
E. Australia Standard Time
E. Europe Standard Time
E. South America Standard Time
Easter Island Standard Time
Eastern Standard Time
Eastern Standard Time (Mexico)
Egypt Standard Time
Ekaterinburg Standard Time
Fiji Standard Time
FLE Standard Time
Georgian Standard Time
GMT Standard Time
Greenland Standard Time
Greenwich Standard Time
GTB Standard Time
Haiti Standard Time
Hawaiian Standard Time
India Standard Time
Iran Standard Time
Israel Standard Time
Jordan Standard Time
Kaliningrad Standard Time
Kamchatka Standard Time
Korea Standard Time
Libya Standard Time
Line Islands Standard Time
Lord Howe Standard Time
Magadan Standard Time
Magallanes Standard Time
Marquesas Standard Time
Mauritius Standard Time
Mid-Atlantic Standard Time
Middle East Standard Time
Montevideo Standard Time
Morocco Standard Time
Mountain Standard Time
Mountain Standard Time (Mexico)
Myanmar Standard Time
N. Central Asia Standard Time
Namibia Standard Time
Nepal Standard Time
New Zealand Standard Time
Newfoundland Standard Time
Norfolk Standard Time
North Asia East Standard Time
North Asia Standard Time
North Korea Standard Time
Omsk Standard Time
Pacific SA Standard Time
Pacific Standard Time
Pacific Standard Time (Mexico)
Pakistan Standard Time
Paraguay Standard Time
Qyzylorda Standard Time
Romance Standard Time
Russia Time Zone 10
Russia Time Zone 11
Russia Time Zone 3
Russian Standard Time
SA Eastern Standard Time
SA Pacific Standard Time
SA Western Standard Time
Saint Pierre Standard Time
Sakhalin Standard Time
Samoa Standard Time
Sao Tome Standard Time
Saratov Standard Time
SE Asia Standard Time
Singapore Standard Time
South Africa Standard Time
South Sudan Standard Time
Sri Lanka Standard Time
Sudan Standard Time
Syria Standard Time
Taipei Standard Time
Tasmania Standard Time
Tocantins Standard Time
Tokyo Standard Time
Tomsk Standard Time
Tonga Standard Time
Transbaikal Standard Time
Turkey Standard Time
Turks And Caicos Standard Time
Ulaanbaatar Standard Time
US Eastern Standard Time
US Mountain Standard Time
UTC
UTC+12
UTC+13
UTC-02
UTC-08
UTC-09
UTC-11
Venezuela Standard Time
Vladivostok Standard Time
Volgograd Standard Time
W. Australia Standard Time
W. Central Africa Standard Time
W. Europe Standard Time
W. Mongolia Standard Time
West Asia Standard Time
West Bank Standard Time
West Pacific Standard Time
Yakutsk Standard Time
Yukon Standard Time
required: false
style: form
explode: true
schema:
type: string
- name: enableGeneralNotifications
in: query
description: An optional parameter to allow the sending of general notifications to the user.
required: false
style: form
explode: true
schema:
type: boolean
- name: forcePasswordChange
in: query
description: An optional parameter to force the user to change their password on the next login
required: false
style: form
explode: true
schema:
type: boolean
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/ApiResponse'
deprecated: false
/AddUserToRole:
get:
tags:
- User Management
summary: Add a role to a user
description: Allows you to add a user to a role
operationId: AddUserToRole
parameters:
- name: userId
in: query
description: The user's ID
required: true
style: form
explode: true
schema:
type: integer
format: int32
example: 57383
- name: roleId
in: query
description: The role ID
required: true
style: form
explode: true
schema:
type: integer
format: int32
example: 20
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/ApiResponse'
deprecated: false
/AddUserToRoles:
get:
tags:
- User Management
summary: Add roles to a user
description: Allows you to add a user to multiple roles
operationId: AddUserToRoles
parameters:
- name: userId
in: query
description: The user's ID
required: true
style: form
explode: true
schema:
type: integer
format: int32
example: 57383
- name: roleId
in: query
description: 'An identifier for the role the user should belong to. You can provide multiple instances of this parameter to add the user to multiple roles. For example: roleId=0&roleId=2&roleId=20. You can discover roles available to your API integration by using the GetUserRoles command.'
required: true
style: form
explode: true
schema:
type: integer
format: int32
example: 20
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/ApiResponse'
deprecated: false
/RemoveUserFromRole:
get:
tags:
- User Management
summary: Remove a user's role
description: Allows you remove a user from a role
operationId: RemoveUserFromRole
parameters:
- name: userId
in: query
description: The user's ID
required: true
style: form
explode: true
schema:
type: integer
format: int32
example: 57383
- name: roleId
in: query
description: The role ID
required: true
style: form
explode: true
schema:
type: integer
format: int32
example: 20
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/ApiResponse'
deprecated: false
/AddOrganizationManagementToUser:
get:
tags:
- User Management
summary: Assign a user organization management
description: Allows you to assign management rights over an organization to a single user
operationId: AddOrganizationManagementToUser
parameters:
- name: userId
in: query
description: The user's ID
required: true
style: form
explode: true
schema:
type: integer
format: int32
example: 57383
- name: organizationId
in: query
description: The organization ID
required: true
style: form
explode: true
schema:
type: integer
format: int32
example: 20
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/ApiResponse'
deprecated: false
/RemoveOrganizationManagementFromUser:
get:
tags:
- User Management
summary: Remove a user's organization management
description: Allows you remove management rights over an organization from a single user
operationId: RemoveOrganizationManagementFromUser
parameters:
- name: userId
in: query
description: The user's ID
required: true
style: form
explode: true
schema:
type: integer
format: int32
example: 57383
- name: organizationId
in: query
description: The organization ID
required: true
style: form
explode: true
schema:
type: integer
format: int32
example: 20
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/ApiResponse'
deprecated: false
/UpdateUserPassword:
get:
tags:
- User Management
summary: Update a user's password
description: Allows you to update a user's password.
operationId: UpdateUserPassword
parameters:
- name: id
in: query
description: The user's ID
required: true
style: form
explode: true
schema:
type: integer
format: int32
example: 57383
- name: password
in: query
description: The new password
required: true
style: form
explode: true
schema:
type: string
- name: forcePasswordChange
in: query
description: An optional parameter to force the user to change their password on the next login
required: false
style: form
explode: true
schema:
type: boolean
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/ApiResponse'
deprecated: false
/GetSsoRedirectUrl:
get:
tags:
- User Management
summary: Retrieve SSO redirect into the TMS
description: 'Allows you to retrieve a URL for redirecting a user into the the TMS for single sign-on. This allows you to land the student in the TMS without them having to login. Note: the URL is valid for only 20 seconds. The intention is for you to obtain the URL on demand when the user is to be redirected into the TMS from your system.'
operationId: GetSsoRedirectUrl
parameters:
- name: userId
in: query
description: The user's ID
required: true
style: form
explode: true
schema:
type: integer
format: int32
example: 57383
- name: destinationUrl
in: query
description: 'An optional URL that you want the user to land on within the LMS. For instance, if you wanted to land the user on the class schedule, you could pass a value of "/Class/Schedule." Use of this feature requires some knowledge of the LMS URL schema. In general, you can figure out how URLs work by observing them while navigating within the TMS.'
required: false
style: form
explode: true
schema:
type: string
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/SsoRedirectUrlReponse'
deprecated: false
/SearchSignInHistory:
get:
tags:
- User Management
summary: Retrieve user sign-in history
description: Allows you to search for user sign in dates and times.
operationId: SearchSignInHistory
parameters:
- name: pageIndex
in: query
description: 'A 0-based index of the paged results you wish to receive. In general, you should start with a value of zero and increment it as you need to retrieve additional results. If not supplied, a value of 0 is used (the first page of results).'
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: pageSize
in: query
description: 'Indicates how many results you want per page. if not supplied, a default value of 100 is used.'
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: sort
in: query
description: 'The value you want to sort by. If not supplied, a default value of "SignIn DESC" will be assumed. You can append "DESC" after the sort value to sort descending. For example, "SignIn DESC" would sort by sign-in time in descending order. Possible values: - SignIn - LastName - FirstName - UserName - Email'
required: false
style: form
explode: true
schema:
type: string
- name: userId
in: query
description: An optional parameter used to filter for sign-ins for a particular user.
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 57383
- name: userExternalId
in: query
description: An optional parameter used to filter for sign-ins for a particular user using an external identifier.
required: false
style: form
explode: true
schema:
type: string
example: 1G87491-37DE-DFG1-127A-565159915A6B
- name: after
in: query
description: 'An optional parameter used to filter for sign-ins that occured after a specified date. When used in conjunction with the "before" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: string
- name: before
in: query
description: 'An optional parameter used to filter for sign-ins that occured before a specified date. When used in conjunction with the "after" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: string
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/SignInHistorySearchHistoryResponse'
deprecated: false
/SearchUserActivity:
get:
tags:
- User Management
summary: Retrieve user activity
description: Allows you to search for user activity.
operationId: SearchUserActivity
parameters:
- name: pageIndex
in: query
description: 'A 0-based index of the paged results you wish to receive. In general, you should start with a value of zero and increment it as you need to retrieve additional results. If not supplied, a value of 0 is used (the first page of results).'
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: pageSize
in: query
description: 'Indicates how many results you want per page. if not supplied, a default value of 100 is used.'
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: sort
in: query
description: |-
The value you want to sort by. If not supplied, a default value of "SignIn DESC" will be assumed. You can append " DESC" after the sort value to sort descending. For example, "SignIn DESC" would sort by sign-in time in descending order. Possible values:
- RequestTime
- LastName
- UserName
- Organization
required: false
style: form
explode: true
schema:
type: string
- name: userId
in: query
description: An optional parameter used to filter for activity for a particular user
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 57383
- name: userExternalId
in: query
description: An optional parameter used to filter for activity for a particular user using an external identifier
required: false
style: form
explode: true
schema:
type: string
example: 1G87491-37DE-DFG1-127A-565159915A6B
- name: activityAfter
in: query
description: An optional parameter used to filter for sign-ins that occured after a specified date
required: false
style: form
explode: true
schema:
type: string
- name: activityBefore
in: query
description: An optional parameter used to filter for sign-ins that occured before a specified date
required: false
style: form
explode: true
schema:
type: string
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/SearchUserActivityResponse'
deprecated: false
/GetActiveSystemAnnouncements:
get:
tags:
- User Management
summary: Retrieve system announcements
description: Allows you to retreive active system announcements.
operationId: GetActiveSystemAnnouncements
parameters:
- name: organizationId
in: query
description: The ID of the organization for which you would like to retrieve system announcements
required: false
style: form
explode: true
schema:
type: integer
format: int64
example: 4536
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/AnnouncementResponse'
deprecated: false
'/CloseUserAccountById/{id}':
get:
tags:
- User Management
summary: Close a user account by id removing personal information
description: Allows you close a user account removing all identifying information from the system.
operationId: CloseUserAccountById
parameters:
- name: id
in: path
description: The ID of the user to retrieve
required: true
style: simple
explode: true
schema:
type: integer
format: int64
example: 3453
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/DeleteResponse'
deprecated: false
'/CloseUserAccountByExternalId/{id}':
get:
tags:
- User Management
summary: Close a user account by external platform id removing personal information
description: Allows you close a user account removing all identifying information from the system by providing a unique identifier from your external system.
operationId: CloseUserAccountByExternalId
parameters:
- name: id
in: path
description: The external ID of the user whose account is to be closed.
required: true
style: simple
explode: true
schema:
type: string
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/DeleteResponse'
deprecated: false
'/DeleteUserDataById/{id}':
get:
tags:
- User Management
summary: Remove specific data for a user using id
description: Allows you remove specific types of user data for a user in the system.
operationId: DeleteUserDataById
parameters:
- name: id
in: path
description: The user's ID.
required: true
style: simple
explode: true
schema:
type: integer
format: int32
example: 10
- name: dataTypeId
in: query
description: |-
The ID of the data type to delete.
- Account = 0
- MicrosoftCommunications = 1
- PaymentInstrument = 2
- PreciseUserLocation = 3
- ProductAndServicePerformance = 4
- ProductAndServiceUsage = 5
- ProfessionalAndPersonalProfile = 6
- PublicPersonal = 7
- Recruitment = 8
- SearchRequestsAndQuery = 9
- SoftwareSetupAndInventory = 10
- Support = 11
- SupportContent = 12
- SupportInteraction = 13
- WorkContracts = 14
- WorkplaceInteractions = 15
- WorkProfile = 16
- LicensingAndPurchase = 17
- LearningAndDevelopment = 18
- InterestsAndFavorites = 19
- InkingTypingAndSpeechUtterance = 20
- Any = 21
- BrowsingHistory = 22
- CloudServiceProvider = 23
- CommuteAndTravel = 24
- CompensationAndBenefits = 25
- ContentConsumption = 26
- Credentials = 27
- CustomerContact = 28
- WorkRecognition = 29
- CustomerContactList = 30
- DemographicInformation = 31
- DeviceConnectivityAndConfiguration = 32
- EnvironmentalSensor = 33
- EUII = 34
- FeedbackAndRatings = 35
- FinancialAccountingAndRecords = 36
- FinancialTransactions = 37
- FitnessAndActivity = 38
- CustomerContent = 39
- WorkTime = 40
- Social = 41
required: true
style: form
explode: true
schema:
type: integer
format: int32
example: 10
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/DeleteResponse'
deprecated: false
'/DeleteUserDataByExternalId/{id}':
get:
tags:
- User Management
summary: Remove specific data for a user using an external platform id
description: Allows you remove specific types of user data for a user in the system by providing a unique identifier from your external system.
operationId: DeleteUserDataByExternalId
parameters:
- name: id
in: path
description: The external ID of the user to have data deleted.
required: true
style: simple
explode: true
schema:
type: string
- name: dataTypeId
in: query
description: |-
The ID of the data type to delete.
- Account = 0
- MicrosoftCommunications = 1
- PaymentInstrument = 2
- PreciseUserLocation = 3
- ProductAndServicePerformance = 4
- ProductAndServiceUsage = 5
- ProfessionalAndPersonalProfile = 6
- PublicPersonal = 7
- Recruitment = 8
- SearchRequestsAndQuery = 9
- SoftwareSetupAndInventory = 10
- Support = 11
- SupportContent = 12
- SupportInteraction = 13
- WorkContracts = 14
- WorkplaceInteractions = 15
- WorkProfile = 16
- LicensingAndPurchase = 17
- LearningAndDevelopment = 18
- InterestsAndFavorites = 19
- InkingTypingAndSpeechUtterance = 20
- Any = 21
- BrowsingHistory = 22
- CloudServiceProvider = 23
- CommuteAndTravel = 24
- CompensationAndBenefits = 25
- ContentConsumption = 26
- Credentials = 27
- CustomerContact = 28
- WorkRecognition = 29
- CustomerContactList = 30
- DemographicInformation = 31
- DeviceConnectivityAndConfiguration = 32
- EnvironmentalSensor = 33
- EUII = 34
- FeedbackAndRatings = 35
- FinancialAccountingAndRecords = 36
- FinancialTransactions = 37
- FitnessAndActivity = 38
- CustomerContent = 39
- WorkTime = 40
- Social = 41
required: true
style: form
explode: true
schema:
type: integer
format: int32
example: 10
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/DeleteResponse'
deprecated: false
/GetUserRoles:
get:
tags:
- User Management
summary: Retrieve all assignable user roles
description: Allows you to view all user roles available to your API integration.
operationId: GetUserRoles
parameters: []
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/UserRoleResponse'
deprecated: false
/UpdateUserCustomFieldValue:
get:
tags:
- User Management
summary: Update a custom field for a user
description: Updates the current value of a specific custom field for a user.
operationId: UpdateUserCustomFieldValue
parameters:
- name: customFieldId
in: query
description: The ID of the custom field for which the value will be updated.
required: true
style: form
explode: true
schema:
type: integer
format: int32
example: 4873
- name: userId
in: query
description: The ID of the user for which the custom field value will be updated.
required: true
style: form
explode: true
schema:
type: integer
format: int32
example: 57383
- name: textValue
in: query
description: The value of a text type user custom field - Textbox and Dropdown List
required: false
style: form
explode: true
schema:
type: string
- name: booleanValue
in: query
description: The value for a boolean type user custom field - Checkbox
required: false
style: form
explode: true
schema:
type: boolean
- name: separatedListValues
in: query
description: A Tab separated list of all the text values for a multi-select custom field type - Checkbox List
required: false
style: form
explode: true
schema:
type: string
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/CustomFieldValueResponse'
deprecated: false
'/GetOrganization/{id}':
get:
tags:
- Organization Management
summary: Retrieve organization information by id
description: Allows you to get information about an organization.
operationId: GetOrganization
parameters:
- name: id
in: path
description: The ID of the organization to retrieve
required: true
style: simple
explode: true
schema:
type: integer
format: int32
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/OrganizationResponse'
deprecated: false
'/GetOrganizationByExternalId/{id}':
get:
tags:
- Organization Management
summary: Retrieve organization information by external platform id
description: Allows you to get information about an organization by providing a unique identifier from your external system.
operationId: GetOrganizationByExternalId
parameters:
- name: id
in: path
description: The external ID of the organization to retrieve.
required: true
style: simple
explode: true
schema:
type: string
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/OrganizationResponse'
deprecated: false
/CreateOrganization:
get:
tags:
- Organization Management
summary: Create an organization
description: Allows you to create an organization.
operationId: CreateOrganization
parameters:
- name: name
in: query
description: The organization's name
required: true
style: form
explode: true
schema:
type: string
- name: externalId
in: query
description: 'The organization''s external ID, usually a unique identifier from the calling system'
required: false
style: form
explode: true
schema:
type: string
- name: description
in: query
description: An optional description
required: false
style: form
explode: true
schema:
type: string
- name: parentId
in: query
description: 'The ID of the organization''s parent organization. If not supplied, the organization will become a direct child of the API organization.'
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 10
- name: timeZoneId
in: query
description: |-
The time zone for the data object. If not specified, the timezone of the organization will be used.
**Allowed values**
Afghanistan Standard Time
Alaskan Standard Time
Aleutian Standard Time
Altai Standard Time
Arab Standard Time
Arabian Standard Time
Arabic Standard Time
Argentina Standard Time
Astrakhan Standard Time
Atlantic Standard Time
AUS Central Standard Time
Aus Central W. Standard Time
AUS Eastern Standard Time
Azerbaijan Standard Time
Azores Standard Time
Bahia Standard Time
Bangladesh Standard Time
Belarus Standard Time
Bougainville Standard Time
Canada Central Standard Time
Cape Verde Standard Time
Caucasus Standard Time
Cen. Australia Standard Time
Central America Standard Time
Central Asia Standard Time
Central Brazilian Standard Time
Central Europe Standard Time
Central European Standard Time
Central Pacific Standard Time
Central Standard Time
Central Standard Time (Mexico)
Chatham Islands Standard Time
China Standard Time
Cuba Standard Time
Dateline Standard Time
E. Africa Standard Time
E. Australia Standard Time
E. Europe Standard Time
E. South America Standard Time
Easter Island Standard Time
Eastern Standard Time
Eastern Standard Time (Mexico)
Egypt Standard Time
Ekaterinburg Standard Time
Fiji Standard Time
FLE Standard Time
Georgian Standard Time
GMT Standard Time
Greenland Standard Time
Greenwich Standard Time
GTB Standard Time
Haiti Standard Time
Hawaiian Standard Time
India Standard Time
Iran Standard Time
Israel Standard Time
Jordan Standard Time
Kaliningrad Standard Time
Kamchatka Standard Time
Korea Standard Time
Libya Standard Time
Line Islands Standard Time
Lord Howe Standard Time
Magadan Standard Time
Magallanes Standard Time
Marquesas Standard Time
Mauritius Standard Time
Mid-Atlantic Standard Time
Middle East Standard Time
Montevideo Standard Time
Morocco Standard Time
Mountain Standard Time
Mountain Standard Time (Mexico)
Myanmar Standard Time
N. Central Asia Standard Time
Namibia Standard Time
Nepal Standard Time
New Zealand Standard Time
Newfoundland Standard Time
Norfolk Standard Time
North Asia East Standard Time
North Asia Standard Time
North Korea Standard Time
Omsk Standard Time
Pacific SA Standard Time
Pacific Standard Time
Pacific Standard Time (Mexico)
Pakistan Standard Time
Paraguay Standard Time
Qyzylorda Standard Time
Romance Standard Time
Russia Time Zone 10
Russia Time Zone 11
Russia Time Zone 3
Russian Standard Time
SA Eastern Standard Time
SA Pacific Standard Time
SA Western Standard Time
Saint Pierre Standard Time
Sakhalin Standard Time
Samoa Standard Time
Sao Tome Standard Time
Saratov Standard Time
SE Asia Standard Time
Singapore Standard Time
South Africa Standard Time
South Sudan Standard Time
Sri Lanka Standard Time
Sudan Standard Time
Syria Standard Time
Taipei Standard Time
Tasmania Standard Time
Tocantins Standard Time
Tokyo Standard Time
Tomsk Standard Time
Tonga Standard Time
Transbaikal Standard Time
Turkey Standard Time
Turks And Caicos Standard Time
Ulaanbaatar Standard Time
US Eastern Standard Time
US Mountain Standard Time
UTC
UTC+12
UTC+13
UTC-02
UTC-08
UTC-09
UTC-11
Venezuela Standard Time
Vladivostok Standard Time
Volgograd Standard Time
W. Australia Standard Time
W. Central Africa Standard Time
W. Europe Standard Time
W. Mongolia Standard Time
West Asia Standard Time
West Bank Standard Time
West Pacific Standard Time
Yakutsk Standard Time
Yukon Standard Time
required: false
style: form
explode: true
schema:
type: string
- name: culture
in: query
description: |-
The default language/culture setting. This is used as a default when creating new users and events. If not specified, the culture of the parent organization will be used.
Allowed Values
- aa-DJ
- aa-ER
- aa-ET
- af-NA
- af-ZA
- agq-CM
- ak-GH
- am-ET
- ar-001
- ar-AE
- ar-BH
- ar-DJ
- ar-DZ
- ar-EG
- ar-ER
- ar-IL
- ar-IQ
- ar-JO
- ar-KM
- ar-KW
- ar-LB
- ar-LY
- ar-MA
- ar-MR
- arn-CL
- ar-OM
- ar-PS
- ar-QA
- ar-SA
- ar-SD
- ar-SO
- ar-SS
- ar-SY
- ar-TD
- ar-TN
- ar-YE
- asa-TZ
- as-IN
- ast-ES
- az-Cyrl-AZ
- az-Latn-AZ
- ba-RU
- bas-CM
- be-BY
- bem-ZM
- bez-TZ
- bg-BG
- bin-NG
- bm-Latn-ML
- bn-BD
- bn-IN
- bo-CN
- bo-IN
- br-FR
- brx-IN
- bs-Cyrl-BA
- bs-Latn-BA
- byn-ER
- ca-AD
- ca-ES
- ca-ES-valencia
- ca-FR
- ca-IT
- ce-RU
- cgg-UG
- chr-Cher-US
- co-FR
- cs-CZ
- cu-RU
- cy-GB
- da-DK
- da-GL
- dav-KE
- de-AT
- de-BE
- de-CH
- de-DE
- de-LI
- de-LU
- dje-NE
- dsb-DE
- dua-CM
- dv-MV
- dyo-SN
- dz-BT
- ebu-KE
- ee-GH
- ee-TG
- el-CY
- el-GR
- en-001
- en-029
- en-150
- en-AG
- en-AI
- en-AS
- en-AT
- en-AU
- en-BB
- en-BE
- en-BI
- en-BM
- en-BS
- en-BW
- en-BZ
- en-CA
- en-CC
- en-CH
- en-CK
- en-CM
- en-CX
- en-CY
- en-DE
- en-DK
- en-DM
- en-ER
- en-FI
- en-FJ
- en-FK
- en-FM
- en-GB
- en-GD
- en-GG
- en-GH
- en-GI
- en-GM
- en-GU
- en-GY
- en-HK
- en-ID
- en-IE
- en-IL
- en-IM
- en-IN
- en-IO
- en-JE
- en-JM
- en-KE
- en-KI
- en-KN
- en-KY
- en-LC
- en-LR
- en-LS
- en-MG
- en-MH
- en-MO
- en-MP
- en-MS
- en-MT
- en-MU
- en-MW
- en-MY
- en-NA
- en-NF
- en-NG
- en-NL
- en-NR
- en-NU
- en-NZ
- en-PG
- en-PH
- en-PK
- en-PN
- en-PR
- en-PW
- en-RW
- en-SB
- en-SC
- en-SD
- en-SE
- en-SG
- en-SH
- en-SI
- en-SL
- en-SS
- en-SX
- en-SZ
- en-TC
- en-TK
- en-TO
- en-TT
- en-TV
- en-TZ
- en-UG
- en-UM
- en-US
- en-VC
- en-VG
- en-VI
- en-VU
- en-WS
- en-ZA
- en-ZM
- en-ZW
- eo-001
- es-419
- es-AR
- es-BO
- es-CL
- es-CO
- es-CR
- es-CU
- es-DO
- es-EC
- es-ES
- es-GQ
- es-GT
- es-HN
- es-MX
- es-NI
- es-PA
- es-PE
- es-PH
- es-PR
- es-PY
- es-SV
- es-US
- es-UY
- es-VE
- et-EE
- eu-ES
- ewo-CM
- fa-IR
- ff-CM
- ff-GN
- ff-Latn-SN
- ff-MR
- ff-NG
- fi-FI
- fil-PH
- fo-DK
- fo-FO
- fr-029
- fr-BE
- fr-BF
- fr-BI
- fr-BJ
- fr-BL
- fr-CA
- fr-CD
- fr-CF
- fr-CG
- fr-CH
- fr-CI
- fr-CM
- fr-DJ
- fr-DZ
- fr-FR
- fr-GA
- fr-GF
- fr-GN
- fr-GP
- fr-GQ
- fr-HT
- fr-KM
- fr-LU
- fr-MA
- fr-MC
- fr-MF
- fr-MG
- fr-ML
- fr-MQ
- fr-MR
- fr-MU
- fr-NC
- fr-NE
- fr-PF
- fr-PM
- fr-RE
- fr-RW
- fr-SC
- fr-SN
- fr-SY
- fr-TD
- fr-TG
- fr-TN
- fr-VU
- fr-WF
- fr-YT
- fur-IT
- fy-NL
- ga-IE
- gd-GB
- gl-ES
- gn-PY
- gsw-CH
- gsw-FR
- gsw-LI
- gu-IN
- guz-KE
- gv-IM
- ha-Latn-GH
- ha-Latn-NE
- ha-Latn-NG
- haw-US
- he-IL
- hi-IN
- hr-BA
- hr-HR
- hsb-DE
- hu-HU
- hy-AM
- ia-001
- ia-FR
- ibb-NG
- id-ID
- ig-NG
- ii-CN
- is-IS
- it-CH
- it-IT
- it-SM
- iu-Cans-CA
- iu-Latn-CA
- ja-JP
- jgo-CM
- jmc-TZ
- jv-Java-ID
- jv-Latn-ID
- kab-DZ
- ka-GE
- kam-KE
- kde-TZ
- kea-CV
- khq-ML
- ki-KE
- kkj-CM
- kk-KZ
- kl-GL
- kln-KE
- km-KH
- kn-IN
- kok-IN
- ko-KP
- ko-KR
- kr-NG
- ks-Arab-IN
- ksb-TZ
- ks-Deva-IN
- ksf-CM
- ksh-DE
- ku-Arab-IQ
- ku-Arab-IR
- kw-GB
- ky-KG
- la-001
- lag-TZ
- lb-LU
- lg-UG
- lkt-US
- ln-AO
- ln-CD
- ln-CF
- ln-CG
- lo-LA
- lrc-IQ
- lrc-IR
- lt-LT
- lu-CD
- luo-KE
- luy-KE
- lv-LV
- mas-KE
- mas-TZ
- mer-KE
- mfe-MU
- mgh-MZ
- mg-MG
- mgo-CM
- mi-NZ
- mk-MK
- ml-IN
- mni-IN
- mn-MN
- mn-Mong-CN
- mn-Mong-MN
- moh-CA
- mr-IN
- ms-BN
- ms-MY
- ms-SG
- mt-MT
- mua-CM
- my-MM
- mzn-IR
- naq-NA
- nb-NO
- nb-SJ
- nd-ZW
- ne-IN
- ne-NP
- nl-AW
- nl-BE
- nl-BQ
- nl-CW
- nl-NL
- nl-SR
- nl-SX
- nmg-CM
- nnh-CM
- nn-NO
- nqo-GN
- nr-ZA
- nso-ZA
- nus-SS
- nyn-UG
- oc-FR
- om-ET
- om-KE
- or-IN
- os-GE
- os-RU
- pa-Arab-PK
- pa-IN
- pap-029
- pl-PL
- prg-001
- prs-AF
- ps-AF
- pt-AO
- pt-BR
- pt-CV
- pt-GW
- pt-MO
- pt-MZ
- pt-PT
- pt-ST
- pt-TL
- quc-Latn-GT
- quz-BO
- quz-EC
- quz-PE
- rm-CH
- rn-BI
- rof-TZ
- ro-MD
- ro-RO
- ru-BY
- ru-KG
- ru-KZ
- ru-MD
- ru-RU
- ru-UA
- rwk-TZ
- rw-RW
- sah-RU
- sa-IN
- saq-KE
- sbp-TZ
- sd-Arab-PK
- sd-Deva-IN
- se-FI
- seh-MZ
- se-NO
- se-SE
- ses-ML
- sg-CF
- shi-Latn-MA
- shi-Tfng-MA
- si-LK
- sk-SK
- sl-SI
- sma-NO
- sma-SE
- smj-NO
- smj-SE
- smn-FI
- sms-FI
- sn-Latn-ZW
- so-DJ
- so-ET
- so-KE
- so-SO
- sq-AL
- sq-MK
- sq-XK
- sr-Cyrl-BA
- sr-Cyrl-ME
- sr-Cyrl-RS
- sr-Cyrl-XK
- sr-Latn-BA
- sr-Latn-ME
- sr-Latn-RS
- sr-Latn-XK
- ss-SZ
- ssy-ER
- ss-ZA
- st-LS
- st-ZA
- sv-AX
- sv-FI
- sv-SE
- sw-CD
- sw-KE
- sw-TZ
- sw-UG
- syr-SY
- ta-IN
- ta-LK
- ta-MY
- ta-SG
- te-IN
- teo-KE
- teo-UG
- tg-Cyrl-TJ
- th-TH
- ti-ER
- ti-ET
- tig-ER
- tk-TM
- tn-BW
- tn-ZA
- to-TO
- tr-CY
- tr-TR
- ts-ZA
- tt-RU
- twq-NE
- tzm-Arab-MA
- tzm-Latn-DZ
- tzm-Latn-MA
- tzm-Tfng-MA
- ug-CN
- uk-UA
- ur-IN
- ur-PK
- uz-Arab-AF
- uz-Cyrl-UZ
- uz-Latn-UZ
- vai-Latn-LR
- vai-Vaii-LR
- ve-ZA
- vi-VN
- vo-001
- vun-TZ
- wae-CH
- wal-ET
- wo-SN
- xh-ZA
- xog-UG
- yav-CM
- yi-001
- yo-BJ
- yo-NG
- zgh-Tfng-MA
- zh-CN
- zh-Hans-HK
- zh-Hans-MO
- zh-HK
- zh-MO
- zh-SG
- zh-TW
- zu-ZA
required: false
style: form
explode: true
schema:
type: string
- name: defaultRoleId
in: query
description: 'An identifier for the role new users should be assigned by default. You can provide multiple instances of this parameter to specify multiple roles. For example: roleId=346&roleId=347&roleId=348. You can discover roles available to your API integration by using the GetUserRoles command. If this paramter is not supplied, the system default role will be used.'
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 10
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/CreateResponse'
deprecated: false
'/DeleteOrganization/{id}':
get:
tags:
- Organization Management
summary: Delete an organization by id
description: Allows you to delete an organization.
operationId: DeleteOrganization
parameters:
- name: id
in: path
description: The organization ID
required: true
style: simple
explode: true
schema:
type: integer
format: int32
example: 5487
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/ApiResponse'
deprecated: false
'/UpdateOrganization/{id}':
get:
tags:
- Organization Management
summary: Update an organization by id
description: Allows you to update an organization.
operationId: UpdateOrganization
parameters:
- name: id
in: path
description: The organization's ID
required: true
style: simple
explode: true
schema:
type: integer
format: int32
example: 10
- name: name
in: query
description: The organization's name
required: true
style: form
explode: true
schema:
type: string
nullable: true
- name: externalId
in: query
description: 'The organization''s external ID, usually a unique identifier from the calling system'
required: false
style: form
explode: true
schema:
type: string
- name: description
in: query
description: An optional description
required: false
style: form
explode: true
schema:
type: string
- name: parentId
in: query
description: 'The ID of the organization''s parent organization. If not supplied, the current parent will be used.'
required: true
style: form
explode: true
schema:
type: integer
format: int32
nullable: true
example: 7685
- name: timeZoneId
in: query
description: |-
The time zone for the data object. If not specified, the timezone of the organization will be used.
**Allowed values**
Afghanistan Standard Time
Alaskan Standard Time
Aleutian Standard Time
Altai Standard Time
Arab Standard Time
Arabian Standard Time
Arabic Standard Time
Argentina Standard Time
Astrakhan Standard Time
Atlantic Standard Time
AUS Central Standard Time
Aus Central W. Standard Time
AUS Eastern Standard Time
Azerbaijan Standard Time
Azores Standard Time
Bahia Standard Time
Bangladesh Standard Time
Belarus Standard Time
Bougainville Standard Time
Canada Central Standard Time
Cape Verde Standard Time
Caucasus Standard Time
Cen. Australia Standard Time
Central America Standard Time
Central Asia Standard Time
Central Brazilian Standard Time
Central Europe Standard Time
Central European Standard Time
Central Pacific Standard Time
Central Standard Time
Central Standard Time (Mexico)
Chatham Islands Standard Time
China Standard Time
Cuba Standard Time
Dateline Standard Time
E. Africa Standard Time
E. Australia Standard Time
E. Europe Standard Time
E. South America Standard Time
Easter Island Standard Time
Eastern Standard Time
Eastern Standard Time (Mexico)
Egypt Standard Time
Ekaterinburg Standard Time
Fiji Standard Time
FLE Standard Time
Georgian Standard Time
GMT Standard Time
Greenland Standard Time
Greenwich Standard Time
GTB Standard Time
Haiti Standard Time
Hawaiian Standard Time
India Standard Time
Iran Standard Time
Israel Standard Time
Jordan Standard Time
Kaliningrad Standard Time
Kamchatka Standard Time
Korea Standard Time
Libya Standard Time
Line Islands Standard Time
Lord Howe Standard Time
Magadan Standard Time
Magallanes Standard Time
Marquesas Standard Time
Mauritius Standard Time
Mid-Atlantic Standard Time
Middle East Standard Time
Montevideo Standard Time
Morocco Standard Time
Mountain Standard Time
Mountain Standard Time (Mexico)
Myanmar Standard Time
N. Central Asia Standard Time
Namibia Standard Time
Nepal Standard Time
New Zealand Standard Time
Newfoundland Standard Time
Norfolk Standard Time
North Asia East Standard Time
North Asia Standard Time
North Korea Standard Time
Omsk Standard Time
Pacific SA Standard Time
Pacific Standard Time
Pacific Standard Time (Mexico)
Pakistan Standard Time
Paraguay Standard Time
Qyzylorda Standard Time
Romance Standard Time
Russia Time Zone 10
Russia Time Zone 11
Russia Time Zone 3
Russian Standard Time
SA Eastern Standard Time
SA Pacific Standard Time
SA Western Standard Time
Saint Pierre Standard Time
Sakhalin Standard Time
Samoa Standard Time
Sao Tome Standard Time
Saratov Standard Time
SE Asia Standard Time
Singapore Standard Time
South Africa Standard Time
South Sudan Standard Time
Sri Lanka Standard Time
Sudan Standard Time
Syria Standard Time
Taipei Standard Time
Tasmania Standard Time
Tocantins Standard Time
Tokyo Standard Time
Tomsk Standard Time
Tonga Standard Time
Transbaikal Standard Time
Turkey Standard Time
Turks And Caicos Standard Time
Ulaanbaatar Standard Time
US Eastern Standard Time
US Mountain Standard Time
UTC
UTC+12
UTC+13
UTC-02
UTC-08
UTC-09
UTC-11
Venezuela Standard Time
Vladivostok Standard Time
Volgograd Standard Time
W. Australia Standard Time
W. Central Africa Standard Time
W. Europe Standard Time
W. Mongolia Standard Time
West Asia Standard Time
West Bank Standard Time
West Pacific Standard Time
Yakutsk Standard Time
Yukon Standard Time
required: false
style: form
explode: true
schema:
type: string
- name: culture
in: query
description: |-
The default language/culture setting. This is used as a default when creating new users and events. If not specified, the culture of the parent organization will be used.
Allowed Values
- aa-DJ
- aa-ER
- aa-ET
- af-NA
- af-ZA
- agq-CM
- ak-GH
- am-ET
- ar-001
- ar-AE
- ar-BH
- ar-DJ
- ar-DZ
- ar-EG
- ar-ER
- ar-IL
- ar-IQ
- ar-JO
- ar-KM
- ar-KW
- ar-LB
- ar-LY
- ar-MA
- ar-MR
- arn-CL
- ar-OM
- ar-PS
- ar-QA
- ar-SA
- ar-SD
- ar-SO
- ar-SS
- ar-SY
- ar-TD
- ar-TN
- ar-YE
- asa-TZ
- as-IN
- ast-ES
- az-Cyrl-AZ
- az-Latn-AZ
- ba-RU
- bas-CM
- be-BY
- bem-ZM
- bez-TZ
- bg-BG
- bin-NG
- bm-Latn-ML
- bn-BD
- bn-IN
- bo-CN
- bo-IN
- br-FR
- brx-IN
- bs-Cyrl-BA
- bs-Latn-BA
- byn-ER
- ca-AD
- ca-ES
- ca-ES-valencia
- ca-FR
- ca-IT
- ce-RU
- cgg-UG
- chr-Cher-US
- co-FR
- cs-CZ
- cu-RU
- cy-GB
- da-DK
- da-GL
- dav-KE
- de-AT
- de-BE
- de-CH
- de-DE
- de-LI
- de-LU
- dje-NE
- dsb-DE
- dua-CM
- dv-MV
- dyo-SN
- dz-BT
- ebu-KE
- ee-GH
- ee-TG
- el-CY
- el-GR
- en-001
- en-029
- en-150
- en-AG
- en-AI
- en-AS
- en-AT
- en-AU
- en-BB
- en-BE
- en-BI
- en-BM
- en-BS
- en-BW
- en-BZ
- en-CA
- en-CC
- en-CH
- en-CK
- en-CM
- en-CX
- en-CY
- en-DE
- en-DK
- en-DM
- en-ER
- en-FI
- en-FJ
- en-FK
- en-FM
- en-GB
- en-GD
- en-GG
- en-GH
- en-GI
- en-GM
- en-GU
- en-GY
- en-HK
- en-ID
- en-IE
- en-IL
- en-IM
- en-IN
- en-IO
- en-JE
- en-JM
- en-KE
- en-KI
- en-KN
- en-KY
- en-LC
- en-LR
- en-LS
- en-MG
- en-MH
- en-MO
- en-MP
- en-MS
- en-MT
- en-MU
- en-MW
- en-MY
- en-NA
- en-NF
- en-NG
- en-NL
- en-NR
- en-NU
- en-NZ
- en-PG
- en-PH
- en-PK
- en-PN
- en-PR
- en-PW
- en-RW
- en-SB
- en-SC
- en-SD
- en-SE
- en-SG
- en-SH
- en-SI
- en-SL
- en-SS
- en-SX
- en-SZ
- en-TC
- en-TK
- en-TO
- en-TT
- en-TV
- en-TZ
- en-UG
- en-UM
- en-US
- en-VC
- en-VG
- en-VI
- en-VU
- en-WS
- en-ZA
- en-ZM
- en-ZW
- eo-001
- es-419
- es-AR
- es-BO
- es-CL
- es-CO
- es-CR
- es-CU
- es-DO
- es-EC
- es-ES
- es-GQ
- es-GT
- es-HN
- es-MX
- es-NI
- es-PA
- es-PE
- es-PH
- es-PR
- es-PY
- es-SV
- es-US
- es-UY
- es-VE
- et-EE
- eu-ES
- ewo-CM
- fa-IR
- ff-CM
- ff-GN
- ff-Latn-SN
- ff-MR
- ff-NG
- fi-FI
- fil-PH
- fo-DK
- fo-FO
- fr-029
- fr-BE
- fr-BF
- fr-BI
- fr-BJ
- fr-BL
- fr-CA
- fr-CD
- fr-CF
- fr-CG
- fr-CH
- fr-CI
- fr-CM
- fr-DJ
- fr-DZ
- fr-FR
- fr-GA
- fr-GF
- fr-GN
- fr-GP
- fr-GQ
- fr-HT
- fr-KM
- fr-LU
- fr-MA
- fr-MC
- fr-MF
- fr-MG
- fr-ML
- fr-MQ
- fr-MR
- fr-MU
- fr-NC
- fr-NE
- fr-PF
- fr-PM
- fr-RE
- fr-RW
- fr-SC
- fr-SN
- fr-SY
- fr-TD
- fr-TG
- fr-TN
- fr-VU
- fr-WF
- fr-YT
- fur-IT
- fy-NL
- ga-IE
- gd-GB
- gl-ES
- gn-PY
- gsw-CH
- gsw-FR
- gsw-LI
- gu-IN
- guz-KE
- gv-IM
- ha-Latn-GH
- ha-Latn-NE
- ha-Latn-NG
- haw-US
- he-IL
- hi-IN
- hr-BA
- hr-HR
- hsb-DE
- hu-HU
- hy-AM
- ia-001
- ia-FR
- ibb-NG
- id-ID
- ig-NG
- ii-CN
- is-IS
- it-CH
- it-IT
- it-SM
- iu-Cans-CA
- iu-Latn-CA
- ja-JP
- jgo-CM
- jmc-TZ
- jv-Java-ID
- jv-Latn-ID
- kab-DZ
- ka-GE
- kam-KE
- kde-TZ
- kea-CV
- khq-ML
- ki-KE
- kkj-CM
- kk-KZ
- kl-GL
- kln-KE
- km-KH
- kn-IN
- kok-IN
- ko-KP
- ko-KR
- kr-NG
- ks-Arab-IN
- ksb-TZ
- ks-Deva-IN
- ksf-CM
- ksh-DE
- ku-Arab-IQ
- ku-Arab-IR
- kw-GB
- ky-KG
- la-001
- lag-TZ
- lb-LU
- lg-UG
- lkt-US
- ln-AO
- ln-CD
- ln-CF
- ln-CG
- lo-LA
- lrc-IQ
- lrc-IR
- lt-LT
- lu-CD
- luo-KE
- luy-KE
- lv-LV
- mas-KE
- mas-TZ
- mer-KE
- mfe-MU
- mgh-MZ
- mg-MG
- mgo-CM
- mi-NZ
- mk-MK
- ml-IN
- mni-IN
- mn-MN
- mn-Mong-CN
- mn-Mong-MN
- moh-CA
- mr-IN
- ms-BN
- ms-MY
- ms-SG
- mt-MT
- mua-CM
- my-MM
- mzn-IR
- naq-NA
- nb-NO
- nb-SJ
- nd-ZW
- ne-IN
- ne-NP
- nl-AW
- nl-BE
- nl-BQ
- nl-CW
- nl-NL
- nl-SR
- nl-SX
- nmg-CM
- nnh-CM
- nn-NO
- nqo-GN
- nr-ZA
- nso-ZA
- nus-SS
- nyn-UG
- oc-FR
- om-ET
- om-KE
- or-IN
- os-GE
- os-RU
- pa-Arab-PK
- pa-IN
- pap-029
- pl-PL
- prg-001
- prs-AF
- ps-AF
- pt-AO
- pt-BR
- pt-CV
- pt-GW
- pt-MO
- pt-MZ
- pt-PT
- pt-ST
- pt-TL
- quc-Latn-GT
- quz-BO
- quz-EC
- quz-PE
- rm-CH
- rn-BI
- rof-TZ
- ro-MD
- ro-RO
- ru-BY
- ru-KG
- ru-KZ
- ru-MD
- ru-RU
- ru-UA
- rwk-TZ
- rw-RW
- sah-RU
- sa-IN
- saq-KE
- sbp-TZ
- sd-Arab-PK
- sd-Deva-IN
- se-FI
- seh-MZ
- se-NO
- se-SE
- ses-ML
- sg-CF
- shi-Latn-MA
- shi-Tfng-MA
- si-LK
- sk-SK
- sl-SI
- sma-NO
- sma-SE
- smj-NO
- smj-SE
- smn-FI
- sms-FI
- sn-Latn-ZW
- so-DJ
- so-ET
- so-KE
- so-SO
- sq-AL
- sq-MK
- sq-XK
- sr-Cyrl-BA
- sr-Cyrl-ME
- sr-Cyrl-RS
- sr-Cyrl-XK
- sr-Latn-BA
- sr-Latn-ME
- sr-Latn-RS
- sr-Latn-XK
- ss-SZ
- ssy-ER
- ss-ZA
- st-LS
- st-ZA
- sv-AX
- sv-FI
- sv-SE
- sw-CD
- sw-KE
- sw-TZ
- sw-UG
- syr-SY
- ta-IN
- ta-LK
- ta-MY
- ta-SG
- te-IN
- teo-KE
- teo-UG
- tg-Cyrl-TJ
- th-TH
- ti-ER
- ti-ET
- tig-ER
- tk-TM
- tn-BW
- tn-ZA
- to-TO
- tr-CY
- tr-TR
- ts-ZA
- tt-RU
- twq-NE
- tzm-Arab-MA
- tzm-Latn-DZ
- tzm-Latn-MA
- tzm-Tfng-MA
- ug-CN
- uk-UA
- ur-IN
- ur-PK
- uz-Arab-AF
- uz-Cyrl-UZ
- uz-Latn-UZ
- vai-Latn-LR
- vai-Vaii-LR
- ve-ZA
- vi-VN
- vo-001
- vun-TZ
- wae-CH
- wal-ET
- wo-SN
- xh-ZA
- xog-UG
- yav-CM
- yi-001
- yo-BJ
- yo-NG
- zgh-Tfng-MA
- zh-CN
- zh-Hans-HK
- zh-Hans-MO
- zh-HK
- zh-MO
- zh-SG
- zh-TW
- zu-ZA
required: false
style: form
explode: true
schema:
type: string
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/ApiResponse'
deprecated: false
/SearchCourses:
get:
tags:
- Course Management
summary: Search for courses
description: Allows you to search for courses.
operationId: SearchCourses
parameters:
- name: pageIndex
in: query
description: 'A 0-based index of the paged results you wish to receive. In general, you should start with a value of zero and increment it as you need to retrieve additional results. If not supplied, a value of 0 is used (the first page of results).'
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: pageSize
in: query
description: 'Indicates how many results you want per page. if not supplied, a default value of 100 is used.'
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: sort
in: query
description: |-
The value you want to sort by. If not supplied, a default value of "Name" will be used. You can append " DESC" after the sort value to sort descending. For example, "Name DESC" would sort by name in descending order. Possible values:
- Name
- Organization
- ContentProvider
- AvailableInstructorLed
- AvailableSelfPaced
required: false
style: form
explode: true
schema:
type: string
- name: name
in: query
description: 'An optional parameter used to filter for courses by name. When specified, only courses that have names that contain or match this value will be returned.'
required: false
style: form
explode: true
schema:
type: string
- name: externalId
in: query
description: An optional parameter used to filter for courses by external ID
required: false
style: form
explode: true
schema:
type: string
- name: hasLabs
in: query
description: 'An optional parameter used to filter for courses that contain labs. If true is passed, only courses with labs are returned. If false is passed, only courses without labs are returned.'
required: false
style: form
explode: true
schema:
type: boolean
- name: createdAfter
in: query
description: 'An optional parameter used to filter for courses created after a specified date. When used in conjunction with the "createdBefore" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: string
- name: createdBefore
in: query
description: 'An optional parameter used to filter for courses created before a specified date. When used in conjunction with the "createdAfter" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: string
- name: lastModifiedAfter
in: query
description: 'An optional parameter used to filter for courses modified after a specified date. When used in conjunction with the "lastModifiedBefore" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: string
- name: lastModifiedBefore
in: query
description: 'An optional parameter used to filter for courses modified before a specified date. When used in conjunction with the "lastModifiedAfter" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: string
- name: availableInstructorLed
in: query
description: 'An optional parameter used to filter for courses that are available instructor-led. If true is passed, only courses that are avaialble instructor-led are returned. If false is passed, only courses that are not available instructor-led are returned.'
required: false
style: form
explode: true
schema:
type: boolean
- name: availableSelfPaced
in: query
description: 'An optional parameter used to filter for courses that are available self-paced. If true is passed, only courses that are avaialble self-paced are returned. If false is passed, only courses that are not available self-paced are returned.'
required: false
style: form
explode: true
schema:
type: boolean
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/SearchCourseResponse'
deprecated: false
'/GetCourse/{id}':
get:
tags:
- Course Management
summary: Retrieve information about a course by id
description: Allows you to get information about a course.
operationId: GetCourse
parameters:
- name: id
in: path
description: The ID of the course to retrieve
required: true
style: simple
explode: true
schema:
type: integer
format: int32
example: 34556
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/CourseResponse'
deprecated: false
'/GetCourseByExternalId/{id}':
get:
tags:
- Course Management
summary: Retrieve information about a course by external platform id
description: Allows you to get information about a course by providing a unique identifier from your external system.
operationId: GetCourseByExternalId
parameters:
- name: id
in: path
description: The external ID of the course to retrieve.
required: true
style: simple
explode: true
schema:
type: string
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/CourseResponse'
deprecated: false
/SearchCourseTagGroups:
get:
tags:
- Course Management
summary: Search for course tag groups
description: Allows you to search for course tag groups.
operationId: SearchCourseTagGroups
parameters:
- name: pageIndex
in: query
description: 'A 0-based index of the paged results you wish to receive. In general, you should start with a value of zero and increment it as you need to retrieve additional results. If not supplied, a value of 0 is used (the first page of results).'
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: pageSize
in: query
description: 'Indicates how many results you want per page. if not supplied, a default value of 100 is used.'
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: sort
in: query
description: |-
The value you want to sort by. If not supplied, a default value of "Name" will be assumed. You can append " DESC" after the sort value to sort descending. For example, "Name DESC" would sort by name time in descending order. Possible values:
- Name
required: false
style: form
explode: true
schema:
type: string
- name: name
in: query
description: An optional parameter used to filter for course tag groups by name
required: false
style: form
explode: true
schema:
type: string
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/SearchCourseTagGroupResponse'
deprecated: false
/SearchCourseFeedback:
get:
tags:
- Course Management
summary: Search for course feedback
description: Allows you to search for course feedback.
operationId: SearchCourseFeedback
parameters:
- name: pageIndex
in: query
description: 'A 0-based index of the paged results you wish to receive. In general, you should start with a value of zero and increment it as you need to retrieve additional results. If not supplied, a value of 0 is used (the first page of results).'
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: pageSize
in: query
description: 'Indicates how many results you want per page. if not supplied, a default value of 100 is used.'
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: sort
in: query
description: |-
The value you want to sort by. If not supplied, a default value of "Created" will be used. You can append " DESC" after the sort value to sort descending. For example, "Created DESC" would sort by created date in descending order. Possible values:
- Created
- Title
- Content
- Positive
- Negative
- User
- CourseAssignment
- Course
- Class
- ClassEnrollment
- Activity
- ActivityType
required: false
style: form
explode: true
schema:
type: string
- name: courseId
in: query
description: 'An optional parameter used to filter for a course by Id. When specified, only feedback entries for the specified course will be returned.'
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 67785
- name: name
in: query
description: 'An optional parameter used to filter for courses by name. When specified, only feedback entries for courses that have names that contain or match this value will be returned.'
required: false
style: form
explode: true
schema:
type: string
- name: createdAfter
in: query
description: 'An optional parameter used to filter for feedback entries created after a specified date. When used in conjunction with the "createdBefore" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: integer
format: int64
nullable: true
example: 1492203295
- name: createdBefore
in: query
description: 'An optional parameter used to filter for feedback entries created before a specified date. When used in conjunction with the "createdAfter" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: integer
format: int64
nullable: true
example: 1492203295
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/SearchCourseFeedbackReponse'
deprecated: false
'/GetClassEnrollment/{id}':
get:
tags:
- Class Enrollment Management
summary: Retrieve class enrollment information by id
description: Allows you to get basic information about a class enrollment.
operationId: GetClassEnrollment
parameters:
- name: id
in: path
description: The ID of the class enrollment to retrieve
required: true
style: simple
explode: true
schema:
type: string
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/ClassEnrollmentResponse'
deprecated: false
/GetClassEnrollmentByClassAndUser:
get:
tags:
- Class Enrollment Management
summary: Retrieve class enrollment information by class id and user id
description: Allows you to get information about a class enrollment by providing class and user identifiers.
operationId: GetClassEnrollmentByClassAndUser
parameters:
- name: classId
in: query
description: The class ID of the enrollment
required: true
style: form
explode: true
schema:
type: integer
format: int32
example: 445632
- name: userId
in: query
description: The user ID of the enrollment
required: true
style: form
explode: true
schema:
type: integer
format: int32
example: 67856
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/ClassEnrollmentResponse'
deprecated: false
/GetClassEnrollmentByExternalId:
get:
tags:
- Class Enrollment Management
summary: Retrieve class enrollment information by external platform id
description: Allows you to get information about a class enrollment by providing a unique identifier from your external system.
operationId: GetClassEnrollmentByExternalId
parameters:
- name: id
in: query
description: The external ID of the class enrollment to retrieve
required: true
style: form
explode: true
schema:
type: string
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/ClassEnrollmentResponse'
deprecated: false
/CreateClassEnrollment:
get:
tags:
- Class Enrollment Management
x-stoplight:
id: 54b98be047195
summary: Create a class enrollment
description: Allows you to create a class enrollment.
operationId: CreateClassEnrollment
parameters:
- name: externalId
in: query
description: 'The exernal ID of the class enrollment, usually a unique identifier from the calling system'
required: false
style: form
explode: true
schema:
type: string
- name: classId
in: query
description: The Id of the related class
required: true
style: form
explode: true
schema:
type: integer
format: int32
example: 10
- name: userId
in: query
description: The Id of the related user
required: true
style: form
explode: true
schema:
type: integer
format: int32
example: 10
- name: enrollmentStatusId
in: query
description: |-
Indicates the status of the class enrollment
- 0 = Request
- 10 = Cancel
- 20 = Waitlist
- 30 = Approve
- 40 = Deny
- 50 = Audit
- 60 = Enroll
required: true
style: form
explode: true
schema:
type: string
- name: completionStatusId
in: query
description: |-
Indicates the completion status of the class enrollment
- 0 = Unknown
- 10 = Attending
- 20 = Complete
- 30 = Incomplete
- 40 = NoShow
- 50 = Failed
required: true
style: form
explode: true
schema:
type: string
- name: lateCancel
in: query
description: Indicates if the class enrollment was cancelled outside the late cancellation window
required: false
style: form
explode: true
schema:
type: boolean
- name: retake
in: query
description: Indicates if the class enrollment is a retake
required: false
style: form
explode: true
schema:
type: boolean
- name: LocationTypeId
in: query
description: |-
Indicates the location type that the student is assigned to attend the class
- 0 = To Be Determined
- 10 = Classroom
- 20 = Remote Classroom
- 30 = Virtual
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 10
- name: ClassroomId
in: query
description: The ID of the classroom (if any) in which the student is assigned to attend the class
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 10
- name: HoursSpent
in: query
description: The hours spent by the student in the class enrollment
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 10
- name: Grade
in: query
description: The grade the student received for the class enrollment
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 10
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/CreateClassEnrollmentResponse'
deprecated: false
'/DeleteClassEnrollment/{id}':
get:
tags:
- Class Enrollment Management
summary: Delete a class enrollment by id
description: Allows you to delete a class enrollment.
operationId: DeleteClassEnrollment
parameters:
- name: id
in: path
description: The ID of the class enrollment to delete
required: true
style: simple
explode: true
schema:
type: integer
format: int32
example: 45632
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/ApiResponse'
deprecated: false
'/UpdateClassEnrollment/{id}':
get:
tags:
- Class Enrollment Management
summary: Update a class enrollment by id
description: Allows you to update a class enrollment.
operationId: UpdateClassEnrollment
parameters:
- name: id
in: path
description: The ID of the class enrollment.
required: true
style: simple
explode: true
schema:
type: integer
format: int32
example: 45632
- name: externalId
in: query
description: 'The exernal ID of the class enrollment, usually a unique identifier from the calling system'
required: false
style: form
explode: true
schema:
type: string
- name: classId
in: query
description: The Id of the related class
required: true
style: form
explode: true
schema:
type: integer
format: int32
example: 10
- name: userId
in: query
description: The Id of the related user
required: true
style: form
explode: true
schema:
type: integer
format: int32
example: 10
- name: enrollmentStatusId
in: query
description: |-
Indicates the status of the class enrollment
- 0 = Request
- 10 = Cancel
- 20 = Waitlist
- 30 = Approve
- 40 = Deny
- 50 = Audit
- 60 = Enroll
required: true
style: form
explode: true
schema:
type: integer
format: int32
- name: completionStatusId
in: query
description: |-
Indicates the completion status of the class enrollment
- 0 = Unknown
- 10 = Attending
- 20 = Complete
- 30 = Incomplete
- 40 = NoShow
- 50 = Failed
required: true
style: form
explode: true
schema:
type: string
- name: lateCancel
in: query
description: Indicates if the class enrollment was cancelled outside the late cancellation window
required: false
style: form
explode: true
schema:
type: boolean
- name: retake
in: query
description: Indicates if the class enrollment is a retake
required: false
style: form
explode: true
schema:
type: boolean
- name: LocationTypeId
in: query
description: |-
Indicates the location type that the student is assigned to attend the class
- 0 = To Be Determined
- 10 = Classroom
- 20 = Remote Classroom
- 30 = Virtual
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 10
- name: ClassroomId
in: query
description: The ID of the classroom (if any) in which the student is assigned to attend the class
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 10
- name: HoursSpent
in: query
description: The hours spent by the student in the class enrollment
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 10
- name: Grade
in: query
description: The grade the student received for the class enrollment
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 10
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/ApiResponse'
deprecated: false
/SearchClassEnrollments:
get:
tags:
- Class Enrollment Management
summary: Search for a class enrollment
description: Allows you to search for a class enrollment.
operationId: SearchClassEnrollments
parameters:
- name: pageIndex
in: query
description: 'A 0-based index of the paged results you wish to receive. In general, you should start with a value of zero and increment it as you need to retrieve additional results. If not supplied, a value of 0 is used (the first page of results).'
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: pageSize
in: query
description: 'Indicates how many results you want per page. if not supplied, a default value of 100 is used.'
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: sort
in: query
description: |-
The value you want to sort by. If not supplied, a default value of "Name" will be used. You can append " DESC" after the sort value to sort descending. For example, "Name DESC" would sort by name in descending order. Possible values:
- Name
- Program
- CompanyOrganization
- Owner
- Company
- Starts
- Expires
- Size
- Used
- Created
- LastModified
required: false
style: form
explode: true
schema:
type: string
- name: className
in: query
description: 'An optional parameter used to filter for class enrollments by class name. When specified, only class enrollments that have names that contain or match this value will be returned.'
required: false
style: form
explode: true
schema:
type: string
- name: classId
in: query
description: 'An optional parameter used to filter for class enrollments by classid. When specified, only class enrollments that have an associated class with that Id will be returned.'
required: false
style: form
schema:
type: integer
format: int32
example: 10
- name: studentId
in: query
description: 'An optional parameter used to filter for class enrollments by the associated student''s ID. When specified, only class enrollments that have an associated student with that Id will be returned.'
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 10
- name: enrollmentStatusId
in: query
description: |-
An optional parameter used to filter for class enrollments based on the status of the class enrollment
- 0 = Request
- 10 = Cancel
- 20 = Waitlist
- 30 = Approve
- 40 = Deny
- 50 = Audit
- 60 = Enroll
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: createdAfter
in: query
description: 'An optional parameter used to filter for class enrollments created after a specified date. When used in conjunction with the "createdBefore" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 10
- name: createdBefore
in: query
description: 'An optional parameter used to filter for class enrollments created before a specified date. When used in conjunction with the "createdAfter" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 10
- name: lastModifiedAfter
in: query
description: 'An optional parameter used to filter for class enrollments updated after a specified date. When used in conjunction with the "lastModifiedBefore" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 10
- name: lastModifiedBefore
in: query
description: 'An optional parameter used to filter for class enrollments updated before a specified date. When used in conjunction with the "lastModifiedAfter" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 10
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/ClassEnrollmentSearchResponse'
deprecated: false
/GetClassEnrollmentCustomFields:
get:
tags:
- Class Enrollment Management
summary: Retrieves a list of class enrollment custom fields
description: Retreives a list of all available custom fields for your organization.
operationId: GetClassEnrollmentCustomFields
parameters: []
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/ClassEnrollmentCustomFieldResponse'
deprecated: false
x-stoplight:
id: qsvtp0mm2cu2q
/GetClassEnrollmentCustomFieldValues:
get:
tags:
- Class Enrollment Management
summary: Retrieves the custom field values for a specific class enrollment
description: Retrieves the current values of a specific custom field for a class enrollment.
operationId: GetClassEnrollmentCustomFieldValues
parameters:
- name: customFieldId
in: query
description: The ID of the custom field.
required: true
style: form
explode: true
schema:
type: string
- name: classEnrollmentId
in: query
description: The ID of the class enrollment holding the custom field.
required: true
style: form
explode: true
schema:
type: string
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/CustomFieldValueResponse'
deprecated: false
x-stoplight:
id: al1q899grmie2
/UpdateClassEnrollmentCustomFieldValue:
get:
tags:
- Class Enrollment Management
summary: Update a custom field for a class enrollment
description: Updates the current value of a specific custom field for a class enrollment.
operationId: UpdateClassEnrollmentCustomFieldValue
parameters:
- name: customFieldId
in: query
description: The ID of the custom field.
required: true
style: form
explode: true
schema:
type: string
- name: classEnrollmentId
in: query
description: The ID of the class enrollment holding the custom field.
required: true
style: form
explode: true
schema:
type: string
- name: textValue
in: query
description: 'The value of a text type class enrollment custom field: Textbox and Dropdown List'
required: false
style: form
explode: true
schema:
type: string
- name: numericValue
in: query
description: The value of a numeric type class enrollment custom field
required: false
style: form
explode: true
schema:
type: string
- name: booleanValue
in: query
description: The value for a boolean type class enrollment custom field.
required: false
style: form
explode: true
schema:
type: boolean
- name: separatedListValues
in: query
description: 'A Tab separated list of all the text values for a multi-select custom field type: Checkbox List'
required: false
style: form
explode: true
schema:
type: string
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/CustomFieldValueResponse'
deprecated: false
x-stoplight:
id: tar1qj1894qsy
'/GetCourseAssignment/{id}':
get:
tags:
- Course Assignment Management
summary: Retrieve course assignment information by id
description: Allows you to get information about a course assignment.
operationId: GetCourseAssignment
parameters:
- name: id
in: path
description: The ID of the course assignment to retrieve
required: true
style: simple
explode: true
schema:
type: integer
format: int32
example: 1234
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/CourseAssignmentResponse'
deprecated: false
'/GetCourseAssignmentByExternalId/{id}':
get:
tags:
- Course Assignment Management
summary: Retrieve course assignment information by external id
description: Allows you to get information about a course assignment by providing a unique identifier from your external system.
operationId: GetCourseAssignmentByExternalId
parameters:
- name: id
in: path
description: The external ID of the course assignment to retrieve
required: true
style: simple
explode: true
schema:
type: string
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/CourseAssignmentResponse'
deprecated: false
/CreateCourseAssignment:
get:
tags:
- Course Assignment Management
summary: Create a course assignment
description: Allows you to create a course assignment.
operationId: CreateCourseAssignment
parameters:
- name: ExternalId
in: query
description: 'The course assignment''s external ID, usually a unique identifier from the calling system'
required: false
style: form
explode: true
schema:
type: string
example: E3G5YZFREFEQ9371
- name: CourseId
in: query
description: The Id of the course associated with this course assignment
required: true
style: form
explode: true
schema:
type: integer
format: int32
nullable: true
example: 321
- name: UserId
in: query
description: The UserId of the user that is associated with this course assignment
required: true
style: form
explode: true
schema:
type: integer
format: int32
nullable: true
example: 44534
- name: ClubMembershipId
in: query
description: The subscription (if any) associated with this course assignment
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 1234
- name: Expires
in: query
description: 'When the course assignment expires (as a date string in format yyyy-MM-dd ex: 2025-12-04)'
required: false
style: form
explode: true
schema:
type: string
format: date
example: '2025-12-04'
- name: TargetCompletionDate
in: query
description: 'When course assignment is expected to be completed by the student (as a date string in format yyyy-MM-dd ex: 2025-12-04)'
required: false
style: form
explode: true
schema:
type: string
format: date
example: '2025-12-04'
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/CreateCourseAssignmentResponse'
deprecated: false
'/DeleteCourseAssignment/{id}':
get:
tags:
- Course Assignment Management
summary: Delete a course assignment by id
description: Allows you to delete a course assignment.
operationId: DeleteCourseAssignment
parameters:
- name: id
in: path
description: The ID of the course assignment to delete
required: true
style: simple
explode: true
schema:
type: integer
format: int32
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/ApiResponse'
deprecated: false
/UpdateCourseAssignment:
get:
tags:
- Course Assignment Management
summary: Update a course assignment by id
description: Allows you to update a course assignment.
operationId: UpdateCourseAssignment
parameters:
- name: Id
in: query
description: The ID of the course assignment
required: true
style: form
explode: true
schema:
type: integer
format: int32
example: 10
- name: ExternalId
in: query
description: 'The course assignment''s external ID, usually a unique identifier from the calling system'
required: false
style: form
explode: true
schema:
type: string
example: E3G5YZFREFEQ9371
- name: CourseId
in: query
description: The Id of the course associated with this course assignment
required: true
style: form
explode: true
schema:
type: integer
format: int32
example: 10
- name: UserId
in: query
description: The UserId of the user that is associated with this course assignment
required: true
style: form
explode: true
schema:
type: integer
format: int32
example: 10
- name: ClubMembershipId
in: query
description: The subscription (if any) associated with this course assignment
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 10
- name: Expires
in: query
description: When the course assignment expires (if ever) (in a string representation of the date)
required: false
style: form
explode: true
schema:
type: string
format: date
example: '2020-02-26'
- name: TargetCompletionDate
in: query
description: When course assignment is expected to be completed by the student (in a string representation of the date)
required: false
style: form
explode: true
schema:
type: string
format: date
example: '2020-02-26'
- name: Started
in: query
description: When the course assignment was started (if ever) (in a string representation of the date)
required: false
style: form
explode: true
schema:
type: string
format: date
example: '2020-02-26'
- name: Completed
in: query
description: When the course assignment was completed (if ever) (in a string representation of the date)
required: false
style: form
explode: true
schema:
type: string
format: date
example: '2020-02-26'
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateCourseAssignmentResponse'
deprecated: false
/SearchCourseAssignments:
get:
tags:
- Course Assignment Management
summary: Search for course assignments
description: Allows you to search for course assignments.
operationId: SearchCourseAssignments
parameters:
- name: pageIndex
in: query
description: 'A 0-based index of the paged results you wish to receive. In general, you should start with a value of zero and increment it as you need to retrieve additional results. If not supplied, a value of 0 is used (the first page of results).'
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: pageSize
in: query
description: 'Indicates how many results you want per page. if not supplied, a default value of 100 is used.'
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: sort
in: query
description: The value you want to sort by
required: false
style: form
explode: true
schema:
type: string
- name: userId
in: query
description: An optional parameter used to filter for course assignments for a particular user
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: userExternalId
in: query
description: An optional parameter used to filter for course assignments for a particular user using an external identifier
required: false
style: form
explode: true
schema:
type: string
- name: courseId
in: query
description: An optional parameter used to filter for course assignments for a particular course
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 10
- name: completionStatus
in: query
description: |-
An optional parameter used to filter for course assignments with a particular completion status. Possible values:
- 0 = Not Started
- 10 = Incomplete
- 20 = Not Started or Incomplete
- 30 = Complete
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 10
- name: createdAfter
in: query
description: 'An optional parameter used to filter for course assignments created after a specified date. When used in conjunction with the "createdBefore" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: integer
format: int64
example: 1318025880
- name: createdBefore
in: query
description: 'An optional parameter used to filter for course assignments created before a specified date. When used in conjunction with the "createdAfter" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: integer
format: int64
example: 1318025880
- name: expiresAfter
in: query
description: 'An optional parameter used to filter for course assignments that expire after a specified date. When used in conjunction with the "expiresBefore" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: integer
format: int64
example: 1318025880
- name: expiresBefore
in: query
description: 'An optional parameter used to filter for course assignments that expire before a specified date. When used in conjunction with the "expiresAfter" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: integer
format: int64
example: 1318025880
- name: startedAfter
in: query
description: 'An optional parameter used to filter for course assignments started after a specified date. When used in conjunction with the "startedBefore" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: integer
format: int64
example: 1318025880
- name: startedBefore
in: query
description: 'An optional parameter used to filter for course assignments started before a specified date. When used in conjunction with the "startedAfter" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: integer
format: int64
example: 1318025880
- name: completedAfter
in: query
description: 'An optional parameter used to filter for course assignments completed after a specified date. When used in conjunction with the "completedBefore" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: integer
format: int64
example: 1318025880
- name: completedBefore
in: query
description: 'An optional parameter used to filter for course assignments completed before a specified date. When used in conjunction with the "completedAfter" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: integer
format: int64
example: 1318025880
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/SearchCourseAssignmentsResponse'
deprecated: false
/SearchCourseCatalogSearchHistory:
get:
tags:
- Searching
summary: Search the course catalog's search history
description: Allows you to search course catalog search history records.
operationId: SearchCourseCatalogSearchHistory
parameters:
- name: pageIndex
in: query
description: 'A 0-based index of the paged results you wish to receive. In general, you should start with a value of zero and increment it as you need to retrieve additional results. If not supplied, a value of 0 is used (the first page of results).'
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: pageSize
in: query
description: 'Indicates how many results you want per page. if not supplied, a default value of 100 is used.'
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: sort
in: query
description: |-
The value you want to sort by. If not supplied, a default value of "SearchTime DESC" will be assumed. You can append " DESC" after the sort value to sort descending. For example, "SearchTime DESC" would sort by when the search was run in descending order.
Possible values:
- SearchTime
- LastName
required: false
style: form
explode: true
schema:
type: string
example: SearchTime
- name: userId
in: query
description: An optional parameter used to filter for searches run by a particular user.
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 4325
- name: userExternalId
in: query
description: An optional parameter used to filter for searches run by a particular user using an external identifier.
required: false
style: form
explode: true
schema:
type: string
example: 89CFAB18-443D-495C-89B0-95A85E0A00BA
- name: searchedAfter
in: query
description: 'An optional parameter used to filter for searches run after a specified date. When used in conjunction with the "searchedBefore" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: integer
format: int64
example: 1466092675
- name: searchedBefore
in: query
description: 'An optional parameter used to filter for searches run before a specified date. When used in conjunction with the "searchedAfter" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: integer
format: int64
example: 1466092675
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/SearchCourseCatalogSearchHistoryResponse'
deprecated: false
/SearchLabInstances:
get:
tags:
- Lab Instance Management
summary: Search for lab instances
description: Allows you to search for lab instances.
operationId: SearchLabInstances
parameters:
- name: pageIndex
in: query
description: 'A 0-based index of the paged results you wish to receive. In general, you should start with a value of zero and increment it as you need to retrieve additional results. If not supplied, a value of 0 is used (the first page of results).'
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: pageSize
in: query
description: 'Indicates how many results you want per page. if not supplied, a default value of 100 is used.'
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: sort
in: query
description: |-
The value you want to sort by. If not supplied, a default value of "StartTime DESC" will be assumed. You can append " DESC" after the sort value to sort descending. For example, "StartTime DESC" would sort by when the lab instance was started in descending order. Possible values:
- StartTime
- EndTime
- LastName
- Lab
- TotalRunTime
required: false
style: form
explode: true
schema:
type: string
example: StartTime DESC
- name: userId
in: query
description: An optional parameter used to filter for lab instances run by a particular user
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 678910
- name: userExternalId
in: query
description: An optional parameter used to filter for lab instances for a particular user using an external identifier
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 56564
- name: labId
in: query
description: An optional parameter used to filter for instances of a particular lab
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 5767784
- name: courseId
in: query
description: An optional parameter used to filter for lab instances launched from a particular course
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 56765
- name: classId
in: query
description: An optional parameter used to filter for lab instances launched from a particular class
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 68457
- name: classExternalId
in: query
description: An optional parameter used to filter for lab instances launched from a particular class. Usually a unique identifier from the calling system.
required: false
style: form
explode: true
schema:
type: string
example: ABC123
- name: completionStatus
in: query
description: |-
Filters for lab instances with a particular completion status. Possible values:
- 0 = Cancelled
- 10 = In progress
- 20 = Complete
- 30 = Error
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 10
- name: startedAfter
in: query
description: 'An optional parameter used to filter for lab instances started after a specified date. When used in conjunction with the "startedBefore" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: integer
format: int64
example: 1585690845
- name: startedBefore
in: query
description: 'An optional parameter used to filter for lab instances started before a specified date. When used in conjunction with the "startedAfter" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: integer
format: int64
example: 1585690845
- name: endedAfter
in: query
description: 'An optional parameter used to filter for lab instances ended after a specified date. When used in conjunction with the "endedBefore" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: integer
format: int64
example: 1585690845
- name: endedBefore
in: query
description: 'An optional parameter used to filter for lab instances ended before a specified date. When used in conjunction with the "endedAfter" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: integer
format: int64
example: 1585690845
- name: lastActivityTimeAfter
in: query
description: 'An optional parameter used to filter for lab instances who''s last activity time is after a specified date. When used in conjunction with the "lastActivityTimeBefore" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: integer
format: int64
example: 1585690845
- name: lastActivityTimeBefore
in: query
description: 'An optional parameter used to filter for lab instances who''s last activity time is before a specified date. When used in conjunction with the "lastActivityTimeAfter" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: integer
format: int64
example: 1585690845
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/SearchLabInstancesResponse'
deprecated: false
/SearchCourseExternalActivityLaunches:
get:
tags:
- Searching
summary: Search for course activities launched from an external link
description: 'Allows you to search external course activity launches (videos, documents, etc.).'
operationId: SearchCourseExternalActivityLaunches
parameters:
- name: pageIndex
in: query
description: 'A 0-based index of the paged results you wish to receive. In general, you should start with a value of zero and increment it as you need to retrieve additional results. If not supplied, a value of 0 is used (the first page of results).'
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: pageSize
in: query
description: 'Indicates how many results you want per page. if not supplied, a default value of 100 is used.'
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: sort
in: query
description: |-
The value you want to sort by. If not supplied, a default value of "LaunchTime DESC" will be assumed. You can append " DESC" after the sort value to sort descending. For example, "LaunchTime DESC" would sort by when the activity was launched in descending order. Possible values:
- LaunchTime
- LastName
- Course
- Activity
required: false
style: form
explode: true
schema:
type: string
example: LaunchTime DESC
- name: userId
in: query
description: An optional parameter used to filter for launches made by a particular user.
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 545656
- name: userExternalId
in: query
description: An optional parameter used to filter for launches made by a particular user using an external identifier
required: false
style: form
explode: true
schema:
type: string
example: 1563D8AE-8F56-4C16-B64E-5701D221E832
- name: courseId
in: query
description: An optional parameter used to filter for launches from a particular course.
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 456576
- name: activityType
in: query
description: |-
Filters for activities of a particular type:
- 40 = URL
- 60 = Video
- 70 = Document.
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 60
- name: launchedAfter
in: query
description: 'An optional parameter used to filter for activities launched after a specified date. When used in conjunction with the "launchedBefore" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: integer
format: int64
example: 1465663291
- name: launchedBefore
in: query
description: 'An optional parameter used to filter for activities launched before a specified date. When used in conjunction with the "launchedAfter" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: integer
format: int64
example: 1465663291
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/SearchCourseExternalActivityLaunchesResponse'
deprecated: false
'/GetClass/{id}':
get:
tags:
- Class Management
summary: Retrieve class information by id
description: Allows you to get information about a class.
operationId: GetClass
parameters:
- name: id
in: path
description: The ID of the class to retrieve
required: true
style: simple
explode: true
schema:
type: integer
format: int32
example: 10
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/ClassResponse'
deprecated: false
/GetClassByClassTrainingKey:
get:
tags:
- Class Management
summary: Retrieve class information by class training key
description: Allows you to get information about a class using the class training key.
operationId: GetClassByClassTrainingKey
parameters:
- name: classTrainingKey
in: query
description: The training key ID of the class to retrieve
required: true
style: form
explode: true
schema:
type: string
example: E3G5YZFREFEQ9371
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/ClassResponse'
deprecated: false
/GetClassByExternalId:
get:
tags:
- Class Management
summary: Retrieve class information by external platform ID
description: Allows you to get information about a class by providing a unique identifier from your external system.
operationId: GetClassByExternalId
parameters:
- name: id
in: query
description: The external ID of the class to retrieve
required: true
style: form
explode: true
schema:
type: string
example: E3G5YZFREFEQ9371
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/ClassResponse'
deprecated: false
/CreateClass:
get:
tags:
- Class Management
summary: Create a class
description: Allows you to create a class.
operationId: CreateClass
parameters:
- name: CourseId
in: query
description: The internal Id of the course the class is based on
required: true
style: form
explode: true
schema:
type: integer
format: int32
example: 1234
- name: Name
in: query
description: The name of the class
required: false
style: form
explode: true
schema:
type: string
example: Sample class name
- name: Description
in: query
description: A short description of the class
required: false
style: form
explode: true
schema:
type: string
example: Sample description of class
- name: HtmlDescription
in: query
description: A description of the class in HTML
required: false
style: form
explode: true
schema:
type: string
nullable: true
- name: ConfirmationStatusId
in: query
description: |-
The confirmation status of the class. If blank it will default to 0. Available statuses and their values are as follows:
- Scheduled = 0
- Guaranteed To Run = 1
- Cancelled = 2
- Rescheduled = 3
- Tentative = 4
- Requested = 5
- Denied = 6
- Completed = 7
style: form
explode: true
schema:
type: integer
format: int32
example: 0
- name: OrganizationId
in: query
description: The internal Id of the Organization that is running the class. If blank it will default to the API Consumer.
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 3232
- name: CompanyId
in: query
description: The internal company Id if this class is to be dedicated to a specific company
required: false
style: form
explode: true
schema:
type: integer
format: int32
nullable: true
- name: DeliveryTypeId
in: query
description: |-
The delivery type of the class. If blank, it will default to Physical unless other values are set to conflict with that setting. If set to Physical any virtual meeting host settings will be lost. Available delivery types are as follows:
- Physical = 1
- Virtual = 2
- Mixed = 3
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 1
- name: VirtualMeetingHostId
in: query
description: The internal Id of the virtual meeting host to use if a class is to be run virtually
required: false
style: form
explode: true
schema:
type: integer
format: int32
nullable: true
- name: CustomVirtualClassroomUrl
in: query
description: The url of the custom virtual classroom used for the class
required: false
style: form
explode: true
schema:
type: string
nullable: true
- name: PrimaryInstructorId
in: query
description: The internal user id of the instructor for the class
required: false
style: form
explode: true
schema:
type: integer
format: int32
nullable: true
- name: InstructorIds
in: query
description: 'The internal user ids of all of the instructors for the class. If a PrimaryInstructorId is not provided, the first instructor in this collection will be set as primary.'
required: false
style: form
explode: true
schema:
type: array
format: int32
nullable: true
example:
- 12345
- 98765
items:
type: integer
format: int32
- name: PrimaryClassroomId
in: query
description: The internal id of the classroom that this class will take place in
required: false
style: form
explode: true
schema:
type: integer
format: int32
nullable: true
- name: TimeZoneId
in: query
description: The .NET system timezone id that the class will be delivered in. If blank it will default to the organizations timezone setting. To get a complete list of supported timezones please use tzutil as timezones are constantly changing.
required: false
style: form
explode: true
schema:
type: string
- name: MinStudents
in: query
description: The minimum student enrollments for the class to be run. If blank this value will default to the setting at the API Consumer.
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 1
- name: MaxStudents
in: query
description: The maximum student enrollments allowed for the class. If blank this value will default to either the course or API Consumer settings.
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 6
- name: AllowSelfEnrollment
in: query
description: Sets this class to allow students to self-enroll
required: false
style: form
explode: true
schema:
type: boolean
example: false
- name: IsPublic
in: query
description: This sets if this class will be displayed on the Public Schedule
required: false
style: form
explode: true
schema:
type: boolean
example: true
- name: DisableLabs
in: query
description: This sets if you would like to disable lab access for this class
required: false
style: form
explode: true
schema:
type: boolean
example: false
- name: SurveyId
in: query
description: The internal id of the student survey to associate with this class. If blank this value will default to the settings at the course or API Consumer.
required: false
style: form
explode: true
schema:
type: integer
format: int32
nullable: true
- name: StudentSurveyAvailabilityStartTypeId
in: query
description: |-
The setting for when the students should begin to see that the survey is available to them. The following options are available:
- Hours Before Event Ends = 0
- Hours After Event Begins = 1
required: false
style: form
explode: true
schema:
type: integer
format: int32
nullable: true
- name: SurveyAvailabilityStartHours
in: query
description: 'The number of hours (either before the event ends, or after the event begins, depending on the setting of StudentSurveyAvailabilityStartTypeId) for when the student survey will become available. If blank it will default to the default settings of the API Consumer.'
required: false
style: form
explode: true
schema:
type: integer
format: int32
nullable: true
- name: SurveyAvailabilityEndDays
in: query
description: The number of days that the student survey will be available to students after the event ends. If blank it will default to the default settings of the API Consumer.
required: false
style: form
explode: true
schema:
type: integer
format: int32
nullable: true
- name: InstructorSurveyId
in: query
description: The internal id of the survey to present to instructors of the class. If blank it will default to the default settings of the course or API Consumer.
required: false
style: form
explode: true
schema:
type: integer
format: int32
nullable: true
- name: OrganizationSurveyId
in: query
description: The internal id of the organization survey for the class. If blank it will default to the default settings of the course or API Consumer.
required: false
style: form
explode: true
schema:
type: integer
format: int32
nullable: true
- name: ExternalId
in: query
description: 'The class''s external ID, usually a unique identifier from the calling system.'
required: false
style: form
explode: true
schema:
type: string
nullable: true
- name: ClassMeetings
in: query
description: A collection of ClassMeetings in JSON format.
style: form
schema:
type: array
items:
$ref: '#/components/schemas/ClassMeeting'
explode: true
required: true
- name: AvailableToOrganizationIds
in: query
description: A comma separated list of int organization Ids that this class should be available to.
required: false
style: form
explode: true
schema:
type: string
example: '123,4556,221'
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/CreateClassResponse'
deprecated: false
'/UpdateClass/{id}':
get:
tags:
- Class Management
summary: Update a class by id
description: Allows you to update a class.
operationId: UpdateClass
parameters:
- name: CourseId
in: query
description: The internal Id of the course the class is based on
required: true
style: form
explode: true
schema:
type: integer
format: int32
example: 1234
- name: id
in: path
description: The ID of the class to retrieve.
required: true
style: simple
explode: true
schema:
type: integer
format: int32
example: 202783
- name: Name
in: query
description: The name of the class
required: false
style: form
explode: true
schema:
type: string
example: Sample class name
- name: Description
in: query
description: A short description of the class
required: false
style: form
explode: true
schema:
type: string
example: Sample description of class
- name: HtmlDescription
in: query
description: A description of the class in HTML
required: false
style: form
explode: true
schema:
type: string
nullable: true
- name: ConfirmationStatusId
in: query
description: |-
The confirmation status of the class. If blank it will default to 0. Available statuses and their values are as follows:
- Scheduled = 0
- Guaranteed To Run = 1
- Cancelled = 2
- Rescheduled = 3
- Tentative = 4
- Requested = 5
- Denied = 6
- Completed = 7
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 1
- name: OrganizationId
in: query
description: The internal Id of the Organization that is running the class. If blank it will default to the API Consumer.
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 3232
- name: CompanyId
in: query
description: The internal company Id if this class is to be dedicated to a specific company
required: false
style: form
explode: true
schema:
type: integer
format: int32
nullable: true
- name: DeliveryTypeId
in: query
description: |-
The delivery type of the class. If blank, it will default to Physical unless other values are set to conflict with that setting. If set to Physical any virtual meeting host settings will be lost. Available delivery types are as follows:
- Physical = 1
- Virtual = 2
- Mixed = 3
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 5454
- name: VirtualMeetingHostId
in: query
description: The internal Id of the virtual meeting host to use if a class is to be run virtually
required: false
style: form
explode: true
schema:
type: integer
format: int32
nullable: true
- name: CustomVirtualClassroomUrl
in: query
description: The url of the custom virtual classroom used for the class
required: false
style: form
explode: true
schema:
type: string
nullable: true
- name: PrimaryInstructorId
in: query
description: The internal user id of the instructor for the class
required: false
style: form
explode: true
schema:
type: integer
format: int32
nullable: true
- name: InstructorIds
in: query
description: 'The internal user ids of all of the instructors for the class. If a PrimaryInstructorId is not provided, the first instructor in this collection will be set as primary.'
required: false
style: form
explode: true
schema:
type: array
nullable: true
example:
- 12345
- 98765
items:
type: integer
format: int32
format: int32
- name: PrimaryClassroomId
in: query
description: The internal id of the classroom that this class will take place in
required: false
style: form
explode: true
schema:
type: integer
format: int32
nullable: true
- name: TimeZoneId
in: query
description: The .NET system timezone id that the class will be delivered in. If blank it will default to the organizations timezone setting. To get a complete list of supported timezones please use tzutil as timezones are constantly changing.
required: false
style: form
explode: true
schema:
type: string
- name: MinStudents
in: query
description: The minimum student enrollments for the class to be run. If blank this value will default to the setting at the API Consumer.
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 1
- name: MaxStudents
in: query
description: The maximum student enrollments allowed for the class. If blank this value will default to either the course or API Consumer settings.
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 6
- name: AllowSelfEnrollment
in: query
description: Sets this class to allow students to self-enroll
required: false
style: form
explode: true
schema:
type: boolean
example: false
- name: IsPublic
in: query
description: This sets if this class will be displayed on the Public Schedule
required: false
style: form
explode: true
schema:
type: boolean
example: true
- name: DisableLabs
in: query
description: This sets if you would like to disable lab access for this class
required: false
style: form
explode: true
schema:
type: boolean
example: false
- name: SurveyId
in: query
description: The internal id of the student survey to associate with this class. If blank this value will default to the settings at the course or API Consumer.
required: false
style: form
explode: true
schema:
type: integer
format: int32
nullable: true
- name: StudentSurveyAvailabilityStartTypeId
in: query
description: |-
The setting for when the students should begin to see that the survey is available to them. The following options are available:
- Hours Before Event Ends = 0
- Hours After Event Begins = 1
required: false
style: form
explode: true
schema:
type: integer
format: int32
nullable: true
- name: SurveyAvailabilityStartHours
in: query
description: 'The number of hours (either before the event ends, or after the event begins, depending on the setting of StudentSurveyAvailabilityStartTypeId) for when the student survey will become available. If blank it will default to the default settings of the API Consumer.'
required: false
style: form
explode: true
schema:
type: integer
format: int32
nullable: true
- name: SurveyAvailabilityEndDays
in: query
description: The number of days that the student survey will be available to students after the event ends. If blank it will default to the default settings of the API Consumer.
required: false
style: form
explode: true
schema:
type: integer
format: int32
nullable: true
- name: InstructorSurveyId
in: query
description: The internal id of the survey to present to instructors of the class. If blank it will default to the default settings of the course or API Consumer.
required: false
style: form
explode: true
schema:
type: integer
format: int32
nullable: true
- name: OrganizationSurveyId
in: query
description: The internal id of the organization survey for the class. If blank it will default to the default settings of the course or API Consumer.
required: false
style: form
explode: true
schema:
type: integer
format: int32
nullable: true
- name: ExternalId
in: query
description: 'The class''s external ID, usually a unique identifier from the calling system.'
required: false
style: form
explode: true
schema:
type: string
nullable: true
- name: ClassMeetings
in: query
description: A collection of ClassMeetings in JSON format.
schema:
type: array
items:
$ref: '#/components/schemas/ClassMeeting'
explode: true
required: true
- name: AvailableToOrganizationIds
in: query
description: A comma separated list of int organization Ids that this class should be available to.
required: false
style: form
explode: true
schema:
type: string
example: '123,4556,221'
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/ApiResponse'
deprecated: false
/SearchClasses:
get:
tags:
- Class Management
summary: Search for classes
description: Allows you to search for classes belonging to your organization.
operationId: SearchClasses
parameters:
- name: pageIndex
in: query
description: 'A 0-based index of the paged results you wish to receive. In general, you should start with a value of zero and increment it as you need to retrieve additional results. If not supplied, a value of 0 is used (the first page of results).'
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: pageSize
in: query
description: 'Indicates how many results you want per page. if not supplied, a default value of 100 is used.'
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: sort
in: query
description: |-
The value you want to sort by. If not supplied, a default value of "Start" will be used. You can append " DESC" after the sort value to sort descending. For example, "Start DESC" would sort by class start time in descending order. Possible values:
- Name
- Course
- ConfirmationStatus
- Start
- End
- Organization
required: false
style: form
explode: true
schema:
type: string
- name: name
in: query
description: 'An optional parameter used to filter for classes by name. When specified, only classes that have names that contain or match the this value will be returned.'
required: false
style: form
explode: true
schema:
type: string
nullable: true
- name: courseId
in: query
description: An optional parameter used to filter for classes for a particular course.
required: false
style: form
explode: true
schema:
type: integer
format: int32
example: 3445
- name: startsAfter
in: query
description: 'An optional parameter used to filter for classes that start after a specified date. When used in conjunction with the "startsBefore" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: integer
format: int64
example: 1449874800
- name: startsBefore
in: query
description: 'An optional parameter used to filter for classes that start before a specified date. When used in conjunction with the "startsAfter" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: integer
format: int64
example: 1449874800
- name: endsAfter
in: query
description: 'An optional parameter used to filter for classes that end after a specified date. When used in conjunction with the "endsBefore" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: integer
format: int64
example: 1449874800
- name: endsBefore
in: query
description: 'An optional parameter used to filter for classes that end before a specified date. When used in conjunction with the "endsAfter" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: integer
format: int64
example: 1449874800
- name: lastModifiedAfter
in: query
description: 'An optional parameter used to filter for classes that were modified after a specified date. When used in conjunction with the "lastModifiedBefore" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: integer
format: int64
example: 1338766912
- name: lastModifiedBefore
in: query
description: 'An optional parameter used to filter for classes that were modified before a specified date. When used in conjunction with the "lastModifiedAfter" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: integer
format: int64
example: 1338763705
- name: hasLabs
in: query
description: 'An optional parameter used to filter for classes that have available labs. If true is passed, only classes with labs are returned. If false is passed, only classes without labs are returned.'
required: false
style: form
explode: true
schema:
type: boolean
example: true
- name: availableOnline
in: query
description: 'An optional parameter used to filter for classes that are available online. If true is passed, only online classes are returned. If false is passed, only physically delivered classes are returned.'
required: false
style: form
explode: true
schema:
type: boolean
example: false
- name: customFields
in: query
description: An optional parameter used to filter for classes based on custom field values.
required: false
style: form
explode: false
schema:
type: array
items:
$ref: '#/components/schemas/CustomFieldSearchFilter'
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/SearchClassesResponse'
deprecated: false
/SearchPublicClassSchedule:
get:
tags:
- Class Management
summary: Search for public class schedules
description: 'Allows you to search the public class schedule for your organization, including classes made available to your organization by partner organizations.'
operationId: SearchPublicClassSchedule
parameters:
- name: pageIndex
in: query
description: 'A 0-based index of the paged results you wish to receive. In general, you should start with a value of zero and increment it as you need to retrieve additional results. If not supplied, a value of 0 is used (the first page of results).'
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: pageSize
in: query
description: 'Indicates how many results you want per page. if not supplied, a default value of 100 is used.'
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: sort
in: query
description: |-
The value you want to sort by. If not supplied, a default value of "Start" will be used. You can append " DESC" after the sort value to sort descending. For example, "Start DESC" would sort by class start time in descending order. Possible values:
- Name
- Course
- ConfirmationStatus
- Start
- End
- Organization
required: false
style: form
explode: true
schema:
type: string
- name: name
in: query
description: 'An optional parameter used to filter for classes by name. When specified, only classes that have names that contain or match the this value will be returned.'
required: false
style: form
explode: true
schema:
type: string
nullable: true
- name: hasLabs
in: query
description: 'An optional parameter used to filter for classes that have available labs. If true is passed, only classes with labs are returned. If false is passed, only classes without labs are returned.'
required: false
style: form
explode: true
schema:
type: boolean
example: true
- name: availableOnline
in: query
description: 'An optional parameter used to filter for classes that are available online. If true is passed, only online classes are returned. If false is passed, only physically delivered classes are returned.'
required: false
style: form
explode: true
schema:
type: boolean
example: false
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/SearchPublicClassScheduleResponse'
deprecated: false
/GetClassCustomFields:
get:
tags:
- Class Management
summary: Retrieves a list of class custom fields
description: Retreives a list of all available custom fields for your organization.
operationId: GetClassCustomFields
parameters: []
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/ClassCustomFieldResponse'
deprecated: false
/GetClassCustomFieldValue:
get:
tags:
- Class Management
summary: Retrieves a value within a class' custom field
description: Retreives the current value of a specific custom field for a class.
operationId: GetClassCustomFieldValue
parameters:
- name: customFieldId
in: query
description: The ID of the custom field.
required: true
style: form
explode: true
schema:
type: integer
format: int32
- name: classId
in: query
description: The ID of the class holding the custom field.
required: true
style: form
explode: true
schema:
type: integer
format: int32
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/CustomFieldValueResponse'
deprecated: false
/UpdateClassCustomFieldValue:
get:
tags:
- Class Management
summary: Update a custom field for a class
description: Updates the current value of a specific custom field for a class.
operationId: UpdateClassCustomFieldValue
parameters:
- name: customFieldId
in: query
description: The ID of the custom field.
required: true
style: form
explode: true
schema:
type: string
- name: classId
in: query
description: The ID of the class holding the custom field.
required: true
style: form
explode: true
schema:
type: string
- name: textValue
in: query
description: 'The value of a text type class custom field: Textbox and Dropdown List'
required: false
style: form
explode: true
schema:
type: string
- name: numericValue
in: query
description: The value of a numeric type class custom field
required: false
style: form
explode: true
schema:
type: string
- name: booleanValue
in: query
description: 'The value for a boolean type class custom field: Checkbox'
required: false
style: form
explode: true
schema:
type: boolean
- name: separatedListValues
in: query
description: 'A Tab separated list of all the text values for a multi-select custom field type: Checkbox List'
required: false
style: form
explode: true
schema:
type: string
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/CustomFieldValueResponse'
deprecated: false
/GetLabInstanceDetails:
get:
tags:
- Lab Instance Management
summary: Retrieve details about a lab instance based on the TMS Lab Instance Id.
description: The **GetLabInstanceDetails** command retrieves detailed information about a specified TMS lab instance using the TMS Lab Instance Id.
operationId: GetLabInstanceDetails
parameters:
- name: labinstanceid
in: query
description: The TMS ID of the lab instance.
required: true
style: form
explode: true
schema:
type: integer
format: int64
example: 360701
responses:
'200':
description: OK Response.
content:
application/json:
schema:
$ref: '#/components/schemas/GetLabInstanceDetailsResponse'
examples:
Example of the details returned from a specific lab instance:
value:
Id: 360701
LabId: 18100
LabName: '01: Launch/Details Call'
SeriesId: 10702
SeriesName: API Examples
UserId: '11'
UserFirstName: Chad
UserLastName: S
ClassId: null
ClassName: null
AssignmentId: null
Start: 1603295589
StartTime: /Date(1603295589000)/
Expires: 1603299334
ExpiresTime: /Date(1603299334000)/
End: 1603295793
EndTime: /Date(1603295793000)/
LastActivity: 1603295787
LastActivityTime: /Date(1603295787000)/
LastSave: null
LastSaveTime: null
SaveExpires: null
SaveExpiresTime: null
State: Tearing Down
CompletionStatus: Complete
PoolMemberName: null
LabHostId: 111
LabHostName: LOD-HV03
DatacenterId: 4
DatacenterName: LOD-East
DeliveryRegionId: 1
DeliveryRegionName: Default
PlatformId: 2
LastSaveTriggerType: null
TimeInSession: 204
TotalRunTime: 204
TimeRemaining: 0
InstructorName: null
StartupDuration: 145
Errors: []
Snapshots: []
Sessions:
- Start: 1603295589
StartTime: /Date(1603295589000)/
End: 1603295793
EndTime: /Date(1603295793000)/
Notes:
- Time: 1603295793
TimeValue: /Date(1603295793000)/
Title: This environment has been submitted for grading and can no longer be accessed.
Text: Submitted for scoring from the lab console by the student.
HasContent: true
Task: null
Exercise: null
NumTasks: 0
NumCompletedTasks: 0
TaskCompletePercent: 100
RemoteController: HTML5
Tag: null
BrowserUserAgent: 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.80 Safari/537.36 Edg/86.0.622.48'
LastLatency: 35
ExamPassed: true
ExamScore: 5
ExamMaxPossibleScore: 5
ExamPassingScore: 2
ExamScoredById: null
ExamScoredByName: null
ExamDetails: null
ExamScoredDate: 1603295793
ExamScoredTime: /Date(1603295793000)/
IsExam: true
IpAddress: 198.199.209.76
Country: United States of America
Region: Florida
City: Lakeland
Latitude: 28.03947
Longitude: -81.9498
PublicIpAddresses: []
CloudCredentials:
- PropertiesJson: '{ "Username": "Username2", "Password": "Password2"}'
Expires: 1645557720000
DisplayName: Demo Demo Demo Demo Demo
Message: null
CloudPortalCredentials:
- CloudPlatform: 10
PropertiesJson: "{\r\n \"Username\": \"User1-360701@lod.onmicrosoft.com\",\r\n \"Password\": \"1234ABCD\",\r\n \"_FirstName\": \"Chad\",\r\n \"_LastName\": \"S\"\r\n}"
VirtualMachineCredentials:
- Id: 13484
Name: Windows 10 2004
Username: Student
Password: Pa$$w0rd
CloudPlatformId: 10
ClientUrl: null
ActivityResults:
- ActivityId: 4910
ActivityName: What is 1 + 1?
Scored: true
Score: 1
Passed: true
ActivityType: 0
TextResult: null
UiResponse: You got the correct answer.
AnswerResults:
- AnswerId: 2856
AnswerText: '2'
Correct: true
ScriptResults: []
DisplayScriptsAsTaskList: false
AnswerTexts:
- Correct: false
AnswerId: 2855
Text: '1'
Chosen: false
- Correct: true
AnswerId: 2856
Text: '2'
Chosen: true
- Correct: false
AnswerId: 2857
Text: '3'
Chosen: false
- Correct: false
AnswerId: 2858
Text: '4'
Chosen: false
ScriptTexts: []
ShowResultsInReports: true
- ActivityId: 4911
ActivityName: Select all that result in a product of 4
Scored: true
Score: 3
Passed: true
ActivityType: 10
TextResult: null
UiResponse: 'Good, you understand what a product function is.'
AnswerResults:
- AnswerId: 2859
AnswerText: '1, 4'
Correct: true
- AnswerId: 2860
AnswerText: '-1, -4'
Correct: true
- AnswerId: 2861
AnswerText: '2, 2'
Correct: true
DisplayScriptsAsTaskList: false
AnswerTexts:
- Correct: true
AnswerId: 2859
Text: '1, 4'
Chosen: true
- Correct: true
AnswerId: 2860
Text: '-1, -4'
Chosen: true
- Correct: true
AnswerId: 2861
Text: '2, 2'
Chosen: true
- Correct: false
AnswerId: 2862
Text: '2, -2'
Chosen: false
ScriptTexts: []
ShowResultsInReports: true
- ActivityId: 4912
ActivityName: What is the southernmost continent on earth?
Scored: true
Score: 1
Passed: true
ActivityType: 20
TextResult: Antarctica
UiResponse: 'Great, you know your geography.'
AnswerResults: []
ScriptResults: []
DisplayScriptsAsTaskList: false
AnswerTexts: []
ScriptTexts: []
ShowResultsInReports: true
- ActivityId: 110631
ActivityName: What are the colors of the French flag?
Scored: true
Score: 3
Passed: true
ActivityType: 30
TextResult: 'It''s blue, white, red'
UiResponse: 'Correct, move on to the next flag question.'
AnswerResults: []
ScriptResults: []
DisplayScriptsAsTaskList: false
AnswerTexts: []
ScriptTexts: []
ShowResultsInReports: true
- ActivityId: 91810
ActivityName: 'Create a folder called LAB in the root of C:'
Scored: true
Score: 0
Passed: false
ActivityType: 40
TextResult: null
UiResponse: null
AnswerResults: []
ScriptResults:
- ScriptId: 37337
Score: 0
Passed: false
UiResponse: ''
ScriptResponse: "Check if [C:\\LAB] exists.\r\n\r\nPath Does Not Exist\r\n"
PlatformError: false
ScriptError: false
DisplayScriptsAsTaskList: false
AnswerTexts: []
ScriptTexts:
- ScriptId: 37337
Text: null
ShowResultsInReports: true
ActivityGroupResults:
- Id: 1131
Name: GRP1
ScoreValueTotal: 40
AggregateScore: 20
ActivityResults:
- ActivityId: 91811
ActivityName: Instructor First Name
Scored: true
Score: 20
Passed: true
ActivityType: 20
TextResult: Jon
UiResponse: Correct
AnswerResults: []
ScriptResults: []
DisplayScriptsAsTaskList: false
AnswerTexts: []
ScriptTexts: []
ShowResultsInReports: true
- ActivityId: 91812
ActivityName: Instructor Last Name
Scored: true
Score: 0
Passed: false
ActivityType: 20
TextResult: Kirk
UiResponse: Incorrect
AnswerResults: []
ScriptResults: []
DisplayScriptsAsTaskList: false
AnswerTexts: []
ScriptTexts: []
ShowResultsInReports: true
EstimatedReadySeconds: null
InstructionsSetId: The ID of the Instructions used
Language: en
Error: null
Status: 1
deprecated: false
x-stoplight:
id: gjs3manumlc0r
/GetClubMembership:
get:
tags:
- Subscription Management
summary: Retrieve subscription assignment information by id
description: Allows you to get basic information about a subscription assignment.
operationId: GetClubMembership
parameters:
- name: id
in: query
description: The ID of the subscription to retrieve
required: true
style: form
explode: true
schema:
type: integer
format: int32
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/ClubMembershipResponse'
deprecated: false
/GetClubMembershipByExternalId:
get:
tags:
- Subscription Management
summary: Retrieve subscription assignment information by external platform ID
description: Allows you to get information about a subscription assignment by providing a unique identifier from your external system.
operationId: GetClubMembershipByExternalId
parameters:
- name: id
in: query
description: The external ID of the subscription to retrieve
required: true
style: form
explode: true
schema:
type: string
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/ClubMembershipResponse'
deprecated: false
/CreateClubMembership:
get:
tags:
- Subscription Management
summary: Create a subscription assignment
description: Allows you to create a subscription assignment.
operationId: CreateClubMembership
parameters:
- name: externalId
in: query
description: 'The exernal ID of the subscription, usually a unique identifier from the calling system'
required: false
style: form
explode: true
schema:
type: string
- name: clubId
in: query
description: The Id of the related subscription profile
required: true
style: form
explode: true
schema:
type: string
- name: userId
in: query
description: The Id of the related user
required: true
style: form
explode: true
schema:
type: string
- name: starts
in: query
description: When the subscription starts (in Unix epoch time)
required: true
style: form
explode: true
schema:
type: string
- name: expires
in: query
description: When the subscription expires (in Unix epoch time)
required: false
style: form
explode: true
schema:
type: string
- name: targetCompletion
in: query
description: When the subscription is expected to be completed by the student (in Unix epoch time)
required: false
style: form
explode: true
schema:
type: string
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/CreateClubMembershipResponse'
deprecated: false
/DeleteClubMembership:
get:
tags:
- Subscription Management
summary: Delete a subscription assignment by id
description: Allows you to delete a subscription assignment.
operationId: DeleteClubMembership
parameters:
- name: id
in: query
description: The ID of the subscription to delete
required: true
style: form
explode: true
schema:
type: integer
format: int32
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/ApiResponse'
deprecated: false
/UpdateClubMembership:
get:
tags:
- Subscription Management
summary: Update a subscription assignment by id
description: Allows you to update a subscription assignment.
operationId: UpdateClubMembership
parameters:
- name: id
in: query
description: The ID of the subscription
required: true
style: form
explode: true
schema:
type: integer
format: int32
- name: externalId
in: query
description: 'The exernal ID of the subscription, usually a unique identifier from the calling system'
required: false
style: form
explode: true
schema:
type: string
- name: clubId
in: query
description: The Id of the related subscription profile
required: true
style: form
explode: true
schema:
type: integer
format: int32
- name: userId
in: query
description: The Id of the related user
required: true
style: form
explode: true
schema:
type: integer
format: int32
- name: starts
in: query
description: When the subscription starts (in Unix epoch time)
required: true
style: form
explode: true
schema:
type: integer
format: int64
- name: expires
in: query
description: When the subscription expires (in Unix epoch time)
required: false
style: form
explode: true
schema:
type: integer
format: int64
- name: targetCompletion
in: query
description: When the subscription is expected to be completed by the student (in Unix epoch time)
required: false
style: form
explode: true
schema:
type: integer
format: int64
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/ApiResponse'
deprecated: false
/CreateCompany:
get:
tags:
- Company Management
summary: Create a company
description: Allows you to create a company.
operationId: CreateCompany
parameters:
- name: Name
in: query
description: The Name of the company (limit 150 characters)
required: true
style: form
explode: true
schema:
type: string
- name: ExternalId
in: query
description: The External Id of the company (limit 50 characters)
required: false
style: form
explode: true
schema:
type: string
- name: Description
in: query
description: The Description of the company (limit 800 characters)
required: false
style: form
explode: true
schema:
type: string
- name: OrganizationId
in: query
description: The Id of the Organization associated with this company
required: true
style: form
explode: true
schema:
type: integer
format: int32
- name: OwningUserId
in: query
description: The Id of the owning User (if any) associated with this company
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: AssignableToUsers
in: query
description: Indicates whether the Company is Assignable to Users
required: true
style: form
explode: true
schema:
type: boolean
- name: Theme
in: query
description: The name of the Theme to be used for the company
required: false
style: form
explode: true
schema:
type: string
- name: Address1
in: query
description: The first Address line for a Company (limit 250 characters)
required: false
style: form
explode: true
schema:
type: string
- name: Address2
in: query
description: The second Address line for a Company (limit 250 characters)
required: false
style: form
explode: true
schema:
type: string
- name: City
in: query
description: The City for a Company (limit 80 characters)
required: false
style: form
explode: true
schema:
type: string
- name: State
in: query
description: 'The State for a Company (recommended use standard 2-character abbreviation, limit 50 characters)'
required: false
style: form
explode: true
schema:
type: string
- name: Zip
in: query
description: The Zip code for a Company (limit 20 characters)
required: false
style: form
explode: true
schema:
type: string
- name: Country
in: query
description: 'The Country for a Company (recommended use standard 2-character abbreviation, limit 80 characters)'
required: false
style: form
explode: true
schema:
type: string
- name: Email
in: query
description: The Email address for a Company (limit 256 characters)
required: false
style: form
explode: true
schema:
type: string
- name: Phone
in: query
description: The Phone number for a Company (limit 50 characters)
required: false
style: form
explode: true
schema:
type: string
- name: Phone2
in: query
description: The alternate Phone number for a Company (limit 50 characters)
required: false
style: form
explode: true
schema:
type: string
- name: Fax
in: query
description: The Fax number for a Company (limit 50 characters)
required: false
style: form
explode: true
schema:
type: string
- name: WebSiteUrl
in: query
description: The Web Site Url for a Company (limit 200 characters)
required: false
style: form
explode: true
schema:
type: string
- name: CustomDropdown1
in: query
description: The first Custom Dropdown list for a Company (limit 200 characters)
required: false
style: form
explode: true
schema:
type: string
- name: CustomDropdown2
in: query
description: The second Custom Dropdown list for a Company (limit 200 characters)
required: false
style: form
explode: true
schema:
type: string
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/CreateCompanyResponse'
deprecated: false
/UpdateCompany:
get:
tags:
- Company Management
summary: Update a company by id
description: Allows you to update a company.
operationId: UpdateCompany
parameters:
- name: Id
in: query
description: The Id of the company
required: true
style: form
explode: true
schema:
type: integer
format: int32
- name: Name
in: query
description: The Name of the company (limit 150 characters)
required: true
style: form
explode: true
schema:
type: string
- name: ExternalId
in: query
description: The External Id of the company (limit 50 characters)
required: false
style: form
explode: true
schema:
type: string
- name: Description
in: query
description: The Description of the company (limit 800 characters)
required: false
style: form
explode: true
schema:
type: string
- name: OrganizationId
in: query
description: The Id of the Organization associated with this company
required: true
style: form
explode: true
schema:
type: integer
format: int32
- name: OwningUserId
in: query
description: The Id of the owning User (if any) associated with this company
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: AssignableToUsers
in: query
description: Indicates whether the Company is Assignable to Users
required: true
style: form
explode: true
schema:
type: boolean
- name: Theme
in: query
description: The name of the Theme to be used for the company
required: false
style: form
explode: true
schema:
type: string
- name: Address1
in: query
description: The first Address line for a Company (limit 250 characters)
required: false
style: form
explode: true
schema:
type: string
- name: Address2
in: query
description: The second Address line for a Company (limit 250 characters)
required: false
style: form
explode: true
schema:
type: string
- name: City
in: query
description: The City for a Company (limit 80 characters)
required: false
style: form
explode: true
schema:
type: string
- name: State
in: query
description: 'The State for a Company (recommended use standard 2-character abbreviation, limit 50 characters)'
required: false
style: form
explode: true
schema:
type: string
- name: Zip
in: query
description: The Zip code for a Company (limit 20 characters)
required: false
style: form
explode: true
schema:
type: string
- name: Country
in: query
description: 'The Country for a Company (recommended use standard 2-character abbreviation, limit 80 characters)'
required: false
style: form
explode: true
schema:
type: string
- name: Email
in: query
description: The Email address for a Company (limit 256 characters)
required: false
style: form
explode: true
schema:
type: string
- name: Phone
in: query
description: The Phone number for a Company (limit 50 characters)
required: false
style: form
explode: true
schema:
type: string
- name: Phone2
in: query
description: The alternate Phone number for a Company (limit 50 characters)
required: false
style: form
explode: true
schema:
type: string
- name: Fax
in: query
description: The Fax number for a Company (limit 50 characters)
required: false
style: form
explode: true
schema:
type: string
- name: WebSiteUrl
in: query
description: The Web Site Url for a Company (limit 200 characters)
required: false
style: form
explode: true
schema:
type: string
- name: CustomDropdown1
in: query
description: The first Custom Dropdown list for a Company (limit 200 characters)
required: false
style: form
explode: true
schema:
type: string
- name: CustomDropdown2
in: query
description: The second Custom Dropdown list for a Company (limit 200 characters)
required: false
style: form
explode: true
schema:
type: string
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/ApiResponse'
deprecated: false
/DeleteCompany:
get:
tags:
- Company Management
summary: Delete a company by id
description: Allows you to delete a company.
operationId: DeleteCompany
parameters:
- name: id
in: query
description: The ID of the company to delete
required: true
style: form
explode: true
schema:
type: integer
format: int32
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/ApiResponse'
deprecated: false
/GetCompany:
get:
tags:
- Company Management
summary: Get a company by id
description: Allows you to retrieve a company and their details by their Id.
operationId: GetCompany
parameters:
- name: id
in: query
description: The ID of the company to retrieve
required: true
style: form
explode: true
schema:
type: integer
format: int32
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/GetCompanyResponse'
deprecated: false
/SearchCompanies:
get:
tags:
- Company Management
summary: Search for companies
description: Allows you to search for companies.
operationId: SearchCompanies
parameters:
- name: pageIndex
in: query
description: 'A 0-based index of the paged results you wish to receive. In general, you should start with a value of zero and increment it as you need to retrieve additional results. If not supplied, a value of 0 is used (the first page of results).'
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: pageSize
in: query
description: 'Indicates how many results you want per page. if not supplied, a default value of 100 is used.'
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: sort
in: query
description: |-
The value you want to sort by. If not supplied, a default value of "Name" will be used. You can append " DESC" after the sort value to sort descending. For example, "Name DESC" would sort by name in descending order. Possible values:
- Name
- OrganizationName
- ExternalId
- Created
- LastModified
required: false
style: form
explode: true
schema:
type: string
- name: name
in: query
description: 'An optional parameter used to filter for companies by name. When specified, only companies that have names that contain or match this value will be returned.'
required: false
style: form
explode: true
schema:
type: string
- name: externalId
in: query
description: An optional parameter used to filter for a company by external ID. Specifying the unique External ID paramter value will only ever return a single matching result.
required: false
style: form
explode: true
schema:
type: string
- name: organizationId
in: query
description: 'An optional parameter used to filter companies by the associated organization id. When specified, only the companies associated with this organization will be returned.'
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: createdAfter
in: query
description: 'An optional parameter used to filter for companies created after a specified date. When used in conjunction with the "createdBefore" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: string
- name: createdBefore
in: query
description: 'An optional parameter used to filter for companies created before a specified date. When used in conjunction with the "createdAfter" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: string
- name: lastModifiedAfter
in: query
description: 'An optional parameter used to filter for companies modified after a specified date. When used in conjunction with the "lastModifiedBefore" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: string
- name: lastModifiedBefore
in: query
description: 'An optional parameter used to filter for companies modified before a specified date. When used in conjunction with the "lastModifiedAfter" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: string
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/SearchCompaniesResponse'
deprecated: false
/ExportSurveyResponses:
get:
tags:
- Survey Management
summary: Retrieve survey results by id
description: Allows you to get a responses from a survey.
operationId: ExportSurveyResponses
parameters:
- name: id
in: query
description: The ID of the survey to retrieve
required: true
style: form
explode: true
schema:
type: integer
format: int32
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/SurveyResultResponse'
deprecated: false
/SearchClubs:
get:
tags:
- Subscription Management
summary: Search for a subscription profile
description: Allows you to search for subscription profiles.
operationId: SearchClubs
parameters:
- name: pageIndex
in: query
description: 'A 0-based index of the paged results you wish to receive. In general, you should start with a value of zero and increment it as you need to retrieve additional results. If not supplied, a value of 0 is used (the first page of results).'
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: pageSize
in: query
description: 'Indicates how many results you want per page. if not supplied, a default value of 100 is used.'
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: sort
in: query
description: |-
The value you want to sort by.
Possible values:
Name
Program
CompanyOrganization
Owner
Club
Company
Starts
Expires
Size
Used
Created
LastModified
required: false
style: form
explode: true
schema:
type: string
- name: name
in: query
description: An optional parameter used to filter for subscription profiles by name
required: false
style: form
explode: true
schema:
type: string
- name: courseId
in: query
description: An optional parameter used to filter for subscription profiles by the associated course ID
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: createdAfter
in: query
description: An optional parameter used to filter for subscription profiles created after a specified date
required: false
style: form
explode: true
schema:
type: string
- name: createdBefore
in: query
description: An optional parameter used to filter for subscription profiles created before a specified date
required: false
style: form
explode: true
schema:
type: string
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/SearchClubResultResponse'
deprecated: false
/SearchClubMemberships:
get:
tags:
- Subscription Management
summary: Search for subscription assignments
description: Allows you to search for user's subscription assignments.
operationId: SearchClubMemberships
parameters:
- name: pageIndex
in: query
description: 'A 0-based index of the paged results you wish to receive. In general, you should start with a value of zero and increment it as you need to retrieve additional results. If not supplied, a value of 0 is used (the first page of results).'
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: pageSize
in: query
description: 'Indicates how many results you want per page. if not supplied, a default value of 100 is used.'
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: sort
in: query
description: |-
The value you want to sort by.
Possible values:
- UserId
- ExternalUserId
- Subscription
- Starts
- Expires
- TargetCompletion
- Created
- LastModified
required: false
style: form
explode: true
schema:
type: string
- name: userId
in: query
description: 'An optional parameter used to filter subscriptions by the associated userid. When specified, only user subscriptions that have an associated userid that matches this value will be returned.'
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: userExternalId
in: query
description: 'An optional parameter used to filter subscriptions by the associated user external id. When specified, only user subscriptions that have an associated external user id that matches that value will be returned.'
required: false
style: form
explode: true
schema:
type: string
- name: subscriptionId
in: query
description: 'An optional parameter used to filter subscriptions by subscription id. When specified, only user subscriptions that matches this value will be returned.'
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: createdAfter
in: query
description: 'An optional parameter used to filter subscriptions created after a specified date. When used in conjunction with the "createdBefore" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: integer
format: int64
- name: createdBefore
in: query
description: 'An optional parameter used to filter subscriptions created before a specified date. When used in conjunction with the "createdAfter" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: integer
format: int64
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/SearchSubscriptionResponse'
/SearchSubscriptions:
get:
tags:
- Subscription Management
summary: Search for subscription assignments
description: Allows you to search for user's subscription assignments.
operationId: SearchSubscriptions
parameters:
- name: pageIndex
in: query
description: 'A 0-based index of the paged results you wish to receive. In general, you should start with a value of zero and increment it as you need to retrieve additional results. If not supplied, a value of 0 is used (the first page of results).'
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: pageSize
in: query
description: 'Indicates how many results you want per page. if not supplied, a default value of 100 is used.'
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: sort
in: query
description: |-
The value you want to sort by.
Possible values:
- UserId
- ExternalUserId
- Subscription
- Starts
- Expires
- TargetCompletion
- Created
- LastModified
required: false
style: form
explode: true
schema:
type: string
- name: userId
in: query
description: 'An optional parameter used to filter subscriptions by the associated userid. When specified, only user subscriptions that have an associated userid that matches this value will be returned.'
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: userExternalId
in: query
description: 'An optional parameter used to filter subscriptions by the associated user external id. When specified, only user subscriptions that have an associated external user id that matches that value will be returned.'
required: false
style: form
explode: true
schema:
type: string
- name: subscriptionId
in: query
description: 'An optional parameter used to filter subscriptions by subscription id. When specified, only user subscriptions that matches this value will be returned.'
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: createdAfter
in: query
description: 'An optional parameter used to filter subscriptions created after a specified date. When used in conjunction with the "createdBefore" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: integer
format: int64
- name: createdBefore
in: query
description: 'An optional parameter used to filter subscriptions created before a specified date. When used in conjunction with the "createdAfter" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: integer
format: int64
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/SearchSubscriptionResponse'
/SearchSubscriptionTrainingKeys:
get:
tags:
- Subscription Management
summary: Search for subscription training keys
description: Allows you to search for an organization's subscription training keys.
operationId: SearchSubscriptionTrainingKeys
parameters:
- name: pageIndex
in: query
description: 'A 0-based index of the paged results you wish to receive. In general, you should start with a value of zero and increment it as you need to retrieve additional results. If not supplied, a value of 0 is used (the first page of results).'
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: pageSize
in: query
description: 'Indicates how many results you want per page. If not supplied, a default value of 20 is used (20 records per page).'
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: sort
in: query
description: |-
The value you want to sort by. If not supplied, a default value of "TrainingKey" is used.
Possible values:
- TrainingKey
- ContentExpiry
- SubscriptionProfileName
- Created
- CreatedById
- LastModified
- LastModifiedById
- ExpirationDate
required: false
style: form
explode: true
schema:
type: string
- name: organizationId
in: query
description: 'Filter subscription training keys by the associated organization id. When specified, only the subscription training keys associated with this organization will be returned.'
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: trainingKey
in: query
description: 'Filter for a specific subscription training key. When specified, only the subscription training key that matches this value will be returned.'
required: false
style: form
explode: true
schema:
type: string
- name: createdById
in: query
description: 'Filter subscription training keys by the associated user id. When specified, only the subscription training keys that have been created by this user id value will be returned.'
required: false
style: form
explode: true
schema:
type: integer
format: int64
- name: createdBefore
in: query
description: 'Filter subscription training keys created before a specified date. When used in conjunction with the "createdAfter" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: integer
format: int64
- name: createdAfter
in: query
description: 'Filter subscription training keys created after a specified date. When used in conjunction with the "createdBefore" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: integer
format: int64
- name: expiresBefore
in: query
description: 'Filter subscription training keys expiring before a specified date. When used in conjunction with the "expiresAfter" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: integer
format: int64
- name: expiresAfter
in: query
description: 'Filter subscription training keys expiring after a specified date. When used in conjunction with the "expiresBefore" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: integer
format: int64
- name: lastModifiedBefore
in: query
description: 'Filter subscription training keys last modified before a specified date. When used in conjunction with the "lastModifiedAfter" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: integer
format: int64
- name: lastModifiedAfter
in: query
description: 'Filter subscription training keys last modified after a specified date. When used in conjunction with the "lastModifiedBefore" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: integer
format: int64
- name: lastModifiedById
in: query
description: 'Filter subscription training keys by the user id that last modified the record. When specified, only the subscription training keys last modified by this user will be returned.'
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: subscriptionProfileId
in: query
description: 'Filter subscription training keys by subscription profile id. When specified, only subscription training keys that are associated with this value will be returned.'
required: false
style: form
explode: true
schema:
type: string
- name: contentExpiryBefore
in: query
description: 'Filter subscription training keys when the content is expiring before a specified date. When used in conjunction with the "contentExpiryAfter" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: integer
format: int64
- name: contentExpiryAfter
in: query
description: 'Filter subscription training keys when the content is expiring after a specified date. When used in conjunction with the "contentExpiryBefore" parameter, it becomes possible to filter for a given time range. This should be provided in unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
required: false
style: form
explode: true
schema:
type: integer
format: int64
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/SearchSubscriptionTrainingKeyResponse'
/CreateSubscriptionTrainingKeys:
get:
tags:
- Subscription Management
summary: Create a subscription training key
description: Allows you to create one or more unique subscription training keys.
operationId: CreateSubscriptionTrainingKeys
parameters:
- name: organizationId
in: query
description: The Id of the related organization. If not supplied then the related API consumer organization Id will be used.
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: subscriptionProfileId
in: query
description: The Id of the related subscription profile.
required: true
style: form
explode: true
schema:
type: integer
format: int32
- name: expirationDate
in: query
description: When the subscription training key expires (in Unix epoch time).
required: true
style: form
explode: true
schema:
type: integer
format: int64
- name: maxKeyUses
in: query
description: The maximum number of uses for the related subscription training key. If not supplied then only a single use will be allowed.
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: contentExpirationDate
in: query
description: If supplied (in Unix epoch time) then this setting overrides the expiration date and sets the Content Availability Override checkbox.
required: false
style: form
explode: true
schema:
type: integer
format: int64
- name: trainingKeys
in: query
description: A comma-separated list of subscription training keys unique to the Skillable TMS. If not supplied then a set of unique training keys will be auto-created based on the numberOfKeys parameter.
required: false
style: form
explode: true
schema:
type: string
- name: numberOfKeys
in: query
description: The number of subscription training keys to be created. If not supplied then a single training key will be created that is unique to the Skillable TMS. If the trainingKeys parameter is supplied then this parameter will be ignored.
required: false
style: form
explode: true
schema:
type: integer
format: int32
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/CreateSubscriptionTrainingKeysResponse'
deprecated: false
/UpdateSubscriptionTrainingKey:
get:
tags:
- Subscription Management
summary: Update a subscription training key by id
description: Allows you to update a subscription training key.
operationId: UpdateSubscriptionTrainingKey
parameters:
- name: Id
in: query
description: The Id of the subscription training key.
required: true
style: form
explode: true
schema:
type: string
- name: trainingKey
in: query
description: The subscription training key.
required: true
style: form
explode: true
schema:
type: string
- name: organizationId
in: query
description: The Id of the related organization.
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: subscriptionProfileId
in: query
description: The Id of the related subscription profile.
required: true
style: form
explode: true
schema:
type: integer
format: int32
- name: expirationDate
in: query
description: When the subscription training key expires (in Unix epoch time).
required: true
style: form
explode: true
schema:
type: integer
format: int64
- name: maxKeyUses
in: query
description: The maximum number of uses for the related subscription training key. If not supplied then this setting will default to 1.
required: false
style: form
explode: true
schema:
type: integer
format: int32
- name: contentExpirationDate
in: query
description: If supplied (in Unix epoch time) then this setting overrides the expiration date and sets the Content Availability Override checkbox.
required: false
style: form
explode: true
schema:
type: integer
format: int64
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateSubscriptionTrainingKeysResponse'
deprecated: false
/DeleteSubscriptionTrainingKey:
get:
tags:
- Subscription Management
summary: Delete a subscription training key by id
description: |
Allows you to delete a subscription training key that has not been converted into a valid subscription assignment.
**NOTE:** A subscription training key can not be deleted once it has been converted into a valid subscription assignment.
operationId: DeleteSubscriptionTrainingKey
parameters:
- name: id
in: query
description: The Id of the subscription training key.
required: true
style: form
explode: true
schema:
type: string
responses:
'200':
description: OK Response
content:
application/json:
schema:
$ref: '#/components/schemas/DeleteSubscriptionTrainingKeysResponse'
deprecated: false
components:
schemas:
CreateResponse:
type: object
properties:
status:
type: integer
description: |-
Indicates the status of the API request.
- 0 = Success
- 10 = Error
- 30 = Invalid integration key
format: int32
example: 10
error:
type: string
description: Error details. This will only have a value if an error was encountered. The status property will also be set to Error (10).
nullable: true
ApiResponse:
type: object
properties:
status:
type: integer
description: |-
Indicates the status of the API request.
- 0 = Success
- 10 = Error
- 20 = Not found
- 30 = Invalid integration key
format: int32
example: 10
error:
type: string
description: Error details. This will only have a value if an error was encountered. The status property will also be set to Error (10).
nullable: true
UserResponse:
type: object
properties:
Status:
type: integer
description: |-
Indicates the status of the API request.
0 = Success
10 = Error
20 = Not found
30 = Invalid integration key
format: int32
example: 0
Error:
type: string
description: Error details. This will only have a value if an error was encountered. The status property will also be set to Error (10).
nullable: true
User:
$ref: '#/components/schemas/User'
Roles:
type: array
description: Identifiers of roles the user belongs to
example:
- 0
- 2
items:
type: integer
format: int32
ManagedOrganizations:
type: array
description: Identifiers of organizations the user has management rights to
example: []
items:
type: integer
format: int32
CustomFields:
type: array
description: Custom Fields that have values for the user
example:
- Name: Core Id
TextValue: AXY12345
CustomFieldId: 5080
- Name: Blood Type
TextValue: A+
CustomFieldId: 5081
items:
type: object
properties:
'':
type: string
SsoRedirectUrlReponse:
type: object
properties:
Status:
$ref: '#/components/schemas/Status'
Error:
$ref: '#/components/schemas/Error'
Url:
type: string
description: The URL the user should be redirected to. The URL is valid for 20 seconds.
example: 'http://[root-url]/Service/ExternalLogon?authenticationKey=84a11167-fc8f-43ba-86ae-4f89c0c6160f'
SignInHistorySearchHistoryResponse:
type: object
properties:
Status:
$ref: '#/components/schemas/Status'
Error:
$ref: '#/components/schemas/Error'
TotalCount:
$ref: '#/components/schemas/TotalCount'
TotalPages:
$ref: '#/components/schemas/TotalPages'
Results:
type: array
description: See SignInHistorySearchResult.
items:
$ref: '#/components/schemas/SignInHistorySearchResult'
SearchUserActivityResponse:
type: object
properties:
Status:
$ref: '#/components/schemas/Status'
Error:
$ref: '#/components/schemas/Error'
TotalCount:
$ref: '#/components/schemas/TotalCount'
TotalPages:
$ref: '#/components/schemas/TotalPages'
Results:
type: array
description: See UserActivitySearchResult.
items:
$ref: '#/components/schemas/UserActivitySearchResult'
AnnouncementResponse:
type: object
properties:
Status:
$ref: '#/components/schemas/Status'
Error:
$ref: '#/components/schemas/Error'
Results:
type: array
description: See Announcement.
items:
$ref: '#/components/schemas/Announcement'
DeleteResponse:
type: object
properties:
Status:
$ref: '#/components/schemas/Status'
Error:
$ref: '#/components/schemas/Error'
RowsAffected:
$ref: '#/components/schemas/RowsAffected'
UserRoleResponse:
type: object
properties:
Status:
$ref: '#/components/schemas/Status'
Error:
$ref: '#/components/schemas/Error'
Roles:
type: array
description: See Role Object.
items:
$ref: '#/components/schemas/Role'
OrganizationResponse:
type: object
properties:
Status:
$ref: '#/components/schemas/Status'
Error:
$ref: '#/components/schemas/Error'
Organization:
$ref: '#/components/schemas/Organization'
Children:
type: array
description: Identifiers of child organizations that belong to the organization
items:
type: integer
format: int32
SearchCourseResponse:
type: object
properties:
Status:
$ref: '#/components/schemas/Status'
Error:
$ref: '#/components/schemas/Error'
TotalCount:
$ref: '#/components/schemas/TotalCount'
TotalPages:
$ref: '#/components/schemas/TotalPages'
Results:
type: array
description: See CourseSearchResult.
items:
$ref: '#/components/schemas/CourseSearchResult'
CourseResponse:
type: object
properties:
Status:
$ref: '#/components/schemas/Status'
Error:
$ref: '#/components/schemas/Error'
Course:
$ref: '#/components/schemas/Course'
SearchCourseTagGroupResponse:
type: object
properties:
Status:
$ref: '#/components/schemas/Status'
Error:
$ref: '#/components/schemas/Error'
TotalCount:
$ref: '#/components/schemas/TotalCount'
TotalPages:
$ref: '#/components/schemas/TotalPages'
Results:
type: array
description: See CourseTagGroupSearchResult
items:
$ref: '#/components/schemas/CourseTagGroupSearchResult'
SearchCourseFeedbackReponse:
type: object
properties:
Status:
$ref: '#/components/schemas/Status'
Error:
$ref: '#/components/schemas/Error'
TotalCount:
$ref: '#/components/schemas/TotalCount'
TotalPages:
$ref: '#/components/schemas/TotalPages'
Results:
type: array
description: See CourseFeedbackSearchResult
items:
$ref: '#/components/schemas/CourseFeedbackSearchResult'
ClassEnrollmentResponse:
type: object
properties:
Status:
$ref: '#/components/schemas/Status'
Error:
$ref: '#/components/schemas/Error'
Results:
type: array
description: See ClassEnrollment
items:
$ref: '#/components/schemas/ClassEnrollment'
CreateClassEnrollmentResponse:
type: object
properties:
status:
type: integer
description: |-
Indicates the status of the API request.
- 0 = Success
- 10 = Error
- 20 = Not found
- 30 = Invalid integration key
format: int32
example: 10
error:
type: string
description: Error details. This will only have a value if an error was encountered. The status property will also be set to Error (10).
nullable: true
ClassEnrollmentId:
type: integer
description: The ID of the created class enrollment.
format: int32
example: 45632
ClassEnrollmentSearchResponse:
type: object
properties:
Status:
$ref: '#/components/schemas/Status'
Error:
$ref: '#/components/schemas/Error'
TotalCount:
$ref: '#/components/schemas/TotalCount'
TotalPages:
$ref: '#/components/schemas/TotalPages'
Results:
type: array
description: See ClassEnrollment
items:
$ref: '#/components/schemas/ClassEnrollmentSearch'
title: ''
CourseAssignmentResponse:
type: object
properties:
Status:
$ref: '#/components/schemas/Status'
Error:
$ref: '#/components/schemas/Error'
Results:
type: array
description: See CourseAssignment
items:
$ref: '#/components/schemas/CourseAssignment'
CreateCourseAssignmentResponse:
type: object
properties:
status:
type: integer
description: |-
Indicates the status of the API request.
- 0 = Success
- 10 = Error
- 20 = Not found
- 30 = Invalid integration key
format: int32
example: 10
error:
type: string
description: Error details. This will only have a value if an error was encountered. The status property will also be set to Error (10).
nullable: true
CourseAssignmentId:
type: integer
description: The ID of the created course assignment.
format: int32
example: 45632
UpdateCourseAssignmentResponse:
type: object
properties:
status:
type: integer
description: |-
Indicates the status of the API request.
- 0 = Success
- 10 = Error
- 20 = Not found
- 30 = Invalid integration key
format: int32
example: 10
error:
type: string
description: Error details. This will only have a value if an error was encountered. The status property will also be set to Error (10).
nullable: true
SearchCourseAssignmentsResponse:
type: object
properties:
Status:
$ref: '#/components/schemas/Status'
Error:
$ref: '#/components/schemas/Error'
TotalCount:
$ref: '#/components/schemas/TotalCount'
TotalPages:
$ref: '#/components/schemas/TotalPages'
Results:
type: array
description: See CourseAssignmentSearchResult
items:
$ref: '#/components/schemas/CourseAssignmentSearchResult'
SearchCourseCatalogSearchHistoryResponse:
type: object
properties:
Status:
$ref: '#/components/schemas/Status'
Error:
$ref: '#/components/schemas/Error'
TotalCount:
$ref: '#/components/schemas/TotalCount'
TotalPages:
$ref: '#/components/schemas/TotalPages'
Results:
type: array
description: See CourseAssignmentSearchResult
items:
$ref: '#/components/schemas/CourseCatalogSearchHistorySearchResult'
SearchLabInstancesResponse:
type: object
properties:
Status:
$ref: '#/components/schemas/Status'
Error:
$ref: '#/components/schemas/Error'
TotalCount:
$ref: '#/components/schemas/TotalCount'
TotalPages:
$ref: '#/components/schemas/TotalPages'
Results:
type: array
description: See LabInstanceSearchResult
items:
$ref: '#/components/schemas/LabInstanceSearchResult'
SearchCourseExternalActivityLaunchesResponse:
type: object
properties:
Status:
$ref: '#/components/schemas/Status'
Error:
$ref: '#/components/schemas/Error'
TotalCount:
$ref: '#/components/schemas/TotalCount'
TotalPages:
$ref: '#/components/schemas/TotalPages'
Results:
type: array
description: See CourseExternalActivityLaunchSearchResult
items:
$ref: '#/components/schemas/CourseExternalActivityLaunchSearchResult'
ClassResponse:
type: object
properties:
Status:
$ref: '#/components/schemas/Status'
Error:
$ref: '#/components/schemas/Error'
Results:
type: array
description: See Class
items:
$ref: '#/components/schemas/Class'
CreateClassResponse:
type: object
properties:
status:
type: integer
description: |-
Indicates the status of the API request.
- 0 = Success
- 10 = Error
- 20 = Not found
- 30 = Invalid integration key
format: int32
example: 10
error:
type: string
description: Error details. This will only have a value if an error was encountered. The status property will also be set to Error (10).
nullable: true
ClassId:
type: integer
description: The ID of the created class.
format: int32
example: 3456
SearchClassesResponse:
type: object
properties:
Status:
$ref: '#/components/schemas/Status'
Error:
$ref: '#/components/schemas/Error'
TotalCount:
$ref: '#/components/schemas/TotalCount'
TotalPages:
$ref: '#/components/schemas/TotalPages'
Results:
type: array
description: See ClassSearchResult
items:
$ref: '#/components/schemas/ClassSearchResult'
SearchPublicClassScheduleResponse:
type: object
properties:
Status:
$ref: '#/components/schemas/Status'
Error:
$ref: '#/components/schemas/Error'
TotalCount:
$ref: '#/components/schemas/TotalCount'
TotalPages:
$ref: '#/components/schemas/TotalPages'
Results:
type: array
description: See PublicClassSearchResult
items:
$ref: '#/components/schemas/PublicClassSearchResult'
ClassEnrollmentCustomFieldResponse:
type: object
x-stoplight:
id: 50c16a1fcd2d9
properties:
Status:
$ref: '#/components/schemas/Status'
Error:
$ref: '#/components/schemas/Error'
Results:
type: array
description: This is the full list of class enrollment custom fields available to the requesting organization.
items:
$ref: '#/components/schemas/ClassEnrollmentCustomFields'
ClassCustomFieldResponse:
type: object
properties:
Status:
$ref: '#/components/schemas/Status'
Error:
$ref: '#/components/schemas/Error'
Results:
type: array
description: See CourseAssignment
items:
$ref: '#/components/schemas/ClassCustomFields'
CustomFieldValueResponse:
type: object
properties:
Status:
$ref: '#/components/schemas/Status'
Error:
$ref: '#/components/schemas/Error'
Id:
type: integer
description: The custom field's unique identifier
format: int32
Name:
type: string
description: The name of the custom field
DataTypeId:
type: integer
description: |-
The data type id of the custom field
0 - Textbox
10 - Dropdown List
20 - Checkbox
30 - Number
60 - User Selector
70 - Checkbox List
format: int32
TextValue:
type: string
description: 'The text value of a custom field, if any.'
nullable: true
NumericValue:
type: integer
description: 'The integer value of a custom field, if any.'
format: int32
nullable: true
BooleanValue:
type: boolean
description: 'The boolean value of a custom field, if any.'
nullable: true
SeparatedListValue:
type: string
description: A tab separated list of the selected values of a custom field.
nullable: true
User:
type: object
properties:
Id:
type: integer
description: The user's unique identifier
format: int32
example: 57383
ExternalId:
type: string
description: 'The user''s external ID, usually a unique identifier from the calling system'
nullable: true
example: C9876ZFGEFER9876
Title:
type: string
description: The user's title
nullable: true
FirstName:
type: string
description: The user's first name
example: John
MiddleName:
type: string
description: The user's middle name
nullable: true
LastName:
type: string
description: The user's last name
example: Smith
UserName:
type: string
description: The user's username (used during sign-in)
example: john.smith
OrganizationId:
type: integer
description: The unique identifier of the organization the user belongs to
format: int32
example: 4873
CompanyId:
type: integer
description: The Id of the user's company (set only if the user belongs to a company)
format: int32
nullable: true
ManagerId:
type: integer
description: The user Id of the user's manager (set only if the user belongs to a manager)
format: int32
nullable: true
Disabled:
type: boolean
description: Indicates whether the user account has been disabled
example: false
Email:
type: string
description: The user's e-mail address
example: joe.smith@yourorg.com
Phone:
type: string
description: The user's phone number
nullable: true
Phone2:
type: string
description: The user's secondary phone number
nullable: true
Address1:
type: string
description: First line of the user's address
nullable: true
Address2:
type: string
description: Second line of the user's address
nullable: true
City:
type: string
description: The user's city
nullable: true
State:
type: string
description: The user's state
nullable: true
Country:
type: string
description: The user's country.
nullable: true
deprecated: true
CountryCode:
type: string
description: The 2-character code for the user's country
nullable: true
Zip:
type: string
description: The user's zip/postal code
nullable: true
ProfileImageUrl:
type: string
description: URL to the user's profile image
nullable: true
TimeZoneId:
type: string
description: The User's timezone
nullable: true
SignInHistorySearchResult:
type: object
properties:
UserId:
type: integer
description: The user's unique identifier
format: int32
example: 190615
UserExternalId:
type: string
description: 'The user''s external ID, usually a unique identifier from the calling system'
nullable: true
example: 5A875994-33DE-DE11-92BB-00505690582E
FirstName:
type: string
description: The user's first name
example: John
LastName:
type: string
description: The user's last name
example: Doe
UserName:
type: string
description: The user's UserName (used during sign-in)
example: john.doe
Email:
type: string
description: The user's e-mail address
example: john.doe@sample.net
OrganizationId:
type: integer
description: The unique identifier of the organization the user belongs to
format: int32
example: 2471
SignIn:
type: integer
description: When the user sign-in occurred (in Unix epoch time)
format: int64
example: 1466117145
Method:
type: string
description: |-
The method that was used to authenticate the user with possible values of:
- Unknown
- Local Account
- Authentication Provider
- API
example: Local Account
Provider:
type: string
description: The name of the Authentication Provider when the "Method" field is "Authentication Provider".
nullable: true
UserActivitySearchResult:
type: object
properties:
UserId:
type: integer
description: The user's unique identifier
format: int32
example: 2222
UserExternalId:
type: string
description: 'The user''s external ID, usually a unique identifier from the calling system'
nullable: true
example: 5A875994-33DE-DE11-92BB-00505690582E
FirstName:
type: string
description: The user's first name
example: Jane
LastName:
type: string
description: The user's last name
example: Doe
UserName:
type: string
description: The user's UserName
example: jane.doe
OrganizationId:
type: integer
description: The unique identifier of the organization the user belongs to
format: int32
example: 1234
ImpersonatingUserId:
type: integer
description: The user id of the impersonating user (if any)
format: int32
nullable: true
example: 4321
ImpersonatingFirstName:
type: string
description: The impersonating user's first name (if any)
example: Steve
ImpersonatingLastName:
type: string
description: The impersonating user's last name (if any)
example: Smith
RequestTime:
type: integer
description: When the user activity occurred (in Unix epoch time)
format: int64
example: 190615
Method:
type: string
description: The method of the request
example: GET
Referrer:
type: string
description: The referring URL (if any)
nullable: true
Url:
type: string
description: The URL of the request
nullable: true
UserAgent:
type: string
description: The reported UserAgent of the request
nullable: true
UserHostAddress:
type: string
description: The reported Host Address of the request
nullable: true
UserLanguages:
type: string
description: The reported languages of the request
nullable: true
ExecutionTimeMS:
type: integer
description: The execution time of the request (in milliseconds)
format: int64
example: 55
Announcement:
type: object
properties:
Id:
type: integer
description: The announcement's unique identifier
format: int32
example: 45632
Title:
type: string
description: The announcement's title
example: Sample Announcement
Url:
type: string
description: The Url which the announcement is meant to link to.
nullable: true
example: ''
Description:
type: string
description: The announcement's description
nullable: true
example: This is an example Announcement
HtmlContent:
type: string
description: The announcement's HTML Content
nullable: true
example:
This is an important Announcement!
This is the content of the announcement.
Start:
type: integer
description: When the announcement starts (in Unix epoch time)
format: int64
example: 1449496800
End:
type: integer
description: When the announcement starts (in Unix epoch time)
format: int64
nullable: true
example: 1450479600
Role:
type: object
properties:
Id:
type: integer
description: The role's unique identifier
format: int32
example: 78965
Name:
type: string
description: The name of the role
example: Student
Description:
type: string
description: The description of the role
nullable: true
example: The default role assigned to all accounts.
Organization:
type: object
properties:
Id:
type: integer
description: The organization's unique identifier
format: int32
example: 567
ExternalId:
type: string
description: 'The organization''s external ID, usually a unique identifier from the calling system'
nullable: true
example: B93762AC6FEE987A
Name:
type: string
description: The organization's name
example: Child Organization 1
Description:
type: string
description: An optional description
nullable: true
example: A sample child organization
ParentId:
type: string
description: The ID of the organization's parent organization
nullable: true
example: '458'
IntegrationKey:
type: string
description: The organization's API integration key. This can be used for making API calls in the context of this organization as opposed to the context of a parent.
example: '987654321'
TimeZoneId:
type: string
description: The organization's default time zone. This is used as a default when creating new users and events.
example: Central Standard Time
Culture:
type: string
description: The organization's default language/culture setting. This is used as a default when creating new users and events.
example: en-US
DefaultUserPassword:
type: string
description: The default password for new users in the organization
nullable: true
example: Password
DefaultUserNamePattern:
type: string
description: |-
The default pattern selected for creating a username for a new user in the organization.
- Email
example: FirstNameLastName
Enabled:
type: boolean
description: is the organization enabled.
example: true
CourseSearchResult:
type: object
properties:
Id:
type: integer
description: The unique identifier of the course.
format: int32
example: 4567
ExternalId:
type: string
description: 'The course assignment''s external ID, usually a unique identifier from the calling system.'
example: FC8D0166-B2F3-4705-8187-5D72BA81F511
nullable: true
Name:
type: string
description: The name of the course.
example: Course A
Description:
type: string
description: The activity's description
nullable: true
OrganizationId:
type: integer
description: The ID of the organization the course belongs to.
format: int32
example: 455
OrganizationName:
type: string
description: The name of the organization the course belongs to.
example: Sample Organization
ContentProviderId:
type: integer
description: The ID of the course content provider.
format: int32
example: 9876
nullable: true
AvailableInstructorLed:
type: boolean
description: Indicates whether the course is available instructor-led.
example: true
AvailableSelfPaced:
type: boolean
description: Indicates whether the course is available self-paced.
example: false
CustomFields:
type: array
description: See CustomField
items:
$ref: '#/components/schemas/CustomField'
Created:
type: integer
description: 'When the course was created. Provided in Unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
format: int64
example: 1449496820
LastModified:
type: integer
description: 'When the course was last modified. Provided in Unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
format: int64
example: 1584035105
AutoArchiveDate:
type: integer
description: 'When the course is scheduled to be archived. Provided in Unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
format: int64
example: 1453024103
x-stoplight:
id: s3kpp8k6yiej3
nullable: true
Course:
type: object
properties:
Id:
type: integer
description: The course's unique identifier
format: int32
example: 5678
ExternalId:
type: string
description: 'The course''s external ID, usually a unique identifier from the calling system'
nullable: true
example: ce2637fc-7eac-43d1-9e75-565e9f7ff53b
Name:
type: string
description: The Name of the course
example: A Course Name
Description:
type: string
description: The description of the course
nullable: true
example: A course description
HtmlDescription:
type: string
description: The HTML description of the course
nullable: true
example: Some HTML Description
AvailableInstructorLed:
type: boolean
description: The setting for if this course is available to be delivered in an instructor-led format
example: true
AvailableSelfPaced:
type: boolean
description: The setting for if this course is available to be delivered in a self-paced format
example: true
OrganizationId:
type: integer
description: The Id of the owning organization for this course
format: int32
nullable: true
example: 345
OrganizationName:
type: string
description: The name of the owning organization for this course
nullable: true
example: Organization Name Sample
ContentProviderId:
type: integer
description: The Id of the content provider for this course (if any)
format: int32
nullable: true
example: 123
ContentProviderName:
type: string
description: The name of the content provider for this course (if any)
nullable: true
example: Content Prvider Name Sample
Activities:
type: array
description: See Activity.
items:
$ref: '#/components/schemas/Activity'
Duration:
type: number
description: The course's duration.
format: float
example: 144.5
DurationUnitId:
type: integer
description: |-
The course's duration type identification.
Values include:
- Minutes = 0
- Hours = 1
- Days = 2
- Weeks = 3
format: int32
example: 2
Tags:
type: array
description: See Tag.
items:
$ref: '#/components/schemas/Tag'
CustomFields:
type: array
description: See CustomField
items:
$ref: '#/components/schemas/CustomField'
Created:
type: integer
description: 'When the course was created. Provided in Unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
format: int64
example: 1449496800
LastModified:
type: integer
description: 'the course was last modified. Provided in Unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
format: int64
example: 1584035120
Activity:
type: object
properties:
Id:
type: integer
description: The activity's unique identifier
format: int32
example: 33345
ParentId:
type: integer
description: The Id of the activity's parent activity (if any)
format: int32
nullable: true
ActivityId:
type: integer
format: int32
example: 29119
description: The internal Id of the activity.
ActivityTypeId:
type: integer
description: |-
The Id of the activity type:
- ScormModule = 2
- Lab = 4
- Survey = 10
- InstructorSurvey = 20
- OrganizationSurvey = 30
- ExternalLink = 40
- Assessment = 50
- Video = 60
- Document = 70 -
Section = 80
format: int32
example: 4
ActivityTypeName:
type: string
description: The activity's type name
example: Lab
Name:
type: string
description: The activity's name
example: Activity Name Sample
Description:
type: string
description: The activity's description
nullable: true
example: Activity description sample
Subtitle:
type: string
description: The activity's subtitle
nullable: true
AllowRetake:
type: boolean
description: The activity's setting to allow retakes
example: true
AllowReview:
type: boolean
description: The activity's setting to allow review
example: false
Url:
type: string
description: The activity's url
nullable: true
SortOrder:
type: integer
description: The activity's sort order index
format: int32
example: 0
Required:
type: boolean
description: The activity's setting for if the activity is required for course completion
example: true
AvailabilityTypeId:
type: integer
description: |-
The activity's availablility type id
- Everyone = 0
- Instructors Only = 1
format: int32
example: 0
ExpectedDurationSeconds:
type: integer
description: The activity's expected duration in seconds
format: int32
example: 3540
IsExam:
type: boolean
description: The activity's setting as a scored lab (This only applies to Lab type activities)
example: false
Activities:
type: array
description: See Activity.
items:
$ref: '#/components/schemas/Activity'
Tag:
type: object
properties:
Id:
type: integer
description: The tag's unique identifier.
format: int32
example: 2
Name:
type: string
description: The tag's name.
nullable: true
example: Tag Example 1
CustomField:
type: object
properties:
Name:
type: string
description: The name of the custom field.
example: MyCustomText
TexValue:
type: string
description: The value of the custom field.
example: Woohoo!
CourseTagGroupSearchResult:
type: object
properties:
Id:
type: integer
description: The course tag group unique identifier
format: int32
example: 5678
Name:
type: string
description: The course tag groups name
nullable: true
example: A Course Name
Tags:
type: array
description: See Tag
items:
$ref: '#/components/schemas/Tag'
CourseFeedbackSearchResult:
type: object
properties:
Submitted:
type: integer
description: 'When the feedback entry was created. Provided in Unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
format: int64
example: 1492203295
CourseId:
type: integer
description: The Id of the course.
format: int32
example: 1234
CourseName:
type: string
description: The name of the course.
example: Course 1234 name sample
Title:
type: string
description: The title of the feedback message.
example: Course 1234 title sample
Content:
type: string
description: The text content of the feedback message.
nullable: true
example: Course content sample
Positive:
type: boolean
description: Indicates whether the feedback is positive.
example: false
Negative:
type: boolean
description: Indicates whether the feedback is negative.
example: true
UserId:
type: integer
description: The Id of the user (if available) of the user that submitted the feedback.
format: int32
nullable: true
example: 279207
UserExternalId:
type: string
description: The ExternalId of the user (if available) of the user that submitted the feedback.
nullable: true
example: 831ab062-fcd9-44c7-9ffd-15ef98e9746e
CourseAssignmentId:
type: integer
description: The Id of the course assignment (if any).
format: int32
nullable: true
example: 68905
ClassEnrollmentId:
type: integer
description: The Id of the class enrollent (if any).
format: int32
nullable: true
example: 4576
ActivityId:
type: integer
description: The Id of the activity (if any).
format: int32
nullable: true
example: 123
ActivityTypeId:
type: integer
description: |-
The Id of the activity type (if any)
- ScormModule = 2
- Lab = 4
- Survey = 10
- InstructorSurvey = 20
- OrganizationSurvey = 30
- ExternalLink = 40
- Assessment = 50
- Video = 60
- Document = 70
format: int32
nullable: true
example: 123
ActivityName:
type: string
description: The activity's name (if any)
nullable: true
example: Sample activity name
ClassEnrollment:
type: object
properties:
Id:
type: integer
description: The class enrollment's unique identifier
format: int32
example: 10
ExternalId:
type: string
description: 'The class enrollment''s external ID, usually a unique identifier from the calling system'
nullable: true
example: E3G5YZFREFEQ9371
UserId:
type: integer
description: The Id of the related user
format: int32
example: 897615
ClassId:
type: integer
description: The Id of the related class
format: int32
example: 4421
EnrollmentStatusId:
type: integer
description: |-
Indicates the status of the class enrollment
- 0 = Request
- 10 = Cancel
- 20 = Waitlist
- 30 = Approve
- 40 = Deny
- 50 = Audit
- 60 = Enroll
format: int32
example: 60
CompletionStatusId:
type: integer
description: |-
Indicates the completion status of the class enrollment
- 0 = Unknown
- 10 = Attending
- 20 = Complete
- 30 = Incomplete
- 40 = NoShow
- 50 = Failed
format: int32
example: 0
LateCancel:
type: boolean
description: Indicates if the class enrollment was cancelled outside the late cancellation window.
example: false
Retake:
type: boolean
description: Indicates if the class enrollment is a retake.
example: false
LocationTypeId:
type: integer
description: |-
Indicates the location type that the student is assigned to attend the class
- 0 = To Be Determined
- 10 = Classroom
- 20 = Remote Classroom
- 30 = Virtual
format: int32
nullable: true
example: 0
ClassroomId:
type: integer
description: The ID of the classroom (if any) in which the student is assigned to attend the class.
format: int32
nullable: true
example: 3456
HoursSpent:
type: integer
description: The hours spent by the student in the class enrollment.
format: int32
nullable: true
example: 20
Grade:
type: integer
description: The grade the student received for the class enrollment.
format: int32
nullable: true
example: 10
CustomFields:
type: array
description: Custom Fields that have values for the user
example:
- Name: Unique Text
TextValue: AXY12345
CustomFieldId: 5089
- Name: Unique Number
TextValue: '44'
CustomFieldId: 5090
- Name: Dropdown-01
TextValue: Second Choice
CustomFieldId: 5087
items:
type: object
properties:
Name:
type: string
description: The name that is given to this custom field
TextValue:
type: string
description: The text value for this field can be updated using the /UpdateClassEnrollmentCustomFieldValue API endpoint.
CustomFieldId:
type: integer
format: int32
description: The Custom Field's system generated unique id.
ClassEnrollmentSearch:
type: object
properties:
Id:
type: integer
description: The class enrollment's unique identifier
format: int32
example: 10
ExternalId:
type: string
description: 'The class enrollment''s external ID, usually a unique identifier from the calling system'
nullable: true
example: E3G5YZFREFEQ9371
UserId:
type: integer
description: The Id of the related user
format: int32
example: 897615
UserExternalId:
type: integer
description: The external Id of the related user
format: int32
example: 897615
ClassId:
type: integer
description: The Id of the related class
format: int32
example: 4421
ClassName:
type: string
description: The name of the class
example: Class name sample
ClassExternalId:
type: integer
description: The external Id of the related class
format: int32
example: 4421
EnrollmentStatusId:
type: integer
description: |-
Indicates the status of the class enrollment
- 0 = Request
- 10 = Cancel
- 20 = Waitlist
- 30 = Approve
- 40 = Deny
- 50 = Audit
- 60 = Enroll
format: int32
example: 60
CompletionStatusId:
type: integer
description: |-
Indicates the completion status of the class enrollment
- 0 = Unknown
- 10 = Attending
- 20 = Complete
- 30 = Incomplete
- 40 = NoShow
- 50 = Failed
format: int32
example: 0
LateCancel:
type: boolean
description: Indicates if the class enrollment was cancelled outside the late cancellation window.
example: false
Retake:
type: boolean
description: Indicates if the class enrollment is a retake.
example: false
LocationTypeId:
type: integer
description: |-
Indicates the location type that the student is assigned to attend the class
- 0 = To Be Determined
- 10 = Classroom
- 20 = Remote Classroom
- 30 = Virtual
format: int32
nullable: true
example: 0
ClassroomId:
type: integer
description: The ID of the classroom (if any) in which the student is assigned to attend the class.
format: int32
nullable: true
example: 3456
HoursSpent:
type: integer
description: The hours spent by the student in the class enrollment.
format: int32
nullable: true
example: 20
Grade:
type: integer
description: The grade the student received for the class enrollment.
format: int32
nullable: true
example: 10
LastModified:
type: integer
description: 'When the class enrollment was last modified. Provided in Unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
format: int64
example: 1295375536
CourseAssignment:
type: object
properties:
Id:
type: integer
description: The course assignment's unique identifier
format: int32
example: 1234
ExternalId:
type: string
description: 'The course assignment''s external ID, usually a unique identifier from the calling system'
nullable: true
example: C9876ZFGEFER9876
CourseId:
type: integer
description: The Id of the course associated with this course assignment.
format: int32
example: 123
UserId:
type: integer
description: The UserId of the user that is associated with this course assignment.
format: int32
example: 3434
ClubMembershipId:
type: integer
description: The subscription (if any) associated with this course assignment.
format: int32
nullable: true
example: 119955
Expire:
type: integer
description: When the course assignment expires (if ever) (in Unix epoch time)
format: int64
nullable: true
example: 1450479600
TargetCompletion:
type: integer
description: When course assignment is expected to be completed by the student (in Unix epoch time)
format: int64
nullable: true
example: 1449496800
Start:
type: integer
description: When the course assignment was started (if ever) (in Unix epoch time)
format: int64
nullable: true
example: 1449496800
Complete:
type: integer
description: When the course assignment was completed (if ever) (in Unix epoch time)
format: int64
nullable: true
CourseAssignmentSearchResult:
type: object
properties:
Id:
type: integer
description: The course assignment's unique identifier
format: int32
example: 12345
ExternalId:
type: string
description: 'The course assignment''s external ID, usually a unique identifier from the calling system'
nullable: true
example: FC8D0166
CourseId:
type: integer
description: The course's unique identifier
format: int32
example: 1234
CourseName:
type: string
description: The name of the course
example: Course name sample
UserId:
type: integer
description: The user's unique identifier
format: int32
example: 190615
UserExternalId:
type: string
description: 'The user''s external ID, usually a unique identifier from the calling system'
nullable: true
example: 89CFAB18-443D-495C-89B0-95A85E0A00BA
FirstName:
type: string
description: The user's first name
example: Sally
LastName:
type: string
description: The user's last name
example: Doe
Email:
type: string
description: The user's e-mail address
example: sally.doe@sample.net
OrganizationId:
type: integer
description: The unique identifier of the organization the user belongs to
format: int32
example: 2471
PaymentType:
type: string
description: What type of key was used to get access to the course
example: Subscription (Microsoft Total Access Collection)
Created:
type: integer
description: 'When the course assignment was created. Provided in Unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
format: int64
example: 1295375536
Expires:
type: integer
description: 'When the course assignment expires. Provided in Unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
format: int64
nullable: true
example: 1310947200
Started:
type: integer
description: 'When the course assignment was started by the user. Provided in Unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
format: int64
nullable: true
example: 1295378841
Completed:
type: integer
description: 'When the course assignment was completed by the user. Provided in Unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
format: int64
nullable: true
example: 1295386048
CourseCatalogSearchHistorySearchResult:
type: object
properties:
Id:
type: integer
description: The search result's unique identifier
format: int64
example: 4754
UserId:
type: integer
description: The user's unique identifier
format: int32
example: 190615
UserExternalId:
type: string
description: 'The user''s external ID, usually a unique identifier from the calling system'
nullable: true
example: EC11A1BE-4A26-4D28-AA75-F41E3F56DB57
FirstName:
type: string
description: The user's first name
example: Jane
LastName:
type: string
description: The user's last name
example: Doe
OrganizationId:
type: integer
description: The unique identifier of the organization the user belongs to
format: int32
example: 3456
Search:
type: integer
description: 'When the search was run. Provided in Unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
format: int64
example: 1466092675
TextFilter:
type: string
description: The text filter entered by the user
nullable: true
example: Scripting
Tags:
type: array
description: All tags selected by the user. See Tag type below.
items:
$ref: '#/components/schemas/Tag'
ClubIds:
type: array
description: Unique identifiers of all clubs the search was filtered against.
example:
- 1234
- 4332
items:
type: integer
format: int64
example: 123
PageIndex:
type: integer
description: The zero-based index of the page of results displayed by the search
format: int32
NumResults:
type: integer
description: The total number of results matched by the search
format: int32
example: 10
LabInstanceSearchResult:
type: object
properties:
Id:
type: integer
description: The lab instance's unique identifier
format: int64
example: 4042909
LabId:
type: integer
description: The lab profile's unique identifier
format: int32
example: 6742
LabNumber:
type: string
description: The number/code of the lab
example: Lab201
LabName:
type: string
description: The name the lab
example: Sample lab name
UserId:
type: integer
description: The user's unique identifier
format: int32
example: 78956
UserExternalId:
type: string
description: 'The user''s external ID, usually a unique identifier from the calling system'
nullable: true
example: 89CFAB18-443D-495C-89B0-95A85E0A00BA
FirstName:
type: string
description: The user's first name
example: Jane
LastName:
type: string
description: The user's last name
example: Doe
OrganizationId:
type: integer
description: The unique identifier of the organization the user belongs to
format: int32
example: 457
Start:
type: integer
description: 'When the lab instance started. Provided in Unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
format: int64
example: 1465500264
End:
type: integer
description: 'When the lab instance ended. Provided in Unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
format: int64
nullable: true
example: 1465500264
TotalRunTimeSeconds:
type: integer
description: The text filter entered by the user
format: int32
nullable: true
example: 164
ExpectedDurationSeconds:
type: integer
description: The amount of time expected for the lab to take in seconds
format: int32
nullable: true
example: 43200
TaskCompletePercent:
type: integer
description: The percentage of the lab that has been completed by the user
format: int32
example: 0
CompletionStatus:
type: integer
description: |-
Indicates the completion status of the lab instance. Possible Values:
- 0 = Cancelled
- 10 = In progress
- 20 = Complete
- 30 = Error
format: int32
nullable: true
example: 10
CourseId:
type: integer
description: The unique identifier of the course the lab instance was launched from
format: int32
nullable: true
example: 33410
CourseAssignmentId:
type: integer
description: The unique identifier of the course assignment the lab instance was launched from
format: int32
nullable: true
example: 315143
ClassId:
type: integer
description: The unique identifier of the class the lab instance was launched from
format: int32
nullable: true
example: 56476
ClassExternalId:
type: string
description: The unique identifier from the calling system for the class the lab instance was launched from
nullable: true
example: ABC123
UserIpAddress:
type: string
description: The user's ip address recorded when a new lab instance is launched
nullable: true
example: 127.0.0.1
LastActivityTime:
type: integer
description: 'When student activity was last detected. Provided in Unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
format: int64
nullable: true
example: 1585690845
GetLabInstanceDetailsResponse:
type: object
x-stoplight:
id: 5b72f520a1cc1
x-examples: {}
properties:
Id:
type: integer
description: The TMS ID of the lab instance.
format: int64
LabId:
type: integer
description: The TMS ID of the lab.
format: int32
LabName:
type: string
description: The TMS name of the lab.
SeriesId:
type: integer
description: The ID of the lab series.
format: int32
nullable: true
SeriesName:
type: string
description: The name of the lab series.
nullable: true
UserId:
type: string
description: The ID you use to identify the user in your external system.
UserFirstName:
type: string
description: The user's first name.
UserLastName:
type: string
description: The user's last name.
ClassId:
description: The ID of the class the lab instance is associated with.
type: string
nullable: true
ClassName:
description: The name of the class the lab instance is associated with.
type: string
nullable: true
AssignmentId:
description: The ID of the class assignment the lab instance is associated with.
type: string
nullable: true
Start:
type: integer
description: When the lab was started (in Unix epoch time).
format: int64
StartTime:
type: string
description: When the lab was started (in Unix epoch time).
Expires:
type: integer
description: When the lab expires (in Unix epoch time).
format: int64
ExpiresTime:
type: string
description: When the lab expires (in Unix epoch time).
End:
type: integer
description: When the lab ended (in Unix epoch time).
format: int64
nullable: true
EndTime:
type: string
description: When the lab ended (in Unix epoch time).
nullable: true
LastActivity:
type: integer
description: When student activity was last detected (in Unix epoch time).
format: int64
nullable: true
LastActivityTime:
type: string
description: When student activity was last detected (in Unix epoch time).
nullable: true
LastSave:
type: integer
description: When the lab was last saved (in Unix epoch time).
format: int64
nullable: true
LastSaveTime:
type: string
description: When the lab was last saved (in Unix epoch time).
nullable: true
SaveExpires:
type: integer
description: 'If the lab instance is saved, when the saved data will expire and be deleted (in Unix epoch time).'
format: int64
nullable: true
SaveExpiresTime:
type: string
description: 'If the lab instance is saved, when the saved data will expire and be deleted (in Unix epoch time).'
nullable: true
State:
type: string
description: |-
The state of the lab instance. Possible values:
Off
Provisioning Storage
Building
Building (Displayable)
Starting
Running
Saving
Saved
Resuming
Creating Snapshot
Applying Snapshot
Updating Lab Profile
Tearing Down
Cloning
Creating As Clone
Moving (Running)
Moving (Saved)
Creating New Lab Profile
Scoring
Scheduled
CompletionStatus:
type: string
description: |-
The student's completion status. Possible values:
Scheduled
Cancelled
Not Started
Incomplete
Complete
Storage Provisioning Failed
Lab Creation Failed
Resume Failed
Save Failed
Submitted For Grading
Grading In Progress
PoolMemberName:
description: 'If the lab contains a virtual machine pool, the name of the pool member that was used.'
type: string
nullable: true
LabHostId:
type: integer
description: The ID of the lab host machine.
format: int32
LabHostName:
type: string
description: The name of the lab host machine.
DatacenterId:
type: integer
description: The ID of the datacenter where the lab is located.
format: int32
DatacenterName:
type: string
description: The name of the datacenter where the lab is located.
DeliveryRegionId:
type: integer
description: 'When specified, Skillable will attempt to launch the lab in the specified delivery region if a suitable host in that region is available and all required storage is available in that region. Delivery regions can be found using the **DeliveryRegions** command or **Catalog** command. Using the ipAddress parameter will result in a more reliable geo-location of the lab for the end user.'
format: int32
DeliveryRegionName:
type: string
description: The name of the delivery region where the lab is located.
PlatformId:
type: integer
description: |-
The platform the lab has hosted on. Possible values:
2 = Hyper-V
3 = ESX
20 = Docker
-1 = None
format: int32
LastSaveTriggerType:
description: |-
If the lab is currently saved, what triggered the save operation. Possible values:
Unknown
By Student
By Administrator
Automatic
From API Consumer
type: string
nullable: true
TimeInSession:
type: integer
description: The total number of seconds the user spent in the lab.
format: int32
TotalRunTime:
type: integer
description: 'The total number of seconds the lab was running, whether or not the student was present.'
format: int32
TimeRemaining:
type: integer
description: The total number of seconds remaining before the lab expires.
format: int32
InstructorName:
description: The name of the instructor for the associated class.
type: string
nullable: true
StartupDuration:
type: integer
description: The number of seconds it took the lab to start.
format: int32
nullable: true
Errors:
type: array
description: An array of all errors associated with the lab instance.
items:
type: object
Snapshots:
type: array
description: An array of snapshots created by the user within the lab. This contains an array of LabInstanceSnapshot objects.
items:
type: object
properties:
Name:
type: string
description: The name that the student gave to the snapshot.
Time:
type: integer
description: When the student created the snapshot (in Unix epoch time).
format: int64
Sessions:
type: array
description: An array of session times the student spent in the lab. This contains an array of LabInstanceSnapshot objects.
items:
type: object
properties:
Start:
type: integer
format: int64
description: When the session started (in Unix epoch time).
StartTime:
type: string
End:
type: integer
description: When the session ended (in Unix epoch time).
nullable: true
EndTime:
type: string
Notes:
type: array
description: Array of notes applicable to the lab instance.
items:
type: object
properties:
Time:
type: integer
TimeValue:
type: string
Title:
type: string
Text:
type: string
HasContent:
type: boolean
description: 'Indicates whether the lab has content, or simply houses virtual machines.'
Task:
description: 'If the lab has content (HasContent=true), indicates the name of the task the student is working on.'
type: string
nullable: true
Exercise:
description: 'If the lab has content (HasContent=true), indicates the name of the exercise the student is working on.'
type: string
nullable: true
NumTasks:
type: integer
description: 'If the lab has content (HasContent=true), indicates the total number of tasks in the lab.'
format: int32
NumCompletedTasks:
type: integer
description: 'If the lab has content (HasContent=true), indicates the number of tasks the student has completed.'
format: int32
TaskCompletePercent:
type: integer
description: 'If the lab has content (HasContent=true), indicates the percentage of tasks that the student has completed.'
format: int32
RemoteController:
type: string
description: The name of the remote controller used by the user.
Tag:
type: string
description: Lab instance tag data.
nullable: true
BrowserUserAgent:
type: string
description: The browser user agent used by the user.
nullable: true
LastLatency:
type: integer
description: The last known latency value as measured between the client and the lab's datacenter.
format: int32
nullable: true
ExamPassed:
type: boolean
description: Indicates whether the user passed the lab. Will only be set if the lab has activities which have been scored.
nullable: true
ExamScore:
type: integer
description: Indicates the lab score. Will only be set if the lab has activities which have been scored.
format: int32
nullable: true
ExamMaxPossibleScore:
type: integer
description: Indicates the maximum possible score of the lab. Will only be set if the lab has activities which have been scored.
format: int32
nullable: true
ExamPassingScore:
type: integer
description: Indicates the minimum score required to pass the lab. Will only be set if the lab has activities which have been scored.
format: int32
nullable: true
ExamScoredById:
type: integer
description: The ID of the user that manually scored the lab. Will only be set if the lab has activities which have been scored manually. Automatically scored labs will not include a value for this property.
format: int64
nullable: true
ExamScoredByName:
description: The name of the user that manually scored the lab. Will only be set if the lab has activities which have been scored manually. Automatically scored labs will not include a value for this property.
type: string
nullable: true
ExamDetails:
description: Legacy Field from previous scoring engine.
type: string
nullable: true
ExamScoredDate:
type: integer
description: The date the lab was scored (in Unix epoch time).
format: int64
nullable: true
ExamScoredTime:
type: string
description: When the lab was scored (in Unix epoch time). Will only be set if the lab has activities which have been scored.
nullable: true
IsExam:
type: boolean
description: Indicates whether the lab is scored.
IpAddress:
type: string
description: The user's IP address. This is only included if the IP address was provided when the lab was launched.
nullable: true
Country:
type: string
description: The user's country as determined by IP address geolocation. This is only included if the IP address was provided when the lab was launched.
nullable: true
Region:
type: string
description: The user's state/region as determined by IP address geolocation. This is only included if the IP address was provided when the lab was launched.
nullable: true
City:
type: string
description: The user's city as determined by IP address geolocation. This is only included if the IP address was provided when the lab was launched.
nullable: true
Latitude:
type: number
description: The user's latitude as determined by IP address geolocation. This is only included if the IP address was provided when the lab was launched.
format: float
nullable: true
Longitude:
type: number
description: The user's longitude as determined by IP address geolocation. This is only included if the IP address was provided when the lab was launched.
format: float
nullable: true
PublicIpAddresses:
type: array
description: An array of public IP address information objects. This contains an array of IpAddressInfo objects.
items:
type: object
properties:
IpAddress:
type: string
description: An IP address.
MacAddress:
type: string
description: The MAC address of the NIC that the IP address was assigned to.
MachineInstanceName:
type: string
description: The name of the virtual machine instance that the IP address was assigned to.
CloudCredentials:
type: array
description: An array of credentials assigned to the lab instance. This contains an array of CloudCredential objects.
items:
type: object
properties:
PropertiesJson:
type: string
description: 'Json serialized properties for the credentials, as defined in the cloud credential pool.'
Expires:
type: integer
description: When the credentials expire (in Unix epoch time).
format: int64
DisplayName:
type: string
description: Friendly credential name displayed in the lab user interface.
Message:
type: string
nullable: true
CloudPortalCredentials:
type: array
description: An array of credentials assigned to the lab instance. This contains an array of CloudPortalCredential objects.
items:
type: object
properties:
CloudPlatform:
type: integer
format: int32
description: |-
The ID of the cloud platform to which the credentials belong.
10 = Azure
11 = AWS
PropertiesJson:
type: string
description: Json serialized properties for the credentials.
VirtualMachineCredentials:
type: array
description: An array of credentials used to access the virtual machines. This contains an array of VirtualMachineCredential objects.
items:
type: object
properties:
Id:
type: integer
description: ID of the virtual machine.
format: int32
Name:
type: string
description: Name of the virtual machine.
Username:
type: string
description: Username used to accces the virtual machine.
Password:
type: string
description: Password used to access the virtual machine.
CloudPlatformId:
type: integer
description: |-
The ID of the cloud platform. Possible values:
10 = Azure
11 = AWS
format: int32
nullable: true
ClientUrl:
description: |-
This response property is deprecated. Unless explicitly allowed by Skillable, this field will always be null.
To obtain an access URL, use the **LabAccessUrl** command.
type: string
nullable: true
ActivityResults:
type: array
description: An array of results for activities displayed in the lab instance. This contains an array of ActivityResult objects.
items:
type: object
properties:
ActivityId:
type: integer
description: ID of the Activity.
format: int32
ActivityName:
type: string
description: Name of the Activity.
Scored:
type: boolean
description: Whether the activity is scored.
Score:
type: number
description: The Score received by the student.
format: float
Passed:
type: boolean
description: Whether the student received a passing score on the activity.
ActivityType:
type: integer
description: |-
0 = Multiple choice, single answer
10 = Multiple choice, multiple answer
20 = Short answer, exact match
30 = Short answer, regex match
40 = Automated Activity
format: int32
TextResult:
type: string
description: The answer given by a student for Short Answer type questions.
nullable: true
UiResponse:
type: string
description: The response given to the student if specified in the question Answer Feedback.
nullable: true
AnswerResults:
type: array
description: A collection of the answers available in single-answer activities.
items:
type: object
properties:
AnswerId:
type: integer
format: int32
AnswerText:
type: string
Correct:
type: boolean
ScriptResults:
type: array
description: 'A collection of the results of the an automated activity. Includes Script ID, Score, Passing Status, UiResponse, ScriptResponse, PlatformError, and ScriptError.'
items:
type: object
DisplayScriptsAsTaskList:
type: boolean
description: Whether automated activities are scored as a TaskList or individually.
AnswerTexts:
type: array
description: A collection of the answers available in multi- answer activities.
items:
type: object
properties:
Correct:
type: boolean
AnswerId:
type: integer
format: int32
Text:
type: string
Chosen:
type: boolean
ScriptTexts:
type: array
description: The Activity ID and Text displayed in the Task List if Task List is enabled on the activity.
items:
type: object
ShowResultsInReports:
type: boolean
description: Whether results of the script are shown on the lab instance.
ActivityGroupResults:
type: array
description: An array of results for activities displayed in the lab instance Activity Group. This contains an array of ActivityResult objects.
items:
type: object
properties:
Id:
type: integer
format: int32
description: ID of the Activity Group.
Name:
type: string
description: Name of the Activity Group.
ScoreValueTotal:
type: number
format: float
description: The maximum score for the Activity Group.
AggregateScore:
type: number
format: float
description: The resultant score the of the Activity Group.
ActivityResults:
type: array
description: An array of results for activities displayed in the lab instance Activity Group. This contains an array of ActivityResult objects.
items:
type: object
properties:
ActivityId:
type: integer
format: int32
description: ID of the Activity.
ActivityName:
type: string
description: Name of the Activity.
Scored:
type: boolean
description: Whether the activity is scored.
Score:
type: integer
description: The Score received by the student.
Passed:
type: boolean
description: Whether the student received a passing score on the activity.
ActivityType:
type: integer
description: |-
0 = Multiple choice, single answer
10 = Multiple choice, multiple answer
20 = Short answer, exact match
30 = Short answer, regex match
40 = Automated Activity
TextResult:
type: string
description: The answer given by a student for Short Answer type questions.
UiResponse:
type: string
description: The response given to the student if specified in the question Answer Feedback.
AnswerResults:
type: array
description: A collection of the answers available in single-answer activities.
items:
type: object
ScriptResults:
type: array
description: 'A collection of the results of the an automated activity. Includes Script ID, Score, Passing Status, UiResponse, ScriptResponse, PlatformError, and ScriptError.'
items:
type: object
DisplayScriptsAsTaskList:
type: boolean
description: Whether automated activities are scored as a TaskList or individually.
AnswerTexts:
type: array
description: A collection of the answers available in multi- answer activities.
items:
type: object
properties:
'':
type: string
ScriptTexts:
type: array
description: The Activity ID and Text displayed in the Task List if Task List is enabled on the activity.
items:
type: object
ShowResultsInReports:
type: boolean
description: Whether results of the script are shown on the lab instance.
EstimatedReadySeconds:
type: integer
description: An estimated number of seconds before the lab is ready.
format: int32
nullable: true
InstructionsSetId:
type: string
description: The ID of the Instructions Set used.
nullable: true
Language:
type: string
description: |-
The lanuage code of the instruction set.
en = English
es = Spanish
fr = French
de = German
pt = Portuguese
ja = Japanese
zh-hans = Simplified Chinese
zh-hant = Traditional Chinese
ko = Korean
nullable: true
Error:
type: string
description: 'In the event of an error, this will contain a detailed error message.'
nullable: true
Status:
type: integer
description: |-
Indicates the status of the API request.
0 = Error
1 = Success
format: int32
CourseExternalActivityLaunchSearchResult:
type: object
properties:
Id:
type: integer
description: The launch unique identifier
format: int64
example: 5478141
Activity:
type: string
description: The name of the activty that was launched
example: URL 1
ActivityType:
type: integer
description: |-
Indicates the type of the activity launched. Possible values:
- 40 = URL
- 60 = Video
- 70 = Document
format: int32
example: 40
UserId:
type: integer
description: The user's unique identifier
format: int32
example: 34521
UserExternalId:
type: string
description: 'The user''s external ID, usually a unique identifier from the calling system'
nullable: true
example: EC11A1BE-4A26-4D28-AA75-F41E3F56DB57
FirstName:
type: string
example: Jane
LastName:
type: string
example: Doe
OrganizationId:
type: integer
description: The unique identifier of the organization the user belongs to
format: int32
example: 77889
Launch:
type: integer
description: 'When the activity was launched. Provided in Unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
format: int64
example: 1465758373
CourseId:
type: integer
description: The unique identifier of the course the activity was launched from
format: int32
nullable: true
example: 442
CourseAssignmentId:
type: integer
description: The unique identifier of the course assignment the activity was launched from
format: int32
nullable: true
example: 3456
ClassEnrollmentId:
type: integer
description: The unique identifier of the class enrollment the activity was launched from
format: int32
nullable: true
example: 3445
Class:
type: object
properties:
Id:
type: integer
description: The class's unique identifier
format: int32
example: 56794
ExternalId:
type: integer
description: The class's ExternalId identifier
format: int32
Name:
type: string
description: The class's name
example: Sample Class Name
Description:
type: string
description: The class's Description
nullable: true
example: Sample Description
HtmlDescription:
type: string
description: The class's HTML Description
nullable: true
Enabled:
type: boolean
description: Gives the class's status
example: true
ConfirmationStatusId:
type: integer
description: Gives the class's ConfirmationStatusId
format: int32
example: 5634
CourseId:
type: integer
description: The class's course identifier
format: int32
example: 5678
OrganizationId:
type: integer
description: The class's organization identifier
format: int32
example: 123
OrganizationName:
type: string
description: The class's organization name
example: Sample Organization Id
CompanyId:
type: integer
description: The class's company identifier
format: int32
nullable: true
example: 1235
DeliveryTypeId:
type: integer
description: The class's delivery identifier
format: int32
example: 34
VirtualMeetingHostId:
type: integer
description: The class's virtual meeting host identifier
format: int32
nullable: true
example: 14
VirtualMeetingId:
type: string
description: The class's VirtualMeeting identifier
nullable: true
CustomVirtualClassroomUrl:
type: string
description: The class's custom VirtualMeeting Url
nullable: true
PrimaryInstructorId:
type: integer
description: The class's primaryInstructor identifier
format: int32
nullable: true
PrimaryInstructorFirstName:
type: string
description: The class's primary instructor first name
nullable: true
PrimaryInstructorLastName:
type: string
description: The class's primary instructor last name
nullable: true
PrimaryClassroomId:
type: integer
description: The class's primary classroom identifier
format: int32
nullable: true
example: 4535
MaterialsListId:
type: integer
description: The class's materials list identifier
format: int32
nullable: true
example: 45
Start:
type: integer
description: When the class starts (in Unix epoch time).
format: int64
example: 1320757200
End:
type: integer
description: When the class ends (in Unix epoch time).
format: int64
example: 1320757200
MinStudents:
type: integer
description: The minimum number of students enrolled
format: int32
example: 2
MaxStudents:
type: integer
description: The maximum number of students enrolled
format: int32
example: 5
AllowSelfEnrollment:
type: boolean
description: Distinguishes if self enrollment is allowed
example: false
IsPublic:
type: boolean
description: Distinguishes if the class is public
example: true
EnableClassTrainingKey:
type: boolean
description: Distinguishes if the class allows registration via a class training key
example: true
ClassTrainingKey:
type: string
description: The class training key (if enabled) that will allow for self registration in the class
nullable: true
example: ABC1234
DisableLabs:
type: boolean
description: Distinguishes if the class is disabled
example: false
EnableEnrollmentNotifications:
type: boolean
description: Distinguishes if enrollment notifications are enabled
example: true
IsUniqueDelivery:
type: boolean
description: Distinguishes if unique delivery is enabled
example: false
RecordingModeId:
type: integer
description: The class's recording Mode identifier
format: int32
example: 6743
CustomText1:
type: string
description: CustomText1
example: Sample custom text 1
CustomText2:
type: string
description: CustomText2
example: Sample custom text 2
CustomText3:
type: string
description: CustomText3
nullable: true
CustomText4:
type: string
description: CustomText4
nullable: true
CustomText5:
type: string
description: CustomText5
nullable: true
CustomBool1:
type: boolean
description: CustomBool1
example: true
CustomBool2:
type: boolean
description: CustomBool2
example: true
CustomBool3:
type: boolean
description: CustomBool3
example: true
CustomBool4:
type: boolean
description: CustomBool4
example: false
CustomBool5:
type: boolean
description: CustomBool5
example: false
CustomDropdown1:
type: string
description: CustomDropdown1
nullable: true
CustomDropdown2:
type: string
description: CustomDropdown2
nullable: true
SurveyId:
type: integer
description: The class's survey identifier
format: int32
nullable: true
example: 334523
StudentSurveyAvailabilityStartTypeId:
type: integer
description: Identifies when Student survey is becomes available in relation to SurveyAvailabilityStartHours. 0 for hours before event ends; 1 for hours after event ends.
format: int32
example: 55534
SurveyAvailabilityStartHours:
type: integer
description: Number of hours after class end that the survey is available
format: int32
example: 4
SurveyAvailabilityEndDays:
type: integer
description: Number of days after class end that the survey is available
format: int32
example: 30
InstructorSurveyId:
type: integer
description: The class's survey identifier for instructors
format: int32
nullable: true
example: 356
OrganizationSurveyId:
type: integer
description: The class's survey identifier for organizations
format: int32
nullable: true
example: 1034
OrganizationSurveyResponseId:
type: integer
description: The class's survey response identifier for organizations
format: int32
nullable: true
ClassroomAddress1:
type: string
description: Classroom address
nullable: true
example: 123 Sample Dr.
ClassroomAddress2:
type: string
description: Classroom address
nullable: true
ClassroomCity:
type: string
description: Classroom address
nullable: true
example: Sample City
ClassroomState:
type: string
description: Classroom address
nullable: true
example: Florida
ClassroomCountry:
type: string
description: Classroom address
nullable: true
example: Sample County
ClassroomZip:
type: string
description: Classroom address
nullable: true
example: '12345'
CustomFields:
type: array
description: See CustomField
items:
$ref: '#/components/schemas/CustomField'
SessionTimes:
type: array
description: See SessionTimes
items:
$ref: '#/components/schemas/ClassSession'
ClassSession:
type: object
properties:
Start:
type: integer
description: When the class starts (in Unix epoch time).
format: int64
example: 1320876000
End:
type: integer
description: When the class ends (in Unix epoch time).
format: int64
example: 1320876000
ClassMeeting:
type: object
properties:
Start:
type: integer
description: When the class meeting starts UTC (in Unix epoch time).
format: int64
example: 1320876000
End:
type: integer
description: When the class meeting ends UTC (in Unix epoch time).
format: int64
example: 1320876000
CustomFieldSearchFilter:
type: object
properties:
Id:
type: integer
description: The Id of the custom field you are searching against.
format: int32
example: 1234
ComparisonType:
type: integer
description: |-
The Compairson Type for the search filter. Will default to 0 if not included.
0 - Equals
5 - Not Equals
format: int32
example: 0
Value:
type: string
description: The value you would like to filter that custom field by in string representation.
example: Some Value
ClassSearchResult:
type: object
properties:
Id:
type: integer
description: The class's unique identifier
format: int32
example: 56794
CourseId:
type: integer
description: The unique identifier of the course the class is based on.
format: int32
example: 5678
CourseExternalId:
type: integer
description: The courses's ExternalId identifier the class is based on.
format: int32
example: 6789
CourseName:
type: string
description: The name of the course the class is based on.
example: Sample course Name
ConfirmationStatusId:
type: integer
description: |-
Indicates the current status of whether the class will run.
- Scheduled = 0
- GuaranteedToRun = 1
- Cancelled = 2
- Rescheduled = 3
- Tentative = 4
- Requested = 5
- Denied = 6
- Completed = 7
format: int32
example: 2223
Start:
type: integer
description: When the class starts (in Unix epoch time).
format: int64
example: 1320757200
End:
type: integer
description: When the class ends (in Unix epoch time).
format: int64
example: 1320757200
OrganizationId:
type: integer
description: The class's organization identifier
format: int32
example: 123
OrganizationName:
type: string
description: The class's organization name
example: Sample Organization Name
NumOpen:
type: integer
description: The number of enrolled users in the class.
format: int32
example: 6
nullable: true
NumEnroll:
type: integer
description: The minimum number of students the organization requires to be in the class to run it.
format: int32
example: 45
nullable: true
MinStudents:
type: integer
description: The minimum number of students enrolled
format: int32
example: 2
MaxStudents:
type: integer
description: The maximum number of students enrolled
format: int32
example: 5
VirtualMeetingHostId:
type: integer
description: The class's virtual meeting host identifier
format: int32
example: 14
nullable: true
VirtualMeetingId:
type: string
description: The class's VirtualMeeting identifier
nullable: true
CustomVirtualClassroomUrl:
type: string
description: The class's custom VirtualMeeting Url
nullable: true
IsPublic:
type: boolean
description: Distinguishes if the class is public
example: true
nullable: true
Description:
type: string
description: The class's Description
example: Sample Description
nullable: true
ClassroomId:
type: integer
description: The class's primary classroom identifier
format: int32
example: 12345
nullable: true
ClassroomAddress1:
type: string
description: Classroom address
example: 123 Sample Dr.
nullable: true
ClassroomAddress2:
type: string
description: Classroom address
nullable: true
ClassroomCity:
type: string
description: Classroom address
example: Sample City
nullable: true
ClassroomState:
type: string
description: Classroom address
example: Florida
nullable: true
ClassroomCountry:
type: string
description: Classroom address
example: Sample County
nullable: true
ClassroomZip:
type: string
description: Classroom address
example: '12345'
nullable: true
HtmlDescription:
type: string
description: The class's HTML Description
nullable: true
CustomFields:
type: array
description: See CustomField
items:
$ref: '#/components/schemas/CustomField'
DeliveryTypeId:
type: integer
description: The class's delivery identifier
format: int32
example: 34
InstructorId:
type: integer
description: The class's primary instructor identifier
format: int32
nullable: true
InstructorFirstName:
type: string
description: The class's primary instructor first name
nullable: true
InstructorLastName:
type: string
description: The class's primary instructor last name
nullable: true
InstructorIds:
type: array
description: 'The internal user ids for all of the instructors assigned to the class, including the primary.'
example:
- 12345
- 98765
items:
type: integer
format: int32
EnableClassTrainingKey:
type: boolean
description: Distinguishes if the class allows registration via a class training key
example: false
ClassTrainingKey:
type: string
description: The class training key (if enabled) that will allow for self registration in the class
example: ABC1234
nullable: true
SessionTimes:
type: array
description: See SessionTimes
items:
$ref: '#/components/schemas/ClassSession'
PublicClassSearchResult:
type: object
properties:
Id:
type: integer
description: The class's unique identifier
format: int32
example: 56794
CourseId:
type: integer
description: The unique identifier of the course the class is based on.
format: int32
example: 5678
CourseName:
type: string
description: The name of the course the class is based on.
example: Sample course Name
ConfirmationStatusId:
type: integer
description: |-
Indicates the current status of whether the class will run.
- Scheduled = 0
- GuaranteedToRun = 1
- Cancelled = 2
- Rescheduled = 3
- Tentative = 4
- Requested = 5
- Denied = 6
- Completed = 7
format: int32
example: 2223
Start:
type: integer
description: When the class starts (in Unix epoch time).
format: int64
example: 1320757200
End:
type: integer
description: When the class ends (in Unix epoch time).
format: int64
example: 1320757200
OrganizationId:
type: integer
description: The class's organization identifier
format: int32
example: 123
OrganizationName:
type: string
description: The class's organization name
example: Sample Organization Id
NumOpen:
type: integer
description: The number of enrolled users in the class.
format: int32
nullable: true
example: 6
NumEnroll:
type: integer
description: The minimum number of students the organization requires to be in the class to run it.
format: int32
nullable: true
example: 45
MinStudents:
type: integer
description: The minimum number of students enrolled
format: int32
example: 2
MaxStudents:
type: integer
description: The maximum number of students enrolled
format: int32
example: 5
VirtualMeetingHostId:
type: integer
description: The class's virtual meeting host identifier
format: int32
nullable: true
example: 14
VirtualMeetingId:
type: string
description: The class's VirtualMeeting identifier
nullable: true
CustomVirtualClassroomUrl:
type: string
description: The class's custom VirtualMeeting Url
nullable: true
ClassroomId:
type: string
description: The class's primary classroom identifier
nullable: true
example: '12345'
ClassroomAddress1:
type: string
description: Classroom address
nullable: true
example: 123 Sample Dr.
ClassroomAddress2:
type: string
description: Classroom address
nullable: true
ClassroomCity:
type: string
description: Classroom address
nullable: true
example: Sample City
ClassroomState:
type: string
description: Classroom address
nullable: true
example: Florida
ClassroomCountry:
type: string
description: Classroom address
nullable: true
example: Sample County
ClassroomZip:
type: string
description: Classroom address
nullable: true
example: '12345'
HtmlDescription:
type: string
description: The class's HTML Description
nullable: true
DeliveryTypeId:
type: integer
description: The class's delivery identifier
format: int32
example: 34
ClassEnrollmentCustomFields:
type: object
x-stoplight:
id: c6a3ce5745aaa
properties:
Id:
type: integer
description: The custom field's unique identifier
format: int32
example: 10
Name:
type: string
description: The name of the custom field
example: CustomClassEnrollmentFieldName1
Description:
type: string
description: The description of the custom field
nullable: true
example: Sample custom class enrollment field name 1
DataTypeId:
type: integer
description: |-
The data type id of the custom field
- 0 = Textbox
- 10 = Dropdown List
- 20 = Checkbox
- 30 = Number
- 60 = User Selector
- 70 = Checkbox List
format: int32
example: 10
ListValues:
type: array
description: 'An array of type String representing the available selectable options in the case of Dropdown List and Checkbox List, for all other data types it will be an empty array ([])'
example:
- string 1
- string 2
- string 3
items:
type: string
SortOrder:
type: integer
format: int32
description: The order in which this field will appear in the JSON response.
example: 2
ClassCustomFields:
type: object
properties:
Id:
type: integer
description: The custom field's unique identifier
format: int32
example: 10
Name:
type: string
description: The name of the custom field
example: CustomClassFieldName1
Description:
type: string
description: The description of the custom field
nullable: true
example: Sample custom class field name 1
DataTypeId:
type: integer
description: |-
The data type id of the custom field
- 0 = Textbox
- 10 = Dropdown List
- 20 = Checkbox
- 30 = Number
- 60 = User Selector
- 70 = Checkbox List
format: int32
example: 10
Values:
type: array
description: 'An array of type String representing the available selectable options in the case of Dropdown List and Checkbox List, for all other data types it will be an empty array ([])'
example:
- string 1
- string 2
- string 3
items:
type: string
SortOrder:
type: integer
description: An integer representing the order in which it will be displayed on the class create/edit pages.
format: int32
example: 2
CreateClubMembershipResponse:
type: object
properties:
Status:
$ref: '#/components/schemas/Status'
Error:
$ref: '#/components/schemas/Error'
ClubMembershipId:
type: integer
description: The ID of the created subscription.
format: int32
example: 45632
ClubMembershipResponse:
type: object
properties:
Status:
$ref: '#/components/schemas/Status'
Error:
$ref: '#/components/schemas/Error'
Results:
type: array
description: See ClubMembership.
items:
$ref: '#/components/schemas/ClubMembership'
ClubMembership:
type: object
properties:
Id:
type: integer
description: The unique identifier of the course.
format: int32
example: 45632
ExternalId:
type: string
description: 'The course assignment''s external ID, usually a unique identifier from the calling system'
nullable: true
example: E3G5YZFREFEQ9371
ClubId:
type: integer
description: The Id of the related subscription profile
format: int32
example: 4421
UserId:
type: integer
description: The Id of the related user
format: int32
example: 897615
Starts:
type: integer
description: When the subscription starts (in Unix epoch time)
format: int64
example: 1449496800
Expires:
type: integer
description: When the subscription starts (in Unix epoch time)
format: int64
nullable: true
example: 1450479600
TargetCompletion:
type: integer
description: When the subscription is expected to be completed by the student (in Unix epoch time)
format: int64
nullable: true
example: 1449874800
SearchClubResultResponse:
type: object
properties:
Status:
$ref: '#/components/schemas/Status'
Error:
$ref: '#/components/schemas/Error'
TotalCount:
$ref: '#/components/schemas/TotalCount'
TotalPages:
$ref: '#/components/schemas/TotalPages'
SearchClubResults:
type: array
description: See SearchClubResult.
items:
$ref: '#/components/schemas/SearchClubResult'
SearchClubResult:
type: object
properties:
ClubId:
type: integer
description: The subscription profile's unique identifier.
format: int32
example: 523
Name:
type: string
description: The subscription profile's name.
example: .Net Subscription Profile
ProgramId:
type: integer
description: The subscription profile's program.
format: int32
example: 1
ProgramName:
type: string
description: The subscription profile's program name.
example: Training
OrganizationId:
type: integer
description: The subscription profile's organization.
format: int32
example: 387
OrganizationName:
type: string
description: The subscription profile's organization name.
example: ABC Training Company
Price:
type: number
description: The subscription profile's price.
example: 0
LastModified:
type: string
description: When the subscription profile was last modified.
example: '2017-04-19T22:16:07.967+0000'
Created:
type: string
description: When the subscription profile was created.
example: '2012-04-17T15:21:21.953+0000'
CourseIds:
type: array
description: A collection of ClubAssociatedCourses.
items:
$ref: '#/components/schemas/ClubAssociatedCourses'
ClubAssociatedCourses:
type: object
properties:
CourseId:
type: integer
description: The subscription profile's associated couseId.
format: int32
example: 8992
Name:
type: string
description: The course name.
example: .NET Programming Fundamentals
SearchSubscriptionsResult:
type: object
properties:
SubscriptionProfileId:
type: integer
description: The subscription profile's unique identifier.
format: int32
example: 523
SubscriptionProfileName:
type: string
description: The subscription profile's name.
example: .Net Club
Starts:
type: string
description: When the subscription starts (in Unix epoch time).
example: '2021-03-19T22:16:07.967Z'
nullable: true
Expires:
type: string
description: 'When the subscription ends or expires (in Unix epoch time). '
example: '2022-03-19T22:15:59.997Z'
nullable: true
LastModified:
type: string
description: When the subscription was last modified (in Unix epoch time).
example: '2021-04-19T11:23:02.567Z'
nullable: true
Created:
type: string
description: When the subscription was created (in Unix epoch time).
example: '2021-03-19T22:16:07.967Z'
nullable: true
SearchSubscriptionResponse:
type: object
properties:
Status:
$ref: '#/components/schemas/Status'
Error:
$ref: '#/components/schemas/Error'
TotalCount:
$ref: '#/components/schemas/TotalCount'
TotalPages:
$ref: '#/components/schemas/TotalPages'
SearchSubscriptionsResults:
type: array
description: See SearchSubscriptionsResult.
items:
$ref: '#/components/schemas/SearchSubscriptionsResult'
SearchSubscriptionTrainingKeyResponse:
type: object
x-stoplight:
id: 26e4593261e30
properties:
Status:
$ref: '#/components/schemas/Status'
Error:
$ref: '#/components/schemas/Error'
SearchSubscriptionsResults:
type: array
description: See SearchSubscriptionsResult.
items:
$ref: '#/components/schemas/SearchSubscriptionTrainingKeyResult'
SearchSubscriptionTrainingKeyResult:
type: object
x-stoplight:
id: fb13469d3a297
properties:
Id:
type: integer
description: The Id of the Subscription Training Key.
format: int32
example: 678
OrganizationId:
type: integer
description: The Id of the Organization associated with this Subscription Training Key.
format: int32
example: 121
OrganizationName:
type: string
description: The name of the Organization associated with the subscription Training Key.
example: .Net Club
SubscriptionProfileId:
type: integer
description: The subscription profile's unique identifier.
format: int32
example: 523
SubscriptionProfileName:
type: string
description: The subscription profile's name.
example: .Net Club
TrainingKey:
type: string
description: The subscription training key value
example: E3G5YZFREFEQ9371
nullable: true
MaxKeyUses:
type: integer
description: The maximum number of times the subscription training key can be used.
format: int32
example: 25
nullable: true
ExpirationDate:
type: string
description: 'When the subscription training key ends or expires (in Unix epoch time). '
example: '2022-03-19T22:15:59.997Z'
nullable: true
ContentExpiry:
type: string
description: When the subscription training key content ends or expires (in Unix epoch time).
example: '2022-03-19T22:15:59.997Z'
nullable: true
Created:
type: string
description: When the subscription training key was created (in Unix epoch time).
example: '2021-03-19T22:16:07.967Z'
nullable: true
LastModified:
type: string
description: When the subscription was last modified (in Unix epoch time).
example: '2021-04-19T11:23:02.567Z'
nullable: true
CreatedById:
type: integer
description: The user id that created the subscription training key
format: int32
example: 121
LastModifiedById:
type: integer
description: The user id that last modified the subscription training key
format: int32
example: 682
CreateSubscriptionTrainingKeysResponse:
type: object
x-stoplight:
id: c557c46799dfb
properties:
Status:
$ref: '#/components/schemas/Status'
Error:
$ref: '#/components/schemas/Error'
CreateSubscriptionsResults:
type: array
description: See CreateSubscriptionsResult.
items:
$ref: '#/components/schemas/CreateSubscriptionTrainingKeyResult'
CreateSubscriptionTrainingKeyResult:
type: object
x-stoplight:
id: fb13469d3a297
properties:
Id:
type: integer
description: The ID of the created Subscription Training Key.
format: int32
example: 45632
trainingKey:
type: string
description: The Subscription Training Key that has been created.
example: E3G5YZFREFEQ9371
UpdateSubscriptionTrainingKeysResponse:
type: object
x-stoplight:
id: c557c46799dfb
properties:
Status:
$ref: '#/components/schemas/Status'
Error:
$ref: '#/components/schemas/Error'
DeleteSubscriptionTrainingKeysResponse:
type: object
x-stoplight:
id: c557c46799dfb
properties:
Status:
$ref: '#/components/schemas/Status'
Error:
$ref: '#/components/schemas/Error'
CreateCompanyResponse:
type: object
properties:
Status:
$ref: '#/components/schemas/Status'
Error:
$ref: '#/components/schemas/Error'
CompanyId:
type: integer
description: The ID of the created company.
format: int32
example: 45632
GetCompanyResponse:
type: object
properties:
Status:
$ref: '#/components/schemas/Status'
Error:
$ref: '#/components/schemas/Error'
Company:
type: array
description: See Company results.
items:
$ref: '#/components/schemas/Company'
SearchCompaniesResponse:
type: object
properties:
TotalCount:
$ref: '#/components/schemas/TotalCount'
TotalPages:
$ref: '#/components/schemas/TotalPages'
Companies:
type: array
description: See Companies results.
items:
$ref: '#/components/schemas/Companies'
Status:
$ref: '#/components/schemas/Status'
Error:
$ref: '#/components/schemas/Error'
Company:
type: object
properties:
Id:
type: integer
description: The company's unique identifier.
format: int32
Name:
type: string
description: The Name of the company
ExternalId:
type: string
description: The External Id of the company
nullable: true
Description:
type: string
description: The Description of the company
nullable: true
OrganizationId:
type: integer
description: The Id of the Organization associated with this company
format: int32
OwningUserId:
type: integer
description: The Id of the owning User (if any) associated with this company
format: int32
nullable: true
AssignableToUsers:
type: boolean
description: Indicates whether the Company is Assignable to Users
Theme:
type: string
description: The name of the Theme to be used for the company
nullable: true
Address1:
type: string
description: The first Address line for a Company
nullable: true
Address2:
type: string
description: The second Address line for a Company
nullable: true
City:
type: string
description: The City for a Company
nullable: true
State:
type: string
description: 'The State for a Company (recommended use standard 2-character abbreviation, limit 50 characters)'
nullable: true
Zip:
type: string
description: The Zip code for a Company
nullable: true
Country:
type: string
description: 'The Country for a Company (recommended use standard 2-character abbreviation, limit 80 characters)'
nullable: true
Email:
type: string
description: The Email address for a Company
nullable: true
Phone:
type: string
description: The Phone number for a Company
nullable: true
Phone2:
type: string
description: The alternate Phone number for a Company
nullable: true
Fax:
type: string
description: The Fax number for a Company
nullable: true
WebSiteUrl:
type: string
description: The Web Site Url for a Company
nullable: true
CustomDropdown1:
type: string
description: The first Custom Dropdown list for a Company
nullable: true
CustomDropdown2:
type: string
description: The second Custom Dropdown list for a Company
nullable: true
Companies:
type: object
properties:
Id:
type: integer
description: The company's unique identifier.
format: int32
example: 123456789
OrganizationId:
type: integer
description: The Id of the Organization associated with this company
format: int32
example: 951624
OrganizationName:
type: string
description: The Name of the Organization associated with this company
example: ABC Organization
Name:
type: string
description: The Name of the company
example: ABC Training Company
Description:
type: string
description: The Description of the company
nullable: true
example: The Description of the company
ExternalId:
type: string
description: The External Id of the company
nullable: true
example: cmp123456
Address1:
type: string
description: The first Address line for a Company
nullable: true
example: Some street
Address2:
type: string
description: The second Address line for a Company
nullable: true
example: Some avenue
City:
type: string
description: The City for a Company
nullable: true
example: Grand Rapids
State:
type: string
description: 'The State for a Company (recommended use standard 2-character abbreviation, limit 50 characters)'
nullable: true
example: MI
Zip:
type: string
description: The Zip code for a Company
nullable: true
example: '123456'
Country:
type: string
description: 'The Country for a Company (recommended use standard 2-character abbreviation, limit 80 characters)'
nullable: true
example: US
Email:
type: string
description: The Email address for a Company
nullable: true
example: someemail@abccompany.com
Phone:
type: string
description: The Phone number for a Company
nullable: true
example: 123-456-7890
Phone2:
type: string
description: The alternate Phone number for a Company
nullable: true
example: 555-654-9870
Fax:
type: string
description: The Fax number for a Company
nullable: true
example: 555-555-5555
WebSiteUrl:
type: string
description: The Web Site Url for a Company
nullable: true
example: 'https://sampleurl.com'
Created:
type: integer
description: 'When the Company was created. Provided in Unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
format: int64
example: 1449496820
LastModified:
type: integer
description: 'When the Company was last modified. Provided in Unix epoch format, which is the number of seconds that have elapsed since midnight UTC January 1st, 1970.'
format: int64
example: 1584035105
SurveyResultResponse:
type: object
properties:
Status:
$ref: '#/components/schemas/Status'
Error:
$ref: '#/components/schemas/Error'
Results:
type: array
description: See SurveyResult.
items:
$ref: '#/components/schemas/SurveyResult'
SurveyResult:
type: object
properties:
CourseId:
type: integer
description: The course's unique identifier.
format: int32
example: 98669
ClassId:
type: integer
description: The class's unique identifier.
format: int32
nullable: true
example: 13324
Class:
type: string
description: The class's name.
example: 1077A Administering Exams 401
ClassStartDate:
type: string
description: The class's start date.
example: '2013-04-22T20:00:00Z'
ClassEndDate:
type: string
description: The class's end date.
example: '2013-04-27T06:00:00Z'
InstructorName:
type: string
description: The instructor's name.
example: John Doe
InstructorEmail:
type: string
description: The instructor's email.
example: john.doe@test.edu
StudentName:
type: string
description: The student's name.
example: Lesley Claypool
StudentEmail:
type: string
description: The student's email.
example: s.cheese@testemail.com
QuestionsAndResponses:
type: array
description: A collection of answer and response pairs.
items:
$ref: '#/components/schemas/QuestionsAndResponse'
QuestionsAndResponse:
type: object
properties:
Question:
type: string
description: A survey question.
example: did you like the class?
Response:
type: string
description: A survey resonse.
example: 'true'
Status:
type: integer
description: |-
Indicates the status of the API request.
0 = Success
10 = Error
20 = Not found
30 = Invalid integration key
format: int32
example: 10
Error:
type: string
description: Error details. This will only have a value if an error was encountered. The status property will also be set to Error (10).
nullable: true
TotalCount:
type: integer
description: 'The total number of results that match the search conditions, not all of which may be in the current result set.'
format: int32
example: 1
TotalPages:
type: integer
description: The total number of result pages that match the search conditions.
format: int32
example: 1
RowsAffected:
type: integer
description: The number of database rows affected while removing all data.
format: int32
example: 5
parameters: {}
securitySchemes:
api_key:
type: apiKey
name: api_key
in: header
description: ''