Add an email domain
const url = 'http://localhost:3000/api/v1/email-domains';const options = { method: 'POST', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"domain":"example"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url http://localhost:3000/api/v1/email-domains \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "domain": "example" }'A domain the organization’s people have their email at. Add the TXT record in record, then POST /api/v1/email-domains/{domain}/verify. Proved, single sign-on may use it, and so may joining by domain. A public suffix is refused, and so is a domain another organization holds. Not a custom domain: it serves nothing, and no limit counts it.
Scope: admin.
Authorizations
Section titled “Authorizations”Request Bodyrequired
Section titled “Request Bodyrequired”object
A domain your people have their email at, e.g. acme.com
Examplegenerated
{ "domain": "example"}Responses
Section titled “Responses”The email domain, not verified yet
object
object
Proved by its TXT record: single sign-on and joining by domain may use it
Anyone whose address is at exactly this domain may join the organization, able to read its landing project
The project whoever joins lands in, able to read; null for the organization’s oldest
The organization’s single sign-on uses it
What proves the domain: add this record at your DNS host
object
Example
{ "data": { "record": { "type": "TXT" } }}default
Section titled “default”An error
object
object
Examplegenerated
{ "error": { "code": "example", "message": "example", "detail": "example" }}