WasenderCRM logoWasenderCRM
WASENDERCRM API

From account to first message.

This guide walks you through the complete WasenderCRM flow. You can test the product without an administrator: create an account, open your dashboard, link an authorized WhatsApp device, and generate a workspace key.

Quick start

Start here: Create your free WasenderCRM workspace. The Starter plan is created automatically for testing.
  1. Open the dashboard and select Create account.
  2. Enter your name, email, and an 8+ character password.
  3. Click Create workspace and give your WhatsApp line a name.
  4. Scan the QR displayed in step 2 using WhatsApp โ†’ Linked devices โ†’ Link a device.
  5. When status changes to connected, click Generate API key.
  6. Copy the key immediately. It is only displayed once.

Account & dashboard

Your user account is isolated to your own customer workspace. The dashboard shows your plan, expiry time, WhatsApp workspace status, QR linking area, API keys, and a ready-to-copy API example. You can sign out at any time; session cookies are HTTP-only and secure in production.

POST/user/api/signup
{
  "name": "Acme Support",
  "email": "you@example.com",
  "password": "a-strong-password"
}

After sign-up, the server creates a customer, assigns the Starter plan, starts a user session, and opens the dashboard.

Connect WhatsApp

In the dashboard, create a workspace such as Support line. Wait for its QR code, then scan it only from a WhatsApp account you own or are authorized to operate. The QR is refreshed while the device is connecting. A linked device appears as connected.

API keys

API keys are scoped to one WhatsApp workspace, stored as hashes, and shown once. If you lose a key, revoke it and create another. If a payment is pending, failed, disputed, refunded, or unverified, the key is locked and no API action runs.

POST/user/api/sessions/:id/keys
{ "label": "CRM production key" }

Send a message

Use the key from your dashboard after the workspace is connected.

POST/api/send-message
curl -X POST https://your-domain.example/api/send-message \
  -H "Authorization: Bearer wa_your_key" \
  -H "Content-Type: application/json" \
  -d '{"to":"919876543210","message":"Hello from WasenderCRM"}'

Successful response

{
  "success": true,
  "message_id": "BAE...",
  "log_id": 42,
  "quota": { "used": 1, "limit": 1000 }
}

Responses & errors

StatusCodeMeaning
401USER_AUTH_REQUIRED / INVALID_API_KEYSign in or provide a valid key.
403CUSTOMER_INACTIVE / SUBSCRIPTION_EXPIREDAccount or plan access is unavailable.
423PAYMENT_LOCKEDPayment needs verification; no send is attempted.
429QUOTA_EXCEEDED / RATE_LIMITEDPlan or request rate limit reached.
503SESSION_NOT_CONNECTEDLink or reconnect the WhatsApp workspace.