REST API v1 · QR Connection

WhatsApp QR REST API

Send WhatsApp messages programmatically from a QR-connected number — by OnlineLiveSupport CRM.

📦 Base URL: crm.onlinelivesupport.com 🔑 Token Auth ✅ No Meta Approval

Overview

This REST API lets you send WhatsApp messages — text, image, video, audio, document, and location — from a WhatsApp number connected via QR code in the OnlineLiveSupport CRM dashboard. No Meta Business API, template approval, or phone-number verification is required.

Base URL

https://crm.onlinelivesupport.com

Self-hosted / white-label instances use their own domain as the base URL.

Authentication

Every request is authenticated with your API Token, sent as token in the JSON request body.

Get your token: CRM Dashboard → Add WhatsApp by QR → Rest API tab → Copy API Token.

🔒 Keep your token secret. It grants full sending access to your connected WhatsApp number. Never expose it in client-side code or public repositories.

Send a Message

POST   /api/qr/rest/send_message

POST https://crm.onlinelivesupport.com/api/qr/rest/send_message

Content-Type: application/json

Parameters

Required (all message types)

ParameterTypeDescriptionExample
tokenstringYour API Token (authentication).eyJhbGci...
requestTypestringUse POST to send a message.POST
messageTypestringOne of: text, image, video, audio, document, location.text
fromstringYour connected WhatsApp number with country code. Leading + is optional.601159543635
tostringRecipient's number with country code.60134317148

Type-specific fields

messageTypeAdditional fieldsNotes
texttext (required)Plain text message body.
imageimageUrl (required), caption (optional)Direct URL to image file.
videovideoUrl (required), caption (optional)Direct URL to video file.
audioaacUrl (required)Must be AAC audio format.
documentdocUrl (required), caption (optional)PDF, DOCX, etc.
locationlat (required), long (required), title (optional)GPS coordinates.

Request Examples

Text Message

curl -X POST 'https://crm.onlinelivesupport.com/api/qr/rest/send_message' \
  -H 'Content-Type: application/json' \
  -d '{
    "token": "YOUR_API_TOKEN",
    "requestType": "POST",
    "messageType": "text",
    "from": "601159543635",
    "to": "60134317148",
    "text": "Hello from the WhatsApp QR REST API!"
  }'

Node.js (axios)

const axios = require('axios');

await axios.post('https://crm.onlinelivesupport.com/api/qr/rest/send_message', {
  token: 'YOUR_API_TOKEN',
  requestType: 'POST',
  messageType: 'text',
  from: '601159543635',
  to: '60134317148',
  text: 'Hello from Node.js! 👋'
});

Image (with caption)

{
  "token": "YOUR_API_TOKEN",
  "requestType": "POST",
  "messageType": "image",
  "from": "601159543635",
  "to": "60134317148",
  "imageUrl": "https://example.com/photo.jpg",
  "caption": "Your order receipt"
}

Video

{
  "token": "YOUR_API_TOKEN",
  "requestType": "POST",
  "messageType": "video",
  "from": "601159543635",
  "to": "60134317148",
  "videoUrl": "https://example.com/demo.mp4",
  "caption": "Watch your delivery update"
}

Audio

{
  "token": "YOUR_API_TOKEN",
  "requestType": "POST",
  "messageType": "audio",
  "from": "601159543635",
  "to": "60134317148",
  "aacUrl": "https://example.com/voice-note.aac"
}

Document

{
  "token": "YOUR_API_TOKEN",
  "requestType": "POST",
  "messageType": "document",
  "from": "601159543635",
  "to": "60134317148",
  "docUrl": "https://example.com/invoice.pdf",
  "caption": "Invoice #1024"
}

Location

{
  "token": "YOUR_API_TOKEN",
  "requestType": "POST",
  "messageType": "location",
  "from": "601159543635",
  "to": "60134317148",
  "lat": "3.1390",
  "long": "101.6869",
  "title": "Our Store — Kuala Lumpur"
}

Responses

✅ Success

{
  "success": true,
  "message": "Message sent successfully"
}

❌ Error — missing parameters

{
  "success": false,
  "message": "Missing required parameters: messageType, from, to"
}

❌ Error — invalid token

{
  "success": false,
  "message": "Invalid API token"
}
📌 Note: The from number must be an active WhatsApp number connected via QR in your CRM Devices panel. The leading + in phone numbers is optional and is stripped automatically.

Getting Started

  1. Log in to your OnlineLiveSupport CRM at crm.onlinelivesupport.com.
  2. Go to Add WhatsApp by QRAdd Device and scan the QR code with your WhatsApp mobile app.
  3. Open the Rest API tab at wa-qr-rest-api and copy your API Token.
  4. Send your first message using the examples above.

No account yet?

Start your free 3-day trial — no credit card required.

Start Free Trial →

Frequently Asked Questions

Does this API require Meta Business API approval?

No. This API uses a WhatsApp number connected via QR code — no Meta Business API approval, no template approval, and no phone number verification is required.

Can I use this API with Node.js, Python or PHP?

Yes. Any language that can make HTTP POST requests works — Node.js (axios/fetch), Python (requests), PHP (cURL), Ruby, Go, etc. See the Node.js example above.

Where do I get my API Token?

Log in to crm.onlinelivesupport.com, connect WhatsApp via QR, then go to Add WhatsApp by QR → Rest API tab to copy your token.

Is there an n8n node for this API?

Yes. Install the official n8n community node: npm i n8n-nodes-whatsapp-crm-marketing. See the WhatsApp Node.js page for full setup instructions.