Add Resend transactional email submodule - #5904
Open
bradleyshep wants to merge 5 commits into
Open
bradleyshep wants to merge 5 commits into
bradleyshep wants to merge 5 commits into
Conversation
Preserve upstream master as merged by the core branch. Resend changes standardize TypeScript names, remove dead update fallbacks, and correct package documentation and licensing.
| **Setup** | ||
|
|
||
| - `set_resend_config(apiKey, webhookSigningSecret, defaultFrom)` | ||
| - `get_resend_config_status()` - `{ isConfigured, hasWebhookSigningSecret, apiKeyLength, ... }` |
Contributor
There was a problem hiding this comment.
Instead of hasWebhookSigningSecret the return here is hasWebhookSecret
| outcome.status, | ||
| outcome.error | ||
| ); | ||
| return { status: 200, code: 'ok' }; |
Contributor
There was a problem hiding this comment.
outcome can be a failure, we store that and still return 200. Resend sees 200 as success and stops retrying so the event won't get applied, worth handling this case with 4xx/5xx.
| t, | ||
| } from './submodule/schema'; | ||
| export { installResend } from './submodule/install'; | ||
| export * from './submodule/webhooks'; |
Contributor
There was a problem hiding this comment.
Some lines name the exports and these ones don't, which can silently widen the public API. Worth naming these.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description of Changes
Adds a Resend submodule for sending transactional email and tracking delivery state in SpacetimeDB.
Builds on
bradley/submodules-core. The package uses crypto; the example also uses rate-limit and shared example support.Example screenshots
Existing example screenshots from #5823:
Resend
API and ABI breaking changes
No existing SpacetimeDB API or ABI is changed. This adds new TypeScript package APIs that need review before merge.
Rollback safety impact
n/a. This adds opt-in TypeScript packages and examples; it does not change existing server storage formats.
Expected complexity level and risk
2/5
An isolated, opt-in Resend integration that does not change existing server behavior. For applications that use it, review delivery idempotency, webhook verification, and access to provider credentials.
Testing
Verified locally on
bradley/submodules-email:Commands used for this group:
The TypeScript SDK was built first. Live deployment and provider tests were not run during split validation. Existing workspace peer-dependency warnings remain.