Authenticatie
Stuur een API-sleutel mee als bearer token. De sleutel moet over de permissie reseller.manage beschikken; een sleutel zonder deze permissie wordt geweigerd met een 403 in plaats van een 404.
Waar je organisatie-id komt te staan
Dit eindpunt accepteert org_id als queryparameter. Laat deze achterwege en de aanroep destilleert je gehele tenant-substructie; stuur deze mee om de aanroep te beperken tot één organisatie.
Uw organisatie-id staat op het scherm met API-sleutels in uw dashboard, naast de sleutel zelf. Dit is in elke aanroep die u doet dezelfde id.
Probeer het
Vervang alles tussen punthaakjes door uw eigen waarden en de sleutelplaatsvervanger door een sleutel uit uw dashboard.
curl -X POST https://api.zinndigital.com/v1/branding/logo \
-H "Authorization: Bearer zdk_live_…"Ingelogd? De API-console in je dashboard vult je echte organisatie-id en je eigen sleutel in, en voert het verzoek uit tegen de live API zodat je de daadwerkelijke respons kunt zien. Open dit eindpunt in de API-console
Details
Your logo, as an image file. Requires `reseller.manage`. ⚖️ **Uploaded, never linked** — owner ruling 2026-09-01. We store the image ourselves and serve it from `GET /v1/branding/logo/{sha256}`, and that is what makes it possible to print it on your invoices: an invoice is rendered offline from a frozen copy of the document and cannot fetch anything, so a link to your own web server could never appear on one. It would also mean a document that changes if your site goes down. Send the file as the `logo` part of a `multipart/form-data` request. PNG, JPEG, WebP and GIF, up to 256 KB and 4000 px on a side. ⛔ SVG is refused: it can carry scripts and remote references. ⛔ Changing your logo does **not** change invoices already issued. Each document keeps the logo it was issued with, because it is referenced by a digest of the exact image.
Parameters
| Naam | Type | Verplicht | Wat dit is |
|---|---|---|---|
org_id (query) | Uuid | Nee | The 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… |
Reactie
| Naam | Type | Verplicht | Wat dit is |
|---|---|---|---|
logo_url | string | Ja | — |
sha256 | string | Ja | — |
purpose | string<panel, favicon, email> | Nee | Which mark was stored — echoed back so a caller can confirm. |
content_type | string | Nee | — |
width | integer | Nee | — |
height | integer | Nee | — |
byte_size | integer | Nee | — |
Fouten die dit eindpunt kan retourneren
401 · 403 · 422 · 429