# B2c Scapi Schemas

> Browse and retrieve SCAPI OpenAPI schema specifications. Use this skill whenever the user needs to list available SCAPI APIs, inspect endpoint paths or request/response shapes, explore data models for products or orders, check which fields an API returns, or understand SCAPI versioning. Also use when looking up API details before building an integration -- even if they just say 'what fields does the product API return' or 'show me the SCAPI endpoints'.

- Skill: `salesforcecommercecloud/b2c-scapi-schemas` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add salesforcecommercecloud/b2c-scapi-schemas`
- Raw SKILL.md: https://api.skillmd.com/api/skills/salesforcecommercecloud/b2c-scapi-schemas/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Integrations & APIs
- Author: salesforcecommercecloud (https://skillmd.com/u/salesforcecommercecloud)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/salesforcecommercecloud/b2c-scapi-schemas

---


# B2C SCAPI Schemas Skill

Use the `b2c` CLI plugin to browse and retrieve SCAPI OpenAPI schema specifications.

> **Tip:** If `b2c` is not installed globally, use `npx @salesforce/b2c-cli` instead (e.g., `npx @salesforce/b2c-cli scapi schemas list`).

## Configuration

Values like `tenantId`, `shortCode`, `clientId`, and `clientSecret` resolve from `dw.json` / `SFCC_*` env vars / the active instance / configuration plugins. Examples below show minimal usage; **add flags only to override configured values** — passing `--client-id`/`--client-secret`/`--tenant-id`/`--short-code` is usually unnecessary. If a required value is missing, the CLI emits an actionable error pointing at the flag, env var, and config key.

Run `b2c setup inspect` to see the resolved configuration and which source provided each value (`--json` for scripting, `--unmask` to reveal secrets). For precedence rules and troubleshooting, see the `b2c-cli:b2c-config` skill.

## Tenant ID vs. Organization ID

The tenant ID identifies your B2C Commerce instance for SCAPI calls. It is **not** the same as the organization ID:

- **Tenant ID**: `zzxy_prd` (the `tenantId` value in dw.json, or `--tenant-id` override)
- **Organization ID**: `f_ecom_zzxy_prd` (used in SCAPI URLs, has `f_ecom_` prefix)

### Deriving Tenant ID from Hostname

For sandbox instances, 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

```bash
# list all available SCAPI schemas (uses configured tenant)
b2c scapi schemas list

# list with JSON output
b2c scapi schemas list --json

# target a different tenant than the active config
b2c scapi schemas list --tenant-id zzxy_prd
```

### Filter Schemas

```bash
# filter by API family (e.g., product, checkout, search)
b2c scapi schemas list --api-family product

# filter by API name
b2c scapi schemas list --api-name shopper-products

# filter by status
b2c scapi schemas list --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.

```bash
# get collapsed schema (paths show methods, schemas show names only)
b2c scapi schemas get product shopper-products v1

# save to file
b2c scapi schemas get product shopper-products v1 > schema.json
```

### Get Schema with Selective Expansion

Expand only the parts of the schema you need:

```bash
# expand specific paths
b2c scapi schemas get product shopper-products v1 --expand-paths /products,/products/{productId}

# expand specific schemas
b2c scapi schemas get product shopper-products v1 --expand-schemas Product,ProductResult

# combine expansions
b2c scapi schemas get product shopper-products v1 --expand-paths /products --expand-schemas Product
```

### Get Full Schema

```bash
# get full schema without any collapsing
b2c scapi schemas get product shopper-products v1 --expand-all
```

### List Available Paths/Schemas/Examples

Discover what's available in a schema before expanding:

```bash
# list all paths in the schema
b2c scapi schemas get product shopper-products v1 --list-paths

# list all schema names
b2c scapi schemas get product shopper-products v1 --list-schemas

# list all examples
b2c scapi schemas get product shopper-products v1 --list-examples
```

### Output Formats

```bash
# output as YAML
b2c scapi schemas get product shopper-products v1 --yaml

# output wrapped JSON with metadata (apiFamily, apiName, apiVersion, schema)
b2c scapi schemas get product shopper-products v1 --json
```

### Custom Properties

```bash
# include custom properties (default behavior)
b2c scapi schemas get product shopper-products v1

# exclude custom properties
b2c scapi schemas get product shopper-products v1 --no-expand-custom-properties
```

### Configuration Overrides

The tenant ID and short code can be overridden via flags or environment variables:

- `--tenant-id` / `SFCC_TENANT_ID` / `tenantId` in dw.json
- `--short-code` / `SFCC_SHORTCODE` / `shortCode` in dw.json

### More Commands

See `b2c scapi schemas --help` for a full list of available commands and options.

