REST API + MCP · WhatsApp Business API

WhatsApp Scheduled Messages API

Schedule WhatsApp sends — one-time or recurring — from your code or an AI agent. Gambot runs them automatically at the scheduled time, so you don’t maintain a cron of your own.

Create free account →Read the API docs
One-timeRecurringAuto-runTimezone-aware

How scheduling works

  • Any scheduled send — one-time or recurring — is a campaign with a scheduled trigger; Gambot’s scheduler runs it at runAt.
  • Create it with POST /campaigns (campaignTrigger = Scheduled, scheduleType = once or repeated).
  • List upcoming runs with GET /campaigns/scheduled; read outcomes with /campaigns/{id}/results.
  • A template does not need to be approved when you schedule — create it now (PENDING) and it only needs Meta approval before runAt. The create response includes a non-blocking template-status warning.

Schedule a recurring campaign

Base URL: https://api.gambot.co.il/api/v1.

POST https://api.gambot.co.il/api/v1/campaigns
Authorization: Bearer gmbt_your_token

{
  "name": "Weekly tips",
  "campaignTrigger": "Scheduled",
  "scheduleType": "repeated",
  "messageType": "Template",
  "templateId": "weekly_tips_0626",
  "keys": ["newsletter"]
}

Time periods & timezone

Scheduling and analytics use clear from / to semantics. When you ask an agent for “today”, “yesterday”, “this week” or “last 30 days”, those resolve to explicit date ranges rather than leaving the agent to guess. Day boundaries follow the account’s configured business timezone so “today” means what your team expects.

With an AI agent (MCP)

You Schedule this WhatsApp campaign for tomorrow at 10 AM.

You Send the weekly_tips template to the newsletter tag every Monday morning.

You What campaigns are scheduled to run this week?

Schedule your first send

Create a free account, connect WhatsApp, and schedule a one-time or recurring campaign.

Frequently asked questions

How do I schedule a WhatsApp message via API?

Create a campaign with a Scheduled trigger (scheduleType once or repeated) via POST /campaigns; Gambot’s scheduler runs it automatically at runAt. List upcoming runs with GET /campaigns/scheduled.

Can the template be pending approval when I schedule?

Yes. You can schedule with a PENDING template; it only needs Meta approval before the scheduled run time. The create response returns a non-blocking template-status warning.

Which timezone is used for “today” and scheduling?

Date ranges resolve to explicit from/to values, and day boundaries follow the account’s configured business timezone so agents never have to guess.

Do I need my own scheduler / cron?

No — Gambot runs scheduled and recurring campaigns for you.