1. Get an API key
1
Open your workspace settings
In the dashboard, head to Settings → API. Workspace owner access is
required.
2
Create a credential
Label it with where it will run, something like
billing-service or
staging. That label is what you check later when deciding if a revoke is
safe.3
Copy the token
It begins with
mdsk_api_ and appears only once. We keep a hash, not
the token itself, so it cannot be shown again. Lost it? Revoke and create a
fresh one.2. Open a ticket
priority and
category since you left them blank, and language was detected from the
message body. Values you set yourself are preserved as-is.
Notice there is no subject field. That is intentional. The first message is
the ticket’s description, so there is nothing for you to invent.
Verified and unverified requesters
is_verified is false here because an email address alone does not prove
identity.
If your own system has already authenticated this person, pass that along with
external_id:
external_id is your assertion that you authenticated them. The
requester is then stored as verified, and your agents can trust that.
3. Read the conversation
4. Reply
"visibility": "internal" and nobody outside the
workspace hears about it.
5. Close it
Where to go next
API reference
Every endpoint, each with a playground on the page.
Idempotency
Read this one before putting ticket creation behind a retry.
Set up a channel
Most conversations should arrive on their own, not through the API.
Connect an AI agent
Point Claude or ChatGPT at your queue.