Skip to content

Getting started with the CloudERM API ​

CloudERM has a REST API for connecting your own systems to it: an accounting package, a customer portal, or a script that keeps another system in step. Requests and responses are JSON, and every endpoint lives under one base URL:

https://api.clouderm.com/v1

The API reference lists every endpoint, with its parameters, request and response bodies, and a Try it panel.

1. Get a service credential ​

An integration signs in with a service credential: a key id (cerm_k_…) and a secret (cerm_s_…). A CloudERM org admin creates one under Platform Settings → Service Credentials and chooses the role it acts as. The secret is shown once, so store it somewhere safe straight away. Authentication covers roles, expiry, rotation and revocation.

2. Sign a request ​

The secret never travels over the network. Instead, each request carries four headers, one of them a signature computed from the request and your secret. Copy one of the signing samples in Authentication (Node, Python or bash), then:

bash
export CLOUDERM_KEY_ID=cerm_k_...
export CLOUDERM_SECRET=cerm_s_...
node sign.mjs GET /v1/platform/facilities

It prints the four x-clouderm-… headers for that request.

3. Call an endpoint ​

Send the request with those headers. With the bash sample and curl:

bash
headers=()
while IFS= read -r line; do headers+=(-H "$line"); done \
  < <(./sign.sh GET /v1/platform/facilities)
curl "https://api.clouderm.com/v1/platform/facilities" "${headers[@]}"

You get back the organization's facilities as JSON. If you get a 401, the message says why: Unauthorized means the signature wasn't accepted, and Not Authorized. Needs Permissions PLATFORM_FACILITY_VIEW means the credential's role lacks that permission. See Authentication.

Next ​

The reference leaves out routes an integration can't use, such as the web app's own sign-in and password screens. The complete raw specification, including those staff-only and app-internal routes, is at api.clouderm.com/docs/openapi.json.

CloudERM User Documentation