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_id path 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_id values 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.


GETadvisor-api.wealth.com/v2/top-accounts/{wid}/client-groups/

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

GET
advisor-api.wealth.com/v2/top-accounts/{wid}/client-groups/
  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"
           ]
       }
   ]
}

POSTadvisor-api.wealth.com/v2/top-accounts/{wid}/client-groups/

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_id values. See Common Identifiers And Input Rules above.

Request

POST
advisor-api.wealth.com/v2/top-accounts/{wid}/client-groups/
  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_id values, 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"
   ]
}

GETadvisor-api.wealth.com/v2/top-accounts/{wid}/client-groups/{client_group_id}

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

GET
advisor-api.wealth.com/v2/top-accounts/{wid}/client-groups/{client_group_id}
  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 wid or client_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_id values 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"
   ]
}

PUTadvisor-api.wealth.com/v2/top-accounts/{wid}/client-groups/{client_group_id}

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_id values. Replaces the existing assigned contacts. Each value must reference an existing contact in the same top account.

Request

PUT
advisor-api.wealth.com/v2/top-accounts/{wid}/client-groups/{client_group_id}
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_id update, or invalid assigned_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_contacts validation 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"
   ]
}

DELETEadvisor-api.wealth.com/v2/top-accounts/{wid}/client-groups/{client_group_id}

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

DELETE
advisor-api.wealth.com/v2/top-accounts/{wid}/client-groups/{client_group_id}
  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 wid or client_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_id must equal the external_id of an existing contact in the same top account.
  • asset - target_id must equal the external_id of an existing asset in the same top account.
  • document - target_id must equal the vault_id of 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, or document. Required on create.

  • Name
    target_id
    Type
    string (Max 255)
    Description

    Identifier of the underlying contact, asset, or document. See Resource Types And target_id above. Required on create.


GETadvisor-api.wealth.com/v2/top-accounts/{wid}/client-groups/{client_group_id}/resources/

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

GET
advisor-api.wealth.com/v2/top-accounts/{wid}/client-groups/{client_group_id}/resources/
  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"
       }
   ]
}

POSTadvisor-api.wealth.com/v2/top-accounts/{wid}/client-groups/{client_group_id}/resources/

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, or document.

  • Name
    target_id
    Type
    string (Max 255)
    Description

    Identifier of the underlying contact, asset, or document. See Resource Types And target_id above.

  • Name
    external_id
    Type
    string (Max 255)
    Description

    Your system's identifier for the resource record.

Request

POST
advisor-api.wealth.com/v2/top-accounts/{wid}/client-groups/{client_group_id}/resources/
  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_id does 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, or document.

  • Name
    target_id
    Type
    string (Max 255)
    Description

    The target_id echoed 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"
}

GETadvisor-api.wealth.com/v2/top-accounts/{wid}/client-groups/{client_group_id}/resources/{resource_id}

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

GET
advisor-api.wealth.com/v2/top-accounts/{wid}/client-groups/{client_group_id}/resources/{resource_id}
  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, or document.

  • Name
    target_id
    Type
    string (Max 255)
    Description

    Identifier of the underlying contact, asset, or document. See Resource Types And target_id above.

Response

{
   "id": "8b1f1b8c-3b06-4d8a-9e83-0bb2b1f0a8a1",
   "external_id": "client-group-resource-test-01",
   "type": "contact",
   "target_id": "contact-card-test-sep-18-01"
}

DELETEadvisor-api.wealth.com/v2/top-accounts/{wid}/client-groups/{client_group_id}/resources/{resource_id}

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

DELETE
advisor-api.wealth.com/v2/top-accounts/{wid}/client-groups/{client_group_id}/resources/{resource_id}
  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"
}