Intempt
  1. Data Models & Event Schema
Intempt
  • Installation
    • Basic Intempt Installation
    • Create source
    • Web Snippet
    • Google Tag Manager
    • Autocapture setup
    • SPA tracking
    • Environment Setup
    • Validating Installation
  • SDK
    • JS SDK
    • Android SDK
    • iOS SDK
    • Node.js SDK
  • API Reference
    • Track data
      POST
    • Consent
      POST
    • Choose API
      POST
    • Recommendations Feed API
      POST
  • Data Ingestion & Tracking
    • identify()
    • track()
    • record()
    • alias()
    • group()
    • consent()
    • intempt:html / intempt:page / intempt:session
    • Product Catalog Ingestion via API
  • Data Models & Event Schema
    • Event Schema Overview
    • Required Fields
    • Attribute Schema
    • Product Catalog Schema
  • Webhooks
    • Webhook Configuration
  • Server Side Experiments
    • Overview
    • Choose API endpoint
    • Handling Experiment Response
  1. Data Models & Event Schema

Product Catalog Schema

Product Catalog Schema#

The Product Catalog Schema defines the structure of product data used by Intempt’s Recommendations, Feeds, Personalizations, and Optimize products.
All catalog items must follow this standardized format to ensure proper indexing, searchability, and recommendation accuracy.
This schema applies to all catalog sources, regardless of whether the data is provided via JSON, XML, or a third-party integration.

1. Required Fields#

Each product in the catalog must include the following mandatory fields, or fields that are functionally equivalent.
FieldTypeDescription
idstringUnique identifier for each product. Used internally for indexing and recommendation lookup.
titlestringProduct name displayed across personalization and recommendation surfaces.
descriptionstringText description providing detail about the product.
urlstringURL to the product page where users can view or purchase the product.
image_linkstringPrimary image used in recommendation cards and personalization components.

Example (JSON)#

{
  "id": "SKU12345",
  "title": "Cotton Hoodie",
  "description": "Soft-touch premium cotton hoodie.",
  "url": "https://yourstore.com/products/hoodie",
  "image_link": "https://yourstore.com/products/hoodie.jpg"
}

2. Optional Fields#

These fields are not required but can improve recommendation quality:
FieldTypeDescription
pricenumber/stringProduct price.
brandstringProduct brand name.
categorystring/arrayCategory or hierarchy the product belongs to.
tagsarrayLabels used for filtering or model enrichment.
availabilitystringe.g., in_stock, out_of_stock, preorder.
ratingnumberOptional rating used in personalized ranking.

Example (JSON)#

{
  "id": "SKU12345",
  "title": "Cotton Hoodie",
  "description": "Soft-touch premium cotton hoodie.",
  "url": "https://yourstore.com/products/hoodie",
  "image_link": "https://yourstore.com/products/hoodie.jpg",
  "price": 59.99,
  "brand": "ComfortWear",
  "category": "winterwear",
  "tags": ["hoodie", "cotton", "winter"]
}

3. Catalog Feed Structure (JSON)#

Catalog feeds must include a top-level products array.
{
  "products": [
    {
      "product": {
        "id": "SKU12345",
        "title": "Cotton Hoodie",
        "description": "...",
        "url": "...",
        "image_link": "..."
      }
    }
  ]
}

4. Catalog Feed Structure (XML)#

Equivalent structure supported in XML:
<catalog>
  <products>
    <product>
      <id>SKU12345</id>
      <title>Cotton Hoodie</title>
      <description>Soft-touch premium cotton hoodie.</description>
      <url>https://yourstore.com/products/hoodie</url>
      <image_link>https://yourstore.com/products/hoodie.jpg</image_link>
    </product>
  </products>
</catalog>

5. Field Mapping Model#

When integrating an external feed, every field from the feed must map to one of the schema fields above.
Source FieldIntempt FieldRequired?Notes
ididYesMust be unique
titletitleYes-
link / product_urlurlYesaccept equivalent fields
image / image_url / image_linkimage_linkYesmust be a valid image URL
descriptiondescriptionYes-
pricepriceOptionalrecommended for eCom
other fieldscustomOptionalplaced under data or mapped optionally

6. Schema Validation Rules#

All required fields must be present for each product.
All product IDs must be unique across the entire catalog.
image_link must be a valid public URL.
Extra fields not mapped explicitly will be ignored unless added as optional mappings.
All products must exist within the top-level products array.

7. Why This Schema Matters#

The Product Catalog Schema is required for:
Recommendation Feed API
Product-based personalization
Dynamic content blocks
"Purchased together," "Viewed together," and similar models
Behavioral ranking and real-time scoring
Product cards in Journeys & Messages
Following this schema ensures:
Faster ingestion
Fewer rejected products
Better recommendation accuracy
Consistent UI rendering

Summary#

This schema defines the minimum required structure and optional enrichments for product catalogs in Intempt.
Proper schema alignment ensures accurate ingestion, recommendation performance, and seamless downstream personalization.

Modified at 2025-12-03 15:03:49
Previous
Attribute Schema
Next
Webhook Configuration
Built with