Invitations
Last updated:
An organization invitation is an email-bound, organization-bound, single-use offer to create a current Administrator or Member membership.
Warning
Invitation listing, issuance, revocation, acceptance, durable communication integration, and readiness verification remain in progress in WS-005.
Token model
Invitation tokens are opaque, purpose-specific, valid for seven days, bound to the normalized invited email, single-use, and invalid after acceptance or revocation. Reusable plaintext tokens must never be persisted or emitted in diagnostics.
Acceptance requires an authenticated account, a verified email address, an exact normalized email match, and a currently valid invitation.
Administration contract
IMembershipApplication defines:
ListInvitationsAsyncfor scoped cursor pagination;InviteMemberAsyncforAdministratororMemberinvitations;RevokeInvitationAsyncwith an expected version token;AcceptInvitationAsyncwith the opaque token.
A second pending invitation for the same organization and normalized email returns invitation_already_pending. There is no public resend operation.
Invariants
- An ordinary invitation cannot assign Owner.
- Cross-organization invitation identifiers must not disclose protected state.
- Invitation state and required durable email intent commit atomically.
- Acceptance creates at most one logical membership.
- Later protected operations still require validated organization context and authorization.