REST API
평범한 HTTP로 다루는 메일함.
내 코드에서 메일을 보내고, 읽고, 관리하세요. 각 키는 부여한 스코프만 가집니다.
한마디로
이메일 API란?
이메일 API는 소프트웨어가 앱이 아니라 HTTP로 메일을 보내고 읽게 해 줍니다. 요청마다 붙는 키가 호출자가 무엇에 손댈 수 있는지 정합니다.
104
문서화된 작업
25
키 하나의 발신 범위에 드는 도메인 전체
50
그 위에 더하는 개별 주소
작동 방식
키마다 한 가지 일만
키가 가질 스코프와, 원하면 사용할 수 있는 발신자를 고르세요. 스코프가 없거나 목록에 없는 발신자는 403을 받습니다.
두 번 보내지 않고 재시도
각 발송은 무엇이든 나가기 전에 msg_ id를 받습니다. 같은 Idempotency-Key로 재시도하면 첫 결과가 돌아옵니다.
시크릿은 바꾸고 키는 그대로
교체는 시크릿만 바꾸므로 id, 스코프, 요청 기록은 그대로 이어집니다. 폐기된 키는 revoked_api_key 응답을 받습니다.
키가 가질 수 있는 스코프
모두 30개. 새 키는 emails:send로 시작합니다.
첫 이메일 보내기
평범한 HTTP와 JSON. 설치할 것이 없습니다.
curl -X POST https://api.openemail.uk/emails \ -H "Authorization: Bearer $OPENEMAIL_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "from": "Acme Billing <[email protected]>", "to": ["[email protected]"], "subject": "Your September invoice", "html": "<p>Invoice attached.</p>" }'제공 기능
지금 제품에 있는 것
모든 발송에 id
/events는 수신자별, /tracking은 열람과 클릭.
403의 이유
GET /ping은 키의 스코프와 역할이 남긴 것을 보여 줍니다.
MCP로 키 관리
MCP 서버에서도 키를 나열, 교체, 폐기, 활성화할 수 있습니다.
활용 팁
제대로 활용하기
- 01
서비스마다 키 하나
그러면 유출된 키를 폐기해도 멈추는 것은 모든 연동이 아니라 하나뿐입니다.
- 02
Idempotency-Key 설정
송장 번호처럼 고유한 값에서 만들면 재시도가 첫 결과를 재현합니다.
- 03
발신자 좁히기
서비스가 발신하는 주소만 나열하세요. 도메인 전체를 넣으면 나중에 추가된 주소도 포함됩니다.
현재 상황
알아두면 좋은 점
- 업로드 엔드포인트 없음
- 인라인 첨부는 base64로 총 5MB까지. 더 큰 파일은 워크스페이스 파일 id로 지정해 다운로드 링크로 보냅니다.
- 발송에 반송 상태 없음
- GET /emails는 반송된 메시지를 보낸 것으로 나열합니다. 반송은 해당 수신자와 email.bounced 웹훅에 나타납니다.
질문
자주 묻는 질문
더 보기