Webhooks
Webhooks allow you to receive real-time notifications about events that occur in Salescaling. When an event occurs, Salescaling will send an HTTP POST request to the URL you have configured.
Webhook Configuration
To configure a webhook, you need to provide:
Webhook name
Destination URL
Event type to listen to
Custom headers (optional)
Description (optional)
Event Types
We currently support the following event types:
1. Meeting Status Changes (meeting_status_changed)
meeting_status_changed)This event is triggered when there are changes in a meeting's status. The possible statuses are:
meeting_created: When a new meeting is createdmeeting_deleted: When a meeting is deletedmeeting_transcript_done: When the transcription is completedmeeting_summary_done: When the summary is completedmeeting_video_done: When video processing is completedmeeting_notes_done: When notes processing is completed
Payload
Notes
Video and meeting content processing is performed in parallel, so the event
meeting_video_donemay be received before the eventmeeting_summary_done.If you want to know when meeting content processing is completed, you can use the event
meeting_summary_done.If you want to know when notes processing is completed, you can use the event
meeting_notes_done.
2. Meeting Notes Changes (meeting_note_status_changed)
meeting_note_status_changed)This event is triggered when there are changes in at least one note of a meeting. The possible statuses are:
meeting_note_created: When a new note is createdmeeting_note_deleted: When a note is deletedmeeting_note_updated: When a note is updated
Payload
Notes
This event is triggered once for each note that is processed.
When notes are generated automatically, this event is triggered for each generated note.
3. Commercial Signal Detection (commercial_signal_detected)
commercial_signal_detected)This event is triggered when a commercial signal is detected in an activity. Commercial signals are important indicators that can help identify opportunities or risks in customer interactions.
Payload
Fields
code: Code of the detected commercial signal. The available types are:Engagement & Intent:
buying_intent: Buying intent detectedinterest_in_trial: Interest in trial detectedopportunity_qualified: Opportunity qualifiedchampion_detected: Internal champion detectedgatekeeper_detected: Gatekeeper detectedfuture_meeting_scheduled: Future meeting scheduleddecision_timeline_mentioned: Decision timeline mentionedfollow_up_required: Follow-up requiredfollow_up_deadline_mentioned: Follow-up deadline mentionedmulti_department_involvement: Multiple departments involved
Pricing, Budget & Negotiation:
pricing_discussed: Pricing discussedbudget_blocker: Budget blockerbudget_discussed: Budget discusseddiscount_requested: Discount requestedcontractual_concerns: Contractual concernslegal_process_discussed: Legal process discussedrenewal_discussed: Renewal discussedupsell_opportunity: Upsell opportunitypilot_success: Pilot successpilot_failure: Pilot failure
Fit & Product:
product_fit_confirmed: Product fit confirmedusage_feedback_positive: Positive usage feedbackusage_feedback_negative: Negative usage feedbacktechnical_validation_passed: Technical validation passedtechnical_blocker: Technical blockerintegration_concerns: Integration concernstraining_requested: Training requestedfeature_request_made: Feature request madesecurity_concerns: Security concernscompliance_concern: Compliance concern
Competition:
competitor_mentioned: Competitor mentionedcompetitor_comparison_favorable: Favorable competitor comparisoncompetitor_comparison_unfavorable: Unfavorable competitor comparison
Risk & Churn:
churn_risk: Churn riskno_decision_maker: No decision makerinternal_disalignment: Internal misalignmentresistance_to_change: Resistance to changeescalation_detected: Escalation detectedlow_engagement: Low engagementdeadline_blocker: Deadline blocker
Relationship & Communication:
positive_feedback_on_demo: Positive feedback on demonegative_feedback_on_demo: Negative feedback on demorapport_detected: Rapport detectedmisalignment_on_goals: Misalignment on goalsclient_asks_many_questions: Client asks many questionsclient_confused_about_offering: Client confused about the offeringtone_aggressive: Aggressive tonetone_passive: Passive tonespeaker_dominates_conversation: The speaker dominates the conversationclient_drives_conversation: The client drives the conversation
description: Detailed description of the signalcontactId: ID of the related contactcompanyId: ID of the related companycategory: Category of the commercial signal. The available types are:positive: Positive signalrisk: Risk signalneutral: Neutral signal
activityType: Type of activity where the signal was detected. The available types are:meeting: Meetingcall: Callmail: Email
activityId: ID of the activity where the signal was detectedevidence: Array of textual evidences that support the signal detectionchangeType: Type of change the signal represents. The available types are:new: New signal detectedunchanged: Unchanged signalescalated: Escalated signalimproved: Improved signalrecovered: Recovered signal
Request Structure
Each webhook request includes:
Headers:
Content-Type: application/jsonConfigured custom headers
X-Webhook-Signature: Signature to verify authenticity (coming soon)
Body:
Defined according to the event type
Best Practices
Payload Verification:
Implement webhook signature verification (Coming soon)
Error Handling:
Respond with a 2xx status code to confirm receipt
Implement retries in case of failures
Keep a log of received events
Security:
Use HTTPS for your endpoint
Implement authentication on your endpoint; you can specify a token in the request headers
Validate received data before processing it
Implementation Example
Limits and Restrictions
Webhooks have a 10-second timeout
Up to 3 retries will be performed in case of failure
The maximum payload size is 1MB
Support
If you need help with webhook implementation or have questions about the available events, contact our support team.
Last updated
Was this helpful?
