BigCommerce integration for AI agents.
BigCommerce integration for AI agents with secure authentication and server-side credential injection. Open Connector runs the OAuth, seals the token in an encrypted vault, and serves BigCommerce tools to your agent over MCP or a typed API — credentials injected server-side, every call audited, nothing leaving your infrastructure. Open source (AGPL-3.0) and self-hostable.
Real BigCommerce actions, managed and audited.
Your user connects BigCommerce once; your agent can then use BigCommerce to manage catalog products, brands, categories, customers, and orders for ecommerce operations — scoped to the OAuth permissions you grant and the tool allowlist you configure. Every action is least-privilege and written to a tamper-evident audit trail.
- 1
Your user grants BigCommerce access once (OAuth) — the token lands in the vault.
- 2
Your agent calls a tool over MCP or the typed API; Open Connector injects the credential server-side.
- 3
Every routed call appends a hash-chained audit record — nothing leaves your infra.
Supported BigCommerce tools.
218 tools are generated from the published BigCommerce catalog. Descriptions are plain text; each action remains subject to its configured authentication and tool allowlist.
Showing 218 tools. All published catalog entries are included in this page's server-rendered HTML.
- Capture Order Payment
- Capture the payment for an order. When there are no payment method validation issues, the capture process is successful, the `payment_status` updates to `capture pending`, and the payment request is scheduled. The payment request itself occurs asynchronously. Requires at least one of the following scopes: * `store_v2_orders` * `store_v2_transactions`
- paymentActions
- Create Brand
- Creates a brand. **Required Fields** - name **Limits** - 30,000 brands per store limit
- brands
- Create Brand Image
- Creates a brand image. **Required Fields** - image_file: Form posts are the only accepted upload option. For more information on how to upload an image see [Adding product images](/developer/docs/admin/catalog-and-inventory/products-overview#adding-product-images). NOTE: Ensure you set the `Content-Type` header to `multipart/form-data; boundary=--example-boundary--` and set the correct URL for this endpoint. **Read-Only Fields** - id Only one image at a time can be created. To update a brand image, use the [Update a brand](/developer/api-reference/rest/admin/catalog/brands/update-brand) endpoint and an `image_url`.
- images
- Create Brand Metafield
- Creates a brand metafield. **Note:** The maximum number of metafields allowed on each order, product, category, variant, or brand is 250 per client ID. For more information, see [Platform Limits](https://support.bigcommerce.com/s/article/Platform-Limits) in the Help Center.
- metafields
- Create Multiple Metafields
- Create multiple metafields.
- batchMetafields
- Create Bulk Pricing Rule
- Creates a *Bulk Pricing Rule*.
- bulkPricingRules
- Create Categories
- Creates new categories. Limits: - 16,000 categories per store limit. - 1,000 categories per product limit. - 50 characters category name length. - 8 levels of child categories depth limit. - 65,535 characters category description length limit. Creating a category requires: - `name` - `tree_id` or `parent_id` - The `url` property is optional, but if included, its path must be unique per channel and category. If the path is not unique, the category will still be created but the URL will not — the response returns a multi-status to indicate the partial success.
- categories
- Create Multiple Metafields
- Create multiple metafields.
- batchMetafields
- Create Category
- When possible, use the [Category Trees - Create categories](/developer/api-reference/rest/admin/catalog/category-trees/categories/create-categories) endpoint instead. Creates a *Category*. Use this endpoint when an API only works with categories of a default BigCommerce storefront (`channel_id=1`). Use the [Create categories](/developer/api-reference/rest/admin/catalog/category-trees/categories/create-categories) endpoint when an API works with categories across different category trees that belong to different storefront channels. **Required Fields**: - `parent_id`: - To create a child category, set the `parent_id` to the parent category. - To create a top level category, set the `parent_id` to `0`. - `name` **Read-Only Fields**: - `id` **Limits**: - 16,000 categories per store limit. - 1,000 categories per product limit. - 50 characters category name length. - 8 levels of child categories depth limit. - 65,535 characters category description length limit.
- categories
- Create Category Image
- Create a *Category Image*. **Required Fields** - image_file: Form posts are the only accepted upload option. Only one image at a time can be created. Supported file types are `JPEG/JPG`, `GIF`, `PNG` and `ICO`. Limit image size to `8MB`. To update a *Category Image*, use the [Update categories](/developer/api-reference/rest/admin/catalog/category-trees/categories/update-categories) endpoint and an `image_url`.
- images
- Create Category Metafield
- Creates a *Category Metafield*. **Required Fields:** - permission_set - namespace - key - value **Read-Only Fields** - id **Note:** The maximum number of metafields allowed on each order, product, category, variant, or brand is 250 per client ID. For more information, see [Platform Limits (Help Center)](https://support.bigcommerce.com/s/article/Platform-Limits) in the Help Center.
- metafields
- Create Customer Metafields
- Creates Customer metafields by passing the `customerId` in the query parameters.
- metafields
- Create Customers
- Creates Customers. Create up to 10 customers in one call. **Required Fields** * last_name * first_name * email **Required Fields Customer Address** * first_name * city * country_code * last_name * address1 **Required Fields Attributes** * Attributes must be [created](/developer/api-reference/rest/admin/management/customers/v3/attributes/create-customers-attributes) **BEFORE** creating a customer. * attribute_id * attribute_value -- This is input as a string, regardless of the [Type](/developer/api-reference/rest/admin/management/customers/v3/attributes/create-customers-attributes). **Notes** A customer can be created with global access or channel-specific access. * **Global access:** * Make sure the channel has `allow_global_logins` enabled. This is on by default only for the default storefront. Find more info at [Customer Settings > Channel](/developer/api-reference/rest/admin/management/customers/v3/channel-settings). * Omit `channel_ids` field, or provide `channel_ids: null`. * **Channel-specific access:** * Provide a `channel_ids` array containing the channels accessible by the customer. This array cannot be empty.
- customers
- Create Customer Address
- Creates a Customer Address. Multiple customer addresses can be created in one call. **Required Fields** * **customer_id** * **first_name** * **last_name** * **city** * **country_code** * **address1** * **state_or_province** * **postal_code** **Notes** * A unique customer address is a combination of the following core address fields: * **customer_id** * **first_name** * **last_name** * **company** * **phone** * **address_type** * **address1** * **address2** * **city** * **country_code** * **state_or_province** * **postal_code** * An attempt to create an address that already exists will result in no change to the address or custom form field values, an HTTP 200 return code, and the address will be absent from the response body. * The default rate limit for this endpoint is 10 concurrent requests.
- addresses
- Create Customer Attribute
- Creates a Customer Attribute. Multiple customer attributes can be created in one call. **Required Fields** * name * type **Limits** * Limit of 3 concurrent requests. **Notes** Once the data type is set, it cannot be changed. The attribute will need to be deleted then created again with the new data type. This will also delete it from the customer. Customer attributes are created separately from the customer. After the name and type are created, then the attributes can be added to the customer. A store cannot have more than 50 customer attributes.
- attributes
- Create Multiple Metafields
- Create multiple metafields.
- metafieldsBatch
- Create Order
- Creates an *Order*. To learn more about creating or updating orders, see [Orders Overview](/developer/docs/admin/checkout-and-cart/orders). Create an order with an existing catalog product or a custom product. **Required Fields** * `products` or `consignments` * `billing_address` When you create an order, the `consignment(s)` array allows you to create pickup consignments. - An order can have either a pickup or a shipping fulfillment method, but not both. - An order can have only one pickup consignment. Choose from one of the following: 1. Create order with a shipping fulfillment method using `shipping_addresses` and `products`, i.e. legacy mode 2. Create order with a pickup fulfillment method using `consignments`, i.e. Consignment mode You can fulfill an order with shipping or pickup, but not both. This means that if the `consignments` array is present in the request, then _none_ of the following may be present and vice-versa: - `shipping_addresses` - `products` Include the `fees` object along with all its attributes in the request to create order-level fees for the newly created order. **Notes** * The values for cost_ex_tax, cost_inc_tax and cost_tax in the fees payload should reflect the tax rate associated with the tax_class_id. For a 10% tax rate, the difference between cost_inc_tax and cost_ex_tax should be 10%. If no tax_class_id is provided, the store's default "tax class for fee" will apply. Incorrect data may lead to issues in downstream operations like refunds. The V2 Orders API will not trigger the typical [Order Email](https://support.bigcommerce.com/s/article/Customizing-Emails?language=en_US) when creating orders. To create an order that does trigger this email, you can instead [create a cart](/developer/api-reference/rest/admin/management/carts/carts-single/create-cart) and [convert that cart into an order](/developer/api-reference/rest/admin/management/checkouts/orders/create-order). If you are building an app that creates orders, it must include your app's ID in the `external_source` field of new orders to be approved for the App Marketplace. See [App Store Approval Requirements](/developer/docs/integrations/apps/guide/approval-requirements#functionality) to learn more. > #### Note > * If historical orders processed on another eCommerce platform are being migrated to BigCommerce, supply the `external_source` field with the code **M-MIG**. This code will exclude the historical orders from the store’s GMV/order count, which factors into pricing.
- orders
- Create Metafields
- Creates an order `Metafield`. The maximum number of metafields allowed on each order, product, category, variant, or brand is 250 per client ID.
- metafields
- Create Refund
- Creates a refund. When there are no payment method validation issues, the refund process is successful and the refund payment request is scheduled. The payment request itself occurs asynchronously. Requires at least one of the following scopes: * `store_v2_orders` * `store_v2_transactions` **Note:** Order refunds should be processed sequentially. Processing multiple concurrent refunds on the same order are not yet supported.
- paymentActions
- Create Refund Quote
- Calculate the tax amount, total refund amount and get available payment options for an order refund by providing items and costs or quantities to refund. Requires at least one of the following scopes: * `store_v2_orders` * `store_v2_transactions` **Notes:** * Create a refund quote before performing a refund request to best avoid a `422` error. Check the refund quote's response body for the `refund_methods` array. The `amount` given in the array must match the `amount` used in the refund request body. * Order refunds should be processed sequentially. Processing multiple concurrent refunds on the same order is not yet supported.
- paymentActions
- Create Order Shipment
- Creates an *Order Shipment*. For more details, see [Shipping an Order](/developer/docs/admin/checkout-and-cart/orders#creating-order-shipments). **Required Fields** * order_address_id * items **Usage notes** There are three methods for generating a tracking link for a shipment: 1. Use `shipping_provider` and `tracking_number`: This generates a link to one of our integrated providers that you can click from the BigCommerce control panel and customer-facing emails. If a merchant still needs to set up a shipping provider or if the provider is not one of our natively integrated providers, you will click on an Aftership tracking link instead. The `generated_tracking_link` property in the API response represents one of these tracking links. The `tracking_link` property in the API response will remain empty. 2. Use `tracking_carrier` and `tracking_number`: This also creates a link to one of our integrated providers or an Aftership tracking link that you can click in both the BigCommerce control panel and customer-facing emails. Like the previous method, the `generated_tracking_link` property in the API response represents this tracking link. The `tracking_link` property in the API response will remain empty. 3. Supply a custom `tracking_link`: By providing a value for the `tracking_link` property, you can use your own tracking link within the BigCommerce control panel and in customer-facing emails. The API response will return your supplied tracking link as part of the `tracking_link` property in the response. In situations when there isn't a `generated_tracking_link`, the property in the API response will remain empty. Acceptable values for `shipping_provider` include the following, and this list may be updated at any time: - `""`, an empty string - `auspost` - `canadapost` - `endicia` - `usps` - `fedex` - `royalmail` - `ups` - `upsready` - `shipperhq` - `carrier_{your_carrier_id}`, when the carrier is a [third-party Shipping Provider](/developer/docs/integrations/shipping-providers) Acceptable values for `tracking_carrier` include an empty string (`""`) or one of the valid [tracking-carrier values](https://www.aftership.com/docs/tracking/others/supported-couriers).
- orderShipments
- Create Multiple Metafields
- Create multiple metafields.
- batchMetafields
- Create Product
- Creates a *Product*. Only one product can be created at a time; however, you can create multiple product variants using the `variants` array. **Required Fields:** - `name` - `type` - `weight` - `price` - `categories` (required when you enable the V2 product experience in the control panel) **Read-Only Fields** - `id` - `date_created` - `date_modified` - `calculated_price` - `base_variant_id` **Limits** - 250 characters product name length. - A product can have up to 1000 images. Each image file or image uploaded by URL can be up to 8 MB. **Usage Notes** * You can create multiple product variants using the `variants` array. * This endpoint accepts a `video` array. To create a product video that accepts a `video` object, see [Create a Product Video](/developer/api-reference/rest/admin/catalog/products/videos/create-product-video) for information.
- products
- Create Complex Rule
- Creates a product *Complex Rule*. **Required Fields** - modifier_id - modifier_value_id - variant_id **Read-Only Fields** - complex_rule_id - conditions_id - rule_id - combination_id - id
- complexRules
- Create Product Custom Field
- Creates a *Custom Field*. **Required Fields:** - name - value **Name-Value Pair Uniqueness** - Every name-value pair must be unique inside a product. **Read-Only:** - id **Limits** - 200 custom fields per product limit. - 250 characters per custom field limit.
- customFields
- Create Product Image
- Creates a *Product Image*. **Required Fields** - `image_file`, or - `image_url` **Usage Notes** - `image_url` - `255` character limit - `Content-Type` - For `image_file`, use the `multipart/form-data` media type. For `image_url`, use the `application/json` type. See [Adding product images](/developer/docs/admin/catalog-and-inventory/products-overview#adding-product-images) for more information. - You can create only one image at a time. A product can have up to 1000 images. - Supported image file types are BMP, GIF, JPEG, PNG, WBMP, XBM, and WEBP. - Each image file or image uploaded by URL can be up to 8 MB.
- images
- Create Product Metafield
- Creates a *Product Metafield*. **Required Fields:** * permission_set * namespace * key * value **Note:** The maxiumum number of metafields allowed on each order, product, category, variant, or brand is 250 per client ID. For more information, see [Platform Limits](https://support.bigcommerce.com/s/article/Platform-Limits) in the Help Center.
- metafields
- Create Product Modifier
- Creates a product modifier. **Notes** It takes two separate requests to create a new checkbox modifier with option values. Perform a request to create a modifier, then perform a second request to update option values. Date modifiers are required to be provided in [ISO-8601 ATOM](https://www.php.net/manual/en/class.datetimeinterface.php#datetimeinterface.constants.atom) format. Excluding them in a request will throw a server error. **Setting an option value image** `adjusters.image_url` is read-only on this endpoint. To attach or replace the image shown on the storefront for an option value, upload it via [Create Product Modifier Image](/developer/api-reference/rest/admin/catalog/product-modifiers/images/create-product-modifier-image). The upload binds the image to the value automatically; no follow-up call is needed.
- productModifiers
- Create Product Modifier Image
- Creates a *Modifier Image*. The image will show on the storefront when the value is selected. Upload via multipart form post; this is the only accepted upload method.
- images
- Create Product Modifier Value
- Creates a modifier value. **Read-Only Fields** * is_default **Setting an option value image** `adjusters.image_url` is read-only on this endpoint. To attach the image shown on the storefront for the value, upload it via [Create Product Modifier Image](/developer/api-reference/rest/admin/catalog/product-modifiers/images/create-product-modifier-image) after creating the value. > `is_default` is derived from the parent modifier configuration and cannot be set on individual values. To change which value is the default, use [Update Product Modifier](/developer/api-reference/rest/admin/catalog/product-modifiers/update-product-modifier) and include the full `option_values` array with the desired `is_default` flags.
- values
- Create Product Review
- Creates a *Product Review*. **Required Fields** - title - date_reviewed **Read-Only Fields** * id
- reviews
- Create Product Variant
- Creates a product variant. **Required Fields** * sku * option_values **Read-Only Fields** * id **Limits** * 600 SKUs per product limit. * 255 characters SKU length limit. Variants need to be created one at a time using this endpoint. To use a variant array, create products, and variants in the same call use the [Create Products](/developer/api-reference/rest/admin/catalog/products/create-product) endpoint during the initial product creation. To obtain the `option_values` to include in this request, use the [Create a product variant option](/developer/api-reference/rest/admin/catalog/product-variant-options/create-product-variant-option) endpoint.
- productVariants
- Create Product Variant Image
- Creates a *Variant Image*. Only one image can be explicitly associated with a Variant. If the Variant already has an associated image, overwrites the existing Variant Image. The image displays on the storefront when the Variant is selected. **Required Fields** - image_file: Form posts. Files larger than 1 MB are not accepted - image_url: Any publicly available URL
- images
- Create Product Variant Metafield
- Creates a product variant *Metafield*. **Required Fields:** * permission_set * namespace * key * value **Read-Only Fields** * id **Note:** The maxiumum number of metafields allowed on each order, product, category, variant, or brand is 250 per client ID. For more information, see [Platform Limits](https://support.bigcommerce.com/s/article/Platform-Limits) in the Help Center.
- metafields
- Create Product Variant Option
- Creates a *Variant Option*. **Required Fields** * display_name * type * option_values **Read-Only Fields** * id **Limits** * 255 characters option name length. **Notes** * Only one variant option at a time can be created; individual variant options will contain an array of multiple values. * There are several examples listed below that create options, but the SKUs are not updated and they are not a variant on the product. Variant SKUs must be created with a separate request. * Variant options will show on the storefront as an option that can be selected by the customer. A request like this could be used to add new choices to a variant that has already been created. * If more than one variant needs to be created, use the [Create a Product](/developer/api-reference/rest/admin/catalog/products/create-product) endpoint.
- productVariantOptions
- Create Product Variant Option Value
- Creates a *Variant Option Value*. **Required Fields** * label * sort_order **Read-Only Fields** * id * is_default **Limits** * 250 option values per option limit. > `is_default` is derived from the parent option configuration and cannot be set on individual values. To change which value is the default, use [Update Product Variant Option](/developer/api-reference/rest/admin/catalog/product-variant-options/update-product-variant-option) and include the full `option_values` array with the desired `is_default` flags.
- values
- Create Product Video
- Creates a *Product Video*. **Required Fields** * video_id **Read-Only Fields** * id Publicly accessible URLs are valid parameters. The Catalog API integrates with third-party YouTube, and you must load videos through YouTube. The [YouTube Terms of Service](https://www.youtube.com/t/terms) and [Google Privacy Policy](https://policies.google.com/privacy) apply, as indicated in our [Privacy Policy](https://www.bigcommerce.com/privacy/) and [Terms of Service](https://www.bigcommerce.com/terms/).
- videos
- Create Products Category Assignments
- Creates products category assignments.
- categoryAssignments
- Create Products Channel Assignments
- Creates products channel assignments. Notes: * Avoid parallel assignment requests if possible. * Do not make parallel assignment requests with the same product IDs.
- channelAssignments
- Create Multiple Metafields
- Create multiple metafields.
- batchMetafields
- Create Multiple Metafields
- Create multiple metafields.
- batchMetafields
- Delete Brand
- Deletes a brand.
- brands
- Delete Brand Image
- Deletes a brand image.
- images
- Delete Brand Metafield
- Deletes a brand metafield.
- metafields
- Delete Brands
- To delete brand objects, you must include a value for the name filter.
- brands
- Delete Multiple Metafields
- Delete all brand metafields.
- batchMetafields
- Delete Bulk Pricing Rule
- Deletes a *Bulk Pricing Rule*.
- bulkPricingRules
- Delete Categories
- When possible, use the [Category Trees - Delete categories](/developer/api-reference/rest/admin/catalog/category-trees/categories/delete-tree-categories) endpoint instead. Deletes *Category* objects. At least one filter parameter is required to perform the `DELETE` operation. **Usage Notes** - Sending a `DELETE`request without specifying a filter parameter will result in a `422` error. - Sending a `DELETE` request for a category that contains products will result in a `422` error. Move products to a new category by sending a `PUT` request to the `/catalog/products/{product_id}` endpoint before deleting a category.
- categories
- Delete Multiple Metafields
- Delete all category metafields.
- batchMetafields
- Delete Category
- When possible, use the [Category Trees - Delete categories](/developer/api-reference/rest/admin/catalog/category-trees/categories/delete-tree-categories) endpoint instead. You can provide a category identifier using query parameters to delete a single category. Deletes a *Category*. **Note:** The default rate limit for this endpoint is 40 concurrent requests.
- categories
- Delete Category Image
- Deletes a *Category Image*.
- images
- Delete Category Metafield
- Deletes a *Category Metafield*.
- metafields
- Delete Category Trees
- Deletes category trees. A filter must be supplied with the endpoint.
- categoryTrees
- Delete Customer Metafield
- Deletes a customer metafield. To delete a customer metafield, use 'customerId' and 'metafieldId' in the query parameters.
- metafields
- Delete Customers
- Deletes Customers. **Required Query** * id:in -- ID of the customer **Notes** A query is required to delete customers. If not provided, a 204 is returned, with no changes to the data.
- customers
- Delete Customer Address
- Deletes a Customer Address. **Required Query** * id:in -- ID of the *Customer Address*
- addresses
- Delete Customer Attribute Values
- Deletes Customer Attribute Values. Deletes the attribute value from the customer. **Required Query** * id:in - ID of the *Customer Attribute Value*
- attributeValues
- Delete Customer Attributes
- Deletes Customer Attributes from the store. **Required Query** * id:in -- ID of the *Customer Attribute*
- attributes
- Delete Multiple Metafields
- Delete all customer metafields.
- metafieldsBatch
- Archive Order
- Archives an order. To remove a single product from an order, see `PUT /orders/{order_id}`.
- orders
- Delete Metafield
- Deletes a `Metafield`.
- metafields
- Delete Order Shipment
- Deletes a shipment associated with an order.
- orderShipments
- Delete Order Shipments
- Deletes all shipments associated with an order.
- orderShipments
- Delete All Orders
- Archives all orders.
- orders
- Delete Multiple Metafields
- Delete all order metafields.
- batchMetafields
- Delete Product
- Deletes a *Product*.
- products
- Delete Product Complex Rule
- Deletes a product *Complex Rule*.
- complexRules
- Delete Product Custom Field
- Deletes a product *Custom Field*.
- customFields
- Delete Product Image
- Deletes a *Product Image*.
- images
- Delete Product Metafield
- Deletes a *Product Metafield*.
- metafields
- Delete Product Modifier
- Deletes a product modifier.
- productModifiers
- Delete Product Modifier Value
- Deletes a modifier value.
- values
- Delete Product Review
- Deletes a *Product Review*.
- reviews
- Delete Product Variant
- Deletes a product variant.
- productVariants
- Delete Product Variant Metafield
- Deletes a product variant *Metafield*.
- metafields
- Delete Product Variant Option
- Deletes a *Variant Option*.
- productVariantOptions
- Delete Product Variant Option Value
- Deletes a *Variant Option Value*.
- values
- Delete Product Video
- Deletes a *Product Video*.
- videos
- Delete Products
- To delete *Product* objects, you must include a filter. This prevents inadvertently deleting all *Product* objects in a store. > #### Note > The maximum number of products you can delete at one time is 250. **Example**: To delete products with IDs 1,2 and 3, use `DELETE /v3/catalog/products?id:in=1,2,3`.
- products
- Delete Products Category Assignments
- Deletes products category assignments. A filter must be supplied.
- categoryAssignments
- Delete Products Channel Assignments
- Delete products channel assignments. A filter must be supplied.
- channelAssignments
- Delete Multiple Metafields
- Delete all product metafields.
- batchMetafields
- Delete Categories
- Deletes categories. To delete a specific category in a tree, provide a category ID.
- categories
- Delete Multiple Metafields
- Delete all variant metafields.
- batchMetafields
- List Bulk Pricing Rules
- Returns all *Bulk Pricing Rules*. Optional parameters can be passed in.
- bulkPricingRules
- List Categories
- Returns a list of categories. To get a specific category in a tree, provide a category ID.
- categories
- List Customer Metafields
- Get all customer metafields.
- metafieldsBatch
- Get Brand
- Returns a single brand. Optional filter parameters can be passed in.
- brands
- Get Brand Metafield
- Returns a brand metafield. Optional filter parameters can be passed in.
- metafields
- List Brand Metafields
- Returns a list of brand metafields. Optional filter parameters can be passed in.
- metafields
- List Brands
- Returns a list of brands. Optional filter parameters can be passed in.
- brands
- List Brand Metafields
- Get all brand metafields.
- batchMetafields
- Get Bulk Pricing Rule
- Returns a single *Bulk Pricing Rule*. Optional parameters can be passed in.
- bulkPricingRules
- Get Catalog Summary
- Returns a lightweight inventory summary from the BigCommerce Catalog. The inventory summary includes: * "inventory_count" * "variant_count" * "inventory_value" * "highest_variant_price" * "average_variant_price" * "lowest_variant_price" * "oldest_variant_date" * "newest_variant_date" * "primary_category_id" * "primary_category_name"
- summary
- List Categories
- When possible, use the [Catalog Trees - Get all categories](/developer/api-reference/rest/admin/catalog/category-trees/categories/get-all-categories) endpoint instead. Returns a list of *Categories*. Optional filter parameters can be passed in. **Note:** The default rate limit for this endpoint is 40 concurrent requests.
- categories
- List Category Metafields
- Get all category metafields.
- batchMetafields
- Get Category
- When possible, use the [Catalog Trees - Get all categories](/developer/api-reference/rest/admin/catalog/category-trees/categories/get-all-categories) endpoint instead. You can provide a category identifier using query parameters to retrieve a single category. Returns a single *Category*. Optional parameters can be passed in. **Note:** The default rate limit for this endpoint is 40 concurrent requests.
- categories
- Get Category Metafield
- Returns a single *Category Metafield*. Optional parameters can be passed in.
- metafields
- List Category Metafields
- Returns a list of *Metafields* on a *Category*. Optional filter parameters can be passed in.
- metafields
- Get Product Sort Order
- Returns a list of products and their sort order for a specific category. **Limits** - page=2&limit=250 will return page 2 of the results with 250 items per page. **Usage Notes** * Product sort order only takes effect on the storefront when sorting by **Featured Items** in the category. See [Sort Order](https://support.bigcommerce.com/s/article/Sort-Order) for more information. * Data pairs are displayed in ascending order based on products' `sort_order` values. * `null` values are allowed for products without specified `sort_order` values. * Products with `sort_order` value of `null` will be displayed after products with valid numerical values. * The priorities for determining product sort order on a storefront are the following: * Priority 1: Manually specified sort order on Category Level (API). * Priority 2: Manually specified sort order on Product (Global) Level (UI/API). * Priority 3: Default sorting by Product ID (newly added products go first) (UI/API).
- sortOrder
- Get Category Tree
- Returns a category tree. **Note:** The default rate limit for this endpoint is 1 concurrent request.
- categoryTrees
- List Category Trees
- Returns a list of category trees.
- categoryTrees
- Get Channel Order Settings
- Returns order settings for a specific channel.
- orderSettings
- Get Customer Consent
- Gets the status of a customerʼs consent to allow data collection by cookies and scripts while shopping on a storefront.
- consent
- List Stored Instruments
- Lists all available stored instruments for a customer. This list will include all types of stored instruments namely card, account and bank_account instruments
- storedInstruments
- List Customers
- Returns a list of Customers. Optional filter parameters can be passed in. **Notes** Attribute names are not available on the customer object.
- customers
- List Customer Addresses
- Returns a list of Customer Addresses. Optional filter parameters can be passed in.
- addresses
- List Customer Attribute Values
- Returns a list of Customer Attribute Values. Optional filter parameters can be passed in.
- attributeValues
- List Customer Attributes
- Returns a list of Customer Attributes. You can pass in optional filter parameters.
- attributes
- List Customer Form Field Values
- Returns a list of form field values for the Customer or Customer Address object. To learn about adding and managing form fields, see [Adding and Editing Fields in the Account Signup Form](https://support.bigcommerce.com/s/article/Editing-Form-Fields).
- formFieldValues
- List Customer Metafields
- Gets customer metafields by passing the `customerId` in the query parameters.
- metafields
- Get Customer Settings
- Returns the global-level customer settings. **Notes:** * Global customer settings don't apply on a channel when there are channel specific settings configured through [Channel Settings](/developer/api-reference/rest/admin/management/customers/v3/channel-settings).
- globalSettings
- Get Customer Settings per Channel
- Returns the customer settings per channel. **Notes:** * `null` value configuration indicates that there is no override provided for a given channel; thus, values are inherited from [Global Settings](/developer/api-reference/rest/admin/management/customers/v3/global-settings).
- channelSettings
- Get Global Order Settings
- Returns global order settings.
- orderSettings
- Get Customer Metafield
- Returns a single *Customer Metafield*.
- metafields
- Get Order
- Gets an *Order*. To learn more about creating or updating orders, see [Orders Overview](/developer/docs/admin/checkout-and-cart/orders).
- orders
- List Consignment Shipping Quotes
- Get all shipping quotes persisted on an order for a shipping consignment. This is a read-only endpoint whose response depends on the shipping quote. You can only generate a shipping quote using the storefront at this time. Orders that are created in the control panel, or using the API, return a 204 status response since you can't generate a shipping quote during that process.
- orderConsignments
- List Consignments
- Get all consignments for an order.
- orderConsignments
- List Order Coupons
- Lists all order coupons. Optional parameters can be passed in. |Type `int`|Type Name| |-|-| |`0`|`per_item_discount`| |`1`|`percentage_discount`| |`2`|`per_total_discount`| |`3`|`shipping_discount`| |`4`|`free_shipping`| |`5`|`promotion`|
- orderCoupons
- List Fees
- Get all fees for an order.
- orderFees
- List Order Messages
- Gets the messages associated with an order.
- orderMessages
- Get Metafield
- Gets a `Metafield`, by `order_id`.
- metafields
- List Order Metafields
- Gets a `Metafield` object list, by `order_id`. The maximum number of metafields allowed on each order, product, category, variant, or brand is 250 per client ID.
- metafields
- Get Order Product
- Gets a product line item associated with the order.
- orderProducts
- List Order Products
- Lists 50 order products on an order using `order_id`. By default, items are sorted from lowest to highest according to a newly created ID, separate from the `order_id` and the `product_id`. **Note**: The response `id` is required when you [create order shipments](/developer/docs/admin/checkout-and-cart/orders#creating-order-shipments).
- orderProducts
- Get Refund
- Returns a refund by refund ID.
- paymentActions
- List Refunds for Order
- Returns a list of refunds ordered by refund ID in ascending order for the given order. Requires at least one of the following scopes: * `store_v2_transactions_read_only` * `store_v2_transactions` * `store_v2_orders_read_only` * `store_v2_orders`
- paymentActions
- Get Shipment
- Gets an order shipment.
- orderShipments
- List Order Shipments
- Gets a list of all shipments on an order.
- orderShipments
- Get Count of Order Shipments
- Gets a count of the number of shipments that have been made for a single order.
- orderShipments
- Get Shipping Address
- Gets a shipping address associated with an order. Returned in the response is shipping_quotes object. Please use the Get Shipping Quotes Endpoint. Using the response will return a 204 for the shipping quote.
- orderShippingAddresses
- List Order Shipping Quotes
- Gets all shipping quotes persisted on an order. This is a read-only endpoint and the output can vary based on the shipping quote. A shipping quote can only be generated using the storefront at this time. Orders that are created in the control panel or using the API return a 204 for this endpoint since a shipping quote is not generated during that process.
- orderShippingAddressesQuotes
- List Order Shipping Addresses
- Get all shipping addresses on an order using the `order_id`. Returned in the response is shipping_quotes object. Please use the Get Shipping Quotes Endpoint. Using the response will return a 204 for the shipping quote.
- orderShippingAddresses
- List Order Statuses
- Returns a Collection of All Order Statuses. **Order Status Descriptions:** |Status ID | Name | Description | |-|-|-| | 0 | Incomplete | An incomplete order happens when a shopper reached the payment page, but did not complete the transaction. | | 1 | Pending |Customer started the checkout process, but did not complete it. | | 2 | Shipped | Order has been shipped, but receipt has not been confirmed; seller has used the Ship Items action. | | 3 | Partially Shipped | Only some items in the order have been shipped, due to some products being pre-order only or other reasons. | | 4 | Refunded | Seller has used the Refund action. | | 5 | Cancelled | Seller has cancelled an order, due to a stock inconsistency or other reasons. | | 6 | Declined | Seller has marked the order as declined for lack of manual payment, or other reasons. | | 7 | Awaiting Payment | Customer has completed checkout process, but payment has yet to be confirmed. | | 8 | Awaiting Pickup | Order has been pulled, and is awaiting customer pickup from a seller-specified location. | | 9 | Awaiting Shipment | Order has been pulled and packaged, and is awaiting collection from a shipping provider. | | 10 | Completed | Client has paid for their digital product and their file(s) are available for download. | | 11 | Awaiting Fulfillment | Customer has completed the checkout process and payment has been confirmed. | | 12 | Manual Verification Required | Order is on hold while some aspect needs to be manually confirmed. | | 13 | Disputed | Customer has initiated a dispute resolution process for the PayPal transaction that paid for the order. | | 14 | Partially Refunded | Seller has partially refunded the order. |
- orderStatus
- Get Single Order Status by ID
- Returns a single order status. **Order Status Descriptions** |Status ID | Name | Description | |:--|:--|:--| | 0 | Incomplete | An incomplete order happens when a shopper reached the payment page, but did not complete the transaction. | | 1 | Pending |Customer started the checkout process, but did not complete it. | | 2 | Shipped | Order has been shipped, but receipt has not been confirmed; seller has used the Ship Items action. | | 3 | Partially Shipped | Only some items in the order have been shipped, due to some products being pre-order only or other reasons. | | 4 | Refunded | Seller has used the Refund action. | | 5 | Cancelled | Seller has cancelled an order, due to a stock inconsistency or other reasons. | | 6 |Declined | Seller has marked the order as declined for lack of manual payment, or other reasons. | | 7 | Awaiting Payment | Customer has completed checkout process, but payment has yet to be confirmed. | | 8 | Awaiting Pickup | Order has been pulled, and is awaiting customer pickup from a seller-specified location. | | 9 | Awaiting Shipment | Order has been pulled and packaged, and is awaiting collection from a shipping provider. | | 10 | Completed | Client has paid for their digital product and their file(s) are available for download. | | 11 | Awaiting Fulfillment | Customer has completed the checkout process and payment has been confirmed. | | 12 | Manual Verification Required | Order is on hold while some aspect needs to be manually confirmed. | | 13 | Disputed | Customer has initiated a dispute resolution process for the PayPal transaction that paid for the order. | | 14 | Partially Refunded | Seller has partially refunded the order. |
- orderStatus
- List Order Taxes
- Gets all order taxes using `order_id`. Each tax applied to an order. This information can be useful for reporting purposes. Pass in the query parameter `?details=true` to return extra details about order taxes. `order_product_id` and `line_item_type` are also returned. All values are read-only.
- orderTaxes
- List Transactions
- Returns an **orderʼs** transactions. **Usage Notes** * Depending on the payment method, different information will be available (not all payment gateways return full card or fraud detail). Requires at least one of the following scopes: * `store_v2_transactions_read_only` * `store_v2_transactions`
- transactions
- List Orders
- Gets a list of orders using the filter query. **Notes** * The default sort is by order id, from lowest to highest. * By default, requests sent without parameters will only return 50 orders.
- orders
- Get Count of Orders
- Gets an array of orders in the store organized by order status.
- orders
- List Order Metafields
- Get all order metafields.
- batchMetafields
- List Refunds
- Returns a list of refunds ordered by refund ID in ascending order. Requires at least one of the following scopes: * `store_v2_transactions_read_only` * `store_v2_transactions` * `store_v2_orders_read_only` * `store_v2_orders`
- paymentActions
- Get Product
- Returns a single *Product*. Optional parameters can be passed in.
- products
- Get Product Complex Rule
- Returns a single *Complex Rule*. Optional parameters can be passed in.
- complexRules
- List Complex Rules
- Returns a list of all product *Complex Rules*. Optional parameters may be passed in.
- complexRules
- Get Product Custom Field
- Returns a *Custom Field*.
- customFields
- List Product Custom Fields
- Returns a list of product *Custom Fields*. You can pass in optional parameters.
- customFields
- Get Product Image
- Returns a single *Product Image*. Optional parameters can be passed in.
- images
- List Product Images
- Returns a list of *Product Images*. Optional parameters can be passed in.
- images
- Get Product Metafield
- Returns a single *Product Metafield*. Optional parameters can be passed in.
- metafields
- List Product Metafields
- Returns a list of *Product Metafields*. Optional parameters can be passed in.
- metafields
- Get Product Modifier
- Returns a single product modifier. Optional parameters can be passed in.
- productModifiers
- Get Product Modifier Value
- Returns a single modifier value. Optional parameters can be passed in.
- values
- List Product Modifier Values
- Returns a list of all product *Modifier Values*. Optional parameters can be passed in.
- values
- List Product Modifiers
- Returns a list of all product modifiers. Optional parameters can be passed in.
- productModifiers
- Get Product Review
- Returns a single *Product Review*. Optional parameters maybe passed in.
- reviews
- List Product Reviews
- Returns a list of all *Product Reviews*. Optional parameters can be passed in.
- reviews
- Get Product Variant
- Returns a single product variant. Optional parameters can be passed in.
- productVariants
- Get Product Variant Metafield
- Returns a single product variant *Metafield*. Optional parameters can be passed in.
- metafields
- List Product Variant Metafields
- Returns a list of product variant *Metafields*. Optional parameters can be passed in.
- metafields
- Get Product Variant Option
- Returns a single *Variant Option*. Optional parameters can be passed in.
- productVariantOptions
- Get Product Variant Option Value
- Returns a single *Variant Option Value*. Optional parameters can be passed in.
- values
- List Product Variant Option Values
- Returns a list of all *Variant Option Values*. Optional parameters can be passed in.
- values
- List Product Variant Options
- Returns a list of product *Variant Options*. Optional parameters can be passed in.
- productVariantOptions
- List Product Variants
- Returns a list of product variants. Optional parameters can be passed in.
- productVariants
- Get Product Video
- Returns a single *Product Video*. Optional parameters can be passed in.
- videos
- List Product Videos
- Returns a list of *Product Videos*. Optional parameters can be passed in.
- videos
- List Products
- Returns a list of **Products**. Optional filter parameters can be passed in.
- products
- List Products Category Assignments
- Returns a list of products category assignments.
- categoryAssignments
- List Products Channel Assignments
- Returns a list of products channel assignments.
- channelAssignments
- List Product Metafields
- Get all product metafields.
- batchMetafields
- List Variants
- Returns a list of all variants in your catalog. Optional parameters can be passed in.
- variantsBatch
- List Product Variant Metafields
- Get all variant metafields.
- batchMetafields
- Update Brand
- Updates a brand. To update a brand image, send a request with an `image_url`.
- brands
- Update Brand Metafield
- Updates a brand 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. * The maximum number of metafields allowed on each order, product, category, variant, or brand is 250 per client ID. For more information, see [Platform Limits](https://support.bigcommerce.com/s/article/Platform-Limits) in the Help Center.
- metafields
- Update Multiple Metafields
- Create multiple metafields.
- batchMetafields
- Update Bulk Pricing Rule
- Updates a *Bulk Pricing Rule*. **Required Fields** * none **Read-Only Fields** - id
- bulkPricingRules
- Update Categories
- Updates existing categories. To update a specific category in a tree, provide a `category id`. The `url` property is optional, but if included, its path must be unique per channel and category. If the path is not unique, the category will still be created but the URL will not — the response returns a multi-status to indicate the partial success.
- categories
- Update Multiple Metafields
- Create multiple metafields.
- batchMetafields
- Update Category
- When possible, use the [Catalog Trees - Update categories](/developer/api-reference/rest/admin/catalog/category-trees/categories/update-categories) endpoint instead. Updates a *Category*. **Required Fields** * none **Read-Only Fields** - id **Note:** The default rate limit for this endpoint is 40 concurrent requests.
- categories
- Update Category Metafield
- Updates a *Category 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.
- metafields
- Update Product Sort Order
- Updates sort order of products within a specific category.
- sortOrder
- Update Channel Order Settings
- Updates order settings for a specific channel. **Note:** You must override both notifications `email_addresses` or neither, i.e. either both notification `email_addresses` are an array of valid email addresses, or both `email_addresses` must be null. You may not have one set to an array of addresses and the other set to `null`.
- orderSettings
- Update Customer Consent
- Updates the status of a customerʼs consent to allow data collection by cookies and scripts while shopping on a storefront.
- consent
- Upsert Customer Form Field Values
- This endpoint is deprecated. Use [Update a Customer Address](/developer/api-reference/rest/admin/management/customers/v3/addresses/update-customers-addresses) and [Update Customers](/developer/api-reference/rest/admin/management/customers/v3/update-customers) endpoints instead. To learn more about editing form fields, see [Adding and Editing Fields in the Account Signup Form](https://support.bigcommerce.com/s/article/Editing-Form-Fields). **Limits** * Limit of 10 concurrent requests.
- formFieldValues
- Update Metafield
- Updates customer metafields. To update the customer metafields, use 'customerId' and 'metafield' in the query parameters.
- metafields
- Update Customers
- Updates Customers. Subresource updates are not supported. **Required Fields** * id -- ID of the *Customer* This must be included in the request body **Read Only Fields** * id * registration_ip_address * date_created * date_modified * origin_channel_id **Limits** * Limit of 10 customers per call. * Limit of 3 concurrent requests **Notes** * Attributes Values can not be updated using Update a Customer. Use the [Update customer attribute values](/developer/api-reference/rest/admin/management/customers/v3/attribute-values/upsert-customers-attribute-values) endpoint. * channel_ids -- Updating the list of channels a customer can access may create some side effects in a multi-storefront situation. This list determines which customer account we will use to authenticate a shopper given a channel. * origin_channel_id -- This is an immutable value set as a reference to the channel of origin when a customer is created.
- customers
- Update Customer Address
- Updates a Customer Address. Multiple customer addresses can be updated in one call. **Required Fields** * **id** -- ID of the *Customer Address* **Limits** * Limit of **3** concurrent requests. **Notes** * A unique customer address is a combination of the following core address fields: * **first_name** * **last_name** * **company** * **phone** * **address_type** * **address1** * **address2** * **city** * **country_code** * **state_or_province** * **postal_code** * An attempt to update an address such that it becomes identical to another address that already exists will result in no change to the target address or custom form field values. The response will have an HTTP 200 return code, and the address will be absent from the response body.
- addresses
- Update Customer Attribute
- Updates a Customer Attribute. Multiple customer attributes can be updated in one call. **Required Fields** * id -- ID of the *Customer Attribute* Once the data type is set, it can not be changed. The attribute will need to be deleted then created again with the new data type. This will also delete it from the customer. **Limits** * Limit of 3 concurrent requests.
- attributes
- Update Multiple Metafields
- Create multiple metafields.
- metafieldsBatch
- Update Customer Settings
- Updates the customer settings on the global level.
- globalSettings
- Update Customer Settings per Channel
- Update the customer settings per channel **Required Fields** * `channel_id`: Provide a `channel_id` array containing one or more channel IDs. Customers will have access to these channels and no others. This array cannot be empty. **Notes** * Setting `null` will delete override per given channel, and values will be inherited from the global level. Make sure the channel has `allow_global_logins` enabled.
- channelSettings
- Update Global Order Settings
- Updates global order settings.
- orderSettings
- Update Order
- Updates an *Order*. To add a product to an existing order, don't include `id` in the body. Include `product_options` if adding a product with variants. To update a product in an order, include `id` in the body. The body should only contain the fields that need to be updated. Those fields that are omitted will not be changed. To remove a product from an order, set that product’s `quantity` to `0`. After the update, the PUT request clears all discounts and promotions applied to the changed order line items. Since the order data syncs with other ERP systems, like Amazon or eBay, the updated order returns to the default setting, removing any applied discounts. To update order fees, include the fee id in the request body along with all relevant fee fields. Fees not included will be deleted. Fees with an id will be updated, and fees without an id will be created as new. **Notes** * Sub-resources like products in the /v2/orders PUT request behave like PATCH, updating only the provided fields. Fees, however, follow standard PUT semantics and fees in the request body will fully replace existing ones. To retain an existing fee, include it in the body with its associated id. * The values for cost_ex_tax, cost_inc_tax and cost_tax in the fees payload should reflect the tax rate associated with the tax_class_id. For a 10% tax rate, the difference between cost_inc_tax and cost_ex_tax should be 10%. If no tax_class_id is provided, the store's default "tax class for fee" will apply. Incorrect data may lead to issues in downstream operations like refunds. To learn more about creating or updating orders, see [Orders Overview](/developer/docs/admin/checkout-and-cart/orders). > #### Note > * If historical orders processed on another eCommerce platform are being migrated to BigCommerce, supply the `external_source` field with the code **M-MIG**. This code will exclude the historical orders from the store’s GMV/order count, which factors into pricing.
- orders
- Update Metafield
- Updates a `Metafield` object. The maximum number of metafields allowed on each order, product, category, variant, or brand is 250 per client ID.
- metafields
- Update Shipment
- Updates an existing shipment associated with an order.
- orderShipments
- Update Shipping Address
- Update a shipping address associated with an order. **Note**: Updating a shipping address will NOT trigger the recalculation of shipping cost and tax
- orderShippingAddresses
- Update Multiple Metafields
- Update multiple metafields.
- batchMetafields
- Update Product
- Updates a *Product*. **Limits** - A product can have up to 1000 images. Each image file or image uploaded by URL can be up to 8 MB. **Read-Only Fields** - id - date_created - date_modified - calculated_price - base_variant_id
- products
- Update Product Complex Rule
- Updates a *Complex Rule*. **Required Fields**: - none **Read-Only Fields**: - complex_rule_id - conditions_id - rule_id - combination_id - id
- complexRules
- Update Product Custom Field
- Updates a *Custom Field*. **Required Fields** - none **Name-Value Pair Uniqueness** - Every name-value pair must be unique inside a product. **Read-Only** - id **Limits** - 200 custom fields per product limit. - 250 characters per custom field limit.
- customFields
- Update Product Image
- Updates a *Product Image*. **Usage Notes** - `image_url` - `255` character limit - Each image file or image uploaded by URL can be up to 8 MB. - For file uploads, send a POST request using the `multipart/form-data` media type
- images
- Update Product Metafield
- 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.
- metafields
- Update Product Modifier
- Updates a product modifier. Date modifiers are required to be provided in [ISO-8601 ATOM](https://www.php.net/manual/en/class.datetimeinterface.php#datetimeinterface.constants.atom) format. Excluding them in a request will throw a server error. **Setting an option value image** `adjusters.image_url` is read-only on this endpoint. To attach or replace the image shown on the storefront for an option value, upload it via [Create Product Modifier Image](/developer/api-reference/rest/admin/catalog/product-modifiers/images/create-product-modifier-image). The upload binds the image to the value automatically; no follow-up call is needed.
- productModifiers
- Update Product Modifier Value
- Updates a modifier value. **Read-Only Fields** * is_default **Setting an option value image** `adjusters.image_url` is read-only on this endpoint. To replace the image shown on the storefront for the value, upload a new image via [Create Product Modifier Image](/developer/api-reference/rest/admin/catalog/product-modifiers/images/create-product-modifier-image). The upload binds the image to the value automatically; no follow-up call is needed. > `is_default` is derived from the parent modifier configuration and cannot be set on individual values. To change which value is the default, use [Update Product Modifier](/developer/api-reference/rest/admin/catalog/product-modifiers/update-product-modifier) and include the full `option_values` array with the desired `is_default` flags.
- values
- Update Product Review
- Updates a *Product Review*. **Required Fields** * none **Read-Only Fields** * id
- reviews
- Update Product Variant
- Updates a product variant.
- productVariants
- 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.
- metafields
- Update Product Variant Option
- Updates a *Variant Option*. **Read-Only Fields** * id
- productVariantOptions
- Update Product Variant Option Value
- Updates a *Variant Option Value*. **Read-Only Fields** * id * is_default > `is_default` is derived from the parent option configuration and cannot be set on individual values. To change which value is the default, use [Update Product Variant Option](/developer/api-reference/rest/admin/catalog/product-variant-options/update-product-variant-option) and include the full `option_values` array with the desired `is_default` flags.
- values
- Update Product Video
- Updates a *Product Video. **Required Fields** * none **Read-Only Fields** * id The Catalog API integrates with third-party YouTube, and you must load videos through YouTube. The [YouTube Terms of Service](https://www.youtube.com/t/terms) and [Google Privacy Policy](https://policies.google.com/privacy) apply, as indicated in our [Privacy Policy](https://www.bigcommerce.com/privacy/) and [Terms of Service](https://www.bigcommerce.com/terms/).
- videos
- Update Products (batch)
- Updates products in batches. Batches are limited to 10 products. **Required Fields** * `id` - product `id` is required for batch updates to products. **Read-Only Fields** - `id` - `date_created` - `date_modified` - `calculated_price` - `base_variant_id`
- products
- Update Multiple Metafields
- Update multiple metafields.
- batchMetafields
- Update Variants (batch)
- Updates a batch of `variant` objects. Currently the limit is 50 variants however this is subject to change. **Required Fields** To update an existing variant: * id (variant ID) To create a new variant: * product_id * sku * option_values - id (option_value ID - Example: 146) - option_id (Option ID - Example: 151)
- variantsBatch
- Update Multiple Metafields
- Create multiple metafields.
- batchMetafields
- Upsert Category Trees
- Upserts category trees. This single endpoint updates and creates category trees. If a tree object contains an ID, it is processed as an update operation using that ID. If you do not provide an ID, a new tree is created. The category tree `name` field is required to create trees, but is not required on the update. **Usage Notes** * Channel ID in the `channels` field is required to create a category tree. You can only assign a category tree to one channel. * The `channels` field must be absent when updating a category tree. This field is currently unsupported during a category tree update.
- categoryTrees
- Upsert Customer Attribute Values
- Upserts Customer Attribute Values. Updates the attribute values on the Customer. Multiple customer attribute values can be updated in one call. Upsert checks for an existing record. If there is none, it creates the record, if there is a matching record, it updates that record. **Limits** * Limit of 10 customers per call. * Limit of 3 concurrent requests.
- attributeValues
- Validate Customer Credentials
- Validate a customer credentials - This endpoint has special rate limiting protections to protect against abuse.
- validateCredentials
- Void
- Void the payment for an order. When there are no payment method validation issues, the void process is successful, the `payment_status` updates to `void pending`, and the void payment request is scheduled. The payment request itself occurs asynchronously. Requires at least one of the following scopes: * `store_v2_orders` * `store_v2_transactions`
- paymentActions
BigCommerce integration, answered
- How do AI agents use BigCommerce through Open Connector?
- Your user connects BigCommerce once with one of its cataloged authentication methods. Open Connector stores the credential in an encrypted vault and exposes BigCommerce tools to your agent over MCP or a typed API, with credentials injected server-side on each call.
- Is this a BigCommerce MCP server?
- Yes. Open Connector can serve BigCommerce as a named MCP server with a scoped allowlist and a per-user connection URL, so any MCP client can call BigCommerce actions with credentials injected server-side.
- Where do BigCommerce credentials live?
- In your own infrastructure. Open Connector keeps credentials in its own vault and injects them at call time, so they never leave your environment.
Give your agents BigCommerce — keep the keys.
Open source, self-hostable, with BigCommerce credentials that never leave your infrastructure. Run it from source today.