Get Webhook Events
Retrieve webhook events sent to your registered webhook URLs.
Use Cases
- Debug webhook delivery issues
- Audit webhook event history
- Recover missed webhook events after downtime
- Verify event payloads during integration testing
Common Event Types
patient.insurance.added- Insurance successfully added to patientpatient.insurance.failed- Insurance addition failedappointment.created- Appointment createdappointment.updated- Appointment updatednote.created- Clinical note created
Query Parameters
- job_id (string, optional): Filter by job ID. Returns only events associated with a specific asynchronous operation. Useful for awaiting results of a single API call.
- event_type (string, optional): Filter by event type (e.g., “patient.insurance.added”, “appointment.created”)
- delivery_status (string, optional): Filter by delivery status - “success” or “failed”. Indicates whether the webhook event was delivered to the webhook URL on file
- start_date (string, optional): Filter events created on or after this date (ISO 8601 format: YYYY-MM-DD)
- end_date (string, optional): Filter events created on or before this date (ISO 8601 format: YYYY-MM-DD)
- page (integer, optional): Page number (default: 1, min: 1)
- page_size (integer, optional): Number of events per page (default: 50, max: 100)
- sort (string, optional): Sort order. Use “created_at” for ascending (oldest first) or “-created_at” for descending (newest first). Default: “-created_at”
Common Workflows
Track Appointments You Created via the API
To track all appointments you’ve successfully created through Cobalt’s API, filter byappointment.created events:
appointment_id, patient MRN, date/time, and provider information - allowing you to maintain a complete audit trail of appointments scheduled through your integration.
Response:
Additional Example Requests
Get Recent Events
Filter by Event Type
Filter by Date Range
Get Page 2
Example Response
Patient Insurance Added Event
Response Fields
Top-Level Fields
- success (boolean): Whether the request was successful
- webhook_events (array): Array of webhook event objects
- pagination (object): Pagination metadata
Event Object Fields
- event_id (string): Unique event identifier
- event_type (string): Event type (e.g., “patient.insurance.added”, “appointment.created”)
- webhook_url (string): The URL the event was sent to
- delivery_status (string): Delivery status - “success” or “failed”. Indicates whether the webhook event was delivered to the webhook URL on file
- data (object): Event-specific payload data
- created_at (string): ISO 8601 timestamp of event creation
- job_id (string, nullable): Job ID if this event is related to an asynchronous operation
- access_token_reference_id (string, nullable): The reference ID associated with your access token
Pagination Object
- current_page (integer): Current page number
- total_pages (integer): Total number of pages
- total_count (integer): Total number of events matching the filter
- page_size (integer): Number of items per page
data field in each event contains event-specific information that varies depending on the event type. Refer to the webhook event docs for payload structures: Operation Events, Sync Events, Account Events.Pagination
This endpoint supports page-based pagination:- Make an initial request with optional
pageandpage_sizeparameters - Check the
paginationobject in the response fortotal_pages - Request subsequent pages by incrementing the
pageparameter - Continue until you reach
total_pages
Authorizations
Query Parameters
Filter webhook events by a specific job ID. Useful for polling the result of an asynchronous operation
Filter by event type (e.g., "patient.insurance.added", "appointment.created")
Filter by delivery status - "success" or "failed". Indicates whether the webhook event was delivered to the webhook URL on file
success, failed Filter events created on or after this date (ISO 8601 format: YYYY-MM-DD)
Filter events created on or before this date (ISO 8601 format: YYYY-MM-DD)
Page number (default: 1, min: 1)
x >= 1Number of events per page (default: 50, max: 100)
1 <= x <= 100Sort order. Use 'created_at' for ascending (oldest first) or '-created_at' for descending (newest first). Default: '-created_at'
created_at, -created_at