Create a user
Required membership role: org admin. PBAC permission: organization.invite. Learn more about API access control at https://cal.com/docs/api-reference/v2/access-control. If accessed using an OAuth access token, the ORG_MEMBERSHIP_WRITE scope is required.
This endpoint creates a brand-new Cal.com user account and attaches them to the organization. If the email already belongs to an existing Cal.com user, the request fails with 400 user_already_invited_or_member. A common case is re-adding someone who was previously removed from the organization via the dashboard: the membership is gone, but the underlying Cal.com user account still exists.
To attach an existing Cal.com user to the organization, use POST /v2/organizations/{orgId}/memberships with the email field instead.
Documentation Index
Fetch the complete documentation index at: https://cal.com/docs/llms.txt
Use this file to discover all available pages before exploring further.
Headers
For non-platform customers - value must be Bearer <token> where <token> is api key prefixed with cal_
For platform customers - OAuth client secret key
For platform customers - OAuth client ID
Path Parameters
Body
User email address
"user@example.com"
Username
"user123"
Full name of the user
"Alice Smith"
Preferred weekday
"Monday"
Brand color in HEX format
"#FFFFFF"
Bio
"I am a bio"
You can store any additional data you want here. Metadata must have at most 50 keys, each key up to 40 characters, and values up to 500 characters.
{ "key": "value" }Dark brand color in HEX format
"#000000"
Hide branding
false
Time zone
"America/New_York"
Theme
"dark"
Application theme
"light"
Time format
24
Default schedule ID
x >= 01
Locale
"en"
Avatar URL
"https://example.com/avatar.jpg"
MEMBER, ADMIN, OWNER Must be true to ensure the organization membership is created in accepted state. If false, the user will have a pending membership and will not be able to access the organization.
If true, the signup notification email will not be sent to the new user.