Troubleshooting for Eureka Event Integration

Prev Next

If you’re experiencing issues after implementing Eureka events, refer to the following solutions:

Validation Errors

When the request payload is invalid, the API returns a 400 response with details:

{
  "status": "ValidationException",
  "code": 400,
  "message": "Validation Error Occurred",
  "validations": [
    "Key: 'Search.SearchSessionId' Error:Field validation for 'SearchSessionId' failed on the 'required' tag"
  ]
}

Common Validation Errors

Error Message

Cause

Fix

Event type is required

Missing eventType field

Add "eventType": "search" (or other valid type)

SearchSessionId failed on the 'required' tag

Missing or empty searchSessionId

Provide a non-empty string without spaces

Source failed on the 'oneof' tag

Invalid source value

Use one of: search-popup, search-listing, category-listing, brand-listing

Query failed on the 'non_blank_string' tag

Empty or whitespace-only query

Provide a non-empty search query

Sorting failed on the 'oneof_sorting' tag

Invalid sorting value

Use one of the valid sorting values

Platform failed on the 'oneof' tag

Invalid platform value

Use one of: desktop-web, mobile-web, tablet-web, ios, android, other

IntegrationType failed on the 'oneof' tag

Invalid integration type

Use one of: api, web, app, sdk

Product.Id failed on the 'required' tag

Missing product ID

Every product must have a non-empty id

Product.Currency failed on the 'required' tag

Missing currency

Every product must have a non-empty currency

OrderId failed on the 'required' tag

Missing order ID in purchase

Purchase events require orderId

AllPurchasedProducts failed on the 'required' tag

Missing product list in purchase

Provide array of all purchased product IDs

AttributionWindow failed on the 'oneof_attrwindow' tag

Invalid attribution window value

Each value must be a numeric string or "session"

TraceId failed on the 'required' tag

Missing traceId in page view

product-list-view events require traceId

ListValue failed on the 'non_blank_string' tag

Empty listValue in page view

Provide the category/brand hierarchy

CreatedAt failed on the 'required' tag

Missing createdAt in page view

Provide RFC 3339 formatted timestamp

Authentication Errors

{
  "status": "AuthException",
  "code": 403,
  "message": "Partner token authentication is unsuccessful.",
  "validations": null
}

Issue

Fix

Wrong x-auth-token

Verify the token from Inone Settings > Integration Settings.

Missing x-partner-config-key

Add header in format {partnerId}-{locale}.

Invalid x-partner-config-key

Verify your Partner ID and locale match yours.

Source and Dependent Field Errors

The API enforces strict rules on which product fields are allowed based on the source value:

Source

Required Product Field

Must NOT be provided

search-popup

query

listValue

search-listing

query

listValue

category-listing

listValue

query

brand-listing

listValue

query

Legacy source auto-mapping

Sent Value

Mapped to

collection-listing

category-listing

other

search-listing

product-detail

search-listing

Empty or invalid

search-listing

Sorting Values Reference

The sorting field only accepts these predefined values (case-sensitive):

Value

Description

Relevancy

Default. AI-powered relevance algorithm

PriceAsc

Price ascending

PriceDesc

Price descending

MostPopularFirst

Most popular

BestRatedFirst

Best rated

MostRatedFirst

Most rated

NewestFirst

Newest

MostFavoriteFirst

Most favorited

MostDiscountedFirst

Highest discount

Empty string is also accepted and defaults to Relevancy. Any other value results in a validation error.

Refer to Common Properties for further details.

Attribution Window Reference

  • Valid values: any numeric string or "session".

  • Common values: "session", "1", "7", "14", "30", "90"

  • Rules:

    • Must be an array with at least 1 value for add-to-cart and purchase events

    • Each value must not contain spaces

  • Only include windows that encompass the event timeframe (e.g. if item was added on day 8, send ["14", "30", "90"])

Refer to Common Properties for further details.

Platform Values Reference

Value

Description

desktop-web

Desktop browser

mobile-web

Mobile browser

tablet-web

Tablet browser

ios

iOS native app

android

Android native app

other

Other platforms

Default Values Applied by the API

When fields are missing or empty, the API applies these defaults automatically:

Field

Default Value

Condition

campId

999999

If 0 or not provided

variationId

999999

If 0 or not provided

userId

"default"

If empty

sorting

"Relevancy"

If empty (for click, add-to-cart, purchase product-level)

quantity

1

If 0 or negative

createdAt

Current UTC time (RFC 3339)

If empty or invalid format

convertedPrice

Same as price

If 0 or not provided

preferredCurrency

Same as currency

If empty

The integrationType value "app" is automatically normalized to "api" by the server.

Refer to Common Properties for further details.

Field Fallback Behavior

TraceId and SearchSessionId (Bidirectional Fallback)

For all event types, the API applies a bidirectional fallback:

Scenario

Result

traceId provided, searchSessionId empty

searchSessionId is set to traceId

searchSessionId provided, traceId empty

traceId is set to searchSessionId

Both provided

Both used as-is

For click, add-to-cart, and purchase events, this fallback works in three layers:

  1. Product-level traceId → Product-level searchSessionId

  2. Product-level searchSessionId → Product-level traceId

  3. Event-level searchSessionId → Product-level traceId and searchSessionId

Position Fallback Chain

Field

If empty, falls back to

searchPosition

displayPositionposition

displayPosition

searchPosition chain

clickPosition

searchPositionposition

Price Fallback

Field

If empty, falls back to

convertedPrice

price

preferredCurrency

currency

Refer to Common Properties for further details.