Creates a new event and optionally sends push notifications to connected devices.
If the specified channel doesnβt exist, it will be automatically created. This reduces setup complexity for simple integrations.
Set notify: true (default) to send push notifications to devices connected through PWA or browsers that have accepted notifications (e.g., Chrome).
API key authentication. Format: emitkit_xxxxxxxxxxxxxxxxxxxxx
Create API keys in your EmitKit dashboard. Keys are scoped to a specific organization and project.
Unique key to ensure idempotent request processing. Prevents duplicate events from retries or webhook replays. Valid for 24 hours.
1 - 255Channel name for organizing events. Channels are automatically created if they don't exist. Use kebab-case for consistency (e.g., 'user-signups').
1 - 255"payments"
Event title - the main message
1 - 500"Payment Received"
Optional detailed description
5000"User upgraded to Pro plan"
Single emoji icon to display with the event
10"π°"
Array of tags for filtering and organization
2050["payment", "upgrade"]Custom JSON metadata. Any valid JSON structure is accepted. Use this to attach custom data to events for filtering or display.
{
"amount": 99.99,
"currency": "USD",
"plan": "pro",
"userId": "user_123"
}Optional user identifier to associate with this event. Supports both direct user IDs and aliases (email, username, etc.) created via the /v1/identify endpoint. Aliases are automatically resolved to canonical user IDs.
255"user_123"
Whether to send push notifications to connected devices (PWA or browsers with accepted notifications). Set to false for silent event logging.