notifications

POST /v1/notification-connections

Connect a destination.

Vituo vyote vya notifications

Uthibitishaji

Tuma ufunguo wa API kama tokeni ya kubeba. Sehemu hii ya mwisho haitaji ruhusa maalum katika maelezo, kwa hivyo ipe ufunguo wako kiwango cha chini kabisa kinachohitajika na uangalie jibu badala ya kukisia.

Mahali ambapo kitambulisho cha shirika lako huwekwa

Kigezo hiki kinachukua org_id kama kigezo cha utafutaji. Iache wazi na simu itashughulikia tawi lako lote la wapangaji; itume ili kupunguza simu iwe ya shirika moja tu.

Kitambulisho cha shirika lako kipo kwenye skrini ya funguo za API katika dashibodi yako, kando ya ufunguo wenyewe. Ni kitambulisho kile kile katika kila ombi unalofanya.

Jaribu

Badilisha chochote kilicho ndani ya mabano ya pembe na maadili yako mwenyewe, na kishikiliaji cha ufunguo na ufunguo kutoka kwa dashibodi yako.

curl -X POST https://api.zinndigital.com/v1/notification-connections \
  -H "Authorization: Bearer zdk_live_…" \
  -H "Content-Type: application/json" \
  -d '{ "kind": <string<email, slack, telegram, webhook>>, "label": <string>, "target": <string> }'

Umeingia kwenye akaunti? Dashibodi yako ya kiweko cha API inajaza kitambulisho chako halisi cha shirika na ufunguo wako mwenyewe, na kuendesha ombi dhidi ya API ya moja kwa moja ili uweze kuona jibu halisi. Fungua sehemu hii ya mwisho (endpoint) kwenye konsole ya API

Maelezo

Adds a destination. Many of the same kind are supported and expected - two Telegram chats, three Slack channels, an accountant's e-mail that belongs to no platform user. A new connection is NOT usable until it has been verified: it must send a real test message first. A destination that has only been typed correctly has not been shown to work, and this whole surface exists because two channels sat configured and silent.

Vigezo

JinaAinaInayohitajikaKilicho hiki
org_id (query)stringHapanaThe organization to act on. Omitted resolves to your own ONLY when you belong to exactly one organisation; a principal in more than one must name it, or the call is refused `422…

Mwili wa ombi

JinaAinaInayohitajikaKilicho hiki
kindstring<email, slack, telegram, webhook>NdiyoSMS and push are deliberately absent - both were rejected. Offering a kind nobody can use is a placeholder with a dropdown.
labelstringNdiyo
targetstringNdiyoThe NON-secret half - an address, a channel name, a chat id.
credentialstringHapanaThe credential itself - a Slack incoming-webhook URL, or a Telegram bot token. Required for those two kinds and refused for the others: a webhook's signing secret is ours to min…
personalbooleanHapanatrue = this is MY destination and only my own matrix addresses it. The owning user is the authenticated principal, never a value in this body.

Majibu

JinaAinaInayohitajikaKilicho hiki
idstringHapana
kindstring<email, slack, telegram, webhook>Hapana
labelstringHapana
targetstringHapana
personalbooleanHapana
verifiedbooleanHapanaUntil this is true nothing is routed here. For a machine destination it becomes true when a real test message has been delivered; for an e-mail address it becomes true only when…
verified_atstringHapana
checked_atstringHapanaWhen we last managed to LOOK, as against `verified_at` which is when we last PROVED it works. One field cannot answer both: without the pair, "we have not been able to reach you…
awaiting_confirmationbooleanHapanaAn e-mail destination that has been sent its confirmation link and is waiting for the recipient. Neither verified nor failed - a third state, and showing it as "not verified" ma…
verify_errorstringHapana
verify_error_codestring<their_endpoint_refused, their_endpoint_unreachable, their_credential_rejected, their_recipient_refused, not_configured, our_fault, could_not_check, >HapanaThe TRANSLATABLE half of `verify_error`. That sentence is authored English and this payload is rendered in 57 other languages, so a German customer was shown a translated wrappe…
healthstring<healthy, idle, failing, unverified>Hapana⚖️ Owner, 2026-09-03 - *"can you get something to check that is set up and working properly please"*. `verified` answers *did this EVER work*; this answers *is it working NOW*,…
last_delivery_atstringHapanaWhen a real notification was last DELIVERED here, as against verified.
last_failure_atstringHapana
last_delivery_errorstringHapanaWhy the last delivery failed, in copy WE authored, chosen from a closed table by what failed and where it was going (`engine.notifications.failure_copy`). It is never the provid…
last_delivery_error_codestring<their_endpoint_refused, their_endpoint_unreachable, their_credential_rejected, their_recipient_refused, not_configured, our_fault, could_not_check, >HapanaThe translatable half of `last_delivery_error`, on the same contract as `verify_error_code`. Classified by the adapter at the seam that knew what happened, never re-derived down…
consecutive_failuresintegerHapanaReset to 0 by any success, so a destination that recovers stops reporting itself broken with nobody pressing anything. `failing` is three in a row - one `502` from somebody's ow…
signing_secretstringHapanaWebhook destinations only, and returned ONCE on create. Use it to verify the `X-Zinn-Signature` header. There is no endpoint that will show it again - one would turn a read of t…
signing_secret_noticestringHapana
routesobjectHapanaThe FULL grid for this connection, one boolean per notification topic.