notifications

PUT /v1/outbound-mail

Attach or replace this organisation's own mail service.

Toate punctele finale notifications

Autentificare

Trimiteți o cheie API ca token de tip bearer. Acest punct final nu specifică o permisiune anume în specificație, așa că acordați cheii cele mai puține drepturi necesare și verificați răspunsul în loc să faceți presupuneri.

Unde merge ID-ul organizației tale

Acest punct final acceptă org_id ca parametru de interogare. Omiteți-l și apelul va acoperi întregul subarbore al chiriașului dvs.; trimiteți-l pentru a restrânge apelul la o singură organizație.

ID-ul organizației tale se află pe ecranul cheilor API din panoul de control, lângă cheia însăși. Este același ID în fiecare apel pe care îl faci.

Încearcă

Înlocuiți tot ce se află între paranteze unghiulare cu propriile valori și substituentul cheie cu o cheie din tabloul de bord.

curl -X PUT https://api.zinndigital.com/v1/outbound-mail \
  -H "Authorization: Bearer zdk_live_…" \
  -H "Content-Type: application/json" \
  -d '{ "provider": <string<smtp, mailgun, sendgrid, postmark, ses, resend>>, "from_domain": <string>, "credential": <string> }'

Autentificat? Consola API din panoul de control îți completează ID-ul real al organizației și propria cheie și rulează cererea în API-ul live, astfel încât să poți vedea răspunsul efectiv. Deschideți acest punct final în consola API

Detalii

PUT rather than POST because a From header is singular: an organisation has exactly one sending service, and the commonest reason to be on this screen is switching provider. The credential is write-only. It goes straight to the secret vault and the row keeps only a pointer; it is never returned by any endpoint in any state. Attaching does NOT switch the sender. A new or replaced credential resets the account to `unverified`, and only a completed round trip - a real test message, and the code out of it - makes it the From address. A provider that accepts a message and then bounces it is indistinguishable from a working one at the moment of the call, so acceptance is not proof.

Parametri

NumeTipObligatoriuCe este
org_id (query)stringNuThe organization to act on. Omitted (or empty) means your own.

Corp cerere

NumeTipObligatoriuCe este
providerstring<smtp, mailgun, sendgrid, postmark, ses, resend>Da`ses` is Amazon SES over its documented SMTP interface, so the credential is an SES SMTP username and password rather than an AWS access key.
from_domainstringDaThe domain your From address will use - a domain, not an address. The local part still comes from the message type, so a receipt leaves as `billing@` and a password reset as `no…
credentialstringDaThe API key, server token or SMTP password. Never returned.
configobjectNuThe non-secret settings this provider needs - SMTP host/port/username, Mailgun domain and region, the SES region, the Postmark message stream. The exact fields are returned per…

Răspuns

NumeTipObligatoriuCe este
can_configurebooleanDaWhether this organisation's plan includes its own sending identity - the agency and reseller plans do, a plain client plan does not. A claim about the PLAN, never the authorisat…
accountOutboundMailAccountDanull when this organisation sends on the platform's account.
providersobject[]DaThe provider catalogue AND the fields each one needs, served from the same definition the API validates against - so the form a customer fills in and the rules it must satisfy c…
sending_asstring<own, platform>DaWho is actually paying for this organisation's mail right now. `platform` whenever no account is attached OR the attached one has not completed its round trip.
fallback_noticestringDaPlain-language explanation shown when `sending_as` is `platform`; empty otherwise. Part of the contract rather than presentation - an empty state that does not say who is paying…
client_orgs_heldintegerDaHow many client organisations under this one currently have their non-essential notifications held because no own mail provider is connected (owner ruling 2026-09-03). `0` when…