CHW-4207 InvitationAlreadyAccepted

invitation has already been accepted; sign in with the invited email to access the org

Default message: invitation has already been accepted; sign in with the invited email to access the org
HTTP status: 400 (client)

Problem. The invitation has already been consumed. Cause. Another session accepted the same token earlier. Fix. Sign in with the invited email to access the org; no further action required. HTTP 400 on the accept path (POST /api/invitations/{token}).

The same code is reused on the two MANAGEMENT verbs — resend (POST /api/invitations/{id}/resend) and revoke (DELETE /api/invitations/{id}) — where the request is well-formed and the row simply conflicts with the operation, so those answer HTTP 409 with manager-facing wording: manage (or remove) the resulting membership instead of resending or revoking the invitation.