postman.md

Postman collections

Use the Sales Layer Postman collection to test the DAM and Catalog REST APIs from a controlled local workspace.

The collection is built for prospects, customers, and implementation partners who want to validate connectivity, authentication, headers, query parameters, and complete request flows before building an integration. It includes at least one ready-to-run example of every endpoint exposed by the current OpenAPI specifications.

What the collection covers

Requests are organized to match the API reference. Read-only requests come first; write requests are grouped per resource and clearly labeled.

Folder Contents
Setup checks Quick read-only connectivity and authentication checks for both APIs.
DAM REST API v2.0 List and filter images, retrieve a single image by reference, and delete an image.
Catalog REST API v2.0 / Metadata Schema discovery for the Catalog model, Products, Variants, Categories, and Custom Entities.
Catalog REST API v2.0 / Attribute Sets Legacy OData-style list, get, and metadata requests for attribute sets.
Catalog REST API v2.0 / Attribute Sets v2 List, get, create, update, and delete attribute sets using the v2 endpoints.
Catalog REST API v2.0 / Products List, filter, get, get within a category, get within an attribute set, create, update, delete, and changelogs.
Catalog REST API v2.0 / Variants List, get, list within a product, get within a product, create, update, delete, and changelogs.
Catalog REST API v2.0 / Categories List, list with expanded products, get, create, update, delete, changelogs, and layout.
Catalog REST API v2.0 / Custom Entities List items, create, update, delete, item changelogs, and layout.

The Accept-Language, $select, $filter, $orderby, $expand, $top, and $skip values in each request are starting examples. Field names such as prod_ref, cat_ref, or frmt_ref depend on the account. Confirm the available fields with the matching metadata request before adapting a query or a write payload.

Downloads

Import both files into Postman:

File Purpose
Sales Layer REST APIs collection Requests grouped by setup checks, DAM REST API v2.0, and Catalog REST API v2.0 resources.
Sales Layer API environment template Environment variables for base URL, API key, language, and reusable test identifiers.

The environment template does not contain a real API key. The apiKey variable is intentionally empty and marked as a secret.

Import into Postman

  1. Open Postman.
  2. Select Import.
  3. Import sales-layer-rest-api.postman_collection.json.
  4. Import sales-layer-rest-api.postman_environment.json.
  5. Select the Sales Layer API - Template environment in the top-right environment selector.
  6. Open the environment and set the Current value of apiKey to the API key provided by Sales Layer.
  7. Save the environment.

Keep API keys out of exported files, screenshots, shared workspaces, and source control.

Environment variables

Variable Required Default Description
baseUrl Yes https://api2.saleslayer.com Base URL for the current Sales Layer REST APIs.
apiKey Yes Empty secret API key sent as X-API-KEY. Set this locally in Postman.
acceptLanguage No en Language or locale preference sent as Accept-Language for Catalog requests.
damImageReference For DAM delete tests Empty DAM image reference (filename) used by the delete request. Set it to the reference of a controlled test image (for example, test-image.jpg).
catalogProductIdentifier For single-product tests Empty Product identifier. Filled automatically after a successful create-product request, or set manually.
catalogCategoryIdentifier For category and in-category tests Empty Category identifier. Filled automatically after a successful create-category request, or set manually.
catalogVariantIdentifier For variant tests Empty Variant identifier. Filled automatically after a successful create-variant request, or set manually.
attributeSetIdentifier For legacy Attribute Sets and products-in-attribute-set tests Empty Attribute set identifier from the account. Used by legacy OData-style Attribute Sets endpoints.
attributeSetV2Identifier For Attribute Sets v2 tests Empty Attribute set identifier for the v2 endpoints. Accepts default or a positive integer. Filled automatically after a successful create-attribute-set request, or set manually.
customEntityDenominator For custom entity tests Empty Custom entity denominator. Discover available values with the Custom Entities metadata request.
customEntityItemId For custom entity item tests Empty Custom entity item identifier. Filled automatically after a successful create-item request, or set manually.

Recommended first run

Start with read-only requests that do not modify data:

  1. Run Setup checks / Catalog service metadata.
  2. Run Setup checks / DAM list first page.
  3. Run Catalog REST API v2.0 / Metadata / Products metadata.
  4. Run Catalog REST API v2.0 / Products / List products.
  5. Run DAM REST API v2.0 / List images with pagination.

These requests verify the base URL, API key, and account access without creating, updating, or deleting resources.

Testing write operations

Write requests are labeled (write) and live alongside the read requests for each resource. Run them only against a test account.

The Catalog create requests include a test script that captures the created identifier into the matching environment variable (catalogProductIdentifier, catalogCategoryIdentifier, catalogVariantIdentifier, or customEntityItemId). This lets you run a full lifecycle in order, for example:

  1. Create category (write) — stores the new id in catalogCategoryIdentifier.
  2. Create product (write) — uses that category and stores the new id in catalogProductIdentifier.
  3. Update product (write) — sends a partial update.
  4. Get product by identifier — confirms the change.
  5. Delete product (write) — removes the test product.
Operation Method and endpoint Notes
Delete DAM image DELETE /dam/images({reference}) Requires damImageReference. Returns 409 Conflict if the image is still processing.
Create / update / delete attribute set POST / PATCH / DELETE /catalog/v2/AttributeSets name is required for create. DELETE accepts deleteAssociatedProductsAndVariants query parameter.
Create / update / delete category POST / PATCH / DELETE /catalog/Categories Body fields come from the Categories metadata.
Create / update / delete product POST / PATCH / DELETE /catalog/Products cat_id accepts a single id or an array for multi-category assignment.
Create / update / delete variant POST / PATCH / DELETE /catalog/Variants prod_id links the variant to its parent product.
Create / update / delete custom entity item POST / PATCH / DELETE /catalog/CustomEntities('{denominator}') Body fields depend on the custom entity definition.

Before running write requests, confirm that the account and environment are safe for testing.

Discovering fields with metadata

Catalog fields vary by account configuration. Use the metadata requests before building specific queries or write payloads:

GET /catalog/$metadata
GET /catalog/Products/$metadata
GET /catalog/Categories/$metadata
GET /catalog/Variants/$metadata
GET /catalog/AttributeSets/$metadata
GET /catalog/CustomEntities/$metadata
GET /catalog/CustomEntities('{denominator}')/$metadata

After confirming available fields, adjust $select, $filter, $orderby, $expand, $top, and $skip values in Postman as needed.

Headers used by the collection

The collection sends the API key through Postman's collection-level authentication:

X-API-KEY: {{apiKey}}

Requests also use:

Accept: application/json
Content-Type: application/json
Accept-Language: {{acceptLanguage}}

Content-Type is only required for requests with a JSON body. Accept-Language supports exact language or locale codes; q-factor weighting and the wildcard * are not supported.

Troubleshooting

If a request fails, check the following: