Skip to main content
POST
/
api
/
public
/
signup
{
  "WasSuccessful": "<string>",
  "Token": "<string>"
}

Sign Up

Creates a new customer account. The request body should include all required fields from the checkout fields configuration. This is the primary public registration endpoint for new members.

Authentication

No authentication required.

Request Body

The request body wraps the coworker data inside a Coworker property, along with additional registration fields.
Coworker
object
required
Object containing the new member’s profile fields. Fields are dynamic based on operator checkout configuration.
Coworker.FullName
string
required
Full name of the new member.
Coworker.Email
string
required
Email address for the account.
Base64Avatar
string
Base64-encoded avatar image, if provided during signup.
recaptcha
string
reCAPTCHA token for bot protection.
TeamGuid
string
Team GUID if the signup is via a team invite link.
TariffGuid
string
Tariff/plan GUID if the signup is via a plan invite link.
TariffId
string
Plan ID if pre-selecting a membership plan.

Response

Returns a confirmation object with a token for automatic sign-in.
WasSuccessful
string
Whether the signup was successful.
Token
string
JWT token for automatic sign-in after registration.

Examples

Register a new member

POST /api/public/signup
Content-Type: application/json

{
  "Coworker": {
    "FullName": "Jane Smith",
    "Email": "jane@example.com"
  },
  "recaptcha": "03AGdBq24...",
  "Base64Avatar": null
}

TypeScript Integration

import endpoints from '@/api/endpoints'

const response = await httpClient.post<{ WasSuccessful: string; Token: string }>(endpoints.checkout.signup, {
  Coworker: coworkerData,
  Base64Avatar: avatarBase64,
  recaptcha: recaptchaToken,
  TeamGuid: teamGuid,
  TariffId: planId,
})