{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/microsoft-azure-communication-services/json-schema/microsoft-azure-communication-services-teams-extension-assignment-response-schema.json",
  "title": "TeamsExtensionAssignmentResponse",
  "description": "A Teams Extension assignment response.",
  "x-generated": "2026-11-05",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/_superseded/microsoft-azure-communication-services-identity-api-openapi.yml#/components/schemas/TeamsExtensionAssignmentResponse",
  "type": "object",
  "properties": {
    "objectId": {
      "type": "string",
      "description": "The object ID of the assignment."
    },
    "tenantId": {
      "type": "string",
      "description": "The tenant ID of the assignment."
    },
    "principalType": {
      "$ref": "#/$defs/TeamsExtensionPrincipalType",
      "description": "The type of principal the assignment is for."
    },
    "clientIds": {
      "type": "array",
      "description": "The client IDs for the assignment.",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "objectId",
    "tenantId",
    "principalType"
  ],
  "$defs": {
    "TeamsExtensionPrincipalType": {
      "type": "string",
      "description": "The type of principal the assignment is for.",
      "enum": [
        "resourceAccount",
        "user"
      ],
      "x-ms-enum": {
        "name": "TeamsExtensionPrincipalType",
        "modelAsString": true,
        "values": [
          {
            "name": "resourceAccount",
            "value": "resourceAccount",
            "description": "Resource account principal type."
          },
          {
            "name": "user",
            "value": "user",
            "description": "User principal type."
          }
        ]
      }
    }
  }
}