hosting

POST /v1/site-imports

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

ሁሉም የ hosting ማጠናቀቂያ ነጥቦች

ማረጋገጫ

የAPI ቁልፉን እንደ bearer token ይላኩ። ቁልፉ የhosting.import.manage ፈቃድ ሊኖረው ይገባል፤ ይህ ፈቃድ የሌለው ቁልፍ በ404 ሳይሆን በ403 ውድቅ ይደረጋል።

ይህ ኤንድፖይ መክፈቻ (endpoint) የድርጅት መታወቂያ (organisation id) አይወስድም። የእርስዎ ቁልፍ (key) እሱ የሚመለከተውን ድርጅት አስቀድሞ ይለያል፣ እና ምላሹም ለዚሁ የተወሰነ ነው።

ሞክሩት

በቅንፍ ውስጥ ያለውን ማንኛውንም ነገር በራስዎ እሴቶች ይተኩ፣ እና ቁልፍ ቦታ ያዢውን ከዳሽቦርድዎ በመጣ ቁልፍ ይተኩ።

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> }'

ገብተዋል? የመቆጣጠሪያ ማዕከልዎ ውስጥ ያለው የኤፒአይ ኮንሶል ትክክለኛውን የድርጅት መታወቂያዎን እና የራስዎን ቁልፍ ይሞላል፣ እና ትክክለኛውን ምላሽ ማየት እንዲችሉ ጥያቄውን በቀጥታ ከሚሰራው ኤፒአይ ጋር ያካሂደዋል። ይህን ኤንድፖይንት በAPI ኮንሶል ውስጥ ይክፈቱ

ዝርዝሮች

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`.

መለኪያዎች

ስምዓይነትየሚያስፈልግምንነቱ
Idempotency-Key (header)stringአይClient-generated key that makes an unsafe request replay-safe: the server stores the first response and returns it verbatim for repeats.

የጥያቄ አካል

ስምዓይነትየሚያስፈልግምንነቱ
sourceSiteImportSourceአዎWhere 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 a…
outputSiteImportOutputአዎWhat the import produces. Both are supported; neither is a default.
source_domainstringአዎThe domain whose archive to restore, or — for `archive_url` — the URL of the archive to migrate in.
target_domainstringአይThe domain the result is served on. Defaults to `source_domain`.
site_idUuidአይRestore into an existing site. Omit to produce a bundle and choose the target later.
snapshot_daystringአይ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_depthintegerአይ
request_budgetintegerአይ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_attestedbooleanአይ⚠️ 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.

ምላሽ

ስምዓይነትየሚያስፈልግምንነቱ
idUuidአዎUUIDv7 identifier — sortable by creation time (docs/02 §8).
site_idstringአይ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.
sourceSiteImportSourceአዎWhere 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 a…
outputSiteImportOutputአዎWhat the import produces. Both are supported; neither is a default.
statusSiteImportStatusአዎ`fetching` 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_reasonstringአይ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_domainstringአዎ
target_domainstringአይ
snapshot_daystringአይ
crawl_depthintegerአይ
urls_totalintegerአዎ
urls_doneintegerአዎ
urls_failedintegerአዎ
progress_percentintegerአዎFor a progress bar only. The per-URL counters are the primary display, because a percentage cannot say *which* step.
requests_spentintegerአዎ
request_budgetintegerአዎ
budget_exhaustedbooleanአዎTrue 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_bytesintegerአይ
created_atstringአዎ
started_atstringአይ
finished_atstringአይ
can_cancelbooleanአዎ

ይህ ማብቂያ ሊመልሳቸው የሚችሉ ስህተቶች

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