hosting

GET /v1/sites/{siteId}/migrations/{migrationId}

One migration's state and progress.

Gbogbo àwọn hosting endpoints

Ìfàṣẹ́pọ̀

Fi bọ́ọ̀lù (bearer token) ranṣẹ gẹ́gẹ́ bí kọ́kọ́rọ́ API. Kọ́kọ́rọ́ náà gbọ́dọ̀ ní ìyọ̀ǹda sites.view; a ó kọ̀ ọ́ silẹ pẹlu 403, kii ṣe 404, ti kọ́kọ́rọ́ náà kò bá ní i.

Ojú abánisọ̀rọ̀ yìí kò gba id ajọ kankan. Kọ́kọ́rọ́ rẹ ti mọ ajọ ti o jẹ ti e, a o si fèsì nipa rẹ̀.

Gbiyanju rẹ

Rọ́pọ̀ èyíkéyìí nínú àwọn àmì ìtọ́ka < > pẹ̀lú iye tirẹ̀, àti àmì ìdánimọ̀ bọ́tìnnì náà pẹ̀lú bọ́tìnnì kan láti inú dásibọ̀ọ̀dù rẹ.

curl -X GET https://api.zinndigital.com/v1/sites/{siteId}/migrations/{migrationId} \
  -H "Authorization: Bearer zdk_live_…"

Ṣé o ti wọlé? Iwọ̀n api ní nú ìgbékalẹ̀ rẹ kún id àjọ gidi rẹ ati bọtini tirẹ, o si nṣiṣẹ ibeere na lòdì si api gidi ki o le rii esi gidi na. Ṣí ojú abáná yìí sílẹ̀ nínú kọnsólù API

Àwọn kúlẹ̀kúlẹ̀

A pure database read, polled by the progress screen. Progress is per-kind counters rather than only a percentage, because "which step" is the useful answer when a customer asks why a migration is slow, and `items_failed` is reported separately from the `*_done` counts so a job that could not fetch part of the estate cannot report itself complete. Requires `sites.view`.

Àwọn ìpìlẹ̀

OrúkọIruTí a nílòKini o jẹ
siteId (path)UuidBẹẹniSite ID (UUIDv7).
migrationId (path)UuidBẹẹniThe migration job's id (UUIDv7), as `listSiteMigrations` reports it. **Ours**, minted when the row was written — never anything the source host knows about.

Idahun

OrúkọIruTí a nílòKini o jẹ
idUuidBẹẹniUUIDv7 identifier — sortable by creation time (docs/02 §8).
site_idUuidBẹẹniUUIDv7 identifier — sortable by creation time (docs/02 §8).
sourceMigrationSourceBẹẹniThe kind of hosting the site is being pulled from. ⛔ `plesk` is offered so the refusal can be specific and actionable, **not** because it is supported: `pleskbackup` is reachabl…
statusSiteMigrationStatusBẹẹni`authenticating`, `inventorying` and `transferring` are separate states rather than one `running` because they fail for opposite reasons and the customer's next action differs:…
status_reasonstringBẹẹkọA machine code the dashboard renders through its own catalogue — never an English sentence composed by the engine, which could be shown to none of the other 57 locales.
include_mailbooleanBẹẹni
source_hoststringBẹẹkọThe hostname the estate is being pulled from. Host only: no port, no username, and never a secret.
files_totalintegerBẹẹni
files_doneintegerBẹẹni
databases_totalintegerBẹẹni
databases_doneintegerBẹẹni
mailboxes_totalintegerBẹẹni
mailboxes_doneintegerBẹẹni
items_failedintegerBẹẹni⛔ Counted separately from the `*_done` fields, never folded into them. "We could not get it" reported as "done" makes the completion report a lie.
bytes_transferredintegerBẹẹni
warningsstring[]BẹẹniMachine warning codes the dashboard localises.
mail_synced_atstringBẹẹkọWhen the mail delta last ran. `null` and a timestamp are different states, and the cutover control reads this to tell them apart.
dns_records_capturedintegerBẹẹkọHow many records were read off the source's zone and will be published on cutover. ⛔ Counted separately from `dns_records_unsupported`, never as one total: "we captured 14 recor…
dns_records_unsupportedintegerBẹẹkọReal records the source holds that our DNS editor cannot express (an `SSHFP`, a `TLSA`, an `MX` with no preference). Stored and listed on the detail endpoint rather than dropped…
dns_captured_atstringBẹẹkọWhen the source's zone was read. `null` means never attempted, which is NOT the same as attempted-and-the-panel-holds-no-zone; only the first is worth retrying.
verified_atstringBẹẹkọWhen the migrated site was last fetched over HTTP and compared with the source. `null` means the destination has never been looked at.
verification_codestringBẹẹkọA machine code the dashboard localises. Empty means the destination is serving the site as well as the source was. ⛔ The migration's own counters cannot answer this: they travel…
destination_statusintegerBẹẹkọThe HTTP status the migrated site returned, fetched at its origin address with a `Host:` header — before cutover the customer's domain still resolves to the OLD host, so asking…
source_statusintegerBẹẹkọThe HTTP status the source returned. ⭐ Reported beside `destination_status` because the interesting failure is the PAIR: a destination 200 against a source 500 means we faithful…
started_atstringBẹẹkọ
finished_atstringBẹẹkọ
created_atstringBẹẹni
dns_recordsMigrationDnsRecord[]Bẹẹni
dns_planMigrationDnsPlanBẹẹniThe **dry run**: exactly what the cutover will do to the zone, before it does it. Computed by the same function the cutover publishes from, so it cannot drift from what actually…
reportMigrationReportBẹẹniWhat the customer is told about the migration, in their own language. `null` until the report step has run — which is a real state while files are still copying, and is **not**…

Awọn aṣiṣe ti ibudo ipari yii le da pada

401 · 403 · 404 · 429