Skip to main content
POST
Realiza búsquedas avanzadas con múltiples filtros y operadores. Ideal para segmentación y análisis.
Usa este endpoint cuando necesites filtros más avanzados que los disponibles en GET /contacts/v1. Para búsquedas simples, usa el query param search en el listado.

Body Parameters

object
required
Objeto con los filtros de búsqueda
object
Configuración de ordenamiento
number
default:"50"
Máximo 100 resultados por página
string
Cursor para paginación

Filtros Disponibles

Teléfono

string
Coincidencia exacta
string
Contiene substring
string
Prefijo del número (ej: 52155 para números de CDMX). Se ignoran espacios, guiones, paréntesis, puntos y el + antes de comparar.

Nombre

string
Coincidencia exacta
string
Contiene substring (case-insensitive)
string
Empieza con

Email

string
Coincidencia exacta
string
Contiene substring
string
Filtrar por dominio (ej: gmail.com)

Tags

string[]
Tiene TODOS los tags especificados
string[]
Tiene AL MENOS UNO de los tags
string[]
NO tiene ninguno de los tags

Funnel y Origen

string | string[] | null
Etapa del funnel. Acepta:
  • un UUID: contactos en esa etapa;
  • un arreglo de UUID (1 a 50): contactos en cualquiera de esas etapas;
  • null: contactos sin etapa.
string | string[]
Origen(es) del contacto. Puede ser string o array.
string | string[]
Origen distinto de estos valores. Los contactos sin origen no coinciden (igual que una comparación SQL <>).

Segmento

string
UUID de un segmento del negocio, estático o dinámico. Devuelve solo los contactos que pertenecen a él y se combina con el resto de filtros. Si el segmento no existe o no es de tu negocio responde 404; si sus reglas guardadas no son válidas, 400.

Fechas

string
Creados después de (ISO 8601)
string
Creados antes de (ISO 8601)
string
Última interacción después de
string
Última interacción antes de
Los filtros de fecha (created_at, updated_at y last_contact_at) también aceptan ventanas móviles relativas a “ahora”:
number
Dentro de los últimos N días (entero de 1 a 3650). Ej: { "within_days": 7 } = con actividad esta semana.
number
Hace más de N días (entero de 1 a 3650). Ej: { "older_than_days": 30 } = sin contacto en el último mes.
Los mismos campos within_days y older_than_days existen en created_at y updated_at. Como el cálculo es relativo a “ahora”, el resultado cambia con el tiempo sin que edites el filtro; por eso son ideales para segmentos dinámicos.

Otros

boolean
true = tiene conversación, false = sin conversación
object
Filtros en campos personalizados

Ordenamiento

string
default:"created_at"
Campo: created_at, updated_at, name, last_contact_at, phone_number
string
default:"desc"
Orden: asc o desc

Ejemplos

Clientes Premium sin Contacto Reciente

Contactos por Dominio de Email

Leads Nuevos sin Tags

Contactos de un Prefijo, en Varias Etapas y sin Actividad Reciente

Contactos sin Etapa del Funnel

Contactos de Múltiples Orígenes


Respuesta


Casos de Uso

Encuentra clientes que no han interactuado en los últimos 30 días:
Encuentra todos los contactos de un dominio específico:
Contactos nuevos sin conversación:

Próximos Pasos

Operaciones Masivas

Aplicar acciones a los resultados

Listar Tags

Ver tags disponibles para filtrar

Webhooks

Recibir notificaciones de cambios

Enviar Mensaje

Contactar a los resultados