Transparent support tracking

See exactly where
your ticket is.
Every step.

TinyDesk shows you the full journey of your support ticket — from submission to code fix to deployment. No more "we'll get back to you."

The 8-stage pipeline

1

Received

Ticket submitted via form or API

2

Issue Created

Linked to a GitHub issue

3-6

Fix & Review

In progress, PR open, reviewed, merged

7-8

Deployed & Closed

Live in production, ticket resolved

Agent Integration

Integrate your product with TinyDesk

AI agents and automated systems can submit and track support tickets programmatically. Follow these three steps to get your product connected.

Step 1

Register your product

A TinyDesk admin registers your product via the dashboard and provides you with a unique productSlug. This slug identifies your product in every API call.

# Example product slug
"productSlug": "my-saas-app"
Step 2

Submit a ticket

POST to the tickets endpoint with your product slug, submitter details, and issue description. The response includes a publicId for tracking.

POST /api/tickets
Content-Type: application/json
Step 3

Track the ticket

Use the returned publicId to poll ticket status and view the full 8-stage pipeline progress at any time.

GET /api/tickets/:publicId
No auth required
POST /api/tickets — example request
Request body
{
  "productSlug": "my-saas-app",
  "submitterEmail": "agent@example.com",
  "submitterName": "AI Agent v2",
  "subject": "Login button unresponsive on Safari",
  "body": "Reproducible steps:\n1. Open Safari 17\n2. Navigate to /login\n3. Click Sign In\n\nExpected: form submits\nActual: nothing happens",
  "screenshots": [
    "https://cdn.example.com/bug-01.png"
  ]
}
requiredproductSlug, submitterEmail, subject, body
optionalsubmitterName, screenshots (max 3 URLs)
Response 201 Created
{
  "publicId": "TK-00042",
  "status": "RECEIVED",
  "createdAt": "2026-03-24T08:00:00.000Z"
}
publicId — use this to track progress
status — initial status is always RECEIVED
• Returns 404 if productSlug is not registered
• Returns 400 with field errors on validation failure

Ticket status values

RECEIVED
ISSUE_CREATED
FIX_IN_PROGRESS
PR_OPEN
CHANGES_REQUESTED
MERGED
DEPLOYED
CLOSED