애드온 목록
요금제에 더해 살 수 있는 것으로, 현재는 전용 발송 IP입니다.
3개 호출을 워크스페이스에 실제로 실행합니다.
GET /billing/add-ons
요금제에 더해 살 수 있는 것으로, 현재는 전용 발송 IP입니다.
예시
billing:read가 필요합니다. eligibility는 워크스페이스가 전용 IP 조건을 충족하는지 알려 줍니다. Business 또는 Enterprise 요금제와 한 달에 최소 100,000통의 발송이 필요합니다. 그보다 적은 양에서는 전용 IP가 공용 IP보다 전달이 나쁘기 때문입니다. reason은 부족한 것을 plan 또는 volume으로 알려 줍니다.
curl "$OE/billing/add-ons" -H "$AUTH"{ "object": "list", "data": [{ "object": "add_on", "addOn": "dedicated-ip", "available": true, "status": null, "priceCents": 3999, "endsAt": null, "eligibility": { "eligible": false, "plan": "business", "monthlySends": 41200, "minimumMonthlySends": 100000, "reason": "volume" }, "ips": []}] }status는 워크스페이스가 애드온을 갖기 전까지 null이고, 그 뒤로는 설정 중인 pending, warming, active, 그리고 해제 중인 releasing이 됩니다.
결제에는 워크스페이스 소유자만 닿습니다: API 키, 또는 소유자가 모든 주소로 연결한 액세스 토큰입니다. 멤버의 토큰은 403 owner_only, 특정 주소나 도메인으로 제한된 키나 토큰은 422 capability_unsupported입니다.
구매하기
billing:write가 필요합니다. POST /billing/add-ons/checkout은 본인이 결제하는 링크를 돌려줍니다. 결제가 끝나면 IP가 설정되고 워밍업됩니다.
curl -X POST "$OE/billing/add-ons/checkout" -H "$AUTH" -H 'content-type: application/json' \ -d '{ "addOn": "dedicated-ip" }'{ "object": "add_on_checkout", "addOn": "dedicated-ip", "url": "https://checkout.example.com/c/9Tn4wRb1xK7pQ2zd" }이미 가지고 있는 워크스페이스는 409 add_on_already_active, 조건을 충족하지 않는 워크스페이스는 409 add_on_not_eligible, 모든 IP가 사용 중이면 409 add_on_sold_out입니다.
API로는 아무것도 결제되지 않습니다. 링크는 결제 제공업체의 페이지를 열며, 본인은 앱에서처럼 그곳에서 결제하거나 카드를 바꾸거나 해지합니다.
OAuth 액세스 토큰으로 이 호출을 하려면 인증 코드가 필요합니다. 앱이 최근 60분 안에 코드를 인증하기 전까지 호출은 403 step_up_required로 응답하고 아무것도 바꾸지 않습니다. API 키는 요구받지 않습니다. 코드를 요청하고 인증하는 방법은 인증 페이지에 있습니다.
해지하기
billing:write가 필요합니다. DELETE /billing/add-ons/dedicated-ip는 이미 결제한 달의 말일에 해지하며, 그 날짜는 endsAt이 알려 줍니다. 그 뒤 IP가 반환되고 메일은 다시 공용 IP로 나갑니다.
curl -X DELETE "$OE/billing/add-ons/dedicated-ip" -H "$AUTH"{ "object": "add_on", "addOn": "dedicated-ip", "status": "active", "endsAt": "2026-11-01T00:00:00.000Z" }애드온이 없는 워크스페이스는 409 add_on_not_active입니다.
OAuth 액세스 토큰으로 이 호출을 하려면 인증 코드가 필요합니다. 앱이 최근 60분 안에 코드를 인증하기 전까지 호출은 403 step_up_required로 응답하고 아무것도 바꾸지 않습니다. API 키는 요구받지 않습니다. 코드를 요청하고 인증하는 방법은 인증 페이지에 있습니다.