> ## Documentation Index
> Fetch the complete documentation index at: https://docs.daily.co/llms.txt
> Use this file to discover all available pages before exploring further.

# Waiting Participant Left

> The waiting participant left webhook event

A waiting participant left event is sent when a knocking participant (see [blog post](https://www.daily.co/blog/manage-call-permissions-with-dailys-knocking-feature/)) leaves the knocking state. In other words, when a knocker begins to knock and leaves before being allowed into a room, a `waiting-participant.left` event is sent. If a knocker is allowed into a room and then leaves, a [`participant.left`](./participant-left) event is sent.

## Common fields

<ParamField body="version" type="string">
  Represents the version of the event. Uses semantic versioning to inform a consumer if the payload has introduced any breaking changes.
</ParamField>

<ParamField body="type" type="string">
  Represents the type of the event described in the payload.
</ParamField>

<ParamField body="id" type="string">
  An identifier representing this specific event.
</ParamField>

<ParamField body="payload" type="object">
  An object representing the event, whose fields are described below.
</ParamField>

<ParamField body="event_ts" type="number">
  Documenting when the webhook itself was sent. This timestamp is different than the time of the event the webhook describes.
</ParamField>

## Payload

<ParamField body="joined_at" type="number">
  The Unix epoch time in seconds representing when the waiting participant joined.
</ParamField>

<ParamField body="duration" type="number">
  The time in seconds representing how long the participant was in the call.
</ParamField>

<ParamField body="session_id" type="string">
  The user session ID, or participant id.
</ParamField>

<ParamField body="room" type="string">
  The name of the room.
</ParamField>

<ParamField body="user_id" type="string">
  The ID of the user, set by the meeting token.
</ParamField>

<ParamField body="user_name" type="string">
  The name of the user, set by the meeting token.
</ParamField>

<ParamField body="owner" type="boolean">
  A flag determining if this user is considered the owner.
</ParamField>

<ParamField body="networkQualityState" type="string">
  The quality of the user's network.
</ParamField>

<ParamField body="will_eject_at" type="integer">
  The Unix epoch time in seconds representing when the participant will be ejected.
</ParamField>

<ParamField body="permissions" type="object">
  The permissions object, that describes what the participant is permitted to do during this call.
</ParamField>

```json theme={null}
{
  "version": "1.0.0",
  "type": "waiting-participant.left",
  "id": "1-w-ptcpt-left-c85f48f3-82ec-4648-b39c-edfce7acf062",
  "payload": {
    "room": "knocking",
    "user_name": "bipol",
    "session_id": "c85f48f3-82ec-4648-b39c-edfce7acf062",
    "joined_at": 1719586614.027,
    "will_eject_at": null,
    "owner": false,
    "permissions": {
      "hasPresence": true,
      "canSend": true,
      "canReceive": { "base": true },
      "canAdmin": false
    },
    "duration": 14.403000116348267
  },
  "event_ts": 1719586628.431
}
```
