Skip to content

Create Team Member

POST
/team-members

Add someone to the roster.

This creates a DIRECTORY record, not a login. It does not invite anyone, grant any permission, or put them in the identity provider - a member created here can own a deal and be assigned a task, and cannot sign in.

Authorizations

Parameters

Header Parameters

X-Target-Org-Id
Any of:
string

Request Body required

Mirrors team_members.TeamMemberCreateRequest.

email is an EmailStr, as the app’s is. As a plain string a malformed address would pass this layer and fail the app model built inside the proxy - a bare ValidationError, which is a 500.

object
department
Any of:
string
<= 100 characters
email
Any of:
string format: email
linkedin_url
Any of:
string
name
required

Full name.

string
>= 1 characters <= 255 characters
phone
Any of:
string
<= 50 characters
title
Any of:
string
<= 255 characters

Responses

201

Successful Response

object
data
required

An open envelope for a single role, team, member or account record.

Open on purpose. The app’s own response models on this surface grow with the product - RoleResponse gained rep_limits and manages_role_slugs, TeamResponse gained channel counts and a campaign count - and a pinned mirror would SILENTLY DROP whatever it had not caught up on. A dropped permission in a role read is the worst possible kind of stale: it reads as “they do not have it”.

object
key
additional properties
any
pagination
Any of:
object
has_next
required

Whether there are more pages

boolean
limit
required

Items per page

integer
next_cursor
Any of:
string
notes
Any of:
Array<string>
page
required

Current page number (1-indexed)

integer
total
required

Total number of items

integer
total_available
Any of:
integer
total_is_lower_bound
Any of:
boolean

422

Validation Error

object
detail
Array<object>
object
loc
required
Array
msg
required
string
type
required
string