About the BigCommerce category

Put topics about this connector package here.
Always check the ‘How to use the Alumio connector packages’ topic.

Extra information

System documentation: Carts | BigCommerce Dev Center

Connector package documentation

​​Table of Contents

  • 1. Setting up the BigCommerce HTTP Client
    • 1.1 Steps
  • 2. Subscribing to entities from BigCommerce
    • 2.1 Steps
    • 2.2 General concept
  • 3. Publishing entities to BigCommerce
    • 3.1 Steps
    • 3.2 General concept

1. Setting up the BigCommerce HTTP Client

1.1 Steps

  1. Go to the API Accounts page in BigCommerce Control Panel (Advanced Settings → API Accounts) and create a new API Account.
  2. Select the scopes you need and save them.
  3. You will get a file downloaded from the page containing the Base URI and Access Token to be used to configure the HTTP Client in your Alumio Dashboard.
  4. In the Alumio Dashboard, go to Clients → HTTP Clients. Create a new HTTP Client and select BigCommerce Client as the prototype of the HTTP Client.
  5. Fill in the Base URI and Access Token with the values from the downloaded file when creating an API Account in the BigCommerce Control Panel. We recommend putting the Base URI and Access Token as Alumio Environment Variables and using the variables instead of directly filling the values in the BigCommerce HTTP Client form.

2. Subscribing to Entities from BigCommerce

2.1 Steps

  1. Go to Connections → Incoming, create a new incoming configuration, and select BigCommerce – Entity Subscriber as the subscriber.
  2. Select the entity you want to subscribe to from BigCommerce.
  3. Add any request parameters needed to subscribe to the entity (optional).
  4. You can add a transformer to manipulate the request parameters into something you need.
  5. Select the BigCommerce HTTP Client to use.
  6. You can add a pagination feature to allow Alumio to fetch a paginated entity.

2.2 General Concept

We follow BigCommerce documentation on building this connector, so you can easily use the connector based on BigCommerce API Reference.

Entity

This is the entity you want to subscribe to from BigCommerce. Please refer to the entities in Management APIs from the BigCommerce API Reference page.

Request Parameters

These are the parameters you can provide to get the needed entity based on the BigCommerce API reference. Please look at the example below on how to fill the Request Parameters field when subscribing to the “Product Images” entity.

image

  • Path is the path parameter of the URL. For example the {id}.
  • Query is a defined set of parameters attached to the end of a URL.
    Example: www.url.com?type=true&start=0

This means that we want to subscribe to product images of a product with ID 111, and we only want to fetch the url_standard and url_thumbnail of every image. We can see in the documentation that the product images entity requires product_id as a path parameter to define which product we want to fetch the images from.

image

That’s why we need to define the product_id property inside the path key in the Request Parameters field. The properties inside query parameters (in this example, would be include_fields, page, and limit) will be parsed as query parameters. The final URL that Alumio requested is /v3/catalog/products/111/images?page=1&limit=3&include_fields=url_standard%2Curl_thumbnail

Input Transformer

Any transformers set here will be executed after the Request Parameters are loaded. So, you basically can add any transformer to provide and manipulate the request parameters into anything you need, either as path parameters and/or as query parameters of an entity.

HTTP Client

This is the HTTP Client configuration or prototype you will use to access BigCommerce.

Follow Pagination

We can configure Alumio to be able to fetch a paginated entity from BigCommerce in a single run of the incoming configuration. In order to do a pagination for a BigCommerce entity within Alumio, you need to fill the “Pattern to Items” with “data” because BigCommerce wraps the data returned inside the “data” property. And then, please select “Increase query parameter” as the “Follow Pagination” method. Please have a look at the picture below.

The above configuration will allow Alumio to fetch a maximum of 100 pages of the entity with 100 entities per page. When Alumio has fetched the 100th page, Alumio will stop and track the pagination progress in the Storage, which you can select “Storage to track progress”. In the next run of the incoming configuration, Alumio will continue the pagination process if you select the storage.

3. Publishing Entities to BigCommerce

3.1 Steps

  1. Go to Connections → Outgoing, create a new outgoing configuration and select BigCommerce – Entity Publisher as the publisher.
  2. Select the action you want the publisher to do with the data.
  3. Select the BigCommerce entity where you want the data to be published.
  4. You can optionally add any query parameters to the request.
  5. You can add transformers to manipulate the data into anything you need before submitting it to BigCommerce.
  6. Select the HTTP Client to use.

3.2 General Concept

Like the subscriber, the publisher has similar methods on how to use it. The difference is the payload that will be submitted by the publisher originating from the data (from routes, from transformers in the outgoing configuration). However, you can also add or modify the payload using a Request Transformer.

Action

Currently, we support Create (HTTP POST method), Update (HTTP PUT method), and Delete (HTTP DELETE method) entities.

Entity

We support publishing to most BigCommerce endpoints but not publishing binary files at the moment. Please refer to the entities in Management APIs from the BigCommerce API Reference page. Based on the documentation, some endpoints may need one or more path parameters.

For endpoints that require an object as the request payload, please look at the example below. For example, we want to update an image of a specific product. Please select “Update” as the action and “Product Image by Product ID and Image ID” as the entity of the publisher.

image

The documentation says that we need product_id and image_id as path parameters. In that case, you need to provide product_id and image_id properties into the path property in the data, either as an output from Routes or output from Transformers in the Outgoing Configuration. And you can put the payload you want to send to BigCommerce into the payload key in the data. Here is an example of the required data.

image

Alumio will send an API request to BigCommerce with URL /v3/catalog/products/111/images/371, and the body will be like this:

image

For endpoints that require us to put query parameters into the URL, i.e., Delete Brands, you can just put the query into the query property in the data like this:

image

  • Path is the path parameter of the URL. For example, the {id}.
  • Query is a defined set of parameters attached to the end of a URL.
    Example: www.url.com?type=true&start=0
  • Payload is the data contained within a request.

Alumio will send an API request to BigCommerce with URL /v3/catalog/brands?name=Brand%20X

HTTP Client

This is the HTTP Client configuration or prototype you will use to access BigCommerce.