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

Required Fields

Required Fields (Event Schema Essentials)#

Below are the required identifiers used within Intempt’s event schema.
These fields ensure that Intempt can unify profiles, track sessions, enrich events with context, and process events in real time.

⚠️ Product-Specific Rule#

If productId is included in the payload:
userId becomes optional
profileId becomes optional
The event does not create anonymous users
The payload is treated as product ingestion, not a behavioral event
Example:
{
  "productId": "123",
  "data": {
    "name": "Wine",
    "amount": 150,
    "quantity": 4
  }
}

Event Schema Identifiers#

EventId#

Description#

A unique identifier for each event.
Used for deduplication and ensuring “exactly-once” ingestion within ClickHouse + Flink pipelines.

Type#

string

Example#

"eventId": "evt_98ac13f01a2b"

ProfileId#

Description#

Defines which user performed the event.
Mapped internally to masterId, enabling identity stitching across devices and data sources.

When Required#

Required for all behavioral events
Optional for product ingestion (when productId is provided)

Type#

string

Example#

"profileId": "usr_12ab45c99d77"

SessionId#

Description#

Represents the session in which the event occurred.
Used to group events into meaningful visits for funnels, journeys, and behavioral pathing.

How It Works#

Automatically generated by JavaScript / iOS / Android SDKs
Must be supplied manually for server-side events if session grouping is needed

Type#

string

Example#

"sessionId": "sess_55f1a4c908e1"

AccountId#

Description#

Links an event to an account, business entity, or workspace.
Used for B2B analytics, CRM sync, subscription tracking, and account-level journeys.

Type#

string

Example#

"accountId": "acc_a9213fbb892"

PageId#

Description#

Represents the page or screen context of the event.
Primarily added automatically by SDKs for behavioral events (page views, navigation, etc.).

Type#

string

Example#

"pageId": "page_dashboard_home"

Summary#

These fields allow Intempt to:
Unify users across sessions + devices
Connect events to accounts
Maintain real-time session tracking
Perform accurate product ingestion
Support identity stitching and behavioral analytics
The productId exception ensures developers ingest product catalogs without creating unwanted anonymous users, eliminating VNed’s issue.

Modified at 2025-12-03 14:40:14
Previous
Event Schema Overview
Next
Attribute Schema
Built with