TOPdesk API Documentation
This is the complete API documentation for connecting to the TOPdesk API using MindCloud's Universal API. If you are new to MindCloud, start with the Introduction to see how one API can sit in front of many different apps.
MindCloud is an integration company that offers one normalized API to access 3,100+ apps from a single place. It cleans up provider-specific quirks, keeps requests and responses consistent, and centralizes authentication so you do not need to manage separate flows for every app. Browse other apps.
Meet TOPdesk: Manage service tickets, assets, and self-service workflows in TOPdesk. Keep reading to get started.
Quickstart
Before you run your first TOPdesk request, you need three things:
- A MindCloud account — sign in or create an account at MindCloud.
- A MindCloud API Key — create one in API Keys. Keep it on your server.
- At least one TOPdesk connection — create or choose one in Connections. Note its
connectionId.
Every TOPdesk action uses the same URL pattern:
POST https://connect.mindcloud.co/v2/universal/apps/tOPdesk/actions/{actionSlug}/runYou need a MindCloud API Key and a TOPdesk connection. Then call an action such as List Incident Statuses:
curl --request POST \
--url "https://connect.mindcloud.co/v2/universal/apps/tOPdesk/actions/list-incident-statuses/run" \
--header "Authorization: Bearer $MINDCLOUD_API_KEY" \
--header "Content-Type: application/json" \
--data '{
"connectionId": "$CONNECTION_ID",
"arguments": {}
}'Every response comes back in the same envelope, with your rows in a data array:
{
"success": true,
"data": [
{ "id": "1042", "name": "Ava" }
],
"meta": {}
}After your first request works, use Shape your requests to control arguments, pagination, filtering, fields, and errors.
Authenticate with a MindCloud API Key plus a connectionId for your TOPdesk account. See TOPdesk API Authentication for the full flow and how to get your connection credentials.
TOPdesk actions
All 26 published actions for this TOPdesk version. Each page documents the endpoint, arguments, and response controls.
- POSTAdd Incident Time Spent
- PUTArchive Incident by ID
- POSTCreate Incident
- PUTDeescalate Incident by ID
- PUTEscalate Incident by ID
- GETGet Incident by ID
- GETGet Incident by Number
- GETGet Incident Progress Trail Count
- GETGet Incident Time Spent
- GETList Deescalation Reasons
- GETList Escalation Reasons
- GETList Incident Actions
- GETList Incident Call Types
- GETList Incident Categories
- GETList Incident Priorities
- GETList Incident Progress Trail
- GETList Incident Requests
- GETList Incident Statuses
- GETList Incident Subcategories
- GETList Incident Urgencies
- GETList Incidents
- PUTReplace Incident by ID
- PUTReplace Incident by Number
- PUTUnarchive Incident by ID
- PUTUpdate Incident by ID (Patch)
- PUTUpdate Incident by Number (Patch)
Related apps
More Support apps on the Universal API, behind the same REST shape. Or browse all apps.