BigCommerce API

By Abhishek Kumar
5 min read
Unlock BigCommerce's powerful API to manage products, orders, and more. Integrate systems, automate workflows, and create custom e-commerce solutions with ease.

Table of Contents

Create differentiated commerce experiences on the industry’s most versatile enterprise e-commerce solution. Learn more about BigCommerce.

API Overview

BigCommerce is an e-commerce platform that provides businesses with a comprehensive set of tools to create, manage, and grow their online stores. It offers a user-friendly interface, customizable templates, and a wide range of features such as product management, inventory tracking, order processing, payment gateway integration, and marketing automation. BigCommerce also provides access to a vast ecosystem of apps and integrations, allowing businesses to extend the functionality of their stores and tailor them to their specific needs. With its scalability, reliability, and robust feature set, BigCommerce empowers businesses of all sizes to succeed in the competitive e-commerce landscape.

BigCommerce API provides a comprehensive set of RESTful APIs that allow developers to integrate their applications and systems with BigCommerce stores. The API documentation is extensive and well-organized, providing clear and detailed information on all available endpoints, request parameters, and response formats. The REST APIs cover a wide range of functionality, including product management, order processing, customer management, and reporting. Additionally, BigCommerce offers Webhooks, which are real-time notifications that can be used to trigger actions or updates in external systems when specific events occur in the store. To ensure stability and prevent excessive usage, BigCommerce implements rate limits on API requests. Developers can monitor their API usage through the BigCommerce dashboard and adjust their integration accordingly to stay within the limits.

API Request Limits

Free

10 requests per second

Standard

50 requests per second

Pro

100 requests per second

Enterprise

200 requests per second

APIs

Orders

Method: get

Description: Retrieves a list of orders..

Endpoint: /orders

Parameters: order_id, customer_id, email, created_min, created_max, updated_min, updated_max, status, payment_status, fulfillment_status, shipping_provider, channel_id, limit, page_number, sort

Orders

Method: post

Description: Creates a new order..

Endpoint: /orders

Parameters: customer_id, email, shipping_address_first_name, shipping_address_last_name, shipping_address_street_1, shipping_address_street_2, shipping_address_city, shipping_address_state, shipping_address_zip, shipping_address_country, shipping_address_country_iso2, shipping_address_phone, billing_address_first_name, billing_address_last_name, billing_address_street_1, billing_address_street_2, billing_address_city, billing_address_state, billing_address_zip, billing_address_country, billing_address_country_iso2, billing_address_phone, products, shipping_cost_pre_tax, shipping_cost_tax, shipping_cost_total, tax_total, subtotal, total, terms_and_conditions, channel_id

Orders

Method: put

Description: Updates an order..

Endpoint: /orders/{orderId}

Parameters: order_id, email, shipping_address_first_name, shipping_address_last_name, shipping_address_street_1, shipping_address_street_2, shipping_address_city, shipping_address_state, shipping_address_zip, shipping_address_country, shipping_address_country_iso2, shipping_address_phone, billing_address_first_name, billing_address_last_name, billing_address_street_1, billing_address_street_2, billing_address_city, billing_address_state, billing_address_zip, billing_address_country, billing_address_country_iso2, billing_address_phone, products, shipping_cost_pre_tax, shipping_cost_tax, shipping_cost_total, tax_total, subtotal, total, terms_and_conditions, channel_id

Orders

Method: patch

Description: Updates an order..

Endpoint: /orders/{orderId}

Parameters: customer_id, email, shipping_address_first_name, shipping_address_last_name, shipping_address_street_1, shipping_address_street_2, shipping_address_city, shipping_address_state, shipping_address_zip, shipping_address_country, shipping_address_country_iso2, shipping_address_phone, billing_address_first_name, billing_address_last_name, billing_address_street_1, billing_address_street_2, billing_address_city, billing_address_state, billing_address_zip, billing_address_country, billing_address_country_iso2, billing_address_phone, products, shipping_cost_pre_tax, shipping_cost_tax, shipping_cost_total, tax_total, subtotal, total, terms_and_conditions, channel_id

Orders

Method: delete

Description: Deletes an order..

Endpoint: /orders/{orderId}

Parameters: order_id

Products

Method: get

Description: Retrieves a list of products..

Endpoint: /products

Parameters: product_id, sku, category_id, brand_id, keyword, limit, page_number, sort

Products

Method: post

Description: Creates a new product..

Endpoint: /products

Parameters: name, sku, description, weight, price, cost_price, inventory_level, inventory_warning_level, tax_class_id, product_tax_code, upc, mpn, gtin, url, categories, variants, images, custom_fields

Products

Method: put

Description: Updates a product..

Endpoint: /products/{productId}

Parameters: product_id, name, sku, description, weight, price, cost_price, inventory_level, inventory_warning_level, tax_class_id, product_tax_code, upc, mpn, gtin, url, categories, variants, images, custom_fields

Products

Method: patch

Description: Updates a product..

Endpoint: /products/{productId}

Parameters: product_id, name, sku, description, weight, price, cost_price, inventory_level, inventory_warning_level, tax_class_id, product_tax_code, upc, mpn, gtin, url, categories, variants, images, custom_fields

Products

Method: delete

Description: Deletes a product..

Endpoint: /products/{productId}

Parameters: product_id

Customers

Method: get

Description: Retrieves a list of customers..

Endpoint: /customers

Parameters: customer_id, email, first_name, last_name, limit, page_number, sort

Customers

Method: post

Description: Creates a new customer..

Endpoint: /customers

Parameters: first_name, last_name, email, company, phone, fax, website, notes, customer_group_id, taxvat, channel_id

Customers

Method: put

Description: Updates a customer..

Endpoint: /customers/{customerId}

Parameters: customer_id, first_name, last_name, email, company, phone, fax, website, notes, customer_group_id, taxvat, channel_id

Customers

Method: patch

Description: Updates a customer..

Endpoint: /customers/{customerId}

Parameters: customer_id, first_name, last_name, email, company, phone, fax, website, notes, customer_group_id, taxvat, channel_id

Customers

Method: delete

Description: Deletes a customer..

Endpoint: /customers/{customerId}

Parameters: customer_id

Categories

Method: get

Description: Retrieves a list of categories..

Endpoint: /categories

Parameters: category_id, parent_id, name, limit, page_number, sort

Categories

Method: post

Description: Creates a new category..

Endpoint: /categories

Parameters: name, parent_id

Categories

Method: put

Description: Updates a category..

Endpoint: /categories/{categoryId}

Parameters: category_id, name, parent_id

Categories

Method: patch

Description: Updates a category..

Endpoint: /categories/{categoryId}

Parameters: category_id, name, parent_id

Categories

Method: delete

Description: Deletes a category..

Endpoint: /categories/{categoryId}

Parameters: category_id

Brands

Method: get

Description: Retrieves a list of brands..

Endpoint: /brands

Parameters: brand_id, name, limit, page_number, sort

Brands

Method: post

Description: Creates a new brand..

Endpoint: /brands

Parameters: name

Brands

Method: put

Description: Updates a brand..

Endpoint: /brands/{brandId}

Parameters: brand_id, name

Brands

Method: patch

Description: Updates a brand..

Endpoint: /brands/{brandId}

Parameters: brand_id, name

Brands

Method: delete

Description: Deletes a brand..

Endpoint: /brands/{brandId}

Parameters: brand_id

Shipping Zones

Method: get

Description: Retrieves a list of shipping zones..

Endpoint: /shipping/zones

Parameters: zone_id, name, shipping_methods, limit, page_number, sort

Shipping Zones

Method: post

Description: Creates a new shipping zone..

Endpoint: /shipping/zones

Parameters: name

Shipping Zones

Method: put

Description: Updates a shipping zone..

Endpoint: /shipping/zones/{zoneId}

Parameters: zone_id, name

Shipping Zones

Method: patch

Description: Updates a shipping zone..

Endpoint: /shipping/zones/{zoneId}

Parameters: zone_id, name

Shipping Zones

Method: delete

Description: Deletes a shipping zone..

Endpoint: /shipping/zones/{zoneId}

Parameters: zone_id

Shipping Methods

Method: get

Description: Retrieves a list of shipping methods..

Endpoint: /shipping/methods

Parameters: method_id, name, limit, page_number, sort

Shipping Methods

Method: post

Description: Creates a new shipping method..

Endpoint: /shipping/methods

Parameters: name, shipping_zone_id, sale_channels, minimum_order_amount, maximum_order_amount, shipping_cost_pre_tax, shipping_cost_tax, shipping_cost_total, tax_class_id, tax_code, free_shipping, fulfillment_service_id, carrier_code, tracking_url_template, admin_name, admin_code, custom_shipping_options, percentage_based_shipping_cost, flat_rate_shipping_cost, destination_based_shipping_rate, destination_based_shipping_costs, live_rates_enabled, handling_cost_pre_tax, handling_cost_tax, handling_cost_total, handling_requires_signature, handling_fee_amount, handling_fee_type, handling_tax_class_id

Shipping Methods

Method: put

Description: Updates a shipping method..

Endpoint: /shipping/methods/{methodId}

Parameters: method_id, name, shipping_zone_id, sale_channels, minimum_order_amount, maximum_order_amount, shipping_cost_pre_tax, shipping_cost_tax, shipping_cost_total, tax_class_id, tax_code, free_shipping, fulfillment_service_id, carrier_code, tracking_url_template, admin_name, admin_code, custom_shipping_options, percentage_based_shipping_cost, flat_rate_shipping_cost, destination_based_shipping_rate, destination_based_shipping_costs, live_rates_enabled, handling_cost_pre_tax, handling_cost_tax, handling_cost_total, handling_requires_signature, handling_fee_amount, handling_fee_type, handling_tax_class_id

Shipping Methods

Method: patch

Description: Updates a shipping method..

Endpoint: /shipping/methods/{methodId}

Parameters: method_id, name, shipping_zone_id, sale_channels, minimum_order_amount, maximum_order_amount, shipping_cost_pre_tax, shipping_cost_tax, shipping_cost_total, tax_class_id, tax_code, free_shipping, fulfillment_service_id, carrier_code, tracking_url_template, admin_name, admin_code, custom_shipping_options, percentage_based_shipping_cost, flat_rate_shipping_cost, destination_based

FAQ

How do I authenticate to the BigCommerce API?

You can use OAuth2 to authenticate to the API. You'll need to create an app in the BigCommerce developer dashboard and use the credentials provided to generate access tokens.

What are the rate limits for the BigCommerce API?

The API has rate limits in place to prevent abuse. The specific limits depend on the endpoint and your account type. You can check the documentation for each endpoint to see the specific rate limit.

How do I create a sandbox account for development?

You can create a sandbox account from the BigCommerce developer dashboard. Sandbox accounts allow you to test your integrations without affecting your live store.

How do I apply for a developer account?

You can apply for a developer account from the BigCommerce developer portal. A developer account gives you access to additional resources and support.

How can I get help with using the BigCommerce APIs?

There are several ways to get help with using the BigCommerce APIs. You can check the documentation, join the community forums, or contact BigCommerce support.

Last Update: September 03, 2024