Payload de webhook de Gmail

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

Payload de ejemplo

1{
2 "event": {
3 "id": "evt_gmail_abc123",
4 "channel": "gmail",
5 "timestamp": 1706640000.0,
6 "data": {
7 "timestamp": 1706640000.0,
8 "direction": "inbound",
9 "platform": "gmail",
10 "email_id": "email_xyz789",
11 "message_id": "<CADmL4p5xyz@mail.gmail.com>",
12 "subject": "Question about your services",
13 "body": "<html><body><p>Hi, I'm interested in learning more about...</p></body></html>",
14 "body_plain": "Hi, I'm interested in learning more about...",
15 "is_from_account": false,
16 "account_id": "acc_123",
17 "from_attendee": {
18 "display_name": "John Doe",
19 "identifier": "john@example.com",
20 "identifier_type": "EMAIL_ADDRESS"
21 },
22 "to_attendees": [
23 {
24 "display_name": "Your Business",
25 "identifier": "hello@yourbusiness.com",
26 "identifier_type": "EMAIL_ADDRESS"
27 }
28 ],
29 "cc_attendees": [],
30 "bcc_attendees": [],
31 "reply_to_attendees": [],
32 "email_event_type": "mail_received",
33 "date": 1706640000.0,
34 "read_date": null,
35 "folders": ["INBOX"],
36 "has_attachments": true,
37 "attachments": [
38 {
39 "id": "att_001",
40 "name": "proposal.pdf",
41 "size": 102400,
42 "mimetype": "application/pdf",
43 "url": "https://..."
44 }
45 ],
46 "in_reply_to": null,
47 "is_complete": true,
48 "tracking_id": "track_abc",
49 "origin": "external",
50 "usage_data": {
51 "prompt_tokens": 300,
52 "completion_tokens": 150,
53 "model": "gpt-4"
54 },
55 "tools_called": ["check_availability"],
56 "analysis_result": {
57 "sentiment": "positive",
58 "intent": "inquiry"
59 }
60 }
61 },
62 "lead_id": "lead_123",
63 "lead_contact": {
64 "number": "",
65 "email": "john@example.com",
66 "name": "John Doe"
67 },
68 "business_id": "biz_456",
69 "lead_created": true
70}

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