1. Webhooks
  • HMS Sovereign API
  • Get started
    • Authentication
    • Introduction
    • Quickstart
  • Core concepts
    • Assistants
    • Calls
    • Phone Numbers
    • Webhooks
  • Platform
    • Billing & Credits
    • EU Data Sovereignty
    • Voice Selection
    • Whitelabel Portal
  • Webhooks
    • Assistant Request
    • End of Call Report
    • Webhooks Overview
    • Webhook Security
    • Status Update
    • Tool Calls
  • Configuration
    • Analysis Templates
    • Custom Tools
    • SIP Trunks
    • Tool Templates
  • Features
    • AI Generation
    • Autonomous Silence Handling
    • Call Analysis
    • Call Transfers
    • Campaigns Setup
    • Outbound Campaigns
    • Voicemail Detection
    • Web Calls
  • Integrations
    • BYOK Setup
    • Provider Pricing
    • xAI Grok Integration
  • Reference
    • Error Codes
    • Rate Limits
    • Troubleshooting
Documentation
API Reference
Documentation
API Reference
Book a meeting
Linkedin
Github
  1. Webhooks

Status Update

Called when the call status changes. Use this to track call lifecycle in your systems.

When It's Called#

The webhook is triggered when the call status changes to:
in-progress - Call connected, conversation started
ended - Call ended normally (customer hung up)
ended-with-error - Call ended due to an error

Request Payload#

Call Started (in-progress)#

{
  "message": {
    "type": "status-update",
    "timestamp": "2025-12-13T12:00:00.000Z",
    "call": {
      "id": "5c4d030f-43e3-4e65-899e-8148521e660f",
      "type": "inbound_phone_call",
      "status": "in-progress"
    },
    "phone_number": {
      "number": "+31850835037",
      "name": "HMS Sovereign Demo"
    },
    "customer": {
      "number": "+31612345678"
    }
  }
}

Call Ended Normally#

{
  "message": {
    "type": "status-update",
    "timestamp": "2025-12-13T12:05:00.000Z",
    "call": {
      "id": "5c4d030f-43e3-4e65-899e-8148521e660f",
      "type": "inbound_phone_call",
      "status": "ended"
    },
    "phone_number": {
      "number": "+31850835037",
      "name": "HMS Sovereign Demo"
    },
    "customer": {
      "number": "+31612345678"
    }
  }
}

Call Ended with Error#

{
  "message": {
    "type": "status-update",
    "timestamp": "2025-12-13T12:05:00.000Z",
    "call": {
      "id": "5c4d030f-43e3-4e65-899e-8148521e660f",
      "type": "inbound_phone_call",
      "status": "ended-with-error"
    },
    "phone_number": {
      "number": "+31850835037",
      "name": "HMS Sovereign Demo"
    },
    "customer": {
      "number": "+31612345678"
    },
    "error": "STT connection failed"
  }
}

Response#

The response body is ignored. Return any 2xx status code to acknowledge receipt.
HTTP/1.1 200 OK

Use Cases#

Update CRM with call activity
Track active calls in real-time dashboard
Alert on call errors
Log call events for analytics

Example Implementation (Node.js)#

See StatusUpdatePayload Schema for complete details.
Modified at 2026-03-17 10:59:50
Previous
Webhook Security
Next
Tool Calls
Built with