BigCommerce API v3 Support

July 24, 2019

Recently we have introduced support of BigCommerce API v3 in Skyvia - universal cloud platform for data integration, backup, and management. Skyvia does not enforce the use of API v3, however. It allows users to select the API version for your connection to use when creating a connection.

API Differences

The new BigCommerce API was introduced to simplify product management, reduce the number of API calls used, and improve API performance. There is a number of differences between API v2 and API v3, regarding product management.

Example Products and Product Variants Differences

API v3

In API v3, product variants are available via the ProductVariants object. This object contains records for all the products. Even if a product does not have multiple variants, it will have a base variant record.

Option management via API v3 is also significantly changed. The options you create via API v3 are product-specific. They cannot be reused for other products, and they are not available via BigCommerce Control Panel. Options and their values can be accessed via the ProductVariantOptions and ProductVariantOptionValues objects, and each record must reference a product, for which this option is used.

So to create a product with multiple variants via API v3, you need to create a record in the Product object first, then add the necessary ProductVariantOptions and ProductVariantOptionValues records, and finally add the required ProductVariant records.

API v2

For API v2 connections, the information about product variants is available via the ProductSKUs object. It contains records only for products with multiple variants.

To create a product with multiple variants, based on product options, via API v2, one should create records in the Options object, then create values for these options via the OptionValues object. Then the user needs to create an option set for the product via the OptionSets object and assign the necessary options to it via the OptionSetOptions object.

After this, the user can load a record with a reference to the corresponding OptionSet into the Product object and add records for its variants to the ProductSKUs object, providing values for the options from the option set via its Options field.

The options and option sets, created via API v2, can be reused for other products, and are available via BigCommerce Control Panel.

Other New Features in API v3

As for new features, introduced with API v3, modifier options (product options that don't create new variants/SKUs) are now available via separate ProductModifiers and ProductModifierValues objects. It is now also possible to work with metafields. These are the fields that are available only via API, and can be made specific for an applications or available to other applications. Metafields are available via BrandMetafields, CategoryMetafields, ProductMetafields, and ProductVariantMetafields objects.

Object Support and Differences in API v3

BigCommerce API v3 is not complete, and does not cover yet all BigCommerce features. When using BigCommerce API v3 connection, Skyvia works with some BigCommerce objects, supported in API v3, via API v3, and other objects are accessed via API v2.

API v3

When using BigCommerce API v3 connection, Skyvia provides access to the objects, related to products, product variants, options, brands, metafields, and price lists via API v3. Here you can see the schema of these objects (click to open the enlarged version).

Schema of BigCommerce API v3 objects in Skyvia

API v2

Here is the schema of the corresponding objects, available via BigCommerce API v2 connections in Skyvia.

Schema of BigCommerce API v3 objects in Skyvia

Please note that the schemas above may not reflect all the relations between BigCommerce records, because some of them are implemented via JSON and JSON array fields. For example, the relation between ProductVariants/ProductSKUs records and options is not reflected here, because it is stored within the JSON array values of the OptionValues/Options field.

All the other objects are accessed via BigCommerce API v2 when using both API v2 and API v3 connections, because API v3 for them is not yet released by BigCommerce. Here is the list of these objects:

  • BlogPosts
  • BlogTags
  • Redirects
  • Customers
  • CustomerCustomFields
  • CustomerAddresses
  • CustomerAddressesCustomFields
  • CustomerGroups
  • Countries
  • States
  • Coupons
  • GiftCertificates
  • Orders
  • OrderCoupons
  • OrderMessages
  • OrderProducts
  • OrderProductOptions
  • OrderShippingAddresses
  • OrderStatuses
  • OrderTaxes
  • OrderShipments
  • PaymentMethods
  • ShippingMethods
  • ShippingZones
  • Store
  • TaxClasses

Authentication Changes

API v3

For API v3, only OAuth authentication is supported. You can get parameters for OAuth (Store Credentials) authentication by creating an API account in the Advanced Settings on your BigCommerce store Control Panel.

Please note that connections using App Credentials cannot be manually created. We are going to implement such connections soon, and they will be created automatically when the user installs Skyvia into BigCommerce via BigCommerce App Marketplace.

API v2

For API v2, Skyvia supports both OAuth authentication and legacy HTTP Basic authentication. Note that BigCommerce strongly recommends using OAuth authentication, and Basic authentication is not available at all for newer BigCommerce stores, registered after July 31, 2018.