The Enclave API is a RESTful API that allows you to manage your Enclave agents and enclaves. This API can be used to automate the creation and management of your agents and enclaves. The API is versioned and is currently in version 1. Documentation for the API can be found here: https://docs.enclave.sidechannel.com/api-docs/latest
The Enclave API can be used for a number of potential use cases. Here are a few examples:
- Integrate with existing CI systems to automatically manage nodes, users, and enclaves
- Integrate with IAM system to manage users and their credentials
- Build your own internal tools to manage and visualize your network
As with most APIs, the Enclave API is versioned. This allows us to make breaking changes to the API without breaking existing integrations. The API version is included in the URL path. For example, the current version of the API is 1. All API endpoints are prefixed with
/api/v1. If we were to make a breaking change to the API, we would increment the version to 2 and all endpoints would be prefixed with
We follow semanic versioning practices. This means that breaking changes will increment the major version number. Non-breaking changes will increment the minor version number. Bug fixes will increment the patch version number. For more information on semantic versioning, see semver.org.
The Enclave API currently uses API keys for authentication. API keys can be generated for your organization in the Enclave Management Console (EMC). You can find the API keys page by clicking
Settings on the left navigation and then clicking
API Keys under the security section.
To successfully authenticate with the API, a
X-Api-Key header must be included in the request. The value of the header should be the API key that you generated in the EMC.
Here is an example CURL request that includes the
curl -X GET \ https://enclave.sidechannel.com/api/v1/nodes \ -H 'X-Api-Key: <YOUR_API_KEY>'