---
title: "Update address by ID"
method: PATCH
path: "/api/dataentities/AD/documents/{addressId}"
tags: ["Addresses"]
---

# Update address by ID

`PATCH /api/dataentities/AD/documents/{addressId}`

This endpoint allows you to update an existing address document in the `AD` data entity. Partially updates a customer address.

> ⚠️ When updating addresses you must send each field according to the specifications provided. Otherwise, the Checkout module will not be able to autofill data during the shopping flow, which can block the purchase. Learn more about [SmartCheckout - Customer information automatic fill-in](https://help.vtex.com/en/tutorial/smartcheckout-preenchimento-automatico-de-dados-do-cliente--2Nuu3xAFzdhIzJIldAdtan#).

## Permissions

Any user or [API key](https://developers.vtex.com/docs/guides/api-authentication-using-api-keys) must have at least one of the appropriate [License Manager resources](https://help.vtex.com/en/tutorial/license-manager-resources--3q6ztrC8YynQf6rdc6euk3) to be able to successfully run this request. Otherwise they will receive a status code `403` error. These are the applicable resources for this endpoint:

| **Product** | **Category** | **Resource** |
| --------------- | ----------------- | ----------------- |
| Dynamic Storage | Dynamic storage generic resources | **Insert or update document (not remove)** |
| Dynamic Storage | Dynamic storage generic resources | **Full access to all documents** |
| Dynamic Storage | Dynamic storage generic resources | **Master Data administrator** |

There are no applicable [predefined roles](https://help.vtex.com/en/tutorial/predefined-roles--jGDurZKJHvHJS13LnO7Dy) for this resource list. You must [create a custom role](https://help.vtex.com/en/tutorial/roles--7HKK5Uau2H6wxE1rH5oRbc#creating-a-role) and add at least one of the resources above in order to use this endpoint. To learn more about machine authentication at VTEX, see [Authentication overview](https://developers.vtex.com/docs/guides/authentication).

>❗ To prevent integrations from having excessive permissions, consider the [best practices for managing API keys](https://help.vtex.com/en/tutorial/best-practices-api-keys--7b6nD1VMHa49aI5brlOvJm) when assigning License Manager roles to integrations.

## Path parameters

- `addressId` string, required

## Query parameters

- `_schema` string

## Headers

- `Content-Type` string, required
- `Accept` string, required

## Request body

- CreateUpdateAddressRequests — Request body object.
  - `addressName` string, nullable — Address name.
  - `addressLabel` string, nullable — Custom label for the address used by shoppers and buyer org managers.
  - `addressType` 'commercial' | 'invoice', nullable — Type of address. For example, `Residential` or `Pickup`, among others. For B2B Buyer Portal, this field is required and its possible values are `commercial` for shipping or `invoice` for billing.
  - `receiverName` string, nullable — Name of the person who is going to receive orders at this address. This field is required for B2B Buyer Portal.
  - `city` string, nullable — City of the shipping address. This field is required for B2B Buyer Portal.
  - `state` string, nullable — State of the shipping address. The state or province of the address. This field is required for B2B Buyer Portal.
  - `country` string, nullable — Three letter ISO code of the country of the shipping address. This field is required for B2B Buyer Portal.
  - `postalCode` string, nullable — Postal Code. The format must be compatible with the country postal code format (e.g., `00000` for addresses in the USA). This field is required for B2B Buyer Portal.
  - `street` string, nullable — The street name of the address. This field is required for B2B Buyer Portal.
  - `number` string, nullable — Number of the building, house or apartment in the shipping address. This field is required for B2B Buyer Portal.
  - `neighborhood` string, nullable — Neighborhood of the address.
  - `complement` string, nullable — Additional information or details that help identify or locate the shipping address, such as apartment number, suite, floor, or unit (if applicable).
  - `reference` string, nullable — Optional reference point or nearby landmark to help locate the shipping address during delivery (e.g., next to a park or behind a building).
  - `geoCoordinate` string, nullable — The geographical coordinates of the address (optional). This field is recommended for B2B Buyer Portal.
  - `userId` string, nullable — ID of the customer to whom the address belongs. This information is the `id` returned by the customer profile (or contract) creation request. This field is required for B2B Buyer Portal.

## Response `200`

OK

- DocumentResponse — Response body object.
  - `Id` string, required — ID of the document that was created or updated.
  - `Href` string, required — Document reference URL.

---

[API](https://skmtc.net/vtex/apis/master-data-api-v1.md) · [All operations](https://skmtc.net/vtex/apis/master-data-api-v1/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/vtex/master-data-api-v1/revisions/a90298d4afb1/schema)
