Skip to content

Public APIs

The Public API integration lets you programmatically manage B2B pricing rules and registration workflows at scale, without manually configuring each rule in the app dashboard.

Public APIs are intended for:

  • Developers integrating B2B pricing with external ERP or PIM systems
  • Merchants with large catalogs who need automated pricing rule management
  • Teams using CSV/data pipeline workflows to sync pricing from external sources

Public API access requires the Platinum plan (or the Enterprise plan if your store is on a legacy plan).

All API requests require an Access Key generated from within the app:

  1. In the app menu, click Integrations and find the Public API card.
  2. Click Get API key, then generate the API key.

Integrations page with the Public API card and its Get API key button

  1. Copy your Access Key.

API key card right after generating a key: the key (hidden in this screenshot), Copy and Download

Treat the key like a password: anyone with it can read your B2B data and call the write endpoints. If it leaks, delete (revoke) it on the same card; clients using it stop working at once, and you can generate a new key.

  1. Include it in every request: either in the request body as accessKey, or as a header. The header name depends on the API version, so check which one your endpoint uses:
API version Endpoints Header name
v1 (/api/v1/...) Custom Pricing (CP), Price List (PL), Registration Form (RF), and all v1 Volume Pricing (VP) endpoints x-bss-b2b-api-key
v2 (/api/v2/...) Volume Pricing (VP) GET /api/v2/vp/rules x-api-key

Some v1 endpoints read the key from the request body only and reject the header with 400 No domain or access key invalid: the three upload endpoints (rule/upload, qb/rule/upload, pl/rule/upload), PUT /rule/delete-items, PUT /pl/delete-items and PUT /pl/update-items. For these, send accessKey in the JSON body.

Send requests to https://solution-public-api.bss-b2b.solutions. The previous host b2b-solution-public-api.bsscommerce.com keeps working, so existing integrations do not need to change.

API Group What it manages
Uploading APIs Upload/sync active rules to your Shopify theme
Volume Pricing (VP) APIs Manage quantity break / volume pricing rules
Custom Pricing (CP) APIs Manage custom pricing rules
Price List (PL) APIs Manage price list per customer rules
Registration Form (RF) APIs Manage wholesale registration workflows

On the Integrations page, click Logs and usage on the Public API card. The page lists your recent API requests with the columns Request, Created at, Status, Method and Path, in three tabs: Custom Pricing, Volume Pricing and Price Lists. Request logs are kept for 30 days. Click a row to see the full request and response. Requests to other resources, such as Discount Code, Registration Form or Order Limit, are listed under the Price Lists tab.

Use it to confirm that your integration connects, and to see why a request failed.

Endpoint group Limit
Upload endpoints 1 request per module per 5 minutes
Bulk write endpoints (bulk-save, mass-delete, bulk-delete) While one of these calls, or a delete-items / update-items call, is running for a store, other bulk write calls for the same store, in any module (CP, PL, VP), return 429 Domain is executing another process. Try later. After a server error, wait up to 3 minutes.

Exceeding rate limits returns a 429 Too Many Requests response.

Pricing data is stored in Shopify metafields as JSON with these limits:

  • Maximum 10 keys per metafield
  • Maximum 2,000,000 characters per key
  • Maximum ~20,000,000 characters total

Content exceeding these limits will not be uploaded to the theme.