API Access

API Key

BUILDER

Your API key authenticates external requests. Keep it secret — anyone with this key can schedule messages on your account.

Loading…

Documentation

Authentication

Pass your API key in the X-API-Key header on every request.

X-API-Key: wask_your_key_here
Base URL
https://app.waschedule.com/api/v1
GET /templates

Returns all your templates with their IDs and content — use this to find the template_id for scheduling.

curl https://app.waschedule.com/api/v1/templates \
  -H "X-API-Key: wask_your_key"
POST /schedule

Schedule a message to a phone number. Pass exactly one of: text, template_id, or attachment_url.

Fields
FieldTypeDescription
phone string E.164 phone number, e.g. +12125551234
scheduled_at ISO 8601 When to send, e.g. 2026-04-01T09:00:00Z
text string Plain text message (use one of three)
template_id integer ID from GET /templates (use one of three)
attachment_url url Public URL of file to attach (use one of three)
caption string Optional caption for attachment_url
Example — schedule with template
curl -X POST https://app.waschedule.com/api/v1/schedule \
  -H "X-API-Key: wask_your_key" \
  -H "Content-Type: application/json" \
  -d '{
    "phone": "+12125551234",
    "template_id": 3,
    "scheduled_at": "2026-04-01T09:00:00Z"
  }'
Example — schedule text
curl -X POST https://app.waschedule.com/api/v1/schedule \
  -H "X-API-Key: wask_your_key" \
  -H "Content-Type: application/json" \
  -d '{
    "phone": "+12125551234",
    "text": "Thanks for signing up! We'\''ll be in touch shortly.",
    "scheduled_at": "2026-04-01T09:00:00Z"
  }'
Response
{
  "id": 42,
  "phone": "+12125551234",
  "type": "text",
  "scheduled_at": "2026-04-01T09:00:00.000000Z",
  "status": "pending"
}