The DAM REST API is used to integrate external systems with Sales Layer digital asset management capabilities.
It covers two resource types: images and files (non-image assets such as documents, spreadsheets, archives, and more). An integration can list, retrieve, create, update, and delete records of either type. Both resource types share the same authentication, pagination, and general error-handling patterns, but each has its own endpoints, supported file extensions, and processing behavior.
Use this API when an external system needs to keep product images, product documentation, media references, or asset metadata aligned with Sales Layer.
| Capability | What it is used for |
|---|---|
| Create images | Register a new image from a publicly accessible HTTP or HTTPS URL and optionally assign tags. |
| List and filter images | Retrieve image records and narrow results by supported query parameters. |
| Retrieve a single image | Get the full record for a specific image by its reference (filename). |
| Update images | Replace an image's source content and/or tags for an existing image reference. |
| Delete images | Remove an image resource by its reference (filename). |
| Create files | Register a new non-image file (documents, spreadsheets, archives, and more) from a publicly accessible HTTP or HTTPS URL and optionally assign tags. |
| List and filter files | Retrieve file records and narrow results by supported query parameters. |
| Retrieve a single file | Get the full record for a specific file by its reference (filename). |
| Update files | Replace a file's source content and/or tags for an existing file reference. |
| Delete files | Remove a file resource by its reference (filename). |
| Method | Path | Functional description |
|---|---|---|
GET | /dam/images | Retrieves image records. Use this endpoint to search, filter, sort, and paginate DAM images. |
POST | /dam/images | Creates an image from a publicly accessible URL. The image is processed asynchronously after creation. |
GET | /dam/images({reference}) | Retrieves the full record for a single image by its reference (the image filename, unique per tenant). |
PATCH | /dam/images({reference}) | Partially updates an image by replacing its source content and/or tags. The replacement URL can use any filename — only the file's content type must match the image's current file type. |
DELETE | /dam/images({reference}) | Deletes an image resource by its reference (filename) when it can be safely removed. |
GET | /dam/files | Retrieves non-image file records. Use this endpoint to search, filter, sort, and paginate DAM files. |
POST | /dam/files | Creates a file from a publicly accessible URL. Unlike images, a file is usable immediately — nothing processes it in the background afterward. |
GET | /dam/files({reference}) | Retrieves the full record for a single file by its reference (the file name, unique per tenant). |
PATCH | /dam/files({reference}) | Partially updates a file by replacing its source content and/or tags. The replacement URL can use any filename — only the file's content type must match the file's current type. |
DELETE | /dam/files({reference}) | Deletes a file resource by its reference (filename). Deletion does not cascade: entities still referencing the deleted file are not updated. |
Use the DAM REST API to:
- Retrieve image or file records to verify processing status or asset availability.
- Register externally hosted images or files so they can be managed in Sales Layer.
- Replace image or file content, or update tags, for an existing reference.
- Remove obsolete images or files as part of a controlled cleanup workflow.
- Keep product documentation (datasheets, manuals, certificates) alongside product imagery in the same asset management surface.
Make sure your integration:
- Sends a valid API key in the
X-API-KEYheader. - Uses pagination when reading lists of images or files.
- Uses references (filenames), not internal numeric IDs, as identifiers when retrieving, updating, or deleting individual images or files. Files have no internal ID at all; images do have one, but it is not guaranteed stable as a public key — address images by
referenceas well. - Uses public HTTP or HTTPS URLs when creating or replacing images or files.
- Handles temporary processing states when creating, updating, or deleting images (a
409response means the image conflicts with an active background processing workflow). Files are not queued for background processing, so file writes never return a409for this reason — a409onPOST /filesinstead means the filename already exists or the account's file-library quota has been reached. Image and file libraries have separate quotas. - Checks the accepted file extensions and size limits documented in the OpenAPI reference before uploading — they differ between images and files, and are enforced by inspecting the file's content, not its URL extension.
- Applies retry and rate limiting behavior as described in Rate limiting.
- Reviews DAM error details for image- and file-specific failure cases.
Use the DAM REST API v2.0 OpenAPI reference for request parameters, schemas, examples, and status codes.