curl --request PATCH \
--url https://api.example.com/contacts/{contactId} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{}'import requests
url = "https://api.example.com/contacts/{contactId}"
payload = {}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({})
};
fetch('https://api.example.com/contacts/{contactId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"id": "ct_9f2c1ab84d7e4f1fa3c65b0e7d9a2c41",
"name": "<string>",
"isExternal": true,
"createdAt": "2023-11-07T05:31:56Z",
"icon": "<string>",
"lastUsedAt": "2023-11-07T05:31:56Z",
"email": "<string>",
"address": {
"streetAddress": "<string>",
"addressLine2": "<string>",
"city": "<string>",
"state": "<string>",
"country": "AF",
"zip": "<string>"
},
"bank": {
"method": "<string>",
"currency": "<string>",
"fields": {
"iban": "<string>",
"bic": "<string>",
"accountNumber": "<string>",
"routingNumber": "<string>",
"pixKey": "<string>",
"pixKeyType": "phone",
"paymentKey": "<string>",
"financialInstitutionId": "<string>",
"branchNumber": "<string>",
"accountKind": "checking",
"phoneNumber": "<string>"
},
"holder": {
"type": "individual",
"firstName": "<string>",
"lastName": "<string>",
"businessName": "<string>",
"address": {
"streetAddress": "<string>",
"addressLine2": "<string>",
"city": "<string>",
"state": "<string>",
"country": "AF",
"zip": "<string>"
},
"idType": "passport",
"idNumber": "<string>",
"taxId": "<string>",
"nationality": "<string>"
},
"state": "active",
"bankName": "<string>",
"bankAddress": {
"addressLine1": "<string>",
"city": "<string>",
"state": "<string>",
"postalCode": "<string>",
"country": "<string>"
},
"intermediaryBank": {
"bic": "<string>",
"name": "<string>",
"address": {
"addressLine1": "<string>",
"city": "<string>",
"state": "<string>",
"postalCode": "<string>",
"country": "<string>"
},
"accountNumber": "<string>"
},
"paymentReference": "<string>",
"destinationAccount": "USDC",
"minimumDeposit": "500.00"
},
"crypto": {
"address": "<string>",
"chain": "<string>",
"token": "<string>"
},
"userId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"user": {
"avatar": "<string>",
"name": "<string>"
}
}{
"error": {
"code": "invalid_request",
"message": "<string>",
"details": {}
}
}Update a contact
Update fields present in the request. Omitted fields are retained; immutable payment-routing identity cannot be replaced through this operation.
curl --request PATCH \
--url https://api.example.com/contacts/{contactId} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{}'import requests
url = "https://api.example.com/contacts/{contactId}"
payload = {}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({})
};
fetch('https://api.example.com/contacts/{contactId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"id": "ct_9f2c1ab84d7e4f1fa3c65b0e7d9a2c41",
"name": "<string>",
"isExternal": true,
"createdAt": "2023-11-07T05:31:56Z",
"icon": "<string>",
"lastUsedAt": "2023-11-07T05:31:56Z",
"email": "<string>",
"address": {
"streetAddress": "<string>",
"addressLine2": "<string>",
"city": "<string>",
"state": "<string>",
"country": "AF",
"zip": "<string>"
},
"bank": {
"method": "<string>",
"currency": "<string>",
"fields": {
"iban": "<string>",
"bic": "<string>",
"accountNumber": "<string>",
"routingNumber": "<string>",
"pixKey": "<string>",
"pixKeyType": "phone",
"paymentKey": "<string>",
"financialInstitutionId": "<string>",
"branchNumber": "<string>",
"accountKind": "checking",
"phoneNumber": "<string>"
},
"holder": {
"type": "individual",
"firstName": "<string>",
"lastName": "<string>",
"businessName": "<string>",
"address": {
"streetAddress": "<string>",
"addressLine2": "<string>",
"city": "<string>",
"state": "<string>",
"country": "AF",
"zip": "<string>"
},
"idType": "passport",
"idNumber": "<string>",
"taxId": "<string>",
"nationality": "<string>"
},
"state": "active",
"bankName": "<string>",
"bankAddress": {
"addressLine1": "<string>",
"city": "<string>",
"state": "<string>",
"postalCode": "<string>",
"country": "<string>"
},
"intermediaryBank": {
"bic": "<string>",
"name": "<string>",
"address": {
"addressLine1": "<string>",
"city": "<string>",
"state": "<string>",
"postalCode": "<string>",
"country": "<string>"
},
"accountNumber": "<string>"
},
"paymentReference": "<string>",
"destinationAccount": "USDC",
"minimumDeposit": "500.00"
},
"crypto": {
"address": "<string>",
"chain": "<string>",
"token": "<string>"
},
"userId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"user": {
"avatar": "<string>",
"name": "<string>"
}
}{
"error": {
"code": "invalid_request",
"message": "<string>",
"details": {}
}
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Headers
The client account to act for, as a cl_… id. Omit it to act as yourself.
"cl_9f2c1ab84d7e4f1fa3c65b0e7d9a2c41"
Your own key for this write, ^[A-Za-z0-9._:-]{1,128}$. A retry with the same key replays the first answer; the same key with a different request is refused.
"po-inv-2026-114"
Path Parameters
Body
Updated contact name.
1 - 200Updated HTTPS image URL or emoji:// reference; null removes it.
Updated postal address.
Show child attributes
Show child attributes
Whether the contact is outside the selected account.
Updated payment-account holder identity.
Show child attributes
Show child attributes
Updated intermediary institution; send null to remove it.
Show child attributes
Show child attributes
Updated postal address of the destination institution, replacing the stored one in full.
Show child attributes
Show child attributes
Response
Successful Response
Stable public identifier for this contact.
^(?:ct_)?[A-Za-z0-9._:\-]{1,216}$"ct_9f2c1ab84d7e4f1fa3c65b0e7d9a2c41"
Human-readable contact name.
Whether the contact is outside the selected account.
UTC timestamp when the contact was created.
HTTPS image URL or emoji:// contact icon reference.
UTC timestamp when this contact was last used for a transfer.
Email associated with an existing HEVN contact.
Postal address of the contact or account holder.
Show child attributes
Show child attributes
Payment-account destination details.
Show child attributes
Show child attributes
On-chain destination details.
Show child attributes
Show child attributes
Account behind an existing HEVN contact.
Profile of the linked HEVN account.
Show child attributes
Show child attributes
Was this page helpful?