Skip to content
Last updated

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.

FolderContents
Setup checksQuick read-only connectivity and authentication checks for both APIs.
DAM REST API v2.0List and filter images, and delete an image.
Catalog REST API v2.0 / MetadataSchema discovery for the Catalog model, Products, Variants, Categories, Custom Entities, and Points of Sale.
Catalog REST API v2.0 / ProductsList, filter, get, get within a category, get within an attribute set, create, update, delete, and changelogs.
Catalog REST API v2.0 / VariantsList, get, list within a product, get within a product, create, update, delete, and changelogs.
Catalog REST API v2.0 / CategoriesList, list with expanded products, get, create, update, delete, and changelogs.
Catalog REST API v2.0 / Custom EntitiesList items, create, update, delete, and item changelogs.

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:

FilePurpose
Sales Layer REST APIs collectionRequests grouped by setup checks, DAM REST API v2.0, and Catalog REST API v2.0 resources.
Sales Layer API environment templateEnvironment 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

VariableRequiredDefaultDescription
baseUrlYeshttps://api2.saleslayer.comBase URL for the current Sales Layer REST APIs.
apiKeyYesEmpty secretAPI key sent as X-API-KEY. Set this locally in Postman.
acceptLanguageNoenLanguage or locale preference sent as Accept-Language for Catalog requests.
damImageIdFor DAM delete testsEmptyDAM image id used by the delete request. Set it to a controlled test image.
catalogProductIdentifierFor single-product testsEmptyProduct identifier. Filled automatically after a successful create-product request, or set manually.
catalogCategoryIdentifierFor category and in-category testsEmptyCategory identifier. Filled automatically after a successful create-category request, or set manually.
catalogVariantIdentifierFor variant testsEmptyVariant identifier. Filled automatically after a successful create-variant request, or set manually.
attributeSetIdentifierFor products-in-attribute-set testsEmptyAttribute set identifier from the account.
customEntityDenominatorFor custom entity testsEmptyCustom entity denominator. Discover available values with the Custom Entities metadata request.
customEntityItemIdFor custom entity item testsEmptyCustom entity item identifier. Filled automatically after a successful create-item request, or set manually.

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.
OperationMethod and endpointNotes
Delete DAM imageDELETE /dam/image/{id}Requires damImageId. Returns 409 Conflict if the image is still processing.
Create / update / delete categoryPOST / PATCH / DELETE /catalog/rest/Catalog/CategoriesBody fields come from the Categories metadata.
Create / update / delete productPOST / PATCH / DELETE /catalog/rest/Catalog/Productscat_id accepts a single id or an array for multi-category assignment.
Create / update / delete variantPOST / PATCH / DELETE /catalog/rest/Catalog/Variantsprod_id links the variant to its parent product.
Create / update / delete custom entity itemPOST / 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.

Discovering fields with metadata

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/$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:

  • The Sales Layer API - Template environment is selected.
  • apiKey has a current value in the selected environment.
  • baseUrl is https://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 429 response.