Luminate Online Web Services operations return two general types of error codes:
Any request may return one of the following general message errors:
MalformedMessageFault | Malformed XML (wrong encoding, tags missing or unbalanced, etc.) |
InvalidMessageFault | Message violates the WSDL specification (invalid SOAP message or missing, out-of-sequence or invalid elements in the message header or body) |
SessionFault | Missing or invalid session ID in the SOAP header |
UnsupportedOperationFault | Invalid SOAP operation (one not specified in the WSDL) |
ServerFault | Unexpected server error occurred |
LoginFault | Invalid username or password in the login request |
The server returns all message errors as standard SOAP faults:
<?xml version='1.0' encoding='UTF-8'?> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <soap:Fault> <soap:faultcode>MALFORMED_MESSAGE</soap:faultcode> <soap:faultstring>SOAP header element is missing</soap:faultstring> <soap:detail> <MalformedMessageFault xmlns="urn:soap.convio.com"> <line>2</line> <column>1</column> </MalformedMessageFault> </soap:detail> </soap:Fault> </soap:Body> </soap:Envelope>
Note that the faultcode element specifies the type of error, with the corresponding information in the detail element.
Record error codes are consistent with those returned by the constituent ReST API (except for the one pertaining to the "post" method):
Code | Number | Description |
---|---|---|
OK | 0 | Record processed successfully |
SERVER_ERROR | 1 | Unexpected server error |
TOO_MANY_RECORDS | 5 | Exceeded the maximum number of records for an upload operation |
REQUIRED_FIELDS_MISSING | 10 | Cannot add or update the record because one or more required fields are missing |
MATCH_EXISTING | 11 | Cannot add the record because it matches an existing record |
DUPLICATE_USER_NAME | 12 | Cannot add or update the record because user name matches an existing one |
DUPLICATE_EMAIL | 13 | Cannot add or update the record because email matches an existing one |
MATCH_AMBIGUOUS | 15 | Cannot update the record because multiple records match the search criteria |
RECORD_NOT_FOUND | 16 | Cannot update the record because no matching records were found |
INVALID_FIELDS | 18 | Cannot add or update the record because it includes invalid fields |
The server returns record errors as part of the normal response to an operation:
<?xml version='1.0' encoding='UTF-8'?> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <createResponse xmlns="urn:soap.convio.com"> <Result> <StatusCode>MATCH_EXISTING</StatusCode> <Message>Create failed: one or more existing records found that match.</Message> <PrimaryEmail>augustus9@yahoo.com</PrimaryEmail> </Result> <Result> <StatusCode>MATCH_EXISTING</StatusCode> <Message>Create failed: one or more existing records found that match.</Message> <PrimaryEmail>elvis9@gmail.com</PrimaryEmail> </Result> <Result> <StatusCode>MATCH_EXISTING</StatusCode> <Message>Create failed: one or more existing records found that match.</Message> <PrimaryEmail>python9@gmail.com</PrimaryEmail> </Result> </createResponse> </soap:Body> </soap:Envelope>