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.
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, and delete an image. |
| Catalog REST API v2.0 / Metadata | Schema discovery for the Catalog model, Products, Variants, Categories, Custom Entities, and Points of Sale. |
| 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, and changelogs. |
| Catalog REST API v2.0 / Custom Entities | List items, create, update, delete, and item changelogs. |
The
Accept-Language,$select,$filter,$orderby,$expand,$top, and$skipvalues in each request are starting examples. Field names such asprod_ref,cat_ref, orfrmt_refdepend on the account. Confirm the available fields with the matching metadata request before adapting a query or a write payload.
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.
- Open Postman.
- Select Import.
- Import
sales-layer-rest-api.postman_collection.json. - Import
sales-layer-rest-api.postman_environment.json. - Select the Sales Layer API - Template environment in the top-right environment selector.
- Open the environment and set the Current value of
apiKeyto the API key provided by Sales Layer. - Save the environment.
Keep API keys out of exported files, screenshots, shared workspaces, and source control.
| 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. |
damImageId | For DAM delete tests | Empty | DAM image id used by the delete request. Set it to a controlled test image. |
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 products-in-attribute-set tests | Empty | Attribute set identifier from the account. |
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. |
Start with read-only requests that do not modify data:
- Run Setup checks / Catalog service metadata.
- Run Setup checks / DAM list first page.
- Run Catalog REST API v2.0 / Metadata / Products metadata.
- Run Catalog REST API v2.0 / Products / List products.
- 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.
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:
- Create category (write) — stores the new id in
catalogCategoryIdentifier. - Create product (write) — uses that category and stores the new id in
catalogProductIdentifier. - Update product (write) — sends a partial update.
- Get product by identifier — confirms the change.
- Delete product (write) — removes the test product.
| Operation | Method and endpoint | Notes |
|---|---|---|
| Delete DAM image | DELETE /dam/image/{id} | Requires damImageId. Returns 409 Conflict if the image is still processing. |
| Create / update / delete category | POST / PATCH / DELETE /catalog/rest/Catalog/Categories | Body fields come from the Categories metadata. |
| Create / update / delete product | POST / PATCH / DELETE /catalog/rest/Catalog/Products | cat_id accepts a single id or an array for multi-category assignment. |
| Create / update / delete variant | POST / PATCH / DELETE /catalog/rest/Catalog/Variants | prod_id links the variant to its parent product. |
| Create / update / delete custom entity item | POST / PATCH / DELETE /catalog/rest/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.
Catalog fields vary by account configuration. Use the metadata requests before building specific queries or write payloads:
GET /catalog/rest/Catalog/$metadata
GET /catalog/rest/Catalog/Products/$metadata
GET /catalog/rest/Catalog/Categories/$metadata
GET /catalog/rest/Catalog/Variants/$metadata
GET /catalog/rest/Catalog/CustomEntities/$metadata
GET /catalog/rest/Catalog/CustomEntities('{denominator}')/$metadata
GET /catalog/rest/Catalog/PointsOfSale/$metadataAfter confirming available fields, adjust $select, $filter, $orderby, $expand, $top, and $skip values in Postman as needed.
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.
If a request fails, check the following:
- The Sales Layer API - Template environment is selected.
apiKeyhas a current value in the selected environment.baseUrlishttps://api2.saleslayer.com.- The API key is valid for the account and API area being tested.
- Catalog identifiers and field names exist in the current account metadata.
- DAM delete requests use a valid
damImageId. - Rate limiting may apply (50 requests per 10 seconds). Retry after a short delay if you receive a
429response.