Contracting & Hierarchies API

List the carriers assigned to the calling customer

Returns the carriers assigned to the calling customer’s account as a token-paginated
collection, so the customer’s configuration can be read in one call. Each carrier carries its
type and status names inline. Results are scoped to the caller; another customer’s carriers are
never returned.
Note: updated_since filters on the carrier organization’s own updatedAt and does not reflect
assignment-only changes if the carrier record itself did not change.

get

Query Parameters

page_tokenstring

Opaque continuation token from a previous response’s page.nextToken. Omit for the first
page.

page_sizeinteger

Maximum number of items to return. Defaults to 25; values outside [1, 250] are rejected
with 400 (not clamped).

Default:25

>= 1<= 250

updated_sincestring(date-time)

Return only contracts modified at or after this RFC3339 UTC timestamp (inclusive). Modified
time tracks any column change, so “modified” does not necessarily mean a
business-meaningful change. Best used as a high-water mark for incremental sync: a pagination
run is not a point-in-time snapshot, so records updated mid-run may first appear on a later poll.

Example:2026-06-01T00:00:00Z

Response

application/json

A page of assigned carriers.

AssignedCarrierV2Page

A token-paginated page of assigned carriers (plain envelope, no HAL wrappers).

itemsarray[object]required

A carrier assigned to the calling customer’s account.

Show Child Parameters
pageobjectrequired

Pagination metadata for a V2 list response.

Show Child Parameters
 
application/json

List the products assigned to the calling customer

Returns the products assigned to the calling customer’s account as a token-paginated
collection, so the customer’s configuration can be read in one call. Each product carries its
line-of-business and submission-method names inline and its annualization options embedded.
Results are scoped to the caller; another customer’s products are never returned.
Note: updated_since filters on the product’s own updatedAt and does not reflect assignment-only
changes if the product record itself did not change.

get

Query Parameters

page_tokenstring

Opaque continuation token from a previous response’s page.nextToken. Omit for the first
page.

page_sizeinteger

Maximum number of items to return. Defaults to 25; values outside [1, 250] are rejected
with 400 (not clamped).

Default:25

>= 1<= 250

updated_sincestring(date-time)

Return only contracts modified at or after this RFC3339 UTC timestamp (inclusive). Modified
time tracks any column change, so “modified” does not necessarily mean a
business-meaningful change. Best used as a high-water mark for incremental sync: a pagination
run is not a point-in-time snapshot, so records updated mid-run may first appear on a later poll.

Example:2026-06-01T00:00:00Z

Response

application/json

A page of assigned products.

AssignedProductV2Page

A token-paginated page of assigned products (plain envelope, no HAL wrappers).

itemsarray[object]required

A product assigned to the calling customer’s account.

Show Child Parameters
pageobjectrequired

Pagination metadata for a V2 list response.

Show Child Parameters
 
application/json

List the commission levels assigned to the calling customer

Returns the commission levels assigned to the calling customer across all of their products as
a token-paginated collection, so the customer’s commission configuration can be read in one
call. Each row carries its product and carrier context. Results are scoped to the caller;
another customer’s commission levels are never returned.
Note: updated_since is based on the row’s modified_date (commission-level/product updates) and
does not reflect assignment-only changes if those records did not change.

get

Query Parameters

page_tokenstring

Opaque continuation token from a previous response’s page.nextToken. Omit for the first
page.

page_sizeinteger

Maximum number of items to return. Defaults to 25; values outside [1, 250] are rejected
with 400 (not clamped).

Default:25

>= 1<= 250

updated_sincestring(date-time)

Return only contracts modified at or after this RFC3339 UTC timestamp (inclusive). Modified
time tracks any column change, so “modified” does not necessarily mean a
business-meaningful change. Best used as a high-water mark for incremental sync: a pagination
run is not a point-in-time snapshot, so records updated mid-run may first appear on a later poll.

Example:2026-06-01T00:00:00Z

Response

application/json

A page of assigned commission levels.

AssignedCommissionLevelV2Page

A token-paginated page of assigned commission levels (plain envelope, no HAL wrappers).

itemsarray[object]required

A commission level assigned to the calling customer, with its product and carrier context.

Show Child Parameters
pageobjectrequired

Pagination metadata for a V2 list response.

Show Child Parameters
 
application/json

Hierarchies

Read-only views of an organization’s contract-assignment hierarchy and the candidates eligible to be selected as upline placements.

List the hierarchy nodes for an organization

Returns the organization’s contract-assignment hierarchy as a token-paginated flat list of
nodes. The node key is contractAssignmentId — the stable identity of a producer’s
placement for a product — and tree linkage is uplineContractAssignmentId (null on root
nodes). Node keys correlate with the hierarchy.producer.* webhook events, which link
nodes the same way. Pass as_of to view the hierarchy as it existed on a historical date;
omit it for the current state. Results are scoped to the caller’s organization(s).

get

Query Parameters

as_ofstring(date)

Return the hierarchy as it existed on this date (yyyy-MM-dd). Omit for the current
state.

Example:2026-06-22

page_tokenstring

Opaque continuation token from a previous response’s page.nextToken. Omit for the first
page.

page_sizeinteger

Maximum number of items to return. Defaults to 25; values outside [1, 250] are rejected
with 400 (not clamped).

Default:25

>= 1<= 250

Path Parameters

organizationIdstring(uuid)required

The organization whose hierarchy to list.

Response

application/json

A page of hierarchy nodes.

HierarchyNodeV2Page

A token-paginated page of hierarchy nodes (plain envelope, no HAL wrappers).

itemsarray[object]required

A node in an organization’s contract-assignment hierarchy, decoupled from the internal
Contracting domain models. The node key is contractAssignmentId; uplineContractAssignmentId
links to the parent node and is null on root nodes. Reference names are inlined next to
their ids. active is computed over the tree — a node is inactive when its own status is
inactive or any node above it is. A node represents either an individual (type = AGENT,
identified by personId) or a firm (type = FIRM, identified by firmId); the
identifier that does not apply to the node’s kind is null.

Show Child Parameters
pageobjectrequired

Pagination metadata for a V2 list response.

Show Child Parameters
 
application/json