eHUB Provider API Design

RESTful Design

The eHUB API is a REST API over HTTP. RESTful applications are designed to work the way the web works, using HTTP verbs (GET, POST, PUT and DELETE) to operate on resources. However, it does not use hyperlinks (i.e. embedded links within the returned response), but instead it's up to the developer to get possible necessary information from a previous response when creating a request.

Authentication

The eHUB API uses the standard HTTP Authorization header for authentication. Therefore the Authorization header is required in all eHUB API requests. See the security page for more information.

Versioning

The API uses the semantic versioning scheme with the major version number being included in the path element of the url (e.g. /{version}/checkouts/{checkoutId}). If new functionality is added or changes are made which aren't backwards compatible, we will increment the major version and provide new calls or incompatible ones under the new version number. The old version will only be decommissioned if the transition of API clients to the new API version is complete. Field additions to existing calls are seen as non-breaking changes, thus API clients should be able to handle new fields in all responses without any code changes. The current version of API is v1.

Response Format

The eHUB Provider API is a RESTful API based on the JSON format for data exchange. All requests and responses are in JSON format.

Encoding

All eHUB Provider API responses are UTF-8 encoded.