WAChat API v1.0
Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.
API Host
Host: https://api.wachat-api.com
You can use this host to make real transaction.
Grab your APIKey on app.wachat-api.com, on Account > User management menu.
API Usage Notes
- Take attentions to you gateway daily limit.
Response
Success
HTTP Response Code, either 200, 201, 202 or 204 and
error=false on the json response is success request.
- 200: Request succeed
- 201: Request succeed and data saved/updated
- 204: Removal request succeed
Failed / Error
All neither 200, 201 nor 204 HTTP response code is failed response.
HTTP Status Code
- 401 or 403: Authentication failure
- 400: Invalid HTTP request parameter.
- 404: Not found
- 405: Method not allowed
- 422: Invalid parameter value / format
- 429: Rate limit
- 50X: Server Error
Response Content Type
- Set
Acceptheader totext/xmlorapplication/xmlto get XML response.
Authentication
- API Key (APIKey)
- Parameter Name: APIKey, in: header.
WA Chat
Get Gateway Balance
GET /wachat_api/1.0/sender/{sender}
package main
import (
"fmt"
"io/ioutil"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"application/json"},
"Accept": []string{"application/json"},
"APIKey": []string{"YOUR_API_KEY"},
}
url := "https://api.wachat-api.com/wachat_api/1.0/sender/{YOUR_SENDER}"
req, err := http.NewRequest("GET", url, nil)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
panic(err)
}
body, _ := ioutil.ReadAll(resp.Body)
fmt.Println(string(body))
// ...
}
const axios = require('axios');
const headers = {
'Accept':'application/json',
'APIKey':'YOUR_API_KEY'
};
const url = 'https://api.wachat-api.com/wachat_api/1.0/sender'
var sender = 'YOUR_SENDER'
axios.get(url + '/' + sender, {headers})
.then(response => {
console.log(response.data)
})
.catch(error => {
if (error.response) {
console.error(error.response.data)
} else if (error.request) {
console.error(error.request)
} else {
console.error(error.message);
}
});
$BASE_URL = 'https://api.wachat-api.com/wachat_api/1.0/sender';
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_URL => $BASE_URL . '/{YOUR_WA_SENDER}',
CURLOPT_HTTPHEADER => array(
"APIKey: {YOUR_API_KEY}",
'Content-Type:application/json'
),
// CURLOPT_SSL_VERIFYPEER => 0, // Skip SSL Verification
));
$resp = curl_exec($curl);
if (!$resp) {
die('Error: "' . curl_error($curl) . '" - Code: ' . curl_errno($curl));
} else {
echo $resp;
}
curl_close($curl);
import requests
BASE_URL = 'https://api.wachat-api.com/wachat_api/1.0'
HEADERS = {
"Accept": "application/json",
"APIKey": "{YOUR_API_KEY}"
}
r = requests.get(
BASE_URL + '/sender/{YOUR_WA_SENDER}',
headers=HEADERS,
# Skip SSL Verification
# verify=False
)
print(r.json())
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json',
'APIKey' => '{YOUR_API_KEY}'
}
url = 'https://api.wachat-api.com/wachat_api/1.0'
result = RestClient.get(
url + '/sender/{YOUR_SENDER}',
headers=headers
)
puts JSON.parse(result)
curl "https://api.wachat-api.com/wachat_api/1.0/sender/{YOUR_WA_SENDER}" \
-H "accept: application/json" \
-H "APIKey: {YOUR_API_KEY}"
# --insecure # Ignore SSL Verification
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| sender | path | string | true | none |
Example responses
200 Response
{
"error": false,
"message": "Data message",
"data": {
"idClient": 0,
"name": "string",
"counter": 0,
"limit": 0
}
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Successful Response | WAGatewayResponse |
| 422 | Unprocessable Entity | Validation Error | HTTPValidationError |
Send Media
POST /wachat_api/1.0/media
package main
import (
"bytes"
"encoding/json"
"fmt"
"io/ioutil"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"application/json"},
"Accept": []string{"application/json"},
"APIKey": []string{"YOUR_API_KEY"},
}
payload, _ := json.Marshal(map[string]string{
"queue": " YOUR_DEVICE_ID ",
"destination": "628xxxxxxxxxx",
"caption": "Caption text",
"media_url": "https://example.com/image_name.png",
})
url := "https://api.wachat-api.com/wachat_api/1.0/media"
req, err := http.NewRequest("POST", url, bytes.NewBuffer(payload))
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
panic(err)
}
body, _ := ioutil.ReadAll(resp.Body)
fmt.Println(string(body))
// ...
}
const axios = require('axios');
const headers = {
Accept: 'application/json',
APIKey: 'YOUR_API_KEY'
};
var data = {
destination: '628xxxxxxxxxx',
queue: 'YOUR_DEVICE_ID',
caption: 'Caption text',
media_url: 'https://example.com/your-image.png'
}
const url = 'https://api.wachat-api.com/wachat_api/1.0/media'
axios.post(url, data, {headers})
.then(response => {
console.log(response.data)
})
.catch(error => {
if (error.response) {
console.error(error.response.data)
} else if (error.request) {
console.error(error.request)
} else {
console.error(error.message);
}
});
<?php
$URL = 'https://api.wachat-api.com/wachat_api/1.0/media';
$curl = curl_init();
$payload = json_encode(array(
'caption' => 'Caption text',
'queue' => '{YOUR_DEVICE_ID}',
'destination' => '628xxxxxxxxxx',
'media_url' => 'https://example.com/image_name.png'
));
curl_setopt_array($curl, array(
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_URL => $URL,
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => array(
"APIKey: {YOUR_API_KEY}",
'Content-Type: application/json'
),
CURLOPT_POSTFIELDS => $payload,
// CURLOPT_SSL_VERIFYPEER => 0, // Skip SSL Verification
));
$resp = curl_exec($curl);
if (!$resp) {
die('Error: "' . curl_error($curl) . '" - Code: ' . curl_errno($curl));
} else {
echo $resp;
}
curl_close($curl);
import base64
import requests
with open('filename.png', 'rb') as file_descriptor:
file_data = file_descriptor.read()
base64_file = base64.b64encode(file_data).decode('utf8')
headers = {
"Accept": "application/json",
"APIKey": "{YOUR_API_KEY}"
}
payloads = {
'destination': '628xxxxxxxxxx',
'queue': '{YOUR_DEVICE_ID}',
'media_base64': base64_file,
'file_name': 'your_image_file.png',
'caption': 'Caption text'
}
# Send file with base64 encoded file
r = requests.post(
'https://api.wachat-api.com/wachat_api/1.0/media',
headers=headers,
json=payloads,
# verify=False # Skip SSL Verification
)
print(r.json())
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json',
'APIKey' => 'YOUR_API_KEY',
'Content-Type' => 'application/json',
}
payloads = {
'destination' => '628xxxxxxxxxx',
'queue' => 'YOUR_DEVICE_ID',
'caption' => 'Caption text',
'media_url' => 'https://example.com/your-image.png'
}
base_url = 'https://api.wachat-api.com/wachat_api/1.0'
response = RestClient::Request.new({
method: :post,
url: base_url + '/media',
payload: payloads.to_json,
headers: headers
}).execute do |response, request, result|
case response.code
# Success
when 201
[ :success, puts(response.to_str) ]
when 400
[
:error,
puts("Failed status_code=#{response.code} response=#{response.to_str}")
]
when 403
[
:error,
puts("Failed status_code=#{response.code} response=#{response.to_str}")
]
when 422
[
:error,
puts("Failed status_code=#{response.code} response=#{response.to_str}")
]
else
[
:error,
puts("Failed response=#{response.to_str}")
]
end
end
curl -X POST "https://api.wachat-api.com/wachat_api/1.0/media" \
-H 'Content-type: application/json; charset=utf-8' \
-H "Accept: application/json" \
-H "APIKey: {YOUR_API_KEY}" \
-d "{
\"queue\": \"{YOUR_DEVICE_ID}\",
\"destination\": \"628xxxxxxxxxx\",
\"caption\": \"Caption text\",
\"media_url\": \"https://example.com/image_name.png\"
}"
# --insecure # Ignore SSL Verification
Warning
Note
- Queue is Your WA Gateway Device ID
- If
media_base64andmedia_urlis provided, the API will usemedia_base64to be media parameter. - Allowed file type: docx, jpg, jpeg, png, pdf, webm, mp4.
media_urlis any HTTP URL of a file that can be directly downloaded- Max media size is 512.0 Kilobytes for JPG, JPEG, PNG, PDF, and 1 Megabytes for MP4, WEBM.
- Timeout (default: 86400 seconds) argument is message timeout in second.
If the message exceeds the timeout before it has being sent,
the status of the message is going to be
F(Failed). - This endpoint will consume 2 of your sender Counter.
- Gateway message counter is limited to 1000 counter every day.
Body parameter
{
"sender": "string",
"queue": "string",
"timeout": 86400,
"is_group": false,
"destination": "string",
"caption": "string",
"media_url": "http://example.com",
"media_base64": "string",
"file_name": "string"
}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| body | body | SendMediaParams | true | none |
Example responses
201 Response
{
"error": false,
"message": "Data message",
"data": {
"sender": "string",
"queue": "string",
"destination": "string",
"caption": "string",
"media_url": "string",
"ref_no": "string"
}
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 201 | Created | Successful Response | SendMediaResponse |
| 422 | Unprocessable Entity | Validation Error | HTTPValidationError |
Send Message
POST /wachat_api/1.0/message
package main
import (
"bytes"
"encoding/json"
"fmt"
"io/ioutil"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"application/json"},
"Accept": []string{"application/json"},
"APIKey": []string{"YOUR_API_KEY"},
}
payload, _ := json.Marshal(map[string]string{
"destination": "628xxxxxxxxxx",
"message": "Message text",
"queue": "YOUR_DEVICE_ID",
})
url := "https://api.wachat-api.com/wachat_api/1.0/message"
req, err := http.NewRequest("POST", url, bytes.NewBuffer(payload))
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
panic(err)
}
body, _ := ioutil.ReadAll(resp.Body)
fmt.Println(string(body))
// ...
}
const axios = require('axios');
const headers = {
Accept: 'application/json',
APIKey: 'YOUR_API_KEY'
};
var data = {
destination: '628xxxxxxxxxx',
queue: 'YOUR_DEVICE_ID',
message: 'Message text',
}
const url = 'https://api.wachat-api.com/wachat_api/1.0/message'
axios.post(url, data, {headers})
.then(response => {
console.log(response.data)
})
.catch(error => {
if (error.response) {
console.error(error.response.data)
} else if (error.request) {
console.error(error.request)
} else {
console.error(error.message);
}
});
<?php
$BASE_URL = 'https://api.wachat-api.com/wachat_api/1.0/message';
$curl = curl_init();
$payload = json_encode(array(
'destination' => '628xxxxxxxxxx',
'message' => 'Your message',
'queue' => '{YOUR_DEVICE_ID}',
));
curl_setopt_array($curl, array(
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_URL => $BASE_URL,
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => array(
"APIKey: {YOUR_API_KEY}",
'Content-Type:application/json'
),
CURLOPT_POSTFIELDS => $payload,
// CURLOPT_SSL_VERIFYPEER => 0, // Skip SSL Verification
));
$resp = curl_exec($curl);
if (!$resp) {
die('Error: "' . curl_error($curl) . '" - Code: ' . curl_errno($curl));
} else {
echo $resp;
}
curl_close($curl);
import requests
HEADERS = {
"Accept": "application/json",
"APIKey": "{YOUR_API_KEY}"
}
PAYLOADS = {
'destination': '628xxxxxxxxxx',
'queue': '{YOUR_DEVICE_ID}',
'message': "your message here.\\nGrinning face emoticon: \\\\U0001F600"
}
r = requests.post(
'https://api.wachat-api.com/wachat_api/1.0/message',
headers=HEADERS,
json=PAYLOADS,
# Skip SSL Verification
# verify=False
)
print(r.json())
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json',
'APIKey' => '{YOUR_API_KEY}',
'Content-Type' => 'application/json',
}
payloads = {
'destination' => '628xxxxxxxxxx',
'message' => 'Message text',
'queue' => '{YOUR_DEVICE_ID}',
}
base_url = 'https://api.wachat-api.com/wachat_api/1.0'
response = RestClient::Request.new({
method: :post,
url: base_url + '/message',
payload: payloads.to_json,
headers: headers
}).execute do |response, request, result|
case response.code
# Success
when 201
[ :success, puts(response.to_str) ]
when 400
[
:error,
puts("Failed status_code=#{response.code} response=#{response.to_str}")
]
when 403
[
:error,
puts("Failed status_code=#{response.code} response=#{response.to_str}")
]
when 422
[
:error,
puts("Failed status_code=#{response.code} response=#{response.to_str}")
]
else
[
:error,
puts("Failed response=#{response.to_str}")
]
end
end
curl -X POST "https://api.wachat-api.com/wachat_api/1.0/message" \
-H "accept: application/json" \
-H "Content-type: application/json" \
-H "APIKey: {YOUR_API_KEY}" \
-d "{
\"queue\": \"{YOUR_DEVICE_ID}\",
\"destination\": \"628xxxxxxxxxx\",
\"message\": \"Message text\"
}"
# --insecure # Ignore SSL Verification
Note
- Queue is Your WA Gateway Device ID
- This endpoint will add 1 counter per 2000 characters message (updated on 12 july 2021).
- Gateway message counter is limited to 1000 counter every day.
- If
senderparameter is not set, random sender will be used to send the message. - Timeout (default: 86400 seconds) argument is message timeout in second.
If the message exceeds the timeout before it has being sent,
the status of the message is going to be
F(Failed).
Body parameter
{
"sender": "string",
"queue": "string",
"timeout": 86400,
"is_group": false,
"destination": "string",
"message": "string"
}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| body | body | SendMessageParams | true | none |
Example responses
201 Response
{
"error": false,
"message": "Data message",
"data": {
"sender": "string",
"queue": "string",
"destination": "string",
"message": "string",
"ref_no": "string"
}
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 201 | Created | Successful Response | SendMessageResponse |
| 422 | Unprocessable Entity | Validation Error | HTTPValidationError |
Message Info
GET /wachat_api/1.0/status/{message_ref_no}
package main
import (
"fmt"
"io/ioutil"
"net/http"
)
func main() {
headers := map[string][]string{
"Content-Type": []string{"application/json"},
"Accept": []string{"application/json"},
"APIKey": []string{"API_KEY"},
}
url := "https://api.wachat-api.com/wachat_api/1.0/status/{YOUR_REF_NO}"
req, err := http.NewRequest("GET", url, nil)
req.Header = headers
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
panic(err)
}
body, _ := ioutil.ReadAll(resp.Body)
fmt.Println(string(body))
// ...
}
const axios = require('axios');
const headers = {
'Accept':'application/json',
'APIKey':'YOUR_API_KEY'
};
const url = 'https://api.wachat-api.com/wachat_api/1.0/status'
var ref_no = 'YOUR_REF_NO'
axios.get(url + '/' + ref_no, {headers})
.then(response => {
console.log(response.data)
})
.catch(error => {
if (error.response) {
console.error(error.response.data)
} else if (error.request) {
console.error(error.request)
} else {
console.error(error.message);
}
});
<?php
$BASE_URL = 'https://api.wachat-api.com/wachat_api/1.0/status';
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => $BASE_URL . '/{YOUR_REF_NO}',
CURLOPT_HTTPHEADER => array(
"APIKey: {YOUR_API_KEY}",
'Content-Type:application/json'
),
CURLOPT_RETURNTRANSFER => 1,
// CURLOPT_SSL_VERIFYPEER => 0, // Skip SSL Verification
));
$resp = curl_exec($curl);
if (!$resp) {
die('Error: "' . curl_error($curl) . '" - Code: ' . curl_errno($curl));
} else {
echo $resp;
}
curl_close($curl);
import requests
BASE_URL = 'https://api.wachat-api.com/wachat_api/1.0'
HEADERS = {
"Accept": "application/json",
"APIKey": "{YOUR_API_KEY}"
}
r = requests.get(
f'{BASE_URL}/status/',
headers=HEADERS,
# Skip SSL Verification
# verify=False
)
print(r.json())
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json',
'APIKey' => 'YOUR_API_KEY'
}
url = 'https://api.wachat-api.com/wachat_api/1.0'
result = RestClient.get(
url + '/status/YOUR_REF_NO',
headers=headers
)
puts JSON.parse(result)
BASE_URL=https://api.wachat-api.com/wachat_api/1.0
curl -X GET "${BASE_URL}/status/{YOUR_REF_NO}" \
-H "accept: application/json" \
-H "Content-type: application/json" \
-H "APIKey: {YOUR_API_KEY}"
# --insecure # Ignore SSL Verification
Whatsapp message status
| Status | Name | Description |
|---|---|---|
| U | UNSEND | Message is not being sent yet |
| A | ABORTED | Message is aborted (will not be sent) |
| S | SENT | Message is being sent |
| D | DELIVERED | Message is delivered to destination |
| R | READ | Message has been read |
| Q | QUEUE | Message is on queue (going to be sent) |
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| message_ref_no | path | string | true | none |
Example responses
200 Response
{
"error": false,
"message": "Data message",
"data": {
"destination": "string",
"sender": "string",
"is_group": false,
"create_date": "2019-08-24T14:15:22Z",
"sent_date": "2019-08-24T14:15:22Z",
"read_date": "2019-08-24T14:15:22Z",
"delivered_date": "2019-08-24T14:15:22Z",
"ref_no": "string",
"status": "string",
"message": "string",
"caption": "string",
"media_url": "string"
}
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Successful Response | GetMessageResponse |
| 422 | Unprocessable Entity | Validation Error | HTTPValidationError |
Inbox Push URL
import json
from flask import Flask, request
app = Flask(__name__)
@app.route('/your_callback_url', methods=['POST'])
def get_push_callback():
callback_data = {
'id': request.form.get('id'),
'gateway_no': request.form.get('gateway_number'),
'sender': request.form.get('originator'),
'receive_date': request.form.get('receive_date'),
'message': request.form.get('msg'),
}
# You might want to save the result to DB or else here
return json.dumps(callback_data)
<?php
$id = $_POST["id"];
$gateway_no = $_POST["gateway_number"];
$sender = $_POST["originator"];
$receive_date = $_POST["receive_date"];
$message = $_POST["msg"];
# you can write your code here, for example if you want to write the data to a file;
$myfile = fopen("inbox.txt", "w") or die("Unable to open file!");
fwrite($myfile, "ID: " . $id . PHP_EOL);
fwrite($myfile, "Gateway No: " . $gateway_no . PHP_EOL);
fwrite($mufile, "Sender: " . $sender . PHP_EOL);
fwrite($myfile, "Receive Date: " . $receive_date . PHP_EOL);
fwrite($myfile, "Message: " . $message . PHP_EOL);
fclose($myfile);
Set your Push URL to let us notify you of your WA message inbox.
Set Up
-
Edit Gateway setting.

-
Then fill the Push URL field.

-
Submit the form
Changelog
2022-01-31
Changed
- ✨ Parameter
senderis now deprecated. Please usequeueparameter to use your choice of one or set of sender.
2021-10-08
Changed
- ✨ Default timeout parameter on whatsapp media and message is 86400 seconds (a day)
Changelog Template
Changelog description. More info on https://keepachangelog.com
Added
New features
Changed
Changes in existing functionality
Deprecated
Soon-to-be removed features.
Fixed
Bug fixes.
Removed
Removed features.
Security
In case of vulnerabilities.
Schemas
GetMessage
{
"destination": "string",
"sender": "string",
"is_group": false,
"create_date": "2019-08-24T14:15:22Z",
"sent_date": "2019-08-24T14:15:22Z",
"read_date": "2019-08-24T14:15:22Z",
"delivered_date": "2019-08-24T14:15:22Z",
"ref_no": "string",
"status": "string",
"message": "string",
"caption": "string",
"media_url": "string"
}
GetMessage
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| destination | string | false | none | none |
| sender | string | false | none | none |
| is_group | boolean | false | none | none |
| create_date | string(date-time) | false | none | none |
| sent_date | string(date-time) | false | none | none |
| read_date | string(date-time) | false | none | none |
| delivered_date | string(date-time) | false | none | none |
| ref_no | string | false | none | none |
| status | string | false | none | none |
| message | string | false | none | none |
| caption | string | false | none | none |
| media_url | string | false | none | none |
GetMessageResponse
{
"error": false,
"message": "Data message",
"data": {
"destination": "string",
"sender": "string",
"is_group": false,
"create_date": "2019-08-24T14:15:22Z",
"sent_date": "2019-08-24T14:15:22Z",
"read_date": "2019-08-24T14:15:22Z",
"delivered_date": "2019-08-24T14:15:22Z",
"ref_no": "string",
"status": "string",
"message": "string",
"caption": "string",
"media_url": "string"
}
}
GetMessageResponse
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| error | boolean | false | none | none |
| message | string | false | none | none |
| data | GetMessage | true | none | none |
HTTPValidationError
{
"detail": [
{
"loc": [
"string"
],
"msg": "string",
"type": "string"
}
]
}
HTTPValidationError
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| detail | [ValidationError] | false | none | none |
SendMedia
{
"sender": "string",
"queue": "string",
"destination": "string",
"caption": "string",
"media_url": "string",
"ref_no": "string"
}
SendMedia
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| sender | string | false | none | none |
| queue | string | false | none | none |
| destination | string | true | none | none |
| caption | string | false | none | none |
| media_url | string | false | none | none |
| ref_no | string | true | none | none |
SendMediaParams
{
"sender": "string",
"queue": "string",
"timeout": 86400,
"is_group": false,
"destination": "string",
"caption": "string",
"media_url": "http://example.com",
"media_base64": "string",
"file_name": "string"
}
SendMediaParams
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| sender | string | false | none | none |
| queue | string | false | none | none |
| timeout | integer | false | none | none |
| is_group | boolean | false | none | none |
| destination | string | true | none | none |
| caption | string | false | none | none |
| media_url | string(uri) | false | none | none |
| media_base64 | string | false | none | none |
| file_name | string | false | none | none |
SendMediaResponse
{
"error": false,
"message": "Data message",
"data": {
"sender": "string",
"queue": "string",
"destination": "string",
"caption": "string",
"media_url": "string",
"ref_no": "string"
}
}
SendMediaResponse
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| error | boolean | false | none | none |
| message | string | false | none | none |
| data | SendMedia | true | none | none |
SendMessage
{
"sender": "string",
"queue": "string",
"destination": "string",
"message": "string",
"ref_no": "string"
}
SendMessage
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| sender | string | false | none | none |
| queue | string | false | none | none |
| destination | string | true | none | none |
| message | string | false | none | none |
| ref_no | string | true | none | none |
SendMessageParams
{
"sender": "string",
"queue": "string",
"timeout": 86400,
"is_group": false,
"destination": "string",
"message": "string"
}
SendMessageParams
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| sender | string | false | none | none |
| queue | string | false | none | none |
| timeout | integer | false | none | none |
| is_group | boolean | false | none | none |
| destination | string | true | none | none |
| message | string | true | none | none |
SendMessageResponse
{
"error": false,
"message": "Data message",
"data": {
"sender": "string",
"queue": "string",
"destination": "string",
"message": "string",
"ref_no": "string"
}
}
SendMessageResponse
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| error | boolean | false | none | none |
| message | string | false | none | none |
| data | SendMessage | true | none | none |
ValidationError
{
"loc": [
"string"
],
"msg": "string",
"type": "string"
}
ValidationError
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| loc | [anyOf] | true | none | none |
anyOf
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » anonymous | string | false | none | none |
or
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| » anonymous | integer | false | none | none |
continued
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| msg | string | true | none | none |
| type | string | true | none | none |
WAGateway
{
"idClient": 0,
"name": "string",
"counter": 0,
"limit": 0
}
WAGateway
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| idClient | integer | true | none | none |
| name | string | true | none | none |
| counter | integer | false | none | none |
| limit | integer | false | none | none |
WAGatewayResponse
{
"error": false,
"message": "Data message",
"data": {
"idClient": 0,
"name": "string",
"counter": 0,
"limit": 0
}
}
WAGatewayResponse
Properties
| Name | Type | Required | Restrictions | Description |
|---|---|---|---|---|
| error | boolean | false | none | none |
| message | string | false | none | none |
| data | WAGateway | true | none | none |