Update Product Variant Metafields

Updates a product variant *Metafield*. **Required Fields:** * none **Read-Only Fields** * id * These fields can only be modified by the app (API credentials) that created the metafield: * namespace * key * permission_set **Usage Notes** * Attempting to modify `namespace`, `key`, and `permission_set` fields using a client ID different from the one used to create those metafields will result in a 403 error message.

Authentication

X-Auth-Tokenstring
### OAuth scopes | UI Name | Permission | Parameter | |:--------|:-----------|:----------| | Products | modify | `store_v2_products` | | Products | read-only | `store_v2_products_read_only` | ### Authentication header | Header | Argument | Description | |:-------|:---------|:------------| | `X-Auth-Token` | `access_token` | For more about API accounts that generate `access_token`s, see our [Guide to API Accounts](/developer/docs/overview/api-fundamentals/api-accounts#api-accounts). | ### Further reading For example requests and more information about authenticating BigCommerce APIs, see [Authentication and Example Requests](/developer/docs/overview/api-fundamentals/api-accounts#x-auth-token-header-example-requests). For more about BigCommerce OAuth scopes, see our [Guide to API Accounts](/developer/docs/overview/api-fundamentals/api-accounts#oauth-scopes). For a list of API status codes, see [API Status Codes](/developer/api-reference/rest/overview#rest-http-status-codes).

Path parameters

product_idintegerRequired

The ID of the Product to which the resource belongs. Product variant metafield endpoints that have the product_id in the request path are successful as long as the parameter is not empty. The product_id segment is there only for path consistency.

variant_idintegerRequired
ID of the variant on a product, or on an associated Price List Record.
metafield_idintegerRequired

The ID of the Metafield.

store_hashstringRequired
Permanent ID of the BigCommerce store.

Headers

AcceptstringRequiredDefaults to application/json
The [MIME type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) of the response body.

Request

This endpoint expects an object.
keystringRequired1-64 characters

The name of the field, for example: location_id, color. Required for POST.

valuestringRequired1-65535 characters

The value of the field, for example: 1, blue. You must enter a JSON formatted string for ShipperHQ metafields. Required for POST.

namespacestringRequired1-64 characters
Namespace for the metafield, for organizational purposes. This is set by the developer. Required for POST.
permission_setenumRequired

Determines the visibility and writeability of the field by other API consumers.

ValueDescription
app_onlyPrivate to the app that owns the field
readVisible to other API consumers
writeOpen for reading and writing by other API consumers
read_and_sf_accessVisible to other API consumers, including on storefront
write_and_sf_accessOpen for reading and writing by other API consumers, including on storefront
descriptionstringOptional1-255 characters
Description for the metafields.

Response

dataobject
metaobject
Response metadata.

Errors

400
Bad Request Error
404
Not Found Error