Introduction
The Blanchard Exchange API is here to help you integrate Blanchard Exchange with platform of choice. Note that this API is also referred to as the "Learnifier API", since Blanchard Exchange is built on top of the Learnifier platform.
Understanding Blanchard Exchange Hierarchy
If you have not worked with Blanchard Exchange, previously, the following diagram provides a breakdown of the different interfaces and provides some background on the different endpoints available in the API.
Getting Started
In order to utilize the API, you will need an API key (see "API Authentication" below). Separately, it is recommended to work with the API through our Blanchard Exchange sandbox, prior to implementing the API in your production account.
To request an API key and access to a sandbox environment for testing purposes, please submit a request to our Technical Services team. Be sure to include your company name in the request and that you are requesting an API key & sandbox account.
Also, if your organization has not used Blanchard Exchange previously, please ensure that your organization meets the technical requirements found here.
REST API
The API is a RESTful API, with predictable resource-oriented URLs. The API uses standard HTTP verbs like GET, POST, PUT and DELETE. You can use any standard HTTP client to talk to the API.
All IDs are strings
All unique identifiers in the API are case sensitive strings and consist of alphanumeric characters.
All timestamps are UTC
Timestamps returned by the API are in the UTC timezone and in ISO8601 format.
All requests must be over HTTPS
Requests to the API must be made using HTTPS. Please remember to have your client validate SSL certificates.
All data must be encoded as UTF-8
Please encode all data using UTF-8. We will always return UTF-8 encoded responses.
All data must be valid JSON
We expect all data to be valid JSON, and will return HTTP error 400 Bad Request otherwise.
Always set the required headers
As we only support JSON data, the API expects the Content-Type header to be set to application/json.
API Authentication
This is the authentication procedure for Learnifier REST API. The system is using HTTP Basic authentication. The authentication is based on a pair of keys called: key and secret. Another term for key is username and the alternative term for secret is password.
The “key” will be (clearly) exchanged between the systems, while the “secret” will be used to create the concatenated parameter. The call will be executed as described, and the Authorization parameter must be added to its header as follows:
Authorization: Basic <code>
The code value is simply the “key” and “secret” concatenated with a colon (‘:’) in between. This is an example of the pseudo-code generation:
$code = $key . ‘:’ $secret);
request.sendHeaderLine( ‘Authorization: Basic ‘ + base64($code) )
additional header row for post call:Authorization: Basic . $code
API ENDPOINTS
Production API Endpoint: https://www.blanchardexchange.com/api/v1/
Sandbox API Endpoint: https://sandbox.blanchardexchange.com/api/v1/
Orgunit Identifier: Log into the Corporate Portal interface - the Orgunit ID will be listed at the end of the URL. Example: ".../home/{Orgunit}" (note that Sandbox accounts will typically have a different identifier compared to Production accounts).