The Edit Additional Address API is used to modify supplemental locations (like branch offices or specific delivery sites) that have been previously added to a contact. Unlike updating the primary address, which is done via the main Contact PUT request, secondary addresses must be updated through their own specific endpoint.
At Kalki LLP, we implement this for clients who maintain "Site Registries" in external ERPs, ensuring that any change to a site's contact person or street address is instantly reflected in Zoho Books for accurate logistics.
To update a secondary address, you must perform a PUT request using both the contact_id and the unique address_id.
Endpoint: PUT /contacts/{contact_id}/address/{address_id}?organization_id={organization_id}
| Parameter | Type | Description |
attention | String | Updated contact person or department name. |
address | String | Updated Street 1 details. |
city | String | Updated City. |
state | String | Updated State/Province. |
zip | String | Updated Postal Code. |
phone | String | Updated site-specific phone number. |
You only need to send the fields that require modification.
{
"attention": "Operations Lead - North Wing",
"address": "Unit 202, Tech Park B",
"city": "Gurugram",
"phone": "+91-124-555-0199"
}
If you are syncing an address update from a CRM "Account" to Zoho Books, use this invokeUrl structure.
// Target IDs
contactID = "460000000026049";
addressID = "460000000026155";
orgID = "123456789";
// Construct the update map
updateMap = Map();
updateMap.put("attention", "Site Manager Updated");
updateMap.put("address", "Sector 45, New Block");
// Execute the PUT request
response = invokeurl
[
url :"https://www.zohoapis.in/books/v3/contacts/" + contactID + "/address/" + addressID + "?organization_id=" + orgID
type :PUT
parameters :updateMap.toString()
connection :"kalki_books_connection"
];
if(response.get("code") == 0)
{
info "Kalki Success: Address " + addressID + " has been updated.";
}
else
{
info "Kalki Error: Update failed. " + response.get("message");
}
| Error Code | Meaning | Fix for Kalki LLP Developers |
| 2 | Invalid ID | Either the contact_id or the address_id does not exist. |
| 57 | Unauthorized | Your OAuth token lacks the ZohoBooks.contacts.UPDATE scope. |
| 1005 | Validation Error | A field (like zip or state) format does not match Zoho’s requirements. |
| 6024 | Wrong Org | The organization_id does not match the account context. |
To update an additional address, you must first know its address_id. For kalkillp.com clients, we recommend one of two strategies:
Storage: Store the address_id in your external database during the "Add Address" step.
Lookup: Call the Get Contact Addresses API first to list all sites and filter for the one you need to modify.
Incorrect delivery addresses lead to returned shipments and wasted operational costs. Kalki LLP specializes in building high-fidelity address sync engines that ensure your Zoho Books data is always a perfect mirror of your actual business locations.