Payload de webhook de Instagram

Los webhooks de Instagram se envían para mensajes directos, reacciones y confirmaciones de lectura.

Payload de ejemplo

1{
2 "event": {
3 "id": "evt_ig_abc123",
4 "channel": "instagram",
5 "timestamp": 1706640000.0,
6 "data": {
7 "timestamp": 1706640000.0,
8 "direction": "inbound",
9 "platform": "instagram",
10 "message_id": "igmid_xyz789",
11 "chat_id": "chat_456",
12 "content": "Hey! I saw your post about coaching services",
13 "is_from_account": false,
14 "account_id": "acc_123",
15 "sender_attendee": {
16 "attendee_id": "att_789",
17 "attendee_name": "johndoe",
18 "attendee_provider_id": "17841234567890",
19 "attendee_profile_url": "https://instagram.com/johndoe"
20 },
21 "social_event_type": "message_received",
22 "attendees": [
23 {
24 "attendee_id": "att_789",
25 "attendee_name": "johndoe",
26 "attendee_provider_id": "17841234567890"
27 }
28 ],
29 "attachments": [],
30 "usage_data": {
31 "prompt_tokens": 180,
32 "completion_tokens": 55,
33 "model": "gpt-4"
34 },
35 "tools_called": [],
36 "analysis_result": {
37 "sentiment": "curious",
38 "intent": "inquiry"
39 }
40 }
41 },
42 "lead_id": "lead_123",
43 "lead_contact": {
44 "number": "",
45 "email": "",
46 "name": "johndoe"
47 },
48 "business_id": "biz_456",
49 "lead_created": true
50}

Referencia de campos

Campos principales

CampoTipoRequeridoDescripción
timestampfloatMarca de tiempo Unix epoch
directionstringinbound o outbound
platformstringSiempre instagram
message_idstringID de mensaje de Instagram
chat_idstringID del hilo de conversación
contentstringContenido del mensaje
is_from_accountbooleanTrue si fue enviado por la cuenta conectada
account_idstringID de cuenta de Instagram conectada
social_event_typestringTipo de evento

Valores de social_event_type

ValorDescripción
message_receivedNuevo mensaje recibido
message_reactionReacción añadida al mensaje
message_readMensaje marcado como leído
message_editedMensaje fue editado
message_deletedMensaje fue eliminado

Objeto sender_attendee

CampoTipoDescripción
attendee_idstringID interno del asistente
attendee_namestringNombre de usuario de Instagram
attendee_provider_idstringID de usuario de Instagram
attendee_profile_urlstringURL del perfil (opcional)

Campos opcionales

CampoTipoDescripción
attendeesarrayParticipantes de la conversación
attachmentsarrayAdjuntos de medios
usage_dataobjectUso de tokens LLM
tools_calledarrayNombres de herramientas ejecutadas
tool_callsarrayDatos sin procesar de llamadas a herramientas
tool_resultsobjectResultados de ejecución de herramientas
analysis_resultobjectResultado del análisis de IA
appointmentsarrayCitas extraídas
execution_contextobjectContexto del activador de origen
reactionstringEmoji (para reacciones)
reaction_senderobjectInformación del remitente de la reacción

Array de attachments

CampoTipoDescripción
idstringID del adjunto
typestringimage, video, audio, story_mention, reel
urlstringURL de descarga
mimetypestringTipo MIME
unavailablebooleanTrue si expiró
sizeobjectDimensiones

Los prospectos de Instagram pueden no tener teléfono o correo inicialmente. Usa la conversación para recopilar información de contacto.