Skip to content
Last updated

Changelog

Notable documented changes to Sales Layer REST API references and to the Sales Layer MCP Server documentation are listed on this page.

This changelog follows Semantic Versioning and is intended for API consumers. Entries are grouped by scope within each version, because the REST APIs and the MCP Server follow independent release cycles.

Current documented references

  • DAM REST API v2.0
  • Catalog REST API v2.0
  • Sales Layer MCP Server

[0.11.0] - 2026-08-25

DAM REST API

Added

  • Updated the DAM OpenAPI reference to dam_swagger_v2.0.0_20260825.json.
  • Added file management endpoints for non-image assets (documents, spreadsheets, archives, and more):
    • GET /files — filters, sorts, and paginates non-image files.
    • POST /files — creates a file from a publicly accessible HTTP or HTTPS URL and optional tags.
    • GET /files({reference}) — retrieves a single file by its reference (filename).
    • PATCH /files({reference}) — partially updates a file by replacing its source content and/or tags.
    • DELETE /files({reference}) — deletes a file by its reference. Deletion does not cascade to entities still referencing the file.
  • Documented the file-library quota and its 409 Conflict response, separate from the image-library quota.

Changed

  • PATCH /images({reference}) no longer requires the replacement URL to share the current image's filename. The replacement can use any filename — only its content must match the image's current file type.
  • PATCH /images({reference}) no longer clears existing tags when the replacement image is supplied without a tags field. Tags are now left untouched unless the request explicitly includes them.
  • POST /images now returns @readLink/@editLink values that address the created image, matching the Location header, instead of echoing the URL the request was posted to.
  • Updated apis/dam.md and guides/errors.md to cover the Files resource alongside Images, and corrected the PATCH /images({reference}) description to reflect the removed filename restriction.

Postman collections

Added

  • Restructured the DAM REST API v2.0 folder into Images and Files subfolders, matching the Catalog folder pattern.
  • Added ready-to-run requests for every DAM write operation: Create image (write), Update image (write), Create file (write), Update file (write), and Delete file (write), plus List files with pagination, Filter files by type, and Get file by reference. The collection now covers all 60 endpoints in the current OpenAPI specifications (previously 53).
  • Added the damFileReference environment variable.

Fixed

  • The downloadable environment template (postman/sales-layer-rest-api.postman_environment.json) defined the DAM reference variable as damImageId, which never matched the damImageReference name used by the collection's own requests and by this documentation. It also lacked attributeSetV2Identifier. Both files are now identical and match what the collection actually uses.

Changed

  • Updated postman/index.md: folder table, environment variables table, recommended first run, and the write-operations table now reflect the Images/Files split and the newly packaged DAM write requests. Documented the manual reference-setting workflow for DAM creates, since — unlike Catalog resources — the server does not generate the identifier.

MCP Server

Added

  • Added documentation for the Sales Layer MCP Server, covering server version 1.8.2 of the @saleslayer/mcp-server package.
  • Added the MCP Server section with eight pages: overview, quickstart, authentication, access profiles and permissions, tool reference, recipes, troubleshooting, and local install.
  • Documented the complete 71-tool Full access catalog, with Read-only exposing the read subset.
  • Added dedicated Catalog tools for Categories, Products, Variants, and Custom Entities; Attribute Sets v2; Category and Custom Entity layouts; resource metadata; and Catalog changelogs.
  • Added ten DAM tools for listing, retrieving, creating, updating, and deleting images and non-image files.
  • Documented the Read-only and Full access profiles, including which tools each one allows.
  • Documented confirmation behavior per write tool, including which operations use a two-step flow and which execute on the first call.
  • Documented OAuth 2.0 with PKCE, including the manual configuration values for clients without dynamic discovery.
  • Documented the remote endpoints per client and the local install for Claude Desktop.

Changed

  • The site changelog now covers both the REST API references and the MCP Server documentation. Entries are labelled by scope within each version.
  • Replaced the generic get_table_items, create_item, update_item, and delete_item guidance with the dedicated entity tools now advertised by the server. The generic tools remain hidden and routable only for backward compatibility.
  • Updated MCP recipes, permissions, and safety guidance for dedicated Catalog writes, destructive Attribute Set options, full-layout replacement, and DAM asset lifecycle behavior.
  • Updated the local installation requirement from Node.js 18 to Node.js 20.

Site

Added

  • Added an MCP entry to the navigation bar, between Postman and Changelog.
  • Added an MCP Server section to the sidebar, after Guides.
  • Added an MCP server section to the llms.txt output.

Changed

  • The home page now presents the REST APIs and the MCP Server as two integration paths.

[0.10.0] - 2026-08-04

DAM REST API

Added

  • Updated the DAM OpenAPI reference to dam_swagger_v2.0.0_20260730.json.
  • Added image creation and update operations:
    • POST /images — creates an image from a publicly accessible HTTP or HTTPS URL and optional tags.
    • PATCH /images({reference}) — partially updates an existing image by replacing its source URL and/or tags.

Changed

  • X-API-KEY is now marked as required on DAM operations.
  • DAM operations now document 403 Forbidden where the API key is authenticated but not allowed to perform the requested operation.
  • DAM error response schemas were aligned with the current OpenAPI reference, including validation, unauthorized, forbidden, conflict, and generic error representations.
  • Existing DAM operation status codes were updated:
    • GET /images now documents 400, 401, 403, and 500 error responses.
    • GET /images({reference}) now documents 401, 403, 404, and 500 error responses.
    • DELETE /images({reference}) now documents 401, 403, 404, 409, and 500 error responses.

Catalog REST API

Changed

  • Updated the Catalog OpenAPI reference to catalog_swagger_v2.0.0_20260730.json.
  • Added 403 Forbidden responses to Catalog write and layout operations where defined by the current OpenAPI specification.
  • No Catalog endpoint paths were added or removed.

Documentation

  • Updated the published DAM and Catalog wrappers to reference the latest source specifications.
  • Updated DAM overview, quickstart, and error guidance to match the current OpenAPI references.
  • Updated the Postman documentation page so it no longer claims that the downloadable collection already covers every endpoint in the latest OpenAPI references.

[0.9.1] - 2026-07-09

Catalog REST API

Changed

  • Updated the Catalog OpenAPI reference to catalog_swagger_v2.0.0_20260708.json.
  • Clarified Attribute Sets v2 layout validation for POST /v2/AttributeSets and PATCH /v2/AttributeSets({id}): when productLayout or variantLayout is sent, the layout must include non-null sections, rows, and fields arrays.
  • No endpoint paths, parameters, request body schemas, response schemas, or documented HTTP status codes changed from the previous Catalog reference.

Documentation

  • Updated the published Catalog wrapper to reference the latest source specification.

[0.9.0] - 2026-07-01

Catalog REST API

Changed

  • Updated the Catalog OpenAPI reference to catalog_swagger_v2.0.0_20260630.json.
  • Custom Entity layout endpoints now use quoted OData-style denominators:
    • GET /CustomEntities('{customEntityDenominator}')/layout
    • PUT /CustomEntities('{customEntityDenominator}')/layout
  • Removed 403 Forbidden from 45 Catalog operations where it is no longer defined. The legacy Attribute Sets read endpoints still document 403.
  • Attribute Sets v2 operations now use the shared CollectionRepresentation and EntityRepresentation response schemas in the OpenAPI reference.
  • Clarified Attribute Sets v2 creation behavior: when variantLayout is omitted, no Variant layout is created; it can be added later with PATCH /v2/AttributeSets({id}).

Documentation

  • Updated the published Catalog wrapper to reference the latest source specification.
  • Corrected the home page DAM example to use /dam/images.
  • Aligned DAM overview wording with the currently documented image operations: list, retrieve, and delete.

[0.8.0] - 2026-06-22

Catalog REST API

Added

  • Attribute Sets v2 endpoints at /v2/AttributeSets support full CRUD operations for attribute sets:
    • GET /v2/AttributeSets — list all attribute sets
    • POST /v2/AttributeSets — create an attribute set (name required; productLayout, variantLayout optional) using existing attributes only; this operation does not create new attributes
    • GET /v2/AttributeSets({id}) — get an attribute set by identifier (default or a positive integer)
    • PATCH /v2/AttributeSets({id}) — update an attribute set using existing attributes only; this operation does not create new attributes
    • DELETE /v2/AttributeSets({id}) — delete an attribute set; optional deleteAssociatedProductsAndVariants query parameter reassigns or deletes associated products and variants
  • Layout endpoints for Categories and Custom Entities allow managing form layout configuration:
    • GET /Categories/layout / PUT /Categories/layout
    • GET /CustomEntities({denominator})/layout / PUT /CustomEntities({denominator})/layout

Changed

  • Catalog API endpoint paths simplified. The current OpenAPI specification defines Catalog endpoints without the /rest/Catalog/ path segment. The canonical base path is now directly under the catalog prefix:

    Previous pathNew canonical path
    /catalog/rest/Catalog/Products/catalog/Products
    /catalog/rest/Catalog/Categories/catalog/Categories
    /catalog/rest/Catalog/Variants/catalog/Variants
    /catalog/rest/Catalog/$metadata/catalog/$metadata
    (and so on for all Catalog resources)

    Existing integrations continue to work without changes. URLs that include /rest/Catalog/ remain compatible and will continue to be supported. A formal deprecation notice will be issued before backward compatibility is removed. New integrations and updated clients should use the shorter paths defined in the current OpenAPI specification.

Removed

  • GET /PointsOfSale/$metadata — this endpoint no longer appears in the current OpenAPI specification.

Documentation

  • Corrected DAM image path notation: individual image endpoints use OData-style path parameters (/images({reference})), where reference is the image filename unique per tenant.
  • Corrected success response documentation: POST /Products, POST /Variants, and POST /CustomEntities return 200 OK (not 201 Created) on successful creation.
  • Updated guides and overview pages to remove references to POST /image and PATCH /image/{id}, which were temporarily removed in v0.7.0.

[0.7.0] - 2026-06-04

Current API surface

  • The DAM and Catalog REST APIs are documented against the current OpenAPI specifications.
  • The supported DAM image endpoints are:
    • GET /image
    • DELETE /image/{id}

Changed

  • DAM: POST /image and PATCH /image/{id} have been temporarily removed from the documentation and the OpenAPI specification. These endpoints will return in a future version. Until then, image import and image update are not available through the documented API surface.

Documentation

  • Grouped the Catalog endpoint reference in the sidebar by resource (Metadata, Products, Variants, Categories, Custom Entities) using OpenAPI tags. The DAM endpoint reference is grouped under Image.
  • Aligned guides, overviews, and examples with the current OpenAPI specifications.

Postman

  • Expanded the Postman collection to include at least one ready-to-run example of every endpoint in the current specifications (DAM and Catalog).
  • Organized requests to match the API reference, labeled write operations, and added scripts that capture created identifiers for full create-read-update-delete lifecycles.
  • Updated the environment template: added attributeSetIdentifier and removed sampleImageUrl.

[0.6.0] - 2026-05-23

Current API surface

  • The DAM REST API is documented against the current OpenAPI specification.
  • The supported DAM image endpoints are:
    • GET /image
    • POST /image
    • PATCH /image/{id}
    • DELETE /image/{id}

Documentation

  • Updated endpoint references so the changelog matches the published OpenAPI specification.
  • Consolidated image operations under the current DAM paths.

[0.4.0] - 2026-04-09

Added

  • Added the DELETE endpoint for removing images:
    • DELETE /image/{id}

Behavior

  • Successful deletion returns 204 No Content
  • The request is rejected if the image is currently being processed

Validation

  • 401 Unauthorized — missing API key
  • 400 Bad Request — invalid request or invalid identifier
  • 404 Not Found — image not found
  • 409 Conflict — image is currently being processed

Improved

  • Improved API documentation for DELETE and PATCH operations
  • Removed incorrect fields from the PATCH request body schema in the API documentation

[0.3.0] - 2026-04-09

Added

  • Added the PATCH endpoint for partially updating images:
    • PATCH /image/{id}

Supported operations

  • Rename an image using reference
  • Replace tags using tags
  • Replace the image source using url

Behavior

  • Successful update returns 204 No Content
  • reference and tags can be combined in the same request
  • The request is rejected if the image is currently being processed

Validation

  • 401 Unauthorized — missing API key
  • 400 Bad Request — invalid request body or invalid field combinations
  • 404 Not Found — image not found
  • 409 Conflict — image is currently being processed

[0.2.0] - 2026-04-02

Added

  • Added the POST endpoint for creating images from public URLs:
    • POST /image

Behavior

  • Supports image creation from a public HTTP or HTTPS URL
  • Supports optional tags
  • Validates image format, size, dimensions, and request payload

Supported formats

  • JPEG
  • PNG
  • GIF
  • TIFF
  • WebP
  • PSD

Validation

  • 400 Bad Request — invalid URL, unsupported format, invalid tags, or invalid image constraints
  • 401 Unauthorized — missing API key
  • 500 Internal Server Error — unexpected processing error

[0.1.0] - 2026-03-04

Added

  • Added the GET endpoint for listing and filtering images:
    • GET /image

Behavior

  • Supports filtering
  • Supports sorting
  • Supports pagination
  • Supports OData-style query parameters documented in the API reference

Validation

  • 400 Bad Request — invalid query parameters
  • 401 Unauthorized — missing API key