Aller à la documentation
API

Ajouter un domaine

Ajoute un domaine à l'espace de travail et le renvoie avec chaque enregistrement DNS dont il a besoin. Le domaine démarre non vérifié, avec son catch-all activé, et se vérifie de lui-même dès que les enregistrements répondent dans le DNS public.

POST/domains

Exécute le véritable appel sur votre espace de travail, avec votre propre clé.

POST /domains

Ajoute un domaine à l'espace de travail et le renvoie avec chaque enregistrement DNS dont il a besoin. Le domaine démarre non vérifié, avec son catch-all activé, et se vérifie de lui-même dès que les enregistrements répondent dans le DNS public.

La requête

Paramètres

domainstringobligatoire
Un domaine nu comme `acme.com` ou `mail.acme.com`. Il est débarrassé de ses espaces et mis en minuscules, et un nom international est stocké sous sa forme ASCII. Un schéma, un chemin ou une adresse est refusé.

Exemple

Nécessite domains:write et une clé sans restriction d'adresse ni de domaine, car un nouveau domaine touche tout l'espace de travail.

curl
curl -X POST "$OE/domains" -H "$AUTH" -H "Content-Type: application/json" \  -d '{ "domain": "acme.com" }'
Réponse
{  "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}

L'exemple abrège records. Une vraie réponse liste chaque enregistrement dont le domaine a besoin, y compris DMARC, les CNAME de signature et les enregistrements de return-path, et GET /domains/{id} décrit chaque champ.

Publiez les enregistrements exactement tels qu'indiqués, puis appelez POST /domains/{id}/verify ou attendez : le domaine est vérifié à nouveau à chaque lecture et par un passage en arrière-plan, et domain.verified se déclenche dès qu'il est validé.

Quand c'est refusé

  • 409 domain_already_added : le propriétaire de cet espace de travail a déjà le domaine.
  • 409 domain_claimed : un autre compte l'a.
  • 409 related_domain_owned : un domaine parent ou l'un de ses sous-domaines appartient à un autre compte, il ne peut donc pas être partagé entre les deux.
  • 409 operator_domain : le domaine appartient à OpenEmail lui-même.
  • 403 domain_allowance_reached : le forfait ne peut pas contenir plus de domaines. Le message nomme le forfait qui en contient davantage.
  • 422 capability_unsupported : la clé est limitée à certaines adresses ou certains domaines.

Votre boîte de réception,
à vos conditions.

L’infrastructure e-mail pour les entreprises, l’IA, les agents et le courrier personnel. Conçue pour l’échelle, la confidentialité et le contrôle. Tout ce que l’e-mail aurait dû avoir dès le premier jour.

OpenEmail

L’infrastructure e-mail pour les entreprises, l’IA, les agents et le courrier personnel. Conçue pour l’échelle, la confidentialité et le contrôle. Tout ce que l’e-mail aurait dû avoir dès le premier jour.

© 2026 OpenEmail. Tous droits réservés.