HTTP API reference › Gala Launchpad › moderator-invites
Gala Launchpad — moderator-invites
7 operations in this group.
- GET /v1/moderator-invites — List moderator invites
- POST /v1/moderator-invites — Create moderator invite
- DELETE /v1/moderator-invites/{id} — Revoke moderator invite
- PATCH /v1/moderator-invites/{id} — Update moderator invite
- PATCH /v1/moderator-invites/{id}/role — Update moderator role
- POST /v1/moderator-invites/claim — Claim moderator invite
- GET /v1/moderator-invites/code/{code} — Get moderator invite by code
GET /v1/moderator-invites
ModeratorInvitesController_listInvites
List moderator invites
List invites for a token or all tokens
Authentication: apiKeyAuth, bearer
api key auth
Responses
200 — Invites retrieved successfully - returns paginated array of invites
Content type: application/json
Schema: ModeratorInviteListSuccessEnvelopeDto
| Field | Type | Required | Description |
|---|---|---|---|
| data | ModeratorInviteListDataDto | yes | |
| error | boolean enum: false | yes | |
| message | string | yes | |
| status | number | yes |
401 — Unauthorized - missing or invalid JWT token
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
404 — Token not found - tokenName query parameter invalid or token does not exist
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
500 — Internal server error - database query failed
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
default — Shared error envelope for authentication, ownership, and service failures.
Content type: application/json
Schema: anyOf: ModeratorInviteErrorEnvelopeDto | ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | string | yes | |
| status | integer | yes | |
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
Example response
[]
POST /v1/moderator-invites
ModeratorInvitesController_createInvite
Create moderator invite
Create a new moderator invite (token or all tokens scope)
Authentication: apiKeyAuth, bearer
api key auth
Responses
200 — Invite created successfully - returns invite code and shareable URL
Content type: application/json
Schema: ModeratorInviteSuccessEnvelopeDto
| Field | Type | Required | Description |
|---|---|---|---|
| data | ModeratorInviteResponseDto | yes | |
| error | boolean enum: false | yes | |
| message | string | yes | |
| status | number | yes |
400 — Bad request - inviteScope is invalid (TOKEN or ALL_OWNER_TOKENS), or role not valid
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
401 — Unauthorized - missing or invalid JWT token
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
403 — Forbidden - user is not token owner or user is banned
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
404 — Token not found - tokenName does not match any existing pool when scope is TOKEN
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
500 — Internal server error - failed to create invite in database
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
default — Shared error envelope for authentication, authorization, validation, and service failures.
Content type: application/json
Schema: anyOf: ModeratorInviteErrorEnvelopeDto | ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | string | yes | |
| status | integer | yes | |
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
Example response
[]
DELETE /v1/moderator-invites/{id}
ModeratorInvitesController_revokeInvite
Revoke moderator invite
Revoke a moderator invite (owner only)
Authentication: apiKeyAuth, bearer
api key auth
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string |
Responses
200 — Invite revoked successfully - invite status changed and no longer usable
Content type: application/json
Schema: ModeratorInviteDeleteSuccessEnvelopeDto
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: false | yes | |
| message | string | yes | |
| status | number | yes |
401 — Unauthorized - missing or invalid JWT token
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
403 — Forbidden - user is not the invite creator or user is banned
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
404 — Invite not found - id parameter does not match any existing invite
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
500 — Internal server error - failed to revoke invite in database
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
default — Shared error envelope for authentication, ownership, and service failures.
Content type: application/json
Schema: anyOf: ModeratorInviteErrorEnvelopeDto | ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | string | yes | |
| status | integer | yes | |
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
Example response
[]
PATCH /v1/moderator-invites/{id}
ModeratorInvitesController_updateInvite
Update moderator invite
Update the role and/or description of a moderator invite (owner only)
Authentication: apiKeyAuth, bearer
api key auth
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string |
Responses
200 — Invite updated successfully - returns updated invite
Content type: application/json
Schema: ModeratorInviteSuccessEnvelopeDto
| Field | Type | Required | Description |
|---|---|---|---|
| data | ModeratorInviteResponseDto | yes | |
| error | boolean enum: false | yes | |
| message | string | yes | |
| status | number | yes |
400 — Bad request - neither role nor description provided, or role is invalid
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
401 — Unauthorized - missing or invalid JWT token
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
403 — Forbidden - user is not the invite creator or user is banned
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
404 — Invite not found - id parameter does not match any existing invite
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
500 — Internal server error - failed to update invite in database
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
default — Shared error envelope for authentication, ownership, validation, and service failures.
Content type: application/json
Schema: anyOf: ModeratorInviteErrorEnvelopeDto | ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | string | yes | |
| status | integer | yes | |
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
Example response
[]
PATCH /v1/moderator-invites/{id}/role
ModeratorInvitesController_updateInviteRole
Update moderator role
Update the role of a moderator invite (owner only)
Authentication: apiKeyAuth, bearer
api key auth
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string |
Responses
200 — Role updated successfully - returns updated invite with new role
Content type: application/json
Schema: ModeratorInviteSuccessEnvelopeDto
| Field | Type | Required | Description |
|---|---|---|---|
| data | ModeratorInviteResponseDto | yes | |
| error | boolean enum: false | yes | |
| message | string | yes | |
| status | number | yes |
400 — Bad request - role is invalid (must be MODERATOR, MANAGER, or TECHNICAL_PRODUCER)
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
401 — Unauthorized - missing or invalid JWT token
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
403 — Forbidden - user is not the invite creator or user is banned
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
404 — Invite not found - id parameter does not match any existing invite
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
500 — Internal server error - failed to update invite in database
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
default — Shared error envelope for authentication, ownership, validation, and service failures.
Content type: application/json
Schema: anyOf: ModeratorInviteErrorEnvelopeDto | ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | string | yes | |
| status | integer | yes | |
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
Example response
[]
POST /v1/moderator-invites/claim
ModeratorInvitesController_claimInvite
Claim moderator invite
Claim an invite to become a moderator
Authentication: apiKeyAuth, bearer
api key auth
Responses
200 — Invite claimed successfully - user promoted to moderator for token(s)
Content type: application/json
Schema: ModeratorInviteClaimSuccessEnvelopeDto
| Field | Type | Required | Description |
|---|---|---|---|
| data | oneOf: ModeratedTokenResponseDto | BlanketInviteClaimResponseDto | yes | |
| error | boolean enum: false | yes | |
| message | string | yes | |
| status | number | yes |
400 — Bad request - inviteCode is missing, invalid format, not found, already claimed, revoked, or expired
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
401 — Unauthorized - missing or invalid JWT token
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
403 — Forbidden - user profile incomplete or user is banned
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
500 — Internal server error - failed to promote user to moderator in database
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
default — Shared error envelope for authentication, profile, and service failures.
Content type: application/json
Schema: anyOf: ModeratorInviteErrorEnvelopeDto | ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | string | yes | |
| status | integer | yes | |
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
Example response
[]
GET /v1/moderator-invites/code/{code}
ModeratorInvitesController_getInviteByCode
Get moderator invite by code
Get invite details by code (public - no auth required)
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| code | path | required | string |
Responses
200 — Invite details retrieved successfully - returns invite scope, role, and expiration date
Content type: application/json
Schema: PublicModeratorInviteSuccessEnvelopeDto
| Field | Type | Required | Description |
|---|---|---|---|
| data | PublicModeratorInviteInfoDto | yes | |
| error | boolean enum: false | yes | |
| message | string | yes | |
| status | number | yes |
404 — Invite code not found or expired - code parameter does not match any valid invite
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
500 — Internal server error - failed to retrieve invite from database
Content type: application/json
Schema: ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
default — Shared error envelope for invite lookup failures.
Content type: application/json
Schema: anyOf: ModeratorInviteErrorEnvelopeDto | ApiErrorEnvelope
| Field | Type | Required | Description |
|---|---|---|---|
| error | boolean enum: true | yes | |
| message | string | yes | |
| status | integer | yes | |
| error | boolean enum: true | yes | |
| message | oneOf: string | array<string> | yes | |
| status | integer | yes | HTTP status code. |
| message | string | yes | |
| statusCode | integer | yes | HTTP status code. |
Example response
[]
Previous group: moderated-tokens · Next group: Notifications