# Update Product Prices

## Overview

This endpoint is used to update product prices. To consume it, you must:

- Be an authenticated user.

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

As soon as you authenticate and receive a valid token, it needs to be passed on to the service call.

## Endpoint

NOTE: Endpoint “PUT /api/Catalog/{productID}/Prices” is obsolete as it does not support special characters in the productID. Use the new endpoint presented in this article.

An example of such an endpoint for **XX** server is:

https://xx.api.sellercloud.com/rest/api/Catalog/Prices

For your server endpoint will be:

https://{your_server_id}.api.sellercloud.com/rest/api/Catalog/Prices

## Request

- **Method Type**: HttpPut
- **Authorization**: Use **Bearer Token** (where ‘Token’ is the token received from token authentication)
- **Header info**: **Content-Type: application/json**
- **Request Body**:

```json
{
  "ProductID": "string",
  "SitePrice": 0,
  "ChannelsPrices": [
    {
      "ChannelID": 0,
      "Price": 0,
      "UseDefaultSitePrice": true
    }
  ]
}
```

| Parameter                       | Data Type | Description                                                                                                              | Is Required |
|----------------------------------|-----------|--------------------------------------------------------------------------------------------------------------------------|-------------|
| ProductID                       | string    | Sellercloud SKU of the product you are updating.                                                                        | Yes         |
| SitePrice                       | decimal   | Product site price.<br>This price will be used for the channels that have “UseDefaultSItePrice” set to ‘true.’          | No          |
| ChannelPrices                   | Array     | List of channel prices to update.<br>Do not provide or set to “null” if no update is needed.                          | No          |
| ChannelPrice.ChannelID          | enum      | The ID of the channel.<br>Possible values can be found [here](https://developer.sellercloud.com/dev-article/channels/). | Yes         |
| ChannelPrice.Price              | decimal   | Product price for the channel.<br>Can be updated only if “UseDefaultSItePrice” is set to ‘false’.                      | No          |
| ChannelPrice.UseDefaultSItePrice| bool      | Indicates if the channel uses the default site price for the product.                                                   | No          |

## Response

- If the user is authenticated and the price update is successful, then the response will be **Status Code 200 => OK.**
- If the user is not authenticated, then the response will be **Status Code 401 => Not Valid Token.**
- In case of an error, the response will be **Status Code 500 => Internal Server Error.**
