hosting
GET /v1/site-imports/{importId}
One import job's state and progress.
Autentifikatsiya
API kalitini bearer token sifatida yuboring. Kalit sites.view 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 GET https://api.zinndigital.com/v1/site-imports/{importId} \
-H "Authorization: Bearer zdk_live_…"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
A pure database read — everything reported comes from rows the workflow writes, so polling costs no archive call. Progress is per-URL counters rather than only a percentage, because "which step" is the useful answer when a customer asks why a restore is slow. `budget_exhausted` is surfaced deliberately: a job that stopped because it ran out of requests otherwise looks exactly like one that finished. Requires `sites.view`.
Parametrlar
| Nomi | Turi | Majburiy | Nima bu |
|---|---|---|---|
importId (path) | Uuid | Ha | Site-import job ID (UUIDv7). |
Javob
| Nomi | Turi | Majburiy | Nima bu |
|---|---|---|---|
id | Uuid | Ha | UUIDv7 identifier — sortable by creation time (docs/02 §8). |
site_id | string | Yo'q | 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. |
source | SiteImportSource | Ha | 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… |
output | SiteImportOutput | Ha | What the import produces. Both are supported; neither is a default. |
status | SiteImportStatus | Ha | `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_reason | string | Yo'q | 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_domain | string | Ha | — |
target_domain | string | Yo'q | — |
snapshot_day | string | Yo'q | — |
crawl_depth | integer | Yo'q | — |
urls_total | integer | Ha | — |
urls_done | integer | Ha | — |
urls_failed | integer | Ha | — |
progress_percent | integer | Ha | For a progress bar only. The per-URL counters are the primary display, because a percentage cannot say *which* step. |
requests_spent | integer | Ha | — |
request_budget | integer | Ha | — |
budget_exhausted | boolean | Ha | 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_bytes | integer | Yo'q | — |
created_at | string | Ha | — |
started_at | string | Yo'q | — |
finished_at | string | Yo'q | — |
can_cancel | boolean | Ha | — |
Ushbu yakuniy nuqta qaytarishi mumkin bo'lgan xatolar
401 · 403 · 404 · 429