API Cloud (METRICS)
Las plantillas pueden analizarse obteniendo datos importantes como el número de mensajes enviados desde un número de teléfono de empresa, el número de conversaciones y su coste para una cuenta de WhatsApp Business (WABA) o el número de veces que se ha leído una plantilla determinada.
La variable VERSION se debe expresar con la letra ‘v’: v16.0, v17.0, v18.0, v19.0.
Análisis de mensajería
Request
GET /metrics/{VERSION}/{did}?fields=analytics.start(1543543200).end(1544148000).granularity(DAY)
curl --request GET \
--url 'https://channels.chattigo.com/bsp-cloud-chattigo-isv/metrics/{VERSION}/{did}?fields=analytics.start(1543543200).end(1544148000).granularity(DAY)' \
--header 'Authorization: <JWT>'Response
Éxito (200)
{
"analytics": {
"phone_numbers": [
"16505550111",
"16505550112",
"16505550113"
],
"country_codes": [
"US",
"BR"
],
"granularity": "DAY",
"data_points": [
{
"start": 1543543200,
"end": 1543629600,
"sent": 196093,
"delivered": 179715
},
{
"start": 1543629600,
"end": 1543716000,
"sent": 147649,
"delivered": 139032
}
]
},
"id": "102290129340398"
}Análisis de conversaciones
El campo conversation_analytics admite múltiples combinaciones de granularity, conversation_categories y dimensions. Todas las variantes devuelven la misma estructura de respuesta.
Por categoría, tipo, país y teléfono (mensual)
Request
curl --request GET \
--url 'https://channels.chattigo.com/bsp-cloud-chattigo-isv/metrics/{VERSION}/{did}?fields=conversation_analytics.start(1685602800).end(1688194800).granularity(MONTHLY).phone_numbers([]).dimensions(["CONVERSATION_CATEGORY","CONVERSATION_TYPE","COUNTRY","PHONE"])' \
--header 'Authorization: <JWT>'Response
Éxito (200)
{
"conversation_analytics": {
"data": [
{
"data_points": [
{
"start": 1685602800,
"end": 1688194800,
"conversation": 1558,
"phone_number": "15550458206",
"country": "US",
"conversation_type": "REGULAR",
"conversation_direction": "UNKNOWN",
"conversation_category": "AUTHENTICATION",
"cost": 15.58
},
{
"start": 1685602800,
"end": 1688194800,
"conversation": 2636,
"phone_number": "15550458206",
"country": "US",
"conversation_type": "REGULAR",
"conversation_direction": "UNKNOWN",
"conversation_category": "MARKETING",
"cost": 26.36
},
{
"start": 1685602800,
"end": 1688194800,
"conversation": 2238,
"phone_number": "15550458206",
"country": "US",
"conversation_type": "REGULAR",
"conversation_direction": "UNKNOWN",
"conversation_category": "SERVICE",
"cost": 22.38
}
]
}
]
},
"id": "102290129340398"
}Por tipo de conversación (mensual)
Request
curl --request GET \
--url 'https://channels.chattigo.com/bsp-cloud-chattigo-isv/metrics/{VERSION}/{did}?fields=conversation_analytics.start(1643702400).end(1646121600).granularity(MONTHLY).phone_numbers([]).dimensions([CONVERSATION_TYPE])' \
--header 'Authorization: <JWT>'Por categoría (granularidad de media hora)
Request
curl --request GET \
--url 'https://channels.chattigo.com/bsp-cloud-chattigo-isv/metrics/{VERSION}/{did}?fields=conversation_analytics.start(1685527200).end(1685613600).granularity(HALF_HOUR).conversation_categories(["MARKETING","AUTHENTICATION"]).dimensions(["CONVERSATION_CATEGORY"])' \
--header 'Authorization: <JWT>'Por categoría y tipo (granularidad de media hora)
Request
curl --request GET \
--url 'https://channels.chattigo.com/bsp-cloud-chattigo-isv/metrics/{VERSION}/{did}?fields=conversation_analytics.start(1685527200).end(1685613600).granularity(HALF_HOUR).conversation_categories(["MARKETING","AUTHENTICATION"]).dimensions(["CONVERSATION_CATEGORY","CONVERSATION_TYPE"])' \
--header 'Authorization: <JWT>'Response
Éxito (200)
Todas las variantes de conversación devuelven la misma estructura de respuesta que el primer ejemplo (200).