Skip to content

Wildcard Domains & DNS Setup

EmBoux supports wildcard domains — configure DNS once for your parent domain, and every subdomain you create will work automatically without additional DNS changes.

Use wildcard if you plan to create subdomains under a single parent domain. For example:

  • ganemo.com (parent, wildcard)
  • client1.ganemo.com (subdomain — inherits DNS & SES)
  • client2.ganemo.com (subdomain — inherits DNS & SES)

When creating a domain via the API or portal, mark it as wildcard:

Terminal window
curl -X POST https://api.emboux.com/domains/ \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"name": "ganemo.com"}'

Then set it as wildcard (master token only):

Terminal window
curl -X PUT https://api.emboux.com/domains/ganemo.com/parent \
-H "Authorization: Bearer YOUR_MASTER_KEY" \
-H "Content-Type: application/json" \
-d '{"is_wildcard": true}'

In the Odoo portal, simply check “I will create subdomains (wildcard)” when adding the domain.

For wildcard domains, use * entries so all subdomains are covered:

TypeNameValue
MX*.ganemo.commx1.emboux.com (Priority: 10)
TXT*.ganemo.comv=spf1 include:mailgun.org ~all
TXT*._dmarc.ganemo.comv=DMARC1; p=quarantine; rua=mailto:[email protected]

After domain creation, SES verification is initiated automatically. You’ll receive tokens to configure:

TypeNameValue
TXT_amazonses.ganemo.com(your verification token)
CNAME{tok1}._domainkey.ganemo.com{tok1}.dkim.amazonses.com
CNAME{tok2}._domainkey.ganemo.com{tok2}.dkim.amazonses.com
CNAME{tok3}._domainkey.ganemo.com{tok3}.dkim.amazonses.com

The exact values are shown in your portal dashboard after domain creation.

Use the DNS check endpoint to verify your records are configured correctly:

Terminal window
curl https://api.emboux.com/domains/ganemo.com/dns-check \
-H "Authorization: Bearer YOUR_API_KEY"

Response:

{
"name": "ganemo.com",
"all_ok": true,
"records": [
{"record_type": "MX", "name": "ganemo.com", "expected": "mx1.emboux.com", "status": "ok"},
{"record_type": "TXT", "name": "ganemo.com", "expected": "include:emboux.com", "status": "ok"},
{"record_type": "TXT", "name": "_amazonses.ganemo.com", "expected": "abc123", "status": "ok"},
{"record_type": "CNAME", "name": "tok1._domainkey.ganemo.com", "expected": "tok1.dkim.amazonses.com", "status": "ok"}
]
}

Each record shows ok, missing, or incorrect.

In the portal, use the “Verify my DNS” button for a visual checklist.

Once the parent is verified, create subdomains — they inherit DNS and SES automatically:

Terminal window
curl -X POST https://api.emboux.com/domains/ \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"name": "client1.ganemo.com"}'

The API auto-detects that client1.ganemo.com is a subdomain of ganemo.com and:

  • Links it to the parent domain
  • Inherits outbound_tier and outbound_enforcement
  • Skips SES verification (inherits from parent)
  • No additional DNS configuration needed

By default, EmBoux auto-detects the root domain and verifies it in SES. For example, creating client1.ganemo.com will verify ganemo.com — not client1.ganemo.com.

This means you only need 3 DKIM CNAME records for the parent domain, regardless of how many subdomains you create.

If the parent domain is already verified in your account, new subdomains are marked as SES verified immediately — no additional DNS or waiting required.

SES verification is polled automatically every 2 hours. Once verified, outbound email is enabled for all domains under the same parent. You can also check manually:

Terminal window
curl https://api.emboux.com/domains/ganemo.com/verify-status \
-H "Authorization: Bearer YOUR_API_KEY"
EndpointMethodDescriptionAuth
/domains/{name}/parentPUTSet parent_domain / is_wildcardMaster
/domains/{name}/dns-checkGETVerify DNS recordsAny
/domains/{name}/verifyPOSTInitiate domain verificationMaster
/domains/{name}/verify-statusGETCheck verification statusAny
/domains/{name}/register-subdomainPOSTRegister subdomain with providerMaster