API
ドメインを追加する
ワークスペースにドメインを追加し、必要なすべての DNS レコードとともに返します。ドメインは未検証で catch-all が有効な状態から始まり、レコードが公開 DNS で応答すると自動的に検証されます。
POST/domains
実際の呼び出しを、ご自身のキーで自分のワークスペースに対して実行します。
POST /domains
ワークスペースにドメインを追加し、必要なすべての DNS レコードとともに返します。ドメインは未検証で catch-all が有効な状態から始まり、レコードが公開 DNS で応答すると自動的に検証されます。
リクエスト
パラメーター
domainstring必須- `acme.com` や `mail.acme.com` のようなドメイン名のみ。前後の空白を除いて小文字化され、国際化ドメイン名は ASCII 形式で保存されます。スキーム、パス、アドレスは拒否されます。
例
domains:write と、アドレスやドメインの制限がないキーが必要です。新しいドメインはワークスペース全体に及ぶためです。
curl -X POST "$OE/domains" -H "$AUTH" -H "Content-Type: application/json" \ -d '{ "domain": "acme.com" }'{ "object": "domain", "id": "b3e1f0a4-6c2d-4e8a-9f17-2d5c8a0b4e6f", "domain": "acme.com", "receiving": { "verified": false, "verifiedAt": null, "catchAll": true, "lastCheckedAt": "2026-09-25T10:00:02.000Z", "error": "No MX records yet. DNS changes can take a few minutes to spread." }, "sending": { "status": "no_identity", "canSend": false, "checkedAt": null, "error": null, "note": "Sending is not set up yet. Publish the signing record listed for this domain, and sending switches on shortly after it answers in DNS." }, "tracking": { "host": null, "status": "none", "active": false, "target": "", "record": null, "checkedAt": null, "verifiedAt": null, "error": null }, "storage": { "host": null, "status": "none", "active": false, "target": "", "record": null, "checkedAt": null, "verifiedAt": null, "error": null }, "addresses": [], "createdAt": "2026-09-25T10:00:00.000Z", "records": [ { "type": "MX", "name": "acme.com", "value": "inbound.mail.example", "priority": 10, "purpose": null, "status": "missing" }, { "type": "TXT", "name": "acme.com", "value": "v=spf1 include:_spf.openemail.uk ~all", "priority": null, "purpose": null, "status": "missing" }, { "type": "TXT", "name": "_openemail-challenge.acme.com", "value": "oe-verify=4f1c9a2b7e8d6053a1c4", "priority": null, "purpose": "Proves you own this domain", "status": "missing" } ], "dmarc": null}この例では records を省略しています。実際のレスポンスには、DMARC、署名用 CNAME、return-path レコードを含め、ドメインに必要なすべてのレコードが列挙されます。各フィールドの説明は GET /domains/{id} にあります。
レコードを指定どおりに公開し、POST /domains/{id}/verify を呼び出すか、待ってください。ドメインは読み取られるたびと、バックグラウンドの巡回で再チェックされ、合格した瞬間に domain.verified が発火します。
拒否される場合
409domain_already_added: このワークスペースのオーナーは既にこのドメインを持っています。409domain_claimed: 別のアカウントがこのドメインを持っています。409related_domain_owned: その親ドメインまたはサブドメインが別のアカウントに属しているため、2 つのアカウントに分けることはできません。409operator_domain: このドメインは OpenEmail 自身のものです。403domain_allowance_reached: プランでこれ以上ドメインを持てません。メッセージには、より多くのドメインを持てるプランが示されます。422capability_unsupported: キーが特定のアドレスやドメインに限定されています。