Explanation
API Beta
On this page
The Conclude API lets your own systems work with Conclude. You can look up channels, manage connections between Slack and Microsoft Teams, and read the audit log. This page is for developers who connect a tool, such as an IT helpdesk system, to Conclude.
What you can do
- Describe your organization and its Slack workspaces and Microsoft Teams tenants.
- Find channels by name or by their Slack or Teams ID.
- List, create, repair and remove connections, and change the settings of each side.
- Read the audit log.
The API follows the web app. More areas, such as activities and chats, become available one at a time.
Beta
The API is in beta. The Admin console > Users and access > API keys page appears only for organizations in the beta program. Contact us to join.
During the beta, fields and error codes may still change. We tell beta customers before they do. After the beta, an endpoint only gains fields. Renaming or removing a field needs a new API version.
Base URL
Send every request to https://api.conclude.io. Every path starts with the API version, /v1.
How a request works
- An admin issues an API key under Admin console > Users and access > API keys .
- Your tool exchanges the key for an access token at
POST /v1/oauth/token. - Your tool sends the token in the
Authorizationheader of each request.
curl https://api.conclude.io/v1/oauth/token \
-d grant_type=client_credentials \
-d client_id="$CLIENT_ID" \
-d client_secret="$CLIENT_SECRET"
curl https://api.conclude.io/v1/connections \
-H "Authorization: Bearer $ACCESS_TOKEN"
Keys and tokens explains keys, scopes and tokens.
Conventions
These rules apply to every endpoint.
- Requests and responses are JSON. Send
Content-Type: application/jsonwith a request body. - Names of fields and parameters use camelCase, with
IDin capitals, as inchannelID. - Field names in a request body match regardless of case. Conclude ignores fields it doesn’t know.
- A successful request returns
200. A failed request returns an error status and an error body. - A response leaves out fields that have no value. An empty list is
[]. - Times use RFC 3339 and UTC, for example
2026-10-27T14:03:12.52Z. - Call the API from a server. It doesn’t support calls from a browser. Your key’s secret must never reach a browser.
IDs are strings. Each one starts with a prefix for its type. Treat an ID as opaque, and don’t build or parse one.
| Prefix | Type |
|---|---|
O- | Organization |
T- | Slack workspace, Microsoft Teams tenant or team |
C- | Channel |
U- | User |
Y- | Connection |
B- | Bridge |
J- | API key |
N- | Agent |
Slack and Microsoft Teams have their own IDs for the same things. Conclude calls them sys IDs, as in sysChannelID.
Reference
- Keys and tokens: API keys, scopes and access tokens.
- Errors and limits: the error body, error codes and rate limits.
- Organization and channels: your key, your organization and channel lookup.
- Connections: connections and their endpoints.
- Audit log: the organization’s audit events.
To see the API at work, follow Connect channels for a requester.
Web forms and inbound email use other endpoints, which need no API key. See HTTP endpoints.