- Shipped
- October 23, 2026 at 12:14 AM UTC
- Author
- Kamo
- Commit
- fc33f0f
Owner rule 2026-10-22: per-user add-ons bill the licenses purchased; how many mailboxes may be in use is limited only by them. Before a mailbox is put into use, BillingService's **************** is asked (X-Internal-Auth); a refusal is a 409 carrying its plain-language sentence (StatusReasonAdvice), e.g. "All 10 of your 3rd-party email licenses are in use. Add licenses in Billing to connect another mailbox." Enforced, before anything is written: - creating a mailbox (KamoMail counts it at once; 3rd-party only once mapped) - assigning a mailbox to a member - creating a shared mailbox, granting access to one, switching one back on - connecting a personal inbox (IMAP save, OAuth consent and callback) and assigning an already-connected one - AI member mailbox provisioning (NOT_READY / LICENSE_LIMIT) An address already counted is never refused, nothing existing is unassigned, and a BillingService outage fails OPEN with a warning. The mailbox-assign, shared-access and personal-mailbox endpoints now pass a refusal's status and sentence through instead of a 500.
