This guide is intended for developers who need to communicate remotely with the uBoost platform via web services. It assumes basic knowledge of network terminology, programming, and RESTful interfaces. By consuming web services through this API (application programming interface), you can automatically create accounts, award points, single-sign-on (SSO) your student from your LMS to uBoost, manage student groups, and award custom badges.
uBoost web services are designed around RESTful principles. In order to access these web services, you will need login credentials for HTTP Basic Authentication and the ability to communicate over HTTPS/TLS. uBoost only accepts web service calls encrypted over the HTTPS protocol.
HTTP status codes are used to indicate success/failure. 200 indicates successful viewing or deleting of data. 201 indicates the successful creation of a new resource. Currently, two failure codes are used: 404 indicates the resource requested was not found, 422 indicates a failure to create the resource with the parameters given. Human-readable error information will be returned in the XML body in addition to the error codes, which is useful for debugging.
The programming examples are given as cURL commands, which are useful for testing, experimenting, and conceptualizing. However, in actual development you should use your favorite RESTful web service package for your particular development platform. These packages provide higher-level calls that effectively generate the same curl commands listed in this guide.
Typical Development Process
uBoost will create your site in our demonstration environment, and issue you your uBoost web service login credentials. Upon receiving your credentials, you may start your integration effort. In the meantime, we will also be asking you to provide optional custom design elements you may wish to supply, as well as your corporate logo and colors. During development, there are usually 4 touch points between your system and uBoost:
- Automatically create users in uBoost when an account is created on your site.
- Have a link(s) for users to navigate to uBoost from your site via SSO.
- Display user's current point balance at select areas on your site.
- Automatically issue points to users in uBoost when they complete activities you wish to reward them for.
Setting up and creating users under applicable groups is highly recommended. Optionally, if you have custom badges setup with uBoost you will need to capture the events in your system that lead to badge award and trigger the award itself in uBoost via web services.
We will be creating your site in our production environment as your roll-out date nears. After your integration and QA is completed, final deployment may need to be coordinated with uBoost if you have existing users and point balances that need to be imported. During actual deployment, your site will need to be temporarily brought down to freeze any new account creation or point-earning activity while initial users are being populated in uBoost. Alternatively, you may handle this with one-time scripts against uBoost web services to account for deltas in accounts and points after initial cut-over. From start to finish, the entire development process can take anywhere from 2-8 weeks.