hosting

POST /v1/site-imports

Restore a site from a web archive, or migrate one in.

Gbogbo àwọn hosting endpoints

Gbogbo àwọn ìwé àṣẹ olùgbékalẹ̀ àgbékalẹ̀

Ìfàṣẹ́pọ̀

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

Ibùdó àmì ìdánimọ̀ ilé-iṣẹ́ rẹ sí

Ibi-iwọle yii n gba org_id gẹgẹ bi aaye ninu ara JSON naa.

Id àjọ rẹ wa lórí ojú-ìwákòòkò àwọn bọ́tìnnì API nínú daṣibọọdú rẹ, lẹ́gbẹ̀ẹ́ bọ́tìnnì náà gan-an. Ó jẹ́ ìd kan náà nínú gbogbo ìpè tí o bá ṣe.

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 POST https://api.zinndigital.com/v1/site-imports \
  -H "Authorization: Bearer zdk_live_…" \
  -H "Content-Type: application/json" \
  -d '{ "source": <SiteImportSource>, "output": <SiteImportOutput>, "source_domain": <string> }'

Ṣé 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ẹ̀

Starts a durable, resumable import workflow and returns the new job state, never a bare acknowledgement. A Wayback restore must name snapshot_day: the most recent capture of an expired domain is usually a parking page, so there is no safe default (422 without it). The output is either a static HTML document root or a WordPress import — both are supported and neither is a default. A site with an import already running returns 409. ⚠️ ownership_attested is recorded, not enforced: the platform's obligation here is to know who requested what. Requires hosting.import.manage.

Àwọn ìpìlẹ̀

OrúkọIruTí a nílòKini o jẹ
Idempotency-Key (header)stringBẹẹkọClient-generated key that makes an unsafe request replay-safe: the server stores the first response and returns it verbatim for repeats.

Akoonu ibeere naa

OrúkọIruTí a nílòKini o jẹ
org_idUuidBẹẹkọWhich organisation this import belongs to. Only needed by an account that acts for more than one and is not naming a site_id — when a site is named, the site decides,…
sourceSiteImportSourceBẹẹniWhere the content comes from. ⛔ Deliberately not the same enum as a site's source: that one records what a site was built from, for ever, while this selects a fetch strategy and…
outputSiteImportOutputBẹẹniWhat the import produces. Both are supported; neither is a default.
source_domainstringBẹẹniThe domain whose archive to restore, or — for archive_url — the URL of the archive to migrate in.
target_domainstringBẹẹkọThe domain the result is served on. Defaults to source_domain.
site_idUuidBẹẹkọRestore into an existing site. Omit to produce a bundle and choose the target later.
snapshot_daystringBẹẹkọWhich day's snapshot to restore. Required for wayback — the most recent capture of an expired domain is usually a parking page, so there is no safe default.
crawl_depthintegerBẹẹkọ
request_budgetintegerBẹẹkọThe hard ceiling on requests this job may make against the source. Bounded per job so one 400,000-capture domain cannot consume the platform's whole archive allowance.
ownership_attestedbooleanBẹẹkọ⚠️ The customer's assertion that they control the domain, recorded because it cannot be reconstructed afterwards. It is not a legal control and is not presented as one.

Idahun

OrúkọIruTí a nílòKini o jẹ
idUuidBẹẹniUUIDv7 identifier — sortable by creation time (docs/02 §8).
site_idstringBẹẹkọThe site this import lands on, or empty. Empty is a real outcome, not an error: an aged-domain restore produces a downloadable bundle and the customer picks the target afterwards.
sourceSiteImportSourceBẹẹniWhere the content comes from. ⛔ Deliberately not the same enum as a site's source: that one records what a site was built from, for ever, while this selects a fetch strategy and…
outputSiteImportOutputBẹẹniWhat the import produces. Both are supported; neither is a default.
statusSiteImportStatusBẹẹnifetching and building are separate states rather than one running because they fail for opposite reasons and the customer's next action differs — a stall in fetching is…
status_reasonstringBẹẹkọA machine code the dashboard renders through its own catalogue — never an English sentence composed by the engine, which could not be shown to the other 57 locales.
source_domainstringBẹẹni
target_domainstringBẹẹkọ
snapshot_daystringBẹẹkọ
crawl_depthintegerBẹẹkọ
urls_totalintegerBẹẹni
urls_doneintegerBẹẹni
urls_failedintegerBẹẹni
detected_platformstringBẹẹkọWhat the archived site was built on, once the crawl has seen a page — the same codes as ArchivePlatform.platform. ⛔ Empty means not established, never plain HTML; the two…
pre_restore_backup_idstringBẹẹkọThe safety backup taken of the target site immediately before this restore overwrote it. ⚖️ Owner ruling 2026-09-08: a restore onto a site that already has content is gated behind…
progress_percentintegerBẹẹniFor a progress bar only. The per-URL counters are the primary display, because a percentage cannot say which step.
requests_spentintegerBẹẹni
request_budgetintegerBẹẹni
budget_exhaustedbooleanBẹẹniTrue when the job stopped because it ran out of requests. Surfaced deliberately — it otherwise looks identical to a job that finished, and the customer's next action depends on…
bundle_bytesintegerBẹẹkọ
created_atstringBẹẹni
started_atstringBẹẹkọ
finished_atstringBẹẹkọ
can_cancelbooleanBẹẹni

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

401 · 403 · 404 · 409 · 422 · 429 · 503