Create Team Member
Adds a member to an account's team with a system role. Identify them by exactly one of user_id or email. If the person has not yet accepted — or the email does not belong to a Whop account yet — an invitation is sent instead and the response is 202 with { "object": "team_member_invite", "invitation_sent": true }. If they already have a pending invite, the request fails with a 400. Custom roles cannot be granted via the API. Granting the workforce role is also allowed with the bounty:create scope.
Headers
A unique key that makes this request safe to retry. See Idempotent requests.
Request body
Example request
{
"account_id": "biz_xxxxxxxxxxxxxx",
"email": "marcus@shinetime.example",
"role": "sales_manager",
"user_id": "user_xxxxxxxxxxxxxx"
}Response
Team member created.
Example response
{
"account_id": "biz_xxxxxxxxxxxxxx",
"created_at": "2026-01-01T12:00:00.000Z",
"email": "marcus@shinetime.example",
"id": "ausr_xxxxxxxxxxxxxx",
"role": "moderator",
"status": "joined",
"updated_at": "2026-01-01T12:00:00.000Z",
"user": {
"id": "user_xxxxxxxxxxxxxx",
"name": "Dana Whitfield",
"profile_picture": {
"url": "https://ui-avatars.com/api/"
},
"username": "danawhitfield"
}
}Changes
Changed in 7 of the 74 revisions of this API.29
- ●
added the new
partnerenum value to theresponse property for the response statusresponse-property-enum-value-added
- ○
added the new
partnerenum value to the request propertyrequest-property-enum-value-added
This revision also has 1 change that name no endpoint, such as unreferenced schemas being removed. See the revision's changelog
- ●
- ○
added the required property
to the response with the statusresponse-required-property-added
- ○
- ○
added the new
workforceenum value to the request propertyrequest-property-enum-value-added
- ○
- ●
added the new
workforceenum value to theresponse property for the response statusresponse-property-enum-value-added
- ○
added the non-success response with the status
response-non-success-status-added
- ●
- ○
added the optional property
/to the response with the statusresponse-optional-property-added
- ○
added the optional property
/to the response with the statusresponse-optional-property-added
This revision also has 9 changes that name no endpoint, such as unreferenced schemas being removed. See the revision's changelog
- ○
- ○
added the new optional request property
new-optional-request-property
- ○
the request property
became optionalrequest-property-became-optional
This revision also has 4 changes that name no endpoint, such as unreferenced schemas being removed. See the revision's changelog
- ○
- ○
endpoint added
endpoint-added
This revision also has 1 change that name no endpoint, such as unreferenced schemas being removed. See the revision's changelog
- ○
Of the 74 revisions, 1 has no diff computed.