Criar campanha
Dispare uma campanha de ligações ou de mensagens de WhatsApp
curl --request POST \
--url https://api.useintegra.com.br/api/v1/campaigns \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "Campanha Março 2026",
"project_id": "b9c80a57-fad2-41a0-a304-727337ad1b1f",
"scheduled_at": "2026-03-25T14:00:00Z",
"recipients": [
{
"phone_number": "+5511999999999",
"recipient_name": "João Silva",
"dynamic_variables": {
"1": "João",
"2": "Acme Corp"
}
}
],
"channel": "voice",
"agent_id": "7e09d093-904a-48de-ac49-b0445906c38e",
"phone_number_id": "d1082e49-1b2c-4337-81e2-8eb74810351d",
"template_name": "boas_vindas_pt_br",
"meta_phone_external_id": "109876543210987",
"config": {
"call_timeout": 67,
"machine_detection_timeout": 32,
"voicemail_tts_message": "<string>",
"outbound_auto_greet": true,
"max_concurrent": 5
}
}
'import requests
url = "https://api.useintegra.com.br/api/v1/campaigns"
payload = {
"name": "Campanha Março 2026",
"project_id": "b9c80a57-fad2-41a0-a304-727337ad1b1f",
"scheduled_at": "2026-03-25T14:00:00Z",
"recipients": [
{
"phone_number": "+5511999999999",
"recipient_name": "João Silva",
"dynamic_variables": {
"1": "João",
"2": "Acme Corp"
}
}
],
"channel": "voice",
"agent_id": "7e09d093-904a-48de-ac49-b0445906c38e",
"phone_number_id": "d1082e49-1b2c-4337-81e2-8eb74810351d",
"template_name": "boas_vindas_pt_br",
"meta_phone_external_id": "109876543210987",
"config": {
"call_timeout": 67,
"machine_detection_timeout": 32,
"voicemail_tts_message": "<string>",
"outbound_auto_greet": True,
"max_concurrent": 5
}
}
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({
name: 'Campanha Março 2026',
project_id: 'b9c80a57-fad2-41a0-a304-727337ad1b1f',
scheduled_at: '2026-03-25T14:00:00Z',
recipients: [
{
phone_number: '+5511999999999',
recipient_name: 'João Silva',
dynamic_variables: {'1': 'João', '2': 'Acme Corp'}
}
],
channel: 'voice',
agent_id: '7e09d093-904a-48de-ac49-b0445906c38e',
phone_number_id: 'd1082e49-1b2c-4337-81e2-8eb74810351d',
template_name: 'boas_vindas_pt_br',
meta_phone_external_id: '109876543210987',
config: {
call_timeout: 67,
machine_detection_timeout: 32,
voicemail_tts_message: '<string>',
outbound_auto_greet: true,
max_concurrent: 5
}
})
};
fetch('https://api.useintegra.com.br/api/v1/campaigns', 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.useintegra.com.br/api/v1/campaigns",
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([
'name' => 'Campanha Março 2026',
'project_id' => 'b9c80a57-fad2-41a0-a304-727337ad1b1f',
'scheduled_at' => '2026-03-25T14:00:00Z',
'recipients' => [
[
'phone_number' => '+5511999999999',
'recipient_name' => 'João Silva',
'dynamic_variables' => [
'1' => 'João',
'2' => 'Acme Corp'
]
]
],
'channel' => 'voice',
'agent_id' => '7e09d093-904a-48de-ac49-b0445906c38e',
'phone_number_id' => 'd1082e49-1b2c-4337-81e2-8eb74810351d',
'template_name' => 'boas_vindas_pt_br',
'meta_phone_external_id' => '109876543210987',
'config' => [
'call_timeout' => 67,
'machine_detection_timeout' => 32,
'voicemail_tts_message' => '<string>',
'outbound_auto_greet' => true,
'max_concurrent' => 5
]
]),
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.useintegra.com.br/api/v1/campaigns"
payload := strings.NewReader("{\n \"name\": \"Campanha Março 2026\",\n \"project_id\": \"b9c80a57-fad2-41a0-a304-727337ad1b1f\",\n \"scheduled_at\": \"2026-03-25T14:00:00Z\",\n \"recipients\": [\n {\n \"phone_number\": \"+5511999999999\",\n \"recipient_name\": \"João Silva\",\n \"dynamic_variables\": {\n \"1\": \"João\",\n \"2\": \"Acme Corp\"\n }\n }\n ],\n \"channel\": \"voice\",\n \"agent_id\": \"7e09d093-904a-48de-ac49-b0445906c38e\",\n \"phone_number_id\": \"d1082e49-1b2c-4337-81e2-8eb74810351d\",\n \"template_name\": \"boas_vindas_pt_br\",\n \"meta_phone_external_id\": \"109876543210987\",\n \"config\": {\n \"call_timeout\": 67,\n \"machine_detection_timeout\": 32,\n \"voicemail_tts_message\": \"<string>\",\n \"outbound_auto_greet\": true,\n \"max_concurrent\": 5\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.useintegra.com.br/api/v1/campaigns")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"Campanha Março 2026\",\n \"project_id\": \"b9c80a57-fad2-41a0-a304-727337ad1b1f\",\n \"scheduled_at\": \"2026-03-25T14:00:00Z\",\n \"recipients\": [\n {\n \"phone_number\": \"+5511999999999\",\n \"recipient_name\": \"João Silva\",\n \"dynamic_variables\": {\n \"1\": \"João\",\n \"2\": \"Acme Corp\"\n }\n }\n ],\n \"channel\": \"voice\",\n \"agent_id\": \"7e09d093-904a-48de-ac49-b0445906c38e\",\n \"phone_number_id\": \"d1082e49-1b2c-4337-81e2-8eb74810351d\",\n \"template_name\": \"boas_vindas_pt_br\",\n \"meta_phone_external_id\": \"109876543210987\",\n \"config\": {\n \"call_timeout\": 67,\n \"machine_detection_timeout\": 32,\n \"voicemail_tts_message\": \"<string>\",\n \"outbound_auto_greet\": true,\n \"max_concurrent\": 5\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.useintegra.com.br/api/v1/campaigns")
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 \"name\": \"Campanha Março 2026\",\n \"project_id\": \"b9c80a57-fad2-41a0-a304-727337ad1b1f\",\n \"scheduled_at\": \"2026-03-25T14:00:00Z\",\n \"recipients\": [\n {\n \"phone_number\": \"+5511999999999\",\n \"recipient_name\": \"João Silva\",\n \"dynamic_variables\": {\n \"1\": \"João\",\n \"2\": \"Acme Corp\"\n }\n }\n ],\n \"channel\": \"voice\",\n \"agent_id\": \"7e09d093-904a-48de-ac49-b0445906c38e\",\n \"phone_number_id\": \"d1082e49-1b2c-4337-81e2-8eb74810351d\",\n \"template_name\": \"boas_vindas_pt_br\",\n \"meta_phone_external_id\": \"109876543210987\",\n \"config\": {\n \"call_timeout\": 67,\n \"machine_detection_timeout\": 32,\n \"voicemail_tts_message\": \"<string>\",\n \"outbound_auto_greet\": true,\n \"max_concurrent\": 5\n }\n}"
response = http.request(request)
puts response.read_body{
"id": "<string>",
"name": "<string>",
"status": "<string>",
"channel": "<string>",
"template_name": "<string>",
"scheduled_at": "<string>",
"agent": {
"id": "<string>",
"name": "<string>"
},
"phone_number": {
"id": "<string>",
"number": "<string>",
"friendly_name": "<string>"
},
"total_recipients": 123,
"created_at": "<string>",
"config": "<unknown>"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}Canais
O campochannel decide o tipo de campanha. Ele é opcional e vale voice quando você não envia.
| Canal | O que faz | Campos obrigatórios além dos comuns |
|---|---|---|
voice | Liga para a lista com um agente de voz | agent_id, phone_number_id |
whatsapp | Dispara um template aprovado pela Meta | template_name |
name, project_id, scheduled_at e recipients.
voice, scheduled_at precisa ser no futuro. No canal whatsapp, uma data no passado é aceita e dispara no próximo ciclo do worker — é assim que você agenda um “enviar agora”.Campanha de WhatsApp
Variáveis do template
O corpo do template usa marcadores numerados:Oi {{1}}, seu horário é {{2}}. Cada destinatário preenche esses marcadores pelo dynamic_variables, com chaves numéricas em texto:
{
"phone_number": "+5511999999999",
"recipient_name": "Ana",
"dynamic_variables": { "1": "Ana", "2": "quinta às 14h" }
}
"n" preenche o {{n}} do corpo. O que vale é a posição, não o nome: chaves como leadName só são aceitas no canal voice.
{{n}} do corpo. Faltando ou sobrando, a campanha inteira é recusada com 422 antes de qualquer disparo — nenhuma mensagem é enviada. Confira o corpo do template no painel, em Templates.Antes de criar
Cada número de WhatsApp tem um limite de conversas que pode iniciar em 24h, definido pela Meta. Uma lista maior que o disponível é recusada com422. Consulte as conversas disponíveis antes de montar a lista.
Exemplos
curl -X POST https://api.useintegra.com.br/api/v1/campaigns \
-H "Authorization: Bearer ik_live_xxx" \
-H "Content-Type: application/json" \
-d '{
"name": "Retomada de matrículas",
"project_id": "proj_abc123",
"channel": "whatsapp",
"template_name": "retomada_matricula",
"meta_phone_external_id": "1046702081862213",
"scheduled_at": "2026-09-01T14:00:00Z",
"recipients": [
{
"phone_number": "+5511999999999",
"recipient_name": "Ana",
"dynamic_variables": { "1": "Ana", "2": "quinta às 14h" }
},
{
"phone_number": "+5521988887777",
"recipient_name": "Bruno",
"dynamic_variables": { "1": "Bruno", "2": "sexta às 10h" }
}
]
}'
curl -X POST https://api.useintegra.com.br/api/v1/campaigns \
-H "Authorization: Bearer ik_live_xxx" \
-H "Content-Type: application/json" \
-d '{
"name": "Confirmação de consulta",
"project_id": "proj_abc123",
"agent_id": "agt_xyz789",
"phone_number_id": "phn_456def",
"scheduled_at": "2026-09-01T14:00:00Z",
"recipients": [
{
"phone_number": "+5511999999999",
"recipient_name": "Ana",
"dynamic_variables": { "leadName": "Ana" }
}
],
"config": {
"call_timeout": 45,
"voicemail_mode": "hangup",
"max_concurrent": 2
}
}'
{
"id": "cmp_9f8e7d",
"name": "Retomada de matrículas",
"status": "PENDING",
"channel": "whatsapp",
"template_name": "retomada_matricula",
"scheduled_at": "2026-09-01T14:00:00.000Z",
"agent": null,
"phone_number": null,
"config": null,
"total_recipients": 2,
"created_at": "2026-08-17T10:32:00.000Z"
}
agent, phone_number e config nulos: elas não têm agente de voz, número de origem próprio nem parâmetros de discagem.Erros
| Status | Quando acontece | O que fazer |
|---|---|---|
400 | Payload inválido: campo obrigatório do canal ausente, scheduled_at fora do ISO 8601, mais de 10.000 destinatários, telefone fora do E.164 | Corrija o corpo. A mensagem aponta o campo |
404 | Projeto ou template não encontrado na sua organização | Confira project_id e template_name no painel |
422 | Template não aprovado ou desabilitado, variáveis que não batem com o corpo, ou lista maior que a quota de 24h | Veja os exemplos abaixo |
502 | Falha na comunicação com o serviço de WhatsApp | Leia o aviso abaixo antes de repetir |
503 | Integração de WhatsApp não configurada na sua organização | Conecte um número de WhatsApp no painel |
422 — variáveis que não batem com o corpo
A validação roda sobre a lista inteira e para no primeiro destinatário irregular. A mensagem diz quantas variáveis o corpo exige e qual número está errado:{
"error": "O template \"retomada_matricula\" usa 2 variavel(is) no corpo ({{1}}..{{2}}); a linha do numero +5511999999999 precisa de exatamente 2 valor(es) preenchido(s)."
}
422 — quota de conversas excedida
{
"error": "Seu numero pode iniciar 137 conversas nas proximas 24h (limite da Meta). Reduza a lista ou divida em dias."
}
502 na criação não garante que a campanha deixou de ser criada. A criação é gravada do outro lado em transação própria e pode ter sido concluída depois de estourar o tempo de resposta desta chamada.Antes de repetir a requisição, liste suas campanhas e procure pelo name que você enviou. Repetir às cegas cria uma segunda campanha, e a lista inteira recebe o template duas vezes, consumindo quota da Meta em dobro. Não há como desfazer um disparo já entregue.Authorizations
API Key da organização (Authorization: Bearer ik_live_xxx)
Body
1"Campanha Março 2026"
Project ID (copy from Panel → project header)
"b9c80a57-fad2-41a0-a304-727337ad1b1f"
ISO 8601 datetime with timezone (e.g. 2026-03-24T14:00:00Z)
"2026-03-25T14:00:00Z"
List of recipients (max 10,000)
1 - 10000 elementsShow child attributes
Show child attributes
Campaign channel: voice (outbound calls, default) or whatsapp (approved template broadcast)
voice, whatsapp "voice"
Agent ID (copy from Panel → agent card). Required for voice campaigns
"7e09d093-904a-48de-ac49-b0445906c38e"
Phone number ID assigned to the agent. Required for voice campaigns
"d1082e49-1b2c-4337-81e2-8eb74810351d"
Approved WhatsApp template name. Required for whatsapp campaigns
"boas_vindas_pt_br"
Meta phone number ID used as sender. Optional when the organization has a single WhatsApp number
"109876543210987"
Show child attributes
Show child attributes
Response
Campanha criada
Show child attributes
Show child attributes
Show child attributes
Show child attributes
curl --request POST \
--url https://api.useintegra.com.br/api/v1/campaigns \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "Campanha Março 2026",
"project_id": "b9c80a57-fad2-41a0-a304-727337ad1b1f",
"scheduled_at": "2026-03-25T14:00:00Z",
"recipients": [
{
"phone_number": "+5511999999999",
"recipient_name": "João Silva",
"dynamic_variables": {
"1": "João",
"2": "Acme Corp"
}
}
],
"channel": "voice",
"agent_id": "7e09d093-904a-48de-ac49-b0445906c38e",
"phone_number_id": "d1082e49-1b2c-4337-81e2-8eb74810351d",
"template_name": "boas_vindas_pt_br",
"meta_phone_external_id": "109876543210987",
"config": {
"call_timeout": 67,
"machine_detection_timeout": 32,
"voicemail_tts_message": "<string>",
"outbound_auto_greet": true,
"max_concurrent": 5
}
}
'import requests
url = "https://api.useintegra.com.br/api/v1/campaigns"
payload = {
"name": "Campanha Março 2026",
"project_id": "b9c80a57-fad2-41a0-a304-727337ad1b1f",
"scheduled_at": "2026-03-25T14:00:00Z",
"recipients": [
{
"phone_number": "+5511999999999",
"recipient_name": "João Silva",
"dynamic_variables": {
"1": "João",
"2": "Acme Corp"
}
}
],
"channel": "voice",
"agent_id": "7e09d093-904a-48de-ac49-b0445906c38e",
"phone_number_id": "d1082e49-1b2c-4337-81e2-8eb74810351d",
"template_name": "boas_vindas_pt_br",
"meta_phone_external_id": "109876543210987",
"config": {
"call_timeout": 67,
"machine_detection_timeout": 32,
"voicemail_tts_message": "<string>",
"outbound_auto_greet": True,
"max_concurrent": 5
}
}
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({
name: 'Campanha Março 2026',
project_id: 'b9c80a57-fad2-41a0-a304-727337ad1b1f',
scheduled_at: '2026-03-25T14:00:00Z',
recipients: [
{
phone_number: '+5511999999999',
recipient_name: 'João Silva',
dynamic_variables: {'1': 'João', '2': 'Acme Corp'}
}
],
channel: 'voice',
agent_id: '7e09d093-904a-48de-ac49-b0445906c38e',
phone_number_id: 'd1082e49-1b2c-4337-81e2-8eb74810351d',
template_name: 'boas_vindas_pt_br',
meta_phone_external_id: '109876543210987',
config: {
call_timeout: 67,
machine_detection_timeout: 32,
voicemail_tts_message: '<string>',
outbound_auto_greet: true,
max_concurrent: 5
}
})
};
fetch('https://api.useintegra.com.br/api/v1/campaigns', 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.useintegra.com.br/api/v1/campaigns",
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([
'name' => 'Campanha Março 2026',
'project_id' => 'b9c80a57-fad2-41a0-a304-727337ad1b1f',
'scheduled_at' => '2026-03-25T14:00:00Z',
'recipients' => [
[
'phone_number' => '+5511999999999',
'recipient_name' => 'João Silva',
'dynamic_variables' => [
'1' => 'João',
'2' => 'Acme Corp'
]
]
],
'channel' => 'voice',
'agent_id' => '7e09d093-904a-48de-ac49-b0445906c38e',
'phone_number_id' => 'd1082e49-1b2c-4337-81e2-8eb74810351d',
'template_name' => 'boas_vindas_pt_br',
'meta_phone_external_id' => '109876543210987',
'config' => [
'call_timeout' => 67,
'machine_detection_timeout' => 32,
'voicemail_tts_message' => '<string>',
'outbound_auto_greet' => true,
'max_concurrent' => 5
]
]),
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.useintegra.com.br/api/v1/campaigns"
payload := strings.NewReader("{\n \"name\": \"Campanha Março 2026\",\n \"project_id\": \"b9c80a57-fad2-41a0-a304-727337ad1b1f\",\n \"scheduled_at\": \"2026-03-25T14:00:00Z\",\n \"recipients\": [\n {\n \"phone_number\": \"+5511999999999\",\n \"recipient_name\": \"João Silva\",\n \"dynamic_variables\": {\n \"1\": \"João\",\n \"2\": \"Acme Corp\"\n }\n }\n ],\n \"channel\": \"voice\",\n \"agent_id\": \"7e09d093-904a-48de-ac49-b0445906c38e\",\n \"phone_number_id\": \"d1082e49-1b2c-4337-81e2-8eb74810351d\",\n \"template_name\": \"boas_vindas_pt_br\",\n \"meta_phone_external_id\": \"109876543210987\",\n \"config\": {\n \"call_timeout\": 67,\n \"machine_detection_timeout\": 32,\n \"voicemail_tts_message\": \"<string>\",\n \"outbound_auto_greet\": true,\n \"max_concurrent\": 5\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.useintegra.com.br/api/v1/campaigns")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"Campanha Março 2026\",\n \"project_id\": \"b9c80a57-fad2-41a0-a304-727337ad1b1f\",\n \"scheduled_at\": \"2026-03-25T14:00:00Z\",\n \"recipients\": [\n {\n \"phone_number\": \"+5511999999999\",\n \"recipient_name\": \"João Silva\",\n \"dynamic_variables\": {\n \"1\": \"João\",\n \"2\": \"Acme Corp\"\n }\n }\n ],\n \"channel\": \"voice\",\n \"agent_id\": \"7e09d093-904a-48de-ac49-b0445906c38e\",\n \"phone_number_id\": \"d1082e49-1b2c-4337-81e2-8eb74810351d\",\n \"template_name\": \"boas_vindas_pt_br\",\n \"meta_phone_external_id\": \"109876543210987\",\n \"config\": {\n \"call_timeout\": 67,\n \"machine_detection_timeout\": 32,\n \"voicemail_tts_message\": \"<string>\",\n \"outbound_auto_greet\": true,\n \"max_concurrent\": 5\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.useintegra.com.br/api/v1/campaigns")
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 \"name\": \"Campanha Março 2026\",\n \"project_id\": \"b9c80a57-fad2-41a0-a304-727337ad1b1f\",\n \"scheduled_at\": \"2026-03-25T14:00:00Z\",\n \"recipients\": [\n {\n \"phone_number\": \"+5511999999999\",\n \"recipient_name\": \"João Silva\",\n \"dynamic_variables\": {\n \"1\": \"João\",\n \"2\": \"Acme Corp\"\n }\n }\n ],\n \"channel\": \"voice\",\n \"agent_id\": \"7e09d093-904a-48de-ac49-b0445906c38e\",\n \"phone_number_id\": \"d1082e49-1b2c-4337-81e2-8eb74810351d\",\n \"template_name\": \"boas_vindas_pt_br\",\n \"meta_phone_external_id\": \"109876543210987\",\n \"config\": {\n \"call_timeout\": 67,\n \"machine_detection_timeout\": 32,\n \"voicemail_tts_message\": \"<string>\",\n \"outbound_auto_greet\": true,\n \"max_concurrent\": 5\n }\n}"
response = http.request(request)
puts response.read_body{
"id": "<string>",
"name": "<string>",
"status": "<string>",
"channel": "<string>",
"template_name": "<string>",
"scheduled_at": "<string>",
"agent": {
"id": "<string>",
"name": "<string>"
},
"phone_number": {
"id": "<string>",
"number": "<string>",
"friendly_name": "<string>"
},
"total_recipients": 123,
"created_at": "<string>",
"config": "<unknown>"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "<string>"
}