Secuencias
Las secuencias son campañas de correo electrónico automatizadas de varios pasos. Use estos endpoints para listar secuencias, controlar su ejecución y gestionar los contactos inscritos.
Para la autoría (crear, previsualizar, actualizar pasos, archivar y analizar) consulte Ciclo de vida de las secuencias.
Listar secuencias
GET /sequences
Devuelve todas las secuencias con filtro de estado opcional y paginación.
Parámetros de consulta
| Parámetro | Tipo | Predeterminado | Descripción |
|---|---|---|---|
page | integer | 1 | Número de página |
limit | integer | 50 | Elementos por página (máx. 200) |
status | string | — | Filtrar por estado (drafted, live, paused, completed) |
Ejemplo
curl "https://api.graph8.com/api/v1/sequences?status=live" \ -H "Authorization: Bearer $API_KEY"response = requests.get( f"{BASE_URL}/sequences", headers=HEADERS, params={"status": "live"})Respuesta
{ "data": [ { "id": "seq-abc", "name": "Q2 Outbound", "status": "live", "associated_list_id": 5, "created_at": "2026-02-15T10:00:00", "updated_at": "2026-02-20T14:30:00" } ], "pagination": { "page": 1, "limit": 50, "total": 1, "has_next": false }}Obtener secuencia
GET /sequences/{sequence_id}
Devuelve información detallada sobre una secuencia, incluidos los indicadores de configuración.
Ejemplo
curl "https://api.graph8.com/api/v1/sequences/seq-abc" \ -H "Authorization: Bearer $API_KEY"response = requests.get( f"{BASE_URL}/sequences/seq-abc", headers=HEADERS)Respuesta
{ "data": { "id": "seq-abc", "name": "Q2 Outbound", "description": "Multi-touch outbound campaign for Q2 targets", "status": "live", "associated_list_id": 5, "finish_on_reply": true, "send_in_same_thread": false, "wait_for_new_contacts": false, "paused_at": null, "resumed_at": null, "created_at": "2026-02-15T10:00:00", "updated_at": "2026-02-20T14:30:00" }}Ejecutar secuencia
POST /sequences/{sequence_id}/run
Inicia una secuencia en borrador. Genera eventos de programación para todos los contactos inscritos.
Ejemplo
curl -X POST "https://api.graph8.com/api/v1/sequences/seq-abc/run" \ -H "Authorization: Bearer $API_KEY"response = requests.post( f"{BASE_URL}/sequences/seq-abc/run", headers=HEADERS)Respuesta
{ "data": { "sequence_id": "seq-abc", "status": "scheduling", "contacts_affected": 150 }}Pausar secuencia
POST /sequences/{sequence_id}/pause
Pausa una secuencia activa. Los envíos programados quedan retenidos hasta que la secuencia se reanude.
Respuesta
{ "data": { "sequence_id": "seq-abc", "status": "paused", "contacts_affected": 150 }}Reanudar secuencia
POST /sequences/{sequence_id}/resume
Reanuda una secuencia pausada. Los envíos retenidos se reprograman.
Respuesta
{ "data": { "sequence_id": "seq-abc", "status": "live", "contacts_affected": 150 }}Listar contactos de la secuencia
GET /sequences/{sequence_id}/contacts
Devuelve los contactos inscritos en una secuencia con su estado actual.
Parámetros de consulta
| Parámetro | Tipo | Predeterminado | Descripción |
|---|---|---|---|
page | integer | 1 | Número de página |
limit | integer | 50 | Elementos por página (máx. 200) |
state | string | — | Filtrar por estado del contacto |
Ejemplo
curl "https://api.graph8.com/api/v1/sequences/seq-abc/contacts?state=active" \ -H "Authorization: Bearer $API_KEY"response = requests.get( f"{BASE_URL}/sequences/seq-abc/contacts", headers=HEADERS, params={"state": "active"})Respuesta
{ "data": [ { "id": "sc-1", "contact_id": 12345, "state": "active", "current_step_order": 2, "created_at": "2026-02-15T10:00:00", "updated_at": "2026-02-18T09:00:00" } ], "pagination": { "page": 1, "limit": 50, "total": 1, "has_next": false }}Agregar contactos a la secuencia
POST /sequences/{sequence_id}/contacts
Agrega contactos a una secuencia activa o en borrador. Devuelve 201 Created.
Cuerpo de la solicitud
| Campo | Tipo | Requerido | Descripción |
|---|---|---|---|
contact_ids | integer[] | Sí | IDs de los contactos que se van a agregar |
list_id | integer | Sí | ID de la lista a la que pertenecen los contactos |
Ejemplo
curl -X POST "https://api.graph8.com/api/v1/sequences/seq-abc/contacts" \ -H "Authorization: Bearer $API_KEY" \ -H "Content-Type: application/json" \ -d '{"contact_ids": [101, 102, 103], "list_id": 5}'response = requests.post( f"{BASE_URL}/sequences/seq-abc/contacts", headers=HEADERS, json={"contact_ids": [101, 102, 103], "list_id": 5})Respuesta
{ "data": { "sequence_id": "seq-abc", "status": "contacts_added", "contacts_affected": 3 }}