SupportMesh

Documentation

Setup, support workflows, delivery operations, and developer integration references for the features SupportMesh currently ships.

/ or Ctrl+K

SupportMesh Docs

API Keys and REST API

Integrate with the current public API surface accurately, including the read-only routes that work now and the mutation routes that intentionally still return HTTP 501.

Authentication and API keys

SupportMesh uses bearer-token API keys. Send the key in the `Authorization` header as `Bearer <api-key>`.

Authorization: Bearer sm_example_key
X-Request-Id: docs-example-001

API keys are tenant-scoped, carry an explicit scope list, and can be active, revoked, or expired. Keep them server-side and rotate them like any other secret.

Current scope catalog

  • tickets.read
  • tickets.write
  • clients.read
  • clients.write
  • support_items.read
  • support_items.write
  • comments.read
  • comments.write
  • estimates.read
  • defects.read
  • releases.read
  • downloads.read
  • knowledge_base.read
  • reports.read
  • webhooks.manage

Current `/api/v1` routes

MethodPathScopeCurrent behavior
GET/api/v1/ticketstickets.readList tickets with pagination and server-side filters.
POST/api/v1/ticketstickets.writeMutation route exists, but this phase returns HTTP 501 because ticket creation through the public API is not enabled yet. It returns HTTP 501 in the current phase.
GET/api/v1/tickets/{ticketId}tickets.readRead a single ticket by ID.
PATCH/api/v1/tickets/{ticketId}tickets.writeMutation route exists, but this phase returns HTTP 501 because ticket updates through the public API are not enabled yet. It returns HTTP 501 in the current phase.
POST/api/v1/tickets/{ticketId}/commentscomments.writeComment creation route exists, but this phase returns HTTP 501 because public API comment writes are not enabled yet. It returns HTTP 501 in the current phase.

Ticket list filters and response shape

The current ticket list endpoint accepts `page`, `per_page`, `client_id`, `priority`, `status`, `support_item_id`, `type`, `q`, and `updated_since`. Results are ordered by newest created ticket first.

curl https://supportmeshplatform.com/api/v1/tickets?page=1&per_page=25&status=in_progress \
  -H "Authorization: Bearer sm_example_key" \
  -H "Accept: application/json"
Example response fields are fictional, but the route shape and enum names match the current implementation.
{
  "page": 1,
  "per_page": 25,
  "total_count": 1,
  "tickets": [
    {
      "id": "11111111-1111-1111-1111-111111111111",
      "ticket_number": "SUP-1042",
      "subject": "Checkout error after update",
      "status": "in_progress",
      "priority": "high"
    }
  ]
}

Errors, request IDs, and idempotency

SupportMesh returns JSON error responses for missing authentication, inactive tenants, and insufficient scopes. The request layer also supports request IDs. The API foundation includes idempotency storage helpers, but the documented `/api/v1/tickets` routes in this phase do not yet advertise route-level idempotent write behavior because those writes are not available.