> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.monite.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.monite.com/_mcp/server.

# Counterpart addresses

## Overview

[Counterparts](./index) that represent an [entity's](../../entities/index) vendors or suppliers must have their address information associated with them. Monite allows you to create multiple addresses for a counterpart.

## Add an address to a counterpart \[#add]

To add an address to a counterpart, call `POST /counterparts/{counterpart_id}/addresses`:

```sh
curl -X POST 'https://api.sandbox.monite.com/v1/counterparts/{counterpart_id}/addresses' \
     -H 'X-Monite-Version: 2024-05-25' \
     -H 'X-Monite-Entity-Id: ENTITY_ID' \
     -H 'Authorization: Bearer ACCESS_TOKEN' \
     -H 'Content-Type: application/json' \
     -d '{
       "country": "DE",
       "city": "Berlin",
       "postal_code": "10115",
       "state": "BE",
       "line1": "Flughafenstrasse 52",
       "line2": "Additional information"
     }'
```

The successful response returns the information about the address including the ID:

```json
{
  "country": "DE",
  "city": "Berlin",
  "postal_code": "10115",
  "state": "BE",
  "line1": "Flughafenstrasse 52",
  "line2": "Addition information",
  "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "counterpart_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
}
```

After creating a new counterpart address, Monite stores all available counterpart addresses in array. You can also update the counterpart's default billing and shipping addresses using the counterpart address ID issued after creating a counterpart. For more information, see [Edit a counterpart](#edit).

> **Tip**
>
> Counterparts can use the same counterpart address for the `default_shipping_address_id` and `default_billing_address_id` fields.

## List all addresses \[#list-all]

To get information about all addresses associated with the specified counterpart, call\
`GET /counterparts/{counterpart_id}/addresses` as shown:

```sh
curl -X GET 'https://api.sandbox.monite.com/v1/counterparts/{counterpart_id}/addresses' \
     -H 'X-Monite-Version: 2024-05-25' \
     -H 'X-Monite-Entity-Id: ENTITY_ID' \
     -H 'Authorization: Bearer ACCESS_TOKEN' \
```

The successful response returns an array of all counterpart addresses.

## Retrieve an address \[#retrieve]

To get information about a specific address associated with the specified counterpart, call\
`GET /counterparts/{counterpart_id}/addresses/{address_id}`.

## Edit an address \[#edit]

To edit an existing address of the specified counterpart, call\
`PATCH /counterparts/{counterpart_id}/addresses/{address_id}`.

## Delete an address \[#delete]

Only non-default addresses can be deleted. To delete an existing address from the list of addresses associated with the specified counterpart, call\
`DELETE /counterparts/{counterpart_id}/addresses/{addresses_id}`.

> **Warning**
>
> The default billing and shipping addresses of a counterpart cannot be deleted. Attempts to delete these addresses will return an error.