How it works
WSAPI Cloud allows users to configure an allowlist for event filtering. Filtered events are discarded server-side before delivery, reducing bandwidth and processing overhead on your end.Available event types
| Category | Events | Description |
|---|---|---|
| Chats | chat_setting, chat_presence, chat_push_name, chat_status, chat_picture | Chat metadata updates |
| Messages | message, message_read, message_delete, message_star | Message lifecycle events |
| Calls | call_offer, call_accept, call_terminate | Call notifications |
| Contacts | contact | Contact information changes |
| Groups | group | Group setting and membership changes |
| Newsletters | newsletter | Newsletter/channel subscription and mute changes |
| User | user_presence | Account-level events |
| Sync | message_history_sync | Initial data synchronization finished |
Session events
WSAPI also emits session-related events that indicate the connection status of your instance. These cannot be filtered out, but you can choose to ignore them in your event handler if you don’t need them. These events are:logged_in, logged_out, login_error and initial_sync_finished
Configuring filters
Update theeventFilters at wsapi.chat/app/settings. You can also override filters on a per-instance basis under the Instance Settings section in the instance details page. When overriding settings for an instance, the event delivery mode (webhook vs. SSE) will also be applied based on the instance’s specific configuration.
Benefits
- Reduced bandwidth — only receive events you care about
- Simpler handler code — no need to filter events in your application
- Immediate effect — filter changes apply instantly without reconnection
What happens to filtered events?
What happens to filtered events?
Filtered events are discarded server-side before delivery. They are not queued or stored — if you change your filter later, past events that were filtered out cannot be retrieved.
Can I change filters without disconnecting?
Can I change filters without disconnecting?
Yes. Filter changes take effect immediately. You don’t need to reconnect your SSE connection or update your webhook URL.
What's the best practice for choosing filters?
What's the best practice for choosing filters?
Start with the specific events your integration needs and expand as requirements grow. This keeps your webhook handler simple and your bandwidth usage minimal.