Create a support ticket in a customer-facing department. First call GET /api/v2/support/departments and use one returned departments[].slug value as departmentSlug; do not guess department slugs from names. For VPS, IP address, or VPS network help, use the returned vps department slug. To link a service, send context.serviceType and context.serviceId; do not send accountId at the top level. Attachments are not accepted in this request body; add files through the support attachment flow when available.
write:support
Use Authorization: Bearer <token> for API keys. Dashboard sessions may also use hostup_session.
Accept Example Content-Type Example departmentSlug string required
· Example: general-web-hosting Support department slug returned by GET /api/v2/support/departments. Use `vps` for VPS, IP address, and VPS network requests; do not invent technical department names.
subject string required
· Example: Question about my hosting account message string required
· Example: Hello, I need help with my website. priority string · enum
· Example: medium low medium high urgent critical context object
· Example: {"serviceType":"domain","serviceId":"dom_01hxa3b4c5d6e7f8g9h0j1k2m3"} Optional linked-service context. The server validates that the linked service belongs to the caller. Use camelCase v2 fields here; `accountId` is not accepted as a top-level ticket field.
aiSummary stringnull
· Example: null aiHelpful booleannull
· Example: null criticalReason stringnull
· Example: null Required with priority=critical. Must explain the customer impact.
id string
· Example: tkt_01hxa3b4c5d6e7f8g9h0j1k2m3 number string
· Example: 149943 Customer-facing support ticket number. Normally numeric; public IDs are exposed separately as id.
subject stringnull
· Example: Question about my VPS body stringnull
· 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 stringnull
· Example: Billing createdAt stringnull
· Example: 2026-04-27T11:45:00.000Z updatedAt stringnull
· Example: 2026-04-27T12:05:00.000Z lastMessageAt stringnull
· Example: 2026-04-27T12:05:00.000Z requesterName stringnull
· Example: Jane Example messageCount integer
· Example: 2 linkedServices array<object> linkedServices[].serviceType string required
· Example: vps linkedServices[].serviceId stringnull required
· Example: vps_01hxa3b4c5d6e7f8g9h0j1k2m3 linkedServices[].serviceName stringnull required
· Example: app-01 linkedServices[].details objectnull required
· Example: {"status":"active","planName":"VPS XS","ipAddress":"192.0.2.10"} attachments array<object> Only present on ticket detail/create responses.
attachments[].id string required
· Example: tatt_01hxa3b4c5d6e7f8g9h0j1k2m3 attachments[].filename stringnull required
· Example: error-log.txt attachments[].extension stringnull required
· Example: txt attachments[].mimeType stringnull required
· Example: text/plain 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 stringnull required
· Example: 2026-04-27T11:45:00.000Z messages[].body stringnull required
· Example: My VPS is not reachable from the internet. messages[].sender string · enum required
· Example: customer customer staff automation messages[].senderName stringnull required
· Example: Jane Example 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 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 curl -X POST "https://cloud.hostup.se/api/v2/support/tickets" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{
"departmentSlug": "domain-names",
"subject": "Question about my hosting account",
"message": "Hello, I need help with my website.",
"priority": "low",
"ccEmails": [
"[email protected]"
],
"context": {
"serviceType": "domain",
"serviceId": "dom_01hxa3b4c5d6e7f8g9h0j1k2m3"
}
}' {
"id": "tkt_01hxa3b4c5d6e7f8g9h0j1k2m3",
"number": "10001",
"subject": "Question about my hosting account",
"body": "Hello, I need help with my website.",
"status": "open",
"priority": "low",
"departmentSlug": "domain-names",
"departmentName": "Domain names",
"createdAt": "2026-04-27T11:45:00.000Z",
"updatedAt": "2026-04-27T11:45:00.000Z",
"lastMessageAt": "2026-04-27T11:45:00.000Z",
"ccEmails": [
"[email protected]"
],
"requesterName": "Jane Example",
"messageCount": 1,
"linkedServices": [
{
"serviceType": "domain",
"serviceId": "dom_01hxa3b4c5d6e7f8g9h0j1k2m3",
"serviceName": "example.com",
"details": {
"status": "Active",
"autoRenew": true
}
}
],
"attachments": [],
"messages": []
} {
"departmentSlug": "domain-names",
"subject": "Question about my hosting account",
"message": "Hello, I need help with my website.",
"priority": "low",
"ccEmails": [
"[email protected]"
],
"context": {
"serviceType": "domain",
"serviceId": "dom_01hxa3b4c5d6e7f8g9h0j1k2m3"
}
}