Core Concepts
Understanding SEDL's core concepts will help you make the most of the platform. SEDL organizes your data in a simple three-tier hierarchy: Apps → Event Types → Events.
The SEDL Hierarchy
Apps
An App represents a single application or system that you want to monitor. Apps serve as containers for your event data and provide:
- Organization: Keep events from different applications separate
- Collaboration: Share access with team members
- Authentication: Each app has its own logging token
- Analytics: App-level dashboards and insights
App Properties
| Property | Description |
|---|---|
| ID | Unique identifier for the app |
| Name | Human-readable name for identification |
| Users | List of team members with access |
| Created At | When the app was created |
| Event Logging Token | Authentication token for API requests |
Event Types
Event Types categorize different kinds of interactions or events within your app. They help organize your data and make analytics more meaningful.
Examples of Event Types
user_registration- When users sign upbutton_click- UI interaction trackingerror_occurred- Error loggingpayment_completed- Transaction trackingpage_view- Navigation monitoring
Event Type Properties
| Property | Description |
|---|---|
| ID | Unique identifier for the event type |
| Name | Descriptive name for the event category |
| App ID | Which app this event type belongs to |
| Created At | When the event type was created |
Events
Events are individual occurrences of a specific event type. Each event represents a single interaction, action, or occurrence in your application.
Event Properties
| Property | Description |
|---|---|
| ID | Unique identifier for the event |
| Event Type ID | Which category this event belongs to |
| App ID | Which app this event belongs to |
| Created At | When the event occurred |
| Payload | Custom data associated with the event |
The Event Payload
The payload is the most powerful part of an event. It's a flexible JSON object where you can store any relevant data:
{
"userId": "user_12345",
"orderId": "order_67890",
"totalAmount": 129.99,
"currency": "USD",
"items": [
{
"productId": "prod_abc",
"name": "Wireless Headphones",
"price": 129.99,
"quantity": 1
}
],
"paymentMethod": "credit_card",
"shippingAddress": {
"country": "US",
"state": "CA",
"city": "San Francisco"
}
}
- Include relevant identifiers (user ID, session ID, etc.)
- Add contextual information (page, feature, etc.)
- Keep data structured and consistent
- Include timestamps when relevant
- Don't include sensitive information (passwords, full credit card numbers)
Data Flow Example
Here's how data flows through SEDL for a typical e-commerce application:
- Create App: "My Online Store"
- Define Event Types:
- "product_view"
- "add_to_cart"
- "purchase_completed"
- Send Events: POST requests with relevant payload data
- Analyze: View trends, conversion rates, and user behavior
Authentication & Security
Each app has a unique Event Logging Token that authenticates your API requests. This token:
- Is required for all event creation requests
- Is unique to each app
- Can be regenerated if compromised
- Should be kept secure and not exposed in client-side code
Never expose your logging token in client-side JavaScript or mobile app code. Always make API calls from your backend servers.
Next Steps
Now that you understand SEDL's core concepts, you're ready to: