For AI agents: a documentation index is available at the root level at /llms.txt and /llms-full.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
Dev Portal
DocsAPI ReferenceLearnCommunityChangelog
DocsAPI ReferenceLearnCommunityChangelog
    • About Our APIs
  • REST
    • Overview
      • Overview
        • Brands
        • Categories
        • Category Trees
        • Products
            • GETList Products
            • PUTUpdate Products (batch)
            • POSTCreate Product
            • DELDelete Products
            • GETGet Product
            • PUTUpdate Product
            • DELDelete Product
              • GETList Product Metafields
              • POSTCreate Product Metafield
              • GETGet Product Metafield
              • PUTUpdate Product Metafield
              • DELDelete Product Metafield
        • Product Modifiers
        • Product Variants
        • Product Variant Options
      • Payments
  • GraphQL
    • Overview
  • MCP
    • Overview
Dev Portal
LogoLogo
RESTAdminCatalogProductsMetafields

Update Product Metafield

PUT
https://api.bigcommerce.com/stores/:store_hash/v3/catalog/products/:product_id/metafields/:metafield_id
PUT
/stores/:store_hash/v3/catalog/products/:product_id/metafields/:metafield_id
$curl -X PUT https://api.bigcommerce.com/stores/store_hash/v3/catalog/products/1/metafields/1 \
> -H "Accept: application/json" \
> -H "X-Auth-Token: <apiKey>" \
> -H "Content-Type: application/json" \
> -d '{
> "key": "Location",
> "value": "4HG",
> "namespace": "Warehouse Locations",
> "permission_set": "app_only"
>}'
1{
2 "data": {
3 "key": "location_id",
4 "namespace": "App Namespace",
5 "permission_set": "app_only",
6 "value": "Shelf 3, Bin 5",
7 "date_created": "2021-08-06T19:15:35+00:00",
8 "date_modified": "2021-08-06T19:15:35+00:00",
9 "description": "Where products are located",
10 "id": 4,
11 "resource_id": 137,
12 "resource_type": "product"
13 },
14 "meta": {}
15}
Updates a *Product Metafield*. **Required Fields** * none **Read-Only Fields** * id * These fields can only be modified using the API account that created the metafield: * `namespace` * `key` * `permission_set` * `value` **Usage Notes** * Attempting to modify the `namespace`, `key`, `permission_set`, or `value` field using an API account different from the one used to create those metafields will result in a `403` error message.
Was this page helpful?
Previous

Get Product Metafield

Next

Delete Product Metafield

Built with

Updates a Product Metafield.

Required Fields

  • none

Read-Only Fields

  • id
  • These fields can only be modified using the API account that created the metafield:
    • namespace
    • key
    • permission_set
    • value

Usage Notes

  • Attempting to modify the namespace, key, permission_set, or value field using an API account 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.

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
Allowed values:
descriptionstringOptional0-255 characters
Description for the metafields.

Response

dataobject
metaobject
Response metadata.

Errors

400
Bad Request Error
404
Not Found Error

OAuth scopes

UI NamePermissionParameter
Productsmodifystore_v2_products
Productsread-onlystore_v2_products_read_only

Authentication header

HeaderArgumentDescription
X-Auth-Tokenaccess_tokenFor more about API accounts that generate access_tokens, see our Guide to API Accounts.

Further reading

For example requests and more information about authenticating BigCommerce APIs, see Authentication and Example Requests.

For more about BigCommerce OAuth scopes, see our Guide to API Accounts.

For a list of API status codes, see API Status Codes.

The MIME type of the response body.