Introduction
This API is only for duly registered users and with an active plan in the tool.
It is not released to customers under test.
To start the API integration it is necessary to have the Token of your channel.
The Token is the identifier of your channel, very important for your integration, to get your API Token just go to COMPANIES, then click on CHANNELS. On that screen click on the 3 sequential points to expand and then click on COPY TOKEN API.
Endpoint
La URL base de la API que se utilizará siempre será https://api.hand.chat/core/v1/api/
Formatos y funciones
Nuestra API acepta solo el formato JSON, por lo que todas las llamadas y solicitudes utilizan content type application/json no encode UTF-8.
POST Send text message
https://api.hand.chat/core/v1/api/sendtext/TOKEN?celular=55XXXXXXXXXX&nome=teste&message=teste%20de%20mensagem&forcar=0&verify=0
This function is used to send a text message, where the TOKEN must be replaced by your key.
PARAMS | ||
---|---|---|
celular | 55XXXXXXXXXXX | Inform the destination cell of the message with country code + DDD + number. |
nome | XxXxXxXxXxXxXx | Enter a name to identify this shipment within your history. |
message | xXxXxXxXxXxXxX | Inform the message that should be sent. |
verify | 0 or 1 | This parameter is responsible for blocking the sending of messages that the number in question has not made a previous contact, this is important so that WhatsApp does not identify your sending as SPAM. |
forcar | 0 or 1 | This parameter is responsible for blocking the sending if the number is "in service" in the system. |
var client = new RestClient("https://api.hand.chat/core/v1/api/sendtext/TOKEN?celular=55XXXXXXXXXX&nome=teste&message=teste%20de%20mensagem&forcar=0&verify=0");
client.Timeout = -1;
var request = new RestRequest(Method.POST);
IRestResponse response = client.Execute(request);
Console.WriteLine(response.Content);
curl --location --request POST 'https://api.hand.chat/core/v1/api/sendtext/TOKEN?celular=55XXXXXXXXXX&nome=teste&message=teste%20de%20mensagem&forcar=0&verify=0'
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.%7Burl%7D/core/v1/api/sendtext/TOKEN?celular=55XXXXXXXXXX&nome=teste&message=teste%2520de%2520mensagem&forcar=0&verify=0"
method := "POST"
client := &http.Client {
}
req, err := http.NewRequest(method, url, nil)
if err != nil {
fmt.Println(err)
}
res, err := client.Do(req)
defer res.Body.Close()
body, err := ioutil.ReadAll(res.Body)
fmt.Println(string(body))
}
POST /core/v1/api/sendtext/TOKEN?celular=55XXXXXXXXXX&nome=teste&message=teste%20de%20mensagem&forcar=0&verify=0 HTTP/1.1
Host: api.hand.chat
OkHttpClient client = new OkHttpClient().newBuilder()
.build();
MediaType mediaType = MediaType.parse("text/plain");
RequestBody body = RequestBody.create(mediaType, "");
Request request = new Request.Builder()
.url("https://api.hand.chat/core/v1/api/sendtext/TOKEN?celular=55XXXXXXXXXX&nome=teste&message=teste%20de%20mensagem&forcar=0&verify=0")
.method("POST", body)
.build();
Response response = client.newCall(request).execute();
Unirest.setTimeouts(0, 0);
HttpResponse<String> response = Unirest.post("https://api.hand.chat/core/v1/api/sendtext/TOKEN?celular=55XXXXXXXXXX&nome=teste&message=teste%20de%20mensagem&forcar=0&verify=0")
.asString();
var requestOptions = {
method: 'POST',
redirect: 'follow'
};
fetch("https://api.hand.chat/core/v1/api/sendtext/TOKEN?celular=55XXXXXXXXXX&nome=teste&message=teste%20de%20mensagem&forcar=0&verify=0", requestOptions)
.then(response => response.text())
.then(result => console.log(result))
.catch(error => console.log('error', error));
var settings = {
"url": "https://api.hand.chat/core/v1/api/sendtext/TOKEN?celular=55XXXXXXXXXX&nome=teste&message=teste%20de%20mensagem&forcar=0&verify=0",
"method": "POST",
"timeout": 0,
};
$.ajax(settings).done(function (response) {
console.log(response);
});
var xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function() {
if(this.readyState === 4) {
console.log(this.responseText);
}
});
xhr.open("POST", "https://api.%7Burl%7D/core/v1/api/sendtext/TOKEN?celular=55XXXXXXXXXX&nome=teste&message=teste%2520de%2520mensagem&forcar=0&verify=0");
xhr.send();
CURL *curl;
CURLcode res;
curl = curl_easy_init();
if(curl) {
curl_easy_setopt(curl, CURLOPT_CUSTOMREQUEST, "POST");
curl_easy_setopt(curl, CURLOPT_URL, "https://api.%7Burl%7D/core/v1/api/sendtext/TOKEN?celular=55XXXXXXXXXX&nome=teste&message=teste%2520de%2520mensagem&forcar=0&verify=0");
curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L);
curl_easy_setopt(curl, CURLOPT_DEFAULT_PROTOCOL, "https");
struct curl_slist *headers = NULL;
curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
res = curl_easy_perform(curl);
}
curl_easy_cleanup(curl);
var axios = require('axios');
var config = {
method: 'post',
url: 'https://api.hand.chat/core/v1/api/sendtext/TOKEN?celular=55XXXXXXXXXX&nome=teste&message=teste%20de%20mensagem&forcar=0&verify=0',
headers: { }
};
axios(config)
.then(function (response) {
console.log(JSON.stringify(response.data));
})
.catch(function (error) {
console.log(error);
});
var https = require('follow-redirects').https;
var fs = require('fs');
var options = {
'method': 'POST',
'hostname': 'api.hand.chat',
'path': '/core/v1/api/sendtext/TOKEN?celular=55XXXXXXXXXX&nome=teste&message=teste%2520de%2520mensagem&forcar=0&verify=0',
'headers': {
},
'maxRedirects': 20
};
var req = https.request(options, function (res) {
var chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function (chunk) {
var body = Buffer.concat(chunks);
console.log(body.toString());
});
res.on("error", function (error) {
console.error(error);
});
});
req.end();
var request = require('request');
var options = {
'method': 'POST',
'url': 'https://api.hand.chat/core/v1/api/sendtext/TOKEN?celular=55XXXXXXXXXX&nome=teste&message=teste%20de%20mensagem&forcar=0&verify=0',
'headers': {
}
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
var unirest = require('unirest');
var req = unirest('POST', 'https://api.hand.chat/core/v1/api/sendtext/TOKEN?celular=55XXXXXXXXXX&nome=teste&message=teste%20de%20mensagem&forcar=0&verify=0')
.end(function (res) {
if (res.error) throw new Error(res.error);
console.log(res.raw_body);
});
#import <Foundation/Foundation.h>
dispatch_semaphore_t sema = dispatch_semaphore_create(0);
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"https://api.%7Burl%7D/core/v1/api/sendtext/TOKEN?celular=55XXXXXXXXXX&nome=teste&message=teste%2520de%2520mensagem&forcar=0&verify=0"]
cachePolicy:NSURLRequestUseProtocolCachePolicy
timeoutInterval:10.0];
[request setHTTPMethod:@"POST"];
NSURLSession *session = [NSURLSession sharedSession];
NSURLSessionDataTask *dataTask = [session dataTaskWithRequest:request
completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
if (error) {
NSLog(@"%@", error);
} else {
NSHTTPURLResponse *httpResponse = (NSHTTPURLResponse *) response;
NSError *parseError = nil;
NSDictionary *responseDictionary = [NSJSONSerialization JSONObjectWithData:data options:0 error:&parseError];
NSLog(@"%@",responseDictionary);
dispatch_semaphore_signal(sema);
}
}];
[dataTask resume];
dispatch_semaphore_wait(sema, DISPATCH_TIME_FOREVER);
open Lwt
open Cohttp
open Cohttp_lwt_unix
let reqBody =
let uri = Uri.of_string "https://api.%7Burl%7D/core/v1/api/sendtext/TOKEN?celular=55XXXXXXXXXX&nome=teste&message=teste%2520de%2520mensagem&forcar=0&verify=0" in
Client.call `POST uri >>= fun (_resp, body) ->
body |> Cohttp_lwt.Body.to_string >|= fun body -> body
let () =
let respBody = Lwt_main.run reqBody in
print_endline (respBody)
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://api.%7Burl%7D/core/v1/api/sendtext/TOKEN?celular=55XXXXXXXXXX&nome=teste&message=teste%2520de%2520mensagem&forcar=0&verify=0",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
<?php
require_once 'HTTP/Request2.php';
$request = new HTTP_Request2();
$request->setUrl('https://api.hand.chat/core/v1/api/sendtext/TOKEN?celular=55XXXXXXXXXX&nome=teste&message=teste%20de%20mensagem&forcar=0&verify=0');
$request->setMethod(HTTP_Request2::METHOD_POST);
$request->setConfig(array(
'follow_redirects' => TRUE
));
try {
$response = $request->send();
if ($response->getStatus() == 200) {
echo $response->getBody();
}
else {
echo 'Unexpected HTTP status: ' . $response->getStatus() . ' ' .
$response->getReasonPhrase();
}
}
catch(HTTP_Request2_Exception $e) {
echo 'Error: ' . $e->getMessage();
}
<?php
$client = new http\Client;
$request = new http\Client\Request;
$request->setRequestUrl('https://api.hand.chat/core/v1/api/sendtext/TOKEN?celular=55XXXXXXXXXX&nome=teste&message=teste%20de%20mensagem&forcar=0&verify=0');
$request->setRequestMethod('POST');
$request->setOptions(array());
$client->enqueue($request)->send();
$response = $client->getResponse();
echo $response->getBody();
$response = Invoke-RestMethod 'https://api.hand.chat/core/v1/api/sendtext/TOKEN?celular=55XXXXXXXXXX&nome=teste&message=teste%20de%20mensagem&forcar=0&verify=0' -Method 'POST' -Headers $headers -Body $body
$response | ConvertTo-Json
import http.client
import mimetypes
conn = http.client.HTTPSConnection("api.hand.chat")
payload = ''
headers = {}
conn.request("POST", "/core/v1/api/sendtext/TOKEN?celular=55XXXXXXXXXX&nome=teste&message=teste%20de%20mensagem&forcar=0&verify=0", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
import requests
url = "https://api.hand.chat/core/v1/api/sendtext/TOKEN?celular=55XXXXXXXXXX&nome=teste&message=teste%20de%20mensagem&forcar=0&verify=0"
payload = {}
headers= {}
response = requests.request("POST", url, headers=headers, data = payload)
print(response.text.encode('utf8'))
require "uri"
require "net/http"
url = URI("https://api.hand.chat/core/v1/api/sendtext/TOKEN?celular=55XXXXXXXXXX&nome=teste&message=teste%20de%20mensagem&forcar=0&verify=0")
https = Net::HTTP.new(url.host, url.port);
https.use_ssl = true
request = Net::HTTP::Post.new(url)
response = https.request(request)
puts response.read_body
http --follow --timeout 3600 POST https://api.hand.chat/core/v1/api/sendtext/TOKEN 'celular'=='55XXXXXXXXXX' 'nome'=='teste' 'message'=='teste%20de%20mensagem' 'forcar'=='0' 'verify'=='0'
wget --no-check-certificate --quiet \
--method POST \
--timeout=0 \
--header '' \
'https://api.hand.chat/core/v1/api/sendtext/TOKEN?celular=55XXXXXXXXXX&nome=teste&message=teste%20de%20mensagem&forcar=0&verify=0'
import Foundation
var semaphore = DispatchSemaphore (value: 0)
var request = URLRequest(url: URL(string: "https://api.hand.chat/core/v1/api/sendtext/TOKEN?celular=55XXXXXXXXXX&nome=teste&message=teste%20de%20mensagem&forcar=0&verify=0")!,timeoutInterval: Double.infinity)
request.httpMethod = "POST"
let task = URLSession.shared.dataTask(with: request) { data, response, error in
guard let data = data else {
print(String(describing: error))
return
}
print(String(data: data, encoding: .utf8)!)
semaphore.signal()
}
task.resume()
semaphore.wait()
POST Send media message
https://api.hand.chat/core/v1/api/sendmedia/TOKEN?celular=55XXXXXXXXXX&message=BOLETO&extensao=pdf&file=link_do_arquivo.pdf&forcar=0&verify=0
This function is used to send a media message.
PARAMS | ||
---|---|---|
celular | 55XXXXXXXXXXX | Inform the destination cell of the message with country code + DDD + number. |
nome | XxXxXxXxXxXxXx | Enter a name to identify this shipment within your history. |
message | xXxXxXxXxXxXxX | Inform the message that should be sent. |
file | Link | Enter the link of your file to be sent. |
extensao | .pdf .doc | Enter the extension of your file. |
verify | 0 or 1 | This parameter is responsible for blocking the sending of messages that the number in question has not made a previous contact, this is important so that WhatsApp does not identify your sending as SPAM. |
forcar | 0 or 1 | This parameter is responsible for blocking the sending if the number is "in service" in the system. |
var client = new RestClient("https://api.hand.chat/core/v1/api/sendmedia/TOKEN?celular=55XXXXXXXXXX&message=BOLETO&extensao=pdf&file=link_do_arquivo.pdf&forcar=0&verify=0");
client.Timeout = -1;
var request = new RestRequest(Method.POST);
IRestResponse response = client.Execute(request);
Console.WriteLine(response.Content);
curl --location --request POST 'https://api.hand.chat/core/v1/api/sendmedia/TOKEN?celular=55XXXXXXXXXX&message=BOLETO&extensao=pdf&file=link_do_arquivo.pdf&forcar=0&verify=0'
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api.%7Burl%7D/core/v1/api/sendmedia/TOKEN?celular=55XXXXXXXXXX&message=BOLETO&extensao=pdf&file=link_do_arquivo.pdf&forcar=0&verify=0"
method := "POST"
client := &http.Client {
}
req, err := http.NewRequest(method, url, nil)
if err != nil {
fmt.Println(err)
}
res, err := client.Do(req)
defer res.Body.Close()
body, err := ioutil.ReadAll(res.Body)
fmt.Println(string(body))
}
POST /core/v1/api/sendmedia/TOKEN?celular=55XXXXXXXXXX&message=BOLETO&extensao=pdf&file=link_do_arquivo.pdf&forcar=0&verify=0 HTTP/1.1
Host: api.hand.chat
OkHttpClient client = new OkHttpClient().newBuilder()
.build();
MediaType mediaType = MediaType.parse("text/plain");
RequestBody body = RequestBody.create(mediaType, "");
Request request = new Request.Builder()
.url("https://api.hand.chat/core/v1/api/sendmedia/TOKEN?celular=55XXXXXXXXXX&message=BOLETO&extensao=pdf&file=link_do_arquivo.pdf&forcar=0&verify=0")
.method("POST", body)
.build();
Response response = client.newCall(request).execute();
Unirest.setTimeouts(0, 0);
HttpResponse<String> response = Unirest.post("https://api.hand.chat/core/v1/api/sendmedia/TOKEN?celular=55XXXXXXXXXX&message=BOLETO&extensao=pdf&file=link_do_arquivo.pdf&forcar=0&verify=0")
.asString();
var requestOptions = {
method: 'POST',
redirect: 'follow'
};
fetch("https://api.hand.chat/core/v1/api/sendmedia/TOKEN?celular=55XXXXXXXXXX&message=BOLETO&extensao=pdf&file=link_do_arquivo.pdf&forcar=0&verify=0", requestOptions)
.then(response => response.text())
.then(result => console.log(result))
.catch(error => console.log('error', error));
var settings = {
"url": "https://api.hand.chat/core/v1/api/sendmedia/TOKEN?celular=55XXXXXXXXXX&message=BOLETO&extensao=pdf&file=link_do_arquivo.pdf&forcar=0&verify=0",
"method": "POST",
"timeout": 0,
};
$.ajax(settings).done(function (response) {
console.log(response);
});
var xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function() {
if(this.readyState === 4) {
console.log(this.responseText);
}
});
xhr.open("POST", "https://api.%7Burl%7D/core/v1/api/sendmedia/TOKEN?celular=55XXXXXXXXXX&message=BOLETO&extensao=pdf&file=link_do_arquivo.pdf&forcar=0&verify=0");
xhr.send();
CURL *curl;
CURLcode res;
curl = curl_easy_init();
if(curl) {
curl_easy_setopt(curl, CURLOPT_CUSTOMREQUEST, "POST");
curl_easy_setopt(curl, CURLOPT_URL, "https://api.%7Burl%7D/core/v1/api/sendmedia/TOKEN?celular=55XXXXXXXXXX&message=BOLETO&extensao=pdf&file=link_do_arquivo.pdf&forcar=0&verify=0");
curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L);
curl_easy_setopt(curl, CURLOPT_DEFAULT_PROTOCOL, "https");
struct curl_slist *headers = NULL;
curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
res = curl_easy_perform(curl);
}
curl_easy_cleanup(curl);
var axios = require('axios');
var config = {
method: 'post',
url: 'https://api.hand.chat/core/v1/api/sendmedia/TOKEN?celular=55XXXXXXXXXX&message=BOLETO&extensao=pdf&file=link_do_arquivo.pdf&forcar=0&verify=0',
headers: { }
};
axios(config)
.then(function (response) {
console.log(JSON.stringify(response.data));
})
.catch(function (error) {
console.log(error);
});
var https = require('follow-redirects').https;
var fs = require('fs');
var options = {
'method': 'POST',
'hostname': 'api.hand.chat',
'path': '/core/v1/api/sendmedia/TOKEN?celular=55XXXXXXXXXX&message=BOLETO&extensao=pdf&file=link_do_arquivo.pdf&forcar=0&verify=0',
'headers': {
},
'maxRedirects': 20
};
var req = https.request(options, function (res) {
var chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function (chunk) {
var body = Buffer.concat(chunks);
console.log(body.toString());
});
res.on("error", function (error) {
console.error(error);
});
});
req.end();
var request = require('request');
var options = {
'method': 'POST',
'url': 'https://api.hand.chat/core/v1/api/sendmedia/TOKEN?celular=55XXXXXXXXXX&message=BOLETO&extensao=pdf&file=link_do_arquivo.pdf&forcar=0&verify=0',
'headers': {
}
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
var unirest = require('unirest');
var req = unirest('POST', 'https://api.hand.chat/core/v1/api/sendmedia/TOKEN?celular=55XXXXXXXXXX&message=BOLETO&extensao=pdf&file=link_do_arquivo.pdf&forcar=0&verify=0')
.end(function (res) {
if (res.error) throw new Error(res.error);
console.log(res.raw_body);
});
#import <Foundation/Foundation.h>
dispatch_semaphore_t sema = dispatch_semaphore_create(0);
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"https://api.%7Burl%7D/core/v1/api/sendmedia/TOKEN?celular=55XXXXXXXXXX&message=BOLETO&extensao=pdf&file=link_do_arquivo.pdf&forcar=0&verify=0"]
cachePolicy:NSURLRequestUseProtocolCachePolicy
timeoutInterval:10.0];
[request setHTTPMethod:@"POST"];
NSURLSession *session = [NSURLSession sharedSession];
NSURLSessionDataTask *dataTask = [session dataTaskWithRequest:request
completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
if (error) {
NSLog(@"%@", error);
} else {
NSHTTPURLResponse *httpResponse = (NSHTTPURLResponse *) response;
NSError *parseError = nil;
NSDictionary *responseDictionary = [NSJSONSerialization JSONObjectWithData:data options:0 error:&parseError];
NSLog(@"%@",responseDictionary);
dispatch_semaphore_signal(sema);
}
}];
[dataTask resume];
dispatch_semaphore_wait(sema, DISPATCH_TIME_FOREVER);
open Lwt
open Cohttp
open Cohttp_lwt_unix
let reqBody =
let uri = Uri.of_string "https://api.%7Burl%7D/core/v1/api/sendmedia/TOKEN?celular=55XXXXXXXXXX&message=BOLETO&extensao=pdf&file=link_do_arquivo.pdf&forcar=0&verify=0" in
Client.call `POST uri >>= fun (_resp, body) ->
body |> Cohttp_lwt.Body.to_string >|= fun body -> body
let () =
let respBody = Lwt_main.run reqBody in
print_endline (respBody)
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://api.%7Burl%7D/core/v1/api/sendmedia/TOKEN?celular=55XXXXXXXXXX&message=BOLETO&extensao=pdf&file=link_do_arquivo.pdf&forcar=0&verify=0",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
<?php
require_once 'HTTP/Request2.php';
$request = new HTTP_Request2();
$request->setUrl('https://api.hand.chat/core/v1/api/sendmedia/TOKEN?celular=55XXXXXXXXXX&message=BOLETO&extensao=pdf&file=link_do_arquivo.pdf&forcar=0&verify=0');
$request->setMethod(HTTP_Request2::METHOD_POST);
$request->setConfig(array(
'follow_redirects' => TRUE
));
try {
$response = $request->send();
if ($response->getStatus() == 200) {
echo $response->getBody();
}
else {
echo 'Unexpected HTTP status: ' . $response->getStatus() . ' ' .
$response->getReasonPhrase();
}
}
catch(HTTP_Request2_Exception $e) {
echo 'Error: ' . $e->getMessage();
}
<?php
$client = new http\Client;
$request = new http\Client\Request;
$request->setRequestUrl('https://api.hand.chat/core/v1/api/sendmedia/TOKEN?celular=55XXXXXXXXXX&message=BOLETO&extensao=pdf&file=link_do_arquivo.pdf&forcar=0&verify=0');
$request->setRequestMethod('POST');
$request->setOptions(array());
$client->enqueue($request)->send();
$response = $client->getResponse();
echo $response->getBody();
$response = Invoke-RestMethod 'https://api.hand.chat/core/v1/api/sendmedia/TOKEN?celular=55XXXXXXXXXX&message=BOLETO&extensao=pdf&file=link_do_arquivo.pdf&forcar=0&verify=0' -Method 'POST' -Headers $headers -Body $body
$response | ConvertTo-Json
import http.client
import mimetypes
conn = http.client.HTTPSConnection("api.hand.chat")
payload = ''
headers = {}
conn.request("POST", "/core/v1/api/sendmedia/TOKEN?celular=55XXXXXXXXXX&message=BOLETO&extensao=pdf&file=link_do_arquivo.pdf&forcar=0&verify=0", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
import requests
url = "https://api.hand.chat/core/v1/api/sendmedia/TOKEN?celular=55XXXXXXXXXX&message=BOLETO&extensao=pdf&file=link_do_arquivo.pdf&forcar=0&verify=0"
payload = {}
headers= {}
response = requests.request("POST", url, headers=headers, data = payload)
print(response.text.encode('utf8'))
require "uri"
require "net/http"
url = URI("https://api.hand.chat/core/v1/api/sendmedia/TOKEN?celular=55XXXXXXXXXX&message=BOLETO&extensao=pdf&file=link_do_arquivo.pdf&forcar=0&verify=0")
https = Net::HTTP.new(url.host, url.port);
https.use_ssl = true
request = Net::HTTP::Post.new(url)
response = https.request(request)
puts response.read_body
http --follow --timeout 3600 POST https://api.hand.chat/core/v1/api/sendmedia/TOKEN 'celular'=='55XXXXXXXXXX' 'message'=='BOLETO' 'extensao'=='pdf' 'file'=='link_do_arquivo.pdf' 'forcar'=='0' 'verify'=='0'
wget --no-check-certificate --quiet \
--method POST \
--timeout=0 \
--header '' \
'https://api.hand.chat/core/v1/api/sendmedia/TOKEN?celular=55XXXXXXXXXX&message=BOLETO&extensao=pdf&file=link_do_arquivo.pdf&forcar=0&verify=0'
import Foundation
var semaphore = DispatchSemaphore (value: 0)
var request = URLRequest(url: URL(string: "https://api.hand.chat/core/v1/api/sendmedia/TOKEN?celular=55XXXXXXXXXX&message=BOLETO&extensao=pdf&file=link_do_arquivo.pdf&forcar=0&verify=0")!,timeoutInterval: Double.infinity)
request.httpMethod = "POST"
let task = URLSession.shared.dataTask(with: request) { data, response, error in
guard let data = data else {
print(String(describing: error))
return
}
print(String(data: data, encoding: .utf8)!)
semaphore.signal()
}
task.resume()
semaphore.wait()