Adds support for the Inboxes API, and fixes broadcasts to accept preview_text and topic_id in create and update params and to include topic_id in the Broadcast response type. Also honors legacy custom async HTTP clients.
Python SDK
npx @buildinternet/releases get resend-python-sdkWebhooks.verify now raises a ValueError when given a non-ASCII signature.
Webhook support now covers topic and contact.topics.updated events.
The Python SDK now supports suppression.added and suppression.removed webhook events.
What's Changed
- ci: run lint, mypy and tests on Python 3.12 to 3.14 by @felipefreitag in https://github.com/resend/resend-python/pull/285
- chore: bump version to 2.46.0 by @felipefreitag in https://github.com/resend/resend-python/pull/286
Resend API errors are now picklable, and SDK errors are preserved for invalid JSON byte encodings.
The SDK adds a duplicate endpoint for broadcasts.
Added a webhook signing secret rotation endpoint to enable key rotation without downtime.
Added a webhook event replay endpoint and type support for segments in contact creation. Also documented event listing methods.
Renamed the update params key in the API Keys API to id in this patch release.
Fixed the contacts properties response shape and allowed null first_name and last_name fields on contacts.
Adds broadcasts.clicked_links() and broadcasts.recipients() methods, plus Emails.metrics() for account-level email metrics. The recipients method now takes the broadcast id as a positional argument.
New Emails.share() and share_async() methods for sharing emails.
Added update and update_async methods for renaming an API key.
Adds an endpoint to duplicate an automation. Includes dependency updates.
Added Broadcasts.cancel() and its async counterpart cancel_async() for canceling broadcast campaigns. Also aligned fixture timestamps and docstrings with the API timestamp format.
Adds suppressions endpoints for managing suppression lists, and preserves HTTP status codes in API error responses.

