update SendBeam, SendBeam sending domain (version 2) - #1827
Merged
pawel-kow merged 1 commit intoSep 12, 2026
Merged
Conversation
Add the sending-host CNAME (rsend) that the email provider now checks directly for new sending domains.
PR Description Check PassedAll required sections are filled in correctly. Details |
|
✅ JSON Filename Check Passed |
|
✅ JSON Schema Validation Passed |
Linter OK
|
| Level | Code | Note |
|---|
|
Thanks @allinthecode1 for contributing to the template. 🎉 This template has been reviewed and merged by @pawel-kow. 🙌 This template repository and its review process are maintained by independent individuals in their spare time, not as part of a paid role. If you or your company benefit from this protocol and its tools, please show your appreciation by buying a beer for @pawel-kow: https://github.com/sponsors/pawel-kow |
ankrstak
added a commit
to ankrstak/Templates
that referenced
this pull request
Sep 13, 2026
Resend now requires a CNAME rsend → send.forge.rmta.net for new sending domains and checks its target directly (the same record SendBeam added in Domain-Connect#1827); without it a domain configured through the template would never verify at the provider. Added to the sending group with the provider's fixed target; nothing else changes. Editor tests re-run against this file. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
17 tasks
pull Bot
pushed a commit
to buape/domain-connect-templates
that referenced
this pull request
Sep 14, 2026
# Description New template for **OSV-1** (`osv-1.com`), service `email`: the DNS records an organization needs to send and receive its email through OSV-1 (Resend / Amazon SES underneath) on the hostname it chooses — typically a subdomain such as `notify.example.com`, apex allowed. - `sending`: DKIM TXT at `resend._domainkey` (`p=%dkim%`), bounce-path MX at `send` (`feedback-smtp.%region%.amazonses.com`), SPFM at `send` (`include:amazonses.com`), and the sending-host CNAME `rsend` → `send.forge.rmta.net` that the email provider now requires for new domains and checks directly (fixed target, as in Domain-Connect#1827) - `receiving`: MX at the host itself (`inbound-smtp.%region%.amazonaws.com`) — requested only for domains that receive mail - `dmarc`: fixed `v=DMARC1; p=none;` with Prefix matching, `essential: OnApply` Variables are scoped narrowly: `region` only varies the SES region inside fixed hostnames; `dkim` is the key material after a fixed `p=` prefix. Synchronous flow with signed requests (`syncPubKeyDomain` `osv-1.com`, key published at `_dck1.osv-1.com`); `syncRedirectDomain` `osv-1.com` (redirect_uri lives on `app.osv-1.com`). ## Type of change Please mark options that are relevant. - [x] New template - [ ] Bug fix (non-breaking change which fixes an issue in the template) - [ ] New feature (non-breaking change which adds functionality to the template) - [ ] Breaking change (fix or feature that would cause existing template behavior to be not backward compatible) # How Has This Been Tested? Please mark the following checks done - [x] Template functionality checked using [Online Editor](https://domainconnect.paulonet.eu/dc/free/templateedit) - [x] Template file name follows the pattern `<providerId>.<serviceId>.json` - [x] resource URL provided with `logoUrl` is actually served by a webserver # Checklist of common problems Mark all the checkboxes after conducting the check. Comment on any point which is not fulfilled. See [Template Quality Guidelines](../README.md#template-quality-guidelines) for details and rationale on each rule. - [x] `syncPubKeyDomain` is set — **this is mandatory**; omitting it requires explicit justification in the PR description or the PR will be rejected - [x] `warnPhishing` is **not** set alongside `syncPubKeyDomain` — the two must not appear together - [x] `syncRedirectDomain` is set whenever the template uses `redirect_uri` in the synchronous flow - [x] no TXT record contains SPF content (`"v=spf1 ..."`) — use the `SPFM` record type instead - [x] `txtConflictMatchingMode` is set on every TXT record that must be unique per label or content prefix (e.g. DMARC) - [x] no variable is used as a bare full record value (e.g. `@ TXT "%foo%"`) unless necessary — prefer `@ TXT "service-foo=%foo%"`; if bare, justify in the PR description - [x] no bare variable is used as the full `host` label — the non-variable parts are fixed to limit misuse (e.g. `%dkimkey%._domainkey`, not `%dkimhost%`); if bare, justify in the PR description - [x] no variable is used in the `host` field to create a subdomain — use the `host` parameter or `multiInstance` instead - [x] `%host%` does not appear explicitly in any `host` attribute - [x] `essential` is set to `OnApply` on records the end user may need to modify or remove without breaking the template (e.g. DMARC) ## Online Editor test results <!-- Required. Follow these steps in the Online Editor (https://domainconnect.paulonet.eu/dc/free/templateedit): 1. Load your template and use "Check template" to perform extended schema and consistency check 2. Fill in domain/host as well as variable values 3. Click "Test apply template" 4. Click "Copy Markdown" and paste the link below 5. If necessary repeat steps 2-4 with different group setups and/or domain/host configuration --> **Editor test link(s):** <!-- paste the links from "Copy Markdown" here --> <!-- REQUIRED: at last one test with domain apex and one test with subdomain (host set). EXCEPTION: if hostRequired=true, apex test is not required. <!-- paste multiple links if more test conducted. At least 1 per template file included in the PR --> - Subdomain, all groups: [Test osv-1.com/email example.com/notify](https://domainconnect.paulonet.eu/dc/free/templateedit?token=H4sIAJElpmoC%2F%2B1X%2B2%2FiOBD%2BV6xI1e3qeCSQ7YNVpQvQdrkubXl0r7tVhUxswEtip7YDpRX3t984vAKluz3ppOvpkPoDHY%2B%2FeX0z4zxZmoZRgDW1Sk9WJMWIESprxCpZQo2yTs4XoZVZHlzgEBSty9aXrANiReWI%2BTRRpyFmwUo21zwxUqQoJ4z3EeYESepTNoL%2FQHdEpWKCWyUnYwWiL65lAHcGWkeqlM%2FjKMotncgTAVA86wvOqa%2FzRj2nRgaFUOVLFukEyWqBrZQhiiYilkjIPubsERulXxRKnEV6IEXcH6AknBJSrM%2FBrwzqipj7FA0AJUgEekCXMQyE0olghrHIDPIH1B%2BqDJiNggkiNADbcpJJXFGRED1zGbQ1eA9OIPgzKAaOQ66Mm4AhhKI5kxksGe4GtLoWm6R9c5Wp5GqTGp%2FQOy%2FEjyBtnbTeo7mGOZ4lDI2xSqRKU0kJYjyDekIi%2BoCh7hTFKkux0pBkRIYsXGBXz2t1FMXdgPloSCcLW0ypGEAMQMrEO%2FN7hIOYItwDMyg6fm%2BCUBPulwPhD61SDweKziRXcfecTqrJ1Q2ameMmJQxKp7cqmGw16X0MGmQJCtpCEmWVbp%2BsPlQ0Svg4rxdc0pPIULF9054jJJk057nOLAKI0PAIawxH0fGeycSeuamBj8V924afD7oieA%2FyoetY%2BwOArgticL0gsKaZH5qu36wsm0PTUYJxrdoCJD1KSRf7w6wKdZTbm5VwL4eTsiqqlj3IhGR6At1ip1z7ienW1Wn9mXEV9ZpxQCFlFuN%2BEBNa2rT2WvzKhVc%2FSeX1eXhJooExfZqTocY5TvXL%2BOnpsCV5v61DM25alWxNHB7%2FrcSREEv%2FBbJ0FodzhoyOq3WvWXE%2BAtG54PTja6lyJWmPPVhbVeZnK3RQowqSpxk2U%2FGSexFMFmt6N81YEB%2FtrHh%2FB64t2mXe2KmGASEXmvUMx5OAOyy5lSpmOu2zYAEywhKHyuyFBfjtGvrdAv52gX83N%2FAKcNNiRq1eO%2BvVPfus0ro%2Fa9W6xWrjpOw1rj3PPbvwqpUya5yX%2B43K3K4ZS9Csp0K252urTZUGaNspFN0P%2BweHR7jrE9rrD9j3YRByEd1LpePR%2BGHy6JUr1ZPTs0%2B1388%2F1y8urxrNVvv6yx83X7%2F9U7e34TRqVa%2FhlU3MM4KaqJdT1zLVhL0jJO2Y%2FYN1LIEpWsYw2MI40KyDx3glIn4HGxpA8RWcAhYMvTXO8tnifTbgcksOLOfc%2Fyb3a%2B3ZIb7hNDNdf1h0Cl3HtrOu3%2Btm3a7tZo9c4mQLB4TQ4geCDwpO6vnz7F207QG02XLpJvaCMZ4oa2pmT3q8zYuWlGyzTuvrYbWvX5zYmxPvjQW8RtOtEY%2BOYUE5aOtqQn%2FiIHjTBV1sxEUjbg3xJ0vxTbN0M5a1LbzJz9Ua%2Fk%2Fyc7b6tzD0hy%2BAfzOi5TthepeBh8FuPezWw2497NbDbj3s1sPGeoAvEoVHlHSw0S7Yhf2sfZR1im3bLRXcknuUOwBh0f3Vtku2bUKAgT6L8Am%2BWtLfKxZ2%2BPh7sXwuhp9aN1%2F392O3XeGO%2Fbl4M7x2G%2FmgwOW3g%2FjSOcw3jq3pX2ls0pp2FAAA) - Apex, all groups: [Test osv-1.com/email example.com/@](https://domainconnect.paulonet.eu/dc/free/templateedit?token=H4sIANclpmoC%2F%2B1X%2B2%2FiRhD%2BV1aWot6pQAzhEThFOgO5hKaE8EiaaxShxR5gi9l1dtcOJKJ%2Fe2fNOyF3OalS0zYSP5jZ2W%2Fe39iPloZx4FMNVunRCqSImAey5lklS6gomU65YmwlVgfndIyKVqN9lUyjWIGMmAuxOowp89eyheaxkRIF3GN8QCj3iAQXWIT%2FUDcCqZjgVimdsHwxEJfSxztDrQNV2t%2BnQZBaObHvCYTiSVdwDq7eN%2BopFRkUD5QrWaBjJKuNtjYMAZmKUBIhB5SzB2qUflIkdpbooRThYEjicEpEsQFHvxKkJ0LuAhkiih8L9BBWMQyF0rFgjrHMDHGH4I5UAs0G%2FpR44KNtOU3ErqhAiL65jNoavUcnCP4MioHjmCvjJmIIoSBlMkMloz0fqluxSRiYq0zFV1tgfCIfnDF9QGn7uP2RLDTM8Txh5J6qWKo0SPAI4wnSF5LAhGLdgYQqCVRpTDLxRmy8xK6e1eokCHs%2Bc8kIpktbTKkQQQzAhokP5jmifgiE9tEMCY4%2BmiDUlLtlX7gjq9SnvoK55CLsncG0Gl990mbmuAUew9LpnQomWy24C1HDW4GitpCesko3j9YAKxrE%2FbioF17S08C0Yue6s0CIM2nOU915BBih6SOqKR4FR3smE3vmpsZ%2BPMjbNj5OdEXwPuZD16l2hwhdF57BdXzfmiW%2Babp%2BvbZsDs1ECca16giU9AG8HnVHSTXWQWpvXsK9FI3LqkCtZpAJyfQUp8XecO07ptsXX%2BrPjKug3wp9wJRZjLt%2B6EHpqbXX4lfOnfrxRl6fhxcnGjtmACk51jTFQb%2BMv8kOO5L3eRuacTOq3s7E0fsfSpw3ptJ9oVm6y8NFh0RH1brTqqQ%2FYaNzweHTa1vlQkKfTaydKouzNTqqgcLkaUYNKza4EyCzWLPbWcLC%2BKC77vtbdG05LovB3hgYFOJTHGqXxfobZdxM%2BDxMBAuopGNlNsIS9mYL93YJfGOZ5xj6FbBmrIxavXbSrzv2SaV9d9Ku9Q6qzeOy07x0nOzJuVOtlFnzrDxoVhYWDRXhgH4RsrNYVR1QGqHtdOYgm8sXDou053rQHwzZHyN%2FzEVwJ5UOo%2FvJ9MEpV6rHX05Oa7%2Bc%2FVo%2Fb1w0W%2B3O5dVv119%2F%2F7tu78Jp1qpO0ymbmOdNaaJeMa1lKoi7Rkjomp1DdSixO7QMkczGoa9Zl97Ttchzu9SUHguu8BSxkOi2%2BpTPl%2B03Se1%2Fk%2FStWex6rmljZkb8kBaLNH9YSBZsOEhmPS%2Bf7PXTbjJNae8AcsWcnfE23nWevQTtettZz9fmrDr%2BPZ0qa2YoZpPFFnVacOSiNNv0v97HLzLyU0Z7MzFuNeN2kNER7pw02bltyJ%2FU999o2ZbrbTlh21F9Z7W90fb7vA5ga4E%2Bbb31Bv2Xtd4P7ut%2FJojVPp%2FdJnCBv1P6O6W%2FU%2Fo7pb9T%2Bn%2BC0vHNX9EIvC41ehk7k0%2FaxWT6oGNnS5lcKVdMpYvZQs7%2B2bZLtm2cRy6ex%2FaIXweb3wVWwE4FXOSjWqdwxflltec3TjN2dPW1c96wr6p9mDSzk3ZDFwuXR9bsLyo4JbzSEwAA) - Subdomain, groups `sending` + `dmarc` only (no receiving MX): [Test osv-1.com/email example.com/notify](https://domainconnect.paulonet.eu/dc/free/templateedit?token=H4sIAOUlpmoC%2F%2B1W%2B0%2FjRhD%2BV1aWUO%2FUJDgP0iQnpDovLkcD5MGVO4SitT1OltheZ3cdCCj92zvrvCHcUalSkYqUH5zZ2W%2Fe3%2ByjoSCIfKrAqDwakeBT5oJouUbF4HKazmYcHhip9cEZDVDROO99TWdRLEFMmQOJOgSU%2BRvZUrOhpURC6LJwSGjoEgEOsCn%2BQ90pCMl4aFSyKcPnQ34pfLwzUiqSlcNDGkWZtROHLkeoMO3wMARHHWr1jJxqFBekI1ikEiSjh7a2DAGZ8VgQLoY0ZA9UK%2F0iSeIsUSPB4%2BGIJOFUiGTDEP1KEZvHoQNkhCh%2BIlAjWMcw4lIlggXGKjPEGYEzlik0G%2Fkz4oKPtsUslbgiI849fRm1FXqPThD8aRQNF2KutJuIwbmEjM4MFYzaPtR3YhMw1FeZTK52QftEPlgBfUBpr9H7SJYa%2BniRMHJHZSKVCgS4hIUp4nFB4J5i3YHEMg1UKkwycccsWGHXT1ttEsW2zxwyhtnKFpMyRhANsGXig%2F6eUj8GQj00Q6LjjzoIOQudqs%2BdsVHxqC9hIbmI7VOY1ZOrT9pMH3fBZVg6tVdBZ6sLkxg13DUoanPhSqNy%2FWgMsaJR0o%2FLeuElNYt0K%2Fav%2BkuEJJP6PDNYRIAR6j6iiuJRdHygM3Ggbyrsx3zRNPHzXtV46GE%2BVJsqZ4TQbe5qXMv3jXnqh6bbVxvL%2BlBPFGehkn2OEg%2FAtakzTstARZmDRQkPMjQpqwS5nkHGBVMznBZzy7WfmO5dNNvPjMvI68Y%2BYMoMFjp%2B7ELlqbXX4tfOrHZjK6%2FPw0sSjR0zhIwIFM2EoF7G32aHPcn7fReahXpU3b2Jo3f%2FKHFuQIXzQrMMVofLDpke19tWt5b9hI0e8hA%2BvbZVLgR47N7Yq7I826CjGkhMnmJUs%2BJ5aEXILMb8Zp4yMD4YbPr%2BBl1bjctysLcGBoUhV8zTPZ4EPGDJra1iLgJEmIgKGki9C1aA1zuINyvI6xXmzRL0BUA9Svqo3Trx2pZ5UutNTnotO1%2FvNKpW59KyCidnVr1WZZ3T6rBTW9rS9IND2eSiv1xPfZAKoc1sLl84Kv5WKlPbccEbjtjt2A9CHk2EVPH07n72YFVr9Ubz5HPry%2Bkf7bPzi06317%2F8%2BufVt%2B%2F%2F1u19OJ1W3epYVR3zohF11Gt2NXTVcL9wAQO9Z6iKBXaEEjESWBD7ig3oHd2IXGdAdbmxyBJPEQvJbac3w8WCfUZkmXWt13z2v8n9zhgOXEf3MdPT7eWKtFSCXNrO2U66YOe8dLmctdNFt%2BSVXY8CeIWtZ86z98%2B%2Bh87T0doeVsu%2FozNpzDXHbNPYsmhJyZ7WaXcNbPbyi8z8lNneWMA7bbo34ukxLqIs2buCyF%2FU9990QVebbzWIe0P8yfJ720Vb7L09Zfvh%2BvsvI1ovyflNCrfiO2e%2Bc%2BY7Z75z5jtnvo4z8e0q6RTcAdXaOTNXTJvldDbfNwuVXLGSzWfKRTObL%2F1qmhXT1CEgyy0ifMT37fbL1mheNfKd28nRyGlattm%2FLOWy55O6X5gULwpjmza%2FTevfG%2FXTo9vPw2Nj%2FjcFwIITiBIAAA%3D%3D) 🤖 Generated with [Claude Code](https://claude.com/claude-code) --------- Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
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
Update to the SendBeam (sendbeam.io) sending-domain template, version 1 → 2. It adds one CNAME record,
rsend→send.forge.rmta.net(groupsending-host). SendBeam's email provider now requires this record for new sending domains and verifies its target directly. It cannot be delegated through a CNAME underdom.sendbeam.iothe way the other two records are, so its target is the provider's fixed hostname.The DKIM and return-path records are unchanged. Nothing is added at the apex, and no existing record is changed.
Type of change
How Has This Been Tested?
<providerId>.<serviceId>.jsonlogoUrlis actually served by a webserverChecklist of common problems
syncPubKeyDomainis set (sendbeam.io; key published at_dcpubkeyv1.sendbeam.io)warnPhishingis not set alongsidesyncPubKeyDomainsyncRedirectDomainis set (sendbeam.io)txtConflictMatchingMode: not applicable, no TXT recordspointsTovalues are fixed names around%token%, and the new record'spointsTois fixedhostlabel: hosts are the fixedresend._domainkey,sendandrsendhostfield to create a subdomain%host%does not appear explicitly in anyhostattributeessential: not applicable; none of the records is one the user would modify independentlyOnline Editor test results
Editor test link(s):