Wazo · AsyncAPI Specification
wazo-calld events
Version 26.08
View Spec
View on GitHub
TelephonyVoIPUnified CommunicationsUCaaSContact CenterSIPasteriskWebRTCOpen-SourceSelf-HostedWhite LabelPBXMSPCall CenterProvisioningWebhookEvent-DrivenChatPresenceCDRAsyncAPIWebhooksEvents
Channels
agent_status_update
subscribe
An agent status has changed
application_call_answered
subscribe
application_call_deleted
subscribe
application_call_dtmf_received
subscribe
application_call_entered
subscribe
application_call_initiated
subscribe
application_call_updated
subscribe
application_destination_node_created
subscribe
application_node_created
subscribe
application_node_deleted
subscribe
application_node_updated
subscribe
application_playback_created
subscribe
application_playback_deleted
subscribe
application_progress_started
subscribe
application_progress_stopped
subscribe
application_snoop_created
subscribe
application_snoop_deleted
subscribe
application_snoop_updated
subscribe
application_user_outgoing_call_created
subscribe
call_answered
subscribe
call_cancel_push_notification
subscribe
call_created
subscribe
call_dtmf_created
subscribe
call_ended
subscribe
call_held
subscribe
call_parked
subscribe
call_push_notification
subscribe
call_resumed
subscribe
call_unparked
subscribe
call_updated
subscribe
conference_adhoc_created
subscribe
conference_adhoc_deleted
subscribe
conference_adhoc_participant_joined
subscribe
conference_adhoc_participant_left
subscribe
conference_participant_joined
subscribe
conference_participant_left
subscribe
conference_participant_muted
subscribe
conference_participant_talk_started
subscribe
conference_participant_talk_stopped
subscribe
conference_participant_unmuted
subscribe
conference_record_started
subscribe
conference_record_stopped
subscribe
conference_user_participant_joined
subscribe
conference_user_participant_left
subscribe
conference_user_participant_talk_started
subscribe
conference_user_participant_talk_stopped
subscribe
fax_outbound_created
subscribe
fax_outbound_failed
subscribe
fax_outbound_succeeded
subscribe
fax_outbound_user_created
subscribe
fax_outbound_user_failed
subscribe
fax_outbound_user_succeeded
subscribe
global_voicemail_message_created
subscribe
global_voicemail_message_deleted
subscribe
global_voicemail_message_updated
subscribe
global_voicemail_transcription_created
subscribe
global_voicemail_transcription_deleted
subscribe
line_status_updated
subscribe
meeting_participant_joined
subscribe
meeting_participant_left
subscribe
meeting_user_participant_joined
subscribe
meeting_user_participant_left
subscribe
parked_call_hungup
subscribe
parked_call_timed_out
subscribe
recording_paused
subscribe
recording_resumed
subscribe
recording_started
subscribe
recording_stopped
subscribe
relocate_answered
subscribe
relocate_completed
subscribe
relocate_ended
subscribe
relocate_initiated
subscribe
switchboard_held_call_answered
subscribe
switchboard_held_calls_updated
subscribe
switchboard_queued_call_answered
subscribe
switchboard_queued_calls_updated
subscribe
transfer_abandoned
subscribe
transfer_answered
subscribe
transfer_cancelled
subscribe
transfer_completed
subscribe
transfer_created
subscribe
transfer_ended
subscribe
transfer_updated
subscribe
trunk_status_updated
subscribe
user_missed_call
subscribe
user_voicemail_message_created
subscribe
user_voicemail_message_deleted
subscribe
user_voicemail_message_updated
subscribe
user_voicemail_transcription_created
subscribe
user_voicemail_transcription_deleted
subscribe
Servers
amqp
production
amqp://{username}:{password}@/localhost:{port}//
Local RabbitMQ messaging server for inter-service communication
AsyncAPI Specification
asyncapi: 2.0.0
info:
title: wazo-calld events
version: '26.08'
servers:
production:
url: amqp://{username}:{password}@/localhost:{port}//
description: Local RabbitMQ messaging server for inter-service communication
protocol: amqp
protocolVersion: 0.9.1
variables:
username:
default: guest
description: Configurable through each service's config.yml file
password:
default: guest
description: Configurable through each service's config.yml file
port:
default: '5672'
description: Configurable through each service's config.yml file
defaultContentType: application/json
channels:
agent_status_update:
subscribe:
summary: An agent status has changed
tags:
- name: calld
message:
name: agent-status-update-payload
payload:
type: object
properties:
agent_id:
type: integer
status:
type: string
headers:
type: object
properties:
name:
type: string
const: agent_status_update
description: Name of the event (used for routing the message)
required_acl:
type: string
const: events.events.statuses.agents
description: Necessary user access required to read this event
origin_uuid:
$ref: '#/components/schemas/origin_uuid'
timestamp:
$ref: '#/components/schemas/timestamp'
tenant_uuid:
$ref: '#/components/schemas/tenant_uuid'
user_uuid:{uuid}:
$ref: '#/components/schemas/user_uuid:{uuid}'
required:
- name
- required_acl
- origin_uuid
- timestamp
- tenant_uuid
- user_uuid:{uuid}
application_call_answered:
subscribe:
summary: ''
tags:
- name: calld
message:
name: application-call-answered-payload
payload:
type: object
properties:
application_call:
type: object
properties:
id:
type: string
caller_id_name:
type: string
caller_id_number:
type: string
conversation_id:
type: string
creation_time:
type: string
format: date-time
status:
type: string
on_hold:
type: boolean
is_caller:
type: boolean
dialed_extension:
type: string
variables:
type: object
properties: {}
node_uuid:
type: string
format: uuid
moh_uuid:
type: string
format: uuid
muted:
type: boolean
snoops:
type: object
properties: {}
user_uuid:
type: string
format: uuid
tenant_uuid:
type: string
format: uuid
application_uuid:
type: string
format: uuid
headers:
type: object
properties:
name:
type: string
const: application_call_answered
description: Name of the event (used for routing the message)
required_acl:
type: string
const: events.applications.{application_uuid}.calls.{call[id]}.answered
description: Necessary user access required to read this event
origin_uuid:
$ref: '#/components/schemas/origin_uuid'
timestamp:
$ref: '#/components/schemas/timestamp'
tenant_uuid:
$ref: '#/components/schemas/tenant_uuid'
user_uuid:{uuid}:
$ref: '#/components/schemas/user_uuid:{uuid}'
required:
- name
- required_acl
- origin_uuid
- timestamp
- tenant_uuid
- user_uuid:{uuid}
application_call_deleted:
subscribe:
summary: ''
tags:
- name: calld
message:
name: application-call-deleted-payload
payload:
type: object
properties:
application_call:
type: object
properties:
id:
type: string
caller_id_name:
type: string
caller_id_number:
type: string
conversation_id:
type: string
creation_time:
type: string
format: date-time
status:
type: string
on_hold:
type: boolean
is_caller:
type: boolean
dialed_extension:
type: string
variables:
type: object
properties: {}
node_uuid:
type: string
format: uuid
moh_uuid:
type: string
format: uuid
muted:
type: boolean
snoops:
type: object
properties: {}
user_uuid:
type: string
format: uuid
tenant_uuid:
type: string
format: uuid
application_uuid:
type: string
format: uuid
headers:
type: object
properties:
name:
type: string
const: application_call_deleted
description: Name of the event (used for routing the message)
required_acl:
type: string
const: events.applications.{application_uuid}.calls.{call[id]}.deleted
description: Necessary user access required to read this event
origin_uuid:
$ref: '#/components/schemas/origin_uuid'
timestamp:
$ref: '#/components/schemas/timestamp'
tenant_uuid:
$ref: '#/components/schemas/tenant_uuid'
user_uuid:{uuid}:
$ref: '#/components/schemas/user_uuid:{uuid}'
required:
- name
- required_acl
- origin_uuid
- timestamp
- tenant_uuid
- user_uuid:{uuid}
application_call_dtmf_received:
subscribe:
summary: ''
tags:
- name: calld
message:
name: application-call-dtmf-received-payload
payload:
type: object
properties:
call_id:
type: string
conversation_id:
type: string
dtmf:
type: string
application_uuid:
type: string
format: uuid
headers:
type: object
properties:
name:
type: string
const: application_call_dtmf_received
description: Name of the event (used for routing the message)
required_acl:
type: string
const: events.applications.{application_uuid}.calls.{call_id}.dtmf.created
description: Necessary user access required to read this event
origin_uuid:
$ref: '#/components/schemas/origin_uuid'
timestamp:
$ref: '#/components/schemas/timestamp'
tenant_uuid:
$ref: '#/components/schemas/tenant_uuid'
required:
- name
- required_acl
- origin_uuid
- timestamp
- tenant_uuid
application_call_entered:
subscribe:
summary: ''
tags:
- name: calld
message:
name: application-call-entered-payload
payload:
type: object
properties:
application_call:
type: object
properties:
id:
type: string
caller_id_name:
type: string
caller_id_number:
type: string
conversation_id:
type: string
creation_time:
type: string
format: date-time
status:
type: string
on_hold:
type: boolean
is_caller:
type: boolean
dialed_extension:
type: string
variables:
type: object
properties: {}
node_uuid:
type: string
format: uuid
moh_uuid:
type: string
format: uuid
muted:
type: boolean
snoops:
type: object
properties: {}
user_uuid:
type: string
format: uuid
tenant_uuid:
type: string
format: uuid
application_uuid:
type: string
format: uuid
headers:
type: object
properties:
name:
type: string
const: application_call_entered
description: Name of the event (used for routing the message)
required_acl:
type: string
const: events.applications.{application_uuid}.calls.created
description: Necessary user access required to read this event
origin_uuid:
$ref: '#/components/schemas/origin_uuid'
timestamp:
$ref: '#/components/schemas/timestamp'
tenant_uuid:
$ref: '#/components/schemas/tenant_uuid'
user_uuid:{uuid}:
$ref: '#/components/schemas/user_uuid:{uuid}'
required:
- name
- required_acl
- origin_uuid
- timestamp
- tenant_uuid
- user_uuid:{uuid}
application_call_initiated:
subscribe:
summary: ''
tags:
- name: calld
message:
name: application-call-initiated-payload
payload:
type: object
properties:
application_call:
type: object
properties:
id:
type: string
caller_id_name:
type: string
caller_id_number:
type: string
conversation_id:
type: string
creation_time:
type: string
format: date-time
status:
type: string
on_hold:
type: boolean
is_caller:
type: boolean
dialed_extension:
type: string
variables:
type: object
properties: {}
node_uuid:
type: string
format: uuid
moh_uuid:
type: string
format: uuid
muted:
type: boolean
snoops:
type: object
properties: {}
user_uuid:
type: string
format: uuid
tenant_uuid:
type: string
format: uuid
application_uuid:
type: string
format: uuid
headers:
type: object
properties:
name:
type: string
const: application_call_initiated
description: Name of the event (used for routing the message)
required_acl:
type: string
const: events.applications.{application_uuid}.calls.created
description: Necessary user access required to read this event
origin_uuid:
$ref: '#/components/schemas/origin_uuid'
timestamp:
$ref: '#/components/schemas/timestamp'
tenant_uuid:
$ref: '#/components/schemas/tenant_uuid'
user_uuid:{uuid}:
$ref: '#/components/schemas/user_uuid:{uuid}'
required:
- name
- required_acl
- origin_uuid
- timestamp
- tenant_uuid
- user_uuid:{uuid}
application_call_updated:
subscribe:
summary: ''
tags:
- name: calld
message:
name: application-call-updated-payload
payload:
type: object
properties:
application_call:
type: object
properties:
id:
type: string
caller_id_name:
type: string
caller_id_number:
type: string
conversation_id:
type: string
creation_time:
type: string
format: date-time
status:
type: string
on_hold:
type: boolean
is_caller:
type: boolean
dialed_extension:
type: string
variables:
type: object
properties: {}
node_uuid:
type: string
format: uuid
moh_uuid:
type: string
format: uuid
muted:
type: boolean
snoops:
type: object
properties: {}
user_uuid:
type: string
format: uuid
tenant_uuid:
type: string
format: uuid
application_uuid:
type: string
format: uuid
headers:
type: object
properties:
name:
type: string
const: application_call_updated
description: Name of the event (used for routing the message)
required_acl:
type: string
const: events.applications.{application_uuid}.calls.{call[id]}.updated
description: Necessary user access required to read this event
origin_uuid:
$ref: '#/components/schemas/origin_uuid'
timestamp:
$ref: '#/components/schemas/timestamp'
tenant_uuid:
$ref: '#/components/schemas/tenant_uuid'
user_uuid:{uuid}:
$ref: '#/components/schemas/user_uuid:{uuid}'
required:
- name
- required_acl
- origin_uuid
- timestamp
- tenant_uuid
- user_uuid:{uuid}
application_destination_node_created:
subscribe:
summary: ''
tags:
- name: calld
message:
name: application-destination-node-created-payload
payload:
type: object
properties:
node:
type: object
properties:
uuid:
type: string
format: uuid
calls:
type: array
items:
type: object
properties:
id:
type: string
application_uuid:
type: string
format: uuid
headers:
type: object
properties:
name:
type: string
const: application_destination_node_created
description: Name of the event (used for routing the message)
required_acl:
type: string
const: events.applications.{application_uuid}.nodes.created
description: Necessary user access required to read this event
origin_uuid:
$ref: '#/components/schemas/origin_uuid'
timestamp:
$ref: '#/components/schemas/timestamp'
tenant_uuid:
$ref: '#/components/schemas/tenant_uuid'
required:
- name
- required_acl
- origin_uuid
- timestamp
- tenant_uuid
application_node_created:
subscribe:
summary: ''
tags:
- name: calld
message:
name: application-node-created-payload
payload:
type: object
properties:
node:
type: object
properties:
uuid:
type: string
format: uuid
calls:
type: array
items:
type: object
properties:
id:
type: string
application_uuid:
type: string
format: uuid
headers:
type: object
properties:
name:
type: string
const: application_node_created
description: Name of the event (used for routing the message)
required_acl:
type: string
const: events.applications.{application_uuid}.nodes.created
description: Necessary user access required to read this event
origin_uuid:
$ref: '#/components/schemas/origin_uuid'
timestamp:
$ref: '#/components/schemas/timestamp'
tenant_uuid:
$ref: '#/components/schemas/tenant_uuid'
required:
- name
- required_acl
- origin_uuid
- timestamp
- tenant_uuid
application_node_deleted:
subscribe:
summary: ''
tags:
- name: calld
message:
name: application-node-deleted-payload
payload:
type: object
properties:
node:
type: object
properties:
uuid:
type: string
format: uuid
calls:
type: array
items:
type: object
properties:
id:
type: string
application_uuid:
type: string
format: uuid
headers:
type: object
properties:
name:
type: string
const: application_node_deleted
description: Name of the event (used for routing the message)
required_acl:
type: string
const: events.applications.{application_uuid}.nodes.{node[uuid]}.deleted
description: Necessary user access required to read this event
origin_uuid:
$ref: '#/components/schemas/origin_uuid'
timestamp:
$ref: '#/components/schemas/timestamp'
tenant_uuid:
$ref: '#/components/schemas/tenant_uuid'
required:
- name
- required_acl
- origin_uuid
- timestamp
- tenant_uuid
application_node_updated:
subscribe:
summary: ''
tags:
- name: calld
message:
name: application-node-updated-payload
payload:
type: object
properties:
node:
type: object
properties:
uuid:
type: string
format: uuid
calls:
type: array
items:
type: object
properties:
id:
type: string
application_uuid:
type: string
format: uuid
headers:
type: object
properties:
name:
type: string
const: application_node_updated
description: Name of the event (used for routing the message)
required_acl:
type: string
const: events.applications.{application_uuid}.nodes.{node[uuid]}.updated
description: Necessary user access required to read this event
origin_uuid:
$ref: '#/components/schemas/origin_uuid'
timestamp:
$ref: '#/components/schemas/timestamp'
tenant_uuid:
$ref: '#/components/schemas/tenant_uuid'
required:
- name
- required_acl
- origin_uuid
- timestamp
- tenant_uuid
application_playback_created:
subscribe:
summary: ''
tags:
- name: calld
message:
name: application-playback-created-payload
payload:
type: object
properties:
playback:
type: object
properties:
uuid:
type: string
format: uuid
uri:
type: string
language:
type: string
application_uuid:
type: string
format: uuid
call_id:
type: string
conversation_id:
type: string
headers:
type: object
properties:
name:
type: string
const: application_playback_created
description: Name of the event (used for routing the message)
required_acl:
type: string
const: events.applications.{application_uuid}.playbacks.{playback[uuid]}.created
description: Necessary user access required to read this event
origin_uuid:
$ref: '#/components/schemas/origin_uuid'
timestamp:
$ref: '#/components/schemas/timestamp'
tenant_uuid:
$ref: '#/components/schemas/tenant_uuid'
required:
- name
- required_acl
- origin_uuid
- timestamp
- tenant_uuid
application_playback_deleted:
subscribe:
summary: ''
tags:
- name: calld
message:
name: application-playback-deleted-payload
payload:
type: object
properties:
playback:
type: object
properties:
uuid:
type: string
format: uuid
uri:
type: string
language:
type: string
application_uuid:
type: string
format: uuid
call_id:
type: string
conversation_id:
type: string
headers:
type: object
properties:
name:
type: string
const: application_playback_deleted
description: Name of the event (used for routing the message)
required_acl:
type: string
const: events.applications.{application_uuid}.playbacks.{playback[uuid]}.deleted
description: Necessary user access required to read this event
origin_uuid:
$ref: '#/components/schemas/origin_uuid'
timestamp:
$ref: '#/components/schemas/timestamp'
tenant_uuid:
$ref: '#/components/schemas/tenant_uuid'
required:
- name
- required_acl
- origin_uuid
- timestamp
- tenant_uuid
application_progress_started:
subscribe:
summary: ''
tags:
- name: calld
message:
name: application-progress-started-payload
payload:
type: object
properties:
application_call:
type: object
properties:
id:
type: string
caller_id_name:
type: string
caller_id_number:
type: string
conversation_id:
type: string
creation_time:
type: string
format: date-time
status:
type: string
on_hold:
type: boolean
is_caller:
type: boolean
dialed_extension:
type: string
variables:
type: object
properties: {}
node_uuid:
type: string
format: uuid
moh_uuid:
type: string
format: uuid
muted:
type: boolean
snoops:
type: object
properties: {}
user_uuid:
type: string
format: uuid
tenant_uuid:
type: string
format: uuid
application_uuid:
type: string
format: uuid
headers:
type: object
properties:
name:
type: string
const: application_progress_started
description: Name of the event (used for routing the message)
required_acl:
type: string
const: events.applications.{application_uuid}.calls.{call[id]}.progress.started
description: Necessary user access required to read this event
origin_uuid:
$ref: '#/components/schemas/origin_uuid'
timestamp:
$ref: '#/components/schemas/timestamp'
tenant_uuid:
$ref: '#/components/schemas/tenant_uuid'
user_uuid:{uuid}:
$ref: '#/components/schemas/user_uuid:{uuid}'
required:
- name
- required_acl
- origin_uuid
- timestamp
- tenant_uuid
- user_uuid:{uuid}
application_progress_stopped:
subscribe:
summary: ''
tags:
- name: calld
message:
name: application-progress-stopped-payload
payload:
type: object
properties:
application_call:
type: object
properties:
id:
type: string
caller_id_name:
type: string
caller_id_number:
type: string
conversation_id:
type: string
creation_time:
type: string
format: date-time
status:
type: string
on_hold:
type: boolean
is_caller:
type: boolean
dialed_extension:
type: string
variables:
type: object
properties: {}
node_uuid:
type: string
format: uuid
moh_uuid:
type: string
format: uuid
muted:
type: boolean
snoops:
type: object
properties: {}
user_uuid:
type: string
format: uuid
tenant_uuid:
type: string
format: uuid
application_uuid:
type: string
format: uuid
headers:
type: object
properties:
name:
type: string
const: application_progress_stopped
description: Name of the event (used for routing the message)
required_acl:
type: string
const: events.applications.{application_uuid}.calls.{call[id]}.progress.stopped
description: Necessary user access required to read this event
origin_uuid:
$ref: '#/components/schemas/origin_uuid'
timestamp:
$ref: '#/components/schemas/timestamp'
tenant_uuid:
$ref: '#/components/schemas/tenant_uuid'
user_uuid:{uuid}:
$ref: '#/components/schemas/user_uuid:{uuid}'
required:
- name
- required_acl
- origin_uuid
- timestamp
- tenant_uuid
- user_uuid:{uuid}
application_snoop_created:
subscribe:
summary: ''
tags:
- name: calld
message:
name: application-snoop-created-payload
payload:
type: object
properties:
snoop:
type: object
properties:
uuid:
type: string
format: uuid
snooped_call_id:
type: string
snooping_call_id:
type: string
application_uuid:
type: string
format: uuid
headers:
type: object
properties:
name:
type: string
const: application_snoop_created
description: Name of the event (used for routing the message)
required_acl:
type: string
const: events.applications.{application_uuid}.snoops.{snoop[uuid]}.created
description: Necessary user access required to read this event
origin_uuid:
$ref: '#/components/schemas/origin_uuid'
timestamp:
$ref: '#/components/schemas/timestamp'
tenant_uuid:
$ref: '#/components/schemas/tenant_uuid'
required:
- name
- required_acl
- origin_uuid
- timestamp
- tenant_uuid
application_snoop_deleted:
subscribe:
summary: ''
tags:
- name: calld
message:
name: application-snoop-deleted-payload
payload:
type: object
properties:
snoop:
type: object
properties:
uuid:
type: string
format: uuid
snooped_call_id:
type: string
snooping_call_id:
type: string
application_uuid:
type: string
format: uuid
headers:
type: object
properties:
name:
type: string
const: application_snoop_deleted
description: Name of the event (used for routing the message)
required_acl:
type: string
const: events.applications.{application_uuid}.snoops.{snoop[uuid]}.deleted
description: Necessary user access required to read this event
origin_uuid:
$ref: '#/components/schemas/origin_uuid'
timestamp:
$ref: '#/components/schemas/timestamp'
tenant_uuid:
$ref: '#/components/schemas/tenant_uuid'
required:
- name
- required_acl
- origin_uuid
- timestamp
- tenant_uuid
application_snoop_updated:
subscribe:
summary: ''
tags:
- name: calld
message:
name: application-snoop-updated-payload
payload:
type: object
properties:
snoop:
type: object
properties:
uuid:
type: string
format: uuid
snooped_call_id:
type: string
# --- truncated at 32 KB (148 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/wazo/refs/heads/main/asyncapi/wazo-calld-asyncapi.yml