Crear lead
curl --request POST \
--url https://api.example.com/user/lead \
--header 'Content-Type: application/json' \
--data '
{
"phone_number": "<string>",
"campaign_id": 123,
"variables": {
"customer_name": "<string>",
"email": "<string>"
},
"allow_dupplicate": true,
"secondary_contacts": [
{
"phone_number": "<string>",
"variables": {
"customer_name": "<string>",
"email": "<string>"
}
}
]
}
'import requests
url = "https://api.example.com/user/lead"
payload = {
"phone_number": "<string>",
"campaign_id": 123,
"variables": {
"customer_name": "<string>",
"email": "<string>"
},
"allow_dupplicate": True,
"secondary_contacts": [
{
"phone_number": "<string>",
"variables": {
"customer_name": "<string>",
"email": "<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({
phone_number: '<string>',
campaign_id: 123,
variables: {customer_name: '<string>', email: '<string>'},
allow_dupplicate: true,
secondary_contacts: [
{
phone_number: '<string>',
variables: {customer_name: '<string>', email: '<string>'}
}
]
})
};
fetch('https://api.example.com/user/lead', 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.example.com/user/lead",
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([
'phone_number' => '<string>',
'campaign_id' => 123,
'variables' => [
'customer_name' => '<string>',
'email' => '<string>'
],
'allow_dupplicate' => true,
'secondary_contacts' => [
[
'phone_number' => '<string>',
'variables' => [
'customer_name' => '<string>',
'email' => '<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://api.example.com/user/lead"
payload := strings.NewReader("{\n \"phone_number\": \"<string>\",\n \"campaign_id\": 123,\n \"variables\": {\n \"customer_name\": \"<string>\",\n \"email\": \"<string>\"\n },\n \"allow_dupplicate\": true,\n \"secondary_contacts\": [\n {\n \"phone_number\": \"<string>\",\n \"variables\": {\n \"customer_name\": \"<string>\",\n \"email\": \"<string>\"\n }\n }\n ]\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://api.example.com/user/lead")
.header("Content-Type", "application/json")
.body("{\n \"phone_number\": \"<string>\",\n \"campaign_id\": 123,\n \"variables\": {\n \"customer_name\": \"<string>\",\n \"email\": \"<string>\"\n },\n \"allow_dupplicate\": true,\n \"secondary_contacts\": [\n {\n \"phone_number\": \"<string>\",\n \"variables\": {\n \"customer_name\": \"<string>\",\n \"email\": \"<string>\"\n }\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/user/lead")
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 \"phone_number\": \"<string>\",\n \"campaign_id\": 123,\n \"variables\": {\n \"customer_name\": \"<string>\",\n \"email\": \"<string>\"\n },\n \"allow_dupplicate\": true,\n \"secondary_contacts\": [\n {\n \"phone_number\": \"<string>\",\n \"variables\": {\n \"customer_name\": \"<string>\",\n \"email\": \"<string>\"\n }\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"message": "Lead created successfully",
"data": {
"id": 1,
"campaign_id": 1,
"phone_number": "+1234567890",
"variables": {
"customer_name": "John Doe",
"email": "john.doe@example.com"
},
"status": "created",
"created_at": "2025-06-30 11:53:20",
"updated_at": "2025-06-30 11:53:20",
"campaign": {
"id": 1,
"name": "My new campaign"
},
"secondary_contacts": [
{
"id": 2,
"phone_number": "+1234567891",
"variables": {
"customer_name": "Jane Doe Secondary",
"email": "jane.doe.secondary@example.com"
},
"status": "created",
"created_at": "2025-06-30 11:53:20",
"updated_at": "2025-06-30 11:53:20"
},
{
"id": 3,
"phone_number": "+1234567892",
"variables": {
"customer_name": "Bob Doe Office",
"email": "bob.doe.office@example.com"
},
"status": "created",
"created_at": "2025-06-30 11:53:20",
"updated_at": "2025-06-30 11:53:20"
}
]
}
}
Leads
Crear lead
Añade un nuevo lead a tu campaña de llamadas salientes de Famulor a través de la API. Envía datos de contacto, variables personalizadas y activa llamadas del agente de voz de IA.
POST
/
user
/
lead
Crear lead
curl --request POST \
--url https://api.example.com/user/lead \
--header 'Content-Type: application/json' \
--data '
{
"phone_number": "<string>",
"campaign_id": 123,
"variables": {
"customer_name": "<string>",
"email": "<string>"
},
"allow_dupplicate": true,
"secondary_contacts": [
{
"phone_number": "<string>",
"variables": {
"customer_name": "<string>",
"email": "<string>"
}
}
]
}
'import requests
url = "https://api.example.com/user/lead"
payload = {
"phone_number": "<string>",
"campaign_id": 123,
"variables": {
"customer_name": "<string>",
"email": "<string>"
},
"allow_dupplicate": True,
"secondary_contacts": [
{
"phone_number": "<string>",
"variables": {
"customer_name": "<string>",
"email": "<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({
phone_number: '<string>',
campaign_id: 123,
variables: {customer_name: '<string>', email: '<string>'},
allow_dupplicate: true,
secondary_contacts: [
{
phone_number: '<string>',
variables: {customer_name: '<string>', email: '<string>'}
}
]
})
};
fetch('https://api.example.com/user/lead', 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.example.com/user/lead",
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([
'phone_number' => '<string>',
'campaign_id' => 123,
'variables' => [
'customer_name' => '<string>',
'email' => '<string>'
],
'allow_dupplicate' => true,
'secondary_contacts' => [
[
'phone_number' => '<string>',
'variables' => [
'customer_name' => '<string>',
'email' => '<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://api.example.com/user/lead"
payload := strings.NewReader("{\n \"phone_number\": \"<string>\",\n \"campaign_id\": 123,\n \"variables\": {\n \"customer_name\": \"<string>\",\n \"email\": \"<string>\"\n },\n \"allow_dupplicate\": true,\n \"secondary_contacts\": [\n {\n \"phone_number\": \"<string>\",\n \"variables\": {\n \"customer_name\": \"<string>\",\n \"email\": \"<string>\"\n }\n }\n ]\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://api.example.com/user/lead")
.header("Content-Type", "application/json")
.body("{\n \"phone_number\": \"<string>\",\n \"campaign_id\": 123,\n \"variables\": {\n \"customer_name\": \"<string>\",\n \"email\": \"<string>\"\n },\n \"allow_dupplicate\": true,\n \"secondary_contacts\": [\n {\n \"phone_number\": \"<string>\",\n \"variables\": {\n \"customer_name\": \"<string>\",\n \"email\": \"<string>\"\n }\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/user/lead")
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 \"phone_number\": \"<string>\",\n \"campaign_id\": 123,\n \"variables\": {\n \"customer_name\": \"<string>\",\n \"email\": \"<string>\"\n },\n \"allow_dupplicate\": true,\n \"secondary_contacts\": [\n {\n \"phone_number\": \"<string>\",\n \"variables\": {\n \"customer_name\": \"<string>\",\n \"email\": \"<string>\"\n }\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"message": "Lead created successfully",
"data": {
"id": 1,
"campaign_id": 1,
"phone_number": "+1234567890",
"variables": {
"customer_name": "John Doe",
"email": "john.doe@example.com"
},
"status": "created",
"created_at": "2025-06-30 11:53:20",
"updated_at": "2025-06-30 11:53:20",
"campaign": {
"id": 1,
"name": "My new campaign"
},
"secondary_contacts": [
{
"id": 2,
"phone_number": "+1234567891",
"variables": {
"customer_name": "Jane Doe Secondary",
"email": "jane.doe.secondary@example.com"
},
"status": "created",
"created_at": "2025-06-30 11:53:20",
"updated_at": "2025-06-30 11:53:20"
},
{
"id": 3,
"phone_number": "+1234567892",
"variables": {
"customer_name": "Bob Doe Office",
"email": "bob.doe.office@example.com"
},
"status": "created",
"created_at": "2025-06-30 11:53:20",
"updated_at": "2025-06-30 11:53:20"
}
]
}
}
API de Famulor 1.0 (legado). Esta página se aplica únicamente a Famulor 1.0 (
app.famulor.de) y se conserva por compatibilidad. Para la plataforma actual, usa la referencia de la API de Famulor 2.0.Cuerpo de la solicitud
string
requerido
Número de teléfono de contacto en formato E.164 (ejemplo: +1234567890)
integer
requerido
El ID de la campaña a la que se debe añadir este lead
object
boolean
Permite crear leads duplicados dentro de la misma campaña (predeterminado: false)
array
Personas de contacto adicionales vinculadas a este lead
Mostrar Propiedades de secondary_contacts
Mostrar Propiedades de secondary_contacts
string
requerido
Número de teléfono del contacto secundario en formato E.164
Respuesta
string
Mensaje de confirmación de éxito
object
El objeto del lead creado con todos los datos asociados
Mostrar Propiedades de data
Mostrar Propiedades de data
integer
Identificador único del nuevo lead
integer
Identificador de la campaña a la que se asigna este lead
string
Número de contacto del lead en formato E.164
object
string
Estado actual del lead
string
Marca de tiempo de creación
string
Marca de tiempo de la última modificación
object
array
Lista de contactos secundarios creados con este lead
Mostrar Propiedades de secondary_contacts
Mostrar Propiedades de secondary_contacts
integer
Identificador del contacto secundario
string
Número de teléfono del contacto secundario en formato E.164
object
Variables del contacto secundario
string
Estado del contacto secundario
string
Marca de tiempo de creación del contacto secundario
string
Marca de tiempo de la última actualización del contacto secundario
{
"message": "Lead created successfully",
"data": {
"id": 1,
"campaign_id": 1,
"phone_number": "+1234567890",
"variables": {
"customer_name": "John Doe",
"email": "john.doe@example.com"
},
"status": "created",
"created_at": "2025-06-30 11:53:20",
"updated_at": "2025-06-30 11:53:20",
"campaign": {
"id": 1,
"name": "My new campaign"
},
"secondary_contacts": [
{
"id": 2,
"phone_number": "+1234567891",
"variables": {
"customer_name": "Jane Doe Secondary",
"email": "jane.doe.secondary@example.com"
},
"status": "created",
"created_at": "2025-06-30 11:53:20",
"updated_at": "2025-06-30 11:53:20"
},
{
"id": 3,
"phone_number": "+1234567892",
"variables": {
"customer_name": "Bob Doe Office",
"email": "bob.doe.office@example.com"
},
"status": "created",
"created_at": "2025-06-30 11:53:20",
"updated_at": "2025-06-30 11:53:20"
}
]
}
}
Páginas relacionadas: Introducción y Guía de autenticación, y Ejemplos de integración de la API.
⌘I