Skip to content

API overview

QELM exposes a JSON API for connecting other tools to your workspace and for the QELM mobile app. This page is an overview of how the API works: where it lives, how it is versioned, how you authenticate, and what the requests and responses look like.

All API requests go to:

https://api.qelm.app

The API is a workspace-scoped JSON service: requests act within a single company’s workspace, and responses contain only that workspace’s data.

The API is versioned in the path. The current version is v1:

https://api.qelm.app/api/v1/...

Pinning to a version means a future revision will not silently change the shape of the responses your integration depends on. New, incompatible behavior ships under a new version path rather than breaking the existing one.

How you authenticate depends on what is calling the API:

  • Web sessions — when you are signed in to your workspace in the browser, requests are authenticated with your session.

  • Mobile and integrations — the mobile app and other programmatic clients authenticate with a bearer token sent in the Authorization header:

    Authorization: Bearer <token>

Either way, every authenticated request is tied to a single workspace, and the API only ever returns data belonging to that workspace.

Requests and responses are JSON. Send Content-Type: application/json on requests that include a body. Successful responses return the relevant resource as JSON; errors return a JSON body describing what went wrong, alongside the appropriate HTTP status code.

Build against the versioned /api/v1 paths and authenticate with a bearer token, and your integration will stay in step with the API as it evolves. If you need the exact shape of a particular endpoint, get in touch through Support and we will point you at it.