/api/v2/support/tickets/{id} Return one support ticket with the opening body, root attachments, and conversation messages. id should normally come from GET /api/v2/support/tickets data[].id; the route also accepts the numeric support ticket number during migration.
read:support
Authenticate with an API key in the Authorization: Bearer <token> header.
id string required
Example: tkt_01hxa3b4c5d6e7f8g9h0j1k2m3 Public support ticket ID. Get it from GET /api/v2/support/tickets data[].id. Numeric ticket numbers are accepted during migration. Do not invent this value; use the exact ID returned by the referenced API response.
Authorization Bearer <token> Accept application/json id string
· Example: tkt_01hxa3b4c5d6e7f8g9h0j1k2m3 number string
· Example: 149943 Customer-facing support ticket number. Normally numeric; public IDs are exposed separately as id.
subject string · nullable
· Example: Question about my VPS body string · nullable
· Example: My VPS is not reachable from the internet. Only present on ticket detail/create responses.
status string · enum
· Example: open open answered customer_reply in_progress on_hold closed unknown priority string · enum
· Example: low low medium high urgent critical departmentSlug string
· Example: billing departmentName string · nullable
· Example: Billing createdAt string · nullable
· Example: 2026-04-27T11:45:00.000Z updatedAt string · nullable
· Example: 2026-04-27T12:05:00.000Z lastMessageAt string · nullable
· Example: 2026-04-27T12:05:00.000Z ccEmails array<string>
· Example: ["ops@example.com"] requesterName string · nullable
· Example: Jane Example messageCount integer
· Example: 2 linkedServices array<object> linkedServices[].serviceType string required
· Example: vps linkedServices[].serviceId string · nullable required
· Example: vps_01hxa3b4c5d6e7f8g9h0j1k2m3 Nullable: may be null when not applicable.
linkedServices[].serviceName string · nullable required
· Example: app-01 Nullable: may be null when not applicable.
linkedServices[].details object · nullable required
· Example: {"status":"active","planName":"VPS XS","ipAddress":"192.0.2.10"} Nullable: may be null when not applicable.
attachments array<object> Only present on ticket detail/create responses.
attachments[].id string required
· Example: tatt_01hxa3b4c5d6e7f8g9h0j1k2m3 attachments[].filename string · nullable required
· Example: error-log.txt Nullable: may be null when not applicable.
attachments[].extension string · nullable required
· Example: txt Nullable: may be null when not applicable.
attachments[].mimeType string · nullable required
· Example: text/plain Nullable: may be null when not applicable.
attachments[].downloadUrl string required
· Example: /api/v2/support/attachments/tatt_01hxa3b4c5d6e7f8g9h0j1k2m3?ticketId=tkt_01hxa3b4c5d6e7... messages array<object> Only present on ticket detail/create responses.
messages[].id string required
· Example: tmsg_01hxa3b4c5d6e7f8g9h0j1k2m3 messages[].ticketId string required
· Example: tkt_01hxa3b4c5d6e7f8g9h0j1k2m3 messages[].sentAt string · nullable required
· Example: 2026-04-27T11:45:00.000Z Nullable: may be null when not applicable.
messages[].body string · nullable required
· Example: My VPS is not reachable from the internet. Nullable: may be null when not applicable.
messages[].sender string · enum required
· Example: customer customer staff automation messages[].senderName string · nullable required
· Example: Jane Example Nullable: may be null when not applicable.
messages[].encrypted boolean required
· Example: false messages[].attachments array<object> required
· Example: [] type string
· Example: https://developer.hostup.se/errors/invalid_request title string
· Example: Validation failed status integer
· Example: 400 detail string
· Example: The request body failed validation. code string
· Example: invalid_request Stable machine-readable code. Branch on this field, not on detail.
instance string
· Example: /api/v2/orders requestId string
· Example: req_01hxa3b4c5d6e7f8g9h0j1k2m3 timestamp string
· Example: 2026-04-27T12:34:56.000Z errors array<object> Field-level validation errors when code is invalid_request.
errors[].pointer string required
· Example: /items/0/eppCode errors[].detail string required
· Example: `eppCode` is required for this transfer. errors[].code string required
· Example: missing_required extensions object type string
· Example: https://developer.hostup.se/errors/invalid_request title string
· Example: Validation failed status integer
· Example: 400 detail string
· Example: The request body failed validation. code string
· Example: invalid_request Stable machine-readable code. Branch on this field, not on detail.
instance string
· Example: /api/v2/orders requestId string
· Example: req_01hxa3b4c5d6e7f8g9h0j1k2m3 timestamp string
· Example: 2026-04-27T12:34:56.000Z errors array<object> Field-level validation errors when code is invalid_request.
errors[].pointer string required
· Example: /items/0/eppCode errors[].detail string required
· Example: `eppCode` is required for this transfer. errors[].code string required
· Example: missing_required extensions object type string
· Example: https://developer.hostup.se/errors/invalid_request title string
· Example: Validation failed status integer
· Example: 400 detail string
· Example: The request body failed validation. code string
· Example: invalid_request Stable machine-readable code. Branch on this field, not on detail.
instance string
· Example: /api/v2/orders requestId string
· Example: req_01hxa3b4c5d6e7f8g9h0j1k2m3 timestamp string
· Example: 2026-04-27T12:34:56.000Z errors array<object> Field-level validation errors when code is invalid_request.
errors[].pointer string required
· Example: /items/0/eppCode errors[].detail string required
· Example: `eppCode` is required for this transfer. errors[].code string required
· Example: missing_required extensions object type string
· Example: https://developer.hostup.se/errors/invalid_request title string
· Example: Validation failed status integer
· Example: 400 detail string
· Example: The request body failed validation. code string
· Example: invalid_request Stable machine-readable code. Branch on this field, not on detail.
instance string
· Example: /api/v2/orders requestId string
· Example: req_01hxa3b4c5d6e7f8g9h0j1k2m3 timestamp string
· Example: 2026-04-27T12:34:56.000Z errors array<object> Field-level validation errors when code is invalid_request.
errors[].pointer string required
· Example: /items/0/eppCode errors[].detail string required
· Example: `eppCode` is required for this transfer. errors[].code string required
· Example: missing_required extensions object Retry-After seconds plus X-RateLimit-* headers. 10 fields type string
· Example: https://developer.hostup.se/errors/invalid_request title string
· Example: Validation failed status integer
· Example: 400 detail string
· Example: The request body failed validation. code string
· Example: invalid_request Stable machine-readable code. Branch on this field, not on detail.
instance string
· Example: /api/v2/orders requestId string
· Example: req_01hxa3b4c5d6e7f8g9h0j1k2m3 timestamp string
· Example: 2026-04-27T12:34:56.000Z errors array<object> Field-level validation errors when code is invalid_request.
errors[].pointer string required
· Example: /items/0/eppCode errors[].detail string required
· Example: `eppCode` is required for this transfer. errors[].code string required
· Example: missing_required extensions object type string
· Example: https://developer.hostup.se/errors/invalid_request title string
· Example: Validation failed status integer
· Example: 400 detail string
· Example: The request body failed validation. code string
· Example: invalid_request Stable machine-readable code. Branch on this field, not on detail.
instance string
· Example: /api/v2/orders requestId string
· Example: req_01hxa3b4c5d6e7f8g9h0j1k2m3 timestamp string
· Example: 2026-04-27T12:34:56.000Z errors array<object> Field-level validation errors when code is invalid_request.
errors[].pointer string required
· Example: /items/0/eppCode errors[].detail string required
· Example: `eppCode` is required for this transfer. errors[].code string required
· Example: missing_required extensions object https://cloud.hostup.se/api/v2/support/tickets/{id} curl -X GET "https://cloud.hostup.se/api/v2/support/tickets/tkt_01hxa3b4c5d6e7f8g9h0j1k2m3" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: application/json" {
"id": "tkt_01hxa3b4c5d6e7f8g9h0j1k2m3",
"number": "930734",
"subject": "Question about my domain",
"body": "I need help updating my domain nameservers.",
"status": "customer_reply",
"priority": "low",
"departmentSlug": "domain-names",
"departmentName": "Domain names",
"createdAt": "2026-04-27T11:45:00.000Z",
"updatedAt": "2026-04-27T12:05:00.000Z",
"lastMessageAt": "2026-04-27T12:05:00.000Z",
"ccEmails": [],
"requesterName": "Jane Example",
"messageCount": 2,
"linkedServices": [
{
"serviceType": "hosting",
"serviceId": "acct_01hxa3b4c5d6e7f8g9h0j1k2m3",
"serviceName": "example.se",
"details": {
"status": "Active",
"hostname": "example.com",
"nextDueAt": "2026-04-27T12:34:56.000Z"
}
}
],
"attachments": [],
"messages": [
{
"id": "tmsg_01hxa3b4c5d6e7f8g9h0j1k2m3",
"ticketId": "tkt_01hxa3b4c5d6e7f8g9h0j1k2m3",
"sentAt": "2026-04-27T11:45:00.000Z",
"body": "I need help updating my domain nameservers.",
"sender": "customer",
"senderName": "Jane Example",
"encrypted": false,
"attachments": []
},
{
"id": "tmsg_01hxa3b4c5d6e7f8g9h0j1k2m4",
"ticketId": "tkt_01hxa3b4c5d6e7f8g9h0j1k2m3",
"sentAt": "2026-04-27T12:05:00.000Z",
"body": "We have checked the domain and replied with the next steps.",
"sender": "staff",
"senderName": "Support Team",
"encrypted": false,
"attachments": []
}
]
}