{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/twilio/main/json-schema/twilio-insights-v1-conference-conference-participant-schema.json",
  "title": "insights.v1.conference.conference_participant",
  "x-generated": "2026-10-08",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/twilio-conferences-api-openapi.yml#/components/schemas/insights.v1.conference.conference_participant",
  "type": "object",
  "properties": {
    "participant_sid": {
      "type": [
        "string",
        "null"
      ],
      "minLength": 34,
      "maxLength": 34,
      "pattern": "^CP[0-9a-fA-F]{32}$",
      "description": "SID for this participant."
    },
    "label": {
      "type": [
        "string",
        "null"
      ],
      "description": "The user-specified label of this participant.",
      "x-twilio": {
        "pii": {
          "handling": "standard",
          "deleteSla": 30
        }
      }
    },
    "conference_sid": {
      "type": [
        "string",
        "null"
      ],
      "minLength": 34,
      "maxLength": 34,
      "pattern": "^CF[0-9a-fA-F]{32}$",
      "description": "The unique SID identifier of the Conference."
    },
    "call_sid": {
      "type": [
        "string",
        "null"
      ],
      "minLength": 34,
      "maxLength": 34,
      "pattern": "^CA[0-9a-fA-F]{32}$",
      "description": "Unique SID identifier of the call that generated the Participant resource."
    },
    "account_sid": {
      "type": [
        "string",
        "null"
      ],
      "minLength": 34,
      "maxLength": 34,
      "pattern": "^AC[0-9a-fA-F]{32}$",
      "description": "The unique SID identifier of the Account."
    },
    "call_direction": {
      "type": [
        "string",
        "null"
      ],
      "$ref": "#/$defs/conference_participant_enum_call_direction",
      "description": "Call direction of the participant; inbound or outbound."
    },
    "from": {
      "type": [
        "string",
        "null"
      ],
      "description": "Caller ID of the calling party.",
      "x-twilio": {
        "pii": {
          "handling": "standard",
          "deleteSla": 30
        }
      }
    },
    "to": {
      "type": [
        "string",
        "null"
      ],
      "description": "Called party.",
      "x-twilio": {
        "pii": {
          "handling": "standard",
          "deleteSla": 30
        }
      }
    },
    "call_status": {
      "type": [
        "string",
        "null"
      ],
      "$ref": "#/$defs/conference_participant_enum_call_status",
      "description": "Call status of the call that generated the participant."
    },
    "country_code": {
      "type": [
        "string",
        "null"
      ],
      "description": "ISO alpha-2 country code of the participant based on caller ID or called number."
    },
    "is_moderator": {
      "type": [
        "boolean",
        "null"
      ],
      "description": "Boolean. Indicates whether participant had startConferenceOnEnter=true or endConferenceOnExit=true."
    },
    "join_time": {
      "type": [
        "string",
        "null"
      ],
      "format": "date-time",
      "description": "ISO 8601 timestamp of participant join event."
    },
    "leave_time": {
      "type": [
        "string",
        "null"
      ],
      "format": "date-time",
      "description": "ISO 8601 timestamp of participant leave event."
    },
    "duration_seconds": {
      "type": [
        "integer",
        "null"
      ],
      "description": "Participant durations in seconds."
    },
    "outbound_queue_length": {
      "type": [
        "integer",
        "null"
      ],
      "description": "Add Participant API only. Estimated time in queue at call creation."
    },
    "outbound_time_in_queue": {
      "type": [
        "integer",
        "null"
      ],
      "description": "Add Participant API only. Actual time in queue in seconds."
    },
    "jitter_buffer_size": {
      "type": [
        "string",
        "null"
      ],
      "$ref": "#/$defs/conference_participant_enum_jitter_buffer_size",
      "description": "The Jitter Buffer Size of this Conference Participant. One of `large`, `small`, `medium` or `off`."
    },
    "is_coach": {
      "type": [
        "boolean",
        "null"
      ],
      "description": "Boolean. Indicated whether participant was a coach."
    },
    "coached_participants": {
      "type": [
        "array",
        "null"
      ],
      "items": {
        "type": "string"
      },
      "description": "Call SIDs coached by this participant."
    },
    "participant_region": {
      "type": [
        "string",
        "null"
      ],
      "$ref": "#/$defs/conference_participant_enum_region",
      "description": "Twilio region where the participant media originates."
    },
    "conference_region": {
      "type": [
        "string",
        "null"
      ],
      "$ref": "#/$defs/conference_participant_enum_region",
      "description": "The Conference Region of this Conference Participant. One of `us1`, `us2`, `au1`, `br1`, `ie1`, `jp1`, `sg1` or `de1`."
    },
    "call_type": {
      "type": [
        "string",
        "null"
      ],
      "$ref": "#/$defs/conference_participant_enum_call_type",
      "description": "The Call Type of this Conference Participant. One of `carrier`, `client` or `sip`."
    },
    "processing_state": {
      "type": [
        "string",
        "null"
      ],
      "$ref": "#/$defs/conference_participant_enum_processing_state",
      "description": "Processing state of the Participant Summary. Will be `in_progress` while data is being aggregated, `timeout` if Twilio couldn't process the summary in 24hrs, and `complete` once aggregations and analysis has ended."
    },
    "properties": {
      "description": "Participant properties and metadata."
    },
    "events": {
      "description": "Object containing information of actions taken by participants. Contains a dictionary of URL links to nested resources of this Conference Participant."
    },
    "metrics": {
      "description": "Object. Contains participant call quality metrics."
    },
    "url": {
      "type": [
        "string",
        "null"
      ],
      "format": "uri",
      "description": "The URL of this resource."
    }
  },
  "$defs": {
    "conference_participant_enum_call_direction": {
      "type": "string",
      "enum": [
        "inbound",
        "outbound"
      ]
    },
    "conference_participant_enum_call_status": {
      "type": "string",
      "enum": [
        "answered",
        "completed",
        "busy",
        "fail",
        "noanswer",
        "ringing",
        "canceled"
      ]
    },
    "conference_participant_enum_call_type": {
      "type": "string",
      "enum": [
        "carrier",
        "client",
        "sip"
      ]
    },
    "conference_participant_enum_jitter_buffer_size": {
      "type": "string",
      "enum": [
        "large",
        "small",
        "medium",
        "off"
      ]
    },
    "conference_participant_enum_processing_state": {
      "type": "string",
      "enum": [
        "complete",
        "in_progress",
        "timeout"
      ]
    },
    "conference_participant_enum_region": {
      "type": "string",
      "enum": [
        "us1",
        "us2",
        "au1",
        "br1",
        "ie1",
        "jp1",
        "sg1",
        "de1"
      ]
    }
  }
}