// API REFERENCE
WhatsApp
Gateway API
Send messages, media, polls, buttons, lists, and more through WhatsApp programmatically. Both POST and GET methods are supported across all endpoints.
10+
API Endpoints
2x
Methods (POST/GET)
RT
Webhook Support
Send Text Message
POST /send-message ยท GET /send-message
POST
/
GET
https://wa.download.net.in/send-message
| Parameter | Type | Required | Description |
|---|---|---|---|
| api_key | string | Yes | Your API Key |
| sender | string | Yes | Your connected device number |
| number | string | Yes | Recipient number (e.g. 919090909090) |
| message | string | Yes | Text message to be sent |
JSON
{
"api_key": "1234567890",
"sender": "62888xxxx",
"number": "62888xxxx",
"message": "Hello World"
}
https://wa.download.net.in/send-message ?api_key=1234567890 &sender=9162888xxxx &number=91909090xxxx &message=Hello World
{
"status": true,
"msg": "Message sent successfully!"
}
Send Media
POST /send-media ยท GET /send-media
POST/
GET
https://wa.download.net.in/send-media
Note: The url parameter must be a direct link. Google Drive or indirect cloud storage URLs are not supported.
| Parameter | Type | Required | Description |
|---|---|---|---|
| api_key | string | Yes | Your API Key |
| sender | string | Yes | Your connected device number |
| number | string | Yes | Recipient number (e.g. 62888xxxx) |
| media_type | string | Yes | Allowed values: image, video, audio, document |
| url | string | Yes | Direct URL of the media file |
| caption | string | No | Caption/message for the media |
| footer | string | No | Footer text under the message |
JSON
{
"api_key": "1234567890",
"sender": "62888xxxx",
"number": "62888xxxx",
"media_type": "image",
"caption": "Hello World",
"footer": "Sent via mpwa",
"url": "https://example.com/image.jpg"
}
https://wa.download.net.in/send-media ?api_key=1234567890 &sender=62888xxxx &number=62888xxxx &media_type=image &caption=Hello World &footer=Sent via mpwa &url=https://example.com/image.jpg
{
"status": true,
"msg": "Message sent successfully!"
}
Send Sticker
POST /send-sticker ยท GET /send-sticker
POST/
GET
https://wa.download.net.in/send-sticker
| Parameter | Type | Required | Description |
|---|---|---|---|
| api_key | string | Yes | Your API Key |
| sender | string | Yes | Your connected device number |
| number | string | Yes | Recipient number |
| url | string | Yes | Direct URL to the sticker image |
JSON
{
"api_key": "1234567890",
"sender": "62888xxxx",
"number": "62888xxxx",
"url": "https://example.com/sticker.webp"
}
{
"status": true,
"msg": "Message sent successfully!"
}
Send Poll
POST /send-poll ยท GET /send-poll
POST/
GET
https://wa.download.net.in/send-poll
| Parameter | Type | Required | Description |
|---|---|---|---|
| api_key | string | Yes | Your API Key |
| sender | string | Yes | Your connected device number |
| number | string | Yes | Recipient number |
| name | string | Yes | Poll question/name |
| option | array | Yes | Array of poll option values |
| countable | string | Yes | "1" = single vote only, "0" = multiple votes allowed |
JSON
{
"api_key": "123456789",
"sender": "081222xxxxxx",
"number": "201111xxxxxx",
"countable": "1",
"name": "What color do you like?",
"option": ["red", "blue", "yellow"]
}
{
"status": true,
"msg": "Message sent successfully!"
}
Send Button Message
POST /send-button ยท GET /send-button
POST/
GET
https://wa.download.net.in/send-button
| Parameter | Type | Required | Description |
|---|---|---|---|
| api_key | string | Yes | Your API Key |
| sender | string | Yes | Your connected device number |
| number | string | Yes | Recipient number |
| message | string | Yes | Text of the message |
| url | string | Yes | Image or video URL (media attachment) |
| button | array | Yes | Array of buttons (max 5). Types: reply, call, url, copy. Each requires displayText plus type-specific fields. |
| footer | string | No | Footer text |
JSON
{
"api_key": "yourapikey",
"sender": "6281222xxxxxx",
"number": "201111xxxxxx",
"url": "https://imageurl.com/image.jpg",
"footer": "optional footer",
"message": "Hello, this is a button message",
"button": [
{
"type": "reply",
"displayText": "Reply Button"
},
{
"type": "call",
"displayText": "Call Button",
"phoneNumber": "6281222xxxxxx"
},
{
"type": "url",
"displayText": "URL Button",
"url": "https://google.com"
},
{
"type": "copy",
"displayText": "Copy Button",
"copyText": "123123"
}
]
}
{
"status": true,
"msg": "Message sent successfully!"
}
Send List Message
POST /send-list ยท GET /send-list
POST/
GET
https://wa.download.net.in/send-list
| Parameter | Type | Required | Description |
|---|---|---|---|
| api_key | string | Yes | Your API Key |
| sender | string | Yes | Your connected device number |
| number | string | Yes | Recipient number |
| name | string | Yes | Name of the list |
| title | string | Yes | Title of the list |
| buttontext | string | Yes | Label of the list open button |
| message | string | Yes | Message text |
| sections | array | Yes | Array of sections (min 1, max 5). Each section has title, description, and rows |
| footer | string | No | Footer text |
JSON
{
"api_key": "123456789",
"sender": "6281222xxxxx",
"number": "628222xxxxxx",
"name": "Message list",
"footer": "optional",
"title": "title list",
"buttontext": "Menu",
"message": "Hello, this is a list message",
"sections": [
{
"title": "Main Options",
"description": "Select a basic option to proceed.",
"rows": [
{
"title": "Option 1",
"rowId": "id1",
"description": "Description for option 1"
},
{
"title": "Option 2",
"rowId": "id2",
"description": "Description for option 2"
}
]
},
{
"title": "Advanced Options",
"description": "Explore advanced settings.",
"rows": [
{
"title": "Option 3",
"rowId": "id3",
"description": "Description for option 3"
}
]
}
]
}
{
"status": true,
"msg": "Message sent successfully!"
}
Send Location
POST /send-location ยท GET /send-location
POST/
GET
https://wa.download.net.in/send-location
| Parameter | Type | Required | Description |
|---|---|---|---|
| api_key | string | Yes | Your API Key |
| sender | string | Yes | Your connected device number |
| number | string | Yes | Recipient number |
| latitude | string | Yes | Latitude coordinate (e.g. 24.121231) |
| longitude | string | Yes | Longitude coordinate (e.g. 55.1121221) |
JSON
{
"api_key": "1234567890",
"sender": "62888xxxx",
"number": "62888xxxx",
"latitude": "24.121231",
"longitude": "55.1121221"
}
https://wa.download.net.in/send-location ?api_key=1234567890 &sender=62888xxxx &number=62888xxxx &latitude=24.121231 &longitude=55.1121221
{
"status": true,
"msg": "Message sent successfully!"
}
Send VCard
POST /send-vcard ยท GET /send-vcard
POST/
GET
https://wa.download.net.in/send-vcard
| Parameter | Type | Required | Description |
|---|---|---|---|
| api_key | string | Yes | Your API Key |
| sender | string | Yes | Your connected device number |
| number | string | Yes | Recipient number |
| name | string | Yes | Contact name (e.g. John Doe) |
| phone | string | Yes | Contact phone number |
JSON
{
"api_key": "1234567890",
"sender": "6281222xxxxxx",
"number": "201111xxxxxx",
"name": "John Doe",
"phone": "6281222xxxxxx"
}
{
"status": true,
"msg": "Message sent successfully!"
}
Send Product
POST /send-product ยท GET /send-product
POST/
GET
https://wa.download.net.in/send-product
| Parameter | Type | Required | Description |
|---|---|---|---|
| api_key | string | Yes | Your API Key |
| sender | string | Yes | Your connected device number |
| number | string | Yes | Recipient number |
| url | string | Yes | WhatsApp Product URL (e.g. https://wa.me/p/123456789/628xxxx) |
| message | string | No | Optional caption or message with the product |
JSON
{
"api_key": "1234567890",
"sender": "6281222xxxxxx",
"number": "201111xxxxxx",
"url": "https://wa.me/p/12345678901234567/6281222xxxxxx",
"message": "Check out this item!"
}
{
"status": true,
"msg": "Message sent successfully!"
}
Send Text to Channel
POST /send-text-channel ยท GET /send-text-channel
POST/
GET
https://wa.download.net.in/send-text-channel
| Parameter | Type | Required | Description |
|---|---|---|---|
| api_key | string | Yes | Your API Key |
| sender | string | Yes | Your connected device number |
| url | string | Yes | Channel URL (e.g. https://whatsapp.com/channel/ABCDEF123456) |
| message | string | Yes | Message to be sent |
| footer | string | Yes | Footer text under the message |
JSON
{
"api_key": "1234567890",
"sender": "6281222xxxxxx",
"url": "https://whatsapp.com/channel/ABCDEF123456",
"message": "Hello World",
"footer": "Sent via mpwa"
}
{
"status": true,
"msg": "Message sent successfully!"
}
Check Number
POST /check-number ยท GET /check-number
POST/
GET
https://wa.download.net.in/check-number
| Parameter | Type | Required | Description |
|---|---|---|---|
| api_key | string | Yes | Your API Key |
| sender | string | Yes | Your connected device number |
| number | string | Yes | Number to check (e.g. 62888xxxx) |
JSON
{
"api_key": "1234567890",
"sender": "6281222xxxxxx",
"number": "201111xxxxxx"
}
{
"status": true,
"msg": {
"exists": true,
"jid": "201111xxxxxx@s.whatsapp.net"
}
}
Webhook
Incoming message callbacks
Webhooks allow you to receive a POST callback from our server whenever a message arrives on your device. Use this to build dynamic chatbots or autoresponders. Configure your webhook URL in the device settings.
Incoming Webhook Payload
JSON โ POST to your endpoint
{
"device": "your_sender_device",
"message": "incoming text message",
"from": "sender_whatsapp_number",
"name": "Sender Name",
"participant": "sender_number_if_group",
"ppUrl": "https://profile-picture-url.jpg",
"media": {
"caption": "caption (same as message)",
"fileName": "xxxx.jpg",
"stream": {
"type": "Buffer",
"data": "base64_encoded_data"
}
},
"mimetype": "image/jpeg" // image | document | audio | etc.
}