@platform/sdk-commerce
Typed TypeScript client for services/commerce. The page is generated from the SDK package source plus its generated OpenAPI types.
Installation
npm install @platform/sdk-commerceYou’ll also need the shared auth/client helpers:
npm install @platform/hosts @platform/sdkQuick start
import { LoopClient } from "@platform/sdk";
import { platformHost, SERVICE_NAMES } from "@platform/hosts";
import { createCommerceClient } from "@platform/sdk-commerce";
const loop = new LoopClient({
clientId: process.env.LOOP_CLIENT_ID!,
clientSecret: process.env.LOOP_CLIENT_SECRET!,
redirectUri: "https://your-app.example.com/auth/loop/callback",
});
const commerce = createCommerceClient({
baseUrl: platformHost({ service: SERVICE_NAMES.COMMERCE }),
accessToken: tokens.access_token,
});Use the convenience helpers below when the SDK exposes them, or call the typed endpoint methods directly with GET / POST / PATCH / DELETE.
Convenience helpers
This SDK does not add convenience helpers beyond the typed endpoint calls below.
Endpoint calls
GET /readyz
Underlying REST endpoint: GET /readyz
Parameters
None
Return type
Promise<{
data?: paths["/readyz"]["get"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await commerce.GET("/readyz");GET /v1/addresses
Underlying REST endpoint: GET /v1/addresses
Parameters
None
Return type
Promise<{
data?: paths["/v1/addresses"]["get"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await commerce.GET("/v1/addresses");POST /v1/addresses
Underlying REST endpoint: POST /v1/addresses
Parameters
body: paths["/v1/addresses"]["post"]["requestBody"]["content"]["application/json"]
Return type
Promise<{
data?: paths["/v1/addresses"]["post"]["responses"]["201"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await commerce.POST("/v1/addresses", {
body: {
/* paths["/v1/addresses"]["post"]["requestBody"]["content"]["application/json"] */
},
});DELETE /v1/addresses/{id}
Underlying REST endpoint: DELETE /v1/addresses/\{id\}
Parameters
path: paths["/v1/addresses/{id}"]["delete"]["parameters"]["path"]
Return type
Promise<{
data?: paths["/v1/addresses/{id}"]["delete"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await commerce.DELETE("/v1/addresses/{id}", {
params: {
path: {
id: "<id>",
},
},
});PATCH /v1/addresses/{id}
Underlying REST endpoint: PATCH /v1/addresses/\{id\}
Parameters
path: paths["/v1/addresses/{id}"]["patch"]["parameters"]["path"]body: paths["/v1/addresses/{id}"]["patch"]["requestBody"]["content"]["application/json"]
Return type
Promise<{
data?: paths["/v1/addresses/{id}"]["patch"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await commerce.PATCH("/v1/addresses/{id}", {
params: {
path: {
id: "<id>",
},
},
body: {
/* paths["/v1/addresses/{id}"]["patch"]["requestBody"]["content"]["application/json"] */
},
});POST /v1/admin/erasure
Underlying REST endpoint: POST /v1/admin/erasure
Parameters
body: paths["/v1/admin/erasure"]["post"]["requestBody"]["content"]["application/json"]
Return type
Promise<{
data?: paths["/v1/admin/erasure"]["post"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await commerce.POST("/v1/admin/erasure", {
body: {
/* paths["/v1/admin/erasure"]["post"]["requestBody"]["content"]["application/json"] */
},
});POST /v1/admin/sync/affiliate-bc-customer-groups
Underlying REST endpoint: POST /v1/admin/sync/affiliate-bc-customer-groups
Parameters
None
Return type
Promise<{
data?: paths["/v1/admin/sync/affiliate-bc-customer-groups"]["post"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await commerce.POST("/v1/admin/sync/affiliate-bc-customer-groups");POST /v1/admin/sync/channel-orders
Underlying REST endpoint: POST /v1/admin/sync/channel-orders
Parameters
None
Return type
Promise<{
data?: paths["/v1/admin/sync/channel-orders"]["post"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await commerce.POST("/v1/admin/sync/channel-orders");POST /v1/admin/sync/customer-profiles
Underlying REST endpoint: POST /v1/admin/sync/customer-profiles
Parameters
None
Return type
Promise<{
data?: paths["/v1/admin/sync/customer-profiles"]["post"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await commerce.POST("/v1/admin/sync/customer-profiles");POST /v1/admin/sync/profiles-to-bigcommerce
Underlying REST endpoint: POST /v1/admin/sync/profiles-to-bigcommerce
Parameters
None
Return type
Promise<{
data?: paths["/v1/admin/sync/profiles-to-bigcommerce"]["post"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await commerce.POST("/v1/admin/sync/profiles-to-bigcommerce");GET /v1/brands
Underlying REST endpoint: GET /v1/brands
Parameters
None
Return type
Promise<{
data?: paths["/v1/brands"]["get"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await commerce.GET("/v1/brands");GET /v1/brands/{slug}
Underlying REST endpoint: GET /v1/brands/\{slug\}
Parameters
path: paths["/v1/brands/{slug}"]["get"]["parameters"]["path"]
Return type
Promise<{
data?: paths["/v1/brands/{slug}"]["get"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await commerce.GET("/v1/brands/{slug}", {
params: {
path: {
slug: "<slug>",
},
},
});POST /v1/carts
Underlying REST endpoint: POST /v1/carts
Parameters
body: paths["/v1/carts"]["post"]["requestBody"]["content"]["application/json"]
Return type
Promise<{
data?: paths["/v1/carts"]["post"]["responses"]["201"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await commerce.POST("/v1/carts", {
body: {
/* paths["/v1/carts"]["post"]["requestBody"]["content"]["application/json"] */
},
});GET /v1/carts/{id}
Underlying REST endpoint: GET /v1/carts/\{id\}
Parameters
path: paths["/v1/carts/{id}"]["get"]["parameters"]["path"]
Return type
Promise<{
data?: paths["/v1/carts/{id}"]["get"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await commerce.GET("/v1/carts/{id}", {
params: {
path: {
id: "<id>",
},
},
});POST /v1/carts/{id}/checkout
Underlying REST endpoint: POST /v1/carts/\{id\}/checkout
Parameters
path: paths["/v1/carts/{id}/checkout"]["post"]["parameters"]["path"]
Return type
Promise<{
data?: paths["/v1/carts/{id}/checkout"]["post"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await commerce.POST("/v1/carts/{id}/checkout", {
params: {
path: {
id: "<id>",
},
},
});POST /v1/carts/{id}/items
Underlying REST endpoint: POST /v1/carts/\{id\}/items
Parameters
path: paths["/v1/carts/{id}/items"]["post"]["parameters"]["path"]body: paths["/v1/carts/{id}/items"]["post"]["requestBody"]["content"]["application/json"]
Return type
Promise<{
data?: paths["/v1/carts/{id}/items"]["post"]["responses"]["201"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await commerce.POST("/v1/carts/{id}/items", {
params: {
path: {
id: "<id>",
},
},
body: {
/* paths["/v1/carts/{id}/items"]["post"]["requestBody"]["content"]["application/json"] */
},
});GET /v1/orders
Underlying REST endpoint: GET /v1/orders
Parameters
None
Return type
Promise<{
data?: paths["/v1/orders"]["get"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await commerce.GET("/v1/orders");GET /v1/orders/{id}
Underlying REST endpoint: GET /v1/orders/\{id\}
Parameters
path: paths["/v1/orders/{id}"]["get"]["parameters"]["path"]
Return type
Promise<{
data?: paths["/v1/orders/{id}"]["get"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await commerce.GET("/v1/orders/{id}", {
params: {
path: {
id: "<id>",
},
},
});GET /v1/products
Underlying REST endpoint: GET /v1/products
Parameters
query?: paths["/v1/products"]["get"]["parameters"]["query"]
Return type
Promise<{
data?: paths["/v1/products"]["get"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await commerce.GET("/v1/products", {
params: {
query: {
/* paths["/v1/products"]["get"]["parameters"]["query"] */
},
},
});GET /v1/products/{id}
Underlying REST endpoint: GET /v1/products/\{id\}
Parameters
path: paths["/v1/products/{id}"]["get"]["parameters"]["path"]
Return type
Promise<{
data?: paths["/v1/products/{id}"]["get"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await commerce.GET("/v1/products/{id}", {
params: {
path: {
id: "<id>",
},
},
});POST /v1/products/sync
Underlying REST endpoint: POST /v1/products/sync
Parameters
None
Return type
Promise<{
data?: paths["/v1/products/sync"]["post"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await commerce.POST("/v1/products/sync");POST /v1/promo-codes/validate
Underlying REST endpoint: POST /v1/promo-codes/validate
Parameters
body: paths["/v1/promo-codes/validate"]["post"]["requestBody"]["content"]["application/json"]
Return type
Promise<{
data?: paths["/v1/promo-codes/validate"]["post"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await commerce.POST("/v1/promo-codes/validate", {
body: {
/* paths["/v1/promo-codes/validate"]["post"]["requestBody"]["content"]["application/json"] */
},
});POST /v1/subscriptions
Underlying REST endpoint: POST /v1/subscriptions
Parameters
body: paths["/v1/subscriptions"]["post"]["requestBody"]["content"]["application/json"]
Return type
Promise<{
data?: paths["/v1/subscriptions"]["post"]["responses"]["201"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await commerce.POST("/v1/subscriptions", {
body: {
/* paths["/v1/subscriptions"]["post"]["requestBody"]["content"]["application/json"] */
},
});GET /v1/subscriptions/{id}
Underlying REST endpoint: GET /v1/subscriptions/\{id\}
Parameters
path: paths["/v1/subscriptions/{id}"]["get"]["parameters"]["path"]
Return type
Promise<{
data?: paths["/v1/subscriptions/{id}"]["get"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await commerce.GET("/v1/subscriptions/{id}", {
params: {
path: {
id: "<id>",
},
},
});POST /v1/subscriptions/{id}/cadence
Underlying REST endpoint: POST /v1/subscriptions/\{id\}/cadence
Parameters
path: paths["/v1/subscriptions/{id}/cadence"]["post"]["parameters"]["path"]body: paths["/v1/subscriptions/{id}/cadence"]["post"]["requestBody"]["content"]["application/json"]
Return type
Promise<{
data?: paths["/v1/subscriptions/{id}/cadence"]["post"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await commerce.POST("/v1/subscriptions/{id}/cadence", {
params: {
path: {
id: "<id>",
},
},
body: {
/* paths["/v1/subscriptions/{id}/cadence"]["post"]["requestBody"]["content"]["application/json"] */
},
});POST /v1/subscriptions/{id}/cancel
Underlying REST endpoint: POST /v1/subscriptions/\{id\}/cancel
Parameters
path: paths["/v1/subscriptions/{id}/cancel"]["post"]["parameters"]["path"]body?: paths["/v1/subscriptions/{id}/cancel"]["post"]["requestBody"]["content"]["application/json"]
Return type
Promise<{
data?: paths["/v1/subscriptions/{id}/cancel"]["post"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await commerce.POST("/v1/subscriptions/{id}/cancel", {
params: {
path: {
id: "<id>",
},
},
body: {
/* paths["/v1/subscriptions/{id}/cancel"]["post"]["requestBody"]["content"]["application/json"] */
},
});POST /v1/subscriptions/{id}/pause
Underlying REST endpoint: POST /v1/subscriptions/\{id\}/pause
Parameters
path: paths["/v1/subscriptions/{id}/pause"]["post"]["parameters"]["path"]
Return type
Promise<{
data?: paths["/v1/subscriptions/{id}/pause"]["post"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await commerce.POST("/v1/subscriptions/{id}/pause", {
params: {
path: {
id: "<id>",
},
},
});POST /v1/subscriptions/{id}/resume
Underlying REST endpoint: POST /v1/subscriptions/\{id\}/resume
Parameters
path: paths["/v1/subscriptions/{id}/resume"]["post"]["parameters"]["path"]
Return type
Promise<{
data?: paths["/v1/subscriptions/{id}/resume"]["post"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await commerce.POST("/v1/subscriptions/{id}/resume", {
params: {
path: {
id: "<id>",
},
},
});POST /v1/subscriptions/{id}/skip
Underlying REST endpoint: POST /v1/subscriptions/\{id\}/skip
Parameters
path: paths["/v1/subscriptions/{id}/skip"]["post"]["parameters"]["path"]
Return type
Promise<{
data?: paths["/v1/subscriptions/{id}/skip"]["post"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await commerce.POST("/v1/subscriptions/{id}/skip", {
params: {
path: {
id: "<id>",
},
},
});POST /v1/subscriptions/{id}/swap
Underlying REST endpoint: POST /v1/subscriptions/\{id\}/swap
Parameters
path: paths["/v1/subscriptions/{id}/swap"]["post"]["parameters"]["path"]body: paths["/v1/subscriptions/{id}/swap"]["post"]["requestBody"]["content"]["application/json"]
Return type
Promise<{
data?: paths["/v1/subscriptions/{id}/swap"]["post"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await commerce.POST("/v1/subscriptions/{id}/swap", {
params: {
path: {
id: "<id>",
},
},
body: {
/* paths["/v1/subscriptions/{id}/swap"]["post"]["requestBody"]["content"]["application/json"] */
},
});GET /v1/subscriptions/customer/{customerId}
Underlying REST endpoint: GET /v1/subscriptions/customer/\{customerId\}
Parameters
path: paths["/v1/subscriptions/customer/{customerId}"]["get"]["parameters"]["path"]
Return type
Promise<{
data?: paths["/v1/subscriptions/customer/{customerId}"]["get"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await commerce.GET("/v1/subscriptions/customer/{customerId}", {
params: {
path: {
customerId: "<customerId>",
},
},
});POST /v1/unfurl
Underlying REST endpoint: POST /v1/unfurl
Parameters
body: paths["/v1/unfurl"]["post"]["requestBody"]["content"]["application/json"]
Return type
Promise<{
data?: paths["/v1/unfurl"]["post"]["responses"]["200"]["content"]["application/json"];
error?: unknown;
response: Response;
}>Example
const result = await commerce.POST("/v1/unfurl", {
body: {
/* paths["/v1/unfurl"]["post"]["requestBody"]["content"]["application/json"] */
},
});