On this page

6 endpoints.

MethodPathSummary
GET/api/invitations/{communityId}/invitationsGet all invitations for a community (admin/moderator)
POST/api/invitations/{communityId}/invitationsCreate an invitation (admin/moderator)
DELETE/api/invitations/{communityId}/invitations/{invitationId}Cancel an invitation (admin/moderator)
POST/api/invitations/{communityId}/invitations/{invitationId}/resendResend an invitation (admin/moderator)
POST/api/invitations/acceptAccept invitation and set password (public)
GET/api/invitations/verifyVerify invitation token and get details (public)

Returns a paginated list of community invitations, filterable by status. Auth: Bearer JWT required.

Parameters

NameInRequiredTypeDescription
communityIdpathyesstring (uuid)—
pagequerynointeger—
limitquerynointeger—
statusquerynoenum: PENDING, APPROVED, REJECTED, LEFT—

Responses

StatusDescriptionBody
200Paginated list of invitationsobject
401Authentication required—
403Permission denied—

Invites a user to join the community. If the email belongs to an existing user, they receive an invitation link. If not, a new user account is created.

Re-invitation: If the user was previously removed (LEFT) or rejected (REJECTED), their existing member record is updated back to PENDING status.

Permissions: Requires users:manage or users:moderate. Invitation token is hashed (SHA-256) before storage; raw token sent via email only.

Auth: Bearer JWT required.

Parameters

NameInRequiredTypeDescription
communityIdpathyesstring (uuid)UUID of the community

Request body (required) — multipart/form-data

FieldTypeRequiredDescription
emailstring (email)yesEmail of the user to invite
firstNamestringno—
familyNamestringno—
roleenum: MEMBER, MODERATOR, COMMUNITY_ADMINno—
messagestringnoOptional personal message included in invitation email
avatarstring (binary)noOptional avatar image for new user

Responses

StatusDescriptionBody
201Invitation created and email sentobject
400Bad request - missing email, invalid data, or user already an active member—
401Authentication required—
403Permission denied - requires users:manage or users:moderate—
404Community not found—
500Internal server error—

Cancels a pending invitation. The invitation link will no longer be valid. Auth: Bearer JWT required.

Parameters

NameInRequiredTypeDescription
communityIdpathyesstring (uuid)—
invitationIdpathyesstring (uuid)UUID of the invitation (community member record ID)

Responses

StatusDescriptionBody
200Invitation cancelledobject
401Authentication required—
403Permission denied—
404Invitation not found—
500Internal server error—

Resends an invitation email with a fresh token. Can also reactivate invitations for members who were previously REJECTED or LEFT, setting their status back to PENDING.

Auth: Bearer JWT required.

Parameters

NameInRequiredTypeDescription
communityIdpathyesstring (uuid)—
invitationIdpathyesstring (uuid)UUID of the invitation to resend

Responses

StatusDescriptionBody
200Invitation resent successfullyobject
401Authentication required—
403Permission denied—
404Invitation not found—
500Internal server error—

Auth: Bearer JWT required.

Request body (required) — application/json

FieldTypeRequiredDescription
tokenstringyes—
passwordstringyes—

Responses

StatusDescriptionBody
200Invitation accepted—

Auth: Bearer JWT required.

Parameters

NameInRequiredTypeDescription
tokenqueryyesstring—

Responses

StatusDescriptionBody
200Invitation details—