Common fields
Represents the version of the event. Uses semantic versioning to inform a consumer if the payload has introduced any breaking changes.
An identifier representing this specific event. In rare cases a duplicate delivery of this event carries a different
id than the original, so deduplicate on the event type plus the payload’s session_id rather than on id. A session_id is unique to a single join, so a second participant.joined event for the same session_id is always a duplicate.Documenting when the webhook itself was sent. This timestamp is different than the time of the event the webhook describes.
Payload
The ID of the user. This is the
user_id you set on their meeting token. If the participant joined without a meeting token, this field is left out of the payload. SIP and PSTN participants get this from their dial-in or dial-out setup instead.The participant’s current name. It starts out as the
user_name from their meeting token, or the userName call property if they joined without one, and if the name is changed later with setUserName() the webhook sends the new name. null when no name is set.Any custom JSON data set for this participant, from the
userData call property at join or from setUserData() later. It does not come from the meeting token. Left out of the payload when no user data is set.Only sent for SIP and PSTN participants: one of
sip-dial-in, sip-dial-out, pstn-dial-in, pstn-dial-out, or unknown. Regular web participants do not have this field.The Unix epoch time in seconds representing when the participant will be ejected.
null when no ejection is scheduled, which is the usual case.The permissions object, that describes what the participant is permitted to do during this call.