Send video
curl --request POST \
--url https://api.hubmessage.io/v1/channels/{channelId}/messages \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"recipient": {
"identifier": "5511999999999"
},
"content": {
"type": "VIDEO",
"attachments": [
{
"url": "https://www.learningcontainer.com/wp-content/uploads/2020/05/sample-mp4-file.mp4",
"caption": "Check out this video!"
}
]
}
}
'import requests
url = "https://api.hubmessage.io/v1/channels/{channelId}/messages"
payload = {
"recipient": { "identifier": "5511999999999" },
"content": {
"type": "VIDEO",
"attachments": [
{
"url": "https://www.learningcontainer.com/wp-content/uploads/2020/05/sample-mp4-file.mp4",
"caption": "Check out this video!"
}
]
}
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
recipient: {identifier: '5511999999999'},
content: {
type: 'VIDEO',
attachments: [
{
url: 'https://www.learningcontainer.com/wp-content/uploads/2020/05/sample-mp4-file.mp4',
caption: 'Check out this video!'
}
]
}
})
};
fetch('https://api.hubmessage.io/v1/channels/{channelId}/messages', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.hubmessage.io/v1/channels/{channelId}/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([
'recipient' => [
'identifier' => '5511999999999'
],
'content' => [
'type' => 'VIDEO',
'attachments' => [
[
'url' => 'https://www.learningcontainer.com/wp-content/uploads/2020/05/sample-mp4-file.mp4',
'caption' => 'Check out this video!'
]
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.hubmessage.io/v1/channels/{channelId}/messages"
payload := strings.NewReader("{\n \"recipient\": {\n \"identifier\": \"5511999999999\"\n },\n \"content\": {\n \"type\": \"VIDEO\",\n \"attachments\": [\n {\n \"url\": \"https://www.learningcontainer.com/wp-content/uploads/2020/05/sample-mp4-file.mp4\",\n \"caption\": \"Check out this video!\"\n }\n ]\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.hubmessage.io/v1/channels/{channelId}/messages")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"recipient\": {\n \"identifier\": \"5511999999999\"\n },\n \"content\": {\n \"type\": \"VIDEO\",\n \"attachments\": [\n {\n \"url\": \"https://www.learningcontainer.com/wp-content/uploads/2020/05/sample-mp4-file.mp4\",\n \"caption\": \"Check out this video!\"\n }\n ]\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.hubmessage.io/v1/channels/{channelId}/messages")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"recipient\": {\n \"identifier\": \"5511999999999\"\n },\n \"content\": {\n \"type\": \"VIDEO\",\n \"attachments\": [\n {\n \"url\": \"https://www.learningcontainer.com/wp-content/uploads/2020/05/sample-mp4-file.mp4\",\n \"caption\": \"Check out this video!\"\n }\n ]\n }\n}"
response = http.request(request)
puts response.read_body{
"messageId": "wamid.HBgNNTU0NDk3MDUwNzg1FQIAERgSM0"
}{
"error": 401,
"message": "Unauthorized"
}Free messages
Send video
Send video messages
POST
/
v1
/
channels
/
{channelId}
/
messages
Send video
curl --request POST \
--url https://api.hubmessage.io/v1/channels/{channelId}/messages \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"recipient": {
"identifier": "5511999999999"
},
"content": {
"type": "VIDEO",
"attachments": [
{
"url": "https://www.learningcontainer.com/wp-content/uploads/2020/05/sample-mp4-file.mp4",
"caption": "Check out this video!"
}
]
}
}
'import requests
url = "https://api.hubmessage.io/v1/channels/{channelId}/messages"
payload = {
"recipient": { "identifier": "5511999999999" },
"content": {
"type": "VIDEO",
"attachments": [
{
"url": "https://www.learningcontainer.com/wp-content/uploads/2020/05/sample-mp4-file.mp4",
"caption": "Check out this video!"
}
]
}
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
recipient: {identifier: '5511999999999'},
content: {
type: 'VIDEO',
attachments: [
{
url: 'https://www.learningcontainer.com/wp-content/uploads/2020/05/sample-mp4-file.mp4',
caption: 'Check out this video!'
}
]
}
})
};
fetch('https://api.hubmessage.io/v1/channels/{channelId}/messages', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.hubmessage.io/v1/channels/{channelId}/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([
'recipient' => [
'identifier' => '5511999999999'
],
'content' => [
'type' => 'VIDEO',
'attachments' => [
[
'url' => 'https://www.learningcontainer.com/wp-content/uploads/2020/05/sample-mp4-file.mp4',
'caption' => 'Check out this video!'
]
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.hubmessage.io/v1/channels/{channelId}/messages"
payload := strings.NewReader("{\n \"recipient\": {\n \"identifier\": \"5511999999999\"\n },\n \"content\": {\n \"type\": \"VIDEO\",\n \"attachments\": [\n {\n \"url\": \"https://www.learningcontainer.com/wp-content/uploads/2020/05/sample-mp4-file.mp4\",\n \"caption\": \"Check out this video!\"\n }\n ]\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.hubmessage.io/v1/channels/{channelId}/messages")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"recipient\": {\n \"identifier\": \"5511999999999\"\n },\n \"content\": {\n \"type\": \"VIDEO\",\n \"attachments\": [\n {\n \"url\": \"https://www.learningcontainer.com/wp-content/uploads/2020/05/sample-mp4-file.mp4\",\n \"caption\": \"Check out this video!\"\n }\n ]\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.hubmessage.io/v1/channels/{channelId}/messages")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"recipient\": {\n \"identifier\": \"5511999999999\"\n },\n \"content\": {\n \"type\": \"VIDEO\",\n \"attachments\": [\n {\n \"url\": \"https://www.learningcontainer.com/wp-content/uploads/2020/05/sample-mp4-file.mp4\",\n \"caption\": \"Check out this video!\"\n }\n ]\n }\n}"
response = http.request(request)
puts response.read_body{
"messageId": "wamid.HBgNNTU0NDk3MDUwNzg1FQIAERgSM0"
}{
"error": 401,
"message": "Unauthorized"
}Overview
Sends a video message to a contact. Thecontent.type field must be VIDEO and the video is sent via URL in the attachments array.
Optionally, you can include a caption with the video.
This endpoint only works when the conversation window is open (24 hours).
Authorizations
Secret Key generated in the Hub Message Security panel
Path Parameters
Channel ID
Example:
"YOUR_CHANNEL_ID"
Body
application/json
Response
Message sent successfully
Sent message ID
⌘I