Create Non published schedule

Prev Next
POST /external/schedule

This particular 'create schedule method' will create a non-published schedule as opposed to "Create schedule and generate links"
Before using this API method Scheduler id must be set in External API settings of Cirrus app. Also you can set Invigilator id and default time zone.


Header

Name Data Type Description
Content-type: application/json for all requests
Authorization: EAPI {token} for all requests

Request Parameters

Parameters indicated with a * are mandatory

Name
Data Type
Description
AssessmentExternalId* string (64) Assessment external id. Should be unique. Alpha-Numeric.
StartDateTime* DateTime Date and time of schedule start (format: "2021-05-21T10:00:00Z")
EndDateTime* DateTime Date and time of schedule’s end (format: "2021-04-21T07:30:00.000Z" (UTC)

If EndDateTime isn’t specified it will be calculated automatically as:SDT + Dur (duration of the assessment) + 60 min

the duration between scheduling startDate and endDate must be greater than duration of the assessment + any extra time. (See get assessment info > example "MaxTimePerAttempt": 120,"ExtraTime": 60.
Title string (100) Schedule title (will be generated if not set)
ScheduleExternalId string (64)
HierarchyExternalId string (64) Hierarchy external id for schedule (if not set, Root hierarchy will be set for schedule). Corresponds to the organisation ID of a hierarchy in Cirrus. Text string - needs to be unique
PIN string (64) Use this field to set PIN for candidates
UseProctorIo boolean Defines if exam should be integrated with Proctorio
If not provided, value from assessment options will be used
ProctorioTemplateExternalId String(64) Alphanumeric. Defines which proctorio template will be used for this exam
If not provided. Default template will be used from global settings > Proctorio
Owner string (64) Schedule owner UserName. This field overrides Schedule owner from External API settings of Cirrus app. (Owner must be set in settings or in this field)

Sample Request URL

https://api.cirrusplatform.com/api/v1/integrations/external/schedule

Sample Request

{
     "Title": "Test",
     "AssessmentExternalId": "EXT1",
     "ScheduleExternalId": "EXT_sch_1",
     "StartDateTime": "2021-05-21T10:00:00",
     "EndDateTime": "2021-05-25T20:00:00",
     "PIN": "1234"
}

Sample Response

{
    "Content": "EXT_sch_1",
    "Success": true,
    "Errors": null    
}

Response codes

Code Description
200 Successful operation
403 Not allowed to use external API
400 Possible errors:
Schedule info is not valid
Assessment hasn't been found by external id
Assessment is not published
Hierarchy hasn't been found by external id
Scheduler hasn’t been set in External API settings
Selected scheduler no longer has permission to create, update and delete schedules
Hierarchy hasn't been found by external id {ExternalId} or is archived
500 Internal server error