ExaVault API v1.2

The ExaVault API v1.2 supports existing integrations that use named operations such as getUsers and copyResources. Calls use /v1.2/ URLs, and the response body reports whether the operation succeeded. A 200 HTTP status alone does not establish success.

The legacy API overview explains support for migrated integrations and when to use the modern Files.com API.

Connecting to the API

Use your account's subdomain address, such as mysite.files.com, for all legacy version 1.2 calls. ExaVault API Authentication explains the API keys and session tokens these calls use.

Status Codes

The legacy ExaVault API 1.2 returns only two HTTP status codes for its responses: 200 and 500. It does not support traditional REST response codes such as 201 for inserting new records.

When the request can be parsed, the response status code is 200, regardless of whether the requested action can be taken. For example, the response to a getUser request for a user that does not exist in your account has an HTTP status of 200, indicating that the request was received and processed, while the error member of the returned response object contains an error object.

When a malformed request is received, a 500 HTTP status is returned, indicating that the request could not be processed.

Response Format

When a response is returned by the API, the response body object includes properties for success, results, and error.

The results property of the response body contains the relevant data, such as a list of deleted resources for the Delete Resources operation or the information about a new access token for the Authenticate With Password operation. The results property may be empty if there is no relevant information returned by the operation, or it may be null if an error occurred.

The success property of the response body indicates whether the request was processed without generating an error, and contains either 0 or 1.

When the success property is 1, the operation is successful and the error property is null. When the success property is 0, the operation failed, and the error property contains an error object.

The error object contains code and message properties that describe the error that occurred.

Example Successful Response Body

This example is for a successful Logout operation. The HTTP status code returned with this response is 200.

{
  "error": null,
  "results": [],
  "success": 1
}

Example Failed Response Body

This example is for a failed Authenticate With Password operation. The HTTP status code returned with this response is 200, even though the operation failed.

{
  "error": {
    "code": 100,
    "message": "Invalid username or password"
  },
  "results": null,
  "success": 0
}