routes.json
The merchant's URLs.
landing
string
Where a search lands when its query names a page and nothing is left as text, such as "graues sofa". Default: category.
On the merchant's page for what the query named: the category's page with the query's filters chosen, or the brand's page when it names only a brand. The page brings its merchandising and its URL.
On the search page, with the category and the filters as chips.
search
string or map of strings
The search page's path, per locale where it differs, such as /suche or { "de": "/suche", "en": "/search" }. Default: /search.
filter_pages
object
The filter states that get a path of their own, such as /wohnen/sofas/farbe--grau/: a category with one value of each facet of a listed combination. Every other filter state is the category with parameters. Default: none.
The combinations of facets whose values a path holds, and how a path spells them. A segment is the facet's parameter name, the separator and the value's slug, such as farbe--grau, and the segments follow the category's path in the order of facets, whatever order the shopper chose them in.
The facets a path may hold, in the order of their segments: options, their groups, and the brand. ["brand", "gender", "material"]
The combinations that get a path, each one to three of facets, with one value of each. [["brand"], ["gender"], ["brand", "gender"]]
One facet whose value stands before the category's path under a fixed word, as brand pages do, per locale where it differs: { "brand": "marken" } writes /marken/arcteryx/outdoor-jacken/. Default: none.
What joins a segment's parameter name and the value's slug. Default: --, which no slug holds, so - stays possible for a shop whose URLs read color-red.
min_products
integerat least 1
The fewest products a filter page shows to be indexed; with fewer it is noindex. Default: 4.
trailing_slash
string
Whether a page's path ends in a slash. Default: as_written, each path as the catalog writes it.
Each path as the catalog writes it.
Every path ends in a slash: /wohnen/sofas/.
No path ends in a slash but the root: /wohnen/sofas.
parameters
map of (string or object)
The query parameters whose names differ from their codes, by code: a facet's field, such as color, or one of the reserved q, page, sort, from, ignore and redirect. Every other parameter is named by its code; a range is the name with .gte and .lte, such as price.gte. { "color": "farbe", "q": { "name": "suche", "aliases": ["query"] } }
The name URLs are written with. Default: the code.
Further names a URL may use, read as this parameter and written as its name.
$schema
string
The JSON Schema an editor checks this file against; kept as written.
Example
{
"$schema": "../../../contracts/schema/routes.json",
"search": { "de": "/suche", "en": "/en/search" }
}Guide: routes.json