hosting

POST /v1/sites/{siteId}/panel-sessions

Mint one single-use panel link, at the moment the customer clicks.

Gbogbo àwọn hosting endpoints

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

Ìfàṣẹ́pọ̀

Fi bọ́kì kọ́kọ́ (bearer token) ránṣẹ́ gẹ́gẹ́ bí àmì ìdánimọ̀ API. Ibùdó yìí kò sọ àṣẹ pàtó kan nínú àlàyé rẹ̀, nítorí náà fún kọ́kọ́ rẹ̀ ní ohun tó kéré jù lọ tí ó nílò kí o sì ṣàyẹ̀wò ìdáhùn náà dípò kí o kàn rò ó.

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 POST https://api.zinndigital.com/v1/sites/{siteId}/panel-sessions \
  -H "Authorization: Bearer zdk_live_…" \
  -H "Content-Type: application/json" \
  -d '{ "tool": <string<phpmyadmin, filemanager, web_ide>> }'

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

Returns a freshly minted single-use SSO link into one of the site's per-site tools — phpMyAdmin or the File Manager — for the caller to open immediately. Why this exists rather than reusing getSiteDatabase. The links that endpoint returns are single-use and expire in 180 seconds, deliberately: a panel link that still works tomorrow is a credential. Rendering one into an <a href> on page load therefore hands the customer something that is dead before they have read the card — they click four minutes later and are told the token expired, which reads to them as being asked to log in. This endpoint moves the mint to the click, so the token's whole life is one redirect. Same authority as getSiteDatabase: both sites.view and sites.panel_access, RLS-scoped on the narrower key, so holding sites.panel_access in one org can never mint a link for another org's site. An out-of-scope or unknown id is a 404, never a 403, so this cannot be used to discover that a site exists. POST because it is not idempotent: every call writes a new single-use token to the hosting box. A GET would be re-issued by a prefetch, a proxy or the back button, burning a token each time. A site with no panel to open is a 409 carrying the same sentence the Tools card shows — never a 200 with a null URL.

Àwọn ìpìlẹ̀

OrúkọIruTí a nílòKini o jẹ
siteId (path)UuidBẹẹniSite ID (UUIDv7).

Akoonu ibeere naa

OrúkọIruTí a nílòKini o jẹ
toolstring<phpmyadmin, filemanager, web_ide>Bẹẹniphpmyadmin opens the site's own database; filemanager opens the site's own home directory; web_ide opens VS Code in the browser against the site's files. A closed set on…

Idahun

OrúkọIruTí a nílòKini o jẹ
urlstringBẹẹniThe HTTPS single-use SSO link. Never null on a 200 — a site with no panel to open is a 409.
reasonstringBẹẹkọEmpty on success; present so one client component can render both shapes.

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

401 · 403 · 404 · 409 · 422 · 429