Client Group
This API is for the Client Group resource of the Advisor API on the wealth.com platform. It allows connected systems to programmatically manage client groups within a top account, as well as the contact, asset, and document resources assigned to each client group.
A client group represents a household or reporting unit within a top account (a "family"). Each client group has a name, your system's external_id, and one or two assigned contacts (typically the primary client and, when applicable, their spouse or partner). Contacts, assets, and documents that belong to a client group are managed through the Client Group Resources sub-resource described later on this page.
All client group endpoints require the same Bearer token authentication described in Authentication.
Common Identifiers And Input Rules
- Name
wid- Type
- string
- Description
Wealth.com top account identifier. Passed in the URL path for every client group endpoint.
- Name
id- Type
- string
- Description
Wealth.com client group identifier. Returned by create, list, and get. The same value is used as the
client_group_idpath parameter for get, update, delete, and the resource endpoints.
- Name
external_id- Type
- string (Max 255)
- Description
Your system's identifier for the client group. Required on create. Once set, it cannot be changed.
- Name
name- Type
- string (Max 255)
- Description
Display name for the client group. Required on create.
- Name
assigned_contacts- Type
- string array
- Description
Array of one or two contact
external_idvalues that are the assigned contacts of the client group. Each value must reference an existing contact in the same top account. Values must be unique within the array, non-empty, and at most 255 characters each. Required on create.
List Client Groups
The List Client Groups call expects a top account wid to be passed as part of the URL. It returns the client groups in that top account.
Request
curl --location --request GET 'https://advisor-api.wealth.com/v2/top-accounts/786bb91c-35ec-49bb-bc28-1d2930d7db6a/client-groups/' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer xxxxxxxxxxxxx'
HTTP Status Codes
- Name
200- Type
- Description
- Success - Client groups retrieved successfully
- Name
400- Type
- Description
- Bad Request - Missing required parameter
wid
- Name
403- Type
- Description
- Forbidden - Access denied
- Name
404- Type
- Description
- Not Found - Top account not found
- Name
500- Type
- Description
- Internal Server Error - Unexpected server-side failure
Error Messages
- 400 Bad Request: "Missing required top-account path parameter"
- 403 Forbidden: "Access Denied"
- 404 Not Found: "Container not found"
- 500 Internal Server Error: Unexpected server-side failure
List Client Groups Response Object
- Name
client_groups- Type
- array
- Description
An array of client group objects. Each item uses the same field names as the Get Client Group response object.
Response
{
"client_groups": [
{
"id": "1a098c90-8f7c-4000-b12c-9299bc1ade0e",
"external_id": "client-group-test-01",
"name": "Doe Family Group",
"assigned_contacts": [
"contact-card-test-sep-18-01",
"contact-card-test-sep-18-02"
]
},
{
"id": "fbfece57-6215-449e-9f7a-7b49a70e9a4b",
"external_id": "client-group-test-02",
"name": "John Smith",
"assigned_contacts": [
"contact-card-test-sep-19-01"
]
}
]
}
Add Client Group
The Add Client Group call expects a top account wid in the URL and a JSON request body describing the new client group. The body must include external_id, name, and assigned_contacts.
Note: if name is set to DEFAULT, the client group will have access to all resources in the containing top account, and adding resources via the API is not required.
Add Client Group Request Object
- Name
external_id- Type
- string (Max 255)
- Description
Your system's identifier for the client group. Must be unique within the top account.
- Name
name- Type
- string (Max 255)
- Description
Display name for the client group.
- Name
assigned_contacts- Type
- string array
- Description
Array of one or two contact
external_idvalues. See Common Identifiers And Input Rules above.
Request
curl --location 'https://advisor-api.wealth.com/v2/top-accounts/786bb91c-35ec-49bb-bc28-1d2930d7db6a/client-groups/' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer xxxxxxxxxxxxx' \
--data-raw '{
"external_id": "client-group-test-01",
"name": "Doe Family Group",
"assigned_contacts": [
"contact-card-test-sep-18-01",
"contact-card-test-sep-18-02"
]
}'
HTTP Status Codes
- Name
200- Type
- Description
- Success - Client group created successfully
- Name
400- Type
- Description
- Bad Request - Missing required parameters or invalid
assigned_contacts
- Name
403- Type
- Description
- Forbidden - Access denied
- Name
404- Type
- Description
- Not Found - Top account not found
- Name
500- Type
- Description
- Internal Server Error - Unexpected server-side failure
Error Messages
- 400 Bad Request: "Missing required parameters", "assigned_contacts must be an array", "assigned_contacts must contain 1 or 2 contact card external_ids", "assigned_contacts[i] must be a non-empty string", "assigned_contacts[i] exceeds maximum length of 255 characters", "assigned_contacts[i] duplicates contact card external_id: ...", or "assigned_contacts[i] references non-existing contact card external_id: ..."
- 403 Forbidden: "Access Denied"
- 404 Not Found: "Container not found"
- 500 Internal Server Error: Unexpected server-side failure
Add Client Group Response Object
- Name
id- Type
- string
- Description
Wealth.com identifier for the newly created client group.
- Name
external_id- Type
- string (Max 255)
- Description
Your system's identifier for the client group.
- Name
name- Type
- string (Max 255)
- Description
Display name for the client group.
- Name
assigned_contacts- Type
- string array
- Description
The assigned contact
external_idvalues, echoed back as supplied in the request.
Response
{
"id": "1a098c90-8f7c-4000-b12c-9299bc1ade0e",
"external_id": "client-group-test-01",
"name": "Doe Family Group",
"assigned_contacts": [
"contact-card-test-sep-18-01",
"contact-card-test-sep-18-02"
]
}
Get Client Group
The Get Client Group call expects a top account wid and a client_group_id to be passed as part of the URL. The client_group_id is the Wealth.com id returned by the create or list calls.
Request
curl --location --request GET 'https://advisor-api.wealth.com/v2/top-accounts/786bb91c-35ec-49bb-bc28-1d2930d7db6a/client-groups/1a098c90-8f7c-4000-b12c-9299bc1ade0e' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer xxxxxxxxxxxxx'
HTTP Status Codes
- Name
200- Type
- Description
- Success - Client group retrieved successfully
- Name
400- Type
- Description
- Bad Request - Missing required parameters
widorclient_group_id
- Name
403- Type
- Description
- Forbidden - Access denied
- Name
404- Type
- Description
- Not Found - Top account or client group not found
- Name
500- Type
- Description
- Internal Server Error - Unexpected server-side failure
Error Messages
- 400 Bad Request: "Missing required parameters" or "Missing required top-account path parameter"
- 403 Forbidden: "Access Denied"
- 404 Not Found: "Container not found" or "Client group not found"
- 500 Internal Server Error: Unexpected server-side failure
Get Client Group Response Object
- Name
id- Type
- string
- Description
Wealth.com identifier for the client group.
- Name
external_id- Type
- string (Max 255)
- Description
Your system's identifier for the client group.
- Name
name- Type
- string (Max 255)
- Description
Display name for the client group.
- Name
assigned_contacts- Type
- string array
- Description
Contact card
external_idvalues currently assigned to the client group.
Response
{
"id": "1a098c90-8f7c-4000-b12c-9299bc1ade0e",
"external_id": "client-group-test-01",
"name": "Doe Family Group",
"assigned_contacts": [
"contact-card-test-sep-18-01",
"contact-card-test-sep-18-02"
]
}
Update Client Group
The Update Client Group call expects a top account wid and a client_group_id in the URL. The request body must include at least one of name, external_id, or assigned_contacts. Supplying assigned_contacts fully replaces the existing assigned contacts and must still contain one or two contact external_id values. external_id can only be supplied when the client group does not already have one assigned.
Update Client Group Request Object
- Name
name- Type
- string (Max 255), optional
- Description
New display name for the client group.
- Name
external_id- Type
- string (Max 255), optional
- Description
Can be supplied only when the client group does not already have an
external_id. Once set, it cannot be changed.
- Name
assigned_contacts- Type
- string array, optional
- Description
New list of one or two contact
external_idvalues. Replaces the existing assigned contacts. Each value must reference an existing contact in the same top account.
Request
curl --location --request PUT 'https://advisor-api.wealth.com/v2/top-accounts/786bb91c-35ec-49bb-bc28-1d2930d7db6a/client-groups/1a098c90-8f7c-4000-b12c-9299bc1ade0e' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer xxxxxxxxxxxxx' \
--data-raw '{
"name": "Updated Doe Family Group",
"assigned_contacts": [
"contact-card-test-sep-18-01"
]
}'
HTTP Status Codes
- Name
200- Type
- Description
- Success - Client group updated successfully
- Name
400- Type
- Description
- Bad Request - Missing required parameters, no update fields supplied, immutable
external_idupdate, or invalidassigned_contacts
- Name
403- Type
- Description
- Forbidden - Access denied
- Name
404- Type
- Description
- Not Found - Top account or client group not found
- Name
500- Type
- Description
- Internal Server Error - Unexpected server-side failure
Error Messages
- 400 Bad Request: "At least one of name, external_id, or assigned_contacts must be provided", "external_id cannot be updated once set", or any of the
assigned_contactsvalidation messages listed under Add Client Group - 403 Forbidden: "Access Denied"
- 404 Not Found: "Container not found" or "Client group not found"
- 500 Internal Server Error: Unexpected server-side failure
Update Client Group Response Object
- Name
id- Type
- string
- Description
Wealth.com identifier for the client group.
- Name
external_id- Type
- string (Max 255)
- Description
Your system's identifier for the client group after the update.
- Name
name- Type
- string (Max 255)
- Description
Display name for the client group after the update.
- Name
assigned_contacts- Type
- string array
- Description
Assigned contacts after the update.
Response
{
"id": "1a098c90-8f7c-4000-b12c-9299bc1ade0e",
"external_id": "client-group-test-01",
"name": "Updated Doe Family Group",
"assigned_contacts": [
"contact-card-test-sep-18-01"
]
}
Delete Client Group
The Delete Client Group call expects a top account wid and a client_group_id to be passed as part of the URL.
Request
curl --location --request DELETE 'https://advisor-api.wealth.com/v2/top-accounts/786bb91c-35ec-49bb-bc28-1d2930d7db6a/client-groups/1a098c90-8f7c-4000-b12c-9299bc1ade0e' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer xxxxxxxxxxxxx'
HTTP Status Codes
- Name
200- Type
- Description
- Success - Client group deleted successfully
- Name
400- Type
- Description
- Bad Request - Missing required parameters
widorclient_group_id
- Name
403- Type
- Description
- Forbidden - Access denied
- Name
404- Type
- Description
- Not Found - Top account or client group not found
- Name
500- Type
- Description
- Internal Server Error - Unexpected server-side failure
Error Messages
- 400 Bad Request: "Missing required wid or client_group_id path parameter"
- 403 Forbidden: "Access Denied"
- 404 Not Found: "Container not found" or "Client group not found"
- 500 Internal Server Error: Unexpected server-side failure
Delete Client Group Response Object
- Name
id- Type
- string
- Description
Wealth.com identifier of the deleted client group.
Response
{
"id": "1a098c90-8f7c-4000-b12c-9299bc1ade0e"
}
Client Group Resources
A client group can hold references to contacts, assets, and documents that belong to it. Each reference is a Client Group Resource and is created, listed, retrieved, or deleted under the parent client group.
Each resource has a type, a target_id that points to an existing contact, asset, or document in the same top account, and your system's external_id for the resource record.
Resource Types And target_id
The type field of a Client Group Resource determines what target_id must reference:
contact-target_idmust equal theexternal_idof an existing contact in the same top account.asset-target_idmust equal theexternal_idof an existing asset in the same top account.document-target_idmust equal thevault_idof an existing document in the same top account.
The {resource_id} path parameter (used by Get Client Group Resource and Delete Client Group Resource) accepts either the Wealth.com id returned for the resource or your external_id for the resource.
Common Resource Identifiers
- Name
id- Type
- string
- Description
Wealth.com identifier for the resource. Returned by create, list, and get.
- Name
external_id- Type
- string (Max 255)
- Description
Your system's identifier for the resource. Required on create.
- Name
type- Type
- enum
- Description
One of
contact,asset, ordocument. Required on create.
- Name
target_id- Type
- string (Max 255)
- Description
Identifier of the underlying contact, asset, or document. See Resource Types And
target_idabove. Required on create.
List Client Group Resources
The List Client Group Resources call expects a top account wid and a client_group_id to be passed as part of the URL. It returns the contact, asset, and document resources currently assigned to the client group.
Request
curl --location --request GET 'https://advisor-api.wealth.com/v2/top-accounts/786bb91c-35ec-49bb-bc28-1d2930d7db6a/client-groups/1a098c90-8f7c-4000-b12c-9299bc1ade0e/resources/' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer xxxxxxxxxxxxx'
HTTP Status Codes
- Name
200- Type
- Description
- Success - Resources retrieved successfully
- Name
400- Type
- Description
- Bad Request - Missing required parameters
- Name
403- Type
- Description
- Forbidden - Access denied
- Name
404- Type
- Description
- Not Found - Top account or client group not found
- Name
500- Type
- Description
- Internal Server Error - Unexpected server-side failure
Error Messages
- 400 Bad Request: "Missing required target or client_group_id path parameter"
- 403 Forbidden: "Access Denied"
- 404 Not Found: "Container not found" or "Client group not found"
- 500 Internal Server Error: Unexpected server-side failure
List Client Group Resources Response Object
- Name
resources- Type
- array
- Description
An array of resource objects. Each item uses the same field names as the Get Client Group Resource response object.
Response
{
"resources": [
{
"id": "8b1f1b8c-3b06-4d8a-9e83-0bb2b1f0a8a1",
"external_id": "client-group-resource-test-01",
"type": "contact",
"target_id": "contact-card-test-sep-18-01"
},
{
"id": "0b2a8c0a-9d5b-4f8c-bd5a-9c2a7e2c0a02",
"external_id": "client-group-resource-test-02",
"type": "asset",
"target_id": "asset-test-01"
},
{
"id": "3f6c1d7e-2a4b-4c5d-8e9f-1a2b3c4d5e6f",
"external_id": "client-group-resource-test-03",
"type": "document",
"target_id": "53ac20e4-8287-4bd7-b7e7-8f09b056325f"
}
]
}
Add Client Group Resource
The Add Client Group Resource call expects a top account wid and a client_group_id in the URL and a JSON request body describing the new resource. The body must include type, target_id, and external_id.
Add Client Group Resource Request Object
- Name
type- Type
- enum
- Description
One of
contact,asset, ordocument.
- Name
target_id- Type
- string (Max 255)
- Description
Identifier of the underlying contact, asset, or document. See Resource Types And
target_idabove.
- Name
external_id- Type
- string (Max 255)
- Description
Your system's identifier for the resource record.
Request
curl --location 'https://advisor-api.wealth.com/v2/top-accounts/786bb91c-35ec-49bb-bc28-1d2930d7db6a/client-groups/1a098c90-8f7c-4000-b12c-9299bc1ade0e/resources/' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer xxxxxxxxxxxxx' \
--data-raw '{
"type": "contact",
"target_id": "contact-card-test-sep-18-01",
"external_id": "client-group-resource-test-01"
}'
HTTP Status Codes
- Name
200- Type
- Description
- Success - Resource created successfully
- Name
400- Type
- Description
- Bad Request - Missing required parameters or
target_iddoes not exist in the same top account
- Name
403- Type
- Description
- Forbidden - Access denied
- Name
404- Type
- Description
- Not Found - Top account or client group not found
- Name
500- Type
- Description
- Internal Server Error - Unexpected server-side failure
Error Messages
- 400 Bad Request: "Missing required parameters", "contact target_id not found: ...", or "asset target_id not found: ..."
- 403 Forbidden: "Access Denied"
- 404 Not Found: "Container not found" or "Client group not found"
- 500 Internal Server Error: Unexpected server-side failure
Add Client Group Resource Response Object
- Name
id- Type
- string
- Description
Wealth.com identifier for the newly created resource.
- Name
external_id- Type
- string (Max 255)
- Description
Your system's identifier for the resource.
- Name
type- Type
- enum
- Description
One of
contact,asset, ordocument.
- Name
target_id- Type
- string (Max 255)
- Description
The
target_idechoed back as supplied in the request.
Response
{
"id": "8b1f1b8c-3b06-4d8a-9e83-0bb2b1f0a8a1",
"external_id": "client-group-resource-test-01",
"type": "contact",
"target_id": "contact-card-test-sep-18-01"
}
Get Client Group Resource
The Get Client Group Resource call expects a top account wid, a client_group_id, and a resource_id to be passed as part of the URL. The resource_id value can be either the Wealth.com id returned by create or list, or your external_id for the resource.
Request
curl --location --request GET 'https://advisor-api.wealth.com/v2/top-accounts/786bb91c-35ec-49bb-bc28-1d2930d7db6a/client-groups/1a098c90-8f7c-4000-b12c-9299bc1ade0e/resources/client-group-resource-test-01' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer xxxxxxxxxxxxx'
HTTP Status Codes
- Name
200- Type
- Description
- Success - Resource retrieved successfully
- Name
400- Type
- Description
- Bad Request - Missing required parameters
- Name
403- Type
- Description
- Forbidden - Access denied
- Name
404- Type
- Description
- Not Found - Top account, client group, or resource not found
- Name
500- Type
- Description
- Internal Server Error - Unexpected server-side failure
Error Messages
- 400 Bad Request: "Missing required parameters"
- 403 Forbidden: "Access Denied"
- 404 Not Found: "Container not found", "Client group not found", or "Client group resource not found"
- 500 Internal Server Error: Unexpected server-side failure
Get Client Group Resource Response Object
- Name
id- Type
- string
- Description
Wealth.com identifier for the resource.
- Name
external_id- Type
- string (Max 255), optional
- Description
Your system's identifier for the resource. Returned when present.
- Name
type- Type
- enum
- Description
One of
contact,asset, ordocument.
- Name
target_id- Type
- string (Max 255)
- Description
Identifier of the underlying contact, asset, or document. See Resource Types And
target_idabove.
Response
{
"id": "8b1f1b8c-3b06-4d8a-9e83-0bb2b1f0a8a1",
"external_id": "client-group-resource-test-01",
"type": "contact",
"target_id": "contact-card-test-sep-18-01"
}
Delete Client Group Resource
The Delete Client Group Resource call expects a top account wid, a client_group_id, and a resource_id to be passed as part of the URL. The resource_id value can be either the Wealth.com id returned by create or list, or your external_id for the resource.
Request
curl --location --request DELETE 'https://advisor-api.wealth.com/v2/top-accounts/786bb91c-35ec-49bb-bc28-1d2930d7db6a/client-groups/1a098c90-8f7c-4000-b12c-9299bc1ade0e/resources/client-group-resource-test-01' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer xxxxxxxxxxxxx'
HTTP Status Codes
- Name
200- Type
- Description
- Success - Resource deleted successfully
- Name
400- Type
- Description
- Bad Request - Missing required parameters
- Name
403- Type
- Description
- Forbidden - Access denied
- Name
404- Type
- Description
- Not Found - Top account, client group, or resource not found
- Name
500- Type
- Description
- Internal Server Error - Unexpected server-side failure
Error Messages
- 400 Bad Request: "Missing required wid, client_group_id, or resource_id path parameter"
- 403 Forbidden: "Access Denied"
- 404 Not Found: "Container not found", "Client group not found", or "Client group resource not found"
- 500 Internal Server Error: Unexpected server-side failure
Delete Client Group Resource Response Object
- Name
id- Type
- string
- Description
Wealth.com identifier of the deleted resource.
Response
{
"id": "8b1f1b8c-3b06-4d8a-9e83-0bb2b1f0a8a1"
}