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
Accept
header totext/xml
orapplication/xml
to get XML response.
Authentication
- API Key (APIKey)
- Parameter Name: APIKey, in: header.
API Key
Get user data using API Key
GET /wachat_api/1.0/auth/api_key
curl https://api.wachat-api.com/wachat_api/1.0/auth/api_key \
-H "APIKey: {YOUR_APIKEY}" \
-H 'Content-Type: application/json' \
# --insecure # Ignore SSL Verification
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}/auth/api_key',
headers=HEADERS,
# verify=False # Skip SSL Verification
)
print(r.json())
package main
import (
"fmt"
"io/ioutil"
"net/http"
)
func main() {
headers := map[string][]string{
"Accept": []string{"application/json"},
"APIKey": []string{"YOUR_API_KEY"},
}
url := "https://api.wachat-api.com/wachat_api/1.0/auth/api_key"
req, _ := 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))
// ...
}
<?php
$BASE_URL = "https://api.wachat-api.com/wachat_api/1.0/auth/api_key";
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_HTTPHEADER => array(
'APIKey: {YOUR_API_KEY}',
'Content-Type: application/json'
),
CURLOPT_URL => $BASE_URL,
// CURLOPT_SSL_VERIFYPEER => 0, // Skip SSL Verification
));
$resp = curl_exec($curl);
echo $resp;
curl_close($curl);
const axios = require('axios');
const headers = {
'Accept':'application/json',
'APIKey':'YOUR_API_KEY'
};
const url = 'https://api.wachat-api.com/wachat_api/1.0/auth/api_key'
axios.get(url, {headers: headers})
.then(function(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);
}
});
require 'rest-client'
require 'json'
headers = {
'Accept' => 'application/json',
'APIKey' => 'YOUR_API_KEY'
}
url = 'https://api.wachat-api.com/wachat_api/1.0/auth/api_key'
result = RestClient.get(url, headers=headers)
puts JSON.parse(result)
Example responses
200 Response
{
"error": false,
"message": "Data message",
"data": {
"userid": "string",
"idPerson": 0,
"idClient": 0
}
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Successful Response | PersonResponse |
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_base64
andmedia_url
is provided, the API will usemedia_base64
to be media parameter. - Allowed file type: docx, jpg, jpeg, png, pdf, webm, mp4.
media_url
is 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
sender
parameter 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
sender
is now deprecated. Please usequeue
parameter 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 |
Person
{
"userid": "string",
"idPerson": 0,
"idClient": 0
}
Person
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
userid | string | true | none | none |
idPerson | integer | true | none | none |
idClient | integer | true | none | none |
PersonResponse
{
"error": false,
"message": "Data message",
"data": {
"userid": "string",
"idPerson": 0,
"idClient": 0
}
}
PersonResponse
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
error | boolean | false | none | none |
message | string | false | none | none |
data | Person | true | 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 |