Source Taxonomy
Every source Intempt reads from, what each one captures on connect, and where to find the attributes it carries.
Overview
When you connect a source, Intempt provisions its collections with a schema already defined. You do not write a field mapping and you do not normalise the payload yourself.
This page is the index of sources. The attributes themselves live in two reference sections, and which one you want depends on what you are after:
| Reference | What it gives you |
|---|---|
| Event taxonomy | The attributes on an event, with the type each carries and an example value |
| Record taxonomy | The full wire record, envelope included, with every nested field flattened |
Every source
| Source | Type key | Kind | Attributes |
|---|---|---|---|
| Web (JavaScript) | web | SDK | Events · Records |
| iOS | ios | SDK | Events · Records |
| Android | android | SDK | Events · Records |
| React Native | react-native | SDK | Records |
| Node.js | nodejs | Server SDK | Records |
| PHP | php | Server SDK | Records |
| Python | python | Server SDK | Records |
| HTTP API | api | Direct | You define |
| Shopify | Shopify | Platform | Events · Records |
| Stripe | Stripe | Platform | Events · Records |
| HubSpot | HubSpot | Platform | Events · Records |
The platform also writes events of its own, which no source you connect is responsible for: Intempt system events and the records behind them.
Client SDKs
Web (JavaScript)
Installed as a snippet on your site. It autocaptures page views and exits, session start and end, clicks, form submissions and field changes, and carries page, technology, viewport and referrer detail alongside them. It is the richest of the sources, because a browser exposes the most context without you instrumenting anything.
Event taxonomy · Record taxonomy
iOS
Autocaptures screen views and exits, session start and end, touches, control actions and field edits. Screen and control names come from the view controller and the control itself, so an unnamed control arrives unnamed. Commerce is not autocaptured on iOS, so cart and product events have to be sent as custom events.
Event taxonomy · Record taxonomy
Android
Autocaptures screen views and exits, sessions, touches, change events and fragment transitions, and unlike iOS it also autocaptures commerce: added to cart, removed from cart, product viewed and product ordered.
Android provisions no collections in the shared events namespace. What it sends arrives as SDK records, so its attributes carry a type and whether they are required, but no example values. The event taxonomy index explains why that table has different columns from the others.
Event taxonomy · Record taxonomy
React Native
Sends identity and leaves the events to you. It provisions Identify rather than a set of
autocaptured screens, because a React Native app's screens are yours to name.
Server SDKs
Node.js, PHP and Python each send the same identity records. A server has no page, no screen, no viewport and no referrer, so there is nothing for autocapture to collect. They send identity; you send the events. All three go through the same ingestion endpoint as every other source, so a server-sent event is not second class.
| SDK | Attributes |
|---|---|
| Node.js | Record taxonomy |
| PHP | Record taxonomy |
| Python | Record taxonomy |
Connected platforms
Shopify
Syncs the order lifecycle end to end: orders placed, fulfilled, cancelled and refunded, plus abandoned checkouts, draft orders, fulfillments and refund detail. Alongside those it brings products, customers, inventory levels and both manual and smart collections.
A connected storefront also reports browsing through the web SDK, so a Shopify connection provisions session, page, click and form collections as well as the commerce ones. Connecting a second store does not create a second set: both write into the same collections, distinguished by the source the event arrived from.
Event taxonomy · Record taxonomy
Stripe
Syncs the billing picture: invoices, charges, payment intents, payment methods and checkout sessions, subscriptions and subscription schedules, refunds, disputes and early fraud warnings, customers and their tax IDs, discounts, products, reviews, and cash balances with their transactions.
Stripe carries the most attributes of any source, because a single invoice or charge object is wide on its own before nested detail is counted.
Event taxonomy · Record taxonomy
HubSpot
Syncs contacts, companies and deals, each on both creation and update, plus the owner records that say who in your team a record belongs to. Deal properties arrive as they are defined in your portal, so a custom deal stage lands under the name you gave it.
Event taxonomy · Record taxonomy
Sources with no fixed taxonomy
HTTP API
Accepts whatever shape you send. Because the schema is yours to define rather than one Intempt ships, there is no out-of-box taxonomy to list, and nothing is provisioned for you on connect. See Track API.
Scheduled pull sources
Beyond the sources above, scheduled pull can bring in a long tail of databases, warehouses and SaaS APIs. Those arrive with the upstream system's own schema, not an Intempt-authored one, so nothing on this page applies to them. Availability depends on your plan, so ask us rather than assuming a given system is supported.
What every collection shares
Whatever the source, each event carries the same envelope: eventId, profileId, sessionId,
timestamp, userId and a data record holding the payload. See
Data Enrichment.
What sits in data is per collection. Event reference lists
which collections each source provisions, and Event taxonomy
lists every attribute inside them.
