Kampagne erstellen
curl --request POST \
--url https://app.famulor.de/api/user/campaign \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"channel": "<string>",
"timezone": "<string>",
"schedule_windows": [
{}
],
"allowed_hours_start_time": "<string>",
"allowed_hours_end_time": "<string>",
"scheduled_start_at": "<string>",
"allowed_days": [
{}
],
"max_retries": 123,
"retry_interval": 123,
"mark_complete_when_no_leads": true,
"assistant_id": 123,
"max_calls_in_parallel": 123,
"phone_number_ids": [
{}
],
"retry_on_voicemail": true,
"retry_on_goal_incomplete": true,
"goal_completion_variable": "<string>",
"fallback_channel": "<string>",
"fallback_whatsapp_sender_id": 123,
"fallback_whatsapp_template_id": 123,
"fallback_sms_from_phone_number_id": 123,
"fallback_sms_body": "<string>",
"fallback_variable_mapping": {},
"whatsapp_sender_id": 123,
"whatsapp_template_id": 123,
"text_variable_mapping": {},
"messages_per_minute": 123,
"sms_from_phone_number_id": 123,
"sms_body": "<string>"
}
'import requests
url = "https://app.famulor.de/api/user/campaign"
payload = {
"name": "<string>",
"channel": "<string>",
"timezone": "<string>",
"schedule_windows": [{}],
"allowed_hours_start_time": "<string>",
"allowed_hours_end_time": "<string>",
"scheduled_start_at": "<string>",
"allowed_days": [{}],
"max_retries": 123,
"retry_interval": 123,
"mark_complete_when_no_leads": True,
"assistant_id": 123,
"max_calls_in_parallel": 123,
"phone_number_ids": [{}],
"retry_on_voicemail": True,
"retry_on_goal_incomplete": True,
"goal_completion_variable": "<string>",
"fallback_channel": "<string>",
"fallback_whatsapp_sender_id": 123,
"fallback_whatsapp_template_id": 123,
"fallback_sms_from_phone_number_id": 123,
"fallback_sms_body": "<string>",
"fallback_variable_mapping": {},
"whatsapp_sender_id": 123,
"whatsapp_template_id": 123,
"text_variable_mapping": {},
"messages_per_minute": 123,
"sms_from_phone_number_id": 123,
"sms_body": "<string>"
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
channel: '<string>',
timezone: '<string>',
schedule_windows: [{}],
allowed_hours_start_time: '<string>',
allowed_hours_end_time: '<string>',
scheduled_start_at: '<string>',
allowed_days: [{}],
max_retries: 123,
retry_interval: 123,
mark_complete_when_no_leads: true,
assistant_id: 123,
max_calls_in_parallel: 123,
phone_number_ids: [{}],
retry_on_voicemail: true,
retry_on_goal_incomplete: true,
goal_completion_variable: '<string>',
fallback_channel: '<string>',
fallback_whatsapp_sender_id: 123,
fallback_whatsapp_template_id: 123,
fallback_sms_from_phone_number_id: 123,
fallback_sms_body: '<string>',
fallback_variable_mapping: {},
whatsapp_sender_id: 123,
whatsapp_template_id: 123,
text_variable_mapping: {},
messages_per_minute: 123,
sms_from_phone_number_id: 123,
sms_body: '<string>'
})
};
fetch('https://app.famulor.de/api/user/campaign', 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://app.famulor.de/api/user/campaign",
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' => '<string>',
'channel' => '<string>',
'timezone' => '<string>',
'schedule_windows' => [
[
]
],
'allowed_hours_start_time' => '<string>',
'allowed_hours_end_time' => '<string>',
'scheduled_start_at' => '<string>',
'allowed_days' => [
[
]
],
'max_retries' => 123,
'retry_interval' => 123,
'mark_complete_when_no_leads' => true,
'assistant_id' => 123,
'max_calls_in_parallel' => 123,
'phone_number_ids' => [
[
]
],
'retry_on_voicemail' => true,
'retry_on_goal_incomplete' => true,
'goal_completion_variable' => '<string>',
'fallback_channel' => '<string>',
'fallback_whatsapp_sender_id' => 123,
'fallback_whatsapp_template_id' => 123,
'fallback_sms_from_phone_number_id' => 123,
'fallback_sms_body' => '<string>',
'fallback_variable_mapping' => [
],
'whatsapp_sender_id' => 123,
'whatsapp_template_id' => 123,
'text_variable_mapping' => [
],
'messages_per_minute' => 123,
'sms_from_phone_number_id' => 123,
'sms_body' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"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://app.famulor.de/api/user/campaign"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"channel\": \"<string>\",\n \"timezone\": \"<string>\",\n \"schedule_windows\": [\n {}\n ],\n \"allowed_hours_start_time\": \"<string>\",\n \"allowed_hours_end_time\": \"<string>\",\n \"scheduled_start_at\": \"<string>\",\n \"allowed_days\": [\n {}\n ],\n \"max_retries\": 123,\n \"retry_interval\": 123,\n \"mark_complete_when_no_leads\": true,\n \"assistant_id\": 123,\n \"max_calls_in_parallel\": 123,\n \"phone_number_ids\": [\n {}\n ],\n \"retry_on_voicemail\": true,\n \"retry_on_goal_incomplete\": true,\n \"goal_completion_variable\": \"<string>\",\n \"fallback_channel\": \"<string>\",\n \"fallback_whatsapp_sender_id\": 123,\n \"fallback_whatsapp_template_id\": 123,\n \"fallback_sms_from_phone_number_id\": 123,\n \"fallback_sms_body\": \"<string>\",\n \"fallback_variable_mapping\": {},\n \"whatsapp_sender_id\": 123,\n \"whatsapp_template_id\": 123,\n \"text_variable_mapping\": {},\n \"messages_per_minute\": 123,\n \"sms_from_phone_number_id\": 123,\n \"sms_body\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
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://app.famulor.de/api/user/campaign")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"channel\": \"<string>\",\n \"timezone\": \"<string>\",\n \"schedule_windows\": [\n {}\n ],\n \"allowed_hours_start_time\": \"<string>\",\n \"allowed_hours_end_time\": \"<string>\",\n \"scheduled_start_at\": \"<string>\",\n \"allowed_days\": [\n {}\n ],\n \"max_retries\": 123,\n \"retry_interval\": 123,\n \"mark_complete_when_no_leads\": true,\n \"assistant_id\": 123,\n \"max_calls_in_parallel\": 123,\n \"phone_number_ids\": [\n {}\n ],\n \"retry_on_voicemail\": true,\n \"retry_on_goal_incomplete\": true,\n \"goal_completion_variable\": \"<string>\",\n \"fallback_channel\": \"<string>\",\n \"fallback_whatsapp_sender_id\": 123,\n \"fallback_whatsapp_template_id\": 123,\n \"fallback_sms_from_phone_number_id\": 123,\n \"fallback_sms_body\": \"<string>\",\n \"fallback_variable_mapping\": {},\n \"whatsapp_sender_id\": 123,\n \"whatsapp_template_id\": 123,\n \"text_variable_mapping\": {},\n \"messages_per_minute\": 123,\n \"sms_from_phone_number_id\": 123,\n \"sms_body\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.famulor.de/api/user/campaign")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"channel\": \"<string>\",\n \"timezone\": \"<string>\",\n \"schedule_windows\": [\n {}\n ],\n \"allowed_hours_start_time\": \"<string>\",\n \"allowed_hours_end_time\": \"<string>\",\n \"scheduled_start_at\": \"<string>\",\n \"allowed_days\": [\n {}\n ],\n \"max_retries\": 123,\n \"retry_interval\": 123,\n \"mark_complete_when_no_leads\": true,\n \"assistant_id\": 123,\n \"max_calls_in_parallel\": 123,\n \"phone_number_ids\": [\n {}\n ],\n \"retry_on_voicemail\": true,\n \"retry_on_goal_incomplete\": true,\n \"goal_completion_variable\": \"<string>\",\n \"fallback_channel\": \"<string>\",\n \"fallback_whatsapp_sender_id\": 123,\n \"fallback_whatsapp_template_id\": 123,\n \"fallback_sms_from_phone_number_id\": 123,\n \"fallback_sms_body\": \"<string>\",\n \"fallback_variable_mapping\": {},\n \"whatsapp_sender_id\": 123,\n \"whatsapp_template_id\": 123,\n \"text_variable_mapping\": {},\n \"messages_per_minute\": 123,\n \"sms_from_phone_number_id\": 123,\n \"sms_body\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"message": "Campaign created successfully",
"data": {
"id": 1,
"name": "Product Demo Campaign",
"channel": "call",
"status": "draft",
"assistant_id": 42,
"timezone": "Europe/Berlin",
"max_calls_in_parallel": 3,
"messages_per_minute": null,
"schedule_windows": [
{ "start": "09:00", "end": "17:00" }
],
"scheduled_start_at": null,
"allowed_hours_start_time": "09:00",
"allowed_hours_end_time": "17:00",
"allowed_days": [
"monday",
"tuesday",
"wednesday",
"thursday",
"friday"
],
"max_retries": 3,
"retry_interval": 60,
"retry_on_voicemail": false,
"retry_on_goal_incomplete": false,
"goal_completion_variable": null,
"mark_complete_when_no_leads": true,
"phone_number_ids": [101],
"whatsapp_sender_id": null,
"whatsapp_template_id": null,
"sms_from_phone_number_id": null,
"sms_body": null,
"text_variable_mapping": null,
"fallback_channel": null,
"fallback_whatsapp_sender_id": null,
"fallback_whatsapp_template_id": null,
"fallback_sms_from_phone_number_id": null,
"fallback_sms_body": null,
"fallback_variable_mapping": null,
"created_at": "2026-02-23T10:00:00.000000Z",
"updated_at": "2026-02-23T10:00:00.000000Z"
}
}
{
"message": "The given data was invalid.",
"errors": {
"name": [
"The name field is required."
],
"assistant_id": [
"The assistant id field is required."
]
}
}
Campaigns
Kampagne erstellen
Erstelle eine Draft-Kampagne für Anruf, WhatsApp oder SMS in Famulor per API. Leads hinzufügen, dann mit Update campaign status starten.
POST
/
api
/
user
/
campaign
Kampagne erstellen
curl --request POST \
--url https://app.famulor.de/api/user/campaign \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"channel": "<string>",
"timezone": "<string>",
"schedule_windows": [
{}
],
"allowed_hours_start_time": "<string>",
"allowed_hours_end_time": "<string>",
"scheduled_start_at": "<string>",
"allowed_days": [
{}
],
"max_retries": 123,
"retry_interval": 123,
"mark_complete_when_no_leads": true,
"assistant_id": 123,
"max_calls_in_parallel": 123,
"phone_number_ids": [
{}
],
"retry_on_voicemail": true,
"retry_on_goal_incomplete": true,
"goal_completion_variable": "<string>",
"fallback_channel": "<string>",
"fallback_whatsapp_sender_id": 123,
"fallback_whatsapp_template_id": 123,
"fallback_sms_from_phone_number_id": 123,
"fallback_sms_body": "<string>",
"fallback_variable_mapping": {},
"whatsapp_sender_id": 123,
"whatsapp_template_id": 123,
"text_variable_mapping": {},
"messages_per_minute": 123,
"sms_from_phone_number_id": 123,
"sms_body": "<string>"
}
'import requests
url = "https://app.famulor.de/api/user/campaign"
payload = {
"name": "<string>",
"channel": "<string>",
"timezone": "<string>",
"schedule_windows": [{}],
"allowed_hours_start_time": "<string>",
"allowed_hours_end_time": "<string>",
"scheduled_start_at": "<string>",
"allowed_days": [{}],
"max_retries": 123,
"retry_interval": 123,
"mark_complete_when_no_leads": True,
"assistant_id": 123,
"max_calls_in_parallel": 123,
"phone_number_ids": [{}],
"retry_on_voicemail": True,
"retry_on_goal_incomplete": True,
"goal_completion_variable": "<string>",
"fallback_channel": "<string>",
"fallback_whatsapp_sender_id": 123,
"fallback_whatsapp_template_id": 123,
"fallback_sms_from_phone_number_id": 123,
"fallback_sms_body": "<string>",
"fallback_variable_mapping": {},
"whatsapp_sender_id": 123,
"whatsapp_template_id": 123,
"text_variable_mapping": {},
"messages_per_minute": 123,
"sms_from_phone_number_id": 123,
"sms_body": "<string>"
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
channel: '<string>',
timezone: '<string>',
schedule_windows: [{}],
allowed_hours_start_time: '<string>',
allowed_hours_end_time: '<string>',
scheduled_start_at: '<string>',
allowed_days: [{}],
max_retries: 123,
retry_interval: 123,
mark_complete_when_no_leads: true,
assistant_id: 123,
max_calls_in_parallel: 123,
phone_number_ids: [{}],
retry_on_voicemail: true,
retry_on_goal_incomplete: true,
goal_completion_variable: '<string>',
fallback_channel: '<string>',
fallback_whatsapp_sender_id: 123,
fallback_whatsapp_template_id: 123,
fallback_sms_from_phone_number_id: 123,
fallback_sms_body: '<string>',
fallback_variable_mapping: {},
whatsapp_sender_id: 123,
whatsapp_template_id: 123,
text_variable_mapping: {},
messages_per_minute: 123,
sms_from_phone_number_id: 123,
sms_body: '<string>'
})
};
fetch('https://app.famulor.de/api/user/campaign', 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://app.famulor.de/api/user/campaign",
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' => '<string>',
'channel' => '<string>',
'timezone' => '<string>',
'schedule_windows' => [
[
]
],
'allowed_hours_start_time' => '<string>',
'allowed_hours_end_time' => '<string>',
'scheduled_start_at' => '<string>',
'allowed_days' => [
[
]
],
'max_retries' => 123,
'retry_interval' => 123,
'mark_complete_when_no_leads' => true,
'assistant_id' => 123,
'max_calls_in_parallel' => 123,
'phone_number_ids' => [
[
]
],
'retry_on_voicemail' => true,
'retry_on_goal_incomplete' => true,
'goal_completion_variable' => '<string>',
'fallback_channel' => '<string>',
'fallback_whatsapp_sender_id' => 123,
'fallback_whatsapp_template_id' => 123,
'fallback_sms_from_phone_number_id' => 123,
'fallback_sms_body' => '<string>',
'fallback_variable_mapping' => [
],
'whatsapp_sender_id' => 123,
'whatsapp_template_id' => 123,
'text_variable_mapping' => [
],
'messages_per_minute' => 123,
'sms_from_phone_number_id' => 123,
'sms_body' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"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://app.famulor.de/api/user/campaign"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"channel\": \"<string>\",\n \"timezone\": \"<string>\",\n \"schedule_windows\": [\n {}\n ],\n \"allowed_hours_start_time\": \"<string>\",\n \"allowed_hours_end_time\": \"<string>\",\n \"scheduled_start_at\": \"<string>\",\n \"allowed_days\": [\n {}\n ],\n \"max_retries\": 123,\n \"retry_interval\": 123,\n \"mark_complete_when_no_leads\": true,\n \"assistant_id\": 123,\n \"max_calls_in_parallel\": 123,\n \"phone_number_ids\": [\n {}\n ],\n \"retry_on_voicemail\": true,\n \"retry_on_goal_incomplete\": true,\n \"goal_completion_variable\": \"<string>\",\n \"fallback_channel\": \"<string>\",\n \"fallback_whatsapp_sender_id\": 123,\n \"fallback_whatsapp_template_id\": 123,\n \"fallback_sms_from_phone_number_id\": 123,\n \"fallback_sms_body\": \"<string>\",\n \"fallback_variable_mapping\": {},\n \"whatsapp_sender_id\": 123,\n \"whatsapp_template_id\": 123,\n \"text_variable_mapping\": {},\n \"messages_per_minute\": 123,\n \"sms_from_phone_number_id\": 123,\n \"sms_body\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
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://app.famulor.de/api/user/campaign")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"channel\": \"<string>\",\n \"timezone\": \"<string>\",\n \"schedule_windows\": [\n {}\n ],\n \"allowed_hours_start_time\": \"<string>\",\n \"allowed_hours_end_time\": \"<string>\",\n \"scheduled_start_at\": \"<string>\",\n \"allowed_days\": [\n {}\n ],\n \"max_retries\": 123,\n \"retry_interval\": 123,\n \"mark_complete_when_no_leads\": true,\n \"assistant_id\": 123,\n \"max_calls_in_parallel\": 123,\n \"phone_number_ids\": [\n {}\n ],\n \"retry_on_voicemail\": true,\n \"retry_on_goal_incomplete\": true,\n \"goal_completion_variable\": \"<string>\",\n \"fallback_channel\": \"<string>\",\n \"fallback_whatsapp_sender_id\": 123,\n \"fallback_whatsapp_template_id\": 123,\n \"fallback_sms_from_phone_number_id\": 123,\n \"fallback_sms_body\": \"<string>\",\n \"fallback_variable_mapping\": {},\n \"whatsapp_sender_id\": 123,\n \"whatsapp_template_id\": 123,\n \"text_variable_mapping\": {},\n \"messages_per_minute\": 123,\n \"sms_from_phone_number_id\": 123,\n \"sms_body\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.famulor.de/api/user/campaign")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"channel\": \"<string>\",\n \"timezone\": \"<string>\",\n \"schedule_windows\": [\n {}\n ],\n \"allowed_hours_start_time\": \"<string>\",\n \"allowed_hours_end_time\": \"<string>\",\n \"scheduled_start_at\": \"<string>\",\n \"allowed_days\": [\n {}\n ],\n \"max_retries\": 123,\n \"retry_interval\": 123,\n \"mark_complete_when_no_leads\": true,\n \"assistant_id\": 123,\n \"max_calls_in_parallel\": 123,\n \"phone_number_ids\": [\n {}\n ],\n \"retry_on_voicemail\": true,\n \"retry_on_goal_incomplete\": true,\n \"goal_completion_variable\": \"<string>\",\n \"fallback_channel\": \"<string>\",\n \"fallback_whatsapp_sender_id\": 123,\n \"fallback_whatsapp_template_id\": 123,\n \"fallback_sms_from_phone_number_id\": 123,\n \"fallback_sms_body\": \"<string>\",\n \"fallback_variable_mapping\": {},\n \"whatsapp_sender_id\": 123,\n \"whatsapp_template_id\": 123,\n \"text_variable_mapping\": {},\n \"messages_per_minute\": 123,\n \"sms_from_phone_number_id\": 123,\n \"sms_body\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"message": "Campaign created successfully",
"data": {
"id": 1,
"name": "Product Demo Campaign",
"channel": "call",
"status": "draft",
"assistant_id": 42,
"timezone": "Europe/Berlin",
"max_calls_in_parallel": 3,
"messages_per_minute": null,
"schedule_windows": [
{ "start": "09:00", "end": "17:00" }
],
"scheduled_start_at": null,
"allowed_hours_start_time": "09:00",
"allowed_hours_end_time": "17:00",
"allowed_days": [
"monday",
"tuesday",
"wednesday",
"thursday",
"friday"
],
"max_retries": 3,
"retry_interval": 60,
"retry_on_voicemail": false,
"retry_on_goal_incomplete": false,
"goal_completion_variable": null,
"mark_complete_when_no_leads": true,
"phone_number_ids": [101],
"whatsapp_sender_id": null,
"whatsapp_template_id": null,
"sms_from_phone_number_id": null,
"sms_body": null,
"text_variable_mapping": null,
"fallback_channel": null,
"fallback_whatsapp_sender_id": null,
"fallback_whatsapp_template_id": null,
"fallback_sms_from_phone_number_id": null,
"fallback_sms_body": null,
"fallback_variable_mapping": null,
"created_at": "2026-02-23T10:00:00.000000Z",
"updated_at": "2026-02-23T10:00:00.000000Z"
}
}
{
"message": "The given data was invalid.",
"errors": {
"name": [
"The name field is required."
],
"assistant_id": [
"The assistant id field is required."
]
}
}
Famulor 1.0 API (Legacy). Diese Seite gilt nur für Famulor 1.0 (
app.famulor.de) und bleibt aus Kompatibilitätsgründen erhalten. Für die aktuelle Plattform nutze die Famulor 2.0 API-Referenz.draft — Leads hinzufügen, dann mit Kampagnen-Status aktualisieren starten.
Unterstützte Channels:
call(Standard) — Outbound-Voice mit einem OUTBOUND-Assistentenwhatsapp— freigegebenes WhatsApp-Template über einen deiner Sendersms— SMS-Text von einer SMS-fähigen Nummer (kann auf der Plattform vorübergehend nicht verfügbar sein)
Anfrage-Body
Gemeinsam
string
erforderlich
Kampagnenname. Maximal 255 Zeichen.
string
Standard:"call"
call, whatsapp oder sms.string
IANA-Zeitzone für das Sende-/Anrufzeitfenster (z. B.
America/New_York). Standard: Assistenten-Zeitzone bei Anrufkampagnen, sonst Konten-Zeitzone.array
Bevorzugter Schedule: ein oder mehrere tägliche Fenster als Objekte mit
start und end in HH:MM. Übernacht-Fenster sind erlaubt, wenn end vor start liegt (z. B. 16:00 → 02:00).string
Standard:"00:00"
Legacy-Einzelfenster-Start (
HH:MM). Wird verwendet, wenn schedule_windows fehlt.string
Standard:"23:59"
Legacy-Einzelfenster-Ende (
HH:MM). Übernacht, wenn end < start.string
Optionale ISO-Datetime. Wenn gesetzt, kann die Kampagne zu diesem Zeitpunkt automatisch starten.
array
Standard:"alle 7 Tage"
Wochentage:
monday … sunday.integer
Standard:"3"
Max. Retry-Versuche pro Lead. Bereich: 1–5.
integer
Standard:"60"
Minuten zwischen Retries. Bereich: 10–4320.
boolean
Standard:"true"
Kampagne automatisch als abgeschlossen markieren, wenn keine Arbeit mehr übrig ist.
Anrufkampagnen
integer
Pflicht bei
channel=call. Muss ein OUTBOUND-Assistent sein, der dir gehört.integer
Standard:"3"
Parallele Anrufe (tarifbegrenzt, max. 10).
array
Outbound-Absender-Nummern-IDs, die deinem Konto zur Verfügung stehen.
boolean
Retry, wenn der Anruf beim Anrufbeantworter landet.
boolean
Weiter retryen, bis eine Boolean-Post-Call-Goal-Variable
true ist.string
Name der Boolean-Post-Call-Schema-Variable für
retry_on_goal_incomplete.string
Optionaler Call→Text-Follow-up nach max. Anruf-Retries:
whatsapp oder sms.integer
Pflicht bei
fallback_channel=whatsapp.integer
Pflicht bei
fallback_channel=whatsapp. Muss ein freigegebenes Template auf diesem Sender sein.integer
Pflicht bei
fallback_channel=sms.string
Pflicht bei
fallback_channel=sms. Unterstützt {{variable}}-Platzhalter.object
Mappt WhatsApp-Template-Platzhalter (z. B.
"1") auf Lead-Variablen-Keys für den Fallback-Send.WhatsApp-Kampagnen
integer
Pflicht bei
channel=whatsapp. Sender, der dir gehört.integer
Pflicht bei
channel=whatsapp. Freigegebenes Template auf diesem Sender.object
Mappt Template-Platzhalter (z. B.
"1") auf Lead-Variablen-Keys.integer
Sende-Rate pro Kampagne (1–10). WhatsApp-Kampagnen teilen sich zusätzlich einen nutzerweiten Pool von 10 In-Flight-Sends über alle aktiven WhatsApp-Kampagnen.
SMS-Kampagnen
integer
Pflicht bei
channel=sms. Muss SMS-fähig und für dich verfügbar sein.string
Pflicht bei
channel=sms. Max. 1600 Zeichen. Unterstützt {{variable}}-Platzhalter.Antwort
string
Erfolgsmeldung
object
Erstellte Kampagne (gleiche Form wie Kampagne abrufen), inklusive Channel, Schedule, Text-Config und Fallback-Feldern.
Fehlerantworten
Tarif-Limit, ungültiger Assistent/Sender/Template, deaktivierter Channel oder Validierungsfehler.
{
"message": "Campaign created successfully",
"data": {
"id": 1,
"name": "Product Demo Campaign",
"channel": "call",
"status": "draft",
"assistant_id": 42,
"timezone": "Europe/Berlin",
"max_calls_in_parallel": 3,
"messages_per_minute": null,
"schedule_windows": [
{ "start": "09:00", "end": "17:00" }
],
"scheduled_start_at": null,
"allowed_hours_start_time": "09:00",
"allowed_hours_end_time": "17:00",
"allowed_days": [
"monday",
"tuesday",
"wednesday",
"thursday",
"friday"
],
"max_retries": 3,
"retry_interval": 60,
"retry_on_voicemail": false,
"retry_on_goal_incomplete": false,
"goal_completion_variable": null,
"mark_complete_when_no_leads": true,
"phone_number_ids": [101],
"whatsapp_sender_id": null,
"whatsapp_template_id": null,
"sms_from_phone_number_id": null,
"sms_body": null,
"text_variable_mapping": null,
"fallback_channel": null,
"fallback_whatsapp_sender_id": null,
"fallback_whatsapp_template_id": null,
"fallback_sms_from_phone_number_id": null,
"fallback_sms_body": null,
"fallback_variable_mapping": null,
"created_at": "2026-02-23T10:00:00.000000Z",
"updated_at": "2026-02-23T10:00:00.000000Z"
}
}
{
"message": "The given data was invalid.",
"errors": {
"name": [
"The name field is required."
],
"assistant_id": [
"The assistant id field is required."
]
}
}
Verwandte Seiten: Einführung und Authentifizierungs-Leitfaden sowie API-Integrationsbeispiele.