Overview
The following is a general overview of available RESTful API functionality Adeptive has to offer third-party partners looking to build an integration with Resware. The Resware APIs can easily be accessed in any language via web services that support JSON or XML, and a DLL for implementation in .NET environments is provided for your convenience.
Click here for a copy of this guide.
Accessing the API
There are two options for working with the API.
- Generate a valid XML or JSON request and send it to the appropriate URL.
- Use the Microsoft .NET DLL’s provided with the API. The DLLs provide CLR objects that automatically handle requests to the API.
Authentication and Authorization
In order to access the API, a valid username and password is needed that has been set up with website access as well as any specific roles that are required for the individual web service calls needed. Credentials are passed in the username and password header entries or via standard the HTTP “Authorization” header. Credentials are required for every request.
Authorization
Resware has a built-in Role-Based Access Control (RBAC) model that is invoked for each inbound integration request. Based on the configuration of a given Resware installation, certain out-of-the-box functionality may not work as described if it has been disabled for the integration partner.
The following is available with our RESTful APIs:
Actions |
|
Closing Fee Estimate |
|
Current User |
|
Custom Fields |
|
Documents |
|
Files |
|
Notes |
|
Orders |
|
Partners |
|
Parties |
|
Transaction Types and Product Types |
|
Internal Documents and Users
Internal documents can be retrieved via the RESTful API when it is requested by a web-enabled internal user only if being used for internal integration access. Giving partner employees access to view internal documents is NOT supported; internal users must be given access to the website.
Configuration
To configure a web-enabled internal user, access to the Resware database is needed.
- Update the internal user’s ID and run the following script to give an internal user Resware website/API access:
BEGIN TRAN
UPDATE GeneralUser
SET HasWebsiteAccess = 1
WHERE UserID = XXX --REPLACE XXX WITH THE UserID OF THE INTERNAL USER
COMMIT
- Next, the Resware admin will need to make sure the internal user has the appropriate Website and API Roles enabled, as necessary. For this example, we are granting RoleIDs: (52) Request New File & (6006) Web Services: Get Documents so that the internal web/API user can complete step 3 of this setup to ultimately be able to retrieve internal documents via the API.
BEGIN TRAN
INSERT INTO UserRole (UserID,RoleID)
VALUES (XXX,52), (XXX,6006) --REPLACE XXX's WITH THE UserID OF THE INTERNAL USER. THIS GIVES RoleID (52)Request New File & (6006)Web Services: Get Documents TO THE INTERNAL WEB/API USER
COMMIT
- Lastly, log into the Resware website with the internal user’s credentials at least once to process the password reset. Once completed, the internal user should be able to proceed with requesting internal documents via the RESTful API as an internal web/API user.
Troubleshooting/FAQ
When I request my internal document via the API, I am getting an error indicating that my username or password is invalid.
Be sure that you have the correct username/password combination. Also, ensure that you have completed step 3 of the setup process. A password reset is required for all new website accounts.
When trying to log into the Resware website as an internal web/API user, I am getting an error indicating that my account is not enabled for website access.
Check to make sure that your internal user has website access enabled. See step 1.
When trying to log in to the Resware website as an internal web/API user, I am getting an error indicating that my account does not have permission to access a page.
Check to make sure that your internal user has at least 1 website role enabled so that you can log into the Resware website. RoleID: 52, for example. See step 2 above.
When trying to request a document via the RESTful API as an internal web/API user, I am getting an error indicating that my account does not have permission to access that document.
Check to make sure that you have enabled the Get Documents role for this internal user. See step 2 and ensure that RoleID: 6006 is added to the internal web/API user in the database.