{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/microsoft-graph/json-schema/microsoft-graph-microsoft-graph-call-records-participant-schema.json",
  "title": "microsoft.graph.callRecords.participant",
  "x-generated": "2026-11-04",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/microsoft-graph-communications-callrecord-api-openapi.yml#/components/schemas/microsoft.graph.callRecords.participant",
  "allOf": [
    {
      "$ref": "#/$defs/microsoft.graph.callRecords.participantBase"
    },
    {
      "title": "participant",
      "required": [
        "@odata.type"
      ],
      "type": "object",
      "properties": {
        "@odata.type": {
          "type": "string",
          "default": "#microsoft.graph.callRecords.participant"
        }
      }
    }
  ],
  "x-ms-discriminator-value": "#microsoft.graph.callRecords.participant",
  "$defs": {
    "microsoft.graph.callRecords.administrativeUnitInfo": {
      "title": "administrativeUnitInfo",
      "required": [
        "@odata.type"
      ],
      "type": "object",
      "properties": {
        "id": {
          "type": [
            "string",
            "null"
          ],
          "description": "Unique identifier for the administrative unit."
        },
        "@odata.type": {
          "type": "string"
        }
      }
    },
    "microsoft.graph.callRecords.participantBase": {
      "allOf": [
        {
          "$ref": "#/$defs/microsoft.graph.entity"
        },
        {
          "title": "participantBase",
          "required": [
            "@odata.type"
          ],
          "type": "object",
          "properties": {
            "administrativeUnitInfos": {
              "type": "array",
              "items": {
                "$ref": "#/$defs/microsoft.graph.callRecords.administrativeUnitInfo"
              },
              "description": "List of administrativeUnitInfo objects for the call participant."
            },
            "identity": {
              "anyOf": [
                {
                  "$ref": "#/$defs/microsoft.graph.communicationsIdentitySet"
                },
                {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              ],
              "description": "The identity of the call participant."
            },
            "@odata.type": {
              "type": "string"
            }
          }
        }
      ]
    },
    "microsoft.graph.communicationsIdentitySet": {
      "allOf": [
        {
          "$ref": "#/$defs/microsoft.graph.identitySet"
        },
        {
          "title": "communicationsIdentitySet",
          "required": [
            "@odata.type"
          ],
          "type": "object",
          "properties": {
            "applicationInstance": {
              "anyOf": [
                {
                  "$ref": "#/$defs/microsoft.graph.identity"
                },
                {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              ],
              "description": "The application instance associated with this action."
            },
            "assertedIdentity": {
              "anyOf": [
                {
                  "$ref": "#/$defs/microsoft.graph.identity"
                },
                {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              ],
              "description": "An identity the participant would like to present itself as to the other participants in the call."
            },
            "azureCommunicationServicesUser": {
              "anyOf": [
                {
                  "$ref": "#/$defs/microsoft.graph.identity"
                },
                {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              ],
              "description": "The Azure Communication Services user associated with this action."
            },
            "encrypted": {
              "anyOf": [
                {
                  "$ref": "#/$defs/microsoft.graph.identity"
                },
                {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              ],
              "description": "The encrypted user associated with this action."
            },
            "endpointType": {
              "anyOf": [
                {
                  "$ref": "#/$defs/microsoft.graph.endpointType"
                },
                {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              ],
              "description": "Type of endpoint that the participant uses. The possible values are: default, voicemail, skypeForBusiness, skypeForBusinessVoipPhone, unknownFutureValue."
            },
            "guest": {
              "anyOf": [
                {
                  "$ref": "#/$defs/microsoft.graph.identity"
                },
                {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              ],
              "description": "The guest user associated with this action."
            },
            "onPremises": {
              "anyOf": [
                {
                  "$ref": "#/$defs/microsoft.graph.identity"
                },
                {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              ],
              "description": "The Skype for Business on-premises user associated with this action."
            },
            "phone": {
              "anyOf": [
                {
                  "$ref": "#/$defs/microsoft.graph.identity"
                },
                {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              ],
              "description": "The phone user associated with this action."
            },
            "@odata.type": {
              "type": "string",
              "default": "#microsoft.graph.communicationsIdentitySet"
            }
          }
        }
      ],
      "x-ms-discriminator-value": "#microsoft.graph.communicationsIdentitySet"
    },
    "microsoft.graph.endpointType": {
      "title": "endpointType",
      "enum": [
        "default",
        "voicemail",
        "skypeForBusiness",
        "skypeForBusinessVoipPhone",
        "unknownFutureValue"
      ],
      "type": "string"
    },
    "microsoft.graph.entity": {
      "title": "entity",
      "required": [
        "@odata.type"
      ],
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "description": "The unique identifier for an entity. Read-only."
        },
        "@odata.type": {
          "type": "string"
        }
      }
    },
    "microsoft.graph.identity": {
      "title": "identity",
      "required": [
        "@odata.type"
      ],
      "type": "object",
      "properties": {
        "displayName": {
          "type": [
            "string",
            "null"
          ],
          "description": "The display name of the identity.For drive items, the display name might not always be available or up to date. For example, if a user changes their display name the API might show the new value in a future response, but the items associated with the user don't show up as changed when using delta."
        },
        "id": {
          "type": [
            "string",
            "null"
          ],
          "description": "Unique identifier for the identity or actor. For example, in the access reviews decisions API, this property might record the id of the principal, that is, the group, user, or application that's subject to review."
        },
        "@odata.type": {
          "type": "string"
        }
      }
    },
    "microsoft.graph.identitySet": {
      "title": "identitySet",
      "required": [
        "@odata.type"
      ],
      "type": "object",
      "properties": {
        "application": {
          "anyOf": [
            {
              "$ref": "#/$defs/microsoft.graph.identity"
            },
            {
              "type": [
                "object",
                "null"
              ]
            }
          ],
          "description": "Optional. The application associated with this action."
        },
        "device": {
          "anyOf": [
            {
              "$ref": "#/$defs/microsoft.graph.identity"
            },
            {
              "type": [
                "object",
                "null"
              ]
            }
          ],
          "description": "Optional. The device associated with this action."
        },
        "user": {
          "anyOf": [
            {
              "$ref": "#/$defs/microsoft.graph.identity"
            },
            {
              "type": [
                "object",
                "null"
              ]
            }
          ],
          "description": "Optional. The user associated with this action."
        },
        "@odata.type": {
          "type": "string"
        }
      }
    }
  }
}