API · Broadcasts
List Recipients
List a broadcast’s recipients and delivery results (requires full access). Completed reports are kept for 30 days.
GET
/broadcasts/{id}/recipientsFull accessRequest parameters
| Parameter | Type | Description |
|---|---|---|
idpath · required | string | Resource identifier for id. |
limitquery · optional | integer1–100 Default: 20 | Number of results to return. See Pagination. |
afterquery · optional | string | Resource ID for the next page. Cannot be combined with before. See Pagination. |
beforequery · optional | string | Resource ID for the previous page. Cannot be combined with after. See Pagination. |
typequery · required | "sent" | "delivered" | "opened" | "clicked" | "bounced" | "complained" | "unsubscribed" | "suppressed" | Filter value for type. |
emailquery · optional | string | Filter value for email. |
bounce_typequery · optional | "permanent" | "transient" | "undetermined" | Only accepted with type=bounced. |
Request example
Set OPENSEND_BASE_URL=https://api.example.com and OPENSEND_API_KEY=os_replace_me on your server.
bash
curl -X GET "$OPENSEND_BASE_URL/broadcasts/YOUR_id/recipients?type=delivered" \
-H "Authorization: Bearer $OPENSEND_API_KEY"Response
200 · application/json. Example IDs stand for IDs returned by your installation.
json
{
"object": "list",
"has_more": false,
"data": [
{
"id": "YOUR_ID",
"contact_id": "YOUR_CONTACT_ID",
"email": "you@example.net",
"count": 1,
"bounce_type": "permanent",
"clicked_links": [
{
"url": "example",
"clicks": 1
}
]
}
]
}Behavior and errors
Choose the required event type filter. Recipient reporting reflects the broadcast’s delivery milestones; an unknown or foreign broadcast returns 404.
Use a full-access credential. Unknown or foreign resources return 404. See authentication, errors, rate limits, and pagination.