Search

The Search module provides product discovery for storefront-facing applications. It supports keyword search, faceted filters, autocomplete suggestions, product listing pages backed by Vertex AI retail search, display banner ads, and product recommendations.

Banners

Display banner ad operations powered by Osmos.

Operations
GET
/service/application/search/v1.0/banners
# Fetch display banner ads.
GET

Fetch display banner ads.

FDK Method Name: getBanners
Returns display banner ads from Osmos for the current storefront context. Supports geo, device, category, and cohort targeting via query parameters. Always returns HTTP 200 — failures degrade to an empty items array with metadata.fallback=true.
Parameters
store
string
Store / channel key (e.g. AJIO).
pt
string
Page type context for ad targeting (e.g. home, category, search).
device
string
Device type for ad targeting.
Enum
brands
string
Brand name for ad targeting context.
keyword
string
Search keyword context for ad targeting.
category_l1
string
L1 category context for ad targeting.
category_l2
string
L2 category context for ad targeting.
category_l3
string
L3 category context for ad targeting.
city
string
User city for geo targeting.
state
string
User state for geo targeting.
country
string
User country for geo targeting.
platform
string
Platform identifier for targeting.
channel
string
Channel identifier for targeting.
user_type
string
User segment for ad targeting.
Enum
user_login_status
string
User authentication state for ad targeting.
Enum
user_cohort
string
Cohort tag for personalised ad targeting.
cli_ubid
string
Client universal browser ID. Overrides UserId cookie for Osmos tracking when provided.
ads_per_unit
integer
Maximum number of banner ads to return.
Response
200
400
Success. Returns banner ads. Empty items array when no ads are available or on circuit-open / timeout fallback.
BannerListing
items
array of object (BannerItem)
List of banner ads. Empty array when unavailable or on fallback.
Array of BannerItem
banner_id
string
Unique banner identifier (Osmos uclid).
image_url_desktop
string
Desktop banner image URL.
image_url_mobile
string
Mobile banner image URL.
impression_url
string
Pixel URL to fire on banner impression for tracking.
click_url
string
Tracking URL to fire on banner click.
destination_url
string
Final landing URL the user navigates to after clicking.
position
integer
Display rank / position of the banner in the ad unit.
alt_text
string
Accessibility alt text for the banner image.
title
string
Banner headline copy.
description
string
Banner sub-copy / body text.
cta_text
string
Call-to-action button label.
cta_url
string
Call-to-action button URL.
metadata
object
Arbitrary extra metadata forwarded from Osmos.
additionalProperties
Allows you to attach properties in addition to the ones mentioned above. Any additional properties are allowed.
page
object (StandardPage)
StandardPage
current
integer
Current page number (1-indexed).
total
integer
Nullable
Total number of pages. null for cursor-based (open-ended) endpoints.
has_previous
boolean
Whether a previous page exists.
has_next
boolean
Whether a next page exists.
item_total
integer
Total number of items on the current page.
type
string
Pagination mode.
Enum
next_id
string
Cursor token for the next page. Only present when type=cursor and has_next=true.
additionalProperties
Allows you to attach properties in addition to the ones mentioned above. Any additional properties are allowed.
metadata
object (BannerListingMetadata)
BannerListingMetadata
source
string
Data source identifier.
Enum
fallback
boolean
true when Osmos is unreachable and an empty response is returned.
additionalProperties
Allows you to attach properties in addition to the ones mentioned above. Any additional properties are allowed.
additionalProperties
Allows you to attach properties in addition to the ones mentioned above. Any additional properties are allowed.
Examples
Parameters
Parameters are not required.
GET
/service/application/search/v1.0/banners
Loading...
Response
Loading...

Recommendations

Product recommendation operations — placement-based (GET) and unified strategy router (POST).

Operations
GET
/service/application/search/v1.0/recommendations
# Placement-based product recommendations.
POST
/service/application/search/v1.0/recommendations
# Unified recommendation strategies.
GET

Placement-based product recommendations.

FDK Method Name: getRecommendations
Returns placement-based product recommendations for a storefront visitor. The backend (Vertex Predict or RRA) is determined per placement_type via the PLACEMENT_BACKEND_* environment variables — no global feature flag. Returns a single flat product list. Always returns HTTP 200 — failures degrade to an empty items array with metadata.fallback=true.
Parameters
placement_type
string
Required
Recommendation placement key that determines the model to invoke (e.g. similar-products, recently-viewed, bought-together).
visitor_id
string
Required
Storefront visitor ID. Used by Vertex for personalisation context and by RRA for session scoping.
product_id
string
Single seed product ID. Mutually exclusive with product_ids.
product_ids
string
Comma-separated seed product IDs. Mutually exclusive with product_id. Results are merged into a single flat list.
page_size
integer
Number of recommended products to return (max 50).
Default Value : 10
filter
string
Vertex filter expression to narrow recommendation results.
pincode
string
Delivery pincode for price zone resolution.
Response
200
400
Success. Returns a flat list of recommended products. Empty items array on fallback (circuit open, timeout, or no results).
RecommendationListing
items
array of object (RecommendedProductItem)
Flat list of recommended products. Empty array on fallback.
Array of RecommendedProductItem
uid
integer
Unique product identifier.
name
string
Product display name.
slug
string
URL-safe product identifier.
brand
object
Brand name and UID.
price
object
Effective and marked price bands.
medias
array of object
Product images.
sellable
boolean
Whether the product is currently purchasable.
additionalProperties
Allows you to attach properties in addition to the ones mentioned above. Any additional properties are allowed.
page
object (StandardPage)
StandardPage
current
integer
Current page number (1-indexed).
total
integer
Nullable
Total number of pages. null for cursor-based (open-ended) endpoints.
has_previous
boolean
Whether a previous page exists.
has_next
boolean
Whether a next page exists.
item_total
integer
Total number of items on the current page.
type
string
Pagination mode.
Enum
next_id
string
Cursor token for the next page. Only present when type=cursor and has_next=true.
additionalProperties
Allows you to attach properties in addition to the ones mentioned above. Any additional properties are allowed.
metadata
object (RecommendationListingMetadata)
RecommendationListingMetadata
placement_type
string
Echoes the requested placement_type.
attribution_token
string
Vertex attribution token for downstream event logging. Empty string when RRA backend is active.
missing_ids
array of string
Seed product IDs that were not found in productMaster.
fallback
boolean
Present and true only when a fallback response is returned.
additionalProperties
Allows you to attach properties in addition to the ones mentioned above. Any additional properties are allowed.
additionalProperties
Allows you to attach properties in addition to the ones mentioned above. Any additional properties are allowed.
Examples
Parameters
Parameters are not required.
GET
/service/application/search/v1.0/recommendations
Loading...
Response
Loading...
POST

Unified recommendation strategies.

FDK Method Name: postRecommendations
Single entry point for batch, widget, and personalized recommendations. Use the `strategy` field to select the recommendation type. If `strategy` is omitted but `products` array is present, auto-detects as batch. Always returns HTTP 200.
Parameters
No Parameters
Request body
strategy
string
Recommendation strategy. If omitted and `products` is present, defaults to batch.
Enum
products
array of object (SimilarBatchProduct)
Seed product entries (strategy=batch). At least one entry required.
Array of SimilarBatchProduct
product_id
string
Required
Seed product ID.
store
string
Store / channel key for RRA routing. Defaults to the application ID when omitted.
size
integer
Max number of similar products for this seed. Defaults to RRA_MAX_PER_PRODUCT server config.
pincode
string
Delivery pincode for price zone resolution (batch/widget/personalized).
widget_id
string
Widget placement identifier (strategy=widget).
widget_type
string
Widget type key (strategy=widget).
store
string
Store / channel key (strategy=widget/personalized).
page_size
integer
Number of products to return, max 50 (strategy=widget/personalized).
Default Value : 20
show_default_if_no_data
boolean
Return default content if none exists (strategy=widget).
Default Value : false
primary_cohort
string
Primary cohort tag (strategy=personalized).
category_id
string
Category identifier (strategy=personalized).
offset
string
Opaque cursor token for pagination (strategy=personalized).
Response
200
400
Success. Response shape depends on strategy — batch returns grouped items, widget/personalized return flat product lists. Empty items on fallback.
Examples
Parameters
body:
body
POST
/service/application/search/v1.0/recommendations
Loading...
Response
Loading...