Skip to content
WeZend

Channels

Web & mobile push

Free, instant notifications: a one-script web push SDK (VAPID) plus FCM for your mobile apps, with broadcasts and click tracking.

Push is the cheapest channel you have — delivery costs nothing — and WeZend treats it as a first-class citizen next to SMS, email and WhatsApp.

Web push in one script

Add the SDK to your site:

<script src="https://api.wezend.com/zc-push.js"></script>
<script>zcPush({ key: "wz_pk_YOUR_PUBLIC_KEY" });</script>

The script defines a single global function, zcPush() — you control when to call it (after a meaningful action, not on page load, because it triggers the browser's permission prompt). It registers a service worker (/zc-sw.js by default; override with the sw option), asks the visitor for permission, fetches your public VAPID key and registers the device via POST /v1/push/subscribe. Pass email in the options — zcPush({ key: "wz_pk_…", email: currentUserEmail }) — to link the device to the contact profile.

Web push uses the open VAPID standard — it works in Chrome, Edge, Firefox and Safari without any app-store involvement.

Mobile push (FCM)

For iOS/Android apps, connect your Firebase Cloud Messaging server key under Settings → Channels → Push, then register device tokens with the same POST /v1/push/subscribe endpoint from your app code — send { "kind": "fcm", "token": "…", "email": "…" } with your public key (wz_pk_…) in the X-ZC-Key header.

Sending

Push is not a channel on POST /v1/messages/send. Send to a single contact with POST /v1/push/test (by contact_id or email) or with a push step in a journey. For one-to-many, create a broadcast — this endpoint requires a dashboard session (a JWT from POST /v1/auth/login), not an API key:

curl -X POST https://api.wezend.com/v1/push/broadcasts \
  -H "Authorization: Bearer $WEZEND_JWT" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "Flash sale ⚡",
    "body": "25% off everything until midnight.",
    "url": "https://shop.example.com/sale",
    "segment_id": "seg_active_shoppers"
  }'

Clicks are reported back via POST /v1/push/event (the SDK does this for you), so broadcast analytics show delivered → shown → clicked, and click-through feeds journey goals just like email clicks.

One platform. Every customer interaction.

Replace your patchwork of messaging APIs, CDP and automation tools with a single engagement platform built for scale.

No credit card required · EU data residency · 99.99% uptime SLA