reseller

POST /v1/branding/logo

Upload your logo.

Alle reseller-eindpunten

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

NaamTypeVerplichtWat dit is
org_id (query)UuidNeeThe 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

NaamTypeVerplichtWat dit is
logo_urlstringJa
sha256stringJa
purposestring<panel, favicon, email>NeeWhich mark was stored — echoed back so a caller can confirm.
content_typestringNee
widthintegerNee
heightintegerNee
byte_sizeintegerNee

Fouten die dit eindpunt kan retourneren

401 · 403 · 422 · 429