Quickstart
This guide walks you through creating an instance, connecting it, and sending your first message.
Prerequisites
- A Wappfy account (sign up)
- A WhatsApp number to connect
- An API key or Supabase JWT token
Step 1: Get your API key
curl -X POST https://api.wappfy.io/api/api-keys \
-H "Authorization: Bearer YOUR_SUPABASE_JWT" \
-H "Content-Type: application/json" \
-d '{ "name": "My First Key" }'
Save the returned key value — it is only shown once.
Step 2: Create an instance
curl -X POST https://api.wappfy.io/api/instances \
-H "X-Api-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "Production WhatsApp",
"instance_type": "waha"
}'
Save the returned id — you’ll use it in all subsequent requests.
Step 3: Connect via QR code
# Start the connection
curl -X POST https://api.wappfy.io/api/instances/INSTANCE_ID/connect \
-H "X-Api-Key: YOUR_API_KEY"
# Get the QR code
curl https://api.wappfy.io/api/instances/INSTANCE_ID/qr \
-H "X-Api-Key: YOUR_API_KEY"
Open WhatsApp on your phone, go to Linked Devices, and scan the QR code returned in the qr field (base64 image).
Step 4: Send a message
Once the instance status is connected, you can send your first message:
curl -X POST https://api.wappfy.io/api/instances/INSTANCE_ID/messages/send \
-H "X-Api-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"to": "5511999999999",
"type": "text",
"body": "Hello from Wappfy!"
}'
Response
{
"success": true,
"data": {
"message": "Message queued for delivery",
"jobId": "12345"
},
"meta": {
"requestId": "req_abc123",
"timestamp": "2026-02-10T12:00:00.000Z"
}
}
Next steps