API
도메인 단건 조회
그 도메인에 존재하는 주소들과 각 주소의 활성화 여부를 함께 담습니다.
GETapi.openemail.uk/domains/{id}
본인 키로 워크스페이스에 실제 호출을 실행합니다.
GET /domains/{id}
그 도메인에 존재하는 주소들과 각 주소의 활성화 여부를 함께 담습니다.
예시
domains:read가 필요합니다.
curl "$OE/domains/b3e1f0a4-6c2d-4e8a-9f17-2d5c8a0b4e6f" -H "$AUTH"{ "object": "domain", "id": "b3e1f0a4-6c2d-4e8a-9f17-2d5c8a0b4e6f", "domain": "acme.com", "receiving": { "verified": true, "verifiedAt": "2026-08-14T10:02:00.000Z", "catchAll": false, "lastCheckedAt": "2026-08-29T06:00:00.000Z", "error": null }, "sending": { "status": "verified", "canSend": true, "checkedAt": "2026-08-29T06:00:00.000Z", "error": null, "note": "Mail from this domain is signed and can be sent." }, "tracking": { "host": "links.acme.com", "status": "active", "active": true, "target": "oelinks3f9a1c7e2b8d4a60.edge.openemail.uk", "record": { "type": "CNAME", "name": "links.acme.com", "value": "oelinks3f9a1c7e2b8d4a60.edge.openemail.uk" }, "checkedAt": "2026-08-29T06:10:00.000Z", "verifiedAt": "2026-08-29T06:10:00.000Z", "error": null }, "storage": { "host": "files.acme.com", "status": "active", "active": true, "target": "oefiles81c40d6b2f7e9a35.edge.openemail.uk", "record": { "type": "CNAME", "name": "files.acme.com", "value": "oefiles81c40d6b2f7e9a35.edge.openemail.uk" }, "checkedAt": "2026-08-29T06:10:00.000Z", "verifiedAt": "2026-08-29T06:10:00.000Z", "error": null }, "addresses": [ { "address": "[email protected]", "enabled": true }, { "address": "[email protected]", "enabled": false } ], "createdAt": "2026-08-14T09:55:11.000Z"}비활성화된 주소는 더 이상 메일을 받지 못합니다. 그 주소로 온 메일은 SMTP 단계에서 거부되므로, 발신자는 침묵이 아니라 반송을 받습니다.
아직 여기서 할 수 없는 일
아직 출시되지 않음이 리소스가 받아들이는 쓰기는 커스텀 추적 도메인과 커스텀 파일 도메인 두 가지이며, 둘 다 PATCH /domains/{id}를 통합니다. 도메인 설정의 나머지 부분은 현재 앱에서만 가능합니다.
- 도메인 추가와, 게시해야 할 DNS 레코드 조회.
GET은 도메인이 미검증 상태라는 것은 알려 주지만 어떤 레코드가 빠졌는지는 알려 주지 않습니다. receiving이나sending의 재검사 트리거. 둘 다 엔드포인트가 없고, 필요하지도 않습니다. 매시간 도는 스윕이 미검증 도메인을 알아서 다시 검사하므로 레코드를 게시하고 두는 것이 전부입니다.GET /domains를 폴링하는 대신domain.verified와domain.sending_changed를 구독하면 둘 중 무엇이 움직이는 즉시 통지받습니다.PATCH /domains/{id}는 추적 도메인과 파일 도메인만 검사합니다.- 주소의 생성, 비활성화, 라우팅. 공유는 이미 구현되어 있습니다.
POST /members/{userId}/addresses가 기존 주소를member나viewer수준의 누군가에게 넘겨 주기 때문입니다. 이 리소스가 할 수 없는 것은 주소를 존재하게 만드는 일입니다.
이 모든 기능은 앱의 Settings → Domains에 있습니다. 빠져 있는 것은 기능이 아니라 API 표면입니다.