Agent skill
b2c-scapi-schemas
Browse and retrieve (B2C/SFCC/Demandware) SCAPI OpenAPI schemas with the b2c cli. Always reference when using the CLI to browse SCAPI schemas, check API request/response formats, explore available endpoints, or understand SCAPI data models.
Install this agent skill to your Project
npx add-skill https://github.com/SalesforceCommerceCloud/b2c-developer-tooling/tree/main/skills/b2c-cli/skills/b2c-scapi-schemas
SKILL.md
B2C SCAPI Schemas Skill
Use the b2c CLI plugin to browse and retrieve SCAPI OpenAPI schema specifications.
Tip: If
b2cis not installed globally, usenpx @salesforce/b2c-cliinstead (e.g.,npx @salesforce/b2c-cli scapi schemas list).
Required: Tenant ID
The --tenant-id flag is required for all commands. The tenant ID identifies your B2C Commerce instance.
Important: The tenant ID is NOT the same as the organization ID:
- Tenant ID:
zzxy_prd(used with commands that require--tenant-id) - Organization ID:
f_ecom_zzxy_prd(used in SCAPI URLs, hasf_ecom_prefix)
Deriving Tenant ID from Hostname
For sandbox instances, you can derive the tenant ID from the hostname by replacing hyphens with underscores:
| Hostname | Tenant ID |
|---|---|
zzpq-013.dx.commercecloud.salesforce.com |
zzpq_013 |
zzxy-001.dx.commercecloud.salesforce.com |
zzxy_001 |
abcd-dev.dx.commercecloud.salesforce.com |
abcd_dev |
For production instances, use your realm and instance identifier (e.g., zzxy_prd).
Examples
List Available Schemas
# list all available SCAPI schemas
b2c scapi schemas list --tenant-id zzxy_prd
# list with JSON output
b2c scapi schemas list --tenant-id zzxy_prd --json
Filter Schemas
# filter by API family (e.g., product, checkout, search)
b2c scapi schemas list --tenant-id zzxy_prd --api-family product
# filter by API name
b2c scapi schemas list --tenant-id zzxy_prd --api-name shopper-products
# filter by status
b2c scapi schemas list --tenant-id zzxy_prd --status current
Get Schema (Collapsed/Outline - Default)
By default, schemas are output in a collapsed format optimized for context efficiency. This is ideal for agentic use cases and LLM consumption.
# get collapsed schema (paths show methods, schemas show names only)
b2c scapi schemas get product shopper-products v1 --tenant-id zzxy_prd
# save to file
b2c scapi schemas get product shopper-products v1 --tenant-id zzxy_prd > schema.json
Get Schema with Selective Expansion
Expand only the parts of the schema you need:
# expand specific paths
b2c scapi schemas get product shopper-products v1 --tenant-id zzxy_prd --expand-paths /products,/products/{productId}
# expand specific schemas
b2c scapi schemas get product shopper-products v1 --tenant-id zzxy_prd --expand-schemas Product,ProductResult
# combine expansions
b2c scapi schemas get product shopper-products v1 --tenant-id zzxy_prd --expand-paths /products --expand-schemas Product
Get Full Schema
# get full schema without any collapsing
b2c scapi schemas get product shopper-products v1 --tenant-id zzxy_prd --expand-all
List Available Paths/Schemas/Examples
Discover what's available in a schema before expanding:
# list all paths in the schema
b2c scapi schemas get product shopper-products v1 --tenant-id zzxy_prd --list-paths
# list all schema names
b2c scapi schemas get product shopper-products v1 --tenant-id zzxy_prd --list-schemas
# list all examples
b2c scapi schemas get product shopper-products v1 --tenant-id zzxy_prd --list-examples
Output Formats
# output as YAML
b2c scapi schemas get product shopper-products v1 --tenant-id zzxy_prd --yaml
# output wrapped JSON with metadata (apiFamily, apiName, apiVersion, schema)
b2c scapi schemas get product shopper-products v1 --tenant-id zzxy_prd --json
Custom Properties
# include custom properties (default behavior)
b2c scapi schemas get product shopper-products v1 --tenant-id zzxy_prd
# exclude custom properties
b2c scapi schemas get product shopper-products v1 --tenant-id zzxy_prd --no-expand-custom-properties
Configuration
The tenant ID and short code can be set via environment variables:
SFCC_TENANT_ID: Tenant ID (e.g.,zzxy_prd, not the organization ID)SFCC_SHORTCODE: SCAPI short code
More Commands
See b2c scapi schemas --help for a full list of available commands and options.
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
api-client-development
Creating typed API clients with OpenAPI specs, authentication, and OAuth scopes for SCAPI and similar APIs. Use when adding a new SCAPI client, generating types from an OpenAPI spec, setting up OAuth middleware, or integrating a new Commerce API endpoint.
testing
Writing tests for the B2C CLI project using Mocha, Chai, and MSW. Use when writing unit or integration tests, mocking HTTP requests with MSW, testing CLI commands with oclif, isolating config in tests, setting up test coverage, using sinon stubs, c8 coverage, capturing or silencing stdout, or creating MSW handlers.
documentation
Updating user guides, CLI reference, and API documentation for the B2C CLI project. Use when adding or changing CLI command docs, writing JSDoc for TypeDoc generation, updating Vitepress sidebar config, or creating new guide pages.
cli-command-development
Creating new CLI commands and topics for the B2C CLI using oclif. Use when adding a new command, creating a topic, adding flags or arguments, implementing table output, or extending BaseCommand/OAuthCommand/InstanceCommand.
sdk-module-development
Adding new modules and exports to the @salesforce/b2c-tooling-sdk package. Use when creating a new SDK module, adding barrel file exports, configuring package.json exports, or building client factory functions.
b2c-code
Deploy and manage code versions/cartridges on B2C Commerce instances/sandboxes with the b2c cli. Always reference when using the CLI to upload cartridges, deploy code, activate code versions, manage code versions, or watch for file changes during development.
Didn't find tool you were looking for?