# Update Customer Shipping Preferences

**Table of Contents**

### Overview

This endpoint can be used to update the shipping preferences of an existing customer.

In order to consume the endpoint you must:

- Be authenticated user

For information on how you can authenticate, see: [Authentication](https://developer.sellercloud.com/dev-article/authentication/)

As soon as you do authentication and receive a valid token, it needs to be passed to the call.

### Endpoint

Example for such endpoint for TT server is  https://tt.api.sellercloud.com/rest/api/Customers/{id}/ShippingPreferences

For your server endpoint will be:

https://{your_server_id}.api.sellercloud.com/rest/api/Customers/{id}/ShippingPreferences

### Request

- Method Type: **HttpPut**
- Authorization: Use **Bearer Token** + token received from token authentication
- Header info: Content-Type: **application/json**

|     |     |     |     |
| --- | --- | --- | --- |
| **Parameter** | **Data Type** | **Description** | **Is Required** |
| CarrierId | Enum | Shipping carrier id<br>Optional. Provide null or omit in the request if no update of this field is needed. | No |
| CarrierMethodId | Enum | Shipping service id<br>Optional. Provide null or omit in the request if no update of this field is needed. | No |
| Charges | Decimal | Charges<br>Optional. Provide null or omit in the request if no update of this field is needed. | No |
| AccountNumber | String | Account number<br>Optional. Provide null or omit in the request if no update of this field is needed. | No |
| PostalCode | String | Postal code<br>Optional. Provide null or omit in the request if no update of this field is needed. | No |
| EnableCustomerShippingAccount | Boolean | Enable customer shipping account<br>Optional. Provide null or omit in the request if no update of this field is needed. | No |

### Response

- If user is authenticated and the request is successful, then response will be **Status Code 200 => OK**
- If user is not authenticated, then response will be **Status Code 401 => Not Valid Token**
- In case of error, response will be **Status Code 500 => Internal Server Error**
- In case of incorrect request, response will be with **status code 400 Bad Request**
