Campaigns

Send Batch Campaign

Sends messages in bulk with content individualized per recipient. Each item in the messages array can have a different number and text.

POSThttps://api.zapzapapi.com/api/v1/{instanceId}/sender/advanced

Authentication with the x-api-key and x-api-secret headers.

Parameters

NameTypeInRequiredDescription
messagestextareabodyYesMessages (array of objects)
delayMinnumberbodyNoMinimum delay (seconds)
delayMaxnumberbodyNoMaximum delay (seconds)
folder_idtextbodyNoFolder ID
infotextbodyNoAdditional information about the campaign
scheduled_fornumberbodyNoSchedule for (timestamp in milliseconds or minutes from now)

Request example

curl

curl -X POST "https://api.zapzapapi.com/api/v1/{instanceId}/sender/advanced" \
  -H "x-api-key: YOUR_API_KEY" \
  -H "x-api-secret: YOUR_API_SECRET" \
  -H "Content-Type: application/json" \
  -d '{"messages":"[{\"number\":\"5511999999999\",\"text\":\"Olá!\"}]"}'

Node.js

const res = await fetch("https://api.zapzapapi.com/api/v1/{instanceId}/sender/advanced", {
  method: "POST",
  headers: {
    "x-api-key": "YOUR_API_KEY",
    "x-api-secret": "YOUR_API_SECRET",
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    "messages": "[{\"number\":\"5511999999999\",\"text\":\"Olá!\"}]"
  }),
});
console.log(await res.json());

Python

import requests

res = requests.post(
    "https://api.zapzapapi.com/api/v1/{instanceId}/sender/advanced",
    headers={"x-api-key": "YOUR_API_KEY", "x-api-secret": "YOUR_API_SECRET"},
    json={"messages":"[{\"number\":\"5511999999999\",\"text\":\"Olá!\"}]"},
)
print(res.json())

Response example

JSON

{
  "count": 1,
  "folder_id": "r5eb3b483c43f69",
  "status": "queued"
}

Values are illustrative; the fields follow the real response format.

See the full reference

Get your API keys

Create your account, connect a number in minutes and start using the API. R$15 per active number/month, with a welcome credit when you create the account, subject to the current campaign.