Back to Nodes

Zaple

Last updated Jul 29, 2026

n8n community node for the Zaple.ai WhatsApp Business API

60 Weekly Downloads
980 Monthly Downloads

Included Nodes

Zaple
Zaple Trigger

Description

n8n-nodes-zaple

An n8n community node for the Zaple.ai WhatsApp Business API — send WhatsApp template and service messages, manage message templates, run batch campaigns, capture leads, and manage product catalogs from your workflows, plus a trigger node that starts workflows from Zaple webhook events.

n8n is a fair-code licensed workflow automation platform.

  • Installation
  • Credentials
  • Operations
  • Zaple Trigger
  • Example workflows
  • Usage notes
  • Known Zaple API quirks
  • Compatibility
  • Resources
  • Version history
  • Installation

    Via the n8n UI (recommended)

    1. Open Settings → Community Nodes in your n8n instance.
    2. Select Install.
    3. Enter n8n-nodes-zaple as the npm package name.
    4. Acknowledge the community-node risk prompt and select Install.

    The Zaple and Zaple Trigger nodes appear in the node panel once installation finishes.

    Manual install (self-hosted)

    If your self-hosted instance does not allow installing community nodes through the UI:

    cd ~/.n8n/nodes
    npm install n8n-nodes-zaple
    

    Then restart n8n. See the n8n community node installation docs for details.

    Credentials

    Zaple has two separate authentication systems, so this package ships two credential types.

    Zaple API

    Used by the Message, Template, Batch, and Catalog resources.

    1. Log in at app.zaple.ai.
    2. Open Settings → API & Developer.
    3. Copy the API Key and API Secret into the n8n credential fields.
    4. Select Test — n8n performs a harmless read-only request to verify the key pair.

    Zaple Leads API

    Used only by the Lead resource — you do not need this credential otherwise.

    1. In app.zaple.ai, open the Leads settings.
    2. Create (or rotate) a Lead API key pair. The key starts with zpllead and the secret with zpls_.
    3. The secret is shown once at create/rotate time — copy it immediately.
    4. Enter both values into the n8n credential fields.

    This credential has no Test button by design: the only Leads endpoint creates data, so there is no safe read-only test request.

    Operations

    The Zaple node exposes 5 resources with 28 operations:

    | Resource | Operation | Description |
    |—|—|—|
    | Message | Send Template Message | Send a pre-approved WhatsApp template message |
    | Message | Send Service Message | Send a free-form text, image, audio, video, document, or location message inside the 24-hour customer service window |
    | Message | Get Message Status | Get the delivery status of a sent message |
    | Message | Get Message Count | Get sent/read message counts for a date range |
    | Template | Get Many | Retrieve a list of templates (filter by search, category, status, active, favorite) |
    | Template | Get | Retrieve a single template |
    | Template | Preview | Retrieve a rendered preview of a template |
    | Template | Create | Create a WhatsApp message template and submit it for Meta approval |
    | Template | Update | Update an existing template |
    | Template | Check Status | Check the Meta approval status of a template |
    | Template | Activate/Deactivate | Turn a template on or off for sending |
    | Template | Delete | Delete a template |
    | Batch | Create Contact List | Create a new contact list for batch messaging |
    | Batch | Upsert Contacts | Add contacts to a list, updating any that already exist |
    | Batch | Send Batch | Send a template message to every contact in a list, immediately or scheduled |
    | Batch | Get Batch Status | Get the current processing status of a batch send |
    | Batch | Get Batch Details | Get the paginated per-recipient results of a batch |
    | Batch | Delete List | Delete a contact list that was created via the API |
    | Batch | Delete Batch | Delete a future scheduled batch before it runs |
    | Lead | Submit | Submit a captured lead with optional attribution and custom fields |
    | Catalog | Get Many | Retrieve all product catalogs |
    | Catalog | Create | Create a new product catalog |
    | Catalog | Connect WABA | Connect a catalog to your WhatsApp Business Account |
    | Catalog | Disconnect WABA | Disconnect a catalog from your WhatsApp Business Account |
    | Catalog | List Products | Retrieve the products of a catalog |
    | Catalog | Create Product | Add a product to a catalog |
    | Catalog | Get Commerce Settings | Get the WhatsApp commerce settings of the connected account |
    | Catalog | Set Visibility | Show or hide a catalog |

    Zaple Trigger

    Zaple has no webhook-registration API, so the trigger uses a one-time manual setup:

    1. Create a workflow and add the Zaple Trigger node as its trigger.
    2. In the node, select the Events that should start the workflow.
    3. Copy the Production URL from the node’s webhook panel.
    4. In app.zaple.ai, open Settings → Webhooks and paste the URL.
    5. Activate the workflow. (While building, use the Test URL instead — it is only live while “Listen for test event” is active.)

    Security note: Zaple does not sign its webhook requests, so the node cannot verify that a delivery genuinely came from Zaple. Treat the webhook URL as a secret — anyone who knows it can start your workflow with forged payloads.

    Events

    Zaple forwards Meta/WhatsApp-native webhook envelopes. The trigger classifies each delivery and only starts the workflow for events you selected:

  • Message Status Update — a sent message changed status (sent / delivered / read / failed), including pricing info and your bizopaquecallback_data echo.
  • Incoming Message / Button Reply — a WhatsApp user sent a message or tapped a quick-reply button (the button payload is included).
  • Template Status Update — Meta approved or rejected a message template.
  • All Events — emits every delivery, including payloads the classifier does not recognize (for example, Zaple’s simpler {event, timestamp, data} shape). Select this if you need events beyond the three above.
  • Example workflows

    Send a WhatsApp template message

    1. Add a Manual Trigger node.
    2. Add a Zaple node. Set Resource to Message and Operation to Send Template Message.
    3. Set Template ID to the send-API template identifier shown in your Zaple template library, Country Code to your recipient’s country calling code (for example 91), and Send To to the recipient’s number (for example 9876543210).
    4. If the template has {{1}}, {{2}}, … placeholders, add Template Arguments in order — they are sent as template_argument1..N.
    5. Execute the workflow and check the response’s message_id.

    React to button replies

    1. Add a Zaple Trigger node as the workflow’s trigger and set Events to Incoming Message / Button Reply.
    2. Copy the Production URL from the node’s webhook panel and paste it into Zaple under Settings → Webhooks.
    3. Connect an IF node routing on {{ $json.entry[0].changes[0].value.messages[0].button.payload }} to branch on the quick-reply payload you set when sending the message (for example approve_67).
    4. Activate the workflow.

    Usage notes

    “Template ID” means three different things

    Zaple’s API uses the field name template_id for three different identifiers. Each operation’s Template ID field states which one it expects:

    | Operations | Which identifier to pass |
    |—|—|
    | Message → Send Template Message · Batch → Send Batch · Template → Get, Preview, Check Status | Send-API template identifier (shown in the Zaple template library) |
    | Template → Update, Delete | Numeric database ID (as returned by Template → Create) |
    | Template → Activate/Deactivate | Template name identifier |

    Passing the wrong kind of ID typically produces a “not found” or validation error even though the template exists.

    Template arguments

    The Template Arguments list fills the template’s {{1}}, {{2}}, … placeholders in order — the node sends them to Zaple as templateargument1, templateargument2, and so on. Likewise, Quick Reply Payloads are sent as quickreplypayload1..N in order.

    Template buttons (JSON)

    Template Create and Update take a Buttons (JSON) field — a JSON array of button objects. The shape varies by button type:

    [
      { "type": "quick_reply", "replies": [{ "text": "Yes" }] },
      { "type": "url", "websites": [{ "text": "Visit", "url": "https://example.com" }] }
    ]
    

    Other supported type values are phonenumber, copyoffer_code, and catalog. Use the exact lowercase type and key names shown above — they are passed to Zaple verbatim.

    Sending media

    Media (image / audio / video / document) can be provided in two ways:

  • Public URL — a URL that Zaple’s servers can fetch.
  • Base64 — the raw file content, base64-encoded. To send binary data produced by a previous node, select Base64 and use an expression like {{ $binary.data.data }} (n8n stores binary attachments base64-encoded in the data property).
  • Direct multipart file upload is not supported in this version. Document service messages additionally require the send-API identifier of a template configured with a document header.

    Known Zaple API quirks

  • HTTP 400 with a business error codedailylimitreached, planexpired, or insufficientbalance. These are account-level conditions (daily quota, subscription, wallet balance), not workflow bugs; resolve them in the Zaple dashboard.
  • HTTP 419 — the template is inactive, or the recipient number is blocked.
  • HTTP 422 — request validation failed; check the field errors in the response.
  • HTTP 429 — rate limited; enable Retry On Fail in the node settings if you hit this.
  • Batch Scheduled Datetime values are normalized by Zaple to the Asia/Kolkata timezone.
  • Compatibility

  • Requires n8n 1.x or later (built against the n8n-workflow 1.x API; tested on the n8n 1.x release current at publish time).
  • No runtime dependencies — the package only peer-depends on n8n-workflow, which n8n itself provides.
  • Node.js 22+ is required only for developing this package; using it inside n8n has no extra requirement.
  • Resources

  • Zaple documentation
  • Zaple
  • n8n community nodes documentation

Version history

0.1.0

Initial release: Message, Template, Batch, Lead, and Catalog resources (28 operations), the Zaple Trigger webhook node, and two credential types (Zaple API, Zaple Leads API).