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.