# Field-by-Field Guide to the FHR Response

The FHR query response contains all contextual information and data needed to understand the outcome of an FHR query. This page walks through the most important fields of the FHR Query response, explaining what each field and nested object represents, how it’s used, and what values you can expect.

{% hint style="info" %}
You can find full examples of FHR Query responses [here](/product-discovery/building-the-front-end-experience-with-fhr/understanding-the-fhr-query-response/fredhopper-query-and-response-samples.md).
{% endhint %}

{% hint style="warning" %}
To improve readability, the FHR Query response is divided into sections. Parameters listed in each table are shown relative to their section. For example, in the info section, the parameter `lang` refers to `info[].lang`.
{% endhint %}

## info

`info` is an object holding general information about the request and response context.

<table><thead><tr><th width="176.50006103515625">info[].&#x3C;parameter></th><th width="119.83331298828125">Data type</th><th>Description</th></tr></thead><tbody><tr><td>lang</td><td>string</td><td>response language, e.g. "en"</td></tr><tr><td>country</td><td>string</td><td>country/website of the request, e.g. "US"</td></tr><tr><td>locale</td><td>object</td><td>infromation about the locale used for the website</td></tr><tr><td>locale[].value</td><td>string</td><td>locale used for current website, e.g. "en_us"</td></tr><tr><td>current-universe</td><td>string</td><td>FHR catalog/universe used for request, e.g. catalog001</td></tr><tr><td>view</td><td>string</td><td>type of page request made, e.g. "home", "lister", etc.</td></tr><tr><td>query</td><td>string</td><td>exact query sent to FHR</td></tr><tr><td>ranges</td><td>object</td><td>ranges (i.e. filters) applied to the product catalog</td></tr><tr><td>ranges[].query-ranges.range</td><td>object</td><td>list of apllied filters</td></tr><tr><td>url</td><td>string</td><td>unformatted page URL</td></tr><tr><td>source-xml</td><td>string</td><td>source XML</td></tr><tr><td>server[].role</td><td>string</td><td>environment indication, e.g. "staging"</td></tr></tbody></table>

## universes

`universes` is an object containing the core content blocks that drive what users see and interact with on the page.

<table><thead><tr><th width="177.3333740234375">universes[].&#x3C;parameter></th><th width="125.83331298828125">Data type</th><th>Description</th></tr></thead><tbody><tr><td>universe</td><td>object</td><td>full information about defined universe/FHR catalog with applied filters</td></tr></tbody></table>

### universes\[].universe\[].link

`universes.universe.link` is an object holding information about the link to the root FHR catalog.

<table><thead><tr><th width="177.3333740234375">universes[].universe[].link.&#x3C;parameter></th><th width="125.83331298828125">Data type</th><th>Description</th></tr></thead><tbody><tr><td>name</td><td>string</td><td>name of the root FHR catalog used for this website</td></tr><tr><td>url-params</td><td>string</td><td>URL for the root FHR catalog used for this website</td></tr></tbody></table>

### universe\[].universes\[].facetmap

`universe[].universes[].facetmap` is an object holding information about all facets available for the current catalog.

| universe\[].universes\[].facetmap\[].\<parameter> | Data type | Descripti                    |
| ------------------------------------------------- | --------- | ---------------------------- |
| universe                                          | string    | current FHR catalog/universe |

#### universes\[].universe\[].facetmap\[].filter

`universe[].universes[].facetmap[].filter` is an object containing a list of filters and respective available values.

<table><thead><tr><th width="181.5">universe[].universes[].facetmap[].filter[].&#x3C;parameter></th><th width="136.33331298828125">Data type</th><th>Description</th></tr></thead><tbody><tr><td>title</td><td>string</td><td>facet title, e.g. "Categories", "Colors"</td></tr><tr><td>filtersection</td><td>object</td><td>list of all available values for a given facet</td></tr><tr><td>filtersection[].<strong>link</strong></td><td>object</td><td>name and FHR URL parameters for the facet value</td></tr><tr><td>filtersection[].<strong>link</strong>[].name</td><td>string</td><td>name of the facet value</td></tr><tr><td>filtersection[].<strong>link</strong>[].url-params</td><td>string</td><td>FHR URL facet parameters used when when value is used for filtering</td></tr><tr><td>filtersection[].value[].value</td><td>string</td><td>value of facet variant</td></tr><tr><td>filtersection[].nr</td><td>integer</td><td>number of products available for facet variant</td></tr><tr><td>filtersection[].<strong>custom-fields</strong></td><td>object</td><td>list of <a data-footnote-ref href="#user-content-fn-1">custom fields</a></td></tr><tr><td>filtersection[].<strong>custom-fields[]</strong>.custom-field</td><td>object</td><td>information about custom field</td></tr><tr><td>filtersection[].<strong>custom-fields[]</strong>.custom-field[].value</td><td>string</td><td>the default state of the facet to be shown on the page; can be either "expanded" or "collapsed"</td></tr><tr><td>filtersection[].<strong>custom-fields[]</strong>.custom-field[].name</td><td>string</td><td>name of the custom attribute</td></tr><tr><td>filtersection[].<strong>custom-fields[]</strong>.custom-field[].id</td><td>string</td><td>id of the custom attribute</td></tr><tr><td>on</td><td>string</td><td>contains the attribute_id the filter is based on, e.g. "price_us"</td></tr><tr><td>facetid</td><td>string</td><td>unique identifier of the facet sent in the FHR product feed</td></tr><tr><td>basetype</td><td>string</td><td>type of facet, e.g. "cat"</td></tr><tr><td>show-number-values</td><td>integer</td><td>number of facet variants to show on the page</td></tr><tr><td>display-hint</td><td>string</td><td>if the facet has been configured as multi-select this shows whether it is "multiselect-or" or "multiselect-and"</td></tr></tbody></table>

**Example**

<figure><img src="/files/kxgMDFhFByQ8Eb4euO8s" alt="" width="563"><figcaption></figcaption></figure>

### universes\[].universe\[].breadcrumbs

`universes[].universe[].breadcrumbs` is an object containing information about the breadcrumbs that should be used on the page.

#### universes\[].universe\[].breadcrumbs\[].crumb

`universes[].universe[].breadcrumbs[].crumb` is an object containing a list of breadcrumb elements.

<table><thead><tr><th width="186.5">universes[].universe[].breadcrumbs[].crumb[].&#x3C;parameter></th><th width="131.66668701171875">Data type</th><th>Description</th></tr></thead><tbody><tr><td>url-param</td><td>string</td><td>URL-parameter to the page</td></tr><tr><td>name</td><td>object</td><td>name attributes</td></tr><tr><td>name[].value</td><td>string</td><td>breadcrumb name (title), e.g "kids"</td></tr><tr><td>range</td><td>object</td><td>range selected for a navigation step</td></tr><tr><td>link</td><td>object</td><td>the query that can be sent to FHR if the breadcrumb is removed</td></tr><tr><td>link[].url-params</td><td>string</td><td>full FHR query to the source of the breadcrumb</td></tr></tbody></table>

### universes\[].universe\[].items-section

`universes[].universe[].items-section` is an object holding information about the products to be shown in the product list.

#### universes\[].universe\[].items-section\[].results

`universes[].universe[].items-section[].results` is a object defining how the item list is split into parts in order to be shown on the page.

<table><thead><tr><th width="193.1666259765625">universes[].universe[].items-section[].results[].&#x3C;parameter></th><th width="127.00006103515625">Data type</th><th>Description</th></tr></thead><tbody><tr><td>ranking</td><td>object</td><td>information about the sorting applied to the product lister</td></tr><tr><td>ranking[].<strong>sort-fields</strong></td><td>object</td><td>attributes used for sorting and the type of sorting, i.e. descending/ascending</td></tr><tr><td>ranking[].<strong>sort-fields</strong>[].sort-field</td><td>object</td><td>the sort-fields used in the respective ranking</td></tr><tr><td>ranking[].<strong>sort-fields</strong>[].sort-field[].sort-direction</td><td>string</td><td>direction of sorting; either "DESC" (descending) or "ASC" (ascending)</td></tr><tr><td>ranking[].<strong>sort-fields</strong>[].sort-field[].sort-attribute</td><td>string</td><td>attribute used for sorting, e.g. "price"</td></tr><tr><td>view-size</td><td>integer</td><td>amount of products shown per page</td></tr><tr><td>total-items</td><td>integer</td><td>total number of items for a facet combination</td></tr><tr><td>start-index</td><td>double</td><td>index number of the product which should start the list o</td></tr></tbody></table>

**Example**

<figure><img src="/files/TjfS7JGaOJKExjFrllXa" alt="" width="563"><figcaption></figcaption></figure>

#### universes\[].universe\[].items-section\[].heading

`universes[].universe[].items-section[].heading` is an object containing all attribute types that are provided for each item.

<table><thead><tr><th width="196.5">universes[].universe[].items-section[].heading[].&#x3C;parameter></th><th width="132.50006103515625">Data type</th><th>Description</th></tr></thead><tbody><tr><td>link</td><td>object</td><td>data needed for the link that would point to a particular object in the browser</td></tr><tr><td>link[].name</td><td>string</td><td>name of attribute, e.g. "original price"</td></tr><tr><td>link[].value[].value</td><td>string</td><td>the attribute_id that was submitted in the data feed to the Fredhopper; the attribute_id always needs to be used when querying Fredhopper</td></tr></tbody></table>

**Examples**

<figure><img src="/files/wyoZxDaJMNWTAdbfWxOs" alt="" width="563"><figcaption></figcaption></figure>

#### universes\[].universe\[].items-section\[].items

`universes[].universe[].items-section[].items` is an object holding information about all items that are ont he current page of the lister.

<table><thead><tr><th width="199.83331298828125">universes[].universe[].items-section[].items[].&#x3C;parameter></th><th width="132.3333740234375">Data type</th><th>Description</th></tr></thead><tbody><tr><td>item</td><td>object</td><td>all attributes and their values for individual products</td></tr><tr><td>item[].id</td><td>string</td><td>product ID</td></tr><tr><td>item[].<strong>attribute</strong></td><td>object</td><td>list of the attributes used for the product; each attribute is defined by an ID and includes values for the particular product</td></tr><tr><td>item[].<strong>attribute</strong>[].name</td><td>string</td><td>attribute ID, e.g. "brand"</td></tr><tr><td>item[].<strong>attribute</strong>[].name.value</td><td>object</td><td>values of the attribute for the particular product</td></tr><tr><td>item[].<strong>attribute</strong>[].name.value[].value</td><td>string</td><td>value of the attributes used for rendering on the page</td></tr><tr><td>item[].<strong>attribute</strong>[].name.value[].non-ml</td><td>string</td><td>raw format of the value that can be used for processing, e.g. "31.99" instead of "$31.99"</td></tr></tbody></table>

**Example**

<figure><img src="/files/JoloEEfXZEqS5yZneYBc" alt="" width="415"><figcaption></figcaption></figure>

### universes\[].universe\[].themes

`universes[].universe[].themes` is an object including the list of promotions or merchandising components within the current request.

#### universes\[].universe\[].themes\[].theme

`universes[].universe[].themes[].theme` is an object that includes the description and the content of a particular block.

<table><thead><tr><th width="204.8333740234375">universes[].universe[].themes[].theme[].&#x3C;parameter></th><th width="121.83331298828125">Data type</th><th>Description</th></tr></thead><tbody><tr><td>title</td><td>string</td><td>title of the block, e.g. "recommended for you"</td></tr><tr><td>slogan</td><td>string</td><td>description of the block or text to be presented on it, e.g. "buy now!"</td></tr><tr><td>link</td><td>object</td><td>links to the required catalog pages</td></tr><tr><td>link[].url-param</td><td>string</td><td>URL to the required page</td></tr><tr><td>link[].type</td><td>string</td><td>valid for images and banners; possible values are "catalog" (if the rules has been set up to direct the user into a specific location within the catalog) or "URL" (if the rule has been configured to link to a direct URL)</td></tr><tr><td>link[].nr</td><td>integer</td><td>number of products to be shown in the block</td></tr><tr><td>static-content</td><td>object</td><td>all promotion related information for which FHR does not have a semantic understanding, e.g. image references, URLs and static text</td></tr><tr><td>static-content[].<strong>content</strong></td><td>object</td><td>one content element of the entire static-content, e.g. an image reference</td></tr><tr><td>static-content[].<strong>content</strong>[].content-value</td><td>string</td><td>value of the content element</td></tr><tr><td>static-content[].<strong>content</strong>[].content-link</td><td>string</td><td>selection link for static-content element with image type</td></tr><tr><td>items</td><td>object</td><td>description of the product in the block</td></tr><tr><td>items[].<strong>item</strong></td><td>object</td><td>description of a specific product</td></tr><tr><td>items[].<strong>item</strong>[].attribute</td><td>object</td><td>description of the attributes</td></tr><tr><td>items[].<strong>item</strong>[].attribute[].value[].value</td><td>string</td><td>value of the attribute used for rendering on the page</td></tr><tr><td>items[].<strong>item</strong>[].attribute[].value[].non-ml</td><td>string</td><td>raw format of the value that can be used for processing, e.g. "31.99" instead of "$31.99"</td></tr><tr><td>items[].<strong>item</strong>[].attribute[].name</td><td>string</td><td>attribute ID</td></tr><tr><td>items[].<strong>item</strong>[].id</td><td>string</td><td>product ID</td></tr></tbody></table>

#### universes\[].universe\[].themes\[].attribute-types

`universes[].universe[].themes[].attribute-types` is an object that describes all attributes used for the block.

<table><thead><tr><th width="210.6666259765625">universes[].universe[].themes[].attribute-types[].&#x3C;parameter></th><th width="119.666748046875">Data type</th><th>Description</th></tr></thead><tbody><tr><td>attribute-type</td><td>object</td><td>list of all attribute in the block</td></tr><tr><td>attribute-type[].type</td><td>string</td><td>FHR type, e.g. "set"</td></tr></tbody></table>

## footer

`footer` is an object containing data for logging and bench-marking.

<table><thead><tr><th width="205.66668701171875">footer[].&#x3C;parameter></th><th width="121.00006103515625">Data type</th><th>Description</th></tr></thead><tbody><tr><td>process-time</td><td>object</td><td>logging information on the current FAS request</td></tr><tr><td>process-time[].value</td><td>double</td><td>amount of that FAS took to answer the current request</td></tr><tr><td>process-time[].unit</td><td>string</td><td>scale of the response time, e.g. "s" (for seconds)</td></tr></tbody></table>

## rid

`rid` contains the response ID that uniquely identifies the response.

**Example**

<figure><img src="/files/VCw9CoenuxBbz0Spfy7j" alt="" width="404"><figcaption></figcaption></figure>

[^1]: Custom fields are used to tag promotions or facets, i.e. a merchandiser can add info in the Business Manager that is not interpreted by FAS but just forwarded to the front-end. This is typically used to define the location where a facet has to be rendered.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://crownpeak.gitbook.io/product-discovery/building-the-front-end-experience-with-fhr/understanding-the-fhr-query-response/field-by-field-guide-to-the-fhr-response.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
