Skip to content

feat(broadcasts): add recipients endpoint - #98

Merged
AntoniosBarotsis merged 4 commits into
mainfrom
feat/broadcasts-recipients
Aug 22, 2026
Merged

feat(broadcasts): add recipients endpoint#98
AntoniosBarotsis merged 4 commits into
mainfrom
feat/broadcasts-recipients

Conversation

@dielduarte

@dielduarte dielduarte commented Aug 22, 2026

Copy link
Copy Markdown
Contributor

Adds BroadcastsSvc::recipients() for GET /broadcasts/{id}/recipients.

Spec: resend/resend-openapi#97
Node reference: resend/resend-node#1078

Tests pass. clippy + fmt clean.


Summary by cubic

Adds recipients listing for broadcasts so clients can inspect sent/delivered/opened/clicked/bounced/complained/unsubscribed/suppressed recipients. Previously unavailable; now exposed via a typed, cursor‑paginated endpoint.

  • Endpoint: GET /broadcasts/{id}/recipients via BroadcastsSvc::recipients(broadcast_id, ListRecipientsOptions); requires an event type; supports optional email and bounce_type filters; before/after cursors with limit default 20 (max 100).
  • Types: BroadcastRecipient includes id (opaque cursor), optional contact_id, email; count for opened/clicked; bounce_type for bounced; clicked_links for clicked. Adds BroadcastRecipientEventType and BroadcastRecipientBounceType; re‑exported in src/lib.rs.
  • Testing: adds JSON parsing coverage; ignores recipients_not_found because it requires RESEND_API_KEY and network access.

Written for commit 21bdbc9. Summary will update on new commits.

Review in cubic

Adds BroadcastsSvc::recipients to list a broadcast's recipients for a
given event type (sent/delivered/opened/clicked/bounced/complained/
unsubscribed/suppressed), with optional email/bounce_type filters and
cursor pagination.

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All reported issues were addressed across 2 files

Reply with feedback, questions, or to request a fix.

Re-trigger cubic

Comment thread src/broadcasts.rs

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

0 issues found across 1 file (changes from recent commits).

Confidence score: 5/5

  • Automated review surfaced no issues in the provided summaries.
  • No files require special attention.

Requires human review: Adds the recipients endpoint and supporting data structures to BroadcastsSvc. This expands the public API surface with new types for events, bounces, and pagination options.

Re-trigger cubic

@dielduarte
dielduarte marked this pull request as ready for review August 22, 2026 02:09

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

0 issues found across 1 file (changes from recent commits).

Confidence score: 5/5

  • Automated review surfaced no issues in the provided summaries.
  • No files require special attention.

Requires human review: This PR adds a new public endpoint and several data types for listing broadcast recipients. Human review is required to verify the naming, ergonomics, and correctness of the new API surface against the Resend specification.

Re-trigger cubic

@github-actions github-actions Bot added the linear-synced PR has been synced to Linear label Aug 22, 2026
@AntoniosBarotsis
AntoniosBarotsis merged commit 286d09d into main Aug 22, 2026
2 checks passed
@AntoniosBarotsis
AntoniosBarotsis deleted the feat/broadcasts-recipients branch August 22, 2026 20:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

linear-synced PR has been synced to Linear

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants