You should request API keys for your shop (api_key
& api_secret
) via ticket to support.
Authentication is managed via HTTP authentication. There are several clusters which your app can be installed on. During the installation you should get the cluster_id
. Please make sure you specify API requests to the correct cluster URL.
Cluster URLs
There are two clusters which your app can be installed on. During the installation we send you the cluster_id
. Please make sure you send API requests to the correct cluster.
CLUSTERS
https://api.webshopapp.com/
https://api.shoplightspeed.com/
Url of the Lightspeed eCom cluster. Fro example,
api.webshopapp.com
api.shoplightspeed.com
Lightspeed eCom shop language.
API Key which you received from support during configuration a shop.
API Secret which you received from support during configuration a shop.
The technical notes page gives some technical details about Lightspeed-ecom component like changelog.
Lightspeed-ecom component includes the following triggers:
Polling entity
This trigger polls for existing and updated objects where you can select object type.
Webhook subscription
This trigger can create webhook to receive any changes for chosen type of entities.
Lightspeed-ecom component includes the following actions:
Create Object
Action creates a new record/object. This action is supported by limited list of entities.
Upsert Object
Action creates a new object or updates object which already exists by provided ID. This action is supported by limited list of entities.
Update Object
Action updates object which already exists by provided ID. This action is supported by limited list of entities.
Lookup Object By ID
Action gets a list of objects by filters or specific object by provided ID.
Delete Object By ID
Action removes object which already exists by provided ID.
The component is providing request of a whole list of an entity by iterative API requests without user intervention.
A bit of theory:
Lightspeed eCom API limits the number of returned objects to 50
by default and 250
as max. When requesting large data sets it may be necessary to send multiple requests to retrieve all of the data. The meta-dictionary that’s returned tells the current page, and if there’s another page of results after this one, the next entry gives you the URL where it can be fetched.
Depending on the structure of your data, it’s possible that the API may not be able to return the number of resources requested before a HTTP 504 (Gateway Timeout) happens. For example, if your first 100 orders have 1,000 line items each, you might hit a 429 when trying to fetch them.
You can control the page size for a GET request with the limit parameter.
Coming back to the component:
In the component, at the Polling Trigger
configuration you can configure count of fetching results per page by an appropriate configuration field.
If you notice that 429s are coming back, you should reduce the limit until you start getting 200s. A sensible strategy for this is probably to iteratively halve the page size until you stop getting 429s.
The component was not tested with the latest Lightspeed eCom version. Althouh it was fully tested with one the recent eCom releases, 100% compatibility can not be guaranteed
The current version of the component doesn’t support next list of entities:
Lightspeed eCom API Documentation
Click here to learn more about the elastic.io iPaaS