Skip to main content

Pilot Status API Overview

Pilot Status is a platform for sending WhatsApp messages (transactional and marketing/bulk) with template control, versioning, and operational visibility via dashboard, API, and webhooks.

Base URL

https://pilotstatus.com.br/v1

Authentication

Every request requires an API key sent in the x-api-key header (or x-api-key-id with the key ID). Keys use the ps_ prefix.
The API does not use Authorization: Bearer tokens. Always authenticate with the x-api-key: ps_... header (or x-api-key-id).
curl "https://pilotstatus.com.br/v1/messages/msg_abc" \
  -H "x-api-key: ps_your_key_here"

Key scopes

ScopeBound toCan call
Number-scoped (default)One WhatsApp numberAll action/data endpoints for that number: POST /v1/messages/send, message status, cancel, groups, newsletters, templates, analytics, media
Tenant-scoped (singleton)The tenant (no number)Only number lifecycle management: /v1/numbers/* and /v1/remote-pairing/*
See API Authentication for details.

Core concepts

  • Template: a versioned message model referenced by templateId on API sends. For Meta numbers, templates are submitted to Meta for approval; for non-official WhatsApp API (Evolution) numbers, they are created locally without an approval step.
  • Message: a send attempt created by POST /v1/messages/send.
  • Webhooks: delivery events (sent/delivered/read/failed) and inbound messages (reply/received/group).
  • Read receipts: READ status, readAt, and the message.read webhook only occur when the recipient contact has WhatsApp read receipts enabled.

Typical integration flow

1

Create templates

Create templates in the dashboard (/templates).
2

Connect WhatsApp

Configure your WhatsApp number/instance in the dashboard (/profile and /numbers).
3

Create an API key

Create an API key on the /api-keys page.
4

Send messages

Send messages with POST /v1/messages/send.
5

Track delivery

Query status with GET /v1/messages/{messageId} and/or consume events via webhooks.

Common HTTP errors

StatusMeaning
400Invalid payload (e.g., phone not in E.164, missing required fields)
401Missing or invalid x-api-key / x-api-key-id header
402Paid subscription required (e.g., SUBSCRIPTION_REQUIRED_FOR_MEDIA)
403Valid key, but operation blocked (e.g., wrong key scope)
404Resource not found within the key’s scope
429Rate limit exceeded

Warnings (WhatsApp / anti-spam)

High-volume and unsolicited sending can trigger WhatsApp anti-spam mechanisms (rate limits, blocks, and bans). You are responsible for opt-in/consent and compliance with applicable laws and WhatsApp policies.