> Documentation index: [Saleor](/llms.txt) · [This section](/api-reference/users/llms.txt)
> Source: https://docs.saleor.io/api-reference/users/mutations/account-address-create

# accountAddressCreate Mutation

Create a new address for the customer.

Requires one of following set of permissions: AUTHENTICATED\_USER or AUTHENTICATED\_APP + IMPERSONATE\_USER.

Triggers the following webhook events:

-   CUSTOMER\_UPDATED (async): A customer account was updated.
-   ADDRESS\_CREATED (async): An address was created.

```graphql
accountAddressCreate(
  customerId: ID
  input: AddressInput!
  type: AddressTypeEnum
): AccountAddressCreate
```

Details

```graphql
type AccountAddressCreate {
  user: User
  accountErrors: [AccountError!]! @deprecated
  errors: [AccountError!]!
  address: Address
}
```

<a id="arguments"></a>

### Arguments

<a id="customer-id"></a>

#### [`customerId`](#customer-id) ● [`ID`](/api-reference/miscellaneous/scalars/id.md)

ID of customer the application is impersonating. The field can be used and is required by apps only. Requires IMPERSONATE\_USER and AUTHENTICATED\_APP permission.

Added in Saleor 3.19

<a id="input"></a>

#### [`input`](#input) ● [`AddressInput!`](/api-reference/miscellaneous/inputs/address-input.md)

Fields required to create address.

<a id="type"></a>

#### [`type`](#type) ● [`AddressTypeEnum`](/api-reference/miscellaneous/enums/address-type-enum.md)

A type of address. If provided, the new address will be automatically assigned as the customer's default address of that type.

<a id="type"></a>

### Type

<a id="accountaddresscreate"></a>

#### [`AccountAddressCreate`](/api-reference/users/objects/account-address-create.md)

Create a new address for the customer.

Requires one of following set of permissions: AUTHENTICATED\_USER or AUTHENTICATED\_APP + IMPERSONATE\_USER.

Triggers the following webhook events:

-   CUSTOMER\_UPDATED (async): A customer account was updated.
-   ADDRESS\_CREATED (async): An address was created.
