URL to service

https://enterprise.itslearning.com/WCFServiceLibrary/GroupManagementServiceSync.svc

Please note this URL applies to the USIT environment. See here.

 

This service contains the following functions:

 

  • createGroup
  • createGroups
  • updateGroup
  • updateGroups
  • deleteGroup
  • deleteGroups
  • replaceGroup
  • replaceGroups
  • changeGroupsIdentifier
  • readGroup
  • readGroups
  • readGroupsForPerson



WSDL file for GroupManagement
https://enterprise.itslearning.com/WCFServiceLibrary/GroupManagementServiceSync.svc?wsdl


 IMS Enterprise Service online documentation
The function descriptions, original WSDL files, request/response examples can be found here:
http://www.imsglobal.org/es/index.html
http://www.imsglobal.org/es/esv1p0/imsgroup_bindv1p0.html
http://www.imsglobal.org/es/esv1p0/imsgroup_infov1p0.html


The group object and its mapping to itslearning


IMS ES Field

Mandatory

Itslearning field

Comment

SourcedId

X

Hierarchy.syncLocationId

SyncID

groupType/scheme



Should be set to ItslearningOrganisationTypes if you want to be able to set the organisation type.

Examples can be found in Creating organisations and Creating courses and course groups

groupType/typeValue/type


Hierarchy.OrganisationType

Set to School to create an organisation of type school. See Creating organisations

Set to Course to create a hierarchy connected to a course. See Creating courses and course groups.

Set to CourseGroup to create a hierarchy connected to a course group.  See Creating courses and course groups

groupType/typeValue/level


Hierarchy.OrganisationType

Alternative method to set the organisation type. You can either set the level, or the type, or both. If you set both then the type and level must match, so if you set type to School, then level must be 1.

Set to 1 to create an organisation of type school. See Creating organisations

Set to 2 to create a hierarchy connected to a course. See Creating courses and course groups

Set to 3 to create a hierarchy connected to a course group. See Creating courses and course groups

Relationship/relation

X


NB!  itslearning only supports Parent

Relationship/sourceId/identifier

X

Hierarchy.syncRelationId

syncID of the parent of this hierarchy. If you are creating a hierarchy with OrganisationType CourseGroup, then the parent must be a course. See Creating courses and course groups for more information on this.

Description/descShort

X

Hierarchy.Title


Description/descLong


Hierarchy.Description


Extensions

ExtensionField



Additional group information that can be imported. If you are creating a hierarchy with OrganisationType Course, then extension data is mandatory. See Creating courses and course groups for more information on this.

A list of supported extensions can be found below.

Group request and <Relationship> element

The releationship element will tell you where to insert the hierarchy group in the itslearning hierarchy structure.

  1. For group A you specify <relationship><sourcedId><identifier> = X
    A hierarchy group with syncID = X already exists in itslearning
    Group A will be placed as child of group X in itslearning
     
  2. For group A you specify <relationship><sourcedId><identifier> = <sourcedId><identifier>
    Group A will be placed as child of the root hierarchy of the site



Extensions


Some additional group information:

  • visibleinsearch
  • allowconnectiontocourse
  • XitiEstablishmentId
  • XitiCollectiviteId
  • course
  • course/code
  • course/credit
  • LegalId - an external identifier of an organisation. Can be sets only for hierarchies with the type 'School' or 'Site'. Max length is 50. 

Course template can be specified for a course:

  • course/template/synckey
  • course/template/coursecreatorsynckey

Course template can contain terms. The collection of terms to be replaced should be specified one by one. Each term should have some unique ID and specified as {termId}.

  • course/template/terms/{termId}/sourcetermsynckey
  • course/template/terms/{termId}/newtermsynckey

External course template can be specified for a course:

  • course/template/externaltemplateid

For details about using course templates please use this link Working with course templates in IMS-ES

Note"course" extension field is mandatory to create/update any course information.

Example of usage: 


<extension xmlns="http://www.imsglobal.org/services/gms/xsd/imsGroupManDataSchema_v1p0">
<!--// set if the hierarchy group should be visible in search or not. Default value = True.-->
<extensionField xmlns="http://www.imsglobal.org/services/common/imsCommonSchema_v1p0">
<fieldName>visibleinsearch</fieldName>
<fieldType>Boolean</fieldType>
<fieldValue>True</fieldValue>
</extensionField>
<!--// set if the hierarchy group should allow relationship to course or not. Default value = 1.-->
<extensionField xmlns="http://www.imsglobal.org/services/common/imsCommonSchema_v1p0">
<fieldName>allowconnectiontocourse</fieldName>
<fieldType>Boolean</fieldType>
<fieldValue>1</fieldValue>
</extensionField>
<!--// set the xiti establishment Id of the hierarchy group-->
<extensionField xmlns="http://www.imsglobal.org/services/common/imsCommonSchema_v1p0">
<fieldName>XitiEstablishmentId</fieldName>
<fieldType>int</fieldType>
<fieldValue>121</fieldValue>
</extensionField>
<!--// set the xiti establishment Id of the hierarchy group-->
<extensionField xmlns="http://www.imsglobal.org/services/common/imsCommonSchema_v1p0">
<fieldName>XitiCollectiviteId</fieldName>
<fieldType>int</fieldType>
<fieldValue>343</fieldValue>
</extensionField>
<!--// set the external identifier (Legal Id) of the hierarchy group-->
<extensionField xmlns="http://www.imsglobal.org/services/common/imsCommonSchema_v1p0">
<fieldName>LegalId</fieldName>
<fieldType>String</fieldType>
<fieldValue>School_123</fieldValue>
</extensionField>
<!--// course created with this course title-->
<extensionField xmlns="http://www.imsglobal.org/services/common/imsCommonSchema_v1p0">
<fieldName>course</fieldName>
<fieldType>String</fieldType>
<fieldValue>English course (4)</fieldValue>
</extensionField>
<!--// course created with this course code-->
<extensionField xmlns="http://www.imsglobal.org/services/common/imsCommonSchema_v1p0">
<fieldName>course/code</fieldName>
<fieldType>String</fieldType>
<fieldValue>ENG13/18</fieldValue>
</extensionField>
<!--// course created with this course credits-->
<extensionField xmlns="http://www.imsglobal.org/services/common/imsCommonSchema_v1p0">
<fieldName>course/credits</fieldName>
<fieldType>String</fieldType>
<fieldValue/>
</extensionField>
<!--// course external template id-->
<extensionField xmlns="http://www.imsglobal.org/services/common/imsCommonSchema_v1p0">
<fieldName>course/template/externaltemplateid</fieldName>
<fieldType>Int</fieldType>
<fieldValue>ExternalTemplateId</fieldValue>
</extensionField>
<!--// course template sync key-->
<extensionField xmlns="http://www.imsglobal.org/services/common/imsCommonSchema_v1p0">
<fieldName>course/template/synckey</fieldName>
<fieldType>String</fieldType>
<fieldValue>CourseTemplateSyncKey</fieldValue>
</extensionField>
<!--// course creator sync key-->
<extensionField xmlns="http://www.imsglobal.org/services/common/imsCommonSchema_v1p0">
<fieldName>course/template/coursecreatorsynckey</fieldName>
<fieldType>String</fieldType>
<fieldValue>CourseCreatorSyncKey</fieldValue>
</extensionField>
<!--// term #1 source sync key-->
<extensionField xmlns="http://www.imsglobal.org/services/common/imsCommonSchema_v1p0">
<fieldName>course/template/terms/1/SourceTermSyncKey</fieldName>
<fieldType>String</fieldType>
<fieldValue>Term1SourceTermSyncKey</fieldValue>
</extensionField>
<!--// term #1 new sync key-->
<extensionField xmlns="http://www.imsglobal.org/services/common/imsCommonSchema_v1p0">
<fieldName>course/template/terms/1/NewTermSyncKey</fieldName>
<fieldType>String</fieldType>
<fieldValue>Term1NewTermSyncKey</fieldValue>
</extensionField>
<!--// term #2 source sync key-->
<extensionField xmlns="http://www.imsglobal.org/services/common/imsCommonSchema_v1p0">
<fieldName>course/template/terms/2/SourceTermSyncKey</fieldName>
<fieldType>String</fieldType>
<fieldValue>Term2SourceTermSyncKey</fieldValue>
</extensionField>
<!--// term #2 new sync key-->
<extensionField xmlns="http://www.imsglobal.org/services/common/imsCommonSchema_v1p0">
<fieldName>course/template/terms/2/NewTermSyncKey</fieldName>
<fieldType>String</fieldType>
<fieldValue>Term2NewTermSyncKey</fieldValue>
</extensionField>
</extension>


Creating courses and course groups