Analytics
MessagePipe provides analytics endpoints to help you monitor delivery performance across email, message and push notification channels. This is available in the dashboard.
Dashboard Analytics
Get an overview of all messaging activity for your account or a specific project:
GET /analytics/dashboard?projectId={projectId}
Authorization: Bearer {your-jwt-token}
The projectId query parameter is optional. Omitting it returns analytics across all your projects.
Example Response:
{
"totalSent": 15230,
"totalDelivered": 14890,
"totalFailed": 340,
"deliveryRate": 97.8,
"breakdown": {
"email": {
"sent": 10500,
"delivered": 10280,
"failed": 220
},
"messages": {
"sent": 4730,
"delivered": 4610,
"failed": 120
},
"push": {
"sent": 0,
"delivered": 0,
"failed": 0
}
}
}
Email Analytics
Get delivery statistics specific to email:
GET /analytics/email-stats?projectId={projectId}
Authorization: Bearer {your-jwt-token}
Example Response:
{
"sent": 10500,
"delivered": 10280,
"failed": 220,
"bounced": 45,
"deliveryRate": 97.9,
"providers": {
"sendgrid": { "sent": 8000, "delivered": 7900 },
"mailgun": { "sent": 2500, "delivered": 2380 }
}
}
Message Analytics
Get delivery statistics for message channels (SMS, WhatsApp, Telegram, Signal):
GET /analytics/message-stats?projectId={projectId}
Authorization: Bearer {your-jwt-token}
Example Response:
{
"sent": 4730,
"delivered": 4610,
"failed": 120,
"deliveryRate": 97.5,
"providers": {
"twilio": { "sent": 3200, "delivered": 3150 },
"termii": { "sent": 1530, "delivered": 1460 }
}
}
Push Notification Analytics
Get delivery statistics for push notifications:
GET /analytics/push-stats?projectId={projectId}
Authorization: Bearer {your-jwt-token}
Example Response:
{
"sent": 2100,
"delivered": 2050,
"failed": 50,
"deliveryRate": 97.6,
"providers": {
"fcm": { "sent": 2100, "delivered": 2050 }
}
}
Tips
- Filter by
projectIdto isolate analytics for a specific project - Use Delivery Logs for individual message-level details and to identify specific failed messages to retry