Crownpeak
  • Product Discovery Developer Guide
  • 🛒Item catalog management
    • What is the Items API?
    • How to work with Items
      • Item Schema
        • Attributes
        • Nested Item Schemas
        • Using the Item Schema API
        • DefaultLocale API
        • Onboarding on/migrating to Fredhopper
        • List of Reserved Attributes
      • Category Tree
        • Using the Category Tree API
        • Onboarding on XO
      • Item Catalog
        • Using the Catalog API
      • Items
        • Using the streaming Items API
        • Using the batch Items API
    • Step by Step guide
      • Step by step guide for Fredhopper customers
    • Feedback
      • Using the Feedback API
    • Authorization to APIs
    • Troubleshooting API errors
  • 🎯XO Recommendations
    • Introduction
    • Using the Recommendations API
    • Setting up the Chrome extension
    • Micro-segmentation
    • XO Legacy APIs
  • 🔎XO Search
    • Introduction
    • Getting started
    • API Reference
      • Search API
      • Autocomplete API (Beta)
      • Product Suggest API
    • API Parameters
      • Search
      • Pagination
      • Faceting
      • Sorting
      • Grouping
      • Filtering
      • Disable features
      • Response mask
      • Context
    • Configuration limitation
  • 🧪A/B testing
    • Fredhopper A/B testing
      • Integration steps for a non-caching solution
      • Integration steps for a caching solution
        • Java SDK Integration
          • Setup
          • Retrieve running A/B tests - Java SDK
          • Filter and request variant - Java SDK
          • Extending the SDK
        • Manual A/B tests integration
          • Retrieve running A/B tests
          • Filter out irrelevant A/B tests
          • Assign variants to user
          • Request variant for page
        • Limitations and Best Practices
  • 📚Resources
    • Glossary
    • Best Practices
      • Tracker Best Practices
      • Items API Best Practices
      • Fredhopper Data Configuration Best Practices
      • Fredhopper Query Response Best Practices
      • Fredhopper Merchandising Studio Best Practices
    • Privacy Notice
  • Archived Pages
    • FHR Tracking plan
    • XO Tracking plan
    • The Tracking API and JS Library
      • What to Track
        • Generic Actions
          • View
          • Click
          • Add to Cart
          • Remove from Cart
          • Purchase
        • Custom Actions
      • Initializing the JavaScript Library
      • REST API Technical Documentation
Powered by GitBook
On this page
  • Product suggest
  • Response
  • groups
  • metadata
  • Example
  1. XO Search
  2. API Reference

Product Suggest API

Product suggest

POST https://api-eu.attraqt.io/search/suggest

Search and group suggested products using the XO Search engine.

Request Body

Name
Type
Description

token

string

XO Search token (can be found in the XO Console)

query

string

The query string used for the search

options.sortBy

array

Sorting:

\

Sort the results using the specified sort options.

\

Defaults to an empty array (no sort applied, ie. results are sorted by relevancy).

\

Check

Sorting

page for more info about the

sortBy

array format.

options.filter

string

Filtering:

\

Filters the results based on the filter query (SQL-like syntax).

\

Defaults to an empty array (no filter applied).

\

Check

Filtering

page for more info about the

filter

string format.

options.customResponseMask

string

Attributes to retrieve:

\

If specified, you have the control which attributes to retrieve and which not to retrieve.

options.groupBy

object

Grouping:

\

Group the results by specific values.

\

Check

Grouping

page for more info about the format

Example product suggest request

The following sample request includes all possible parameters you can use

POST https://api-eu.attraqt.io/search/suggest HTTP/1.1
Content-Type: application/json; charset=UTF-8

{
    "token": "SEARCH_API_TOKEN",
    "query": "t-shirt",
    "options": {
        "customResponseMask": "id, product(title, price, photo)",
        "filter": "price > 50",
        "sortBy": [
            {
                "attribute": "price",
                "order": "asc"
            }
        ],
        "groupBy": {
            "attribute": "kind",
            "size": 3,
            "values": ["product", "box"]
        }
    }
}

Response

The product suggest response contains two parts:

Property
Type
Description

groups

array

Array of groups fetched from the catalog. Depends on the groupBy options of the request.

metadata

object

Metadata about the search request: available facets, pagination, number of items, elapsed time, ...

groups

The groups matching the product suggest query.

Property
Type
Description

value

string

Value on which this group was aggregated

count

number

Number of items included in this group. Note that only the first size items are returned, not all items of the group.

items

array

List of items returned for this group. This array has the same format as the items returned for a regular search response.

metadata

Metadata about the search query and its results.

Property
Type
Description

time

number

Time the request took to complete (in milliseconds)

token

string

Search API token used for the request

url

string

Equivalent url that can be used to send the same request

id

string

Unique identifier

configurationId

string

Search configuration id used

Example

{
  "groups": [
    {
      "value": "product",
      "count": 150,
      "items": [
        {
          "id": "item 1",
          "score": 5.123,
          "kind": "product",
          "context": "default",
          "product": {
            ...
          }
        },
        ...
      ]
    },
  ...
  ],
  "metadata": {
    "id": "573e30b1-7d97-46a0-bbe0-110527150534",
    "configurationId": "cddda87b-c99d-45aa-bf45-cd53d2bc8ace",
    "token": "a28570e6ac94e8d86c19e820",
    "time": 15,
    "url": "",
  }
}
PreviousAutocomplete API (Beta)NextAPI Parameters

Last updated 3 years ago

🔎