Introduction

Emsisoft is introducing a public API for customers. The Emsisoft API is built on HTTP and it:

  • Uses built-in HTTP capabilities for passing parameters and authentication. It is resource oriented and includes the attribute routing.
  • Responds with standard HTTP response codes to indicate errors. Also includes respond errors in a standardized format.
  • Consumes and returns JSON.

Authentication


Each API request must include an Api-Key header and Accept header. Requests with a request body (typically PUT and POST requests) must also include a Content-Type header.

GET https://api.emsisoft.com/license?product=EAM&license=XXX-XXX-XXX-000
Api-Key: DA46E832411D45C532C5AA4979C399D2
Accept: application/json

Access to the Emsisoft API is available only for authorized users. You can request an API key via [email protected]. Obtaining an API key gives you access to the Emsisoft API and identifies you when calling API functions. All API requests should be made over HTTPS.

Some requests require obtaining of additional permissions. Workspace management requests also require a key to be assigned to a specific partner account.


Errors


API returns standard HTTP response codes. For non-success conditions the error response also contains a single JSON object. This object have a name/value pair named "error" with name/value pairs with the names "code", "message" and "target".

{
  "error": {
    "code": "InvalidArgument",
    "target": "WorkspaceName",
    "message": "Workspace name already in use."
  }
}