hosting

POST /v1/sites/{siteId}/migrations/managed-request

Buy the managed migration and let staff do it.

Tất cả các điểm cuối hosting

Xác thực

Gửi khóa API dưới dạng mã thông báo bearer. Khóa này phải có quyền billing.payment.manage; khóa không có quyền này sẽ bị từ chối với mã lỗi 403, không phải 404.

Endpoint này không nhận ID tổ chức. Khóa của bạn đã xác định tổ chức mà nó thuộc về và phản hồi được giới hạn trong phạm vi đó.

Dùng thử

Thay thế bất kỳ nội dung nào trong ngoعل (angle brackets) bằng giá trị của riêng bạn và trình giữ chỗ key bằng một key từ trang tổng quan của bạn.

curl -X POST https://api.zinndigital.com/v1/sites/{siteId}/migrations/managed-request \
  -H "Authorization: Bearer zdk_live_…" \
  -H "Content-Type: application/json" \
  -d '{  }'

Đã đăng nhập? Bảng điều khiển API trong trang quản lý của bạn sẽ tự điền ID tổ chức thực tế và khóa của riêng bạn, sau đó chạy yêu cầu đối với API trực tiếp để bạn có thể xem phản hồi thực tế. Mở điểm cuối này trong bảng điều khiển API

Chi tiết

Purchases the `managed_migration` extra — the paid, staff-run service the catalogue sells with a 72-hour SLA — for this site. The self-service migration above and this both exist; neither is a placeholder for the other, and this is the path for a source we cannot automate (Plesk, an unusual panel, a site nobody has the credentials for any more). It creates an **`ExtraPurchase`**, not a migration job: the charge, the tax, the invoice line and the SLA clock all come from the extras machinery, and the fulfilment workflow raises it to the staff queue. Returns the purchase, so the client can show its status and SLA. A declined card is 422 and nothing is booked; an environment whose catalogue has never been seeded answers 503 rather than 404, because the service exists and is advertised. An organization with **no** chargeable payment method gets 422 `PAYMENT_METHOD_REQUIRED` rather than the decline code — nothing reached a gateway, so nothing was refused (`docs/491` §7). ⛔ Send **no credentials** here — the body has nowhere to put them, and staff collect them out of band from a human they can verify. Requires `billing.payment.manage`, not `hosting.import.manage`: this spends money, and a developer who may migrate a site may not charge the account.

Tham số

TênLoạiBắt buộcNội dung này là gì
siteId (path)UuidSite ID (UUIDv7).
Idempotency-Key (header)stringKhôngClient-generated key that makes an unsafe request replay-safe: the server stores the first response and returns it verbatim for repeats.

Nội dung yêu cầu

TênLoạiBắt buộcNội dung này là gì
source_hoststringKhôngWhere the site is hosted today, so the fulfilment queue is actionable without a round trip. A hostname, never a login. Optional.
notestringKhôngAnything else staff should know before they start.
currencystringKhôngThe currency the customer was quoted in. Validated and refused if no gateway can charge it — this is a charge, and silently substituting the base currency would bill a different…

Phản hồi

TênLoạiBắt buộcNội dung này là gì
idUuidUUIDv7 identifier — sortable by creation time (docs/02 §8).
org_idUuidUUIDv7 identifier — sortable by creation time (docs/02 §8).
extra_idUuidUUIDv7 identifier — sortable by creation time (docs/02 §8).
site_idobjectKhông
domain_idobjectKhông
statusExtraPurchaseStatusAn extra purchase's lifecycle state.
categorystring
fulfilment_typeExtraFulfilmentTypeHow an extra is delivered.
intervalExtraIntervalOne-off charge or a recurring subscription.
priceMoneyAmountA money value — integer minor units + an ISO 4217 code (CLAUDE.md §2.8).
recurrencestring<none, active, ended>Whether the recurrence behind this purchase is still live. `none` = it never recurred (a one-off); `active` = a scheduled charge exists; `ended` = it recurred and no longer does…
next_renewal_onobjectKhôngThe next charge date, or `null`. Also `null` for a live charge that has no date scheduled yet, so read `recurrence` — not this field — to decide whether a purchase renews at all.
sla_due_atobjectKhông
completed_atobjectKhông
failure_reasonstringKhông
created_atstring
updated_atstring

Các lỗi điểm cuối này có thể trả về

401 · 403 · 404 · 422 · 429 · 503