Update Customer
Overview
You can update a customer by modifying its existing information or adding information for an optional field by using the POST method, as described below.
Resource Access
Production (api.ahrvo.network)
POST https://api.ahrvo.network/banking/us2/v1/customer/id/{id}
Staging (gateway.ahrvo.network)
POST https://gateway.ahrvo.network/banking/us2/v1/customer/id/{id}
Authentication
| Header | Description |
|---|---|
Authorization | Bearer {JWT token} |
x-api-key | Your API key |
Content-Type | application/json |
Path Parameters
| Parameter | Type | Description |
|---|---|---|
id | integer | Internal customer ID |
Arguments — Updatability Reference
| Attribute | Can be Updated? | Notes |
|---|---|---|
externalId | Conditional | Can only be set once — cannot be changed after initial assignment |
type | No | Customer type is immutable. Include it to identify the correct object but it cannot be changed. |
individual | Conditional | Sub-fields can be updated if the customer type is INDIVIDUAL |
business | Conditional | Sub-fields can be updated if the customer type is BUSINESS |
owners | Conditional | Sub-fields can be updated if the customer type is JOINT_TENANCY |
isPaperless | Yes | |
preferredCommunication | Yes | |
programAffiliate | No | Cannot be updated |
programAffiliate.id | — | |
metaData | Yes | Key-value pairs |
tags | Yes | Array of labels |
linkedDocument | Yes | Documents to link |
Example Requests
Update a Customer by Linking a Mailing Address
POST /banking/us2/v1/customer/id/4015210 HTTP/1.1
Host: api.ahrvo.network
Authorization: Bearer {placeholder("JWT token")}
x-api-key: {placeholder("your-api-key")}
Content-Type: application/json
{
"type": "INDIVIDUAL",
"individual": {
"mailingAddress": [
{
"addressLine1": "99sdf",
"city": "MHLI",
"state": "TN",
"zip": "37386",
"externalId": "MA221"
}
]
}
}
Example Response
HTTP Status: 204 No Content
Update Contact Information
POST /banking/us2/v1/customer/id/4015210 HTTP/1.1
Host: api.ahrvo.network
Authorization: Bearer {placeholder("JWT token")}
x-api-key: {placeholder("your-api-key")}
Content-Type: application/json
{
"type": "INDIVIDUAL",
"individual": {
"email": "updated.email@example.com",
"mobilePhone": "555-123-4567",
"homePhone": "555-987-6543"
}
}
Example Response
HTTP Status: 204 No Content
Update Paperless Preference
POST /banking/us2/v1/customer/id/4015210 HTTP/1.1
Host: api.ahrvo.network
Authorization: Bearer {placeholder("JWT token")}
x-api-key: {placeholder("your-api-key")}
Content-Type: application/json
{
"isPaperless": true
}
Example Response
HTTP Status: 204 No Content
Update Metadata and Tags
POST /banking/us2/v1/customer/id/4015210 HTTP/1.1
Host: api.ahrvo.network
Authorization: Bearer {placeholder("JWT token")}
x-api-key: {placeholder("your-api-key")}
Content-Type: application/json
{
"metaData": {
"tier": "premium",
"region": "west"
},
"tags": [
"VIP",
"high-volume"
]
}
Example Response
HTTP Status: 204 No Content
Update Business Customer Details
POST /banking/us2/v1/customer/id/4015210 HTTP/1.1
Host: api.ahrvo.network
Authorization: Bearer {placeholder("JWT token")}
x-api-key: {placeholder("your-api-key")}
Content-Type: application/json
{
"type": "BUSINESS",
"business": {
"doingBusinessAs": "New Trade Name",
"phone": "800-555-0199",
"website": "www.newdomain.com"
}
}
Example Response
HTTP Status: 204 No Content
Link a Document to a Customer
POST /banking/us2/v1/customer/id/4015210 HTTP/1.1
Host: api.ahrvo.network
Authorization: Bearer {placeholder("JWT token")}
x-api-key: {placeholder("your-api-key")}
Content-Type: application/json
{
"linkedDocument": [
{
"purpose": "Verification",
"document": {
"documentType": "ID_PROOF",
"name": "id_scan.pdf",
"base64EncodedContent": "JVBERi0xLjQKJe..."
}
}
]
}
Example Response
HTTP Status: 204 No Content
Important Notes
The type and programAffiliate fields cannot be updated. Including type in the request body is only necessary to indicate which conditional object (individual, business, owners) you are updating — the type itself will not change.
The externalId can be set once during creation or a subsequent update, but once assigned it cannot be modified.
You only need to include the fields you want to update. Fields that are not included in the request body will remain unchanged.
A successful update returns HTTP 204 No Content with no response body.