Assortments & MAD

Assortments

Introduction

An assortment is a specific grouping of products. This concept is used to filter, personalize, and structure product display.

Assortments allow you to:

  • Group products based on criteria (e.g., categories, brands).
  • Facilitate catalog and navigation management, optimizing the user experience.

Creating an Assortment

Basic Information:

  • Name (mandatory): A clear and unique name to identify the assortment.
  • External ID (mandatory): A unique identifier without spaces or accents for API integration.

There are two main methods to create an assortment:

From the Back Office (BO)

  1. Access the DJUST BO.
  2. Navigate to the Assortments tab.
  3. Click on Create an assortment.
  4. Select products one by one to include them in the assortment.
  5. Save the assortment.

Creation via Import

Using Assortments

Assortments can be used in two main contexts:

Creating Custom Navigation (add link)

Creating a Catalog View Based on an Assortment (add link)

API and Automation

Assortments can be managed via API to automate their creation and usage.


Filtering Assortments

The GET /v1/assortments endpoint supports several filtering options to help you find specific assortments.

Filter by Product or Variant Content

You can restrict the list of assortments based on the products or variants they contain, using multi-value filters:

FilterTypeDescription
productIds[]array of stringsFilter assortments containing at least one of the specified products (by DJUST ID)
variantIds[]array of stringsFilter assortments containing at least one of the specified variants (by DJUST ID)
  • Values within the same filter are combined with OR logic (e.g., productIds=A&productIds=B returns assortments containing product A or product B).
  • Different filters are combined with AND logic (e.g., productIds=A&variantIds=V1 returns assortments that contain product A and variant V1).

Example:

GET /v1/assortments?productIds=PROD-123&productIds=PROD-456&variantIds=VAR-789

Filter by Product or Variant Count

You can filter assortments by the number of products or variants they contain, using numeric range filters:

FilterTypeDescription
productCountMinintegerMinimum number of products (inclusive)
productCountMaxintegerMaximum number of products (inclusive)
productVariantCountMinintegerMinimum number of variants (inclusive)
productVariantCountMaxintegerMaximum number of variants (inclusive)
  • When only Min is provided, the filter returns assortments with a count ≥ Min.
  • When only Max is provided, the filter returns assortments with a count ≤ Max.
  • When both are provided, the filter applies an inclusive range.

Example:

GET /v1/assortments?productCountMin=5&productCountMax=50&productVariantCountMin=10

Search

The search parameter performs a case-insensitive free-text search across multiple fields:

  • Assortment name, external ID, business ID
  • Product name, product external ID
  • Variant name, variant external ID
GET /v1/assortments?search=winter

Filter by External Source

Restrict assortments by their data source using the externalSources filter. If an unknown value is provided, the filter simply returns no results.

GET /v1/assortments?externalSources=MIRAKL,CSV

Filter by Date

Filter assortments by their creation or last update date using lower-bound date filters:

FilterTypeDescription
createMinDateISO 8601 instantReturns assortments created on or after this date
updateMinDateISO 8601 instantReturns assortments last updated on or after this date
GET /v1/assortments?createMinDate=2026-01-01T00:00:00Z&updateMinDate=2026-03-01T00:00:00Z

Filter by Navigation Category

Restrict to assortments linked to specific navigation categories using business IDs:

GET /v1/assortments?navigationIds=NAV-001,NAV-002

Response Enrichment

The list response now includes product count and product variant count for each assortment:

{
  "id": "ASS-001",
  "externalId": "ext-assort-001",
  "name": "Winter Collection",
  "productCount": 42,
  "productVariantCount": 128,
  "createdAt": "2026-01-15T10:00:00Z",
  "updatedAt": "2026-04-10T14:30:00Z"
}

Combining Filters

All filters above are optional and can be combined freely. All filter types are combined using AND logic: an assortment must satisfy all applied constraints to be returned.


📌 Useful Links: