reseller

POST /v1/reseller/brand/menu

Add a link to your clients' panel.

Tutti gli endpoint reseller

Autenticazione

Invia una chiave API come token di tipo bearer. La chiave deve disporre dell'autorizzazione reseller.manage; una chiave sprovvista di tale autorizzazione viene rifiutata con 403 anziché 404.

L'ID della tua organizzazione va qui

Questo endpoint accetta org_id come parametro di query. Omettilo e la chiamata coprirà l'intero sottoalbero del tuo tenant; invialo per limitare la chiamata a una singola organizzazione.

L'identificativo della tua organizzazione si trova nella schermata delle chiavi API nella tua dashboard, accanto alla chiave stessa. È lo stesso identificativo in ogni chiamata che effettui.

Provalo

Sostituisci qualsiasi elemento tra parentesi angolari con i tuoi valori e il segnaposto key con una chiave dalla tua dashboard.

curl -X POST https://api.zinndigital.com/v1/reseller/brand/menu \
  -H "Authorization: Bearer zdk_live_…" \
  -H "Content-Type: application/json" \
  -d '{ "label": <string>, "url": <string> }'

Hai effettuato l'accesso? La console API nella tua dashboard inserisce il tuo ID organizzazione reale e la tua chiave personale, ed esegue la richiesta sull'API live in modo da poter vedere la risposta effettiva. Apri questo endpoint nella console API

Dettagli

Adds one navigation link. Requires `reseller.manage` and the `white_label` entitlement. ⛔ `url` accepts `https://`, `http://` or a same-origin path beginning `/`, and nothing else. Your clients click these from inside an authenticated panel on your hostname, so a `javascript:` link would run in the origin holding their session — the allow-list is what makes that unrepresentable rather than merely filtered. ⛔ Over the limit is a **422 naming the limit**, never a silent truncation at read time: a ninth link that simply never appears is a defect nobody can report.

Parametri

NomeTipoObbligatorioChe cos'è
org_id (query)UuidNoThe organization this call acts on. Optional for a caller with exactly one direct membership; **required** for anyone with more than one — which is every reseller and every agen…

Corpo della richiesta

NomeTipoObbligatorioChe cos'è
labelstring
urlstring
iconstringNo
positionintegerNo
new_tabbooleanNo
visibilitystring<both, client, staff>No

Risposta

NomeTipoObbligatorioChe cos'è
idstring
labelstring
urlstring
iconstringA design-system icon name from `icons`, or `""` for a label-only item.
positionintegerSort key. Ties break on the label, so the order is total and stable.
new_tabbooleanRenders `target="_blank"`. The panel pairs it with `rel="noopener noreferrer"` unconditionally — that is set on **every** external item, not only the new-tab ones, because `Refe…
visibilitystring<both, client, staff>Who sees it. Filtered **server-side** on `GET /v1/branding`: a payload carrying a staff-only link that the app hides has already disclosed it to anybody with a network tab, whic…
externalbooleanWhether the link leaves the panel. Computed here so every renderer agrees.

Errori che questo endpoint può restituire

401 · 403 · 422