{"openapi":"3.0.0","servers":[{"url":"https://api.iqualify.com/v1"}],"info":{"contact":{"x-twitter":"hello_iqualify"},"description":"The iQualify API offers management responses for building\nlearning experiences using your iQualify instance data.\n\nOnce you’ve registered with iQualify, you can request an API access token by\nnavigating to the API access section of the \"Account Settings\" area.\n\nFind out how to [Request your API access token](https://www.iqualify.com/help/connecting-iqualify-to-other-systems/api/how-to-access-and-manage-your-api-token)\non our Knowledge base.\n\nAll endpoints are only accessible via https and are located at\napi.iqualify.com. For instance: you can find your current offerings by\naccessing the following URL:\n\n    https://api.iqualify.com/v1/offerings/current\n\n","title":"iQualify Management API","version":"v1","x-apisguru-categories":["education"],"x-logo":{"url":"https://twitter.com/hello_iqualify/profile_image?size=original"},"x-origin":[{"format":"openapi","url":"https://api.iqualify.com/v1/management.json","version":"3.0"}],"x-providerName":"iqualify.com"},"security":[{"Authorization":[]}],"tags":[],"paths":{"/":{"get":{"description":"Responds with all supported endpoints URLs for v2 version.","responses":{"200":{"content":{"application/json":{"schema":{"type":"object"}}},"description":"Supported endpoints"}},"summary":"List supported endpoints URLs","tags":["API info"]}},"/course-mappings":{"get":{"description":"Returns all course mappings for course offerings.","responses":{"200":{"content":{"application/json":{"schema":{"additionalProperties":{"type":"string"},"title":"course mappings","type":"object"}}},"description":"Course Mappings"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"}},"summary":"Find course mappings","tags":["Course mappings"]}},"/course-mappings/externalcourse/{externalCourseId}":{"get":{"description":"Responds with course mapping details by externalCourseId.","parameters":[{"$ref":"#/components/parameters/externalCourseId"}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"type":"string"},"type":"array"}}},"description":"Course Mapping"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Find course mappings by externalCourseId","tags":["Course mappings"]}},"/course-mappings/{offeringId}":{"get":{"description":"Responds with course mapping details by offeringId.","parameters":[{"$ref":"#/components/parameters/offeringId"}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"type":"string"},"type":"array"}}},"description":"Course Mapping"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Find course mappings by offeringId","tags":["Course mappings"]}},"/course-mappings/{offeringId}/{externalCourseId}":{"delete":{"description":"Removes the course mapping between the offering and the externalCourseId.","parameters":[{"$ref":"#/components/parameters/offeringId"},{"$ref":"#/components/parameters/externalCourseId"}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"type":"string"},"type":"array"}}},"description":"Course Mapping"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Remove course mapping","tags":["Course mappings"]},"put":{"description":"Creates a mapping between the offering and the externalCourseId.","parameters":[{"$ref":"#/components/parameters/offeringId"},{"$ref":"#/components/parameters/externalCourseId"}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"type":"string"},"type":"array"}}},"description":"Course Mapping"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Add course mapping","tags":["Course mappings"]}},"/courses":{"get":{"description":"Responds with all courses (draft and published.)","responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/CourseResponse"},"title":"Courses","type":"array"}}},"description":"All courses (draft and published) in the organisation."},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"}},"summary":"Find courses","tags":["Courses"]}},"/courses/{contentId}":{"get":{"description":"Responds with a course matching the contentId.","parameters":[{"description":"The content Id","in":"path","name":"contentId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CourseMetaResponse"}}},"description":"Course detail"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Find course by contentId","tags":["Courses"]}},"/courses/{contentId}/activations":{"get":{"description":"Responds with all activations for the contentId provided.","parameters":[{"description":"The content Id","in":"path","name":"contentId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ActivationResponse"}}},"description":"Activation list."},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Find activations for a contentId","tags":["Courses"]}},"/courses/{contentId}/metadata/category":{"put":{"description":"Add or update course category in the metadata of a course.","parameters":[{"description":"The content Id","in":"path","name":"contentId","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"category":{"type":"string"}},"type":"object"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CourseMetaResponse"}}},"description":"Course detail"},"400":{"content":{"application/json":{"examples":{"SchemaAdditionalPropertiesError":{"$ref":"#/components/examples/SchemaAdditionalPropertiesError"},"SchemaRequiredError":{"$ref":"#/components/examples/SchemaRequiredError"},"SchemaTypeError":{"$ref":"#/components/examples/SchemaTypeError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Update course category","tags":["Course metadata"]}},"/courses/{contentId}/metadata/level":{"put":{"description":"Add or update the course level in the metadata of a course.","parameters":[{"description":"The content Id","in":"path","name":"contentId","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"level":{"type":"string"}},"type":"object"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CourseMetaResponse"}}},"description":"Course detail"},"400":{"content":{"application/json":{"examples":{"SchemaAdditionalPropertiesError":{"$ref":"#/components/examples/SchemaAdditionalPropertiesError"},"SchemaRequiredError":{"$ref":"#/components/examples/SchemaRequiredError"},"SchemaTypeError":{"$ref":"#/components/examples/SchemaTypeError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Update course level","tags":["Course metadata"]}},"/courses/{contentId}/metadata/tags":{"put":{"description":"Add or update course tags in the metadata of a course.","parameters":[{"description":"The content Id","in":"path","name":"contentId","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"tags":{"items":{"type":"string"},"type":"array"}},"type":"object"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CourseMetaResponse"}}},"description":"Course detail"},"400":{"content":{"application/json":{"examples":{"SchemaAdditionalPropertiesError":{"$ref":"#/components/examples/SchemaAdditionalPropertiesError"},"SchemaRequiredError":{"$ref":"#/components/examples/SchemaRequiredError"},"SchemaTypeError":{"$ref":"#/components/examples/SchemaTypeError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Update course tags","tags":["Course metadata"]}},"/courses/{contentId}/metadata/topic":{"put":{"description":"Add or update the course topic in the metadata of a course.","parameters":[{"description":"The content Id","in":"path","name":"contentId","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"topic":{"type":"string"}},"type":"object"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CourseMetaResponse"}}},"description":"Course detail"},"400":{"content":{"application/json":{"examples":{"SchemaAdditionalPropertiesError":{"$ref":"#/components/examples/SchemaAdditionalPropertiesError"},"SchemaRequiredError":{"$ref":"#/components/examples/SchemaRequiredError"},"SchemaTypeError":{"$ref":"#/components/examples/SchemaTypeError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Update course topic","tags":["Course metadata"]}},"/courses/{contentId}/permissions":{"get":{"description":"Responds with users who have access to a specific course by contentId.","parameters":[{"description":"The content Id","in":"path","name":"contentId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserPermission"}}},"description":"List of users who have access to the content ID provided."},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Find users who have access to the contentId provided","tags":["Courses"]}},"/courses/{rootContentId}/permissions/{userEmail}":{"post":{"description":"Provide a user with access to a specific course by rootContentId.","parameters":[{"description":"The content Id","in":"path","name":"rootContentId","required":true,"schema":{"type":"string"}},{"description":"The user email","in":"path","name":"userEmail","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"properties":{"isBuilder":{"default":true,"type":"boolean"},"isReviewer":{"default":false,"type":"boolean"}},"title":"permission to be granted to the user.","type":"object"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"properties":{"contentId":{"type":"string"}},"type":"object"}}},"description":"user successfully added to the course with the specified permission."},"400":{"content":{"application/json":{"examples":{"MultipleObjectsError":{"$ref":"#/components/examples/MultipleObjectsError"},"ObjectIsNotError":{"$ref":"#/components/examples/ObjectIsNotError"},"SchemaRequiredError":{"$ref":"#/components/examples/SchemaRequiredError"},"SchemaTypeError":{"$ref":"#/components/examples/SchemaTypeError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Update course access","tags":["Courses"]}},"/offerings":{"get":{"description":"Responds with all offerings for your organisation.","responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/OfferingMetadataResponse"},"title":"Offerings","type":"array"}}},"description":"all offerings (current, past and future ones)"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"}},"summary":"Find current, past and future offerings","tags":["Offerings"]},"post":{"description":"Creates a new offering.","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OfferingRequired"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OfferingMetadataResponse"}}},"description":"offering created"},"400":{"content":{"application/json":{"examples":{"IncompatibleParametersError":{"$ref":"#/components/examples/IncompatibleParametersError"},"InvalidContentError":{"$ref":"#/components/examples/InvalidContentError"},"MissingInfoError":{"$ref":"#/components/examples/MissingInfoError"},"OfferingIncompatibleDatesError":{"$ref":"#/components/examples/OfferingIncompatibleDatesError"},"SchemaFormatError":{"$ref":"#/components/examples/SchemaFormatError"},"SchemaRequiredError":{"$ref":"#/components/examples/SchemaRequiredError"},"SchemaTypeError":{"$ref":"#/components/examples/SchemaTypeError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Create offering","tags":["Offerings"]}},"/offerings/current":{"get":{"description":"Responds with active offerings for your organisation.","responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/OfferingMetadataResponse"},"title":"Offerings","type":"array"}}},"description":"current offerings"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"}},"summary":"Find active offerings","tags":["Offerings"]}},"/offerings/future":{"get":{"description":"Responds with scheduled offerings for your organisation. Scheduled offerings have a start date after today's date (inclusive).","responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/OfferingMetadataResponse"},"title":"Offerings","type":"array"}}},"description":"future offerings"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"}},"summary":"Find scheduled offerings","tags":["Offerings"]}},"/offerings/info/{textPattern}":{"get":{"description":"Find offerings where info field matches the specified text pattern.","parameters":[{"description":"Text pattern to search for (minimum of 3 characters length).","in":"path","name":"textPattern","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/PortfolioActivations"},"title":"Offerings","type":"array"}}},"description":"Offerings"},"400":{"content":{"application/json":{"examples":{"TextPatternError":{"$ref":"#/components/examples/TextPatternError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Find offerings where info field matches the specified textPattern","tags":["Offerings"]}},"/offerings/past":{"get":{"description":"Responds with past offerings for your organisation.","responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/OfferingMetadataResponse"},"title":"Offerings","type":"array"}}},"description":"past offerings"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"}},"summary":"Find past offerings","tags":["Offerings"]}},"/offerings/summary":{"get":{"description":"Responds with a summary of all offerings for your organisation.","parameters":[{"description":"Returns only the first n results.","in":"query","name":"$top","schema":{"default":"50","type":"string"}},{"description":"Sorts the results.","in":"query","name":"$orderby","schema":{"type":"string"}},{"allowReserved":true,"description":"Filters the results, based on a Boolean condition.","in":"query","name":"$filter","schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/PortfolioActivations"},"title":"Offerings","type":"array"}}},"description":"all offerings."},"400":{"content":{"application/json":{"examples":{"ApiValidationError":{"$ref":"#/components/examples/ApiValidationError"},"SchemaQueryError":{"$ref":"#/components/examples/SchemaQueryError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"}},"summary":"Offerings summary","tags":["Offerings"]}},"/offerings/{offeringId}":{"get":{"description":"Responds with an offering matching the offeringId.","parameters":[{"$ref":"#/components/parameters/offeringId"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OfferingMetadataResponse"}}},"description":"offering"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Find offering by ID","tags":["Offerings"]},"patch":{"description":"Updates the offering.","parameters":[{"$ref":"#/components/parameters/offeringId"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Offering"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OfferingMetadataResponse"}}},"description":"offering updated"},"400":{"content":{"application/json":{"examples":{"IncompatibleParametersError":{"$ref":"#/components/examples/IncompatibleParametersError"},"MissingInfoError":{"$ref":"#/components/examples/MissingInfoError"},"ObjectExistsError":{"$ref":"#/components/examples/ObjectExistsError"},"OfferingIncompatibleDatesError":{"$ref":"#/components/examples/OfferingIncompatibleDatesError"},"SchemaFormatError":{"$ref":"#/components/examples/SchemaFormatError"},"SchemaTypeError":{"$ref":"#/components/examples/SchemaTypeError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Update offering","tags":["Offerings"]}},"/offerings/{offeringId}/activities/openresponse":{"get":{"description":"Responds with the activities in a specific offering.","parameters":[{"$ref":"#/components/parameters/offeringId"}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/OfferingActivitiesResponse"},"title":"Activities","type":"array"}}},"description":"offering's learners"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Find offering's activities","tags":["Assessment management"]}},"/offerings/{offeringId}/analytics/activities/responses":{"get":{"description":"Responds with all learner activity attempts for open response activities in an offering matching the offeringId.","parameters":[{"$ref":"#/components/parameters/offeringId"}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/ActivityAttemptOpenResponse"},"title":"OfferingActivityAttemptOpenResponses","type":"array"}}},"description":"Offering activity attempt open responses"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Find open response activity attempts","tags":["Assessment data"]}},"/offerings/{offeringId}/analytics/channels/{channelId}/comments":{"get":{"description":"Responds with a list of comments made in any posts in a specified channel, within an offering.","parameters":[{"$ref":"#/components/parameters/offeringId"},{"$ref":"#/components/parameters/channelId"}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/Comment"},"title":"Comments","type":"array"}}},"description":"Successful response"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Find comments","tags":["Channels"]}},"/offerings/{offeringId}/analytics/channels/{channelId}/posts":{"get":{"description":"Responds with a list of posts made in a specified channel, within an offering.","parameters":[{"$ref":"#/components/parameters/offeringId"},{"$ref":"#/components/parameters/channelId"}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/httpPost"},"title":"Posts","type":"array"}}},"description":"Successful response"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Find posts","tags":["Channels"]}},"/offerings/{offeringId}/analytics/channels/{channelId}/replies":{"get":{"description":"Responds with a list of replies to comments in any posts in a specified channel, within an offering.","parameters":[{"$ref":"#/components/parameters/offeringId"},{"$ref":"#/components/parameters/channelId"}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/Comment"},"title":"Comments","type":"array"}}},"description":"Successful response"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Find replies","tags":["Channels"]}},"/offerings/{offeringId}/analytics/learners-progress":{"get":{"description":"Responds with all learner progress in the offering.","parameters":[{"$ref":"#/components/parameters/offeringId"}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/LearnerProgressResponse"},"title":"LearnersProgress","type":"array"}}},"description":"Learners progress"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Find learner progress in a specified offering","tags":["Learner activity"]}},"/offerings/{offeringId}/analytics/marks/assignments":{"get":{"description":"Responds with all learner assessment marks in an offering matching the offeringId.","parameters":[{"$ref":"#/components/parameters/offeringId"}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/AssignmentMarkResponse"},"title":"AssignmentsMarks","type":"array"}}},"description":"Assignments marks"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Find assessment marks","tags":["Assessment data"]}},"/offerings/{offeringId}/analytics/marks/quizzes":{"get":{"description":"Responds with all learner quiz marks in an offering matching the offeringId.","parameters":[{"$ref":"#/components/parameters/offeringId"}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/QuizMarkResponse"},"title":"QuizzesMarks","type":"array"}}},"description":"Quizzes marks"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Find quiz marks","tags":["Assessment data"]}},"/offerings/{offeringId}/analytics/pulses":{"get":{"description":"Responds with the IDs of all pulses that learners have responded to in a specified offering.","parameters":[{"$ref":"#/components/parameters/offeringId"}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"type":"string"},"type":"array"}}},"description":"Pulses' ids"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Find all pulse IDs in the specified offering","tags":["Pulses"]}},"/offerings/{offeringId}/analytics/pulses/responses":{"get":{"description":"Responds with pulse's responses in an offering matching the offeringId.","parameters":[{"$ref":"#/components/parameters/offeringId"},{"description":"Filter pulse responses by type.","in":"query","name":"pulseType","schema":{"enum":["submit_text","MCQ","spatial_triangular","spatial_planar","spatial_linear"],"type":"string"}},{"allowReserved":true,"description":"Filter pulse responses by responseTime. Lower then (`lt`), lower then or equal (`lte`), greater then (`gt`) and greater then or equal (`gte`) operators are available. Example of filtering by time range __gte__2017-03-14T07:30:00Z__","in":"query","name":"responseTime","schema":{"oneOf":[{"minLength":1,"type":"string"},{"items":{"type":"string"},"type":"array"}]}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/PulseResponse"},"title":"Pulses","type":"array"}}},"description":"All pulses' responses"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Find pulses by offeringId","tags":["Pulses"]}},"/offerings/{offeringId}/analytics/pulses/{pulseId}/responses":{"get":{"description":"Responds with pulse's responses, matching the pulseId, in an offering matching the offeringId.","parameters":[{"$ref":"#/components/parameters/offeringId"},{"description":"pulse's base id","in":"path","name":"pulseId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/PulseResponse"},"title":"Pulses","type":"array"}}},"description":"Pulse data matching pulseId"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Find pulses by offeringId and pulseId","tags":["Pulses"]}},"/offerings/{offeringId}/analytics/social-notes":{"get":{"description":"Responds with all shared social notes in a specified offering.","parameters":[{"$ref":"#/components/parameters/offeringId"}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/SocialNotesResponse"},"title":"OfferingSocialNotes","type":"array"}}},"description":"Offering social notes"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Find shared social notes in an offering","tags":["Learner activity"]}},"/offerings/{offeringId}/analytics/submissions/assignments":{"get":{"description":"Responds with all learner assessment submissions and marks, if any, in an offering matching the offeringId.","parameters":[{"$ref":"#/components/parameters/offeringId"}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/AssignmentMarkResponse"},"title":"AssignmentsSubmissions","type":"array"}}},"description":"Assignments submissions"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Find submissions to assessments, including marks if any","tags":["Assessment data"]}},"/offerings/{offeringId}/analytics/submissions/open-response/{assessmentId}":{"get":{"description":"Responds with all learner assessment submissions and marks, if any, in a specified open response assessment.","parameters":[{"$ref":"#/components/parameters/offeringId"},{"$ref":"#/components/parameters/assessmentId"}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/SubmissionMarkResponse"},"title":"SubmissionMarkResponse","type":"array"}}},"description":"Responds with assignment submissions for the specified assignment."},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Find submissions to a specified open response assessment, including marks if any","tags":["Assessment data"]}},"/offerings/{offeringId}/analytics/submissions/{userEmail}/assignments/{assessmentId}":{"get":{"description":"Responds with the learner's assessment submission and any marks for the submission.","parameters":[{"$ref":"#/components/parameters/offeringId"},{"$ref":"#/components/parameters/userEmail"},{"$ref":"#/components/parameters/assessmentId"}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/SubmissionMarkResponse"},"title":"SubmissionMarkResponse","type":"array"}}},"description":"Responds with the learner's assessment submission and any marks for the submission."},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Find a learner's submission to a specified assessment, including marks if any","tags":["Assessment data"]}},"/offerings/{offeringId}/analytics/unit-reactions":{"get":{"description":"Responds with user reactions to units in a specified offering.","parameters":[{"$ref":"#/components/parameters/offeringId"}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/UnitReactionsAnalyticsResponse"},"title":"UnitReactiosAnalytics","type":"array"}}},"description":"Unit Reactions"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Find unit reactions","tags":["Learner activity"]}},"/offerings/{offeringId}/assessments":{"get":{"description":"Responds with all assessments in an offering matching the offeringId.","parameters":[{"$ref":"#/components/parameters/offeringId"}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/AssessmentResponse"},"title":"Assessments","type":"array"}}},"description":"offering's assessments"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Find offering's assessments","tags":["Assessment management"]}},"/offerings/{offeringId}/assessments/{assessmentId}":{"patch":{"description":"Updates the assessment details for a specified assessment in an offering.","parameters":[{"$ref":"#/components/parameters/offeringId"},{"description":"assessment's id","in":"path","name":"assessmentId","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Assessment"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AssessmentResponse"}}},"description":"assessment successfully updated"},"400":{"content":{"application/json":{"examples":{"SchemaFormatError":{"$ref":"#/components/examples/SchemaFormatError"},"SchemaMinLengthError":{"$ref":"#/components/examples/SchemaMinLengthError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Update assessment details","tags":["Assessment management"]}},"/offerings/{offeringId}/assessments/{assessmentId}/documents":{},"/offerings/{offeringId}/assessments/{assessmentId}/documents/{documentId}":{"delete":{"description":"Removes the assessment document file for a specified assessment in an offering.","parameters":[{"$ref":"#/components/parameters/offeringId"},{"description":"assessment's id","in":"path","name":"assessmentId","required":true,"schema":{"type":"string"}},{"description":"documents's id","in":"path","name":"documentId","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"assessment document successfully removed"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Remove assessment document","tags":["Assessment management"]}},"/offerings/{offeringId}/assessments/{assessmentId}/{userEmail}":{"patch":{"description":"Updates the due dates for a learner's quiz attempt specified by the assessmentId.","parameters":[{"$ref":"#/components/parameters/offeringId"},{"description":"assessment's id","in":"path","name":"assessmentId","required":true,"schema":{"type":"string"}},{"description":"user's email","in":"path","name":"userEmail","required":true,"schema":{"format":"email","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"dueDate":{"format":"date-time","type":"string"}},"type":"object"}}},"required":true},"responses":{"204":{"description":"Successfully updated assessment due date."},"400":{"content":{"application/json":{"examples":{"InvalidParameterError":{"$ref":"#/components/examples/InvalidParameterError"},"ObjectInvalidPropertyError":{"$ref":"#/components/examples/ObjectInvalidPropertyError"},"SchemaFormatError":{"$ref":"#/components/examples/SchemaFormatError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Update the due dates for a learner's quiz attempt","tags":["Assessment management"]}},"/offerings/{offeringId}/badges":{"get":{"description":"Responds with the badge for an offering matching the offeringId.","parameters":[{"$ref":"#/components/parameters/offeringId"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Badge"}}},"description":"badges"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Find offering badges","tags":["Badges"]}},"/offerings/{offeringId}/channels":{"get":{"description":"Responds with a list of channels in an offering.","parameters":[{"$ref":"#/components/parameters/offeringId"}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/ChannelResponse"},"title":"List of channels in a offering","type":"array"}}},"description":"Succesful response"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Find channels","tags":["Channels"]},"post":{"description":"Adds new channel to the specified offering.","parameters":[{"$ref":"#/components/parameters/offeringId"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelRequired"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelResponse"}}},"description":"channel successfully added"},"400":{"content":{"application/json":{"examples":{"SchemaMinLengthError":{"$ref":"#/components/examples/SchemaMinLengthError"},"SchemaRequiredError":{"$ref":"#/components/examples/SchemaRequiredError"},"SchemaTypeError":{"$ref":"#/components/examples/SchemaTypeError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Add channel","tags":["Channels"]}},"/offerings/{offeringId}/channels/{channelId}":{"patch":{"description":"Updates a channel in an offering.","parameters":[{"$ref":"#/components/parameters/offeringId"},{"$ref":"#/components/parameters/channelId"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Channel"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelResponse"}}},"description":"channel successfully updated"},"400":{"content":{"application/json":{"examples":{"SchemaMinLengthError":{"$ref":"#/components/examples/SchemaMinLengthError"},"SchemaRequiredError":{"$ref":"#/components/examples/SchemaRequiredError"},"SchemaTypeError":{"$ref":"#/components/examples/SchemaTypeError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Update channel","tags":["Channels"]}},"/offerings/{offeringId}/channels/{channelId}/learners":{"delete":{"description":"Removes a learner from the specified group channel.","parameters":[{"$ref":"#/components/parameters/offeringId"},{"$ref":"#/components/parameters/channelId"}],"requestBody":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"email":{"type":"string"}},"type":"object"}}},"required":true},"responses":{"204":{"description":"Learner successfully removed from the channel."},"400":{"content":{"application/json":{"examples":{"InvalidGroupChannelError":{"$ref":"#/components/examples/InvalidGroupChannelError"},"UserNotInOfferingError":{"$ref":"#/components/examples/UserNotInOfferingError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Remove learners from a group channel","tags":["Channels"]},"get":{"description":"Finds all learners in a specified group channel.","parameters":[{"$ref":"#/components/parameters/offeringId"},{"$ref":"#/components/parameters/channelId"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChannelResponse"}}},"description":"channel data"},"400":{"content":{"application/json":{"examples":{"InvalidGroupChannelError":{"$ref":"#/components/examples/InvalidGroupChannelError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Find learners in a group channel","tags":["Channels"]},"post":{"description":"Adds a learner to a specified group channel.","parameters":[{"$ref":"#/components/parameters/offeringId"},{"$ref":"#/components/parameters/channelId"}],"requestBody":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"email":{"type":"string"}},"type":"object"}}},"required":true},"responses":{"204":{"description":"Learner successfully added to the channel."},"400":{"content":{"application/json":{"examples":{"InvalidGroupChannelError":{"$ref":"#/components/examples/InvalidGroupChannelError"},"ObjectExistsError":{"$ref":"#/components/examples/ObjectExistsError"},"SchemaMinLengthError":{"$ref":"#/components/examples/SchemaMinLengthError"},"SchemaRequiredError":{"$ref":"#/components/examples/SchemaRequiredError"},"SchemaTypeError":{"$ref":"#/components/examples/SchemaTypeError"},"UserNotInOfferingError":{"$ref":"#/components/examples/UserNotInOfferingError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Add learners to a group channel","tags":["Channels"]}},"/offerings/{offeringId}/cover-image":{},"/offerings/{offeringId}/groups":{"get":{"description":"Responds with a list of assessment groups in an offering.","parameters":[{"$ref":"#/components/parameters/offeringId"}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/AssessmentGroupResponse"},"title":"List of assessment groups in an offering","type":"array"}}},"description":"Succesful response"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Find assessment groups","tags":["Assessment groups"]},"post":{"description":"Creates a new assessment group in an offering.","parameters":[{"$ref":"#/components/parameters/offeringId"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AssessmentGroupRequired"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AssessmentGroupResponse"}}},"description":"assessment group successfully added"},"400":{"content":{"application/json":{"examples":{"SchemaMinLengthError":{"$ref":"#/components/examples/SchemaMinLengthError"},"SchemaRequiredError":{"$ref":"#/components/examples/SchemaRequiredError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Add an assessment group","tags":["Assessment groups"]}},"/offerings/{offeringId}/groups/{groupId}/learners":{"get":{"description":"Responds with a list of learners in a specified assessment group.","parameters":[{"$ref":"#/components/parameters/offeringId"},{"$ref":"#/components/parameters/groupId"}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/UserResponse"},"title":"List of learners","type":"array"}}},"description":"Succesful response"},"400":{"content":{"application/json":{"examples":{"SchemaMinLengthError":{"$ref":"#/components/examples/SchemaMinLengthError"},"SchemaRequiredError":{"$ref":"#/components/examples/SchemaRequiredError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Find learners in an assessment group","tags":["Assessment groups"]},"post":{"description":"Adds a learner into the specified assessment group.","parameters":[{"$ref":"#/components/parameters/offeringId"},{"$ref":"#/components/parameters/groupId"}],"requestBody":{"content":{"application/json":{"schema":{"properties":{"email":{"type":"string"}},"type":"object"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserResponse"}}},"description":"Succesful response"},"400":{"content":{"application/json":{"examples":{"ApiValidationError":{"$ref":"#/components/examples/ApiValidationError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Add a learner to an assessment group","tags":["Assessment groups"]}},"/offerings/{offeringId}/groups/{groupId}/learners/{userEmail}":{"delete":{"description":"Removes a learner from the specified assessment group.","parameters":[{"$ref":"#/components/parameters/offeringId"},{"$ref":"#/components/parameters/groupId"},{"$ref":"#/components/parameters/userEmail"}],"responses":{"204":{"description":"user successfully removed from the assessment group"},"400":{"content":{"application/json":{"examples":{"ApiValidationError":{"$ref":"#/components/examples/ApiValidationError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Remove a learner from an assessment group","tags":["Assessment groups"]}},"/offerings/{offeringId}/learners/pending-submission":{"get":{"description":"Responds with learners who have one or more assessments due x days before the due date, with each assessment that is due, where x = the number of days specified in the request. The default is 3 days.","parameters":[{"$ref":"#/components/parameters/offeringId"},{"description":"days to assessment due date. Default is 3 days","in":"query","name":"days","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/AssessmentPendingSubmission"},"title":"Assessments","type":"array"}}},"description":"offering's learners"},"400":{"content":{"application/json":{"examples":{"SchemaTypeError":{"$ref":"#/components/examples/SchemaTypeError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Find learners with assessments pending x days before due date within the specified offeringId","tags":["Assessment management"]}},"/offerings/{offeringId}/metadata/category":{"put":{"description":"Updates the offering category metadata.","parameters":[{"$ref":"#/components/parameters/offeringId"}],"requestBody":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"category":{"type":"string"}},"type":"object"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OfferingMetadataResponse"}}},"description":"offering updated"},"400":{"content":{"application/json":{"examples":{"SchemaTypeError":{"$ref":"#/components/examples/SchemaTypeError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Update offering category metadata","tags":["Offering metadata"]}},"/offerings/{offeringId}/metadata/level":{"put":{"description":"Updates the offering level metadata.","parameters":[{"$ref":"#/components/parameters/offeringId"}],"requestBody":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"level":{"type":"string"}},"type":"object"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OfferingMetadataResponse"}}},"description":"offering updated"},"400":{"content":{"application/json":{"examples":{"SchemaTypeError":{"$ref":"#/components/examples/SchemaTypeError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Update offering level metadata","tags":["Offering metadata"]}},"/offerings/{offeringId}/metadata/tags":{"put":{"description":"Updates the offering tags metadata.","parameters":[{"$ref":"#/components/parameters/offeringId"}],"requestBody":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"tags":{"items":{"type":"string"},"type":"array"}},"type":"object"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OfferingMetadataResponse"}}},"description":"offering updated"},"400":{"content":{"application/json":{"examples":{"SchemaTypeError":{"$ref":"#/components/examples/SchemaTypeError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Update offering tags metadata","tags":["Offering metadata"]}},"/offerings/{offeringId}/metadata/topic":{"put":{"description":"Updates the offering topic metadata.","parameters":[{"$ref":"#/components/parameters/offeringId"}],"requestBody":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"topic":{"type":"string"}},"type":"object"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OfferingMetadataResponse"}}},"description":"offering updated"},"400":{"content":{"application/json":{"examples":{"SchemaTypeError":{"$ref":"#/components/examples/SchemaTypeError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Update offering topic metadata","tags":["Offering metadata"]}},"/offerings/{offeringId}/study-plan":{},"/offerings/{offeringId}/users":{"get":{"description":"Responds with a list of users in the offering (facilitators, learners and markers.).","parameters":[{"$ref":"#/components/parameters/offeringId"},{"description":"If true, facilitators are included in the results.","in":"query","name":"facilitators","schema":{"default":"true","enum":["true","false"],"type":"string"}},{"description":"If true, learners are included in the results.","in":"query","name":"learners","schema":{"default":"true","enum":["true","false"],"type":"string"}},{"description":"If true, markers are included in the results.","in":"query","name":"markers","schema":{"default":"true","enum":["true","false"],"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/OfferingUserResponse"},"title":"offering's users","type":"array"}}},"description":"offering's users"},"400":{"content":{"application/json":{"examples":{"SchemaAllowedValuesError":{"$ref":"#/components/examples/SchemaAllowedValuesError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Find offering's users","tags":["Offering learners"]},"post":{"description":"Adds one or more users to the offering.","parameters":[{"$ref":"#/components/parameters/offeringId"}],"requestBody":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/OfferingUser"},"title":"users to be added to the offering.","type":"array"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/OfferingUserAddResponse"},"type":"array"}}},"description":"user successfully added to the offering"},"207":{"content":{"application/json":{"schema":{"items":{"oneOf":[{"$ref":"#/components/schemas/OfferingUserAddResponse"},{"$ref":"#/components/schemas/Error"}]},"type":"array"}}},"description":"Partially successful response"},"400":{"content":{"application/json":{"examples":{"ApiValidationError":{"$ref":"#/components/examples/ApiValidationError"},"ObjectExistsError":{"$ref":"#/components/examples/ObjectExistsError"},"SchemaEmailError":{"$ref":"#/components/examples/SchemaEmailError"},"SchemaRequiredError":{"$ref":"#/components/examples/SchemaRequiredError"},"SchemaTypeError":{"$ref":"#/components/examples/SchemaTypeError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Adds user to the offering","tags":["Offering learners"]}},"/offerings/{offeringId}/users/{markerEmail}/marks":{"delete":{"description":"Removes an array of learners from coach's marking list.","parameters":[{"$ref":"#/components/parameters/offeringId"},{"description":"marker's email","in":"path","name":"markerEmail","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"items":{"type":"string"},"type":"array"}}},"description":"array of learners e-mails","required":true},"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/OfferingUser"},"title":"learners marked by the marker","type":"array"}}},"description":"learners marked by the marker"},"400":{"content":{"application/json":{"examples":{"ObjectIsNotError":{"$ref":"#/components/examples/ObjectIsNotError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Remove learners from coach's marking list","tags":["Offering learners"]},"get":{"description":"Responds with all learners marked by the specified coach.","parameters":[{"$ref":"#/components/parameters/offeringId"},{"description":"marker's email","in":"path","name":"markerEmail","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/OfferingUser"},"title":"learners marked by the marker","type":"array"}}},"description":"learners marked by the marker"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Find Learners marked by a coach","tags":["Offering learners"]},"post":{"description":"Adds an array of learners to be marked by the specified coach.","parameters":[{"$ref":"#/components/parameters/offeringId"},{"description":"marker's email","in":"path","name":"markerEmail","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"items":{"type":"string"},"type":"array"}}},"description":"array of learners e-mails","required":true},"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/OfferingUser"},"title":"learners marked by the marker","type":"array"}}},"description":"learners marked by the marker"},"400":{"content":{"application/json":{"examples":{"ObjectIsNotError":{"$ref":"#/components/examples/ObjectIsNotError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Add learners to be marked by a coach","tags":["Offering learners"]}},"/offerings/{offeringId}/users/{userEmail}":{"delete":{"description":"Removes a user from the offering.","parameters":[{"$ref":"#/components/parameters/offeringId"},{"$ref":"#/components/parameters/userEmail"}],"responses":{"204":{"description":"user successfully removed from the offering"},"400":{"content":{"application/json":{"examples":{"ApiValidationError":{"$ref":"#/components/examples/ApiValidationError"},"SchemaEmailError":{"$ref":"#/components/examples/SchemaEmailError"},"SchemaTypeError":{"$ref":"#/components/examples/SchemaTypeError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Removes user from the offering","tags":["Offering learners"]}},"/offerings/{offeringId}/users/{userEmail}/assessments/{assessmentId}":{"delete":{"description":"Resets the user's submitted assessment to a draft state.","parameters":[{"$ref":"#/components/parameters/offeringId"},{"$ref":"#/components/parameters/userEmail"},{"$ref":"#/components/parameters/assessmentId"}],"responses":{"204":{"description":"User's assessment successfully moved to draft state."},"400":{"content":{"application/json":{"examples":{"AssessmentNotSubmittedError":{"$ref":"#/components/examples/AssessmentNotSubmittedError"},"ObjectInvalidPropertyError":{"$ref":"#/components/examples/ObjectInvalidPropertyError"},"SchemaEmailError":{"$ref":"#/components/examples/SchemaEmailError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Reset user's assessment to draft state","tags":["Assessment management"]}},"/offerings/{offeringId}/users/{userEmail}/badges/award":{"post":{"description":"Awards a badge to a user in the offering.","parameters":[{"$ref":"#/components/parameters/offeringId"},{"$ref":"#/components/parameters/userEmail"}],"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AwardedResponse"}}},"description":"Awarded badge response"},"400":{"content":{"application/json":{"examples":{"MissingInfoError":{"$ref":"#/components/examples/MissingInfoError"},"UserNotInOfferingError":{"$ref":"#/components/examples/UserNotInOfferingError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Award badge","tags":["Badges"]}},"/offerings/{offeringId}/users/{userEmail}/submissions/open-response":{"get":{"description":"Responds with open response assessment submissions by a learner in an offering.","parameters":[{"$ref":"#/components/parameters/offeringId"},{"$ref":"#/components/parameters/userEmail"}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/Assignments"},"title":"user's assignments","type":"array"}}},"description":"user open response submission and mark details"},"400":{"content":{"application/json":{"examples":{"SchemaEmailError":{"$ref":"#/components/examples/SchemaEmailError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Find learner's open response assessment submissions","tags":["Assessment management"]}},"/org":{"get":{"description":"Returns the current organisation info.","responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OrgResponse"}}},"description":"organisation summary data"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Gets the current organisation","tags":["Organisation"]}},"/users":{"post":{"description":"Creates a new user.","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/User"}}},"description":"user","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserResponse"}}},"description":"user added"},"400":{"content":{"application/json":{"examples":{"ObjectExistsError":{"$ref":"#/components/examples/ObjectExistsError"},"SchemaEmailError":{"$ref":"#/components/examples/SchemaEmailError"},"SchemaFormatError":{"$ref":"#/components/examples/SchemaFormatError"},"SchemaMinLengthError":{"$ref":"#/components/examples/SchemaMinLengthError"},"SchemaTypeError":{"$ref":"#/components/examples/SchemaTypeError"},"UserSuspendedError":{"$ref":"#/components/examples/UserSuspendedError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Add new user","tags":["Users in iQualify"]}},"/users/all/progress":{"get":{"description":"Responds with all learners' progress in all offerings.","parameters":[{"description":"Returns only the first n results.","in":"query","name":"$top","schema":{"default":"50","type":"string"}},{"description":"Sorts the results.","in":"query","name":"$orderby","schema":{"type":"string"}},{"allowReserved":true,"description":"Filters the results, based on a Boolean condition.","in":"query","name":"$filter","schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"data":{"properties":{"progress":{"items":{"$ref":"#/components/schemas/LearnerResponse"},"title":"Learners","type":"array"}}},"top":{"type":"integer"}}}}},"description":"Learners progress"},"400":{"content":{"application/json":{"examples":{"ApiValidationError":{"$ref":"#/components/examples/ApiValidationError"},"SchemaQueryError":{"$ref":"#/components/examples/SchemaQueryError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"}},"summary":"Find learner progress in all offerings","tags":["Learner activity"]}},"/users/{userEmail}":{"get":{"description":"Responds with a user matching the specified email.","parameters":[{"$ref":"#/components/parameters/userEmail"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserResponse"}}},"description":"user data"},"400":{"content":{"application/json":{"examples":{"SchemaEmailError":{"$ref":"#/components/examples/SchemaEmailError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Find user by email","tags":["Users in iQualify"]},"patch":{"description":"Updates the specified user by email.","parameters":[{"$ref":"#/components/parameters/userEmail"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/User"}}},"required":false},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserResponse"}}},"description":"user updated"},"400":{"content":{"application/json":{"examples":{"ObjectExistsError":{"$ref":"#/components/examples/ObjectExistsError"},"SchemaEmailError":{"$ref":"#/components/examples/SchemaEmailError"},"SchemaFormatError":{"$ref":"#/components/examples/SchemaFormatError"},"SchemaMinLengthError":{"$ref":"#/components/examples/SchemaMinLengthError"},"SchemaTypeError":{"$ref":"#/components/examples/SchemaTypeError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Update user","tags":["Users in iQualify"]}},"/users/{userEmail}/badges":{"get":{"description":"Responds with all badges that the specified user has been awarded.","parameters":[{"$ref":"#/components/parameters/userEmail"}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/UserBadge"},"title":"Badges","type":"array"}}},"description":"user's badges"},"400":{"content":{"application/json":{"examples":{"SchemaEmailError":{"$ref":"#/components/examples/SchemaEmailError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Find user's badges","tags":["Badges"]}},"/users/{userEmail}/invite-email":{"post":{"description":"Re-sends an invitation e-mail to the specified user.","parameters":[{"$ref":"#/components/parameters/userEmail"}],"responses":{"204":{"description":"successfully requested invitation e-mail sending"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Resend invitation email","tags":["Users in iQualify"]}},"/users/{userEmail}/offerings":{"get":{"description":"Responds with all offerings that the user in.","parameters":[{"$ref":"#/components/parameters/userEmail"}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/OfferingMetadataResponse"},"title":"Offerings","type":"array"}}},"description":"user's offerings"},"400":{"content":{"application/json":{"examples":{"SchemaEmailError":{"$ref":"#/components/examples/SchemaEmailError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Find user's offerings","tags":["Users in iQualify"]},"post":{"description":"Adds a user to an array of offerings by offeringId.","parameters":[{"$ref":"#/components/parameters/userEmail"}],"requestBody":{"content":{"application/json":{"schema":{"items":{"type":"string"},"type":"array"}}},"description":"offering ids","required":true},"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/OfferingMetadataResponse"},"title":"Offerings","type":"array"}}},"description":"user's offerings"},"400":{"content":{"application/json":{"examples":{"MissingInfoError":{"$ref":"#/components/examples/MissingInfoError"},"SchemaEmailError":{"$ref":"#/components/examples/SchemaEmailError"},"SchemaTypeError":{"$ref":"#/components/examples/SchemaTypeError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Adds the user to the specified offerings as a learner","tags":["Users in iQualify"]}},"/users/{userEmail}/offerings/{offeringId}/progress":{"get":{"description":"Responds with the learner's progress in a specified offering.","parameters":[{"$ref":"#/components/parameters/userEmail"},{"$ref":"#/components/parameters/offeringId"}],"responses":{"200":{"content":{"application/json":{"schema":{"properties":{"completion":{"type":"string"},"email":{"type":"string"},"firstName":{"type":"string"},"id":{"type":"string"},"lastName":{"type":"string"}},"type":"object"}}},"description":"user's offerings"},"400":{"content":{"application/json":{"examples":{"SchemaEmailError":{"$ref":"#/components/examples/SchemaEmailError"},"UserNotInOfferingError":{"$ref":"#/components/examples/UserNotInOfferingError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Find learner's progress in a specified offering","tags":["Learner activity"]}},"/users/{userEmail}/permissions/{permissionName}":{"post":{"description":"Adds additional permissions to the specified user.","parameters":[{"$ref":"#/components/parameters/userEmail"},{"$ref":"#/components/parameters/permissionName"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserResponse"}}},"description":"permission successfully added to user"},"400":{"content":{"application/json":{"examples":{"MissingInfoError":{"$ref":"#/components/examples/MissingInfoError"},"ObjectAlreadyIsError":{"$ref":"#/components/examples/ObjectAlreadyIsError"},"SchemaAllowedValuesError":{"$ref":"#/components/examples/SchemaAllowedValuesError"},"SchemaEmailError":{"$ref":"#/components/examples/SchemaEmailError"},"SchemaTypeError":{"$ref":"#/components/examples/SchemaTypeError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Add permission to user","tags":["Users in iQualify"]}},"/users/{userEmail}/progress":{"get":{"description":"Responds with the specified learner's progress in all offerings.","parameters":[{"$ref":"#/components/parameters/userEmail"}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LearnerResponse"}}},"description":"Learner Progress"},"400":{"content":{"application/json":{"examples":{"SchemaEmailError":{"$ref":"#/components/examples/SchemaEmailError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Find learner's progress in offerings","tags":["Learner activity"]}},"/users/{userEmail}/suspend":{"put":{"description":"Suspends the specified user's account.","parameters":[{"$ref":"#/components/parameters/userEmail"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SuspendedRequest"}}},"required":true},"responses":{"204":{"description":"User suspended."},"400":{"content":{"application/json":{"examples":{"InvalidParameterError":{"$ref":"#/components/examples/InvalidParameterError"},"ObjectExistsError":{"$ref":"#/components/examples/ObjectExistsError"},"SchemaEmailError":{"$ref":"#/components/examples/SchemaEmailError"},"SchemaFormatError":{"$ref":"#/components/examples/SchemaFormatError"},"SchemaTypeError":{"$ref":"#/components/examples/SchemaTypeError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Suspend user","tags":["Users in iQualify"]}},"/users/{userEmail}/transfer":{"patch":{"description":"Moves the user's access and progress from one offering to another.","parameters":[{"$ref":"#/components/parameters/userEmail"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TransferRequest"}}},"description":"transfer_data","required":true},"responses":{"200":{"description":"Updated user information"},"400":{"content":{"application/json":{"examples":{"ContentDoNotMatchError":{"$ref":"#/components/examples/ContentDoNotMatchError"},"InvalidSourceAndTargetError":{"$ref":"#/components/examples/InvalidSourceAndTargetError"},"SchemaEmailError":{"$ref":"#/components/examples/SchemaEmailError"}},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Bad Request"},"401":{"$ref":"#/components/responses/NotAuthorizedError"},"403":{"$ref":"#/components/responses/AccessDeniedError"},"404":{"$ref":"#/components/responses/ObjectNotFoundError"}},"summary":"Transfer a user between offerings","tags":["Offering learners"]}}},"components":{"examples":{"ApiValidationError":{"summary":"API validation error","value":{"details":"invalid $filter parameter.","name":"ApiValidationError"}},"AssessmentNotSubmittedError":{"summary":"the specified user has not submitted an assessment","value":{"details":"The user alex.doe@test.te has not submitted assessment as1.","name":"AssessmentNotSubmittedError"}},"ContentDoNotMatchError":{"summary":"The specified content needs to be the same in order to perform the requested operation.","value":{"details":"contentId needs to be the same in order to perform the requested operation.","name":"ContentDoNotMatchError"}},"IncompatibleParametersError":{"summary":"Two properties in the request contains incompatible values with each other","value":{"details":"A cannot be B when C is D","name":"IncompatibleParametersError"}},"InvalidChannelPropertiesError":{"summary":"A channel can only have one of these properties set as true: groupDiscussion, isBroadcastOnly or privateSupport","value":{"details":"A channel can only have one of these properties set as true: groupDiscussion, isBroadcastOnly or privateSupport","name":"InvalidChannelPropertiesError"}},"InvalidContentError":{"summary":"You need to specify content_id or rootContentId.","value":{"details":"You need to specify content_id or rootContentId.","name":"InvalidContentError"}},"InvalidGroupChannelError":{"summary":"Specified channel is not a group discussion channel.","value":{"details":"Channel channel1 is not a group discussion channel.","name":"InvalidGroupChannelError"}},"InvalidObjectIdError":{"summary":"The user has been suspended.","value":{"details":"The specified task id has an invalid value '1111'.","name":"InvalidObjectIdError"}},"InvalidParameterError":{"summary":"the specified source object already exists in the target object","value":{"details":"The specified parameter file.mimetype (image mimetype) has an invalid value \\'text/plain\\'.","name":"InvalidParameterError"}},"InvalidSourceAndTargetError":{"summary":"Source and target offerings cannot be the same.","value":{"details":"Source and target offerings cannot be the same.","name":"InvalidSourceAndTargetError"}},"MissingInfoError":{"summary":"Specified info is missing.","value":{"details":"The field 'Offering Badge' is missing or invalid.","name":"MissingInfoError"}},"MultipleObjectsError":{"summary":"The specified object has multiple properties of which should have only one","value":{"details":"There are multiple permission with value true (isBuilder | isReviewer).","name":"ObjectIsNotError"}},"ObjectAlreadyIsError":{"summary":"The specified object already has a property","value":{"details":"The user john.doe@test.te is already a manager.","name":"ObjectAlreadyIsError"}},"ObjectExistsError":{"summary":"the specified source object already exists in the target object","value":{"details":"The badge already exists in the offering OFFERING ID.","name":"ObjectExistsError"}},"ObjectInvalidPropertyError":{"summary":"the specified source object already exists in the target object","value":{"details":"The A property B is invalid. Expected value: C","name":"ObjectInvalidPropertyError"}},"ObjectIsNotError":{"summary":"the specified object is not of the specified type","value":{"details":"The user john.doe@test.te is not a builder.","name":"ObjectIsNotError"}},"ObjectNotFoundError":{"summary":"a referenced object is not found","value":{"details":"The content badcontentId was not found.","name":"ObjectNotFoundError"}},"OfferingIncompatibleDatesError":{"summary":"The specified offering has relative dates enabled. Absolute task dates can not be set.","value":{"details":"The specified offering has relative dates enabled. Absolute task dates can not be set.","name":"OfferingIncompatibleDatesError"}},"SchemaAdditionalPropertiesError":{"summary":"The request body should not have extra properties","value":{"details":"should NOT have additional properties","name":"SchemaValidationError"}},"SchemaAllowedValuesError":{"summary":"should be equal to one of the allowed values","value":{"details":"[PARAMETER_NAME] PARAMETER_VALUE should be equal to one of the allowed values a, b","name":"SchemaValidationError"}},"SchemaEmailError":{"summary":"Parameter should be a valid e-mail","value":{"details":"PARAMETER_NAME PARAMETER_VALUE should match format \"email\".","name":"SchemaValidationError"}},"SchemaFormatError":{"summary":"should match specific format","value":{"details":"PARAMETER_NAME PARAMETER_VALUE should match format \"example\"","name":"SchemaValidationError"}},"SchemaMediaError":{"summary":"unsupported media type in the content-type header","value":{"details":"unsupported media type application/json","name":"SchemaValidationError"}},"SchemaMinLengthError":{"summary":"should be longer than the minimum required","value":{"details":"[PARAMETER_NAME] PARAMETER_VALUE should NOT be shorter than 3 characters","name":"SchemaValidationError"}},"SchemaQueryError":{"summary":"Unknown query parameter","value":{"details":"[PARAMETER_NAME] PARAMETER_VALUE Unknown query parameter 'example'","name":"SchemaValidationError"}},"SchemaRequiredError":{"summary":"should have a specific required property","value":{"details":"should have required property 'example'","name":"SchemaValidationError"}},"SchemaTypeError":{"summary":"should be of a specific type","value":{"details":"[PARAMETER_NAME] PARAMETER_VALUE should be string","name":"SchemaValidationError"}},"TextPatternError":{"summary":"Text pattern must be a minimum of n characters in length.","value":{"details":"Text pattern must be a minimum of 3 characters in length.","name":"TextPatternError"}},"UserDoesNotHaveBadgeError":{"summary":"The specified user does not have a badge in the specified offering","value":{"details":"The user A has not been awarded a badge in the offering B.","name":"UserDoesNotHaveBadgeError"}},"UserNotInChannelError":{"summary":"Specified user is not in the channel.","value":{"details":"The user john.doe@test.te is not a learner in the channel -MEF8kFyURUr6_CZ4IXD.","name":"UserNotInChannelError"}},"UserNotInOfferingError":{"summary":"Specified user is not in the offering.","value":{"details":"The user john.doe@test.te is not a learner in the offering -MEF8kFyURUr6_CZ4IXD.","name":"UserNotInOfferingError"}},"UserSuspendedError":{"summary":"The user has been suspended.","value":{"details":"The user (john.doe@test.te) has been suspended.","name":"UserSuspendedError"}},"ValidationAllowTasksError":{"summary":"The specified parameter offeringId does not have tasks enabled","value":{"details":"The specified parameter offeringId has an invalid value 'The specified parameter offeringId does not have tasks enabled'.","name":"ValidationError"}},"ValidationError":{"summary":"The specified parameter dueDate has an invalid value","value":{"details":"The specified parameter dueDate has an invalid value \"Thu Apr 16 2020 19:15:00 GMT-0300 is before the openDate\".","name":"ValidationError"}},"ValidationTaskNotInOfferingError":{"summary":"The specified parameter taskId is not in the offering","value":{"details":"The specified parameter taskId has an invalid value 'The specified parameter taskId is not in the offering'.","name":"ValidationError"}}},"parameters":{"assessmentId":{"description":"assessment's id","in":"path","name":"assessmentId","required":true,"schema":{"type":"string"}},"badgeId":{"description":"badge's id","in":"path","name":"badgeId","required":true,"schema":{"type":"string"}},"channelId":{"description":"channel's id","in":"path","name":"channelId","required":true,"schema":{"type":"string"}},"evaluatorEmail":{"description":"Evaluator's email","in":"path","name":"evaluatorEmail","required":true,"schema":{"format":"email","type":"string"}},"externalCourseId":{"description":"external course's id","in":"path","name":"externalCourseId","required":true,"schema":{"type":"string"}},"groupId":{"description":"Assessment group id","in":"path","name":"groupId","required":true,"schema":{"pattern":"^[0-9a-fA-F]{24}$","type":"string"}},"offeringId":{"description":"offering's id","in":"path","name":"offeringId","required":true,"schema":{"type":"string"}},"permissionName":{"description":"permission name","in":"path","name":"permissionName","required":true,"schema":{"enum":["builder","manager"],"type":"string"}},"rootContentId":{"description":"Protfolio root content id","in":"path","name":"rootContentId","required":true,"schema":{"type":"string"}},"sectionId":{"description":"section's id","in":"path","name":"sectionId","required":true,"schema":{"type":"string"}},"submissionId":{"description":"submission id","in":"path","name":"submissionId","required":true,"schema":{"type":"string"}},"taskId":{"description":"task id","in":"path","name":"taskId","required":true,"schema":{"type":"string"}},"userEmail":{"description":"user's email","in":"path","name":"userEmail","required":true,"schema":{"format":"email","type":"string"}}},"responses":{"AccessDeniedError":{"content":{"application/json":{"example":{"details":"You are not allowed to access this resource","name":"AccessDeniedError"},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"You are not allowed to access this resource."},"InvalidContentError":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"description":"You need to specify content_id or rootContentId."},"NotAuthorizedError":{"content":{"application/json":{"example":{"details":"No authorization token was found.","name":"NotAuthorizedError"},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"No authorization token was found."},"NotImplementedError":{"content":{"application/json":{"example":{"details":"The endpoint is not implemented.","name":"NotImplementedError"},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Endpoint Not Implemented"},"ObjectNotFoundError":{"content":{"application/json":{"example":{"details":"The content badcontentId was not found.","name":"ObjectNotFoundError"},"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Not Found"},"RouteNotFoundError":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Invalid path."},"ServerError":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"description":"We're sorry, but something went wrong."},"TooManyRequestsError":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}},"description":"Request rate is too large."}},"schemas":{"ActivationResponse":{"properties":{"end":{"type":"string"},"id":{"type":"string"},"info":{"type":"string"},"learnersCount":{"description":"number of learners in the offering, excluding facilitators and coaches","type":"string"},"metadata":{"properties":{"rootContentId":{"type":"string"}},"type":"object"},"name":{"type":"string"},"start":{"type":"string"}},"type":"object"},"ActivityAttemptOpenResponse":{"properties":{"activityId":{"type":"string"},"activityType":{"type":"string"},"feedback":{"$ref":"#/components/schemas/ActivityAttemptOpenResponseFeedback"},"learnerEmail":{"type":"string"},"offeringId":{"type":"string"},"responseText":{"type":"string"},"uploadedFiles":{"$ref":"#/components/schemas/ActivityAttemptOpenResponseFiles"}},"type":"object"},"ActivityAttemptOpenResponseFeedback":{"properties":{"facilitatorEmail":{"type":"string"},"text":{"type":"string"}},"type":"object"},"ActivityAttemptOpenResponseFiles":{"properties":{"filename":{"type":"string"},"mimetype":{"type":"string"},"size":{"type":"string"},"url":{"type":"string"}},"type":"object"},"Assessment":{"properties":{"content":{"type":"string"},"dueDate":{"format":"date-time","type":"string"},"markNumber":{"minLength":1,"type":"string"},"markType":{"minLength":1,"type":"string"},"openDate":{"format":"date-time","type":"string"}},"type":"object"},"AssessmentGroupRequired":{"properties":{"title":{"minLength":1,"type":"string"}},"required":["title"],"type":"object"},"AssessmentGroupResponse":{"properties":{"createdAt":{"type":"string"},"id":{"type":"string"},"title":{"minLength":1,"type":"string"}},"type":"object"},"AssessmentPendingSubmission":{"properties":{"content":{"type":"string"},"documents":{"items":{"$ref":"#/components/schemas/Document"},"type":"array"},"dueDate":{"format":"date-time","type":"string"},"durationMinutes":{"format":"int32","type":"integer"},"filename":{"type":"string"},"hidden":{"default":false,"type":"boolean"},"id":{"type":"string"},"markNumber":{"minLength":1,"type":"string"},"markType":{"minLength":1,"type":"string"},"maxAttempts":{"format":"int32","type":"integer"},"offeringId":{"type":"string"},"offeringName":{"type":"string"},"openDate":{"format":"date-time","type":"string"},"pid":{"type":"string"},"points":{"type":"string"},"themes":{"items":{"$ref":"#/components/schemas/ThemeResponse"},"type":"array"},"title":{"type":"string"},"totalQuestions":{"format":"int32","type":"integer"},"totalThemes":{"format":"int32","type":"integer"},"type":{"type":"string"},"users":{"items":{"$ref":"#/components/schemas/User"},"type":"array"}},"type":"object"},"AssessmentResponse":{"properties":{"content":{"type":"string"},"documents":{"items":{"$ref":"#/components/schemas/Document"},"type":"array"},"dueDate":{"format":"date-time","type":"string"},"durationMinutes":{"format":"int32","type":"integer"},"filename":{"type":"string"},"hidden":{"default":false,"type":"boolean"},"id":{"type":"string"},"markNumber":{"minLength":1,"type":"string"},"markType":{"minLength":1,"type":"string"},"maxAttempts":{"format":"int32","type":"integer"},"openDate":{"format":"date-time","type":"string"},"pid":{"type":"string"},"points":{"type":"string"},"themes":{"items":{"$ref":"#/components/schemas/ThemeResponse"},"type":"array"},"title":{"type":"string"},"totalQuestions":{"format":"int32","type":"integer"},"totalThemes":{"format":"int32","type":"integer"},"type":{"type":"string"}},"type":"object"},"AssignmentMarkResponse":{"properties":{"assessmentId":{"type":"string"},"assessmentItemDetails":{"type":"string"},"assessmentItemName":{"type":"string"},"courseName":{"type":"string"},"learnerEmail":{"type":"string"},"learnerFirstName":{"type":"string"},"learnerLastName":{"type":"string"},"learnerPersonId":{"type":"string"},"mark":{"type":"string"},"markFeedback":{"type":"string"},"markedBy":{"type":"string"},"markedByEvaluator":{"type":"boolean"},"markedByFacilitator":{"type":"boolean"},"markedByMarker":{"type":"boolean"},"markedDateTime":{"format":"date-time","type":"string"},"submissionDateTime":{"format":"date-time","type":"string"}},"title":"AssignmentMark","type":"object"},"Assignments":{"properties":{"files":{"items":{"$ref":"#/components/schemas/Document"},"type":"array"},"marks":{"items":{"$ref":"#/components/schemas/Mark"},"type":"array"},"status":{"type":"string"},"submittedAt":{"format":"date-time","type":"string"},"updatedAt":{"format":"date-time","type":"string"}},"type":"object"},"AwardedResponse":{"properties":{"awarded":{"type":"boolean"},"badgeId":{"type":"string"},"badgeUrl":{"type":"string"}},"type":"object"},"Badge":{"properties":{"badgeExpiry":{"$ref":"#/components/schemas/BadgeExpiry"},"badgeUrl":{"type":"string"},"criterias":{"allOf":[{"$ref":"#/components/schemas/Criteria"}]},"description":{"type":"string"},"openBadge":{"allOf":[{"$ref":"#/components/schemas/OpenBadgeClass"}]},"title":{"type":"string"}},"type":"object"},"BadgeExpiry":{"properties":{"expirationDate":{"format":"date-time","type":"string"},"expires":{"type":"boolean"},"expiryType":{"enum":["date","timeframe"],"type":"string"},"timeframeAmount":{"type":"number"},"timeframeUnit":{"enum":["days","months","years"],"type":"string"}},"type":"object"},"Channel":{"properties":{"group":{"properties":{"autoAssign":{"type":"boolean"}},"type":"object"},"groupDiscussion":{"type":"boolean"},"isBroadcastOnly":{"type":"boolean"},"privateSupport":{"type":"boolean"},"title":{"minLength":1,"type":"string"}},"type":"object"},"ChannelRequired":{"properties":{"isBroadcastOnly":{"default":false,"type":"boolean"},"title":{"minLength":1,"type":"string"}},"required":["title"],"type":"object"},"ChannelResponse":{"properties":{"id":{"type":"string"},"isBroadcastOnly":{"default":false,"type":"boolean"},"title":{"minLength":1,"type":"string"}},"type":"object"},"Comment":{"properties":{"content":{"type":"string"},"createdAt":{"format":"date-time","type":"string"},"email":{"type":"string"},"id":{"type":"string"},"isFacilitatorPost":{"type":"boolean"},"moderation":{"$ref":"#/components/schemas/Moderation"},"parentCommentId":{"type":"string"},"postId":{"type":"string"}},"type":"object"},"CourseMetaResponse":{"properties":{"coverImageUrl":{"type":"string"},"createdAt":{"format":"date-time","type":"string"},"id":{"type":"string"},"metadata":{"properties":{"category":{"type":"string"},"learning_outcomes":{"items":{"$ref":"#/components/schemas/LearningOutcomes"},"type":"array"},"level":{"type":"string"},"rootContentId":{"type":"string"},"tags":{"items":{"type":"string"},"type":"array"},"topic":{"type":"string"}}},"name":{"type":"string"},"tasksEnabled":{"type":"boolean"}},"title":"Course","type":"object"},"CourseResponse":{"properties":{"coverImageUrl":{"type":"string"},"createdAt":{"format":"date-time","type":"string"},"id":{"type":"string"},"metadata":{"properties":{"learning_outcomes":{"items":{"$ref":"#/components/schemas/LearningOutcomes"},"type":"array"}}},"name":{"type":"string"}},"title":"Course","type":"object"},"Criteria":{"properties":{"hasCompletedCourse":{"default":true,"type":"boolean"},"hasPassedMandatoryAssessedQuizzes":{"default":true,"type":"boolean"}},"type":"object"},"Document":{"properties":{"createdAt":{"format":"date-time","type":"string"},"filename":{"type":"string"},"id":{"type":"string"},"mimetype":{"type":"string"},"size":{"format":"int64","type":"integer"},"url":{"type":"string"}},"type":"object"},"DocumentResponse":{"properties":{"id":{"type":"string"},"mimetype":{"type":"string"},"size":{"format":"int64","type":"integer"},"url":{"type":"string"}},"type":"object"},"Error":{"properties":{"error":{"properties":{"details":{"type":"string"},"name":{"type":"string"}},"type":"object"}},"type":"object"},"Invite":{"properties":{"url":{"description":"if sendInvite in request is false","type":"string"}},"type":"object"},"LearnerOfferingDates":{"properties":{"start":{"format":"date-time","type":"string"}},"type":"object"},"LearnerProgressResponse":{"properties":{"completion":{"type":"string"},"courseId":{"type":"string"},"email":{"type":"string"},"firstName":{"type":"string"},"lastLoggedInAt":{"format":"date-time","type":"string"},"lastName":{"type":"string"},"personId":{"type":"string"}},"title":"LearnerProgress","type":"object"},"LearnerResponse":{"properties":{"email":{"type":"string"},"firstName":{"type":"string"},"id":{"type":"string"},"lastName":{"type":"string"},"offerings":{"items":{"$ref":"#/components/schemas/OfferingProgressRow"},"type":"array"},"personId":{"type":"string"}},"type":"object"},"LearningOutcomes":{"properties":{"description":{"type":"string"},"id":{"type":"string"}},"type":"object"},"Mark":{"properties":{"createdAt":{"format":"date-time","type":"string"},"feedback":{"type":"string"},"id":{"type":"string"},"mark":{"type":"string"},"markFeedback":{"items":{"$ref":"#/components/schemas/MarkFeedback"},"type":"array"},"markedBy":{"type":"string"},"markerId":{"type":"string"}}},"MarkFeedback":{"properties":{"createdAt":{"format":"date-time","type":"string"},"feedback":{"type":"string"},"feedbackBy":{"type":"string"},"id":{"type":"string"},"mark":{"type":"string"},"markerId":{"type":"string"}}},"Moderation":{"properties":{"isMuted":{"type":"boolean"},"moderator":{"$ref":"#/components/schemas/Moderator"},"reason":{"type":"string"}},"type":"object"},"Moderator":{"properties":{"avatarUrl":{"type":"string"},"firstName":{"type":"string"},"id":{"type":"string"},"lastName":{"type":"string"}},"type":"object"},"Offering":{"properties":{"badge":{"additionalProperties":false,"properties":{"badgeExpiry":{"$ref":"#/components/schemas/BadgeExpiry"},"description":{"type":"string"},"requiresApproval":{"type":"boolean"},"title":{"type":"string"}},"type":"object"},"contentId":{"description":"The identifier for a specific version of a course","minLength":1,"type":"string"},"description":{"minLength":1,"type":"string"},"earlyCloseOffDate":{"format":"date-time","type":"string"},"end":{"format":"date-time","type":"string"},"hasEarlyCloseOff":{"type":"boolean"},"identifier":{"type":"string"},"isReadonly":{"type":"boolean"},"metadata":{"additionalProperties":false,"properties":{"category":{"type":"string"},"level":{"type":"string"},"tags":{"items":{"type":"string"},"type":"array"},"topic":{"type":"string"}},"type":"object"},"name":{"minLength":1,"type":"string"},"overview":{"type":"string"},"rootContentId":{"description":"Every time a course is republished it is assigned a new contentId. rootContentId is the first original contentId associated with a course.","type":"string"},"start":{"format":"date-time","type":"string"},"trailerVideoUrl":{"minLength":1,"type":"string"},"useRelativeDates":{"type":"boolean"}},"type":"object"},"OfferingActivitiesResponse":{"properties":{"activityId":{"type":"string"},"time":{"description":"expected minutes to complete","type":"number"},"title":{"type":"string"}},"type":"object"},"OfferingMetadata":{"additionalProperties":false,"properties":{"category":{"type":"string"},"level":{"type":"string"},"rootContentId":{"type":"string"},"tags":{"items":{"type":"string"},"type":"array"},"topic":{"type":"string"}},"type":"object"},"OfferingMetadataResponse":{"properties":{"contentId":{"minLength":1,"type":"string"},"coverImageUrl":{"minLength":1,"type":"string"},"currency":{"type":"string"},"description":{"minLength":1,"type":"string"},"earlyCloseOffDate":{"format":"date-time","type":"string"},"end":{"format":"date-time","type":"string"},"enrollmentLimit":{"type":"number"},"hasEarlyCloseOff":{"type":"boolean"},"id":{"type":"string"},"identifier":{"type":"string"},"isReadonly":{"type":"boolean"},"metadata":{"$ref":"#/components/schemas/OfferingMetadata"},"name":{"minLength":1,"type":"string"},"overview":{"description":"content can contain html","minLength":1,"type":"string"},"price":{"type":"number"},"start":{"format":"date-time","type":"string"},"tasksEnabled":{"type":"boolean"},"trailerVideoUrl":{"minLength":1,"type":"string"},"useRelativeDates":{"default":false,"type":"boolean"}},"type":"object"},"OfferingProgressRow":{"properties":{"completion":{"type":"string"},"id":{"type":"string"}},"type":"object"},"OfferingRequired":{"properties":{"badge":{"additionalProperties":false,"properties":{"badgeExpiry":{"$ref":"#/components/schemas/BadgeExpiry"},"description":{"type":"string"},"requiresApproval":{"type":"boolean"},"title":{"type":"string"}},"type":"object"},"contentId":{"description":"The identifier for a specific version of a course","minLength":1,"type":"string"},"createDefaultChannels":{"default":false,"type":"boolean"},"description":{"minLength":1,"type":"string"},"earlyCloseOffDate":{"format":"date-time","type":"string"},"end":{"format":"date-time","type":"string"},"hasEarlyCloseOff":{"type":"boolean"},"identifier":{"type":"string"},"isReadonly":{"type":"boolean"},"metadata":{"additionalProperties":false,"properties":{"category":{"type":"string"},"level":{"type":"string"},"tags":{"items":{"type":"string"},"type":"array"},"topic":{"type":"string"}},"type":"object"},"name":{"minLength":1,"type":"string"},"rootContentId":{"description":"Every time a course is republished it's assigned a new contentId. rootContentId is the first original contentId associated with a course.","type":"string"},"start":{"format":"date-time","type":"string"},"trailerVideoUrl":{"minLength":1,"type":"string"},"useRelativeDates":{"default":false,"type":"boolean"}},"required":["start"],"type":"object"},"OfferingResponse":{"properties":{"contentId":{"minLength":1,"type":"string"},"coverImageUrl":{"minLength":1,"type":"string"},"currency":{"type":"string"},"description":{"minLength":1,"type":"string"},"earlyCloseOffDate":{"format":"date-time","type":"string"},"end":{"format":"date-time","type":"string"},"enrollmentLimit":{"type":"number"},"hasEarlyCloseOff":{"type":"boolean"},"id":{"type":"string"},"identifier":{"type":"string"},"isReadonly":{"type":"boolean"},"name":{"minLength":1,"type":"string"},"price":{"type":"number"},"start":{"format":"date-time","type":"string"},"tasksEnabled":{"type":"boolean"},"trailerVideoUrl":{"minLength":1,"type":"string"}},"type":"object"},"OfferingUser":{"additionalProperties":false,"properties":{"email":{"minLength":1,"type":"string"},"firstName":{"minLength":1,"type":"string"},"isFacilitator":{"default":false,"type":"boolean"},"isMarker":{"default":false,"type":"boolean"},"isReadonly":{"default":false,"type":"boolean"},"lastName":{"minLength":1,"type":"string"},"metadata":{"$ref":"#/components/schemas/UserMetadata"},"personId":{"minLength":1,"type":"string"},"profile":{"$ref":"#/components/schemas/UserProfileRequest"},"sendInvite":{"default":true,"type":"boolean"},"sendNotificationEmail":{"default":true,"type":"boolean"}},"required":["email"],"type":"object"},"OfferingUserAddResponse":{"properties":{"email":{"minLength":1,"type":"string"},"firstName":{"minLength":1,"type":"string"},"invite":{"$ref":"#/components/schemas/Invite"},"isFacilitator":{"default":false,"type":"boolean"},"isMarker":{"default":false,"type":"boolean"},"isReadonly":{"default":false,"type":"boolean"},"lastName":{"minLength":1,"type":"string"},"metadata":{"$ref":"#/components/schemas/UserMetadata"},"personId":{"minLength":1,"type":"string"},"profile":{"$ref":"#/components/schemas/UserProfileRequest"},"sendInvite":{"default":true,"type":"boolean"},"sendNotificationEmail":{"default":true,"type":"boolean"}},"type":"object"},"OfferingUserResponse":{"properties":{"avatarUrl":{"type":"string"},"email":{"format":"email","minLength":1,"type":"string"},"evaluatedBy":{"items":{"type":"string"},"type":"array"},"evaluates":{"items":{"type":"string"},"type":"array"},"firstName":{"minLength":1,"type":"string"},"id":{"type":"string"},"isFacilitator":{"default":false,"type":"boolean"},"isMarker":{"default":false,"type":"boolean"},"isReadonly":{"default":false,"type":"boolean"},"lastName":{"minLength":1,"type":"string"},"markedBy":{"items":{"type":"string"},"type":"array"},"marks":{"items":{"type":"string"},"type":"array"},"personId":{"minLength":1,"type":"string"},"profile":{"$ref":"#/components/schemas/UserProfile"}},"type":"object"},"OpenBadgeClass":{"properties":{"criteria":{"additionalProperties":false,"properties":{"narrative":{"type":"string"}},"type":"object"},"description":{"type":"string"},"id":{"type":"string"},"image":{"type":"string"},"issuer":{"type":"string"},"name":{"type":"string"},"type":{"type":"string"}},"type":"object"},"OrgRequest":{"properties":{"id":{"type":"string"},"name":{"type":"string"}},"required":["name"],"type":"object"},"OrgResponse":{"properties":{"id":{"type":"string"},"name":{"type":"string"}},"type":"object"},"PortfolioActivations":{"properties":{"contentId":{"type":"string"},"end":{"format":"date-time","type":"string"},"id":{"type":"string"},"info":{"type":"string"},"learnersCount":{"description":"number of learners in the offering, excluding facilitators and coaches","type":"number"},"metadata":{"properties":{"rootContentId":{"type":"string"}},"type":"object"},"name":{"type":"string"},"start":{"format":"date-time","type":"string"}},"type":"object"},"PortfolioLicenseResponse":{"properties":{"licenses":{"items":{"type":"string"},"type":"array"},"owner":{"type":"string"}},"type":"object"},"PortfolioMetadata":{"additionalProperties":false,"properties":{"category":{"type":"string"},"level":{"type":"string"},"tags":{"items":{"type":"string"},"type":"array"},"topic":{"type":"string"}},"type":"object"},"PulseAnswer":{"properties":{"multiChoiceAnswer":{"items":{"$ref":"#/components/schemas/PulseMCQOption"},"type":"array"},"spatialAnswer":{"items":{"$ref":"#/components/schemas/PulseSpatialOption"},"type":"array"},"textAnswer":{"type":"string"}},"title":"Answer","type":"object"},"PulseMCQOption":{"properties":{"option":{"type":"string"},"value":{"type":"boolean"}},"title":"MultiChoiceOption","type":"object"},"PulseResponse":{"properties":{"learnerFirstName":{"type":"string"},"learnerId":{"type":"string"},"learnerLastName":{"type":"string"},"pulseBaseId":{"type":"string"},"pulseInstanceId":{"type":"string"},"pulseQuestion":{"type":"string"},"pulseRunDurationMinutes":{"type":"integer"},"pulseRunStart":{"format":"date-time","type":"string"},"pulseType":{"type":"string"},"response":{"$ref":"#/components/schemas/PulseAnswer"},"responseTime":{"format":"date-time","type":"string"}},"title":"Pulse","type":"object"},"PulseSpatialOption":{"properties":{"option":{"type":"string"},"value":{"format":"float","type":"number"}},"title":"SpatialOption","type":"object"},"QuizMarkResponse":{"properties":{"attempts":{"format":"int32","type":"integer"},"lastAttemptAt":{"format":"date-time","type":"string"},"learnerEmail":{"type":"string"},"learnerFullname":{"type":"string"},"learnerPersonId":{"type":"string"},"mark":{"type":"string"},"quizId":{"type":"string"},"quizTitle":{"type":"string"}},"title":"QuizMark","type":"object"},"RevokedResponse":{"properties":{"badgeId":{"type":"string"},"badgeUrl":{"type":"string"},"revocationReason":{"type":"string"},"revoked":{"type":"boolean"}},"type":"object"},"SocialNotesResponse":{"properties":{"email":{"type":"string"},"firstName":{"type":"string"},"lastName":{"type":"string"},"pageId":{"type":"string"},"personId":{"type":"string"},"social-note-content":{"type":"string"},"social-note-paragraphId":{"type":"string"},"userId":{"type":"string"}},"type":"object"},"SubmissionMarkResponse":{"properties":{"assessmentId":{"type":"string"},"assessmentItemDetails":{"type":"string"},"assessmentItemName":{"type":"string"},"courseName":{"type":"string"},"files":{"items":{"$ref":"#/components/schemas/Document"},"type":"array"},"html":{"type":"string"},"learnerEmail":{"type":"string"},"learnerFirstName":{"type":"string"},"learnerLastName":{"type":"string"},"learnerPersonId":{"type":"string"},"marks":{"items":{"$ref":"#/components/schemas/Mark"},"type":"array"},"status":{"type":"string"},"submissionDateTime":{"format":"date-time","type":"string"}},"title":"SubmissionMark"},"SuspendedRequest":{"properties":{"suspended":{"type":"boolean"}},"type":"object"},"ThemeResponse":{"properties":{"filter":{"type":"string"},"numberOfQuestions":{"type":"string"}},"type":"object"},"TransferRequest":{"properties":{"fromOfferingId":{"type":"string"},"sendInvite":{"type":"boolean"},"toOfferingId":{"type":"string"}},"type":"object"},"UnitReactionsAnalyticsResponse":{"properties":{"feedback":{"$ref":"#/components/schemas/UnitReactionsFeedback"},"pageId":{"type":"boolean"}},"type":"object"},"UnitReactionsFeedback":{"properties":{"thumbs-down":{"type":"number"},"thumbs-up":{"type":"number"}},"type":"object"},"User":{"additionalProperties":false,"properties":{"email":{"format":"email","minLength":1,"type":"string"},"firstName":{"minLength":1,"type":"string"},"lastName":{"minLength":1,"type":"string"},"metadata":{"$ref":"#/components/schemas/UserMetadata"},"personId":{"minLength":1,"type":"string"},"profile":{"$ref":"#/components/schemas/UserProfileRequest"},"sendInvite":{"default":true,"type":"boolean"}},"type":"object"},"UserBadge":{"properties":{"awardedAt":{"format":"date-time","type":"string"},"badgeExpiry":{"properties":{"expirationDate":{"format":"date-time","type":"string"},"expires":{"type":"boolean"}},"type":"object"},"badgeUrl":{"type":"string"},"criterias":{"allOf":[{"$ref":"#/components/schemas/Criteria"}]},"description":{"type":"string"},"offeringId":{"type":"string"},"openBadge":{"allOf":[{"$ref":"#/components/schemas/OpenBadgeClass"}]},"title":{"type":"string"}},"type":"object"},"UserMetadata":{"additionalProperties":false,"properties":{"tags":{"items":{"type":"string"},"type":"array"}},"type":"object"},"UserPermission":{"properties":{"email":{"type":"string"},"isBuilder":{"type":"boolean"},"isReviewer":{"type":"boolean"},"name":{"type":"string"}},"title":"User"},"UserProfile":{"properties":{"displayName":{"type":"string"},"mobile":{"type":"string"}},"type":"object"},"UserProfileRequest":{"properties":{"displayName":{"type":"string"}},"type":"object"},"UserResponse":{"properties":{"avatarUrl":{"type":"string"},"email":{"format":"email","minLength":1,"type":"string"},"firstAccessAt":{"format":"date-time","type":"string"},"firstName":{"minLength":1,"type":"string"},"id":{"type":"string"},"invite":{"$ref":"#/components/schemas/Invite"},"lastAccessAt":{"format":"date-time","type":"string"},"lastName":{"minLength":1,"type":"string"},"metadata":{"$ref":"#/components/schemas/UserMetadata"},"personId":{"minLength":1,"type":"string"},"profile":{"$ref":"#/components/schemas/UserProfile"}},"type":"object"},"httpPost":{"properties":{"attachments":{"items":{"$ref":"#/components/schemas/DocumentResponse"},"type":"array"},"content":{"type":"string"},"createdAt":{"format":"date-time","type":"string"},"email":{"type":"string"},"id":{"type":"string"},"isFacilitatorPost":{"type":"boolean"},"moderation":{"$ref":"#/components/schemas/Moderation"},"title":{"type":"string"}},"type":"object"}},"securitySchemes":{"Authorization":{"in":"header","name":"Authorization","type":"apiKey"}}}}