Read.Course.Planner.Topics
Reads the planner topics for the specified course. The course setting ("Planner") must be enabled for this method to work.
Input parameters
Name | Description | Type | Mandatory/Optional |
|---|---|---|---|
SiteId | Site where action will be executed. | Integer | Optional |
VendorId | VendorId. Currently not used. | Text | Optional |
PageIndex | Index of the requested page. This defaults to 0. | Integer | O |
PageSize | Size of the requested page. The default and limit is 100. | Integer | O |
CourseId | Course identifier of the course to get the topics for. NOTE: You are not allowed to enter both CourseId and CourseSyncKey. | Integer | M/O |
CourseSyncKey | SyncKey of the course to get the topics for. NOTE: You are not allowed to enter both CourseId and CourseSyncKey. | String | M/O |
Example request
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tem="http://tempuri.org/" xmlns:its="http://schemas.datacontract.org/2004/07/Itslearning.Integration.ContentImport.Model.ServiceEntities" xmlns:its1="http://schemas.datacontract.org/2004/07/Itslearning.Integration.ContentImport.Model.ServiceEntities.CoursePlannerTopics"> <soapenv:Header/> <soapenv:Body> <tem:ReadCoursePlannerTopics> <tem:request> <its:PageIndex>0</its:PageIndex> <its:PageSize>100</its:PageSize> <its1:CourseId>58</its1:CourseId> </tem:request> </tem:ReadCoursePlannerTopics> </soapenv:Body></soapenv:Envelope>Output parameters
Name | Description | Type |
|---|---|---|
SyncKey | SyncKey of the topic | String |
Title | Title of the topic | String |
TopicId | Identifier of the topic | Integer |
TopicCustomColumns | Array of custom columns of the lesson. | TopicCustomColumn[] |
TopicCustomColumn.ColumnId | Identifier of the custom column. | Integer |
TopicCustomColumn.LearningObjectives | Array of learning objectives. Always Null if the column type is not LearningObjectives. | LearningObjective[] |
TopicCustomColumn.Name | Name of the custom column. | String |
TopicCustomColumn.Term | Associated term. Always Null if the column type is not Term. | Term |
TopicCustomColumn.Text | Text of the custom column. | String |
TopicCustomColumn.Type | Type of the custom column (RichText, LearningObjectives, Term). | String |
Term.Description | Description of the term. | String |
Term.EndDate | Date when the term ends. | Date |
Term.Name | Name of the term. | String |
Term.OrganisationId | Identifier of the organisation the term belongs to. | Integer |
Term.OrganisationName | Name of the organisation the term belongs to. | String |
Term.OrganisationSyncKey | SyncKey of the organisation the term belongs to. | String |
Term.StartDate | Date when the term starts. | Date |
Term.SyncKey | SyncKey of the term. | String |
Term.TermId | Identifier of the term. | Integer |
LearningObjective.LearningObjectiveId | Learning objective unique identifier from the national repository. Empty for custom learning objectives. | Integer |
LearningObjective.Description | Description of the learning objective. | String |
LearningObjective.Title | Title of the learning objective. | String |
Example response
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" xmlns:u="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"> <s:Header> <o:Security s:mustUnderstand="1" xmlns:o="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"> <u:Timestamp u:Id="_0"> <u:Created>2023-10-30T10:51:28.175Z</u:Created> <u:Expires>2023-10-30T10:56:28.175Z</u:Expires> </u:Timestamp> </o:Security> </s:Header> <s:Body> <ReadCoursePlannerTopicsResponse xmlns="http://tempuri.org/"> <ReadCoursePlannerTopicsResult xmlns:a="http://schemas.datacontract.org/2004/07/Itslearning.Integration.ContentImport.Model.ServiceEntities.CoursePlannerTopics" xmlns:i="http://www.w3.org/2001/XMLSchema-instance"> <CurrentPageIndex xmlns="http://schemas.datacontract.org/2004/07/Itslearning.Integration.ContentImport.Model.ServiceEntities">0</CurrentPageIndex> <PageSize xmlns="http://schemas.datacontract.org/2004/07/Itslearning.Integration.ContentImport.Model.ServiceEntities">100</PageSize> <Total xmlns="http://schemas.datacontract.org/2004/07/Itslearning.Integration.ContentImport.Model.ServiceEntities">1</Total> <a:PlannerTopics> <a:PlannerTopic> <a:SyncKey/> <a:Title>Topic1</a:Title> <a:TopicCustomColumns> <a:TopicCustomColumn> <a:ColumnId>607</a:ColumnId> <a:LearningObjectives i:nil="true" xmlns:b="http://schemas.datacontract.org/2004/07/Itslearning.Integration.ContentImport.Model.ServiceEntities.CourseElement"/> <a:Name>Term</a:Name> <a:Term xmlns:b="http://schemas.datacontract.org/2004/07/Itslearning.Integration.ContentImport.Model.ServiceEntities.ReadTerms"> <b:Description>Term2 description</b:Description> <b:EndDate>2023-12-31T00:00:00</b:EndDate> <b:Name>Term2</b:Name> <b:OrganisationId>1</b:OrganisationId> <b:OrganisationName>Site</b:OrganisationName> <b:OrganisationSyncKey>root</b:OrganisationSyncKey> <b:StartDate>2023-10-27T00:00:00</b:StartDate> <b:SyncKey>term2sync</b:SyncKey> <b:TermId>2</b:TermId> </a:Term> <a:Text/> <a:Type>Term</a:Type> </a:TopicCustomColumn> <a:TopicCustomColumn> <a:ColumnId>620</a:ColumnId> <a:LearningObjectives xmlns:b="http://schemas.datacontract.org/2004/07/Itslearning.Integration.ContentImport.Model.ServiceEntities.CourseElement"> <b:LearningObjective> <b:Description>LO1 description</b:Description> <b:LearningObjectiveId i:nil="true"/> <b:Title>LO1</b:Title> </b:LearningObjective> <b:LearningObjective> <b:Description>LO2 description</b:Description> <b:LearningObjectiveId i:nil="true"/> <b:Title>LO2</b:Title> </b:LearningObjective> </a:LearningObjectives> <a:Name>LOs</a:Name> <a:Term i:nil="true" xmlns:b="http://schemas.datacontract.org/2004/07/Itslearning.Integration.ContentImport.Model.ServiceEntities.ReadTerms"/> <a:Text/> <a:Type>LearningObjectives</a:Type> </a:TopicCustomColumn> <a:TopicCustomColumn> <a:ColumnId>621</a:ColumnId> <a:LearningObjectives i:nil="true" xmlns:b="http://schemas.datacontract.org/2004/07/Itslearning.Integration.ContentImport.Model.ServiceEntities.CourseElement"/> <a:Name>Description</a:Name> <a:Term i:nil="true" xmlns:b="http://schemas.datacontract.org/2004/07/Itslearning.Integration.ContentImport.Model.ServiceEntities.ReadTerms"/> <a:Text>Topic1 description</a:Text> <a:Type>RichText</a:Type> </a:TopicCustomColumn> <a:TopicCustomColumn> <a:ColumnId>622</a:ColumnId> <a:LearningObjectives i:nil="true" xmlns:b="http://schemas.datacontract.org/2004/07/Itslearning.Integration.ContentImport.Model.ServiceEntities.CourseElement"/> <a:Name>Custom field</a:Name> <a:Term i:nil="true" xmlns:b="http://schemas.datacontract.org/2004/07/Itslearning.Integration.ContentImport.Model.ServiceEntities.ReadTerms"/> <a:Text>custom field text</a:Text> <a:Type>RichText</a:Type> </a:TopicCustomColumn> <a:TopicCustomColumn> <a:ColumnId>623</a:ColumnId> <a:LearningObjectives xmlns:b="http://schemas.datacontract.org/2004/07/Itslearning.Integration.ContentImport.Model.ServiceEntities.CourseElement"/> <a:Name>LO2</a:Name> <a:Term i:nil="true" xmlns:b="http://schemas.datacontract.org/2004/07/Itslearning.Integration.ContentImport.Model.ServiceEntities.ReadTerms"/> <a:Text/> <a:Type>LearningObjectives</a:Type> </a:TopicCustomColumn> </a:TopicCustomColumns> <a:TopicId>16</a:TopicId> </a:PlannerTopic> </a:PlannerTopics> </ReadCoursePlannerTopicsResult> </ReadCoursePlannerTopicsResponse> </s:Body></s:Envelope>Error states
In the following cases it will return an error:
- The requested course does not exist.
- The requested course has been deleted.
- The requested course exists, but belongs to an organisation the requester does not have access to.
- The requester supplied both a CourseId and CourseSyncKey.
- The requested course does not have the planner enabled.