Overview
Use the Events Data API to export full Brij events data for detailed analysis. This endpoint returns raw, event-level records — engagements, registrations, SMS, rebates, forms, and orders — so you can power your own BI reporting, data warehouse syncs, or downstream analytics.
-
Method:
GET -
URL:
https://{{Base_URL}}/analytics/events- Ask your account manager for the full URL
-
Auth:
API-KEY: <your key>(header)
Benefits
- Export granular, event-level data (not just summaries) to power a BI tool or data warehouse
- Filter by event type or a specific event name to pull only the records you need
- Strip PII when you only need aggregate or anonymized analysis
Authentication & Permissions
This endpoint requires an API key with the Events Data scope enabled.
| Item | Detail |
|---|---|
| Header | API-KEY: <key> |
| Required scope | EVENTS_DATA_READ |
| Missing or invalid key | 401 Unauthorized |
| Key without scope | 403 Forbidden: Events Data read permission required |
Brand access follows the key's brand/org role — only brands accessible to that key are queried.
How to Use
- Enable the Events Data scope on your API key. In Brij, go to Settings > Integrations > Edit API Key. You'll find a new "Events Data" row (2nd row, directly under General Analytics) — check Read to enable it. This feature is not included on all plans; speak with your account manager if you don't see it.
- Call the endpoint with your API key and any optional filters (see Query Parameters below).
-
Parse the response:
-
data: array of event documents -
total: total number of matching records across all pages -
limit: echo of your requested page size -
pageInfo: pagination summary (e.g. "Page 1 of 13") -
returnedCount: number of records in this page
-
Query Parameters
| Parameter | Required | Description |
|---|---|---|
limit |
No | Page size (default 1000, max 1000) |
page |
No | Page number (default 1) |
event_type |
No | Category filter: engagements, registrations, sms, rebates, forms, orders
|
event_name |
No | Specific event (friendly alias or raw enum). Overrides event_type
|
start_date |
No | Start of date range |
end_date |
No | End of date range |
timezone |
No | IANA timezone (e.g. America/New_York) for date-only values |
experience |
No | Experience filter (comma-separated or repeated) |
experience_category |
No | Category filter (comma-separated or repeated) |
pii |
No | Defaults to true. Pass pii=false to strip PII fields |
If neither event_type nor event_name is provided, the endpoint returns the standard allowlisted event set.
Example (cURL)
curl --location 'https://{{Base_URL}}/analytics/events?event_type=registrations&start_date=2026-01-01&end_date=2026-01-31&limit=100&page=1' \
--header 'API-KEY: {{API-KEY}}'Example Response
{
"data": [
{
"event": "REGISTRATION_INITIATION",
"eventType": "ENGAGEMENTS",
"user": "abcdefg",
"product": "hijk1234",
"variant": null,
"tag": "ABCD",
"brand": "Test",
"customerNewDtcVisitor": null,
"metaIntegration": {
"fbp": null,
"fbc": null,
"_id": "347843843834884384383"
},
"date": "2026-07-21T12:40:00.023Z",
"enabled": true,
"registrationId": "fdjdfkfkdkdfkfd",
"user_browser": "Chrome 150.0.0.0",
"user_os": "Mac OS 10.15.7",
"user_device": "Apple Macintosh",
"user_device_type": "Desktop",
"user_device_resolution_width": "304303.438493934943",
"user_device_resolution_height": "39494303404393443",
"sessionId": "438943943-3499344-4379-84e1-349394943",
"deviceId": "439493943-349934-439934-99d4-43884393",
"type": "Product",
"mongoDBId": "njfhf83483848349344343",
"locationPoint": "14.6002, 100.0802",
"brandDetails": {
"brandId": "xyz789",
"brandName": "Test",
"billingPlatform": "Shopify",
"package": "DEMO",
"billingPlan": "Test Plan",
"category": "Durable - Luggage & Accessories",
"brandStatus": "Demo"
},
"productInfo": {
"productId": "39843834943943943",
"productName": "Test Product"
},
"variantInfo": {
"variantId": null,
"variantName": null
},
"registrationEnabled": true,
"campaignData": {
"_id": null,
"name": "Food v1-1"
}
},
{
"event": "USER_PROFILE_UPDATE",
"eventType": "USER",
"user": "djjdsjdsjds939384384384843",
"product": "jddsj939332992323",
"tag": "Test",
"brand": "8832832832jdsjdjds",
"data": {},
"customerNewDtcVisitor": null,
"date": "2026-07-21T12:40:00.719Z",
"enabled": true,
"registrationId": "dsjdsj233232",
"type": "Product",
"mongoDBId": "382832832hdshdshds",
"brandDetails": {
"brandId": "32883223hdshdhsds",
"brandName": "Test",
"billingPlatform": "Shopify",
"package": "DEMO",
"billingPlan": "Test Plan",
"category": "Luggage & Accessories",
"brandStatus": "Demo"
},
"productInfo": {
"productId": "93298328jdsjjdssd",
"productName": "Test Product"
},
"variantInfo": {
"variantName": null
},
"registrationEnabled": true,
"campaignData": {
"_id": null,
"name": "Food v1-1"
}
}
],
"total": 1234,
"limit": 100,
"pageInfo": "Page 1 of 13",
"returnedCount": 100
}FAQ & Troubleshooting
What does returnedCount mean?
It's the number of items returned in the current page (can be less than limit).
What's the difference between event_type and event_name?
event_type filters to a broad category (e.g. registrations), while event_name filters to one specific event and overrides event_type if both are provided.
How do I get all events?
Iterate page until returnedCount is 0 (or less than your limit).