# PostProductsId

From **Stripe API**.

`POST /v1/products/{id}`

<p>Updates the specific product by setting the values of the parameters passed. Any parameters not provided will be left unchanged.</p>

## Parameters

### `id`

- Location: path
- Required: true
- Type: `string`
- maxLength: `5000`

## Request body

- Required: false
### `application/x-www-form-urlencoded`

- Type: `object`

```json
{"additionalProperties":false,"properties":{"active":{"description":"Whether the product is available for purchase.","type":"boolean"},"description":{"description":"The product's description, meant to be displayable to the customer. Use this field to optionally store a long form explanation of the product being sold for your own rendering purposes.","maxLength":40000,"type":"string"},"expand":{"description":"Specifies which fields in the response should be expanded.","items":{"maxLength":5000,"type":"string"},"type":"array"},"images":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"enum":[""],"type":"string"}],"description":"A list of up to 8 URLs of images for this product, meant to be displayable to the customer."},"metadata":{"anyOf":[{"additionalProperties":{"type":"string"},"type":"object"},{"enum":[""],"type":"string"}],"description":"Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to `metadata`."},"name":{"description":"The product's name, meant to be displayable to the customer. Whenever this product is sold via a subscription, name will show up on associated invoice line item descriptions.","maxLength":5000,"type":"string"},"package_dimensions":{"anyOf":[{"properties":{"height":{"type":"number"},"length":{"type":"number"},"weight":{"type":"number"},"width":{"type":"number"}},"required":["height","length","weight","width"],"title":"package_dimensions_specs","type":"object"},{"enum":[""],"type":"string"}],"description":"The dimensions of this product for shipping purposes."},"shippable":{"description":"Whether this product is shipped (i.e., physical goods).","type":"boolean"},"statement_descriptor":{"description":"An arbitrary string to be displayed on your customer's credit card or bank statement. While most banks display this information consistently, some may display it incorrectly or not at all.\n\nThis may be up to 22 characters. The statement description may not include `\u003c`, `\u003e`, `\\`, `\"`, `'` characters, and will appear on your customer's statement in capital letters. Non-ASCII characters are automatically stripped.\n It must contain at least one letter. May only be set if `type=service`.","maxLength":22,"type":"string"},"tax_code":{"anyOf":[{"type":"string"},{"enum":[""],"type":"string"}],"description":"A [tax code](https://stripe.com/docs/tax/tax-codes) ID."},"unit_label":{"description":"A label that represents units of this product in Stripe and on customers’ receipts and invoices. When set, this will be included in associated invoice line item descriptions. May only be set if `type=service`.","maxLength":12,"type":"string"},"url":{"description":"A URL of a publicly-accessible webpage for this product.","type":"string"}},"type":"object"}
```

## Security

### `basicAuth`

- Type: `http`
- Request header: `Authorization`
- Scheme: `basic`
Send credentials in the `Authorization` request header using the `Basic` scheme.

Basic HTTP authentication. Allowed headers-- Authorization: Basic <api_key> | Authorization: Basic <base64 hash of `api_key:`>

### `bearerAuth`

- Type: `http`
- Request header: `Authorization`
- Scheme: `bearer`
- Bearer format: `auth-scheme`
Send the token in the `Authorization` request header using the `Bearer` scheme.

Bearer HTTP authentication. Allowed headers-- Authorization: Bearer <api_key>

## Responses

### `200`

Successful response.

### `application/json`

- Type: `object`

Products describe the specific goods or services you offer to your customers.
For example, you might offer a Standard and Premium version of your goods or service; each version would be a separate Product.
They can be used in conjunction with [Prices](https://stripe.com/docs/api#prices) to configure pricing in Checkout and Subscriptions.

Related guides: [Set up a subscription](https://stripe.com/docs/billing/subscriptions/set-up-subscription) or accept [one-time payments with Checkout](https://stripe.com/docs/payments/checkout/client#create-products) and more about [Products and Prices](https://stripe.com/docs/billing/prices-guide)

```json
{"description":"Products describe the specific goods or services you offer to your customers.\nFor example, you might offer a Standard and Premium version of your goods or service; each version would be a separate Product.\nThey can be used in conjunction with [Prices](https://stripe.com/docs/api#prices) to configure pricing in Checkout and Subscriptions.\n\nRelated guides: [Set up a subscription](https://stripe.com/docs/billing/subscriptions/set-up-subscription) or accept [one-time payments with Checkout](https://stripe.com/docs/payments/checkout/client#create-products) and more about [Products and Prices](https://stripe.com/docs/billing/prices-guide)","properties":{"active":{"description":"Whether the product is currently available for purchase.","type":"boolean"},"created":{"description":"Time at which the object was created. Measured in seconds since the Unix epoch.","format":"unix-time","type":"integer"},"description":{"description":"The product's description, meant to be displayable to the customer. Use this field to optionally store a long form explanation of the product being sold for your own rendering purposes.","maxLength":5000,"nullable":true,"type":"string"},"id":{"description":"Unique identifier for the object.","maxLength":5000,"type":"string"},"images":{"description":"A list of up to 8 URLs of images for this product, meant to be displayable to the customer.","items":{"maxLength":5000,"type":"string"},"type":"array"},"livemode":{"description":"Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode.","type":"boolean"},"metadata":{"additionalProperties":{"maxLength":500,"type":"string"},"description":"Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format.","type":"object"},"name":{"description":"The product's name, meant to be displayable to the customer. Whenever this product is sold via a subscription, name will show up on associated invoice line item descriptions.","maxLength":5000,"type":"string"},"object":{"description":"String representing the object's type. Objects of the same type share the same value.","enum":["product"],"type":"string"},"package_dimensions":{"anyOf":[{"$ref":"#/components/schemas/package_dimensions"}],"description":"The dimensions of this product for shipping purposes.","nullable":true},"shippable":{"description":"Whether this product is shipped (i.e., physical goods).","nullable":true,"type":"boolean"},"statement_descriptor":{"description":"Extra information about a product which will appear on your customer's credit card statement. In the case that multiple products are billed at once, the first statement descriptor will be used.","maxLength":5000,"nullable":true,"type":"string"},"tax_code":{"anyOf":[{"maxLength":5000,"type":"string"},{"$ref":"#/components/schemas/tax_code"}],"description":"A [tax code](https://stripe.com/docs/tax/tax-codes) ID.","nullable":true,"x-expansionResources":{"oneOf":[{"$ref":"#/components/schemas/tax_code"}]}},"unit_label":{"description":"A label that represents units of this product in Stripe and on customers’ receipts and invoices. When set, this will be included in associated invoice line item descriptions.","maxLength":5000,"nullable":true,"type":"string"},"updated":{"description":"Time at which the object was last updated. Measured in seconds since the Unix epoch.","format":"unix-time","type":"integer"},"url":{"description":"A URL of a publicly-accessible webpage for this product.","maxLength":2048,"nullable":true,"type":"string"}},"required":["active","created","id","images","livemode","metadata","name","object","updated"],"title":"Product","type":"object","x-expandableFields":["package_dimensions","tax_code"],"x-resourceId":"product"}
```

### `default`

Error response.

### `application/json`

- Type: `object`

An error response from the Stripe API

```json
{"description":"An error response from the Stripe API","properties":{"error":{"$ref":"#/components/schemas/api_errors"}},"required":["error"],"type":"object"}
```

## Request examples

### cURL

```shell
curl --request POST \
  --url https://api.stripe.com/v1/products/{id} \
  --header 'content-type: application/x-www-form-urlencoded' \
  --data '{
  "active": true,
  "description": "string",
  "expand": [
    "string"
  ],
  "images": "string",
  "metadata": "string",
  "name": "string",
  "package_dimensions": "string",
  "shippable": true,
  "statement_descriptor": "string",
  "tax_code": "string",
  "unit_label": "string",
  "url": "string"
}'
```
