WhatsAble
API v1Broadcasts

List broadcasts

gethttps://api.whatsable.app/v1/broadcasts
Build a request to copy

This page never sends a request. Fill in the fields, then copy the request and run it from your server.

Request
curl -X GET 'https://api.whatsable.app/v1/broadcasts'

Lists the broadcasts on the numbers this key may use, newest first. The counts are as of the last send.

Authorization

bearerAuth
headerAuthorizationBearer <nfy_live_<32 characters>>

An API key from Settings > API keys, sent as Authorization: Bearer <key>.

Query Parameters

limit?integer

How many items to return, 1 to 100.

Range1 <= value <= 100
Default25
cursor?string

The next_cursor of the previous page. An expired or malformed cursor answers 400 invalid_cursor.

Length1 <= length <= 512
number_id?string
Length1 <= length <= 64
status?string
Value in"scheduled""running""paused""completed""cancelled"

Response Body

A page of broadcasts, newest first.

application/json
  1. response
object*string
data*array<>
has_more*boolean

True when another page follows this one.

next_cursor*|

Pass as cursor to read the next page. Null on the last page. Valid for 24 hours.

Example Request
curl -X GET 'https://api.whatsable.app/v1/broadcasts'
Example Response
{  "object": "list",  "data": [    {      "object": "broadcast",      "id": "cm2v8w1a00001qz8h5e6f7g8h",      "name": "October promo",      "number_id": "cm2v8a1b20002qz8h9i0j1k2l",      "template": {        "id": "cm2v8t1a00001qz8habcd1234",        "name": "october_promo",        "language": "en_US"      },      "status": "running",      "mode": "regular",      "scheduled_at": "2026-10-20T19:51:20Z",      "time_zone": null,      "label_ids": [        "cm2v8l1a00001qz8h2b3c4d5e"      ],      "recipient_count": 1200,      "sent_count": 340,      "failed_count": 4,      "read_count": 120,      "pending_count": 856,      "started_at": "2026-10-20T19:51:21Z",      "completed_at": null,      "created_at": "2026-10-20T19:51:20Z"    }  ],  "has_more": true,  "next_cursor": "string"}