Client-generated UUID used to deduplicate retried requests. When provided, the server caches the first successful response for this key and returns it for any subsequent request with the same key from the same client, without re-processing.
Persons
Operations for managing person identities
Create a person
Creates a new producer identity and associates them with the authenticated customer. The new person is immediately visible to the caller’s organization.
When sendInvite is omitted or false, the person is created without sending an email invitation. Set sendInvite: true to trigger the same invite email as the V1 ?sendInvite=true path.
Returns 400 when required fields are missing or field values fail validation.
Headers
Body
application/json
Body
CreatePersonRequest
Fields for creating a new person. firstName, lastName, and primaryEmail are required. sendInvite defaults to false; set it to true to trigger an email invitation. Internal-only fields (customer ID, intake ID) are not accepted.
Example:Jane
Example:Smith
<= 100 characters
The person’s honorific title.
Allowed values:DRMRMRSMSMISS
Example:MS
The person’s name suffix.
Allowed values:JRSRIIIIIIOBEMBEBSCJPGM
Example:JR
The person’s gender.
Allowed values:MALEFEMALE
Example:FEMALE
Example:jane.smith@example.com
National Producer Number. Must start with a non-zero digit and contain only digits.
Match pattern:^[1-9][0-9]*$
<= 12 characters
FINRA CRD number. Must contain only digits.
Match pattern:^[0-9]+$
<= 11 characters
Social Security Number. Must be exactly 9 digits.
Match pattern:^[0-9]*$
>= 9 characters<= 9 characters
When true, sends an email invitation to the person. Defaults to false.
Default:false
Response
application/json
Response
Person created successfully.
PersonV2
Customer-facing producer identity. SSN is masked — only the last four digits are present via ssnLast4. The full unmasked SSN is available only via GET /v2/persons/{personId}/ssn.
The unique identifier of the person.
Example:550e8400-e29b-41d4-a716-446655440000
The person’s honorific title.
Allowed values:DRMRMRSMSMISS
Example:MS
The person’s first name.
Example:Jane
The name the person prefers to be addressed by, when different from their legal first name.
Example:Janey
The person’s middle name.
Example:Quincy
The person’s last name.
Example:Smith
The person’s name suffix.
Allowed values:JRSRIIIIIIOBEMBEBSCJPGM
Example:JR
The person’s primary contact email address.
Example:jane.smith@example.com
The person’s secondary contact email address.
Example:jane.alt@example.com
The person’s date of birth (YYYY-MM-DD).
Example:1990-05-15
The person’s gender.
Allowed values:MALEFEMALE
Example:FEMALE
The person’s country of citizenship.
Example:US
The person’s state of residence.
Example:CO
Whether the person is a United States citizen.
Example:true
Whether the person is authorized to work in the United States.
Example:true
Whether the person is married.
Example:false
National Producer Number.
Example:12345678
Whether the person’s NPN has been verified against NIPR.
The person’s FINRA Central Registration Depository (CRD) number.
Example:1234567
Last four digits of the Social Security Number. Full SSN available only via GET /v2/persons/{personId}/ssn.
Example:6789
RFC3339 timestamp when the person record was created.
Example:2026-01-15T10:30:00Z
RFC3339 timestamp of the most recent modification.
Example:2026-06-01T14:22:00Z
Authentication
Headers
Body
List persons
Returns persons paginated by opaque continuation token, ordered by (modifiedDate, id) ascending. Supply updated_since to fetch only records modified at or after a given timestamp, or firm_id to restrict results to persons associated with a specific firm.
Returns 404 if firm_id is supplied but is not owned by your organization. Returns 401 when the request carries no token and 403 when the token lacks the required scope.
Query Parameters
Opaque continuation token returned by the previous response’s page.nextToken. Omit on the first request. Format is server-controlled and may change without an API version bump.
Requested number of items in the response. Defaults to 25 when omitted; values outside [1, 250] are rejected with 400 (not clamped). The actual size returned is reflected in page.size and may be smaller (last page or empty result).
Default:25
>= 1<= 250
RFC3339 UTC timestamp (e.g. 2026-06-01T00:00:00Z). When supplied, filters to persons whose record was modified at or after this instant (inclusive).
Example:2026-06-01T00:00:00Z
UUID of a firm. When supplied, restricts the result to persons associated with that firm. Returns 404 if the firm is not visible to the authenticated customer (never 403, so firm existence is not leaked across customer boundaries).
Example:550e8400-e29b-41d4-a716-446655440000
Response
application/json
Response
A page of persons.
A single person row returned by GET /v2/persons. Carries the person’s core identity fields. Related resources such as addresses, phones, employments, and licenses are not included here — retrieve them via the single-resource and dedicated collection endpoints.
Show Child Parameters
Page metadata for a token-based list response.
Show Child Parameters
Authentication
Query Parameters
Get a person by ID
Returns the customer-facing identity for the specified person. The person must be owned by the authenticated customer. SSN is masked — only the last four digits are present via ssnLast4. The full unmasked SSN is available only via GET /v2/persons/{personId}/ssn.
Returns 404 if the person does not exist or is not visible to the authenticated customer.
Path Parameters
ID of the person
Response
application/json
Response
Person retrieved successfully.
PersonV2
Customer-facing producer identity. SSN is masked — only the last four digits are present via ssnLast4. The full unmasked SSN is available only via GET /v2/persons/{personId}/ssn.
The unique identifier of the person.
Example:550e8400-e29b-41d4-a716-446655440000
The person’s honorific title.
Allowed values:DRMRMRSMSMISS
Example:MS
The person’s first name.
Example:Jane
The name the person prefers to be addressed by, when different from their legal first name.
Example:Janey
The person’s middle name.
Example:Quincy
The person’s last name.
Example:Smith
The person’s name suffix.
Allowed values:JRSRIIIIIIOBEMBEBSCJPGM
Example:JR
The person’s primary contact email address.
Example:jane.smith@example.com
The person’s secondary contact email address.
Example:jane.alt@example.com
The person’s date of birth (YYYY-MM-DD).
Example:1990-05-15
The person’s gender.
Allowed values:MALEFEMALE
Example:FEMALE
The person’s country of citizenship.
Example:US
The person’s state of residence.
Example:CO
Whether the person is a United States citizen.
Example:true
Whether the person is authorized to work in the United States.
Example:true
Whether the person is married.
Example:false
National Producer Number.
Example:12345678
Whether the person’s NPN has been verified against NIPR.
The person’s FINRA Central Registration Depository (CRD) number.
Example:1234567
Last four digits of the Social Security Number. Full SSN available only via GET /v2/persons/{personId}/ssn.
Example:6789
RFC3339 timestamp when the person record was created.
Example:2026-01-15T10:30:00Z
RFC3339 timestamp of the most recent modification.
Example:2026-06-01T14:22:00Z
Authentication
Path Parameters
Update a person
Partially updates the specified person’s identity fields. Only the fields present in the request body are applied — omitted fields retain their existing values. The person must be owned by the authenticated customer.
Returns 404 if the person does not exist or is not visible to the authenticated customer (cross-customer access returns 404, not 403).
Path Parameters
ID of the person
Body
application/json
Body
UpdatePersonRequest
Fields to apply to a person. Only non-null fields are applied — omitted or null fields leave the stored value untouched (partial update). firstName and lastName are required.
Example:Grace
Example:Hopper
<= 100 characters
The person’s honorific title.
Allowed values:DRMRMRSMSMISS
Example:MS
The person’s name suffix.
Allowed values:JRSRIIIIIIOBEMBEBSCJPGM
Example:JR
The person’s gender.
Allowed values:MALEFEMALE
Example:FEMALE
National Producer Number. Must start with a non-zero digit and contain only digits.
Match pattern:^[1-9][0-9]*$
<= 12 characters
FINRA CRD number. Must contain only digits.
Match pattern:^[0-9]+$
<= 11 characters
Social Security Number. Must be exactly 9 digits.
Match pattern:^[0-9]*$
>= 9 characters<= 9 characters
Response
application/json
Response
Person updated successfully.
PersonV2
Customer-facing producer identity. SSN is masked — only the last four digits are present via ssnLast4. The full unmasked SSN is available only via GET /v2/persons/{personId}/ssn.
The unique identifier of the person.
Example:550e8400-e29b-41d4-a716-446655440000
The person’s honorific title.
Allowed values:DRMRMRSMSMISS
Example:MS
The person’s first name.
Example:Jane
The name the person prefers to be addressed by, when different from their legal first name.
Example:Janey
The person’s middle name.
Example:Quincy
The person’s last name.
Example:Smith
The person’s name suffix.
Allowed values:JRSRIIIIIIOBEMBEBSCJPGM
Example:JR
The person’s primary contact email address.
Example:jane.smith@example.com
The person’s secondary contact email address.
Example:jane.alt@example.com
The person’s date of birth (YYYY-MM-DD).
Example:1990-05-15
The person’s gender.
Allowed values:MALEFEMALE
Example:FEMALE
The person’s country of citizenship.
Example:US
The person’s state of residence.
Example:CO
Whether the person is a United States citizen.
Example:true
Whether the person is authorized to work in the United States.
Example:true
Whether the person is married.
Example:false
National Producer Number.
Example:12345678
Whether the person’s NPN has been verified against NIPR.
The person’s FINRA Central Registration Depository (CRD) number.
Example:1234567
Last four digits of the Social Security Number. Full SSN available only via GET /v2/persons/{personId}/ssn.
Example:6789
RFC3339 timestamp when the person record was created.
Example:2026-01-15T10:30:00Z
RFC3339 timestamp of the most recent modification.
Example:2026-06-01T14:22:00Z