- authentication
- Secret API key as a bearer token
- billing
- Free.
Crosses the last 90 days of reported outcomes with the verdicts on file. by_verdict counts delivered, bounced and complained per verdict (deliverable, risky, undeliverable, and unknown for addresses with no verdict on file), and measured.deliverable_delivery_rate and measured.undeliverable_bounce_rate are the two numbers that say how right Spaw was for you. A rate is null until there is at least one matching outcome. The same figures appear on the History tab of the dashboard.
Example request
curl https://spaw.co/api/v1/email/feedback/summary \ -H "Authorization: Bearer sk_live_…"
Responses
200The summary.
{
"success": true,
"data": {
"window_days": 90,
"total": 1240,
"outcomes": {
"delivered": 1180,
"bounced": 52,
"complained": 8
},
"by_verdict": {
"deliverable": {
"delivered": 1150,
"bounced": 9,
"complained": 6
},
"risky": {
"delivered": 30,
"bounced": 11,
"complained": 2
},
"undeliverable": {
"delivered": 0,
"bounced": 32,
"complained": 0
},
"unknown": {
"delivered": 0,
"bounced": 0,
"complained": 0
}
},
"measured": {
"deliverable_delivery_rate": 0.992,
"undeliverable_bounce_rate": 1
}
}
}401The key is missing, malformed, or revoked.
{
"success": false,
"error": {
"code": "UNAUTHENTICATED",
"message": "Provide a valid API key as a bearer token.",
"request_id": "req_01m1kgdm4xngzmbmff68g94w0c"
}
}429Over 5 requests per second for the key. Retry after the limit resets.
{
"success": false,
"error": {
"code": "RATE_LIMITED",
"message": "Too many requests. Retry after the limit resets.",
"request_id": "req_01m1kgdm4xngzmbmff68g94w0c"
}
}Error codes
Failures answer { success: false, error: { code, message, request_id } }. Each code has its own page.