curl --request GET \
--url https://api.hubmessage.io/v1/channels/{channelId}/webhooks/{webhookId} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.hubmessage.io/v1/channels/{channelId}/webhooks/{webhookId}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.hubmessage.io/v1/channels/{channelId}/webhooks/{webhookId}', 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}/webhooks/{webhookId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.hubmessage.io/v1/channels/{channelId}/webhooks/{webhookId}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.hubmessage.io/v1/channels/{channelId}/webhooks/{webhookId}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.hubmessage.io/v1/channels/{channelId}/webhooks/{webhookId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "A1B2C3D4E5F6789012345678901234AB",
"channelId": "019E4C54B1B375A28970B605CA9B03C3",
"instanceId": "019E4C54B1B375A28970B605CA9B03C3",
"url": "https://app.suaempresa.com/webhooks/hubmessage",
"description": "Webhook principal de produção",
"events": [
"MESSAGE_RECEIVED",
"MESSAGE_STATUS"
],
"status": "ENABLED",
"signing": true,
"auth": {
"type": "BEARER",
"configured": true
},
"payloadFormat": "DEFAULT",
"customAttributes": {},
"createdAt": "2025-01-15T10:30:00.000+0000",
"updatedAt": "2025-01-15T10:30:00.000+0000"
}{
"error": 401,
"message": "Unauthorized"
}{
"error": 404,
"message": "Webhook not found"
}{
"error": 422,
"message": "This action requires ENTERPRISE role"
}Detalhar webhook
Busque os dados de um webhook específico
curl --request GET \
--url https://api.hubmessage.io/v1/channels/{channelId}/webhooks/{webhookId} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.hubmessage.io/v1/channels/{channelId}/webhooks/{webhookId}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.hubmessage.io/v1/channels/{channelId}/webhooks/{webhookId}', 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}/webhooks/{webhookId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.hubmessage.io/v1/channels/{channelId}/webhooks/{webhookId}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.hubmessage.io/v1/channels/{channelId}/webhooks/{webhookId}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.hubmessage.io/v1/channels/{channelId}/webhooks/{webhookId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "A1B2C3D4E5F6789012345678901234AB",
"channelId": "019E4C54B1B375A28970B605CA9B03C3",
"instanceId": "019E4C54B1B375A28970B605CA9B03C3",
"url": "https://app.suaempresa.com/webhooks/hubmessage",
"description": "Webhook principal de produção",
"events": [
"MESSAGE_RECEIVED",
"MESSAGE_STATUS"
],
"status": "ENABLED",
"signing": true,
"auth": {
"type": "BEARER",
"configured": true
},
"payloadFormat": "DEFAULT",
"customAttributes": {},
"createdAt": "2025-01-15T10:30:00.000+0000",
"updatedAt": "2025-01-15T10:30:00.000+0000"
}{
"error": 401,
"message": "Unauthorized"
}{
"error": 404,
"message": "Webhook not found"
}{
"error": 422,
"message": "This action requires ENTERPRISE role"
}Conceituação
Retorna os dados de um webhook específico. Assim como na listagem, as credenciais de autenticação e osecret de assinatura não são retornados por segurança.
webhookId é obtido no retorno do endpoint Criar webhook ou Listar webhooks.Autorizações
Secret Key gerada no painel de Segurança do Hub Message
Parâmetros de caminho
ID do canal
"019E4C54B1B375A28970B605CA9B03C3"
ID do webhook
"A1B2C3D4E5F6789012345678901234AB"
Resposta
Dados do webhook
ID único do webhook
"A1B2C3D4E5F6789012345678901234AB"
ID do canal ao qual o webhook pertence
"019E4C54B1B375A28970B605CA9B03C3"
Descontinuado — use channelId
"019E4C54B1B375A28970B605CA9B03C3"
URL de destino dos eventos
"https://app.suaempresa.com/webhooks/hubmessage"
Descrição do webhook
"Webhook principal de produção"
Tipos de evento configurados
["MESSAGE_RECEIVED", "MESSAGE_STATUS"]
Status atual do webhook
ENABLED, DISABLED "ENABLED"
Indica se a assinatura HMAC está habilitada
true
Resumo da autenticação configurada — credenciais não são retornadas por segurança
Show child attributes
Show child attributes
Formato do payload entregue
DEFAULT "DEFAULT"
Atributos extras configurados
{}
Data de criação
"2025-01-15T10:30:00.000+0000"
Data da última atualização
"2025-01-15T10:30:00.000+0000"