SyliusShopApiClient
JavaScript client on top of SyliusShopApiPlugin to build integrations with ease.
Installation
Download the package:
- Using npm
$ npm install lin3s-sylius-shop-api-client
- Using yarn
$ yarn add lin3s-sylius-shop-api-client
Import the client:
- Using
import
:
import createSyliusApiClient from 'lin3s-sylius-shop-api-client';
- Using
require()
:
const createSyliusApiClient = require('lin3s-sylius-shop-api-client');
Initialize the client
const api =
Usage
For example to use the productsByTaxonSlug
using the parameters as described in the API docs bellow ({slug}
=
an object containing slug property and its value):
const products = apitaxon;
Adding custom endpoints
In case a new endpoint is created in shop-api you can still use the configuration of the client. Your custom function will receive the config via parameters and it must return a function. This function has to be passed in the constructor. An example:
;// You can make use of requestConfig helpers and session values; const myCustomEndpoint = { axios ;}; const api = ; // Usageconst response = apicustom;apiSessionCart;
API
api.cart
Cart Method | Params | Status |
---|---|---|
api.cart.pickup | ~ | ✅ |
api.cart.summary | {cartId} (optional) | ✅ |
api.cart.drop | ❌ | |
api.cart.addItem | {productCode, variantCode, quantity} | ✅ |
api.cart.addItems | [{productCode, variantCode, quantity}] | ❌ |
api.cart.changeItemQuantity | ✅ | |
api.cart.removeItem | {orderItemId} | ✅ |
api.cart.estimatedShippingCost | ❌ | |
api.cart.addCoupon | ✅ | |
api.cart.removeCoupon | ✅ |
api.checkout
Checkout Method | Params | Status |
---|---|---|
api.checkout.summary | ❌ | |
api.checkout.address | {shippingAddress, billingAddress} | ✅ |
api.checkout.chooseShippingMethod | {shipmentId, methodCode} | ✅ |
api.checkout.choosePaymentMethod | {paymentId, methodCode} | ✅ |
api.checkout.availableShippingMethods | ~ | ✅ |
api.checkout.availablePaymentMethods | ~ | ✅ |
api.checkout.complete | {notes} | ✅ |
api.product
Product Method | Params | Status |
---|---|---|
api.product.bySlug | {slug} | ✅ |
api.product.byCode | ❌ | |
api.product.reviewsBySlug | ❌ | |
api.product.reviewsByCode | ❌ | |
api.product.addReviewBySlug | ❌ | |
api.product.addReviewByCode | ❌ |
api.taxon
Taxon Method | Params | Status |
---|---|---|
api.taxon.all | ✅ | |
api.taxon.byCode | ❌ | |
api.taxon.productsByTaxonCode | ❌ | |
api.taxon.productsByTaxonSlug | {slug} | ✅ |
api.user
User Method | Params | Status |
---|---|---|
api.user.register | {email, firstname, lastname, plainPassword} | ✅ |
api.user.resendVerificationLink | ❌ | |
api.user.verifyAccount | ❌ | |
api.user.requestPasswordReset | {email} | ✅ |
api.user.passwordReset | {password} | ✅ |
api.user.login | {_username, _password} | ✅ |
api.user.me | ~ | ✅ |