When things go wrong, the SIS APIs will return an error code, typically as an integer value. These are the error codes you may see.
Users & Enrollment Services
The following codes and messages may be returned from Users & Enrollments services. (Values in brackets  are replaced with actual values.)
||Happy Path!!! Nothing additional needed.|
|-2147219961||The email address [email] is invalid. The email address format is not valid.||Correct the offending email(s) and resubmit the file/request.|
|-2147219964||User invalid for the following reasons: The user property [property] requires a value. Either the user property is missing or has no value.||Add the offending property and resubmit the file/request.|
|-2147219965||The password [password] is invalid. The following characters are not permitted: %][+<>";'=:/|\_ ;||Modify the offending password and resubmit the file/request.|
|-2147219966||This login ID [loginID] is not valid. The following characters are not permitted: %][+<>";'=:/|\ ;||Modify the offending loginID and resubmit the file/request.|
|-2147220218||Invalid RoleID = 0 (See Note below.)||Work with your SCO Representative to ensure default roles are set on all enrollabel nodes.|
|-2147220471||The course is not enrollable.||Work with your SCO Representative to modify the course to enrollable.|
|-2147220476||The wait list is full. Need an override to enroll student.||Using the Admin Pages, increase the "Maximum Waitlist" value on the offending course(s) and resubmit the file/request.|
|-2147220477||Couldn’t enroll user – Course cannot be found based on Call Number provided.||Confirm the referenced call number is correct and that the course exists in LS and once corrected resubmit the file/request.|
|-2147220479||The class is full. Need an override to enroll student.||Using the Admin Pages, incease the "Maximum Enrollment" value on the offending course(s) and resubmit the file/request.|
|-2147220717||An attempt was made to associate a login id with a sourced id, but it is already associated with a different sourced id.||A login id can only be associated with one sourced id. Confirm the offending sourced id is valid and if so work with your SCO Representative to have the user(s) sourced id cleared in the Pearson backend.|
Note on error -2147220217: In the case of a new user, LearningStudio needs to first enroll the user in the node the course resides in before it can enroll the user in the course. If the course in the enrollment request is associated with a node that is set to not allow enrollments, then the following error message is returned:
- -2147220217; User cannot be created since no valid node or course enrollment was supplied
Although the error message “user cannot be created” suggests there was an issue with the user, in this case, the underlying issue is that the user could not be enrolled in the node the course is associated with.
Note on error -2147220218: Every enrollable node needs to have a default role assigned to it. Roles have values such as “Administrator”, “Student”, “Dropped Student”, etc. These default roles should have been set up before you use the system, but if they were not set up properly, you will receive the following error message:
- -2147220218; Invalid RoleID = 0
If you receive this error, please contact your SCO Representative and have them set the default roles for each enrollable node in your node structure.
Note on error -2147220474: If terms are not configured properly, they can cause enrollment errors. Be sure that the last date to add and last date to drop are specified when creating a term. Otherwise, when attempting to enroll, you will receive this error:
- -2147220474; The add date has passed. Need an override to enroll student.
Important: In addition, there are three "successful" conditions where a message will not be returned in a response from the web service. This was done intentionally by the service's architects for performance reasons and for these three conditions a successful request is implicitly implied. The three conditions are:
- The user is already enrolled in the course specified in the request.
- The user is already enrolled in the node specified in the request.
- A user update was performed and only a user’s extended user properties were updated, i.e. no core user properties were updated.
If you are using a .NET framework, you may receive the following errors:
|Web service is unavailable||The underlying connection was closed: Unable to connect to the remote server|
|Required WSS Username token was not supplied||
Failed to call the Webservices: Value cannot be null.
|Invalid Username token was used||Microsoft.Web.Services2.Security.SecurityFault: The security token could not be authenticated or authorized.|
|Password was not the required PasswordDigest type||Failed to call the Webservices: The security token could not be authenticated or authorized.|
|Web service call uses invalid web method parameters, including a badly formed XML request||Failed to call the Webservices: The security token could not be authenticated or authorized|
|XML violates the IMS schema error in schema validation||Failed to call the Webservices: Failed to process batch user IMS request XML elements are out of order below.)|
Note: The following is an example of an error message to a file with XML elements out of order, violating the IMS schema validation. To validate against the IMS schema, elements must follow the order as specified in the schema: person elements, group elements, and then membership elements.
As the following example shows, the enterprise (top level element) has a child that is invalid. The child is a group and it is expected to find membership. A group element was incorrectly placed after a membership element.
- <result type="Error in Schema Validation"><span class="geshifilter"><code class="text geshifilter-text">-2147220720</code></span> <message>The element 'http://schemas.ecollege.com/Common/2006/01/ims_epv1p1.xsd:enterprise' has invalid child element 'http://schemas.ecollege.com/Common/2006/01/ims_epv1p1.xsd:group'. Expected 'http://schemas.ecollege.com/Common/2006/01/ims_epv1p1.xsd:membership'. An error occurred at ,(133, 4).</message></result><extension></extension>
Should there be a security error, or other problem with the SOAP message, the Users & Enrollments service returns a SOAP message to your system with a SOAP fault detailing the particular problem. The LearningStudio server responds to your system with an HTTP status code of 500. When you initially set up your web services integration, it is helpful to capture the full response with the SOAP message, as well as the HTTP response. In some systems, the 500 status might terminate the HTTP response stream; thus, the program might not receive the details of the SOAP fault.
When you send your SOAP request to process user information, the web service will reply with a SOAP response indicating the status and outcome of your request (asynchronous web service calls will respond with a Job ID). If the SOAP request was incorrect, the web service will respond with an error message.
Terms and Courses
The following codes and messages may be returned from the Terms and Courses services. Values in brackets are replaced with actual values.
|Error Code (if given)||Error Message/Description|
Returned by the Create a Term service when you use an invalid client string. This was added in version 2.2 of the service.
Returned by the Create a Term service when you use an invalid client sort string (node identifier). This was added in version 2.2 of the service.
Other Common Errors
For Username and Password issues, make sure you're using the security credentials exactly as they were provided to you by your SCO representative.
For User Management, make sure your XML data includes all required elements and that the XML conforms to the Pearson eCollege interpretation of the IMS schema (refer to the Pearson eCollege Annotated Guide to the IMS Specification).