hosting

GET /v1/sites/export

Download the sites in scope as a CSV.

Барлық hosting соңғы нүктелері

Аутентификация

API кілтін bearer токені ретінде жіберіңіз. Бұл соңғы нүкте сипаттамада арнайы рұқсатты көрсетпейді, сондықтан болжағаннан гөрі кілтіңізге қажетті ең аз рұқсатты беріп, жауапты тексеріңіз.

Ұйымыңыздың идентификаторы орналасатын жер

Бұл соңғы нүкте сұрау параметрі ретінде org_id мәнін қабылдайды. Оны бос қалдырсаңыз, шақыру бүкіл жалға алушы тармағын қамтиды; шақыруды бір ұйымға шектеу үшін оны жіберіңіз.

Сіздің ұйым идентификаторыңыз басқару панеліндегі API кілттері экранында, кілттің өзінің жанында орналасқан. Бұл сіз жасайтын әрбір шақырудағы бірдей идентификатор.

Әрекет етіп көру

Бұрыштық жақшалардағы кез келген нәрсені өз мәндеріңізбен, ал кілт орналастырушысын басқару тақтасынан алынған кілтпен алмастырыңыз.

curl -X GET https://api.zinndigital.com/v1/sites/export \
  -H "Authorization: Bearer zdk_live_…"

Жүйеге кіргенсіз бе? Бақылау тақтасындағы API консолі ұйымыңыздың нақты идентификаторы мен жеке кілтіңізді автоматты түрде толтырады да, нақты жауапты көре алуыңыз үшін сұрауды тікелей жұмыс істеп тұрған API арқылы орындайды. Бұл соңғы нүктені API консолінде ашыңыз

Мәліметтер

The same sites `listSites` would return for the same query, as a streamed `text/csv` attachment — V1 parity (`deploy.views.SiteExport`, "Choose sites → Export to CSV"), recorded as unported in `docs/35` §0.3c until W29-U. ⛔⛔ **Server-side over the WHOLE matching set, and that is the point of it existing as an endpoint at all.** `listSites` is cursor-paginated, so a CSV assembled in the browser would contain one page and would look exactly like a complete file — no error, no truncation marker, and nothing a customer could use to tell the difference. There is deliberately **no `limit`**: a bound here would silently exclude rows and nothing downstream would ever pick up the remainder. ⛔ It shares the list's filter chain rather than reproducing it, so "export" means "export what I am looking at" by construction. Every filter below behaves exactly as it does on `listSites`, including narrowing to nothing — rather than 403-ing — for an `org_id` outside the caller's scope. ⛔⛔ **It requires `Authorization`, so it cannot be fetched with a plain `<a href>`.** A browser anchor navigation sends no bearer token and the engine has no cookie authentication to fall back on, so an anchor answers **401** and the customer sees nothing happen. Download it with an authenticated `fetch` and hand the result to the browser as a blob. This is not hypothetical: the estate shipped three staff download buttons built as anchors and every one of them was dead (`docs/72` D14200). The header row is English and is **not** localized: the consumer is a spreadsheet or a script, and a header that changed with the viewer's locale would make one customer's file unreadable by another's tooling. Column order is part of the contract — new columns are appended, never inserted.

Параметрлер

АтыTүріМіндеттіМазмұны
org_id (query)UuidЖоқRestrict to one organization in the caller's scope.
status (query)SiteStatusЖоқFilter by site lifecycle status.
product_line (query)stringЖоқFilter by product line code.
group (query)stringЖоқRestrict to the sites in one site group.
search (query)stringЖоқCase-insensitive substring match on the primary domain or the name, applied in the database across the whole collection in scope.

Бұл соңғы нүкте қайтара алатын қателер

401 · 403