API
이메일 주소 확인
첫 메시지를 보내기 전에, 주소가 보낼 만한지 확인합니다.
GET/tools/address
2개 호출을 워크스페이스에 실제로 실행합니다.
GET /tools/address
첫 메시지를 보내기 전에, 주소가 보낼 만한지 확인합니다.
예시
scope가 필요하지 않습니다. result는 valid, risky, invalid, unknown 중 하나이고, reasons가 이유를 알려 줍니다. 잘못된 형식, 메일을 받지 않는 도메인, 일회용이거나 공용인 메일함, 흔한 오타 등이며, 수정 제안은 suggestion에 들어 있습니다. emails:read가 있으면 workspace에 이 워크스페이스가 해당 주소에 대해 아는 내용이 추가됩니다.
curl "$OE/tools/[email protected]" -H "$AUTH"{ "object": "address_check", "email": "[email protected]", "normalized": "[email protected]", "result": "risky", "reasons": ["typo_suspected"], "suggestion": "[email protected]", "checks": { "syntax": true, "mx": { "status": "found", "hosts": ["mx.gmial.com"] }, "nullMx": false, "disposable": false, "role": false, "freeProvider": false, "mailbox": null }, "workspace": { "suppressed": false, "lastBouncedAt": null, "lastDeliveredAt": null }, "checkedAt": "2026-10-11T09:41:00.000Z"}형식이 잘못된 주소는 오류가 아닙니다. result가 invalid인 200으로 응답합니다.
deep=true는 메일함이 존재하는지도 확인하며 결과는 checks.mailbox에 들어 있습니다. emails:send가 필요하고 사용량 기반 요금으로 주소당 청구됩니다. 사용량 기반 요금이 꺼져 있으면 409 deep_check_unavailable이며, 청구되는 것은 없습니다.
목록 확인
POST /tools/addresses는 emails에 최대 100개의 주소를 받아, 보낸 순서대로 주소마다 확인 결과 하나씩을 돌려줍니다. deep은 모든 주소에 적용됩니다.
curl -X POST "$OE/tools/addresses" -H "$AUTH" -H "Content-Type: application/json" \ -d '{ "emails": ["[email protected]", "[email protected]"] }'{ "object": "list", "data": [ { "object": "address_check", "email": "[email protected]", "result": "valid", "reasons": [] }, { "object": "address_check", "email": "[email protected]", "result": "risky", "reasons": ["role_address"] } ]}주소가 100개를 넘거나 하나도 없으면 emails에 대한 422 invalid_parameter입니다.