createPersons

Method description

createPerson is the method used to create one or more new persons in itslearning

Preconditions for use

None.

Message Schema

Input parameters / request message elements

Name

Description

Data type

Allowed values

M/O

<personIdPairSet>

Wrapper for a list of personIdPair elements

M

<personIdPair>

Wrapper for a set of one <sourceId><identifier> and one <person> element

M

<sourceId><identifier>

The syncID of the person to be inserted

Text

Max 64 chars

M

<person>

The Person data to be stored in the new record. Refer to Managing persons for full details on the person object

Object

M

Please refer to the WSDL for the full element structure, only key elements are described here

Response message elements

Name

Description

Data type

<createPersonsResponse>

Empty response element

Empty

Comments

Note! If the syncID already exists in itslearning, the person with the syncId will be updated instead.

For each <identifier> in the request you will get a status in the <statusinfoSet><status> in the response. The order of the <statusInfoset><status> corresponds to the the order of the <identifier> in the request.

Example

Description

I want to create the following two persons in itslearning

  • syncID=333222

  • syncID=333444

Example request message

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ims="http://www.imsglobal.org/services/common/imsMessBindSchema_v1p0" xmlns:ims1="http://www.imsglobal.org/services/pms/xsd/imsPersonManMessSchema_v1p0" xmlns:ims2="http://www.imsglobal.org/services/common/imsCommonSchema_v1p0" xmlns:ims3="http://www.imsglobal.org/services/pms/xsd/imsPersonManDataSchema_v1p0">
<soapenv:Header>
<ims:syncRequestHeaderInfo>
<ims:messageIdentifier>1234567890</ims:messageIdentifier>
</ims:syncRequestHeaderInfo>
</soapenv:Header>
<soapenv:Body>
<ims1:createPersonsRequest>
<ims1:personIdPairSet>
<ims1:personIdPair>
<ims1:sourcedId>
<ims2:identifier>333222</ims2:identifier>
</ims1:sourcedId>
<ims1:person>
<ims3:formatName xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
<ims3:name>
<ims3:partName>
<ims3:namePartType>First</ims3:namePartType>
<ims3:namePartValue>Marilyn</ims3:namePartValue>
</ims3:partName>
<ims3:partName>
<ims3:namePartType>Last</ims3:namePartType>
<ims3:namePartValue>Monroe</ims3:namePartValue>
</ims3:partName>
<ims3:partName>
<ims3:namePartType>Nick</ims3:namePartType>
<ims3:namePartValue>The Blonde Bombshell</ims3:namePartValue>
</ims3:partName>
</ims3:name>
<ims2:email>marilyn@mail.com</ims2:email>
<ims3:userId>
<ims2:userIdValue>marmon</ims2:userIdValue>
<ims2:passWord>123</ims2:passWord>
</ims3:userId>
<ims3:address/>
<ims3:demographics>
<ims3:bday>1926-06-01</ims3:bday>
</ims3:demographics>
<ims3:institutionRole>
<ims3:institutionRoleType>Student</ims3:institutionRoleType>
<ims3:primaryRoleType>true</ims3:primaryRoleType>
</ims3:institutionRole>
<ims3:tel>
<ims3:telType>Mobile</ims3:telType>
<ims3:telValue>7412689</ims3:telValue>
</ims3:tel>
<ims3:tel>
<ims3:telType>Voice</ims3:telType>
<ims3:telValue>55567645</ims3:telValue>
</ims3:tel>
</ims1:person>
</ims1:personIdPair>
<ims1:personIdPair>
<ims1:sourcedId>
<ims2:identifier>333444</ims2:identifier>
</ims1:sourcedId>
<ims1:person>
<ims3:formatName xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
<ims3:name>
<ims3:partName>
<ims3:namePartType>First</ims3:namePartType>
<ims3:namePartValue>Johnny</ims3:namePartValue>
</ims3:partName>
<ims3:partName>
<ims3:namePartType>Last</ims3:namePartType>
<ims3:namePartValue>Cash</ims3:namePartValue>
</ims3:partName>
<ims3:partName>
<ims3:namePartType>Nick</ims3:namePartType>
<ims3:namePartValue>The Man in Black</ims3:namePartValue>
</ims3:partName>
</ims3:name>
<ims2:email>johcas@mail.com</ims2:email>
<ims3:userId>
<ims2:userIdValue>johcas</ims2:userIdValue>
<ims2:passWord>123</ims2:passWord>
</ims3:userId>
<ims3:address/>
<ims3:demographics>
<ims3:bday>1999-03-22</ims3:bday>
</ims3:demographics>
<ims3:institutionRole>
<ims3:primaryRoleType>true</ims3:primaryRoleType>
</ims3:institutionRole>
<ims3:tel>
<ims3:telType>Mobile</ims3:telType>
<ims3:telValue>187233</ims3:telValue>
</ims3:tel>
<ims3:tel>
<ims3:telType>Voice</ims3:telType>
<ims3:telValue>54777623</ims3:telValue>
</ims3:tel>
</ims1:person>
</ims1:personIdPair>
</ims1:personIdPairSet>
</ims1:createPersonsRequest>
</soapenv:Body>
</soapenv:Envelope>

Example response message

In this example, the second insert failed because of missing mandatory data (institutionRoleType)

<s:Envelope>
<s:Header>
<h:syncResponseHeaderInfo>
<messageIdentifier>1234567890</messageIdentifier>
<statusInfoSet>
<statusInfo>
<codeMajor>success</codeMajor>
<severity>status</severity>
<messageIdRef>1234567890</messageIdRef>
</statusInfo>
<statusInfo>
<codeMajor>failure</codeMajor>
<severity>error</severity>
<codeMinor>
<codeMinorField>
<codeMinorName>personmanagement</codeMinorName>
<codeMinorValue>incompletedata</codeMinorValue>
</codeMinorField>
</codeMinor>
<messageIdRef>1234567890</messageIdRef>
<description>
<language>en-US</language>
<text>Some mandatory part of the data has been detected as missing by itslearning (ns0:InstitutionRoleType)</text>
</description>
</statusInfo>
</statusInfoSet>
</h:syncResponseHeaderInfo>
<o:Security s:mustUnderstand="1">
<u:Timestamp u:Id="_0">
<u:Created>2011-02-16T13:34:10.465Z</u:Created>
<u:Expires>2011-02-16T13:39:10.465Z</u:Expires>
</u:Timestamp>
</o:Security>
</s:Header>
<s:Body>
<createPersonsResponse/>
</s:Body>
</s:Envelope>