Enviar campanha
curl --request POST \
--url https://api02.frconnect.com.br/v2/whatsapp/campaign/send \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--header 'X-Instance-Token: <x-instance-token>' \
--data '
{
"campaignName": "Campanha Teste 03/06/2026",
"channel": "whatsapp",
"delaySeconds": 60,
"message": {
"media": {
"url": "{mediaurl}"
},
"text": "Olá {nome|Cliente}! Este é um teste da {empresa}."
},
"recipients": [
{
"nome": "Fabio",
"to": "5584999988146"
}
],
"scheduledAt": "2026-06-02T14:00:00-03:00",
"variables": {
"contato": "https://wa.me/5584988949250",
"empresa": "Chef Maricotta",
"instagram": "@chefmaricotta",
"mediaurl": "https://browniejunino.chefmaricotta.com.br/assets/hero_banner_novo-BWMvNFxM.jpg",
"site": "https://notifyweb.app.br"
}
}
'import requests
url = "https://api02.frconnect.com.br/v2/whatsapp/campaign/send"
payload = {
"campaignName": "Campanha Teste 03/06/2026",
"channel": "whatsapp",
"delaySeconds": 60,
"message": {
"media": { "url": "{mediaurl}" },
"text": "Olá {nome|Cliente}! Este é um teste da {empresa}."
},
"recipients": [
{
"nome": "Fabio",
"to": "5584999988146"
}
],
"scheduledAt": "2026-06-02T14:00:00-03:00",
"variables": {
"contato": "https://wa.me/5584988949250",
"empresa": "Chef Maricotta",
"instagram": "@chefmaricotta",
"mediaurl": "https://browniejunino.chefmaricotta.com.br/assets/hero_banner_novo-BWMvNFxM.jpg",
"site": "https://notifyweb.app.br"
}
}
headers = {
"X-Instance-Token": "<x-instance-token>",
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'X-Instance-Token': '<x-instance-token>',
'X-API-Key': '<api-key>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
campaignName: 'Campanha Teste 03/06/2026',
channel: 'whatsapp',
delaySeconds: 60,
message: {
media: {url: '{mediaurl}'},
text: 'Olá {nome|Cliente}! Este é um teste da {empresa}.'
},
recipients: [{nome: 'Fabio', to: '5584999988146'}],
scheduledAt: '2026-06-02T14:00:00-03:00',
variables: {
contato: 'https://wa.me/5584988949250',
empresa: 'Chef Maricotta',
instagram: '@chefmaricotta',
mediaurl: 'https://browniejunino.chefmaricotta.com.br/assets/hero_banner_novo-BWMvNFxM.jpg',
site: 'https://notifyweb.app.br'
}
})
};
fetch('https://api02.frconnect.com.br/v2/whatsapp/campaign/send', 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://api02.frconnect.com.br/v2/whatsapp/campaign/send",
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([
'campaignName' => 'Campanha Teste 03/06/2026',
'channel' => 'whatsapp',
'delaySeconds' => 60,
'message' => [
'media' => [
'url' => '{mediaurl}'
],
'text' => 'Olá {nome|Cliente}! Este é um teste da {empresa}.'
],
'recipients' => [
[
'nome' => 'Fabio',
'to' => '5584999988146'
]
],
'scheduledAt' => '2026-06-02T14:00:00-03:00',
'variables' => [
'contato' => 'https://wa.me/5584988949250',
'empresa' => 'Chef Maricotta',
'instagram' => '@chefmaricotta',
'mediaurl' => 'https://browniejunino.chefmaricotta.com.br/assets/hero_banner_novo-BWMvNFxM.jpg',
'site' => 'https://notifyweb.app.br'
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-Key: <api-key>",
"X-Instance-Token: <x-instance-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"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api02.frconnect.com.br/v2/whatsapp/campaign/send"
payload := strings.NewReader("{\n \"campaignName\": \"Campanha Teste 03/06/2026\",\n \"channel\": \"whatsapp\",\n \"delaySeconds\": 60,\n \"message\": {\n \"media\": {\n \"url\": \"{mediaurl}\"\n },\n \"text\": \"Olá {nome|Cliente}! Este é um teste da {empresa}.\"\n },\n \"recipients\": [\n {\n \"nome\": \"Fabio\",\n \"to\": \"5584999988146\"\n }\n ],\n \"scheduledAt\": \"2026-06-02T14:00:00-03:00\",\n \"variables\": {\n \"contato\": \"https://wa.me/5584988949250\",\n \"empresa\": \"Chef Maricotta\",\n \"instagram\": \"@chefmaricotta\",\n \"mediaurl\": \"https://browniejunino.chefmaricotta.com.br/assets/hero_banner_novo-BWMvNFxM.jpg\",\n \"site\": \"https://notifyweb.app.br\"\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-Instance-Token", "<x-instance-token>")
req.Header.Add("X-API-Key", "<api-key>")
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://api02.frconnect.com.br/v2/whatsapp/campaign/send")
.header("X-Instance-Token", "<x-instance-token>")
.header("X-API-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"campaignName\": \"Campanha Teste 03/06/2026\",\n \"channel\": \"whatsapp\",\n \"delaySeconds\": 60,\n \"message\": {\n \"media\": {\n \"url\": \"{mediaurl}\"\n },\n \"text\": \"Olá {nome|Cliente}! Este é um teste da {empresa}.\"\n },\n \"recipients\": [\n {\n \"nome\": \"Fabio\",\n \"to\": \"5584999988146\"\n }\n ],\n \"scheduledAt\": \"2026-06-02T14:00:00-03:00\",\n \"variables\": {\n \"contato\": \"https://wa.me/5584988949250\",\n \"empresa\": \"Chef Maricotta\",\n \"instagram\": \"@chefmaricotta\",\n \"mediaurl\": \"https://browniejunino.chefmaricotta.com.br/assets/hero_banner_novo-BWMvNFxM.jpg\",\n \"site\": \"https://notifyweb.app.br\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api02.frconnect.com.br/v2/whatsapp/campaign/send")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-Instance-Token"] = '<x-instance-token>'
request["X-API-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"campaignName\": \"Campanha Teste 03/06/2026\",\n \"channel\": \"whatsapp\",\n \"delaySeconds\": 60,\n \"message\": {\n \"media\": {\n \"url\": \"{mediaurl}\"\n },\n \"text\": \"Olá {nome|Cliente}! Este é um teste da {empresa}.\"\n },\n \"recipients\": [\n {\n \"nome\": \"Fabio\",\n \"to\": \"5584999988146\"\n }\n ],\n \"scheduledAt\": \"2026-06-02T14:00:00-03:00\",\n \"variables\": {\n \"contato\": \"https://wa.me/5584988949250\",\n \"empresa\": \"Chef Maricotta\",\n \"instagram\": \"@chefmaricotta\",\n \"mediaurl\": \"https://browniejunino.chefmaricotta.com.br/assets/hero_banner_novo-BWMvNFxM.jpg\",\n \"site\": \"https://notifyweb.app.br\"\n }\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"message": "Campanha criada com sucesso",
"campaignId": "746d8738-87ab-4336-8b73-4ee63fe625c4",
"totalMessages": 50000,
"status": "pending"
}{
"success": false,
"message": "Token inválido."
}{
"success": false,
"message": "Campanha não encontrada."
}{
"success": false,
"message": "Campanha não criada",
"error": {
"code": "ACTIVE_CAMPAIGN_EXISTS",
"description": "Instância Campanha Teste possui campanha ativa"
}
}{
"success": false,
"message": "Instância desconectada."
}{
"success": false,
"message": "Erro interno do servidor."
}WhatsApp
Enviar campanha
POST
/
v2
/
whatsapp
/
campaign
/
send
Enviar campanha
curl --request POST \
--url https://api02.frconnect.com.br/v2/whatsapp/campaign/send \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--header 'X-Instance-Token: <x-instance-token>' \
--data '
{
"campaignName": "Campanha Teste 03/06/2026",
"channel": "whatsapp",
"delaySeconds": 60,
"message": {
"media": {
"url": "{mediaurl}"
},
"text": "Olá {nome|Cliente}! Este é um teste da {empresa}."
},
"recipients": [
{
"nome": "Fabio",
"to": "5584999988146"
}
],
"scheduledAt": "2026-06-02T14:00:00-03:00",
"variables": {
"contato": "https://wa.me/5584988949250",
"empresa": "Chef Maricotta",
"instagram": "@chefmaricotta",
"mediaurl": "https://browniejunino.chefmaricotta.com.br/assets/hero_banner_novo-BWMvNFxM.jpg",
"site": "https://notifyweb.app.br"
}
}
'import requests
url = "https://api02.frconnect.com.br/v2/whatsapp/campaign/send"
payload = {
"campaignName": "Campanha Teste 03/06/2026",
"channel": "whatsapp",
"delaySeconds": 60,
"message": {
"media": { "url": "{mediaurl}" },
"text": "Olá {nome|Cliente}! Este é um teste da {empresa}."
},
"recipients": [
{
"nome": "Fabio",
"to": "5584999988146"
}
],
"scheduledAt": "2026-06-02T14:00:00-03:00",
"variables": {
"contato": "https://wa.me/5584988949250",
"empresa": "Chef Maricotta",
"instagram": "@chefmaricotta",
"mediaurl": "https://browniejunino.chefmaricotta.com.br/assets/hero_banner_novo-BWMvNFxM.jpg",
"site": "https://notifyweb.app.br"
}
}
headers = {
"X-Instance-Token": "<x-instance-token>",
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'X-Instance-Token': '<x-instance-token>',
'X-API-Key': '<api-key>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
campaignName: 'Campanha Teste 03/06/2026',
channel: 'whatsapp',
delaySeconds: 60,
message: {
media: {url: '{mediaurl}'},
text: 'Olá {nome|Cliente}! Este é um teste da {empresa}.'
},
recipients: [{nome: 'Fabio', to: '5584999988146'}],
scheduledAt: '2026-06-02T14:00:00-03:00',
variables: {
contato: 'https://wa.me/5584988949250',
empresa: 'Chef Maricotta',
instagram: '@chefmaricotta',
mediaurl: 'https://browniejunino.chefmaricotta.com.br/assets/hero_banner_novo-BWMvNFxM.jpg',
site: 'https://notifyweb.app.br'
}
})
};
fetch('https://api02.frconnect.com.br/v2/whatsapp/campaign/send', 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://api02.frconnect.com.br/v2/whatsapp/campaign/send",
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([
'campaignName' => 'Campanha Teste 03/06/2026',
'channel' => 'whatsapp',
'delaySeconds' => 60,
'message' => [
'media' => [
'url' => '{mediaurl}'
],
'text' => 'Olá {nome|Cliente}! Este é um teste da {empresa}.'
],
'recipients' => [
[
'nome' => 'Fabio',
'to' => '5584999988146'
]
],
'scheduledAt' => '2026-06-02T14:00:00-03:00',
'variables' => [
'contato' => 'https://wa.me/5584988949250',
'empresa' => 'Chef Maricotta',
'instagram' => '@chefmaricotta',
'mediaurl' => 'https://browniejunino.chefmaricotta.com.br/assets/hero_banner_novo-BWMvNFxM.jpg',
'site' => 'https://notifyweb.app.br'
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-Key: <api-key>",
"X-Instance-Token: <x-instance-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"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api02.frconnect.com.br/v2/whatsapp/campaign/send"
payload := strings.NewReader("{\n \"campaignName\": \"Campanha Teste 03/06/2026\",\n \"channel\": \"whatsapp\",\n \"delaySeconds\": 60,\n \"message\": {\n \"media\": {\n \"url\": \"{mediaurl}\"\n },\n \"text\": \"Olá {nome|Cliente}! Este é um teste da {empresa}.\"\n },\n \"recipients\": [\n {\n \"nome\": \"Fabio\",\n \"to\": \"5584999988146\"\n }\n ],\n \"scheduledAt\": \"2026-06-02T14:00:00-03:00\",\n \"variables\": {\n \"contato\": \"https://wa.me/5584988949250\",\n \"empresa\": \"Chef Maricotta\",\n \"instagram\": \"@chefmaricotta\",\n \"mediaurl\": \"https://browniejunino.chefmaricotta.com.br/assets/hero_banner_novo-BWMvNFxM.jpg\",\n \"site\": \"https://notifyweb.app.br\"\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-Instance-Token", "<x-instance-token>")
req.Header.Add("X-API-Key", "<api-key>")
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://api02.frconnect.com.br/v2/whatsapp/campaign/send")
.header("X-Instance-Token", "<x-instance-token>")
.header("X-API-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"campaignName\": \"Campanha Teste 03/06/2026\",\n \"channel\": \"whatsapp\",\n \"delaySeconds\": 60,\n \"message\": {\n \"media\": {\n \"url\": \"{mediaurl}\"\n },\n \"text\": \"Olá {nome|Cliente}! Este é um teste da {empresa}.\"\n },\n \"recipients\": [\n {\n \"nome\": \"Fabio\",\n \"to\": \"5584999988146\"\n }\n ],\n \"scheduledAt\": \"2026-06-02T14:00:00-03:00\",\n \"variables\": {\n \"contato\": \"https://wa.me/5584988949250\",\n \"empresa\": \"Chef Maricotta\",\n \"instagram\": \"@chefmaricotta\",\n \"mediaurl\": \"https://browniejunino.chefmaricotta.com.br/assets/hero_banner_novo-BWMvNFxM.jpg\",\n \"site\": \"https://notifyweb.app.br\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api02.frconnect.com.br/v2/whatsapp/campaign/send")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-Instance-Token"] = '<x-instance-token>'
request["X-API-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"campaignName\": \"Campanha Teste 03/06/2026\",\n \"channel\": \"whatsapp\",\n \"delaySeconds\": 60,\n \"message\": {\n \"media\": {\n \"url\": \"{mediaurl}\"\n },\n \"text\": \"Olá {nome|Cliente}! Este é um teste da {empresa}.\"\n },\n \"recipients\": [\n {\n \"nome\": \"Fabio\",\n \"to\": \"5584999988146\"\n }\n ],\n \"scheduledAt\": \"2026-06-02T14:00:00-03:00\",\n \"variables\": {\n \"contato\": \"https://wa.me/5584988949250\",\n \"empresa\": \"Chef Maricotta\",\n \"instagram\": \"@chefmaricotta\",\n \"mediaurl\": \"https://browniejunino.chefmaricotta.com.br/assets/hero_banner_novo-BWMvNFxM.jpg\",\n \"site\": \"https://notifyweb.app.br\"\n }\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"message": "Campanha criada com sucesso",
"campaignId": "746d8738-87ab-4336-8b73-4ee63fe625c4",
"totalMessages": 50000,
"status": "pending"
}{
"success": false,
"message": "Token inválido."
}{
"success": false,
"message": "Campanha não encontrada."
}{
"success": false,
"message": "Campanha não criada",
"error": {
"code": "ACTIVE_CAMPAIGN_EXISTS",
"description": "Instância Campanha Teste possui campanha ativa"
}
}{
"success": false,
"message": "Instância desconectada."
}{
"success": false,
"message": "Erro interno do servidor."
}Authorizations
APIKeyHeaderHTTPBearer
Headers
Body
application/json
Response
Campanha criada com sucesso.
Resposta de sucesso para criação de campanha.
⌘I

