Payload de webhook de Gmail

Los webhooks de Gmail se envían para correos electrónicos entrantes y salientes.

Payload de ejemplo

{
"event": {
"id": "evt_gmail_abc123",
"channel": "gmail",
"timestamp": 1706640000.0,
"data": {
"timestamp": 1706640000.0,
"direction": "inbound",
"platform": "gmail",
"email_id": "email_xyz789",
"message_id": "<CADmL4p5xyz@mail.gmail.com>",
"subject": "Question about your services",
"body": "<html><body><p>Hi, I'm interested in learning more about...</p></body></html>",
"body_plain": "Hi, I'm interested in learning more about...",
"is_from_account": false,
"account_id": "acc_123",
"from_attendee": {
"display_name": "John Doe",
"identifier": "john@example.com",
"identifier_type": "EMAIL_ADDRESS"
},
"to_attendees": [
{
"display_name": "Your Business",
"identifier": "hello@yourbusiness.com",
"identifier_type": "EMAIL_ADDRESS"
}
],
"cc_attendees": [],
"bcc_attendees": [],
"reply_to_attendees": [],
"email_event_type": "mail_received",
"date": 1706640000.0,
"read_date": null,
"folders": ["INBOX"],
"has_attachments": true,
"attachments": [
{
"id": "att_001",
"name": "proposal.pdf",
"size": 102400,
"mimetype": "application/pdf",
"url": "https://..."
}
],
"in_reply_to": null,
"is_complete": true,
"tracking_id": "track_abc",
"origin": "external",
"usage_data": {
"prompt_tokens": 300,
"completion_tokens": 150,
"model": "gpt-4"
},
"tools_called": ["check_availability"],
"analysis_result": {
"sentiment": "positive",
"intent": "inquiry"
}
}
},
"lead_id": "lead_123",
"lead_contact": {
"number": "",
"email": "john@example.com",
"name": "John Doe"
},
"business_id": "biz_456",
"lead_created": true
}

Referencia de campos

Campos principales

CampoTipoRequeridoDescripción
timestampfloatMarca de tiempo Unix epoch
directionstringinbound o outbound
platformstringSiempre gmail
email_idstringID de correo interno
message_idstringEncabezado RFC822 Message-ID
subjectstringLínea de asunto del correo
bodystringCuerpo del correo en HTML
is_from_accountbooleanTrue si fue enviado por la cuenta conectada
account_idstringID de cuenta de Gmail conectada
email_event_typestringTipo de evento
datefloatMarca de tiempo de confirmación del servidor

Valores de email_event_type

ValorDescripción
mail_receivedCorreo entrante
mail_sentCorreo saliente

Objeto from_attendee

CampoTipoDescripción
display_namestringNombre visible del remitente (opcional)
identifierstringDirección de correo
identifier_typestringSiempre EMAIL_ADDRESS

Array to_attendees

Array de objetos destinatarios con la misma estructura que from_attendee.

Campos opcionales

CampoTipoDescripción
body_plainstringVersión en texto plano del cuerpo
cc_attendeesarrayDestinatarios CC
bcc_attendeesarrayDestinatarios BCC
reply_to_attendeesarrayDirecciones Reply-To
read_datefloatCuándo se leyó el correo
foldersarrayCarpetas del correo (INBOX, SENT, etc.)
rolestringRol de la carpeta
has_attachmentsbooleanSi tiene adjuntos
attachmentsarrayAdjuntos del correo
in_reply_toobjectReferencia al correo padre
is_completebooleanSi está completamente cargado
tracking_idstringID de seguimiento interno
originstringunipile o external
usage_dataobjectUso de tokens LLM
tools_calledarrayNombres de herramientas ejecutadas
analysis_resultobjectResultado del análisis de IA
appointmentsarrayCitas extraídas
execution_contextobjectContexto del activador de origen

Array de attachments

CampoTipoDescripción
idstringID del adjunto
namestringNombre del archivo
sizeintegerTamaño en bytes
mimetypestringTipo MIME
urlstringURL de descarga

Objeto in_reply_to

CampoTipoDescripción
message_idstringRFC822 Message-ID del padre
idstringID interno del padre

Valores de origin

ValorDescripción
externalCorreo de remitente externo
unipileCorreo enviado vía SignalCore