A lightweight, opinionated CommerceLayer SDK built for fast delivery of e-commerce functionalities.
Go to the documentation website
The official CommerceLayer SDK is a great multi-purpose library, however we realized that it was missing a few functionalities that we had to reimplement in every project we worked on.
This library aims to speed development up by creating a thinner and easier interface with the CommerceLayer API and provide utilities to deal with the most common scenerios.
All supported resources are strongly typed and provide code autocompletion for attributes and relationships, decreasing time spent reading the CommerceLayer API documentation.
Combining Authentication and Resource API into a single library allows for automatic refresh of tokens when a request fails due to an expired token.
Tokens are cached by their scope and expiration date, avoiding rate limiting errors when generating static pages or making a lot of concurrent requests.
Switch between multiple markets and automatically create new auth tokens for that market.
npm i @atoms-studio/commercelayer-sdk
yarn add @atoms-studio/commercelayer-sdk
import { init, Auth, Orders, Skus } from '@atoms-studio/commercelayer-sdk'
init({
host: 'https://<your cl domain>.commercelayer.io',
clientId: '<your cl client id>',
})
await Auth.setMarket(1234)
const order = await Orders.create()
const sku = await Skus.findBy({
code: '12345678',
include: ['prices'],
})
await LineItems.create({
attributes: {
sku_code: sku.code,
quantity: 1,
},
relationships: {
order
}
})