Scopri come gestire, automatizzare e inviare efficacemente messaggi multimediali, come immagini, video e documenti, ai Canali WhatsApp nel 2024. Questa guida fornisce istruzioni complete per usare l'API di WhatsApp per coinvolgere il tuo pubblico e distribuire contenuti ricchi. Include esempi di codice pronti all'uso per un'integrazione semplice!
🤩 🤖 Wassenger è una piattaforma di comunicazione completa e una soluzione API per WhatsApp. Esplora più di 100+ casi d'uso API e automatizza qualsiasi cosa su WhatsApp iscrivendoti a una prova gratuita e inizia in pochi minuti**!**
Oggi ti mostreremo come inviare immagini, video, documenti e memo vocali ai tuoi canali con l'API di Wassenger.
Un file multimediale può essere uno dei seguenti: immagini (JPEG, PNG, WEBP), video (MP4, 3GPP), audio (MP3, OGG, MP4, ACC), gif (MP4) e documenti (PDF, PPT, PPTX, DOCX, DOC, ZIP, RAR, altri tipi binari).
Se hai bisogno di inviare messaggi da codice, puoi usare qualsiasi linguaggio di programmazione in grado di effettuare richieste HTTPS all'API. Di seguito troverai il tester API live con esempi di codice pronti all'uso in vari linguaggi di programmazione.
Requisiti
- Avere un numero WhatsApp già collegato alla piattaforma e online.
- ID del Canale WhatsApp (WID) che puoi trovare in due modi:
- Nel pannello di gestione del tuo numero WhatsApp, vai su “Groups” (Gruppi). Da lì vedrai i canali a cui il tuo numero ha accesso.
- Usando l'API, interroga i canali disponibili nel tuo dispositivo tramite questo endpoint.
Endpoint API
In questo tutorial useremo il seguente endpoint API:
Preparare la richiesta
URL API di destinazione
https://api.wassenger.com/v1/messages
Intestazioni HTTPS richieste
Content-Type: application/json
Token: $API-TOKEN
Corpo della richiesta in formato JSON per un messaggio immagine
{
"channel": "$channel_ID@newsletter",
"message": "This is a caption for an image message",
"media": {
"url": "https://picsum.photos/seed/picsum/600/400",
"viewOnce": false
}
}
Corpo della richiesta in formato JSON per un messaggio video
{
"channel": "$channel_ID@newsletter",
"message": "This is a caption for an image message",
"media": {
"url": "https://download.samplelib.com/mp4/sample-5s.mp4",
"viewOnce": false
}
}
Ultimissime! Ora puoi inviare messaggi multimediali in una singola richiesta API passando l'URL remoto dove il file è ospitato. Clicca qui per provarlo
Scopri come usare il codice nel tuo browser senza installare alcun software.
Inviare immagini a un Canale WhatsApp
# Examples requires to have installed requests Python package.
# Install it by running: pip install requests
import requests
url = "https://api.wassenger.com/v1/messages"
payload = {
"channel": "$channel_ID@newsletter",
"message": "This is a caption for an image message",
"media": {
"url": "https://picsum.photos/seed/picsum/600/400",
"viewOnce": False
}
}
headers = {
"Content-Type": "application/json",
"Token": "API_TOKEN_GOES_HERE"
}
response = requests.post(url, json=payload, headers=headers)
print(response.json())
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.wassenger.com/v1/messages',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS => json_encode([
'channel' => '$channel_ID@newsletter',
'message' => 'This is a caption for an image message',
'media' => [
'url' => 'https://picsum.photos/seed/picsum/600/400',
'viewOnce' => null,
],
]),
CURLOPT_HTTPHEADER => [
'Content-Type: application/json',
'Token: API_TOKEN_GOES_HERE',
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo 'cURL Error #:' . $err;
} else {
echo $response;
}
// Examples requires to have installed pecl_http package, a simple and elegant HTTP client for PHP.
// Install it by running: pecl install pecl_http
// More information: https://pecl.php.net/package/pecl_http/3.2.0
<?php
$client = new http\Client();
$request = new http\Client\Request();
$body = new http\Message\Body();
$body->append(
json_encode([
'channel' => '$channel_ID@newsletter',
'message' => 'This is a caption for an image message',
'media' => [
'url' => 'https://picsum.photos/seed/picsum/600/400',
'viewOnce' => null,
],
])
);
$request->setRequestUrl('https://api.wassenger.com/v1/messages');
$request->setRequestMethod('POST');
$request->setBody($body);
$request->setHeaders([
'Content-Type' => 'application/json',
'Token' => 'API_TOKEN_GOES_HERE',
]);
$client->enqueue($request)->send();
$response = $client->getResponse();
echo $response->getBody();
package main
import(
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url:= "https://api.wassenger.com/v1/messages"
payload:= strings.NewReader("{\"channel\":\"$channel_ID@newsletter\", \"message\":\"This is a caption for an image message\", \"media\":{\"url\":\"https://picsum.photos/seed/picsum/600/400\", \"viewOnce\":false}}")
req, _:= http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
req.Header.Add("Token", "API_TOKEN_GOES_HERE")
res, _:= http.DefaultClient.Do(req)
defer res.Body.Close()
body, _:= io.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
// This code requires you to have installed RestSharp package.
// Documentation: https://restsharp.dev
// Installation: https://www.nuget.org/packages/RestSharp
var client = new RestClient("https://api.wassenger.com/v1/messages");
var request = new RestRequest(Method.POST);
request.AddHeader("Content-Type", "application/json");
request.AddHeader("Token", "API_TOKEN_GOES_HERE");
request.AddParameter("application/json", "{\"channel\":\"$channel_ID@newsletter\", \"message\":\"This is a caption for an image message\", \"media\":{\"url\":\"https://picsum.photos/seed/picsum/600/400\", \"viewOnce\":false}}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
require 'uri' require 'net/http'
url = URI("https://api.wassenger.com/v1/messages") http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true request = Net::HTTP::Post.new(url) request["Content-Type"] = 'application/json' request["Token"] = 'API_TOKEN_GOES_HERE' request.body = "{\"channel\":\"$channel_ID@newsletter\",\"message\":\"This is a caption for an image message\",\"media\":{\"url\":\"https://picsum.photos/seed/picsum/600/400\\",\\"viewOnce\\":false}}"
response = http.request(request) puts response.read_body
// This code requires you to have installed Unirest package.
// Documentation: https://kong.github.io/unirest-java/#requests
// Installation: http://kong.github.io/unirest-java/
HttpResponse<String> response = Unirest.post("https://api.wassenger.com/v1/messages")
.header("Content-Type", "application/json")
.header("Token", "API_TOKEN_GOES_HERE")
.body("{\"channel\":\"$channel_ID@newsletter\", \"message\":\"This is a caption for an image message\", \"media\":{\"url\":\"https://picsum.photos/seed/picsum/600/400\", \"viewOnce\":false}}")
.asString();
🤩 🤖 Wassenger è una soluzione API completa per WhatsApp. Iscriviti per una prova gratuita di 7 giorni e inizia in pochi minuti!
Inviare video a un Canale WhatsApp
# Examples requires to have installed requests Python package.
# Install it by running: pip install requests
import requests
url = "https://api.wassenger.com/v1/messages"
payload = {
"channel": "$channel_ID@newsletter",
"message": "This is a caption for an image message",
"media": {
"url": "https://download.samplelib.com/mp4/sample-5s.mp4",
"viewOnce": False
}
}
headers = {
"Content-Type": "application/json",
"Token": "API_TOKEN_GOES_HERE"
}
response = requests.post(url, json=payload, headers=headers)
print(response.json())
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.wassenger.com/v1/messages',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS => json_encode([
'channel' => '$channel_ID@newsletter',
'message' => 'This is a caption for an image message',
'media' => [
'url' => 'https://download.samplelib.com/mp4/sample-5s.mp4',
'viewOnce' => null,
],
]),
CURLOPT_HTTPHEADER => [
'Content-Type: application/json',
'Token: API_TOKEN_GOES_HERE',
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo 'cURL Error #:' . $err;
} else {
echo $response;
}
// Examples requires to have installed pecl_http package, a simple and elegant HTTP client for PHP.
// Install it by running: pecl install pecl_http
// More information: https://pecl.php.net/package/pecl_http/3.2.0
<?php
$client = new http\Client();
$request = new http\Client\Request();
$body = new http\Message\Body();
$body->append(
json_encode([
'channel' => '$channel_ID@newsletter',
'message' => 'This is a caption for a video message',
'media' => [
'url' => 'https://download.samplelib.com/mp4/sample-5s.mp4',
'viewOnce' => null,
],
])
);
$request->setRequestUrl('https://api.wassenger.com/v1/messages');
$request->setRequestMethod('POST');
$request->setBody($body);
$request->setHeaders([
'Content-Type' => 'application/json',
'Token' => 'API_TOKEN_GOES_HERE',
]);
$client->enqueue($request)->send();
$response = $client->getResponse();
echo $response->getBody();
package main
import(
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url:= "https://api.wassenger.com/v1/messages"
payload:= strings.NewReader("{\"channel\":\"$channel_ID@newsletter\", \"message\":\"This is a caption for a video message\", \"media\":{\"url\":\"https://download.samplelib.com/mp4/sample-5s.mp4\", \"viewOnce\":false}}")
req, _:= http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
req.Header.Add("Token", "API_TOKEN_GOES_HERE")
res, _:= http.DefaultClient.Do(req)
defer res.Body.Close()
body, _:= io.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
// This code requires you to have installed RestSharp package.
// Documentation: https://restsharp.dev
// Installation: https://www.nuget.org/packages/RestSharp
var client = new RestClient("https://api.wassenger.com/v1/messages");
var request = new RestRequest(Method.POST);
request.AddHeader("Content-Type", "application/json");
request.AddHeader("Token", "API_TOKEN_GOES_HERE");
request.AddParameter("application/json", "{\"channel\":\"$channel_ID@newsletter\", \"message\":\"This is a caption for a video message\", \"media\":{\"url\":\"https://download.samplelib.com/mp4/sample-5s.mp4\", \"viewOnce\":false}}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
require 'uri' require 'net/http'
url = URI("https://api.wassenger.com/v1/messages")
http = Net::HTTP.new(url.host, url.port) http.use_ssl = true
request = Net::HTTP::Post.new(url) request["Content-Type"] = 'application/json' request["Token"] = 'API_TOKEN_GOES_HERE' request.body = "{\"channel\":\"$channel_ID@newsletter\",\"message\":\"This is a caption for a video message\",\"media\":{\"url\":\"https://download.samplelib.com/mp4/sample-5s.mp4\\",\\"viewOnce\\":false}}"
response = http.request(request) puts response.read_body
// This code requires you to have installed Unirest package.
// Documentation: https://kong.github.io/unirest-java/#requests
// Installation: http://kong.github.io/unirest-java/
HttpResponse<String> response = Unirest.post("https://api.wassenger.com/v1/messages")
.header("Content-Type", "application/json")
.header("Token", "API_TOKEN_GOES_HERE")
.body("{\"channel\":\"$channel_ID@newsletter\", \"message\":\"This is a caption for a video message\", \"media\":{\"url\":\"https://download.samplelib.com/mp4/sample-5s.mp4\", \"viewOnce\":false}}")
.asString();
🤩 🤖 Wassenger è una soluzione API completa per WhatsApp. Iscriviti per una prova gratuita di 7 giorni e inizia in pochi minuti!
Test API in tempo reale
Puoi testare l'API in tempo reale e giocare con essa direttamente dal tuo browser.
Una volta terminato il test, ottieni l'esempio di codice generato automaticamente nel linguaggio di programmazione che preferisci e sarai pronto a partire.
Prova ora il nostro tester API-Live
🤩 🤖 Wassenger è una piattaforma di comunicazione completa e una soluzione API per WhatsApp. Esplora più di 100+ casi d'uso API e automatizza qualsiasi cosa su WhatsApp iscrivendoti a una prova gratuita e inizia in pochi minuti**!**
FAQ
Posso usare Wassenger per inviare messaggi di marketing?
Come probabilmente sai, WhatsApp ha politiche rigide riguardo l'invio di messaggi promozionali non richiesti, contenuti illeciti o spam.
L'invio di messaggi di marketing o di qualsiasi messaggio non richiesto agli utenti non è consentito e metterebbe il tuo numero WhatsApp a serio rischio di ban.
La comunicazione su WhatsApp non è adatta a tutti i casi aziendali, quindi consigliamo di progettare una strategia di comunicazione legittima e approvata dagli utenti per evitare problemi.
Per favore leggi le nostre linee guida con le best practice di comunicazione e come prevenire il ban.
Come inviare messaggi a più numeri di telefono 📲
Devi inviare numerose richieste API, una per ogni numero di telefono destinatario.
Ad esempio, per inviare un messaggio a 10 numeri di telefono, dovresti inviare 10 richieste HTTPS indipendenti all'API.
Non esiste un'opzione per inviare più messaggi in una singola richiesta API.
Come validare se un numero di telefono può ricevere messaggi WhatsApp 📳
Puoi verificare se un determinato numero di telefono è collegato a un account WhatsApp e può ricevere messaggi.
L'API fornisce un endpoint che può validare se un dato numero di telefono esiste su WhatsApp o meno.
L'unico requisito è avere almeno un numero WhatsApp collegato alla piattaforma nel tuo account corrente.
Per maggiori dettagli, consulta la documentazione dell'endpoint API qui.
Prima di verificare se un numero di telefono esiste su WhatsApp, puoi anche validare e normalizzare il formato di una lista di numeri di telefono utilizzando l'endpoint di validazione numeri. Questo endpoint valida solo il corretto formato E164, ma non verifica se il numero di telefono esiste effettivamente su WhatsApp.
Nota: il numero di verifiche WhatsApp disponibili è limitato mensilmente in base al tuo piano di abbonamento. Consulta la tabella dei prezzi per maggiori dettagli sui limiti.
Cerchi altre risposte? Consulta le FAQ estese.
Ulteriori risorse utili
Documentazione API 🖥️
Per maggiori dettagli sull'endpoint API, consulta la documentazione dove troverai tutte le informazioni sui parametri di richiesta accettati, le possibili risposte di successo o di errore e esempi di codice pronti all'uso in più linguaggi di programmazione:
https://app.wassenger.com/docs/#tag/Messages/operation/createMessage







