Skip to main content

Users & Organizations

Manage user accounts, organizations, member invitations, and role assignments. Users can belong to multiple organizations with different roles.

Authentication Endpoints

These endpoints do not require an existing access token.

Register

Create a new user account with an optional organization.

Request Body

string
required
User email address.
string
required
Password (minimum 8 characters).
string
required
Display name (1-255 characters).
string
Organization name. If provided, a new organization is created with the user as owner.

Response (201)

The first user to register on the platform is automatically promoted to superadmin.

Login

Authenticate with email and password.

Request Body

string
required
User email address.
string
required
User password.

Response (200)

Same shape as register response.

Refresh Token

Exchange a valid refresh token for new access and refresh tokens.

Request Body

string
required
Valid refresh token.

Response (200)

Same shape as register response with new tokens.
There is no server-side logout endpoint. Logout is performed client-side by discarding the stored access and refresh tokens.

User Profile

Get Current User

Get the authenticated user’s profile and organization memberships.
All API requests require a valid JWT token in the Authorization: Bearer <token> header. The API Gateway decodes the JWT and forwards auth context (user-id, organization-id, user-email, x-platform-role, x-org-role) as headers to downstream services.

Response (200)

boolean
object

Email Verification

Verify Email

Verify a user’s email address using the token sent via email.

Request Body

string
required
Email verification token.

Resend OTP

Request a one-time password code sent to the user’s email.

Request Body

string
required
User email address.

Verify OTP

Verify an OTP code.

Request Body

string
required
User email address.
string
required
OTP code.

Password Management

Forgot Password

Request a password reset email.

Request Body

string
required
User email address.

Reset Password

Complete a password reset using the token from the reset email.

Request Body

string
required
Password reset token.
string
required
New password (minimum 8 characters).

Organization Management

All API requests require a valid JWT token in the Authorization: Bearer <token> header. The API Gateway decodes the JWT and forwards auth context (user-id, organization-id, user-email, x-platform-role, x-org-role) as headers to downstream services.

Update Organization

Update organization settings.

Path Parameters

string
required
Organization UUID.

Request Body

string
Updated organization name.
object
Organization settings (e.g., require_publish_approval).

List Organization Members

Get all members of an organization with their roles.

Path Parameters

string
required
Organization UUID.

Response (200)

object[]

Invite Member

Send an invitation email to add a new member to the organization.

Request Body

string
required
Email address to invite.
string
default:"editor"
Role to assign: admin, editor, or viewer.

Accept Invitation

Accept an organization invitation using the token from the invitation email.

Request Body

string
required
Invitation token.

Update Member Role

Change a member’s role within the organization.

Path Parameters

string
required
Organization UUID.
string
required
Member’s user UUID.

Request Body

string
required
New role: admin, editor, or viewer.
Only organization owners and admins can change member roles. Owners cannot have their role changed.

Remove Member

Remove a member from the organization.

Path Parameters

string
required
Organization UUID.
string
required
Member’s user UUID.

Organization Roles