
What are webhooks?
Webhooks are HTTP callbacks that automatically send data from one application to another when specific events occur. Think of them as “reverse APIs” - instead of your application requesting data from a service, the service automatically sends data to your application when something happens. A webhook app in Thena allows you to receive all platform events in real-time and send them to multiple destinations. This approach gives you complete control over how you receive and process Thena platform events while maintaining the flexibility to send them to multiple destinations.What events are supported?
Thena publishes a comprehensive set of platform events that you can receive through webhooks. These events cover all major platform activities and are organized into logical categories:Ticket events
Ticket events
- ticket:created - New ticket creation
- ticket:updated - Ticket modifications
- ticket:deleted - Ticket deletion
- ticket:archived - Ticket archiving
- ticket:assigned - Agent assignment
- ticket:status:changed - Status updates
- ticket:priority:changed - Priority changes
Account events
Account events
- account:created - New account creation
- account:updated - Account modifications
- account:deleted - Account deletion
- account-health:changed - Health status changes
- account-status:changed - Account status updates
- account-custom_field_value:added - Custom field additions
- account-custom_field_value:removed - Custom field removals
Comment events
Comment events
- ticket:comment:created - New ticket comments
- ticket:comment:updated - Comment modifications
- ticket:comment:deleted - Comment deletion
- account-task:comment:created - Task comment creation
- account-activity:comment:created - Activity comment creation
- account-note:comment:created - Note comment creation
User events
User events
- user:mentioned - User mentions in comments
- user:created - New user creation
- user:updated - User profile updates
- user:deleted - User deletion
Organization events
Organization events
- organization:created - New organization setup
- organization:updated - Organization changes
- organization:deleted - Organization deletion
- organization:member-joined - New member additions
- organization:member-left - Member departures
- organization:plan-changed - Subscription plan updates
Custom object events
Custom object events
- custom-object::created - Custom object creation
- custom-object::updated - Custom object updates
- custom-object::deleted - Custom object deletion
- custom-object::field-changed - Field value changes
Note: Custom object events use dynamic event types based on your custom object definitions. Replace with your actual custom object names (e.g., “deal”, “opportunity”, “lead”).
Key features
Real-time event streaming
Receive all platform events from Thena in real-time through webhook endpoints.
Multiple destinations
Create multiple webhook apps to send events to different services and systems.
Custom filtering
Filter and process events on your end to create custom workflows and automation.
Full control
Maintain complete control over event processing logic and data handling.
How to set up webhooks in Thena
Setup requirements: The webhook app creation requires setup through the Thena API. There is no user interface available for configuration at this time. All setup must be completed using API calls.
- Create app - use the curl command with the manifest to create the app
- Install app - install the app in the teams whose events you want to receive
Step 1: Create app
1
Prepare the curl request
Create a POST request to create your webhook app with the following curl command:Customize the manifest with your organization’s information:
- Add your Thena API key in the
x-api-key
header - Update the
developer
section with your company details - Replace
webhook URLs
with your actual endpoints inside webhooks and interactivity - Modify the app name and description as needed
Replace
YOUR_API_KEY
with your actual Thena API key. You can find this in your Thena dashboard under Organization → Personal → Security Access or visit https://dashboard.thena.ai/organization/settings/personal/security-access.App visibility: Ensure this is set to
private
since it is for internal use.2
Make the API call
Use the Create a new app API to execute the curl command above.
The API endpoint will validate your manifest and create the webhook app with the specified configuration.
3
Save the app ID
Once the app is created successfully, you will receive an API response containing:
appId
: This unique identifier for your webhook app (e.g.,EGHG8R3K9HGU98JJ81W5EKQRM2X9
)clientId
andclientSecret
: Authentication credentials for the app
appId
as you’ll need it for the next step.Step 2: Install app
After creating the app, you need to install it to specify which teams’ events you want to receive.1
Prepare the installation request
Create a POST request to install the webhook app with the following curl command:Customize the installation request with your specific values:
- Add your Thena API key in the
x-api-key
header - Replace
YOUR_APP_ID
with theappId
you received from Step 1 (e.g.,EGHG8R3K9HGU98JJ81W5EKQRM2X9
) - Update the
teamIds
array with your actual team IDs
Finding team IDs: You can find your team ID from the URL when you’re in the team dashboard in Thena. For example, if the URL is
https://dashboard.thena.ai/dashboard/T123NHFDRF
, then the team ID is T123NHFDRF
.Multiple teams: You can install the webhook app to multiple teams at once by including all relevant team IDs in the
teamIds
array.2
Make the API call
Use the Install an app API to execute the curl command above.
The API endpoint will handle connecting your webhook app to the specified Thena teams.
3
Verify the installation
After successful installation, you should see the webhook app appear in your app settings. The app will now start sending events from the specified teams to the webhook URL.
What can you do with multiple webhook apps?
You can create as many webhook private apps as needed using this approach to send events to multiple destinations:Zapier, n8n, Make integration
Send events to Zapier, n8n, Make for workflow automation and integration with multiple apps.
Internal monitoring
Route events to your internal monitoring and alerting systems.
Data warehouse
Stream events to data warehouses for analytics and reporting.
Slack notifications
Send filtered events to Slack channels for team notifications.
App isolation: Each webhook app operates independently, so you can have different configurations, webhook URLs, and team assignments for different use cases.
How do you process webhook events?
Based on the platform events you receive, you can add filtering on your end and create any workflows:Event filtering: You can filter these events on your webhook endpoint to process only the events relevant to your use case. Each event includes rich metadata and payload data for comprehensive integration.
Filtering examples
No-code filtering
If you’re using no-code automation tools like Zapier, n8n, or Make, you can filter events using the Message Event Type field instead of writing code. For example:- Filter by
ticket:created
to process only new ticket events - Filter by
ticket:comment:reaction:added
to handle reaction events - Filter by
account:updated
to respond to account changes - Use pattern matching like
ticket:*
to catch all ticket-related events
Workflow examples
Automated notifications
Send Slack messages when high-priority tickets are created or escalated.
Data sync
Update external CRM systems when contacts are modified or created.
Analytics tracking
Track user engagement patterns and generate real-time reports.
Compliance logging
Log all data changes for audit purposes and regulatory compliance.
Getting help: If you encounter issues during setup, check the validation requirements above and ensure all required fields are properly configured in your manifest.