Skip to content
Wbiztool

Reminders API

List reminders API

Get the reminders in your workspace, 50 at a time, newest first. Use it to find reminder IDs, audit your automations or back them up.

POSThttps://wbiztool.com/api/v1/reminder/list/

Body: JSON or form fields

This endpoint only accepts POST. A GET request, even with a query string, returns HTTP 400 with Invalid JSON format: Expecting value….

The list includes active and paused reminders from the whole workspace, whether they were created through the API or on the Reminders page. Cancelled reminders are not included.

Quick example#

curl -X POST https://wbiztool.com/api/v1/reminder/list/ \
  -H "Content-Type: application/json" \
  -d '{
    "client_id": 12345,
    "api_key": "YOUR_API_KEY",
    "page": 1
  }'

Replace 12345 and YOUR_API_KEY with your own values. See Authentication for where to find them.

Request parameters#

client_idintegerrequired

Your API Client ID from Settings → API keys.

api_keystringrequired

Your API key from the same page.

pageintegeroptional

Page number, starting at 1 (default). Each page holds 50 reminders, and the page size can't be changed. A value that isn't a whole number of 1 or more is treated as 1.

Response#

A successful request returns HTTP 200:

{
  "reminders": [
    {
      "id": 3187,
      "name": "Monthly rent reminder",
      "to_number": "919876543210",
      "message_template": "Hi Aman, a reminder that your rent is due on {current_date_formatted}.",
      "msg_type": 0,
      "msg_type_display": "Text",
      "img_url": "",
      "file_name": "",
      "cron_expression": "0 10 1 * *",
      "next_run": "2026-10-01 10:00:00 UTC",
      "is_active": true,
      "whatsapp_client_id": 678,
      "created_at": "2026-09-16 04:45:12"
    }
  ],
  "total": 1,
  "page": 1,
  "page_size": 50,
  "message": "Success",
  "status": 1
}
FieldTypeDescription
statusinteger1 on success, 0 if the request failed.
messagestringSuccess, otherwise the error.
remindersarrayThe reminders on this page, newest first. Empty if the page is past the end.
totalintegerReminders in the workspace, across all pages.
pageintegerThe page returned.
page_sizeintegerAlways 50.

Reminder fields#

FieldTypeDescription
idintegerThe reminder ID. Use it with Cancel reminder.
namestringThe reminder name, or Unnamed Reminder if it has none.
to_numberstringPhone number or group name the reminder is sent to.
message_templatestringThe message, with template variables not yet filled in.
msg_typeinteger0 text, 1 image, 2 file.
msg_type_displaystringText, Image or File.
img_urlstring or nullImage URL for image reminders, or the file URL for file reminders created through the API. Can be empty or null otherwise.
file_namestring or nullFor file reminders: the file URL (reminders created in the dashboard) or the file name (reminders created through the API, whose URL is in img_url). Can be empty or null otherwise.
cron_expressionstringThe schedule. See Cron expressions.
next_runstringNext time the schedule matches, as YYYY-MM-DD HH:MM:SS UTC, or Invalid cron if the expression can't be read. See the warning below.
is_activebooleantrue if the reminder is running, false if it's paused.
whatsapp_client_idinteger or nullThe WhatsApp number it sends from, or null if it uses the first connected number.
created_atstringWhen the reminder was created, in UTC, as YYYY-MM-DD HH:MM:SS.

Errors#

Errors return HTTP 400 with status set to 0, unless noted:

{ "status": 0, "message": "Upgrade your plan to use reminders feature" }
MessageHow to fix it
Invalid JSON format: …The JSON body isn't valid. You also get this for a GET request or a form request without client_id.
Auth Error - Please send correct API key and Client idSend both client_id and api_key.
Invalid client idSend client_id as a number.
Auth Error: invalid api keyThe key belongs to a different client_id.
Auth Error: please check client idThe key isn't linked to a workspace. Create a new key in the workspace you want to use.
Demo Account cannot access APIsUse a regular account.
Upgrade your plan to use reminders featureYour plan doesn't include reminders. Upgrade your plan. Existing reminders keep running and using credits after a downgrade, and can't be listed, cancelled or paused until you upgrade.
Error fetching reminders: … (HTTP 500)Something went wrong on our side. Try again.

If the api_key doesn't exist or has been deleted, the response is an HTML error page with HTTP 500 instead of JSON. Test your key with Check credentials.

Reading every page#

Keep requesting the next page until a page has fewer than 50 reminders.

Fetch all reminders
import requests

reminders, page = [], 1

while True:
    response = requests.post(
        "https://wbiztool.com/api/v1/reminder/list/",
        json={"client_id": 12345, "api_key": "YOUR_API_KEY", "page": page},
        timeout=60,
    )
    try:
        result = response.json()
    except ValueError:
        raise SystemExit(f"HTTP {response.status_code}: not JSON. Check that your api_key exists.")
    if result["status"] != 1:
        raise RuntimeError(result["message"])

    reminders += result["reminders"]
    if len(result["reminders"]) < result["page_size"]:
        break
    page += 1

print(len(reminders), "reminders")

Tips#

  • Store your own copy of each reminder's timezone when you create it, since this endpoint doesn't return it.
  • Find paused reminders by filtering on is_active being false. Resume them on the Reminders page.
  • Clean up old automations: first collect the IDs you want to cancel across every page, then call Cancel reminder for each one. Cancelling while you page shifts later reminders onto earlier pages, so some get skipped.