hosting

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

Buy the managed migration and let staff do it.

Barcha hosting yakuniy nuqtalari

Autentifikatsiya

API kalitini bearer token sifatida yuboring. Kalit billing.payment.manage ruxsatiga ega boʻlishi shart; ruxsatsiz kalit 404 emas, balki 403 xatosi bilan rad etiladi.

Bu yakuniy nuqta hech qanday tashkilot identifikatorini qabul qilmaydi. Sizning kalitingiz unga tegishli tashkilotni allaqachon aniqlaydi va javob shunga qarab cheklanadi.

Sinab ko'rish

Qavslardagi har qanday narsani o'z qiymatlaringiz bilan, kalit pleysxolderini эsa boshqaruv panelingizdagi kalit bilan almashtiring.

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

Tizimga kirganmisiz? Boshqaruv panelingizdagi API konsoli haqiqiy tashkilot ID raqamingiz va shaxsiy kalitingizni avtomatik to'ldiradi hamda haqiqiy javobni ko'rishingiz uchun so'rovni jonli API orqali bajaradi. Ushbu yakuniy nuqtani API konsolida oching

Tafsilotlar

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.

Parametrlar

NomiTuriMajburiyNima bu
siteId (path)UuidHaSite ID (UUIDv7).
Idempotency-Key (header)stringYo'qClient-generated key that makes an unsafe request replay-safe: the server stores the first response and returns it verbatim for repeats.

Soʻrov tanasi

NomiTuriMajburiyNima bu
source_hoststringYo'qWhere the site is hosted today, so the fulfilment queue is actionable without a round trip. A hostname, never a login. Optional.
notestringYo'qAnything else staff should know before they start.
currencystringYo'qThe 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…

Javob

NomiTuriMajburiyNima bu
idUuidHaUUIDv7 identifier — sortable by creation time (docs/02 §8).
org_idUuidHaUUIDv7 identifier — sortable by creation time (docs/02 §8).
extra_idUuidHaUUIDv7 identifier — sortable by creation time (docs/02 §8).
site_idobjectYo'q
domain_idobjectYo'q
statusExtraPurchaseStatusHaAn extra purchase's lifecycle state.
categorystringHa
fulfilment_typeExtraFulfilmentTypeHaHow an extra is delivered.
intervalExtraIntervalHaOne-off charge or a recurring subscription.
priceMoneyAmountHaA money value — integer minor units + an ISO 4217 code (CLAUDE.md §2.8).
recurrencestring<none, active, ended>HaWhether 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_onobjectYo'qThe 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_atobjectYo'q
completed_atobjectYo'q
failure_reasonstringYo'q
created_atstringHa
updated_atstringHa

Ushbu yakuniy nuqta qaytarishi mumkin bo'lgan xatolar

401 · 403 · 404 · 422 · 429 · 503