SOAP Users API with Web Services 1.0
Overview
You can generate a skeleton input for each operation in the users WSDL, which contains 4 operations:
- addUsers
- updateUsers
- getUser
- resetPassword
For each operation, there are 3 fields that are always required in the header:
- sessionID
- category:Users
- schemaLocation
SOAP API | Description | Required Input Variables | Success Response Variables | Failure Response Variables |
---|---|---|---|---|
addUsers | Adds a user through SOAP. When multiple users are created using this method, the entire request is processed before a response is sent. |
sessionID category schemaLocation login company_name type first_name super_user_access_perm unplugged_default_check_in separate_ship_addr is_notify_email
Note: These fields are the minimum requirement to add a user. The following fields will be set with default values if not set in the web services API.
bm_language: English currency_preference: US Dollar number_format: ####.## date_format: MM/dd/yyyy h:mm time_zone: (GMT-5:00 GMT-4:00) US Eastern Time |
status: success message
detailedStatus:
record |
exceptionCode exceptionMessage |
updateUsers | Updates user information through SOAP. |
sessionID category schemaLocation login super_user_access_perm unplugged_default_check_in separate_ship_addr is_notify_email |
status: success message
detailedStatus:
record |
exceptionCode exceptionMessage |
getUser | Grabs user information through SOAP. |
sessionID category schemaLocation login |
status: success message
userInfo:
login first_name variable_name |
exceptionCode exceptionMessage |
resetPasswords | Resets user passwords through SOAP. |
sessionID category schemaLocation login |
status: success message
|
exceptionCode exceptionMessage |
Administration
Accessing User WSDL and Generating Skeleton Input
- Navigate from Admin Home Page > Integration Platform > Web Services.
- Click the Users tab.
- Select an API from the drop-down menu.
- Enter a User Login.
- Click Generate Input to retrieve the skeleton.
Sample Users APIs
You'll need to use a generic user login, or even your own, to generate the input XML. You can replace the username, password, and other user details.
<?xml version="1.0" encoding="UTF-8"?> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Header> <bm:userInfo xmlns:bm="urn:soap.bigmachines.com"> <bm:sessionId>9ED35D4B82D521B3650084C851D86B42</bm:sessionId> </bm:userInfo> <bm:category xmlns:bm="urn:soap.bigmachines.com">Users</bm:category> <bm:xsdInfo xmlns:bm="urn:soap.bigmachines.com"> <bm:schemaLocation>https://myCompany.bigmachines.com/bmfsweb/pm/schema/v1_0/users/Users.xsd</bm:schemaLocation> </bm:xsdInfo> </soapenv:Header> <soapenv:Body> <bm:addUsers xmlns:bm="urn:soap.bigmachines.com"> <bm:User> <bm:each_record> <bm:company_name>PM</bm:company_name> <bm:login>jimmyuser</bm:login> <bm:password>testpass</bm:password> <bm:type>FullAccess</bm:type> <bm:first_name>Jimmy</bm:first_name> <bm:last_name>User</bm:last_name> <bm:job_title/> <bm:email>juser@bigmachines.com</bm:email> </bm:User> </bm:addUsers> </soapenv:Body> </soapenv:Envelope>
<?xml version="1.0" encoding="UTF-8"?> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Header> <bm:userInfo xmlns:bm="urn:soap.bigmachines.com"> <bm:sessionId>9ED35D4B82D521B3650084C851D86B42</bm:sessionId> </bm:userInfo> <bm:category xmlns:bm="urn:soap.bigmachines.com">Users</bm:category> <bm:xsdInfo xmlns:bm="urn:soap.bigmachines.com"> <bm:schemaLocation>https://pm.bigmachines.com/bmfsweb/pm/schema/v1_0/users/Users.xsd</bm:schemaLocation> </bm:xsdInfo> </soapenv:Header> <soapenv:Body> <bm:updateUsers xmlns:bm="urn:soap.bigmachines.com"> <bm:User> <bm:each_record> <bm:company_name>PM</bm:company_name> <bm:login>jimmyuser</bm:login> <bm:password>temppass</bm:password> <!--The rest of the user records is the same as the addUsers API shown above --> </bm:each_record> </bm:User> </bm:updateUsers> </soapenv:Body> </soapenv:Envelope>
<?xml version="1.0" encoding="UTF-8"?> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Header> <bm:userInfo xmlns:bm="urn:soap.bigmachines.com"> <bm:sessionId>9ED35D4B82D521B3650084C851D86B42</bm:sessionId> </bm:userInfo> <bm:category xmlns:bm="urn:soap.bigmachines.com">Users</bm:category> <bm:xsdInfo xmlns:bm="urn:soap.bigmachines.com"> <bm:schemaLocation>https://myCompany.bigmachines.com/bmfsweb/pm/schema/v10/ users/Users.xsd</bm:schemaLocation> </bm:xsdInfo> </soapenv:Header> <soapenv:Body> <bm:getUser xmlns:bm="urn:soap.bigmachines.com"> <bm:userInfo> <bm:login>jimmyuser</bm:login> </bm:userInfo> </bm:getUser> </soapenv:Body> </soapenv:Envelope>
resetPasswords - Input SOAP XML
<?xml version="1.0" encoding="UTF-8"?> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Header> <bm:userInfo xmlns:bm="urn:soap.bigmachines.com"> <bm:sessionId>9ED35D4B82D521B3650084C851D86B42</bm:sessionId> </bm:userInfo> <bm:category xmlns:bm="urn:soap.bigmachines.com">Users</bm:category> <bm:xsdInfo xmlns:bm="urn:soap.bigmachines.com"> <bm:schemaLocation>https://myCompany.bigmachines.com/bmfsweb/pm/schema/v10/ users/Users.xsd</bm:schemaLocation> </bm:xsdInfo> </soapenv:Header> <soapenv:Body> <bm:resetPasswords xmlns:bm="urn:soap.bigmachines.com"> <bm:userInfo> <bm:login>jimmyuser</bm:login> </bm:userInfo> <bm:userInfo> <bm:login>jimmyuser2</bm:login> </bm:userInfo> </bm:resetPasswords> </soapenv:Body> </soapenv:Envelope>