Upload one support attachment using multipart/form-data. Send file as the binary part. Include ticketId only when pinning the upload to an existing ticket; use the public tkt_... value from GET /api/v2/support/tickets or GET /api/v2/support/tickets/{id}. The returned attachmentId is a temporary satt_... upload ID, not the finalized tatt_... ticket-attachment ID that appears on ticket detail responses after a message is stored.
write:support
Use Authorization: Bearer <token> for API keys. Dashboard sessions may also use hostup_session.
Accept Example Content-Type Example attachmentId string required
· Example: satt_01hxa3b4c5d6e7f8g9h0j1k2m3 Temporary support attachment upload ID with the `satt_...` prefix.
url string required
· Example: https://files.example.com/support/satt_01hxa3b4c5d6e7f8g9h0j1k2m3/error-log.txt Temporary upload URL stored for the support workflow. Do not use this as a ticket attachment download URL.
filename string required
· Example: error-log.txt Sanitized file name.
byteLength number required
· Example: 18342 Uploaded file size in bytes.
contentType string required
· Example: text/plain Detected MIME type after upload validation.
uploadedAt string required
· Example: 2026-04-27T12:00:00.000Z ticketId stringnull required
· Example: tkt_01hxa3b4c5d6e7f8g9h0j1k2m3 Public ticket ID the upload was pinned to, or null when uploaded without a ticket target.
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/attachments curl -X POST "https://cloud.hostup.se/api/v2/support/attachments" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Accept: application/json" {
"attachmentId": "satt_01hxa3b4c5d6e7f8g9h0j1k2m3",
"url": "https://files.example.com/support/satt_01hxa3b4c5d6e7f8g9h0j1k2m3/error-log.txt",
"filename": "error-log.txt",
"byteLength": 18342,
"contentType": "text/plain",
"uploadedAt": "2026-04-27T12:00:00.000Z",
"ticketId": "tkt_01hxa3b4c5d6e7f8g9h0j1k2m3"
}