"""Response schemas for organizations endpoints.

This module is automatically @generated from the Meraki API specification.
Do not edit this file manually.
"""

from __future__ import annotations

from datetime import datetime
from typing import Any

from pydantic import Field, RootModel

from meraki_client.schemas._base import _BaseSchema


class AssignOrganizationLicensesSeatsResponse(_BaseSchema):
    """Response for assignOrganizationLicensesSeats operation."""

    resulting_licenses: list[AssignOrganizationLicensesSeatsResponseResultingLicensesItem] = Field(
        default_factory=list,
        validation_alias="resultingLicenses",
        serialization_alias="resultingLicenses",
    )


class AssignOrganizationLicensesSeatsResponseResultingLicensesItem(_BaseSchema):
    """Schema for AssignOrganizationLicensesSeatsResponseResultingLicensesItem."""

    id: str | None = None
    license_type: str | None = Field(
        default=None, validation_alias="licenseType", serialization_alias="licenseType"
    )
    license_key: str | None = Field(
        default=None, validation_alias="licenseKey", serialization_alias="licenseKey"
    )
    order_number: str | None = Field(
        default=None, validation_alias="orderNumber", serialization_alias="orderNumber"
    )
    device_serial: str | None = Field(
        default=None, validation_alias="deviceSerial", serialization_alias="deviceSerial"
    )
    network_id: str | None = Field(
        default=None, validation_alias="networkId", serialization_alias="networkId"
    )
    state: str | None = None
    seat_count: int | None = Field(
        default=None, validation_alias="seatCount", serialization_alias="seatCount"
    )
    total_duration_in_days: int | None = Field(
        default=None,
        validation_alias="totalDurationInDays",
        serialization_alias="totalDurationInDays",
    )
    duration_in_days: int | None = Field(
        default=None, validation_alias="durationInDays", serialization_alias="durationInDays"
    )
    permanently_queued_licenses: list[OrganizationsPermanentlyQueuedLicensesItem] = Field(
        default_factory=list,
        validation_alias="permanentlyQueuedLicenses",
        serialization_alias="permanentlyQueuedLicenses",
    )
    claim_date: str | None = Field(
        default=None, validation_alias="claimDate", serialization_alias="claimDate"
    )
    activation_date: str | None = Field(
        default=None, validation_alias="activationDate", serialization_alias="activationDate"
    )
    expiration_date: str | None = Field(
        default=None, validation_alias="expirationDate", serialization_alias="expirationDate"
    )
    head_license_id: str | None = Field(
        default=None, validation_alias="headLicenseId", serialization_alias="headLicenseId"
    )


class BulkOrganizationDevicesPacketCaptureCapturesCreateAdvanced(_BaseSchema):
    """Advanced capture options (optional)."""

    physical_interface_direction: str | None = Field(
        default=None,
        validation_alias="physicalInterfaceDirection",
        serialization_alias="physicalInterfaceDirection",
    )
    control_plane_direction: str | None = Field(
        default=None,
        validation_alias="controlPlaneDirection",
        serialization_alias="controlPlaneDirection",
    )
    inner_filter_mac: list[str] = Field(
        default_factory=list,
        validation_alias="innerFilterMac",
        serialization_alias="innerFilterMac",
    )
    buffer_files: int | None = Field(
        default=None, validation_alias="bufferFiles", serialization_alias="bufferFiles"
    )
    max_filesize: int | None = Field(
        default=None, validation_alias="maxFilesize", serialization_alias="maxFilesize"
    )
    capture_type: str | None = Field(
        default=None, validation_alias="captureType", serialization_alias="captureType"
    )


class BulkOrganizationDevicesPacketCaptureCapturesCreateDevicesItem(_BaseSchema):
    """Item schema for devices."""

    serial: str | None = None
    switchports: str | None = None
    interface: str | None = None


class BulkOrganizationDevicesPacketCaptureCapturesCreateResponse(_BaseSchema):
    """Response for bulkOrganizationDevicesPacketCaptureCapturesCreate operation."""

    items: list[BulkOrganizationDevicesPacketCaptureCapturesCreateResponseItemsItem] = Field(
        default_factory=list
    )


class BulkOrganizationDevicesPacketCaptureCapturesCreateResponseItemsItem(_BaseSchema):
    """Schema for BulkOrganizationDevicesPacketCaptureCapturesCreateResponseItemsItem."""

    capture_id: str | None = Field(
        default=None, validation_alias="captureId", serialization_alias="captureId"
    )
    network: OrganizationsPolicyObjectsItem | None = None
    devices: list[dict[str, Any]] = Field(default_factory=list)
    device: OrganizationsDevice2 | None = None
    admin: OrganizationsPolicyObjectsItem | None = None
    client: OrganizationsClient3 | None = None
    details: list[OrganizationsDetailsItem2] = Field(default_factory=list)
    name: str | None = None
    start_ts: str | None = Field(
        default=None, validation_alias="startTs", serialization_alias="startTs"
    )
    ports: str | None = None
    status: str | None = None
    error_message: str | None = Field(
        default=None, validation_alias="errorMessage", serialization_alias="errorMessage"
    )
    destination: str | None = None
    process: str | None = None
    file: OrganizationsFile | None = None
    duration: int | None = None
    filter_expression: str | None = Field(
        default=None, validation_alias="filterExpression", serialization_alias="filterExpression"
    )
    counts: OrganizationsCounts | None = None
    interface: str | None = None


class BulkUpdateOrganizationDevicesDetailsDetailsItem(_BaseSchema):
    """Item schema for details."""

    name: str
    value: str | None = None


class BulkUpdateOrganizationDevicesDetailsResponse(_BaseSchema):
    """Response for bulkUpdateOrganizationDevicesDetails operation."""

    serials: list[str]


class ClaimIntoOrganizationInventoryLicensesItem(_BaseSchema):
    """Item schema for licenses."""

    key: str
    mode: str | None = None


class ClaimIntoOrganizationInventoryResponse(_BaseSchema):
    """Response for claimIntoOrganizationInventory operation."""

    orders: list[str] = Field(default_factory=list)
    serials: list[str] = Field(default_factory=list)
    licenses: list[ClaimIntoOrganizationResponseLicensesItem] = Field(default_factory=list)


class ClaimIntoOrganizationLicensesItem(_BaseSchema):
    """Item schema for licenses."""

    key: str
    mode: str | None = None


class ClaimIntoOrganizationResponse(_BaseSchema):
    """Response for claimIntoOrganization operation."""

    orders: list[str] = Field(default_factory=list)
    serials: list[str] = Field(default_factory=list)
    licenses: list[ClaimIntoOrganizationResponseLicensesItem] = Field(default_factory=list)


class ClaimIntoOrganizationResponseLicensesItem(_BaseSchema):
    """Schema for ClaimIntoOrganizationResponseLicensesItem."""

    key: str | None = None
    mode: str | None = None


class ClaimOrganizationInventoryOrdersResponse(_BaseSchema):
    """Response for claimOrganizationInventoryOrders operation."""

    claim_id: str | None = Field(
        default=None, validation_alias="claimId", serialization_alias="claimId"
    )
    number: str | None = None
    serials: list[str] = Field(default_factory=list)
    subscriptions: list[ClaimOrganizationInventoryOrdersResponseSubscriptionsItem] = Field(
        default_factory=list
    )


class ClaimOrganizationInventoryOrdersResponseSubscriptionsItem(_BaseSchema):
    """Schema for ClaimOrganizationInventoryOrdersResponseSubscriptionsItem."""

    subscription_id: str | None = Field(
        default=None, validation_alias="subscriptionId", serialization_alias="subscriptionId"
    )
    name: str | None = None
    description: str | None = None
    start_date: datetime | None = Field(
        default=None, validation_alias="startDate", serialization_alias="startDate"
    )
    end_date: datetime | None = Field(
        default=None, validation_alias="endDate", serialization_alias="endDate"
    )
    is_claimed: bool | None = Field(
        default=None, validation_alias="isClaimed", serialization_alias="isClaimed"
    )
    counts: OrganizationsSubscriptionsCounts | None = None


class ClaimOrganizationInventoryOrdersSubscriptionsItem(_BaseSchema):
    """Item schema for subscriptions."""

    subscription_id: str = Field(
        validation_alias="subscriptionId", serialization_alias="subscriptionId"
    )
    name: str | None = None
    description: str | None = None


class CloneOrganizationResponse(_BaseSchema):
    """Response for cloneOrganization operation."""

    id: str | None = None
    name: str | None = None
    url: str | None = None
    api: OrganizationsApi | None = None
    licensing: OrganizationsLicensing | None = None
    cloud: OrganizationsCloud | None = None
    management: OrganizationsManagement | None = None


class CombineOrganizationNetworksResponse(_BaseSchema):
    """Response for combineOrganizationNetworks operation."""

    resulting_network: OrganizationsRecordsNetwork | None = Field(
        default=None, validation_alias="resultingNetwork", serialization_alias="resultingNetwork"
    )


class CreateNetworkMoveNetwork(_BaseSchema):
    """Network to be moved."""

    id: str | None = None


class CreateNetworkMoveOrganizations(_BaseSchema):
    """Organizations involved in the network move."""

    target: CreateNetworkMoveOrganizationsTarget | None = None


class CreateNetworkMoveOrganizationsTarget(_BaseSchema):
    """The organization to which the network is moving."""

    id: str


class CreateNetworkMoveResponse(_BaseSchema):
    """Response for createNetworkMove operation."""

    move_id: str | None = Field(
        default=None, validation_alias="moveId", serialization_alias="moveId"
    )
    initiator: OrganizationsInitiator | None = None
    organizations: OrganizationsOrganizations | None = None
    network: CreateOrganizationActionBatchCallbackHttpServer | None = None
    created_at: datetime | None = Field(
        default=None, validation_alias="createdAt", serialization_alias="createdAt"
    )
    last_updated_at: datetime | None = Field(
        default=None, validation_alias="lastUpdatedAt", serialization_alias="lastUpdatedAt"
    )
    result: OrganizationsResult | None = None


class CreateOrganizationActionBatchActionsItem(_BaseSchema):
    """Item schema for actions."""

    resource: str
    operation: str
    body: dict[str, Any] | None = None


class CreateOrganizationActionBatchCallback(_BaseSchema):
    """Details for the callback. Please include either an httpServerId OR url and sharedSecret."""

    url: str | None = None
    shared_secret: str | None = Field(
        default=None, validation_alias="sharedSecret", serialization_alias="sharedSecret"
    )
    http_server: CreateOrganizationActionBatchCallbackHttpServer | None = Field(
        default=None, validation_alias="httpServer", serialization_alias="httpServer"
    )
    payload_template: CreateOrganizationActionBatchCallbackHttpServer | None = Field(
        default=None, validation_alias="payloadTemplate", serialization_alias="payloadTemplate"
    )


class CreateOrganizationActionBatchCallbackHttpServer(_BaseSchema):
    """The webhook receiver used for the callback webhook."""

    id: str | None = None


class CreateOrganizationActionBatchResponse(_BaseSchema):
    """Response for createOrganizationActionBatch operation."""

    id: str | None = None
    organization_id: str | None = Field(
        default=None, validation_alias="organizationId", serialization_alias="organizationId"
    )
    confirmed: bool | None = None
    synchronous: bool | None = None
    status: OrganizationsStatus | None = None
    actions: list[OrganizationsActionsItem]
    callback: CreateOrganizationActionBatchResponseCallback | None = None


class CreateOrganizationActionBatchResponseCallback(_BaseSchema):
    """Information for callback used to send back results."""

    id: str | None = None
    url: str | None = None
    status: str | None = None


class CreateOrganizationAdaptivePolicyAclResponse(_BaseSchema):
    """Response for createOrganizationAdaptivePolicyAcl operation."""

    acl_id: str | None = Field(default=None, validation_alias="aclId", serialization_alias="aclId")
    name: str | None = None
    description: str | None = None
    ip_version: str | None = Field(
        default=None, validation_alias="ipVersion", serialization_alias="ipVersion"
    )
    rules: list[OrganizationsRulesItem] = Field(default_factory=list)
    created_at: datetime | None = Field(
        default=None, validation_alias="createdAt", serialization_alias="createdAt"
    )
    updated_at: datetime | None = Field(
        default=None, validation_alias="updatedAt", serialization_alias="updatedAt"
    )


class CreateOrganizationAdaptivePolicyAclRulesItem(_BaseSchema):
    """Item schema for rules."""

    policy: str
    protocol: str
    src_port: str | None = Field(
        default=None, validation_alias="srcPort", serialization_alias="srcPort"
    )
    dst_port: str | None = Field(
        default=None, validation_alias="dstPort", serialization_alias="dstPort"
    )
    log: bool | None = None
    tcp_established: bool | None = Field(
        default=None, validation_alias="tcpEstablished", serialization_alias="tcpEstablished"
    )


class CreateOrganizationAdaptivePolicyGroupPolicyObjectsItem(_BaseSchema):
    """Item schema for policyObjects."""

    id: str | None = None
    name: str | None = None


class CreateOrganizationAdaptivePolicyGroupResponse(_BaseSchema):
    """Response for createOrganizationAdaptivePolicyGroup operation."""

    group_id: str | None = Field(
        default=None, validation_alias="groupId", serialization_alias="groupId"
    )
    name: str | None = None
    sgt: int | None = None
    description: str | None = None
    policy_objects: list[OrganizationsPolicyObjectsItem] = Field(
        default_factory=list, validation_alias="policyObjects", serialization_alias="policyObjects"
    )
    is_default_group: bool | None = Field(
        default=None, validation_alias="isDefaultGroup", serialization_alias="isDefaultGroup"
    )
    required_ip_mappings: list[str] = Field(
        default_factory=list,
        validation_alias="requiredIpMappings",
        serialization_alias="requiredIpMappings",
    )
    created_at: str | None = Field(
        default=None, validation_alias="createdAt", serialization_alias="createdAt"
    )
    updated_at: str | None = Field(
        default=None, validation_alias="updatedAt", serialization_alias="updatedAt"
    )


class CreateOrganizationAdaptivePolicyPolicyAclsItem(_BaseSchema):
    """Item schema for acls."""

    id: str | None = None
    name: str | None = None


class CreateOrganizationAdaptivePolicyPolicyDestinationGroup(_BaseSchema):
    """The destination adaptive policy group (requires one unique attribute)."""

    id: str | None = None
    name: str | None = None
    sgt: int | None = None


class CreateOrganizationAdaptivePolicyPolicyResponse(_BaseSchema):
    """Response for createOrganizationAdaptivePolicyPolicy operation."""

    adaptive_policy_id: str | None = Field(
        default=None, validation_alias="adaptivePolicyId", serialization_alias="adaptivePolicyId"
    )
    source_group: OrganizationsSourceGroup | None = Field(
        default=None, validation_alias="sourceGroup", serialization_alias="sourceGroup"
    )
    destination_group: OrganizationsSourceGroup | None = Field(
        default=None, validation_alias="destinationGroup", serialization_alias="destinationGroup"
    )
    acls: list[OrganizationsPolicyObjectsItem] = Field(default_factory=list)
    last_entry_rule: str | None = Field(
        default=None, validation_alias="lastEntryRule", serialization_alias="lastEntryRule"
    )
    created_at: str | None = Field(
        default=None, validation_alias="createdAt", serialization_alias="createdAt"
    )
    updated_at: str | None = Field(
        default=None, validation_alias="updatedAt", serialization_alias="updatedAt"
    )


class CreateOrganizationAdaptivePolicyPolicySourceGroup(_BaseSchema):
    """The source adaptive policy group (requires one unique attribute)."""

    id: str | None = None
    name: str | None = None
    sgt: int | None = None


class CreateOrganizationAdminNetworksItem(_BaseSchema):
    """Item schema for networks."""

    id: str
    access: str


class CreateOrganizationAdminResponse(_BaseSchema):
    """Response for createOrganizationAdmin operation."""

    id: str | None = None
    name: str | None = None
    email: str | None = None
    org_access: str | None = Field(
        default=None, validation_alias="orgAccess", serialization_alias="orgAccess"
    )
    account_status: str | None = Field(
        default=None, validation_alias="accountStatus", serialization_alias="accountStatus"
    )
    two_factor_auth_enabled: bool | None = Field(
        default=None,
        validation_alias="twoFactorAuthEnabled",
        serialization_alias="twoFactorAuthEnabled",
    )
    has_api_key: bool | None = Field(
        default=None, validation_alias="hasApiKey", serialization_alias="hasApiKey"
    )
    last_active: datetime | None = Field(
        default=None, validation_alias="lastActive", serialization_alias="lastActive"
    )
    tags: list[OrganizationsTagsItem] = Field(default_factory=list)
    networks: list[OrganizationsNetworksItem] = Field(default_factory=list)
    authentication_method: str | None = Field(
        default=None,
        validation_alias="authenticationMethod",
        serialization_alias="authenticationMethod",
    )


class CreateOrganizationAdminTagsItem(_BaseSchema):
    """Item schema for tags."""

    tag: str
    access: str


class CreateOrganizationAlertsProfileAlertCondition(_BaseSchema):
    """The conditions that determine if the alert triggers."""

    duration: int | None = None
    window: int | None = None
    bit_rate_bps: int | None = None
    loss_ratio: float | None = None
    latency_ms: int | None = None
    jitter_ms: int | None = None
    mos: float | None = None
    interface: str | None = None


class CreateOrganizationAlertsProfileRecipients(_BaseSchema):
    """List of recipients that will recieve the alert."""

    emails: list[str] = Field(default_factory=list)
    http_server_ids: list[str] = Field(
        default_factory=list, validation_alias="httpServerIds", serialization_alias="httpServerIds"
    )


class CreateOrganizationAlertsProfileResponse(_BaseSchema):
    """Response for createOrganizationAlertsProfile operation."""

    id: str | None = None
    type_: str | None = Field(default=None, validation_alias="type", serialization_alias="type")
    enabled: bool | None = None
    alert_condition: OrganizationsAlertCondition | None = Field(
        default=None, validation_alias="alertCondition", serialization_alias="alertCondition"
    )
    recipients: OrganizationsRecipients | None = None
    network_tags: list[str] = Field(
        default_factory=list, validation_alias="networkTags", serialization_alias="networkTags"
    )
    description: str | None = None


class CreateOrganizationBrandingPolicyAdminSettings(_BaseSchema):
    """Settings for describing which kinds of admins this policy applies to."""

    applies_to: str | None = Field(
        default=None, validation_alias="appliesTo", serialization_alias="appliesTo"
    )
    values: list[str] = Field(default_factory=list)


class CreateOrganizationBrandingPolicyCustomLogo(_BaseSchema):
    """Properties describing the custom logo attached to the branding policy."""

    enabled: bool | None = None
    image: CreateOrganizationBrandingPolicyCustomLogoImage | None = None


class CreateOrganizationBrandingPolicyCustomLogoImage(_BaseSchema):
    """Properties for setting the image."""

    contents: str | None = None
    format_: str | None = Field(
        default=None, validation_alias="format", serialization_alias="format"
    )


class CreateOrganizationBrandingPolicyHelpSettings(_BaseSchema):
    """Settings for describing the modifications to various Help page features. Each property in
    this object accepts one of 'default or inherit' (do not modify functionality), 'hide'
    (remove the section from Dashboard), or 'show' (always show the section on Dashboard). Some
    properties in this object also accept custom HTML used to replace the section on Dashboard;
    see the documentation for each property to see the allowed values. Each property defaults to
    'default or inherit' when not provided.
    """

    help_tab: str | None = Field(
        default=None, validation_alias="helpTab", serialization_alias="helpTab"
    )
    get_help_subtab: str | None = Field(
        default=None, validation_alias="getHelpSubtab", serialization_alias="getHelpSubtab"
    )
    community_subtab: str | None = Field(
        default=None, validation_alias="communitySubtab", serialization_alias="communitySubtab"
    )
    cases_subtab: str | None = Field(
        default=None, validation_alias="casesSubtab", serialization_alias="casesSubtab"
    )
    data_protection_requests_subtab: str | None = Field(
        default=None,
        validation_alias="dataProtectionRequestsSubtab",
        serialization_alias="dataProtectionRequestsSubtab",
    )
    get_help_subtab_knowledge_base_search: str | None = Field(
        default=None,
        validation_alias="getHelpSubtabKnowledgeBaseSearch",
        serialization_alias="getHelpSubtabKnowledgeBaseSearch",
    )
    universal_search_knowledge_base_search: str | None = Field(
        default=None,
        validation_alias="universalSearchKnowledgeBaseSearch",
        serialization_alias="universalSearchKnowledgeBaseSearch",
    )
    cisco_meraki_product_documentation: str | None = Field(
        default=None,
        validation_alias="ciscoMerakiProductDocumentation",
        serialization_alias="ciscoMerakiProductDocumentation",
    )
    support_contact_info: str | None = Field(
        default=None,
        validation_alias="supportContactInfo",
        serialization_alias="supportContactInfo",
    )
    new_features_subtab: str | None = Field(
        default=None, validation_alias="newFeaturesSubtab", serialization_alias="newFeaturesSubtab"
    )
    firewall_info_subtab: str | None = Field(
        default=None,
        validation_alias="firewallInfoSubtab",
        serialization_alias="firewallInfoSubtab",
    )
    api_docs_subtab: str | None = Field(
        default=None, validation_alias="apiDocsSubtab", serialization_alias="apiDocsSubtab"
    )
    hardware_replacements_subtab: str | None = Field(
        default=None,
        validation_alias="hardwareReplacementsSubtab",
        serialization_alias="hardwareReplacementsSubtab",
    )
    sm_forums: str | None = Field(
        default=None, validation_alias="smForums", serialization_alias="smForums"
    )
    help_widget: str | None = Field(
        default=None, validation_alias="helpWidget", serialization_alias="helpWidget"
    )


class CreateOrganizationBrandingPolicyResponse(_BaseSchema):
    """Response for createOrganizationBrandingPolicy operation."""

    name: str | None = None
    enabled: bool | None = None
    admin_settings: OrganizationsAdminSettings | None = Field(
        default=None, validation_alias="adminSettings", serialization_alias="adminSettings"
    )
    help_settings: OrganizationsHelpSettings | None = Field(
        default=None, validation_alias="helpSettings", serialization_alias="helpSettings"
    )
    custom_logo: OrganizationsCustomLogo | None = Field(
        default=None, validation_alias="customLogo", serialization_alias="customLogo"
    )


class CreateOrganizationConfigTemplateResponse(_BaseSchema):
    """Response for createOrganizationConfigTemplate operation."""

    id: str | None = None
    name: str | None = None
    product_types: list[str] = Field(
        default_factory=list, validation_alias="productTypes", serialization_alias="productTypes"
    )
    time_zone: str | None = Field(
        default=None, validation_alias="timeZone", serialization_alias="timeZone"
    )


class CreateOrganizationDevicesControllerMigrationResponse(
    RootModel[list["CreateOrganizationDevicesControllerMigrationResponseItem"]]
):
    """Response for createOrganizationDevicesControllerMigration operation."""


class CreateOrganizationDevicesControllerMigrationResponseItem(_BaseSchema):
    """Schema for CreateOrganizationDevicesControllerMigrationResponseItem."""

    serial: str | None = None
    target: str | None = None
    created_at: datetime | None = Field(
        default=None, validation_alias="createdAt", serialization_alias="createdAt"
    )
    migrated_at: datetime | None = Field(
        default=None, validation_alias="migratedAt", serialization_alias="migratedAt"
    )


class CreateOrganizationDevicesPacketCaptureCaptureAdvanced(_BaseSchema):
    """Advanced filters for IOSXE devices (supported for Campus Gateway devices only)."""

    physical_interface_direction: str | None = Field(
        default=None,
        validation_alias="physicalInterfaceDirection",
        serialization_alias="physicalInterfaceDirection",
    )
    control_plane_direction: str | None = Field(
        default=None,
        validation_alias="controlPlaneDirection",
        serialization_alias="controlPlaneDirection",
    )
    inner_filter_macs: list[str] = Field(
        default_factory=list,
        validation_alias="innerFilterMacs",
        serialization_alias="innerFilterMacs",
    )
    buffer_files: int | None = Field(
        default=None, validation_alias="bufferFiles", serialization_alias="bufferFiles"
    )
    max_filesize: int | None = Field(
        default=None, validation_alias="maxFilesize", serialization_alias="maxFilesize"
    )
    capture_type: str | None = Field(
        default=None, validation_alias="captureType", serialization_alias="captureType"
    )
    packets_per_second: int | None = Field(
        default=None, validation_alias="packetsPerSecond", serialization_alias="packetsPerSecond"
    )


class CreateOrganizationDevicesPacketCaptureCaptureResponse(_BaseSchema):
    """Response for createOrganizationDevicesPacketCaptureCapture operation."""

    capture_id: str | None = Field(
        default=None, validation_alias="captureId", serialization_alias="captureId"
    )
    network: OrganizationsPolicyObjectsItem | None = None
    devices: list[dict[str, Any]] = Field(default_factory=list)
    device: OrganizationsDevice2 | None = None
    admin: OrganizationsPolicyObjectsItem | None = None
    client: OrganizationsClient3 | None = None
    details: list[OrganizationsDetailsItem2] = Field(default_factory=list)
    name: str | None = None
    start_ts: str | None = Field(
        default=None, validation_alias="startTs", serialization_alias="startTs"
    )
    ports: str | None = None
    status: str | None = None
    error_message: str | None = Field(
        default=None, validation_alias="errorMessage", serialization_alias="errorMessage"
    )
    destination: str | None = None
    process: str | None = None
    file: OrganizationsFile | None = None
    duration: int | None = None
    filter_expression: str | None = Field(
        default=None, validation_alias="filterExpression", serialization_alias="filterExpression"
    )
    counts: OrganizationsCounts | None = None
    interface: str | None = None


class CreateOrganizationDevicesPacketCaptureScheduleDevicesItem(_BaseSchema):
    """Item schema for devices."""

    serial: str | None = None
    switchports: str | None = None
    interface: str | None = None


class CreateOrganizationDevicesPacketCaptureScheduleResponse(_BaseSchema):
    """Response for createOrganizationDevicesPacketCaptureSchedule operation."""

    schedule_id: str | None = Field(
        default=None, validation_alias="scheduleId", serialization_alias="scheduleId"
    )
    devices: list[OrganizationsDevicesItem2] = Field(default_factory=list)
    name: str | None = None
    admin: OrganizationsPolicyObjectsItem | None = None
    notes: str | None = None
    duration: int | None = None
    filter_expression: str | None = Field(
        default=None, validation_alias="filterExpression", serialization_alias="filterExpression"
    )
    created_at: str | None = Field(
        default=None, validation_alias="createdAt", serialization_alias="createdAt"
    )
    updated_at: str | None = Field(
        default=None, validation_alias="updatedAt", serialization_alias="updatedAt"
    )
    capture_count: int | None = Field(
        default=None, validation_alias="captureCount", serialization_alias="captureCount"
    )
    last_capture_id: str | None = Field(
        default=None, validation_alias="lastCaptureId", serialization_alias="lastCaptureId"
    )
    enabled: bool | None = None
    priority: int | None = None
    schedule: OrganizationsSchedule | None = None
    warnings: list[str] = Field(default_factory=list)


class CreateOrganizationDevicesPacketCaptureScheduleSchedule(_BaseSchema):
    """Schedule details."""

    name: str | None = None
    start_ts: str | None = Field(
        default=None, validation_alias="startTs", serialization_alias="startTs"
    )
    end_ts: str | None = Field(default=None, validation_alias="endTs", serialization_alias="endTs")
    frequency: str | None = None
    weekdays: list[str] = Field(default_factory=list)
    recurrence: int | None = None


class CreateOrganizationEarlyAccessFeaturesOptInResponse(_BaseSchema):
    """Response for createOrganizationEarlyAccessFeaturesOptIn operation."""

    id: str | None = None
    short_name: str | None = Field(
        default=None, validation_alias="shortName", serialization_alias="shortName"
    )
    limit_scope_to_networks: list[OrganizationsPolicyObjectsItem] = Field(
        default_factory=list,
        validation_alias="limitScopeToNetworks",
        serialization_alias="limitScopeToNetworks",
    )
    opt_out_eligibility: (
        GetOrganizationEarlyAccessFeaturesOptInsResponseOptOutEligibility | None
    ) = Field(
        default=None, validation_alias="optOutEligibility", serialization_alias="optOutEligibility"
    )
    created_at: datetime | None = Field(
        default=None, validation_alias="createdAt", serialization_alias="createdAt"
    )


class CreateOrganizationInventoryDevicesSwapsBulkResponse(_BaseSchema):
    """Response for createOrganizationInventoryDevicesSwapsBulk operation."""

    job_id: str | None = Field(default=None, validation_alias="jobId", serialization_alias="jobId")
    swaps: list[CreateOrganizationInventoryDevicesSwapsBulkResponseSwapsItem] = Field(
        default_factory=list
    )


class CreateOrganizationInventoryDevicesSwapsBulkResponseSwapsItem(_BaseSchema):
    """Schema for CreateOrganizationInventoryDevicesSwapsBulkResponseSwapsItem."""

    id: str
    devices: OrganizationsSwapsDevices
    status: str
    after_action: str = Field(validation_alias="afterAction", serialization_alias="afterAction")
    created_at: str = Field(validation_alias="createdAt", serialization_alias="createdAt")
    completed_at: str | None = Field(
        default=None, validation_alias="completedAt", serialization_alias="completedAt"
    )
    errors: list[str] = Field(default_factory=list)


class CreateOrganizationInventoryDevicesSwapsBulkSwapsItem(_BaseSchema):
    """Item schema for swaps."""

    devices: CreateOrganizationInventoryDevicesSwapsBulkSwapsItemDevices
    after_action: str = Field(validation_alias="afterAction", serialization_alias="afterAction")


class CreateOrganizationInventoryDevicesSwapsBulkSwapsItemDevices(_BaseSchema):
    """The devices involved in the swap."""

    old: str
    new: str


class CreateOrganizationInventoryOnboardingCloudMonitoringImportDevicesItem(_BaseSchema):
    """Item schema for devices."""

    device_id: str = Field(validation_alias="deviceId", serialization_alias="deviceId")
    udi: str
    network_id: str = Field(validation_alias="networkId", serialization_alias="networkId")


class CreateOrganizationInventoryOnboardingCloudMonitoringImportResponse(
    RootModel[list["CreateOrganizationInventoryOnboardingCloudMonitoringImportResponseItem"]]
):
    """Response for createOrganizationInventoryOnboardingCloudMonitoringImport operation."""


class CreateOrganizationInventoryOnboardingCloudMonitoringImportResponseItem(_BaseSchema):
    """Schema for CreateOrganizationInventoryOnboardingCloudMonitoringImportResponseItem."""

    status: str | None = None
    import_id: str | None = Field(
        default=None, validation_alias="importId", serialization_alias="importId"
    )
    message: str | None = None


class CreateOrganizationInventoryOnboardingCloudMonitoringPrepareDevicesItem(_BaseSchema):
    """Item schema for devices."""

    sudi: str
    tunnel: CreateOrganizationInventoryOnboardingCloudMonitoringPrepareDevicesItemTunnel | None = (
        None
    )
    user: CreateOrganizationInventoryOnboardingCloudMonitoringPrepareDevicesItemUser | None = None
    vty: CreateOrganizationInventoryOnboardingCloudMonitoringPrepareDevicesItemVty | None = None


class CreateOrganizationInventoryOnboardingCloudMonitoringPrepareDevicesItemTunnel(_BaseSchema):
    """TLS Related Parameters."""

    certificate_name: str | None = Field(
        default=None, validation_alias="certificateName", serialization_alias="certificateName"
    )
    name: str | None = None
    loopback_number: int | None = Field(
        default=None, validation_alias="loopbackNumber", serialization_alias="loopbackNumber"
    )
    local_interface: int | None = Field(
        default=None, validation_alias="localInterface", serialization_alias="localInterface"
    )


class CreateOrganizationInventoryOnboardingCloudMonitoringPrepareDevicesItemUser(_BaseSchema):
    """User parameters."""

    username: str | None = None


class CreateOrganizationInventoryOnboardingCloudMonitoringPrepareDevicesItemVty(_BaseSchema):
    """VTY Related Parameters."""

    start_line_number: int | None = Field(
        default=None, validation_alias="startLineNumber", serialization_alias="startLineNumber"
    )
    end_line_number: int | None = Field(
        default=None, validation_alias="endLineNumber", serialization_alias="endLineNumber"
    )
    authentication: OrganizationsAuthentication | None = None
    authorization: OrganizationsAuthentication | None = None
    access_list: OrganizationsAccessList | None = Field(
        default=None, validation_alias="accessList", serialization_alias="accessList"
    )
    rotary_number: int | None = Field(
        default=None, validation_alias="rotaryNumber", serialization_alias="rotaryNumber"
    )


class CreateOrganizationInventoryOnboardingCloudMonitoringPrepareOptions(_BaseSchema):
    """Additional options for the import."""

    skip_commit: bool | None = Field(
        default=None, validation_alias="skipCommit", serialization_alias="skipCommit"
    )


class CreateOrganizationInventoryOnboardingCloudMonitoringPrepareResponse(
    RootModel[list["CreateOrganizationInventoryOnboardingCloudMonitoringPrepareResponseItem"]]
):
    """Response for createOrganizationInventoryOnboardingCloudMonitoringPrepare operation."""


class CreateOrganizationInventoryOnboardingCloudMonitoringPrepareResponseItem(_BaseSchema):
    """Schema for CreateOrganizationInventoryOnboardingCloudMonitoringPrepareResponseItem."""

    message: str | None = None
    udi: str | None = None
    device_id: str | None = Field(
        default=None, validation_alias="deviceId", serialization_alias="deviceId"
    )
    status: str | None = None
    config_params: OrganizationsConfigParams | None = Field(
        default=None, validation_alias="configParams", serialization_alias="configParams"
    )


class CreateOrganizationManagement(_BaseSchema):
    """Information about the organization's management system."""

    details: list[OrganizationsDetailsItem] = Field(default_factory=list)


class CreateOrganizationNetworkResponse(_BaseSchema):
    """Response for createOrganizationNetwork operation."""

    id: str | None = None
    organization_id: str | None = Field(
        default=None, validation_alias="organizationId", serialization_alias="organizationId"
    )
    name: str | None = None
    product_types: list[str] = Field(
        default_factory=list, validation_alias="productTypes", serialization_alias="productTypes"
    )
    time_zone: str | None = Field(
        default=None, validation_alias="timeZone", serialization_alias="timeZone"
    )
    tags: list[str] = Field(default_factory=list)
    enrollment_string: str | None = Field(
        default=None, validation_alias="enrollmentString", serialization_alias="enrollmentString"
    )
    url: str | None = None
    notes: str | None = None
    is_bound_to_config_template: bool | None = Field(
        default=None,
        validation_alias="isBoundToConfigTemplate",
        serialization_alias="isBoundToConfigTemplate",
    )


class CreateOrganizationPolicyObjectResponse(_BaseSchema):
    """Response for createOrganizationPolicyObject operation."""

    id: str | None = None
    name: str | None = None
    category: str | None = None
    type_: str | None = Field(default=None, validation_alias="type", serialization_alias="type")
    cidr: str | None = None
    created_at: datetime | None = Field(
        default=None, validation_alias="createdAt", serialization_alias="createdAt"
    )
    updated_at: datetime | None = Field(
        default=None, validation_alias="updatedAt", serialization_alias="updatedAt"
    )
    group_ids: list[str] = Field(
        default_factory=list, validation_alias="groupIds", serialization_alias="groupIds"
    )
    network_ids: list[str] = Field(
        default_factory=list, validation_alias="networkIds", serialization_alias="networkIds"
    )


class CreateOrganizationPolicyObjectsGroupResponse(_BaseSchema):
    """Response for createOrganizationPolicyObjectsGroup operation."""

    id: str | None = None
    name: str | None = None
    category: str | None = None
    created_at: datetime | None = Field(
        default=None, validation_alias="createdAt", serialization_alias="createdAt"
    )
    updated_at: datetime | None = Field(
        default=None, validation_alias="updatedAt", serialization_alias="updatedAt"
    )
    object_ids: list[int] = Field(
        default_factory=list, validation_alias="objectIds", serialization_alias="objectIds"
    )
    network_ids: list[str] = Field(
        default_factory=list, validation_alias="networkIds", serialization_alias="networkIds"
    )


class CreateOrganizationResponse(_BaseSchema):
    """Response for createOrganization operation."""

    id: str | None = None
    name: str | None = None
    url: str | None = None
    api: OrganizationsApi | None = None
    licensing: OrganizationsLicensing | None = None
    cloud: OrganizationsCloud | None = None
    management: OrganizationsManagement | None = None


class CreateOrganizationSamlIdpResponse(RootModel[list["CreateOrganizationSamlIdpResponseItem"]]):
    """Response for createOrganizationSamlIdp operation."""


class CreateOrganizationSamlIdpResponseItem(_BaseSchema):
    """Schema for CreateOrganizationSamlIdpResponseItem."""

    idp_id: str | None = Field(default=None, validation_alias="idpId", serialization_alias="idpId")
    consumer_url: str | None = Field(
        default=None, validation_alias="consumerUrl", serialization_alias="consumerUrl"
    )
    vision_consumer_url: str | None = Field(
        default=None, validation_alias="visionConsumerUrl", serialization_alias="visionConsumerUrl"
    )
    x509cert_sha1_fingerprint: str | None = Field(
        default=None,
        validation_alias="x509certSha1Fingerprint",
        serialization_alias="x509certSha1Fingerprint",
    )
    sso_login_url: str | None = Field(
        default=None, validation_alias="ssoLoginUrl", serialization_alias="ssoLoginUrl"
    )
    slo_logout_url: str | None = Field(
        default=None, validation_alias="sloLogoutUrl", serialization_alias="sloLogoutUrl"
    )


class CreateOrganizationSamlRoleNetworksItem(_BaseSchema):
    """Item schema for networks."""

    id: str
    access: str


class CreateOrganizationSamlRoleResponse(_BaseSchema):
    """Response for createOrganizationSamlRole operation."""

    id: str | None = None
    role: str | None = None
    org_access: str | None = Field(
        default=None, validation_alias="orgAccess", serialization_alias="orgAccess"
    )
    networks: list[OrganizationsNetworksItem] = Field(default_factory=list)
    tags: list[OrganizationsTagsItem] = Field(default_factory=list)
    camera: list[OrganizationsCameraItem] = Field(default_factory=list)


class CreateOrganizationSamlRoleTagsItem(_BaseSchema):
    """Item schema for tags."""

    tag: str
    access: str


class CreateOrganizationSplashThemeAssetResponse(_BaseSchema):
    """Response for createOrganizationSplashThemeAsset operation."""

    id: str | None = None
    name: str | None = None
    file_data: str | None = Field(
        default=None, validation_alias="fileData", serialization_alias="fileData"
    )


class CreateOrganizationSplashThemeResponse(_BaseSchema):
    """Response for createOrganizationSplashTheme operation."""

    id: str | None = None
    name: str | None = None
    theme_assets: list[OrganizationsPolicyObjectsItem] = Field(
        default_factory=list, validation_alias="themeAssets", serialization_alias="themeAssets"
    )


class DisableOrganizationIntegrationsXdrNetworksNetworksItem(_BaseSchema):
    """Item schema for networks."""

    network_id: str = Field(validation_alias="networkId", serialization_alias="networkId")
    product_types: list[str] = Field(
        validation_alias="productTypes", serialization_alias="productTypes"
    )


class DisableOrganizationIntegrationsXdrNetworksResponse(_BaseSchema):
    """Response for disableOrganizationIntegrationsXdrNetworks operation."""

    networks: list[DisableOrganizationIntegrationsXdrNetworksResponseNetworksItem] = Field(
        default_factory=list
    )


class DisableOrganizationIntegrationsXdrNetworksResponseNetworksItem(_BaseSchema):
    """Schema for DisableOrganizationIntegrationsXdrNetworksResponseNetworksItem."""

    network_id: str | None = Field(
        default=None, validation_alias="networkId", serialization_alias="networkId"
    )
    product_types: list[str] = Field(
        default_factory=list, validation_alias="productTypes", serialization_alias="productTypes"
    )
    name: str | None = None
    enabled: bool | None = None
    is_eligible: bool | None = Field(
        default=None, validation_alias="isEligible", serialization_alias="isEligible"
    )


class EnableOrganizationIntegrationsXdrNetworksNetworksItem(_BaseSchema):
    """Item schema for networks."""

    network_id: str = Field(validation_alias="networkId", serialization_alias="networkId")
    product_types: list[str] = Field(
        validation_alias="productTypes", serialization_alias="productTypes"
    )


class EnableOrganizationIntegrationsXdrNetworksResponse(_BaseSchema):
    """Response for enableOrganizationIntegrationsXdrNetworks operation."""

    networks: list[DisableOrganizationIntegrationsXdrNetworksResponseNetworksItem] = Field(
        default_factory=list
    )


class GenerateOrganizationDevicesPacketCaptureCaptureDownloadUrlResponse(_BaseSchema):
    """Response for generateOrganizationDevicesPacketCaptureCaptureDownloadUrl operation."""

    capture_id: str | None = Field(
        default=None, validation_alias="captureId", serialization_alias="captureId"
    )
    download_url: str | None = Field(
        default=None, validation_alias="downloadUrl", serialization_alias="downloadUrl"
    )
    url: str | None = None


class GetNetworkMovesResponseItemsItem(_BaseSchema):
    """Schema for GetNetworkMovesResponseItemsItem."""

    move_id: str | None = Field(
        default=None, validation_alias="moveId", serialization_alias="moveId"
    )
    initiator: OrganizationsInitiator | None = None
    organizations: OrganizationsOrganizations | None = None
    network: CreateOrganizationActionBatchCallbackHttpServer | None = None
    created_at: datetime | None = Field(
        default=None, validation_alias="createdAt", serialization_alias="createdAt"
    )
    last_updated_at: datetime | None = Field(
        default=None, validation_alias="lastUpdatedAt", serialization_alias="lastUpdatedAt"
    )
    result: OrganizationsResult | None = None


class GetOrganizationActionBatchResponse(_BaseSchema):
    """Response for getOrganizationActionBatch operation."""

    id: str | None = None
    organization_id: str | None = Field(
        default=None, validation_alias="organizationId", serialization_alias="organizationId"
    )
    confirmed: bool | None = None
    synchronous: bool | None = None
    status: OrganizationsStatus | None = None
    actions: list[OrganizationsActionsItem]
    callback: CreateOrganizationActionBatchResponseCallback | None = None


class GetOrganizationActionBatchesResponse(
    RootModel[list["GetOrganizationActionBatchesResponseItem"]]
):
    """Response for getOrganizationActionBatches operation."""


class GetOrganizationActionBatchesResponseItem(_BaseSchema):
    """Schema for GetOrganizationActionBatchesResponseItem."""

    id: str | None = None
    organization_id: str | None = Field(
        default=None, validation_alias="organizationId", serialization_alias="organizationId"
    )
    confirmed: bool | None = None
    synchronous: bool | None = None
    status: OrganizationsStatus | None = None
    actions: list[OrganizationsActionsItem]


class GetOrganizationAdaptivePolicyAclResponse(_BaseSchema):
    """Response for getOrganizationAdaptivePolicyAcl operation."""

    acl_id: str | None = Field(default=None, validation_alias="aclId", serialization_alias="aclId")
    name: str | None = None
    description: str | None = None
    ip_version: str | None = Field(
        default=None, validation_alias="ipVersion", serialization_alias="ipVersion"
    )
    rules: list[OrganizationsRulesItem] = Field(default_factory=list)
    created_at: datetime | None = Field(
        default=None, validation_alias="createdAt", serialization_alias="createdAt"
    )
    updated_at: datetime | None = Field(
        default=None, validation_alias="updatedAt", serialization_alias="updatedAt"
    )


class GetOrganizationAdaptivePolicyAclsResponse(
    RootModel[list["GetOrganizationAdaptivePolicyAclsResponseItem"]]
):
    """Response for getOrganizationAdaptivePolicyAcls operation."""


class GetOrganizationAdaptivePolicyAclsResponseItem(_BaseSchema):
    """Schema for GetOrganizationAdaptivePolicyAclsResponseItem."""

    acl_id: str | None = Field(default=None, validation_alias="aclId", serialization_alias="aclId")
    name: str | None = None
    description: str | None = None
    ip_version: str | None = Field(
        default=None, validation_alias="ipVersion", serialization_alias="ipVersion"
    )
    rules: list[OrganizationsRulesItem] = Field(default_factory=list)
    created_at: datetime | None = Field(
        default=None, validation_alias="createdAt", serialization_alias="createdAt"
    )
    updated_at: datetime | None = Field(
        default=None, validation_alias="updatedAt", serialization_alias="updatedAt"
    )


class GetOrganizationAdaptivePolicyGroupResponse(_BaseSchema):
    """Response for getOrganizationAdaptivePolicyGroup operation."""

    group_id: str | None = Field(
        default=None, validation_alias="groupId", serialization_alias="groupId"
    )
    name: str | None = None
    sgt: int | None = None
    description: str | None = None
    policy_objects: list[OrganizationsPolicyObjectsItem] = Field(
        default_factory=list, validation_alias="policyObjects", serialization_alias="policyObjects"
    )
    is_default_group: bool | None = Field(
        default=None, validation_alias="isDefaultGroup", serialization_alias="isDefaultGroup"
    )
    required_ip_mappings: list[str] = Field(
        default_factory=list,
        validation_alias="requiredIpMappings",
        serialization_alias="requiredIpMappings",
    )
    created_at: str | None = Field(
        default=None, validation_alias="createdAt", serialization_alias="createdAt"
    )
    updated_at: str | None = Field(
        default=None, validation_alias="updatedAt", serialization_alias="updatedAt"
    )


class GetOrganizationAdaptivePolicyGroupsResponse(
    RootModel[list["GetOrganizationAdaptivePolicyGroupsResponseItem"]]
):
    """Response for getOrganizationAdaptivePolicyGroups operation."""


class GetOrganizationAdaptivePolicyGroupsResponseItem(_BaseSchema):
    """Schema for GetOrganizationAdaptivePolicyGroupsResponseItem."""

    group_id: str | None = Field(
        default=None, validation_alias="groupId", serialization_alias="groupId"
    )
    name: str | None = None
    sgt: int | None = None
    description: str | None = None
    policy_objects: list[OrganizationsPolicyObjectsItem] = Field(
        default_factory=list, validation_alias="policyObjects", serialization_alias="policyObjects"
    )
    is_default_group: bool | None = Field(
        default=None, validation_alias="isDefaultGroup", serialization_alias="isDefaultGroup"
    )
    required_ip_mappings: list[str] = Field(
        default_factory=list,
        validation_alias="requiredIpMappings",
        serialization_alias="requiredIpMappings",
    )
    created_at: str | None = Field(
        default=None, validation_alias="createdAt", serialization_alias="createdAt"
    )
    updated_at: str | None = Field(
        default=None, validation_alias="updatedAt", serialization_alias="updatedAt"
    )


class GetOrganizationAdaptivePolicyOverviewResponse(_BaseSchema):
    """Response for getOrganizationAdaptivePolicyOverview operation."""

    counts: GetOrganizationAdaptivePolicyOverviewResponseCounts | None = None
    limits: GetOrganizationAdaptivePolicyOverviewResponseLimits | None = None


class GetOrganizationAdaptivePolicyOverviewResponseCounts(_BaseSchema):
    """The current amount of various adaptive policy objects."""

    groups: int | None = None
    custom_groups: int | None = Field(
        default=None, validation_alias="customGroups", serialization_alias="customGroups"
    )
    custom_acls: int | None = Field(
        default=None, validation_alias="customAcls", serialization_alias="customAcls"
    )
    policies: int | None = None
    deny_policies: int | None = Field(
        default=None, validation_alias="denyPolicies", serialization_alias="denyPolicies"
    )
    allow_policies: int | None = Field(
        default=None, validation_alias="allowPolicies", serialization_alias="allowPolicies"
    )
    policy_objects: int | None = Field(
        default=None, validation_alias="policyObjects", serialization_alias="policyObjects"
    )


class GetOrganizationAdaptivePolicyOverviewResponseLimits(_BaseSchema):
    """The current limits of various adaptive policy objects."""

    custom_groups: int | None = Field(
        default=None, validation_alias="customGroups", serialization_alias="customGroups"
    )
    rules_in_an_acl: int | None = Field(
        default=None, validation_alias="rulesInAnAcl", serialization_alias="rulesInAnAcl"
    )
    acls_in_a_policy: int | None = Field(
        default=None, validation_alias="aclsInAPolicy", serialization_alias="aclsInAPolicy"
    )
    policy_objects: int | None = Field(
        default=None, validation_alias="policyObjects", serialization_alias="policyObjects"
    )


class GetOrganizationAdaptivePolicyPoliciesResponse(
    RootModel[list["GetOrganizationAdaptivePolicyPoliciesResponseItem"]]
):
    """Response for getOrganizationAdaptivePolicyPolicies operation."""


class GetOrganizationAdaptivePolicyPoliciesResponseItem(_BaseSchema):
    """Schema for GetOrganizationAdaptivePolicyPoliciesResponseItem."""

    adaptive_policy_id: str | None = Field(
        default=None, validation_alias="adaptivePolicyId", serialization_alias="adaptivePolicyId"
    )
    source_group: OrganizationsSourceGroup | None = Field(
        default=None, validation_alias="sourceGroup", serialization_alias="sourceGroup"
    )
    destination_group: OrganizationsSourceGroup | None = Field(
        default=None, validation_alias="destinationGroup", serialization_alias="destinationGroup"
    )
    acls: list[OrganizationsPolicyObjectsItem] = Field(default_factory=list)
    last_entry_rule: str | None = Field(
        default=None, validation_alias="lastEntryRule", serialization_alias="lastEntryRule"
    )
    created_at: str | None = Field(
        default=None, validation_alias="createdAt", serialization_alias="createdAt"
    )
    updated_at: str | None = Field(
        default=None, validation_alias="updatedAt", serialization_alias="updatedAt"
    )


class GetOrganizationAdaptivePolicyPolicyResponse(_BaseSchema):
    """Response for getOrganizationAdaptivePolicyPolicy operation."""

    adaptive_policy_id: str | None = Field(
        default=None, validation_alias="adaptivePolicyId", serialization_alias="adaptivePolicyId"
    )
    source_group: OrganizationsSourceGroup | None = Field(
        default=None, validation_alias="sourceGroup", serialization_alias="sourceGroup"
    )
    destination_group: OrganizationsSourceGroup | None = Field(
        default=None, validation_alias="destinationGroup", serialization_alias="destinationGroup"
    )
    acls: list[OrganizationsPolicyObjectsItem] = Field(default_factory=list)
    last_entry_rule: str | None = Field(
        default=None, validation_alias="lastEntryRule", serialization_alias="lastEntryRule"
    )
    created_at: str | None = Field(
        default=None, validation_alias="createdAt", serialization_alias="createdAt"
    )
    updated_at: str | None = Field(
        default=None, validation_alias="updatedAt", serialization_alias="updatedAt"
    )


class GetOrganizationAdaptivePolicySettingsResponse(_BaseSchema):
    """Response for getOrganizationAdaptivePolicySettings operation."""

    enabled_networks: list[str] = Field(
        default_factory=list,
        validation_alias="enabledNetworks",
        serialization_alias="enabledNetworks",
    )


class GetOrganizationAdminsResponse(RootModel[list["GetOrganizationAdminsResponseItem"]]):
    """Response for getOrganizationAdmins operation."""


class GetOrganizationAdminsResponseItem(_BaseSchema):
    """Schema for GetOrganizationAdminsResponseItem."""

    id: str | None = None
    name: str | None = None
    email: str | None = None
    org_access: str | None = Field(
        default=None, validation_alias="orgAccess", serialization_alias="orgAccess"
    )
    account_status: str | None = Field(
        default=None, validation_alias="accountStatus", serialization_alias="accountStatus"
    )
    two_factor_auth_enabled: bool | None = Field(
        default=None,
        validation_alias="twoFactorAuthEnabled",
        serialization_alias="twoFactorAuthEnabled",
    )
    has_api_key: bool | None = Field(
        default=None, validation_alias="hasApiKey", serialization_alias="hasApiKey"
    )
    last_active: datetime | None = Field(
        default=None, validation_alias="lastActive", serialization_alias="lastActive"
    )
    tags: list[OrganizationsTagsItem] = Field(default_factory=list)
    networks: list[OrganizationsNetworksItem] = Field(default_factory=list)
    authentication_method: str | None = Field(
        default=None,
        validation_alias="authenticationMethod",
        serialization_alias="authenticationMethod",
    )


class GetOrganizationAlertsProfilesResponse(
    RootModel[list["GetOrganizationAlertsProfilesResponseItem"]]
):
    """Response for getOrganizationAlertsProfiles operation."""


class GetOrganizationAlertsProfilesResponseItem(_BaseSchema):
    """Schema for GetOrganizationAlertsProfilesResponseItem."""

    id: str | None = None
    type_: str | None = Field(default=None, validation_alias="type", serialization_alias="type")
    enabled: bool | None = None
    alert_condition: OrganizationsAlertCondition | None = Field(
        default=None, validation_alias="alertCondition", serialization_alias="alertCondition"
    )
    recipients: OrganizationsRecipients | None = None
    network_tags: list[str] = Field(
        default_factory=list, validation_alias="networkTags", serialization_alias="networkTags"
    )
    description: str | None = None


class GetOrganizationApiRequestsOverviewResponse(_BaseSchema):
    """Response for getOrganizationApiRequestsOverview operation."""

    response_code_counts: GetOrganizationApiRequestsOverviewResponseResponseCodeCounts | None = (
        Field(
            default=None,
            validation_alias="responseCodeCounts",
            serialization_alias="responseCodeCounts",
        )
    )


class GetOrganizationApiRequestsOverviewResponseCodesByIntervalResponse(
    RootModel[list["GetOrganizationApiRequestsOverviewResponseCodesByIntervalResponseItem"]]
):
    """Response for getOrganizationApiRequestsOverviewResponseCodesByInterval operation."""


class GetOrganizationApiRequestsOverviewResponseCodesByIntervalResponseItem(_BaseSchema):
    """Schema for GetOrganizationApiRequestsOverviewResponseCodesByIntervalResponseItem."""

    start_ts: datetime | None = Field(
        default=None, validation_alias="startTs", serialization_alias="startTs"
    )
    end_ts: datetime | None = Field(
        default=None, validation_alias="endTs", serialization_alias="endTs"
    )
    counts: list[OrganizationsCodesByIntervalResponseCountsItem] = Field(default_factory=list)


class GetOrganizationApiRequestsOverviewResponseResponseCodeCounts(_BaseSchema):
    """object of all supported HTTP response code."""

    n_200: int | None = Field(default=None, validation_alias="200", serialization_alias="200")
    n_201: int | None = Field(default=None, validation_alias="201", serialization_alias="201")
    n_202: int | None = Field(default=None, validation_alias="202", serialization_alias="202")
    n_203: int | None = Field(default=None, validation_alias="203", serialization_alias="203")
    n_204: int | None = Field(default=None, validation_alias="204", serialization_alias="204")
    n_205: int | None = Field(default=None, validation_alias="205", serialization_alias="205")
    n_206: int | None = Field(default=None, validation_alias="206", serialization_alias="206")
    n_207: int | None = Field(default=None, validation_alias="207", serialization_alias="207")
    n_208: int | None = Field(default=None, validation_alias="208", serialization_alias="208")
    n_226: int | None = Field(default=None, validation_alias="226", serialization_alias="226")
    n_300: int | None = Field(default=None, validation_alias="300", serialization_alias="300")
    n_301: int | None = Field(default=None, validation_alias="301", serialization_alias="301")
    n_302: int | None = Field(default=None, validation_alias="302", serialization_alias="302")
    n_303: int | None = Field(default=None, validation_alias="303", serialization_alias="303")
    n_304: int | None = Field(default=None, validation_alias="304", serialization_alias="304")
    n_305: int | None = Field(default=None, validation_alias="305", serialization_alias="305")
    n_306: int | None = Field(default=None, validation_alias="306", serialization_alias="306")
    n_307: int | None = Field(default=None, validation_alias="307", serialization_alias="307")
    n_308: int | None = Field(default=None, validation_alias="308", serialization_alias="308")
    n_400: int | None = Field(default=None, validation_alias="400", serialization_alias="400")
    n_401: int | None = Field(default=None, validation_alias="401", serialization_alias="401")
    n_402: int | None = Field(default=None, validation_alias="402", serialization_alias="402")
    n_403: int | None = Field(default=None, validation_alias="403", serialization_alias="403")
    n_404: int | None = Field(default=None, validation_alias="404", serialization_alias="404")
    n_405: int | None = Field(default=None, validation_alias="405", serialization_alias="405")
    n_406: int | None = Field(default=None, validation_alias="406", serialization_alias="406")
    n_407: int | None = Field(default=None, validation_alias="407", serialization_alias="407")
    n_408: int | None = Field(default=None, validation_alias="408", serialization_alias="408")
    n_409: int | None = Field(default=None, validation_alias="409", serialization_alias="409")
    n_410: int | None = Field(default=None, validation_alias="410", serialization_alias="410")
    n_411: int | None = Field(default=None, validation_alias="411", serialization_alias="411")
    n_412: int | None = Field(default=None, validation_alias="412", serialization_alias="412")
    n_413: int | None = Field(default=None, validation_alias="413", serialization_alias="413")
    n_414: int | None = Field(default=None, validation_alias="414", serialization_alias="414")
    n_415: int | None = Field(default=None, validation_alias="415", serialization_alias="415")
    n_416: int | None = Field(default=None, validation_alias="416", serialization_alias="416")
    n_417: int | None = Field(default=None, validation_alias="417", serialization_alias="417")
    n_421: int | None = Field(default=None, validation_alias="421", serialization_alias="421")
    n_422: int | None = Field(default=None, validation_alias="422", serialization_alias="422")
    n_423: int | None = Field(default=None, validation_alias="423", serialization_alias="423")
    n_424: int | None = Field(default=None, validation_alias="424", serialization_alias="424")
    n_425: int | None = Field(default=None, validation_alias="425", serialization_alias="425")
    n_426: int | None = Field(default=None, validation_alias="426", serialization_alias="426")
    n_428: int | None = Field(default=None, validation_alias="428", serialization_alias="428")
    n_429: int | None = Field(default=None, validation_alias="429", serialization_alias="429")
    n_431: int | None = Field(default=None, validation_alias="431", serialization_alias="431")
    n_451: int | None = Field(default=None, validation_alias="451", serialization_alias="451")
    n_500: int | None = Field(default=None, validation_alias="500", serialization_alias="500")


class GetOrganizationApiRequestsResponse(RootModel[list["GetOrganizationApiRequestsResponseItem"]]):
    """Response for getOrganizationApiRequests operation."""


class GetOrganizationApiRequestsResponseItem(_BaseSchema):
    """Schema for GetOrganizationApiRequestsResponseItem."""

    admin_id: str | None = Field(
        default=None, validation_alias="adminId", serialization_alias="adminId"
    )
    method: str | None = None
    host: str | None = None
    path: str | None = None
    query_string: str | None = Field(
        default=None, validation_alias="queryString", serialization_alias="queryString"
    )
    user_agent: str | None = Field(
        default=None, validation_alias="userAgent", serialization_alias="userAgent"
    )
    ts: datetime | None = None
    response_code: int | None = Field(
        default=None, validation_alias="responseCode", serialization_alias="responseCode"
    )
    source_ip: str | None = Field(
        default=None, validation_alias="sourceIp", serialization_alias="sourceIp"
    )
    version: int | None = None
    operation_id: str | None = Field(
        default=None, validation_alias="operationId", serialization_alias="operationId"
    )
    client: OrganizationsClient | None = None


class GetOrganizationAssuranceAlertResponse(_BaseSchema):
    """Response for getOrganizationAssuranceAlert operation."""

    id: str
    category_type: str = Field(validation_alias="categoryType", serialization_alias="categoryType")
    network: OrganizationsNetwork
    started_at: datetime = Field(validation_alias="startedAt", serialization_alias="startedAt")
    resolved_at: datetime | None = Field(
        default=None, validation_alias="resolvedAt", serialization_alias="resolvedAt"
    )
    dismissed_at: datetime | None = Field(
        default=None, validation_alias="dismissedAt", serialization_alias="dismissedAt"
    )
    device_type: str | None = Field(
        default=None, validation_alias="deviceType", serialization_alias="deviceType"
    )
    type_: str = Field(validation_alias="type", serialization_alias="type")
    title: str
    description: str | None = None
    severity: str
    scope: OrganizationsScope | None = None


class GetOrganizationAssuranceAlertsOverviewByNetworkResponseItemsItem(_BaseSchema):
    """Schema for GetOrganizationAssuranceAlertsOverviewByNetworkResponseItemsItem."""

    network_id: str = Field(validation_alias="networkId", serialization_alias="networkId")
    network_name: str = Field(validation_alias="networkName", serialization_alias="networkName")
    alert_count: int = Field(validation_alias="alertCount", serialization_alias="alertCount")
    severity_counts: list[OrganizationsSeverityCountsItem] = Field(
        validation_alias="severityCounts", serialization_alias="severityCounts"
    )


class GetOrganizationAssuranceAlertsOverviewByTypeResponseItemsItem(_BaseSchema):
    """Schema for GetOrganizationAssuranceAlertsOverviewByTypeResponseItemsItem."""

    type_: str = Field(validation_alias="type", serialization_alias="type")
    last_resolved_at: datetime | None = Field(
        default=None, validation_alias="lastResolvedAt", serialization_alias="lastResolvedAt"
    )
    count: int


class GetOrganizationAssuranceAlertsOverviewHistoricalResponseItemsItem(_BaseSchema):
    """Schema for GetOrganizationAssuranceAlertsOverviewHistoricalResponseItemsItem."""

    segment_start: datetime = Field(
        validation_alias="segmentStart", serialization_alias="segmentStart"
    )
    totals: OrganizationsTotals
    by_alert_type: list[OrganizationsByAlertTypeItem] = Field(
        validation_alias="byAlertType", serialization_alias="byAlertType"
    )


class GetOrganizationAssuranceAlertsOverviewResponse(_BaseSchema):
    """Response for getOrganizationAssuranceAlertsOverview operation."""

    counts: GetOrganizationAssuranceAlertsOverviewResponseCounts


class GetOrganizationAssuranceAlertsOverviewResponseCounts(_BaseSchema):
    """Counts of alerts on the organization."""

    total: int
    by_severity: list[OrganizationsCountsBySeverityItem] = Field(
        validation_alias="bySeverity", serialization_alias="bySeverity"
    )


class GetOrganizationAssuranceAlertsResponse(
    RootModel[list["GetOrganizationAssuranceAlertsResponseItem"]]
):
    """Response for getOrganizationAssuranceAlerts operation."""


class GetOrganizationAssuranceAlertsResponseItem(_BaseSchema):
    """Schema for GetOrganizationAssuranceAlertsResponseItem."""

    id: str
    category_type: str = Field(validation_alias="categoryType", serialization_alias="categoryType")
    network: OrganizationsNetwork
    started_at: datetime = Field(validation_alias="startedAt", serialization_alias="startedAt")
    resolved_at: datetime | None = Field(
        default=None, validation_alias="resolvedAt", serialization_alias="resolvedAt"
    )
    dismissed_at: datetime | None = Field(
        default=None, validation_alias="dismissedAt", serialization_alias="dismissedAt"
    )
    device_type: str | None = Field(
        default=None, validation_alias="deviceType", serialization_alias="deviceType"
    )
    type_: str = Field(validation_alias="type", serialization_alias="type")
    title: str
    description: str | None = None
    severity: str
    scope: OrganizationsScope | None = None


class GetOrganizationAssuranceAlertsTaxonomyCategoriesResponse(
    RootModel[list["GetOrganizationAssuranceAlertsTaxonomyCategoriesResponseItem"]]
):
    """Response for getOrganizationAssuranceAlertsTaxonomyCategories operation."""


class GetOrganizationAssuranceAlertsTaxonomyCategoriesResponseItem(_BaseSchema):
    """Schema for GetOrganizationAssuranceAlertsTaxonomyCategoriesResponseItem."""

    type_: str = Field(validation_alias="type", serialization_alias="type")
    title: str


class GetOrganizationAssuranceAlertsTaxonomyTypesResponse(
    RootModel[list["GetOrganizationAssuranceAlertsTaxonomyTypesResponseItem"]]
):
    """Response for getOrganizationAssuranceAlertsTaxonomyTypes operation."""


class GetOrganizationAssuranceAlertsTaxonomyTypesResponseItem(_BaseSchema):
    """Schema for GetOrganizationAssuranceAlertsTaxonomyTypesResponseItem."""

    type_: str = Field(validation_alias="type", serialization_alias="type")
    title: str
    category_type: str = Field(validation_alias="categoryType", serialization_alias="categoryType")
    severities: list[OrganizationsSeveritiesItem]
    device_types: list[str] = Field(
        validation_alias="deviceTypes", serialization_alias="deviceTypes"
    )


class GetOrganizationBrandingPoliciesPrioritiesResponse(_BaseSchema):
    """Response for getOrganizationBrandingPoliciesPriorities operation."""

    branding_policy_ids: list[str] = Field(
        default_factory=list,
        validation_alias="brandingPolicyIds",
        serialization_alias="brandingPolicyIds",
    )


class GetOrganizationBrandingPoliciesResponse(
    RootModel[list["GetOrganizationBrandingPoliciesResponseItem"]]
):
    """Response for getOrganizationBrandingPolicies operation."""


class GetOrganizationBrandingPoliciesResponseItem(_BaseSchema):
    """Schema for GetOrganizationBrandingPoliciesResponseItem."""

    name: str | None = None
    enabled: bool | None = None
    admin_settings: OrganizationsAdminSettings | None = Field(
        default=None, validation_alias="adminSettings", serialization_alias="adminSettings"
    )
    help_settings: OrganizationsHelpSettings | None = Field(
        default=None, validation_alias="helpSettings", serialization_alias="helpSettings"
    )
    custom_logo: OrganizationsCustomLogo | None = Field(
        default=None, validation_alias="customLogo", serialization_alias="customLogo"
    )


class GetOrganizationBrandingPolicyResponse(_BaseSchema):
    """Response for getOrganizationBrandingPolicy operation."""

    name: str | None = None
    enabled: bool | None = None
    admin_settings: OrganizationsAdminSettings | None = Field(
        default=None, validation_alias="adminSettings", serialization_alias="adminSettings"
    )
    help_settings: OrganizationsHelpSettings | None = Field(
        default=None, validation_alias="helpSettings", serialization_alias="helpSettings"
    )
    custom_logo: OrganizationsCustomLogo | None = Field(
        default=None, validation_alias="customLogo", serialization_alias="customLogo"
    )


class GetOrganizationClientsBandwidthUsageHistoryResponse(
    RootModel[list["GetOrganizationClientsBandwidthUsageHistoryResponseItem"]]
):
    """Response for getOrganizationClientsBandwidthUsageHistory operation."""


class GetOrganizationClientsBandwidthUsageHistoryResponseItem(_BaseSchema):
    """Schema for GetOrganizationClientsBandwidthUsageHistoryResponseItem."""

    ts: datetime | None = None
    total: float | None = None
    upstream: float | None = None
    downstream: float | None = None


class GetOrganizationClientsOverviewResponse(_BaseSchema):
    """Response for getOrganizationClientsOverview operation."""

    usage: GetOrganizationClientsOverviewResponseUsage | None = None
    counts: GetOrganizationClientsOverviewResponseCounts | None = None


class GetOrganizationClientsOverviewResponseCounts(_BaseSchema):
    """Client count information."""

    total: int | None = None


class GetOrganizationClientsOverviewResponseUsage(_BaseSchema):
    """Usage information of all clients across organization."""

    overall: OrganizationsUsageOverall | None = None
    average: float | None = None


class GetOrganizationClientsSearchResponse(_BaseSchema):
    """Response for getOrganizationClientsSearch operation."""

    client_id: str | None = Field(
        default=None, validation_alias="clientId", serialization_alias="clientId"
    )
    mac: str | None = None
    manufacturer: str | None = None
    records: list[GetOrganizationClientsSearchResponseRecordsItem] = Field(default_factory=list)


class GetOrganizationClientsSearchResponseRecordsItem(_BaseSchema):
    """Schema for GetOrganizationClientsSearchResponseRecordsItem."""

    network: OrganizationsRecordsNetwork | None = None
    ip: str | None = None
    ip6: str | None = None
    description: str | None = None
    first_seen: int | None = Field(
        default=None, validation_alias="firstSeen", serialization_alias="firstSeen"
    )
    last_seen: int | None = Field(
        default=None, validation_alias="lastSeen", serialization_alias="lastSeen"
    )
    os: str | None = None
    user: str | None = None
    vlan: str | None = None
    ssid: str | None = None
    switchport: str | None = None
    wireless_capabilities: str | None = Field(
        default=None,
        validation_alias="wirelessCapabilities",
        serialization_alias="wirelessCapabilities",
    )
    sm_installed: bool | None = Field(
        default=None, validation_alias="smInstalled", serialization_alias="smInstalled"
    )
    recent_device_mac: str | None = Field(
        default=None, validation_alias="recentDeviceMac", serialization_alias="recentDeviceMac"
    )
    client_vpn_connections: list[OrganizationsRecordsClientVpnConnectionsItem] = Field(
        default_factory=list,
        validation_alias="clientVpnConnections",
        serialization_alias="clientVpnConnections",
    )
    lldp: list[list[str]] = Field(default_factory=list)
    cdp: list[list[str]] = Field(default_factory=list)
    status: str | None = None


class GetOrganizationConfigTemplateResponse(_BaseSchema):
    """Response for getOrganizationConfigTemplate operation."""

    id: str | None = None
    name: str | None = None
    product_types: list[str] = Field(
        default_factory=list, validation_alias="productTypes", serialization_alias="productTypes"
    )
    time_zone: str | None = Field(
        default=None, validation_alias="timeZone", serialization_alias="timeZone"
    )


class GetOrganizationConfigTemplatesResponse(
    RootModel[list["GetOrganizationConfigTemplatesResponseItem"]]
):
    """Response for getOrganizationConfigTemplates operation."""


class GetOrganizationConfigTemplatesResponseItem(_BaseSchema):
    """Schema for GetOrganizationConfigTemplatesResponseItem."""

    id: str | None = None
    name: str | None = None
    product_types: list[str] = Field(
        default_factory=list, validation_alias="productTypes", serialization_alias="productTypes"
    )
    time_zone: str | None = Field(
        default=None, validation_alias="timeZone", serialization_alias="timeZone"
    )


class GetOrganizationConfigurationChangesResponse(
    RootModel[list["GetOrganizationConfigurationChangesResponseItem"]]
):
    """Response for getOrganizationConfigurationChanges operation."""


class GetOrganizationConfigurationChangesResponseItem(_BaseSchema):
    """Schema for GetOrganizationConfigurationChangesResponseItem."""

    ts: datetime | None = None
    admin_name: str | None = Field(
        default=None, validation_alias="adminName", serialization_alias="adminName"
    )
    admin_email: str | None = Field(
        default=None, validation_alias="adminEmail", serialization_alias="adminEmail"
    )
    admin_id: str | None = Field(
        default=None, validation_alias="adminId", serialization_alias="adminId"
    )
    network_name: str | None = Field(
        default=None, validation_alias="networkName", serialization_alias="networkName"
    )
    network_id: str | None = Field(
        default=None, validation_alias="networkId", serialization_alias="networkId"
    )
    network_url: str | None = Field(
        default=None, validation_alias="networkUrl", serialization_alias="networkUrl"
    )
    ssid_name: str | None = Field(
        default=None, validation_alias="ssidName", serialization_alias="ssidName"
    )
    ssid_number: int | None = Field(
        default=None, validation_alias="ssidNumber", serialization_alias="ssidNumber"
    )
    page: str | None = None
    label: str | None = None
    old_value: str | None = Field(
        default=None, validation_alias="oldValue", serialization_alias="oldValue"
    )
    new_value: str | None = Field(
        default=None, validation_alias="newValue", serialization_alias="newValue"
    )
    client: OrganizationsClient2 | None = None


class GetOrganizationDevicesAvailabilitiesChangeHistoryResponse(
    RootModel[list["GetOrganizationDevicesAvailabilitiesChangeHistoryResponseItem"]]
):
    """Response for getOrganizationDevicesAvailabilitiesChangeHistory operation."""


class GetOrganizationDevicesAvailabilitiesChangeHistoryResponseItem(_BaseSchema):
    """Schema for GetOrganizationDevicesAvailabilitiesChangeHistoryResponseItem."""

    ts: datetime | None = None
    device: OrganizationsDevice | None = None
    details: OrganizationsDetails | None = None
    network: OrganizationsNetwork2 | None = None


class GetOrganizationDevicesAvailabilitiesResponse(
    RootModel[list["GetOrganizationDevicesAvailabilitiesResponseItem"]]
):
    """Response for getOrganizationDevicesAvailabilities operation."""


class GetOrganizationDevicesAvailabilitiesResponseItem(_BaseSchema):
    """Schema for GetOrganizationDevicesAvailabilitiesResponseItem."""

    mac: str | None = None
    name: str | None = None
    network: CreateOrganizationActionBatchCallbackHttpServer | None = None
    product_type: str | None = Field(
        default=None, validation_alias="productType", serialization_alias="productType"
    )
    serial: str | None = None
    status: str | None = None
    tags: list[str] = Field(default_factory=list)


class GetOrganizationDevicesControllerMigrationsResponseItemsItem(_BaseSchema):
    """Schema for GetOrganizationDevicesControllerMigrationsResponseItemsItem."""

    serial: str | None = None
    target: str | None = None
    created_at: datetime | None = Field(
        default=None, validation_alias="createdAt", serialization_alias="createdAt"
    )
    migrated_at: datetime | None = Field(
        default=None, validation_alias="migratedAt", serialization_alias="migratedAt"
    )


class GetOrganizationDevicesOverviewByModelResponse(_BaseSchema):
    """Response for getOrganizationDevicesOverviewByModel operation."""

    counts: list[GetOrganizationDevicesOverviewByModelResponseCountsItem] = Field(
        default_factory=list
    )


class GetOrganizationDevicesOverviewByModelResponseCountsItem(_BaseSchema):
    """Schema for GetOrganizationDevicesOverviewByModelResponseCountsItem."""

    model: str | None = None
    total: int | None = None


class GetOrganizationDevicesPacketCaptureCapturesResponseItemsItem(_BaseSchema):
    """Schema for GetOrganizationDevicesPacketCaptureCapturesResponseItemsItem."""

    capture_id: str | None = Field(
        default=None, validation_alias="captureId", serialization_alias="captureId"
    )
    network: OrganizationsPolicyObjectsItem | None = None
    devices: list[dict[str, Any]] = Field(default_factory=list)
    device: OrganizationsDevice2 | None = None
    admin: OrganizationsPolicyObjectsItem | None = None
    client: OrganizationsClient3 | None = None
    details: list[OrganizationsDetailsItem2] = Field(default_factory=list)
    name: str | None = None
    start_ts: str | None = Field(
        default=None, validation_alias="startTs", serialization_alias="startTs"
    )
    ports: str | None = None
    status: str | None = None
    error_message: str | None = Field(
        default=None, validation_alias="errorMessage", serialization_alias="errorMessage"
    )
    destination: str | None = None
    process: str | None = None
    file: OrganizationsFile | None = None
    duration: int | None = None
    filter_expression: str | None = Field(
        default=None, validation_alias="filterExpression", serialization_alias="filterExpression"
    )
    counts: OrganizationsCounts | None = None
    interface: str | None = None


class GetOrganizationDevicesPacketCaptureSchedulesResponseItemsItem(_BaseSchema):
    """Schema for GetOrganizationDevicesPacketCaptureSchedulesResponseItemsItem."""

    schedule_id: str | None = Field(
        default=None, validation_alias="scheduleId", serialization_alias="scheduleId"
    )
    devices: list[OrganizationsDevicesItem2] = Field(default_factory=list)
    name: str | None = None
    admin: OrganizationsPolicyObjectsItem | None = None
    notes: str | None = None
    duration: int | None = None
    filter_expression: str | None = Field(
        default=None, validation_alias="filterExpression", serialization_alias="filterExpression"
    )
    created_at: str | None = Field(
        default=None, validation_alias="createdAt", serialization_alias="createdAt"
    )
    updated_at: str | None = Field(
        default=None, validation_alias="updatedAt", serialization_alias="updatedAt"
    )
    capture_count: int | None = Field(
        default=None, validation_alias="captureCount", serialization_alias="captureCount"
    )
    last_capture_id: str | None = Field(
        default=None, validation_alias="lastCaptureId", serialization_alias="lastCaptureId"
    )
    enabled: bool | None = None
    priority: int | None = None
    schedule: OrganizationsSchedule | None = None
    warnings: list[str] = Field(default_factory=list)


class GetOrganizationDevicesPowerModulesStatusesByDeviceResponse(
    RootModel[list["GetOrganizationDevicesPowerModulesStatusesByDeviceResponseItem"]]
):
    """Response for getOrganizationDevicesPowerModulesStatusesByDevice operation."""


class GetOrganizationDevicesPowerModulesStatusesByDeviceResponseItem(_BaseSchema):
    """Schema for GetOrganizationDevicesPowerModulesStatusesByDeviceResponseItem."""

    mac: str | None = None
    name: str | None = None
    network: CreateOrganizationActionBatchCallbackHttpServer | None = None
    product_type: str | None = Field(
        default=None, validation_alias="productType", serialization_alias="productType"
    )
    serial: str | None = None
    tags: list[str] = Field(default_factory=list)
    slots: list[OrganizationsSlotsItem] = Field(default_factory=list)


class GetOrganizationDevicesProvisioningStatusesResponse(
    RootModel[list["GetOrganizationDevicesProvisioningStatusesResponseItem"]]
):
    """Response for getOrganizationDevicesProvisioningStatuses operation."""


class GetOrganizationDevicesProvisioningStatusesResponseItem(_BaseSchema):
    """Schema for GetOrganizationDevicesProvisioningStatusesResponseItem."""

    mac: str | None = None
    name: str | None = None
    network: CreateOrganizationActionBatchCallbackHttpServer | None = None
    product_type: str | None = Field(
        default=None, validation_alias="productType", serialization_alias="productType"
    )
    serial: str | None = None
    status: str | None = None
    tags: list[str] = Field(default_factory=list)


class GetOrganizationDevicesResponse(RootModel[list["GetOrganizationDevicesResponseItem"]]):
    """Response for getOrganizationDevices operation."""


class GetOrganizationDevicesResponseItem(_BaseSchema):
    """Schema for GetOrganizationDevicesResponseItem."""

    name: str | None = None
    lat: float | None = None
    lng: float | None = None
    address: str | None = None
    notes: str | None = None
    tags: list[str] = Field(default_factory=list)
    network_id: str | None = Field(
        default=None, validation_alias="networkId", serialization_alias="networkId"
    )
    serial: str
    model: str
    imei: str | None = None
    mac: str
    lan_ip: str | None = Field(default=None, validation_alias="lanIp", serialization_alias="lanIp")
    firmware: str | None = None
    product_type: str | None = Field(
        default=None, validation_alias="productType", serialization_alias="productType"
    )
    details: list[OrganizationsDetailsItem] = Field(default_factory=list)


class GetOrganizationDevicesStatusesOverviewResponse(_BaseSchema):
    """Response for getOrganizationDevicesStatusesOverview operation."""

    counts: GetOrganizationDevicesStatusesOverviewResponseCounts | None = None


class GetOrganizationDevicesStatusesOverviewResponseCounts(_BaseSchema):
    """counts."""

    by_status: OrganizationsCountsByStatus | None = Field(
        default=None, validation_alias="byStatus", serialization_alias="byStatus"
    )


class GetOrganizationDevicesStatusesResponse(
    RootModel[list["GetOrganizationDevicesStatusesResponseItem"]]
):
    """Response for getOrganizationDevicesStatuses operation."""


class GetOrganizationDevicesStatusesResponseItem(_BaseSchema):
    """Schema for GetOrganizationDevicesStatusesResponseItem."""

    name: str | None = None
    serial: str
    mac: str
    public_ip: str | None = Field(
        default=None, validation_alias="publicIp", serialization_alias="publicIp"
    )
    network_id: str | None = Field(
        default=None, validation_alias="networkId", serialization_alias="networkId"
    )
    status: str
    last_reported_at: str | None = Field(
        default=None, validation_alias="lastReportedAt", serialization_alias="lastReportedAt"
    )
    lan_ip: str | None = Field(default=None, validation_alias="lanIp", serialization_alias="lanIp")
    gateway: str | None = None
    ip_type: str | None = Field(
        default=None, validation_alias="ipType", serialization_alias="ipType"
    )
    primary_dns: str | None = Field(
        default=None, validation_alias="primaryDns", serialization_alias="primaryDns"
    )
    secondary_dns: str | None = Field(
        default=None, validation_alias="secondaryDns", serialization_alias="secondaryDns"
    )
    product_type: str | None = Field(
        default=None, validation_alias="productType", serialization_alias="productType"
    )
    components: OrganizationsComponents | None = None
    model: str
    tags: list[str] = Field(default_factory=list)


class GetOrganizationDevicesSystemMemoryUsageHistoryByIntervalResponseItemsItem(_BaseSchema):
    """Schema for GetOrganizationDevicesSystemMemoryUsageHistoryByIntervalResponseItemsItem."""

    serial: str | None = None
    model: str | None = None
    name: str | None = None
    mac: str | None = None
    tags: list[str] = Field(default_factory=list)
    provisioned: int | None = None
    used: OrganizationsUsed | None = None
    free: OrganizationsUsed | None = None
    network: OrganizationsNetwork3 | None = None
    intervals: list[OrganizationsIntervalsItem] = Field(default_factory=list)


class GetOrganizationDevicesUplinksAddressesByDeviceResponse(
    RootModel[list["GetOrganizationDevicesUplinksAddressesByDeviceResponseItem"]]
):
    """Response for getOrganizationDevicesUplinksAddressesByDevice operation."""


class GetOrganizationDevicesUplinksAddressesByDeviceResponseItem(_BaseSchema):
    """Schema for GetOrganizationDevicesUplinksAddressesByDeviceResponseItem."""

    mac: str | None = None
    name: str | None = None
    network: CreateOrganizationActionBatchCallbackHttpServer | None = None
    product_type: str | None = Field(
        default=None, validation_alias="productType", serialization_alias="productType"
    )
    serial: str | None = None
    tags: list[str] = Field(default_factory=list)
    uplinks: list[OrganizationsUplinksItem] = Field(default_factory=list)


class GetOrganizationDevicesUplinksLossAndLatencyResponse(
    RootModel[list["GetOrganizationDevicesUplinksLossAndLatencyResponseItem"]]
):
    """Response for getOrganizationDevicesUplinksLossAndLatency operation."""


class GetOrganizationDevicesUplinksLossAndLatencyResponseItem(_BaseSchema):
    """Schema for GetOrganizationDevicesUplinksLossAndLatencyResponseItem."""

    network_id: str | None = Field(
        default=None, validation_alias="networkId", serialization_alias="networkId"
    )
    serial: str | None = None
    uplink: str | None = None
    ip: str | None = None
    time_series: list[OrganizationsTimeSeriesItem] = Field(
        default_factory=list, validation_alias="timeSeries", serialization_alias="timeSeries"
    )


class GetOrganizationEarlyAccessFeaturesOptInResponse(_BaseSchema):
    """Response for getOrganizationEarlyAccessFeaturesOptIn operation."""

    id: str | None = None
    short_name: str | None = Field(
        default=None, validation_alias="shortName", serialization_alias="shortName"
    )
    limit_scope_to_networks: list[OrganizationsPolicyObjectsItem] = Field(
        default_factory=list,
        validation_alias="limitScopeToNetworks",
        serialization_alias="limitScopeToNetworks",
    )
    opt_out_eligibility: (
        GetOrganizationEarlyAccessFeaturesOptInsResponseOptOutEligibility | None
    ) = Field(
        default=None, validation_alias="optOutEligibility", serialization_alias="optOutEligibility"
    )
    created_at: datetime | None = Field(
        default=None, validation_alias="createdAt", serialization_alias="createdAt"
    )


class GetOrganizationEarlyAccessFeaturesOptInsResponse(_BaseSchema):
    """Response for getOrganizationEarlyAccessFeaturesOptIns operation."""

    id: str | None = None
    short_name: str | None = Field(
        default=None, validation_alias="shortName", serialization_alias="shortName"
    )
    limit_scope_to_networks: list[OrganizationsPolicyObjectsItem] = Field(
        default_factory=list,
        validation_alias="limitScopeToNetworks",
        serialization_alias="limitScopeToNetworks",
    )
    opt_out_eligibility: (
        GetOrganizationEarlyAccessFeaturesOptInsResponseOptOutEligibility | None
    ) = Field(
        default=None, validation_alias="optOutEligibility", serialization_alias="optOutEligibility"
    )
    created_at: datetime | None = Field(
        default=None, validation_alias="createdAt", serialization_alias="createdAt"
    )


class GetOrganizationEarlyAccessFeaturesOptInsResponseOptOutEligibility(_BaseSchema):
    """Descriptions of the early access feature."""

    eligible: bool | None = None
    reason: str | None = None
    help: OrganizationsOptOutEligibilityHelp | None = None


class GetOrganizationEarlyAccessFeaturesResponse(
    RootModel[list["GetOrganizationEarlyAccessFeaturesResponseItem"]]
):
    """Response for getOrganizationEarlyAccessFeatures operation."""


class GetOrganizationEarlyAccessFeaturesResponseItem(_BaseSchema):
    """Schema for GetOrganizationEarlyAccessFeaturesResponseItem."""

    short_name: str | None = Field(
        default=None, validation_alias="shortName", serialization_alias="shortName"
    )
    name: str | None = None
    descriptions: OrganizationsDescriptions | None = None
    topic: str | None = None
    is_org_scoped_only: bool | None = Field(
        default=None, validation_alias="isOrgScopedOnly", serialization_alias="isOrgScopedOnly"
    )
    documentation_link: str | None = Field(
        default=None, validation_alias="documentationLink", serialization_alias="documentationLink"
    )
    support_link: str | None = Field(
        default=None, validation_alias="supportLink", serialization_alias="supportLink"
    )
    privacy_link: str | None = Field(
        default=None, validation_alias="privacyLink", serialization_alias="privacyLink"
    )


class GetOrganizationFirmwareUpgradesByDeviceResponse(
    RootModel[list["GetOrganizationFirmwareUpgradesByDeviceResponseItem"]]
):
    """Response for getOrganizationFirmwareUpgradesByDevice operation."""


class GetOrganizationFirmwareUpgradesByDeviceResponseItem(_BaseSchema):
    """Schema for GetOrganizationFirmwareUpgradesByDeviceResponseItem."""

    serial: str | None = None
    name: str | None = None
    device_status: str | None = Field(
        default=None, validation_alias="deviceStatus", serialization_alias="deviceStatus"
    )
    checkin_finished_at: datetime | None = Field(
        default=None, validation_alias="checkinFinishedAt", serialization_alias="checkinFinishedAt"
    )
    checkin_started_at: datetime | None = Field(
        default=None, validation_alias="checkinStartedAt", serialization_alias="checkinStartedAt"
    )
    detailed_status: str | None = Field(
        default=None, validation_alias="detailedStatus", serialization_alias="detailedStatus"
    )
    download_finished_at: datetime | None = Field(
        default=None,
        validation_alias="downloadFinishedAt",
        serialization_alias="downloadFinishedAt",
    )
    download_started_at: datetime | None = Field(
        default=None, validation_alias="downloadStartedAt", serialization_alias="downloadStartedAt"
    )
    download_status: str | None = Field(
        default=None, validation_alias="downloadStatus", serialization_alias="downloadStatus"
    )
    install_finished_at: datetime | None = Field(
        default=None, validation_alias="installFinishedAt", serialization_alias="installFinishedAt"
    )
    install_started_at: datetime | None = Field(
        default=None, validation_alias="installStartedAt", serialization_alias="installStartedAt"
    )
    install_status: str | None = Field(
        default=None, validation_alias="installStatus", serialization_alias="installStatus"
    )
    verify_finished_at: datetime | None = Field(
        default=None, validation_alias="verifyFinishedAt", serialization_alias="verifyFinishedAt"
    )
    verify_started_at: datetime | None = Field(
        default=None, validation_alias="verifyStartedAt", serialization_alias="verifyStartedAt"
    )
    verify_status: str | None = Field(
        default=None, validation_alias="verifyStatus", serialization_alias="verifyStatus"
    )
    upgrade: OrganizationsUpgrade | None = None


class GetOrganizationFirmwareUpgradesResponse(
    RootModel[list["GetOrganizationFirmwareUpgradesResponseItem"]]
):
    """Response for getOrganizationFirmwareUpgrades operation."""


class GetOrganizationFirmwareUpgradesResponseItem(_BaseSchema):
    """Schema for GetOrganizationFirmwareUpgradesResponseItem."""

    upgrade_id: str | None = Field(
        default=None, validation_alias="upgradeId", serialization_alias="upgradeId"
    )
    upgrade_batch_id: str | None = Field(
        default=None, validation_alias="upgradeBatchId", serialization_alias="upgradeBatchId"
    )
    network: OrganizationsPolicyObjectsItem | None = None
    status: str | None = None
    time: datetime | None = None
    completed_at: str | None = Field(
        default=None, validation_alias="completedAt", serialization_alias="completedAt"
    )
    product_types: str | None = Field(
        default=None, validation_alias="productTypes", serialization_alias="productTypes"
    )
    to_version: OrganizationsToVersion | None = Field(
        default=None, validation_alias="toVersion", serialization_alias="toVersion"
    )
    from_version: OrganizationsToVersion | None = Field(
        default=None, validation_alias="fromVersion", serialization_alias="fromVersion"
    )


class GetOrganizationFloorPlansAutoLocateDevicesResponse(
    RootModel[list["GetOrganizationFloorPlansAutoLocateDevicesResponseItem"]]
):
    """Items in the paginated dataset."""


class GetOrganizationFloorPlansAutoLocateDevicesResponseItem(_BaseSchema):
    """Schema for GetOrganizationFloorPlansAutoLocateDevicesResponseItem."""

    name: str | None = None
    serial: str | None = None
    mac: str | None = None
    model: str | None = None
    tags: list[str] = Field(default_factory=list)
    status: str | None = None
    network: CreateOrganizationActionBatchCallbackHttpServer | None = None
    floor_plan: OrganizationsPolicyObjectsItem | None = Field(
        default=None, validation_alias="floorPlan", serialization_alias="floorPlan"
    )
    lat: float | None = None
    lng: float | None = None
    auto_locate: OrganizationsAutoLocate | None = Field(
        default=None, validation_alias="autoLocate", serialization_alias="autoLocate"
    )
    type_: str | None = Field(default=None, validation_alias="type", serialization_alias="type")
    is_anchor: bool | None = Field(
        default=None, validation_alias="isAnchor", serialization_alias="isAnchor"
    )


class GetOrganizationFloorPlansAutoLocateStatusesResponse(
    RootModel[list["GetOrganizationFloorPlansAutoLocateStatusesResponseItem"]]
):
    """Items in the paginated dataset."""


class GetOrganizationFloorPlansAutoLocateStatusesResponseItem(_BaseSchema):
    """Schema for GetOrganizationFloorPlansAutoLocateStatusesResponseItem."""

    network: CreateOrganizationActionBatchCallbackHttpServer | None = None
    floor_plan_id: str | None = Field(
        default=None, validation_alias="floorPlanId", serialization_alias="floorPlanId"
    )
    name: str | None = None
    counts: OrganizationsCounts2 | None = None
    jobs: list[OrganizationsJobsItem] = Field(default_factory=list)


class GetOrganizationIntegrationsXdrNetworksResponseItemsItem(_BaseSchema):
    """Schema for GetOrganizationIntegrationsXdrNetworksResponseItemsItem."""

    network_id: str | None = Field(
        default=None, validation_alias="networkId", serialization_alias="networkId"
    )
    product_types: list[str] = Field(
        default_factory=list, validation_alias="productTypes", serialization_alias="productTypes"
    )
    name: str | None = None
    enabled: bool | None = None
    is_eligible: bool | None = Field(
        default=None, validation_alias="isEligible", serialization_alias="isEligible"
    )


class GetOrganizationInventoryDeviceResponse(_BaseSchema):
    """Response for getOrganizationInventoryDevice operation."""

    mac: str | None = None
    serial: str | None = None
    name: str | None = None
    model: str | None = None
    network_id: str | None = Field(
        default=None, validation_alias="networkId", serialization_alias="networkId"
    )
    order_number: str | None = Field(
        default=None, validation_alias="orderNumber", serialization_alias="orderNumber"
    )
    claimed_at: datetime | None = Field(
        default=None, validation_alias="claimedAt", serialization_alias="claimedAt"
    )
    license_expiration_date: datetime | None = Field(
        default=None,
        validation_alias="licenseExpirationDate",
        serialization_alias="licenseExpirationDate",
    )
    tags: list[str] = Field(default_factory=list)
    product_type: str | None = Field(
        default=None, validation_alias="productType", serialization_alias="productType"
    )
    country_code: str | None = Field(
        default=None, validation_alias="countryCode", serialization_alias="countryCode"
    )
    details: list[OrganizationsDetailsItem] = Field(default_factory=list)
    eox: OrganizationsEox | None = None


class GetOrganizationInventoryDevicesEoxOverviewResponse(_BaseSchema):
    """Response for getOrganizationInventoryDevicesEoxOverview operation."""

    counts: GetOrganizationInventoryDevicesEoxOverviewResponseCounts | None = None


class GetOrganizationInventoryDevicesEoxOverviewResponseCounts(_BaseSchema):
    """Device counts grouped by category."""

    by_status: OrganizationsCountsByStatus2 | None = Field(
        default=None, validation_alias="byStatus", serialization_alias="byStatus"
    )


class GetOrganizationInventoryDevicesResponse(
    RootModel[list["GetOrganizationInventoryDevicesResponseItem"]]
):
    """Response for getOrganizationInventoryDevices operation."""


class GetOrganizationInventoryDevicesResponseItem(_BaseSchema):
    """Schema for GetOrganizationInventoryDevicesResponseItem."""

    mac: str
    serial: str
    name: str | None = None
    model: str
    network_id: str | None = Field(
        default=None, validation_alias="networkId", serialization_alias="networkId"
    )
    order_number: str | None = Field(
        default=None, validation_alias="orderNumber", serialization_alias="orderNumber"
    )
    claimed_at: datetime | None = Field(
        default=None, validation_alias="claimedAt", serialization_alias="claimedAt"
    )
    license_expiration_date: datetime | None = Field(
        default=None,
        validation_alias="licenseExpirationDate",
        serialization_alias="licenseExpirationDate",
    )
    tags: list[str] = Field(default_factory=list)
    product_type: str | None = Field(
        default=None, validation_alias="productType", serialization_alias="productType"
    )
    country_code: str | None = Field(
        default=None, validation_alias="countryCode", serialization_alias="countryCode"
    )
    details: list[OrganizationsDetailsItem] = Field(default_factory=list)
    eox: OrganizationsEox | None = None


class GetOrganizationInventoryDevicesSwapsBulkResponse(_BaseSchema):
    """Response for getOrganizationInventoryDevicesSwapsBulk operation."""

    job_id: str | None = Field(default=None, validation_alias="jobId", serialization_alias="jobId")
    swaps: list[CreateOrganizationInventoryDevicesSwapsBulkResponseSwapsItem] = Field(
        default_factory=list
    )


class GetOrganizationInventoryOnboardingCloudMonitoringImportsResponse(
    RootModel[list["GetOrganizationInventoryOnboardingCloudMonitoringImportsResponseItem"]]
):
    """Response for getOrganizationInventoryOnboardingCloudMonitoringImports operation."""


class GetOrganizationInventoryOnboardingCloudMonitoringImportsResponseItem(_BaseSchema):
    """Schema for GetOrganizationInventoryOnboardingCloudMonitoringImportsResponseItem."""

    import_id: str | None = Field(
        default=None, validation_alias="importId", serialization_alias="importId"
    )
    device: OrganizationsDevice4 | None = None


class GetOrganizationInventoryOnboardingCloudMonitoringNetworksResponse(
    RootModel[list["GetOrganizationInventoryOnboardingCloudMonitoringNetworksResponseItem"]]
):
    """Response for getOrganizationInventoryOnboardingCloudMonitoringNetworks operation."""


class GetOrganizationInventoryOnboardingCloudMonitoringNetworksResponseItem(_BaseSchema):
    """Schema for GetOrganizationInventoryOnboardingCloudMonitoringNetworksResponseItem."""

    id: str | None = None
    organization_id: str | None = Field(
        default=None, validation_alias="organizationId", serialization_alias="organizationId"
    )
    name: str | None = None
    product_types: list[str] = Field(
        default_factory=list, validation_alias="productTypes", serialization_alias="productTypes"
    )
    time_zone: str | None = Field(
        default=None, validation_alias="timeZone", serialization_alias="timeZone"
    )
    tags: list[str] = Field(default_factory=list)
    enrollment_string: str | None = Field(
        default=None, validation_alias="enrollmentString", serialization_alias="enrollmentString"
    )
    url: str | None = None
    notes: str | None = None
    is_bound_to_config_template: bool | None = Field(
        default=None,
        validation_alias="isBoundToConfigTemplate",
        serialization_alias="isBoundToConfigTemplate",
    )


class GetOrganizationLicenseResponse(_BaseSchema):
    """Response for getOrganizationLicense operation."""

    id: str | None = None
    license_type: str | None = Field(
        default=None, validation_alias="licenseType", serialization_alias="licenseType"
    )
    license_key: str | None = Field(
        default=None, validation_alias="licenseKey", serialization_alias="licenseKey"
    )
    order_number: str | None = Field(
        default=None, validation_alias="orderNumber", serialization_alias="orderNumber"
    )
    device_serial: str | None = Field(
        default=None, validation_alias="deviceSerial", serialization_alias="deviceSerial"
    )
    network_id: str | None = Field(
        default=None, validation_alias="networkId", serialization_alias="networkId"
    )
    state: str | None = None
    seat_count: int | None = Field(
        default=None, validation_alias="seatCount", serialization_alias="seatCount"
    )
    total_duration_in_days: int | None = Field(
        default=None,
        validation_alias="totalDurationInDays",
        serialization_alias="totalDurationInDays",
    )
    duration_in_days: int | None = Field(
        default=None, validation_alias="durationInDays", serialization_alias="durationInDays"
    )
    permanently_queued_licenses: list[OrganizationsPermanentlyQueuedLicensesItem] = Field(
        default_factory=list,
        validation_alias="permanentlyQueuedLicenses",
        serialization_alias="permanentlyQueuedLicenses",
    )
    claim_date: str | None = Field(
        default=None, validation_alias="claimDate", serialization_alias="claimDate"
    )
    activation_date: str | None = Field(
        default=None, validation_alias="activationDate", serialization_alias="activationDate"
    )
    expiration_date: str | None = Field(
        default=None, validation_alias="expirationDate", serialization_alias="expirationDate"
    )
    head_license_id: str | None = Field(
        default=None, validation_alias="headLicenseId", serialization_alias="headLicenseId"
    )


class GetOrganizationLicensesOverviewResponse(_BaseSchema):
    """Response for getOrganizationLicensesOverview operation."""

    status: str | None = None
    expiration_date: str | None = Field(
        default=None, validation_alias="expirationDate", serialization_alias="expirationDate"
    )
    licensed_device_counts: dict[str, Any] | None = Field(
        default=None,
        validation_alias="licensedDeviceCounts",
        serialization_alias="licensedDeviceCounts",
    )
    license_count: int | None = Field(
        default=None, validation_alias="licenseCount", serialization_alias="licenseCount"
    )
    states: GetOrganizationLicensesOverviewResponseStates | None = None
    license_types: list[GetOrganizationLicensesOverviewResponseLicenseTypesItem] = Field(
        default_factory=list, validation_alias="licenseTypes", serialization_alias="licenseTypes"
    )
    systems_manager: GetOrganizationLicensesOverviewResponseSystemsManager | None = Field(
        default=None, validation_alias="systemsManager", serialization_alias="systemsManager"
    )


class GetOrganizationLicensesOverviewResponseLicenseTypesItem(_BaseSchema):
    """Schema for GetOrganizationLicensesOverviewResponseLicenseTypesItem."""

    license_type: str | None = Field(
        default=None, validation_alias="licenseType", serialization_alias="licenseType"
    )
    counts: OrganizationsLicenseTypesCounts | None = None


class GetOrganizationLicensesOverviewResponseStates(_BaseSchema):
    """Aggregated data for licenses by state (Per-device licensing only)."""

    active: OrganizationsStatesActive | None = None
    expired: OrganizationsStatesActive | None = None
    expiring: OrganizationsStatesExpiring | None = None
    recently_queued: OrganizationsStatesActive | None = Field(
        default=None, validation_alias="recentlyQueued", serialization_alias="recentlyQueued"
    )
    unused: OrganizationsStatesUnused | None = None
    unused_active: OrganizationsStatesUnusedActive | None = Field(
        default=None, validation_alias="unusedActive", serialization_alias="unusedActive"
    )


class GetOrganizationLicensesOverviewResponseSystemsManager(_BaseSchema):
    """Aggregated data for Systems Manager licenses (Per-device licensing only)."""

    counts: OrganizationsSystemsManagerCounts | None = None


class GetOrganizationLicensesResponse(RootModel[list["GetOrganizationLicensesResponseItem"]]):
    """Response for getOrganizationLicenses operation."""


class GetOrganizationLicensesResponseItem(_BaseSchema):
    """Schema for GetOrganizationLicensesResponseItem."""

    id: str | None = None
    license_type: str | None = Field(
        default=None, validation_alias="licenseType", serialization_alias="licenseType"
    )
    license_key: str | None = Field(
        default=None, validation_alias="licenseKey", serialization_alias="licenseKey"
    )
    order_number: str | None = Field(
        default=None, validation_alias="orderNumber", serialization_alias="orderNumber"
    )
    device_serial: str | None = Field(
        default=None, validation_alias="deviceSerial", serialization_alias="deviceSerial"
    )
    network_id: str | None = Field(
        default=None, validation_alias="networkId", serialization_alias="networkId"
    )
    state: str | None = None
    seat_count: int | None = Field(
        default=None, validation_alias="seatCount", serialization_alias="seatCount"
    )
    total_duration_in_days: int | None = Field(
        default=None,
        validation_alias="totalDurationInDays",
        serialization_alias="totalDurationInDays",
    )
    duration_in_days: int | None = Field(
        default=None, validation_alias="durationInDays", serialization_alias="durationInDays"
    )
    permanently_queued_licenses: list[OrganizationsPermanentlyQueuedLicensesItem] = Field(
        default_factory=list,
        validation_alias="permanentlyQueuedLicenses",
        serialization_alias="permanentlyQueuedLicenses",
    )
    claim_date: str | None = Field(
        default=None, validation_alias="claimDate", serialization_alias="claimDate"
    )
    activation_date: str | None = Field(
        default=None, validation_alias="activationDate", serialization_alias="activationDate"
    )
    expiration_date: str | None = Field(
        default=None, validation_alias="expirationDate", serialization_alias="expirationDate"
    )
    head_license_id: str | None = Field(
        default=None, validation_alias="headLicenseId", serialization_alias="headLicenseId"
    )


class GetOrganizationLoginSecurityResponse(_BaseSchema):
    """Response for getOrganizationLoginSecurity operation."""

    enforce_password_expiration: bool | None = Field(
        default=None,
        validation_alias="enforcePasswordExpiration",
        serialization_alias="enforcePasswordExpiration",
    )
    password_expiration_days: int | None = Field(
        default=None,
        validation_alias="passwordExpirationDays",
        serialization_alias="passwordExpirationDays",
    )
    enforce_different_passwords: bool | None = Field(
        default=None,
        validation_alias="enforceDifferentPasswords",
        serialization_alias="enforceDifferentPasswords",
    )
    num_different_passwords: int | None = Field(
        default=None,
        validation_alias="numDifferentPasswords",
        serialization_alias="numDifferentPasswords",
    )
    enforce_strong_passwords: bool | None = Field(
        default=None,
        validation_alias="enforceStrongPasswords",
        serialization_alias="enforceStrongPasswords",
    )
    minimum_password_length: int | None = Field(
        default=None,
        validation_alias="minimumPasswordLength",
        serialization_alias="minimumPasswordLength",
    )
    enforce_account_lockout: bool | None = Field(
        default=None,
        validation_alias="enforceAccountLockout",
        serialization_alias="enforceAccountLockout",
    )
    account_lockout_attempts: int | None = Field(
        default=None,
        validation_alias="accountLockoutAttempts",
        serialization_alias="accountLockoutAttempts",
    )
    enforce_idle_timeout: bool | None = Field(
        default=None,
        validation_alias="enforceIdleTimeout",
        serialization_alias="enforceIdleTimeout",
    )
    idle_timeout_minutes: int | None = Field(
        default=None,
        validation_alias="idleTimeoutMinutes",
        serialization_alias="idleTimeoutMinutes",
    )
    enforce_two_factor_auth: bool | None = Field(
        default=None,
        validation_alias="enforceTwoFactorAuth",
        serialization_alias="enforceTwoFactorAuth",
    )
    enforce_login_ip_ranges: bool | None = Field(
        default=None,
        validation_alias="enforceLoginIpRanges",
        serialization_alias="enforceLoginIpRanges",
    )
    login_ip_ranges: list[str] = Field(
        default_factory=list, validation_alias="loginIpRanges", serialization_alias="loginIpRanges"
    )
    api_authentication: GetOrganizationLoginSecurityResponseApiAuthentication | None = Field(
        default=None, validation_alias="apiAuthentication", serialization_alias="apiAuthentication"
    )


class GetOrganizationLoginSecurityResponseApiAuthentication(_BaseSchema):
    """Details for indicating whether organization will restrict access to API (but not Dashboard)
    to certain IP addresses.
    """

    ip_restrictions_for_keys: OrganizationsApiAuthenticationIpRestrictionsForKeys | None = Field(
        default=None,
        validation_alias="ipRestrictionsForKeys",
        serialization_alias="ipRestrictionsForKeys",
    )


class GetOrganizationNetworksResponse(RootModel[list["GetOrganizationNetworksResponseItem"]]):
    """Response for getOrganizationNetworks operation."""


class GetOrganizationNetworksResponseItem(_BaseSchema):
    """Schema for GetOrganizationNetworksResponseItem."""

    id: str
    organization_id: str = Field(
        validation_alias="organizationId", serialization_alias="organizationId"
    )
    name: str | None = None
    product_types: list[str] = Field(
        default_factory=list, validation_alias="productTypes", serialization_alias="productTypes"
    )
    time_zone: str | None = Field(
        default=None, validation_alias="timeZone", serialization_alias="timeZone"
    )
    tags: list[str] = Field(default_factory=list)
    enrollment_string: str | None = Field(
        default=None, validation_alias="enrollmentString", serialization_alias="enrollmentString"
    )
    url: str | None = None
    notes: str | None = None
    is_bound_to_config_template: bool | None = Field(
        default=None,
        validation_alias="isBoundToConfigTemplate",
        serialization_alias="isBoundToConfigTemplate",
    )


class GetOrganizationPoliciesAssignmentsByClientResponse(
    RootModel[list["GetOrganizationPoliciesAssignmentsByClientResponseItem"]]
):
    """Response for getOrganizationPoliciesAssignmentsByClient operation."""


class GetOrganizationPoliciesAssignmentsByClientResponseItem(_BaseSchema):
    """Schema for GetOrganizationPoliciesAssignmentsByClientResponseItem."""

    name: str | None = None
    client_id: str | None = Field(
        default=None, validation_alias="clientId", serialization_alias="clientId"
    )
    mac: str | None = None
    network_id: str | None = Field(
        default=None, validation_alias="networkId", serialization_alias="networkId"
    )
    assigned: list[OrganizationsAssignedItem] = Field(default_factory=list)


class GetOrganizationPolicyObjectResponse(_BaseSchema):
    """Response for getOrganizationPolicyObject operation."""

    id: str | None = None
    name: str | None = None
    category: str | None = None
    type_: str | None = Field(default=None, validation_alias="type", serialization_alias="type")
    cidr: str | None = None
    created_at: datetime | None = Field(
        default=None, validation_alias="createdAt", serialization_alias="createdAt"
    )
    updated_at: datetime | None = Field(
        default=None, validation_alias="updatedAt", serialization_alias="updatedAt"
    )
    group_ids: list[str] = Field(
        default_factory=list, validation_alias="groupIds", serialization_alias="groupIds"
    )
    network_ids: list[str] = Field(
        default_factory=list, validation_alias="networkIds", serialization_alias="networkIds"
    )


class GetOrganizationPolicyObjectsGroupResponse(_BaseSchema):
    """Response for getOrganizationPolicyObjectsGroup operation."""

    id: str | None = None
    name: str | None = None
    category: str | None = None
    created_at: datetime | None = Field(
        default=None, validation_alias="createdAt", serialization_alias="createdAt"
    )
    updated_at: datetime | None = Field(
        default=None, validation_alias="updatedAt", serialization_alias="updatedAt"
    )
    object_ids: list[int] = Field(
        default_factory=list, validation_alias="objectIds", serialization_alias="objectIds"
    )
    network_ids: list[str] = Field(
        default_factory=list, validation_alias="networkIds", serialization_alias="networkIds"
    )


class GetOrganizationPolicyObjectsGroupsResponse(
    RootModel[list["GetOrganizationPolicyObjectsGroupsResponseItem"]]
):
    """Response for getOrganizationPolicyObjectsGroups operation."""


class GetOrganizationPolicyObjectsGroupsResponseItem(_BaseSchema):
    """Schema for GetOrganizationPolicyObjectsGroupsResponseItem."""

    id: str | None = None
    name: str | None = None
    category: str | None = None
    created_at: datetime | None = Field(
        default=None, validation_alias="createdAt", serialization_alias="createdAt"
    )
    updated_at: datetime | None = Field(
        default=None, validation_alias="updatedAt", serialization_alias="updatedAt"
    )
    object_ids: list[int] = Field(
        default_factory=list, validation_alias="objectIds", serialization_alias="objectIds"
    )
    network_ids: list[str] = Field(
        default_factory=list, validation_alias="networkIds", serialization_alias="networkIds"
    )


class GetOrganizationPolicyObjectsResponse(
    RootModel[list["GetOrganizationPolicyObjectsResponseItem"]]
):
    """Response for getOrganizationPolicyObjects operation."""


class GetOrganizationPolicyObjectsResponseItem(_BaseSchema):
    """Schema for GetOrganizationPolicyObjectsResponseItem."""

    id: str | None = None
    name: str | None = None
    category: str | None = None
    type_: str | None = Field(default=None, validation_alias="type", serialization_alias="type")
    cidr: str | None = None
    created_at: datetime | None = Field(
        default=None, validation_alias="createdAt", serialization_alias="createdAt"
    )
    updated_at: datetime | None = Field(
        default=None, validation_alias="updatedAt", serialization_alias="updatedAt"
    )
    group_ids: list[str] = Field(
        default_factory=list, validation_alias="groupIds", serialization_alias="groupIds"
    )
    network_ids: list[str] = Field(
        default_factory=list, validation_alias="networkIds", serialization_alias="networkIds"
    )


class GetOrganizationResponse(_BaseSchema):
    """Response for getOrganization operation."""

    id: str
    name: str | None = None
    url: str | None = None
    api: OrganizationsApi | None = None
    licensing: OrganizationsLicensing | None = None
    cloud: OrganizationsCloud | None = None
    management: OrganizationsManagement | None = None


class GetOrganizationSamlIdpResponse(_BaseSchema):
    """Response for getOrganizationSamlIdp operation."""

    idp_id: str | None = Field(default=None, validation_alias="idpId", serialization_alias="idpId")
    consumer_url: str | None = Field(
        default=None, validation_alias="consumerUrl", serialization_alias="consumerUrl"
    )
    vision_consumer_url: str | None = Field(
        default=None, validation_alias="visionConsumerUrl", serialization_alias="visionConsumerUrl"
    )
    x509cert_sha1_fingerprint: str | None = Field(
        default=None,
        validation_alias="x509certSha1Fingerprint",
        serialization_alias="x509certSha1Fingerprint",
    )
    sso_login_url: str | None = Field(
        default=None, validation_alias="ssoLoginUrl", serialization_alias="ssoLoginUrl"
    )
    slo_logout_url: str | None = Field(
        default=None, validation_alias="sloLogoutUrl", serialization_alias="sloLogoutUrl"
    )


class GetOrganizationSamlIdpsResponse(RootModel[list["GetOrganizationSamlIdpsResponseItem"]]):
    """Response for getOrganizationSamlIdps operation."""


class GetOrganizationSamlIdpsResponseItem(_BaseSchema):
    """Schema for GetOrganizationSamlIdpsResponseItem."""

    idp_id: str | None = Field(default=None, validation_alias="idpId", serialization_alias="idpId")
    consumer_url: str | None = Field(
        default=None, validation_alias="consumerUrl", serialization_alias="consumerUrl"
    )
    vision_consumer_url: str | None = Field(
        default=None, validation_alias="visionConsumerUrl", serialization_alias="visionConsumerUrl"
    )
    x509cert_sha1_fingerprint: str | None = Field(
        default=None,
        validation_alias="x509certSha1Fingerprint",
        serialization_alias="x509certSha1Fingerprint",
    )
    sso_login_url: str | None = Field(
        default=None, validation_alias="ssoLoginUrl", serialization_alias="ssoLoginUrl"
    )
    slo_logout_url: str | None = Field(
        default=None, validation_alias="sloLogoutUrl", serialization_alias="sloLogoutUrl"
    )


class GetOrganizationSamlResponse(_BaseSchema):
    """Response for getOrganizationSaml operation."""

    enabled: bool | None = None
    sp_initiated: GetOrganizationSamlResponseSpInitiated | None = Field(
        default=None, validation_alias="spInitiated", serialization_alias="spInitiated"
    )


class GetOrganizationSamlResponseSpInitiated(_BaseSchema):
    """SP-Initiated SSO settings."""

    subdomain: str | None = None
    idp_id: str | None = Field(default=None, validation_alias="idpId", serialization_alias="idpId")


class GetOrganizationSamlRoleResponse(_BaseSchema):
    """Response for getOrganizationSamlRole operation."""

    id: str | None = None
    role: str | None = None
    org_access: str | None = Field(
        default=None, validation_alias="orgAccess", serialization_alias="orgAccess"
    )
    networks: list[OrganizationsNetworksItem] = Field(default_factory=list)
    tags: list[OrganizationsTagsItem] = Field(default_factory=list)
    camera: list[OrganizationsCameraItem] = Field(default_factory=list)


class GetOrganizationSamlRolesResponse(RootModel[list["GetOrganizationSamlRolesResponseItem"]]):
    """Response for getOrganizationSamlRoles operation."""


class GetOrganizationSamlRolesResponseItem(_BaseSchema):
    """Schema for GetOrganizationSamlRolesResponseItem."""

    id: str | None = None
    role: str | None = None
    org_access: str | None = Field(
        default=None, validation_alias="orgAccess", serialization_alias="orgAccess"
    )
    networks: list[OrganizationsNetworksItem] = Field(default_factory=list)
    tags: list[OrganizationsTagsItem] = Field(default_factory=list)
    camera: list[OrganizationsCameraItem] = Field(default_factory=list)


class GetOrganizationSnmpResponse(_BaseSchema):
    """Response for getOrganizationSnmp operation."""

    v2c_enabled: bool | None = Field(
        default=None, validation_alias="v2cEnabled", serialization_alias="v2cEnabled"
    )
    v2_community_string: str | None = Field(
        default=None, validation_alias="v2CommunityString", serialization_alias="v2CommunityString"
    )
    v3_enabled: bool | None = Field(
        default=None, validation_alias="v3Enabled", serialization_alias="v3Enabled"
    )
    v3_user: str | None = Field(
        default=None, validation_alias="v3User", serialization_alias="v3User"
    )
    v3_auth_mode: str | None = Field(
        default=None, validation_alias="v3AuthMode", serialization_alias="v3AuthMode"
    )
    v3_priv_mode: str | None = Field(
        default=None, validation_alias="v3PrivMode", serialization_alias="v3PrivMode"
    )
    peer_ips: list[str] = Field(
        default_factory=list, validation_alias="peerIps", serialization_alias="peerIps"
    )
    hostname: str | None = None
    port: int | None = None


class GetOrganizationSplashAssetResponse(_BaseSchema):
    """Response for getOrganizationSplashAsset operation."""

    id: str | None = None
    name: str | None = None
    file_data: str | None = Field(
        default=None, validation_alias="fileData", serialization_alias="fileData"
    )


class GetOrganizationSplashThemesResponse(
    RootModel[list["GetOrganizationSplashThemesResponseItem"]]
):
    """Response for getOrganizationSplashThemes operation."""


class GetOrganizationSplashThemesResponseItem(_BaseSchema):
    """Schema for GetOrganizationSplashThemesResponseItem."""

    id: str | None = None
    name: str | None = None
    theme_assets: list[OrganizationsPolicyObjectsItem] = Field(
        default_factory=list, validation_alias="themeAssets", serialization_alias="themeAssets"
    )


class GetOrganizationSummaryTopAppliancesByUtilizationResponse(
    RootModel[list["GetOrganizationSummaryTopAppliancesByUtilizationResponseItem"]]
):
    """Response for getOrganizationSummaryTopAppliancesByUtilization operation."""


class GetOrganizationSummaryTopAppliancesByUtilizationResponseItem(_BaseSchema):
    """Schema for GetOrganizationSummaryTopAppliancesByUtilizationResponseItem."""

    network: OrganizationsPolicyObjectsItem | None = None
    name: str | None = None
    mac: str | None = None
    serial: str | None = None
    model: str | None = None
    utilization: OrganizationsUtilization | None = None


class GetOrganizationSummaryTopApplicationsByUsageResponse(
    RootModel[list["GetOrganizationSummaryTopApplicationsByUsageResponseItem"]]
):
    """Response for getOrganizationSummaryTopApplicationsByUsage operation."""


class GetOrganizationSummaryTopApplicationsByUsageResponseItem(_BaseSchema):
    """Schema for GetOrganizationSummaryTopApplicationsByUsageResponseItem."""

    application: str | None = None
    total: float | None = None
    downstream: float | None = None
    upstream: float | None = None
    percentage: float | None = None


class GetOrganizationSummaryTopApplicationsCategoriesByUsageResponse(
    RootModel[list["GetOrganizationSummaryTopApplicationsCategoriesByUsageResponseItem"]]
):
    """Response for getOrganizationSummaryTopApplicationsCategoriesByUsage operation."""


class GetOrganizationSummaryTopApplicationsCategoriesByUsageResponseItem(_BaseSchema):
    """Schema for GetOrganizationSummaryTopApplicationsCategoriesByUsageResponseItem."""

    category: str | None = None
    total: float | None = None
    downstream: float | None = None
    upstream: float | None = None
    percentage: float | None = None


class GetOrganizationSummaryTopClientsByUsageResponse(
    RootModel[list["GetOrganizationSummaryTopClientsByUsageResponseItem"]]
):
    """Response for getOrganizationSummaryTopClientsByUsage operation."""


class GetOrganizationSummaryTopClientsByUsageResponseItem(_BaseSchema):
    """Schema for GetOrganizationSummaryTopClientsByUsageResponseItem."""

    name: str | None = None
    mac: str | None = None
    id: str | None = None
    network: OrganizationsPolicyObjectsItem | None = None
    usage: OrganizationsUsage | None = None


class GetOrganizationSummaryTopClientsManufacturersByUsageResponse(
    RootModel[list["GetOrganizationSummaryTopClientsManufacturersByUsageResponseItem"]]
):
    """Response for getOrganizationSummaryTopClientsManufacturersByUsage operation."""


class GetOrganizationSummaryTopClientsManufacturersByUsageResponseItem(_BaseSchema):
    """Schema for GetOrganizationSummaryTopClientsManufacturersByUsageResponseItem."""

    name: str | None = None
    clients: OrganizationsClients | None = None
    usage: OrganizationsUsageOverall | None = None


class GetOrganizationSummaryTopDevicesByUsageResponse(
    RootModel[list["GetOrganizationSummaryTopDevicesByUsageResponseItem"]]
):
    """Response for getOrganizationSummaryTopDevicesByUsage operation."""


class GetOrganizationSummaryTopDevicesByUsageResponseItem(_BaseSchema):
    """Schema for GetOrganizationSummaryTopDevicesByUsageResponseItem."""

    name: str | None = None
    model: str | None = None
    serial: str | None = None
    mac: str | None = None
    product_type: str | None = Field(
        default=None, validation_alias="productType", serialization_alias="productType"
    )
    network: OrganizationsPolicyObjectsItem | None = None
    usage: OrganizationsUsage2 | None = None
    clients: OrganizationsClients | None = None


class GetOrganizationSummaryTopDevicesModelsByUsageResponse(
    RootModel[list["GetOrganizationSummaryTopDevicesModelsByUsageResponseItem"]]
):
    """Response for getOrganizationSummaryTopDevicesModelsByUsage operation."""


class GetOrganizationSummaryTopDevicesModelsByUsageResponseItem(_BaseSchema):
    """Schema for GetOrganizationSummaryTopDevicesModelsByUsageResponseItem."""

    model: str | None = None
    count: int | None = None
    usage: OrganizationsUsage3 | None = None


class GetOrganizationSummaryTopNetworksByStatusResponse(
    RootModel[list["GetOrganizationSummaryTopNetworksByStatusResponseItem"]]
):
    """Response for getOrganizationSummaryTopNetworksByStatus operation."""


class GetOrganizationSummaryTopNetworksByStatusResponseItem(_BaseSchema):
    """Schema for GetOrganizationSummaryTopNetworksByStatusResponseItem."""

    network_id: str | None = Field(
        default=None, validation_alias="networkId", serialization_alias="networkId"
    )
    name: str | None = None
    url: str | None = None
    tags: list[str] = Field(default_factory=list)
    clients: OrganizationsClients2 | None = None
    statuses: OrganizationsStatuses | None = None
    devices: OrganizationsDevices | None = None
    product_types: list[str] = Field(
        default_factory=list, validation_alias="productTypes", serialization_alias="productTypes"
    )


class GetOrganizationSummaryTopSsidsByUsageResponse(
    RootModel[list["GetOrganizationSummaryTopSsidsByUsageResponseItem"]]
):
    """Response for getOrganizationSummaryTopSsidsByUsage operation."""


class GetOrganizationSummaryTopSsidsByUsageResponseItem(_BaseSchema):
    """Schema for GetOrganizationSummaryTopSsidsByUsageResponseItem."""

    name: str | None = None
    usage: OrganizationsUsage | None = None
    clients: OrganizationsClients | None = None


class GetOrganizationSummaryTopSwitchesByEnergyUsageResponse(
    RootModel[list["GetOrganizationSummaryTopSwitchesByEnergyUsageResponseItem"]]
):
    """Response for getOrganizationSummaryTopSwitchesByEnergyUsage operation."""


class GetOrganizationSummaryTopSwitchesByEnergyUsageResponseItem(_BaseSchema):
    """Schema for GetOrganizationSummaryTopSwitchesByEnergyUsageResponseItem."""

    network: OrganizationsPolicyObjectsItem | None = None
    name: str | None = None
    mac: str | None = None
    model: str | None = None
    usage: OrganizationsUsage5 | None = None


class GetOrganizationUplinksStatusesResponse(
    RootModel[list["GetOrganizationUplinksStatusesResponseItem"]]
):
    """Response for getOrganizationUplinksStatuses operation."""


class GetOrganizationUplinksStatusesResponseItem(_BaseSchema):
    """Schema for GetOrganizationUplinksStatusesResponseItem."""

    network_id: str | None = Field(
        default=None, validation_alias="networkId", serialization_alias="networkId"
    )
    serial: str | None = None
    model: str | None = None
    last_reported_at: datetime | None = Field(
        default=None, validation_alias="lastReportedAt", serialization_alias="lastReportedAt"
    )
    high_availability: OrganizationsHighAvailability | None = Field(
        default=None, validation_alias="highAvailability", serialization_alias="highAvailability"
    )
    uplinks: list[OrganizationsUplinksItem2] = Field(default_factory=list)


class GetOrganizationWebhooksAlertTypesResponse(_BaseSchema):
    """Response for getOrganizationWebhooksAlertTypes operation."""

    alert_type_id: str | None = Field(
        default=None, validation_alias="alertTypeId", serialization_alias="alertTypeId"
    )
    alert_type: str | None = Field(
        default=None, validation_alias="alertType", serialization_alias="alertType"
    )
    example: GetOrganizationWebhooksAlertTypesResponseExample | None = None


class GetOrganizationWebhooksAlertTypesResponseExample(_BaseSchema):
    """Example alert type."""

    version: str | None = None
    shared_secret: str | None = Field(
        default=None, validation_alias="sharedSecret", serialization_alias="sharedSecret"
    )
    sent_at: datetime | None = Field(
        default=None, validation_alias="sentAt", serialization_alias="sentAt"
    )
    alert_id: str | None = Field(
        default=None, validation_alias="alertId", serialization_alias="alertId"
    )
    alert_level: str | None = Field(
        default=None, validation_alias="alertLevel", serialization_alias="alertLevel"
    )
    occurred_at: datetime | None = Field(
        default=None, validation_alias="occurredAt", serialization_alias="occurredAt"
    )
    alert_data: dict[str, Any] | None = Field(
        default=None, validation_alias="alertData", serialization_alias="alertData"
    )
    organization_id: str | None = Field(
        default=None, validation_alias="organizationId", serialization_alias="organizationId"
    )
    organization_name: str | None = Field(
        default=None, validation_alias="organizationName", serialization_alias="organizationName"
    )
    organization_url: str | None = Field(
        default=None, validation_alias="organizationUrl", serialization_alias="organizationUrl"
    )
    device_serial: str | None = Field(
        default=None, validation_alias="deviceSerial", serialization_alias="deviceSerial"
    )
    device_mac: str | None = Field(
        default=None, validation_alias="deviceMac", serialization_alias="deviceMac"
    )
    device_name: str | None = Field(
        default=None, validation_alias="deviceName", serialization_alias="deviceName"
    )
    device_url: str | None = Field(
        default=None, validation_alias="deviceUrl", serialization_alias="deviceUrl"
    )
    device_tags: list[str] = Field(
        default_factory=list, validation_alias="deviceTags", serialization_alias="deviceTags"
    )
    device_model: str | None = Field(
        default=None, validation_alias="deviceModel", serialization_alias="deviceModel"
    )
    network_id: str | None = Field(
        default=None, validation_alias="networkId", serialization_alias="networkId"
    )
    network_name: str | None = Field(
        default=None, validation_alias="networkName", serialization_alias="networkName"
    )
    network_url: str | None = Field(
        default=None, validation_alias="networkUrl", serialization_alias="networkUrl"
    )
    enrollment_string: str | None = Field(
        default=None, validation_alias="enrollmentString", serialization_alias="enrollmentString"
    )
    notes: str | None = None
    product_types: list[str] = Field(
        default_factory=list, validation_alias="productTypes", serialization_alias="productTypes"
    )
    encrypted_id: str | None = Field(
        default=None, validation_alias="encryptedId", serialization_alias="encryptedId"
    )


class GetOrganizationWebhooksCallbacksStatusResponse(_BaseSchema):
    """Response for getOrganizationWebhooksCallbacksStatus operation."""

    callback_id: str | None = Field(
        default=None, validation_alias="callbackId", serialization_alias="callbackId"
    )
    status: str | None = None
    errors: list[str] = Field(default_factory=list)
    created_by: GetOrganizationWebhooksCallbacksStatusResponseCreatedBy | None = Field(
        default=None, validation_alias="createdBy", serialization_alias="createdBy"
    )
    webhook: GetOrganizationWebhooksCallbacksStatusResponseWebhook | None = None


class GetOrganizationWebhooksCallbacksStatusResponseCreatedBy(_BaseSchema):
    """Information around who initiated the callback."""

    admin_id: str | None = Field(
        default=None, validation_alias="adminId", serialization_alias="adminId"
    )


class GetOrganizationWebhooksCallbacksStatusResponseWebhook(_BaseSchema):
    """The webhook receiver used by the callback to send results."""

    url: str | None = None
    http_server: CreateOrganizationActionBatchCallbackHttpServer | None = Field(
        default=None, validation_alias="httpServer", serialization_alias="httpServer"
    )
    payload_template: CreateOrganizationActionBatchCallbackHttpServer | None = Field(
        default=None, validation_alias="payloadTemplate", serialization_alias="payloadTemplate"
    )
    sent_at: datetime | None = Field(
        default=None, validation_alias="sentAt", serialization_alias="sentAt"
    )


class GetOrganizationWebhooksLogsResponse(
    RootModel[list["GetOrganizationWebhooksLogsResponseItem"]]
):
    """Response for getOrganizationWebhooksLogs operation."""


class GetOrganizationWebhooksLogsResponseItem(_BaseSchema):
    """Schema for GetOrganizationWebhooksLogsResponseItem."""

    alert_type: str | None = Field(
        default=None, validation_alias="alertType", serialization_alias="alertType"
    )
    logged_at: datetime | None = Field(
        default=None, validation_alias="loggedAt", serialization_alias="loggedAt"
    )
    network_id: str | None = Field(
        default=None, validation_alias="networkId", serialization_alias="networkId"
    )
    organization_id: str | None = Field(
        default=None, validation_alias="organizationId", serialization_alias="organizationId"
    )
    response_code: int | None = Field(
        default=None, validation_alias="responseCode", serialization_alias="responseCode"
    )
    response_duration: int | None = Field(
        default=None, validation_alias="responseDuration", serialization_alias="responseDuration"
    )
    sent_at: datetime | None = Field(
        default=None, validation_alias="sentAt", serialization_alias="sentAt"
    )
    url: str | None = None


class GetOrganizationsResponse(RootModel[list["GetOrganizationsResponseItem"]]):
    """Response for getOrganizations operation."""


class GetOrganizationsResponseItem(_BaseSchema):
    """Schema for GetOrganizationsResponseItem."""

    id: str
    name: str | None = None
    url: str | None = None
    api: OrganizationsApi | None = None
    licensing: OrganizationsLicensing | None = None
    cloud: OrganizationsCloud | None = None
    management: OrganizationsManagement | None = None


class MoveOrganizationLicensesResponse(_BaseSchema):
    """Response for moveOrganizationLicenses operation."""

    dest_organization_id: str | None = Field(
        default=None,
        validation_alias="destOrganizationId",
        serialization_alias="destOrganizationId",
    )
    license_ids: list[str] = Field(
        default_factory=list, validation_alias="licenseIds", serialization_alias="licenseIds"
    )


class MoveOrganizationLicensesSeatsResponse(_BaseSchema):
    """Response for moveOrganizationLicensesSeats operation."""

    dest_organization_id: str | None = Field(
        default=None,
        validation_alias="destOrganizationId",
        serialization_alias="destOrganizationId",
    )
    license_id: str | None = Field(
        default=None, validation_alias="licenseId", serialization_alias="licenseId"
    )
    seat_count: int | None = Field(
        default=None, validation_alias="seatCount", serialization_alias="seatCount"
    )


class OrganizationsAccessList(_BaseSchema):
    """AccessList details."""

    vty_in: OrganizationsHost | None = Field(
        default=None, validation_alias="vtyIn", serialization_alias="vtyIn"
    )
    vty_out: OrganizationsHost | None = Field(
        default=None, validation_alias="vtyOut", serialization_alias="vtyOut"
    )


class OrganizationsActionsItem(_BaseSchema):
    """Schema for OrganizationsActionsItem."""

    resource: str
    operation: str
    body: dict[str, Any] | None = None


class OrganizationsAddressesItem(_BaseSchema):
    """Schema for OrganizationsAddressesItem."""

    protocol: str | None = None
    assignment_mode: str | None = Field(
        default=None, validation_alias="assignmentMode", serialization_alias="assignmentMode"
    )
    address: str | None = None
    gateway: str | None = None
    nameservers: OrganizationsNameservers | None = None
    public: OrganizationsPublic | None = None
    vlan: CreateOrganizationActionBatchCallbackHttpServer | None = None


class OrganizationsAdminSettings(_BaseSchema):
    """Settings for describing which kinds of admins this policy applies to."""

    applies_to: str | None = Field(
        default=None, validation_alias="appliesTo", serialization_alias="appliesTo"
    )
    values: list[str] = Field(default_factory=list)


class OrganizationsAlertCondition(_BaseSchema):
    """The conditions that determine if the alert triggers."""

    duration: int | None = None
    window: int | None = None
    bit_rate_bps: int | None = None
    interface: str | None = None


class OrganizationsApi(_BaseSchema):
    """API related settings."""

    enabled: bool | None = None


class OrganizationsApiAuthenticationIpRestrictionsForKeys(_BaseSchema):
    """Details for API-only IP restrictions."""

    enabled: bool | None = None
    ranges: list[str] = Field(default_factory=list)


class OrganizationsAssignedItem(_BaseSchema):
    """Schema for OrganizationsAssignedItem."""

    name: str | None = None
    type_: str | None = Field(default=None, validation_alias="type", serialization_alias="type")
    id: str | None = None
    limit_to: list[OrganizationsLimitToItem] = Field(
        default_factory=list, validation_alias="limitTo", serialization_alias="limitTo"
    )


class OrganizationsAuthentication(_BaseSchema):
    """VTY AAA authentication."""

    group: OrganizationsHost | None = None


class OrganizationsAutoLocate(_BaseSchema):
    """The auto locate position for this device."""

    lat: float | None = None
    lng: float | None = None


class OrganizationsAverage(_BaseSchema):
    """Average utilization of the appliance."""

    percentage: float | None = None


class OrganizationsByAlertTypeItem(_BaseSchema):
    """Schema for OrganizationsByAlertTypeItem."""

    type_: str | None = Field(default=None, validation_alias="type", serialization_alias="type")
    informational: int | None = None
    warning: int | None = None
    critical: int | None = None


class OrganizationsByProductTypeItem(_BaseSchema):
    """Schema for OrganizationsByProductTypeItem."""

    product_type: str | None = Field(
        default=None, validation_alias="productType", serialization_alias="productType"
    )
    counts: OrganizationsCountsByStatus | None = None


class OrganizationsByProductTypeItem2(_BaseSchema):
    """Schema for OrganizationsByProductTypeItem2."""

    product_type: str | None = Field(
        default=None, validation_alias="productType", serialization_alias="productType"
    )
    url: str | None = None


class OrganizationsCameraItem(_BaseSchema):
    """Schema for OrganizationsCameraItem."""

    org_wide: bool | None = Field(
        default=None, validation_alias="orgWide", serialization_alias="orgWide"
    )
    access: str | None = None


class OrganizationsClient(_BaseSchema):
    """Client information."""

    id: str | None = None
    type_: str | None = Field(default=None, validation_alias="type", serialization_alias="type")


class OrganizationsClient2(_BaseSchema):
    """Client information."""

    id: str | None = None
    type_: str | None = Field(default=None, validation_alias="type", serialization_alias="type")


class OrganizationsClient3(_BaseSchema):
    """Client of the packet capture file."""

    id: str | None = None
    mac: str | None = None


class OrganizationsClients(_BaseSchema):
    """Clients info."""

    counts: GetOrganizationClientsOverviewResponseCounts | None = None


class OrganizationsClients2(_BaseSchema):
    """Network clients data."""

    counts: GetOrganizationClientsOverviewResponseCounts | None = None
    usage: OrganizationsUsage4 | None = None


class OrganizationsCloud(_BaseSchema):
    """Data for this organization."""

    region: OrganizationsRegion | None = None


class OrganizationsCodesByIntervalResponseCountsItem(_BaseSchema):
    """Schema for OrganizationsCodesByIntervalResponseCountsItem."""

    code: int | None = None
    count: int | None = None


class OrganizationsCompleted(_BaseSchema):
    """Auto locate job progress information."""

    percentage: int | None = None


class OrganizationsComponents(_BaseSchema):
    """Components."""

    power_supplies: list[OrganizationsPowerSuppliesItem] = Field(
        default_factory=list, validation_alias="powerSupplies", serialization_alias="powerSupplies"
    )


class OrganizationsConfigParams(_BaseSchema):
    """Params used in order to connect to the device."""

    tunnel: OrganizationsTunnel | None = None
    cloud_static_ip: str | None = Field(
        default=None, validation_alias="cloudStaticIp", serialization_alias="cloudStaticIp"
    )
    user: OrganizationsUser | None = None


class OrganizationsCounts(_BaseSchema):
    """Object containing counts."""

    packets: GetOrganizationClientsOverviewResponseCounts | None = None


class OrganizationsCounts2(_BaseSchema):
    """Counts for this floor plan."""

    devices: GetOrganizationClientsOverviewResponseCounts | None = None


class OrganizationsCountsBySeverityItem(_BaseSchema):
    """Schema for OrganizationsCountsBySeverityItem."""

    type_: str = Field(validation_alias="type", serialization_alias="type")
    count: int


class OrganizationsCountsByStatus(_BaseSchema):
    """byStatus."""

    online: int | None = None
    alerting: int | None = None
    offline: int | None = None
    dormant: int | None = None


class OrganizationsCountsByStatus2(_BaseSchema):
    """Device counts grouped by EOX status."""

    end_of_sale: GetOrganizationClientsOverviewResponseCounts | None = Field(
        default=None, validation_alias="endOfSale", serialization_alias="endOfSale"
    )
    end_of_support: GetOrganizationClientsOverviewResponseCounts | None = Field(
        default=None, validation_alias="endOfSupport", serialization_alias="endOfSupport"
    )
    near_end_of_support: GetOrganizationClientsOverviewResponseCounts | None = Field(
        default=None, validation_alias="nearEndOfSupport", serialization_alias="nearEndOfSupport"
    )


class OrganizationsCreatedResourcesItem(_BaseSchema):
    """Schema for OrganizationsCreatedResourcesItem."""

    id: str | None = None
    uri: str | None = None


class OrganizationsCritical(_BaseSchema):
    """Data for the critical threshold."""

    threshold_in_days: int | None = Field(
        default=None, validation_alias="thresholdInDays", serialization_alias="thresholdInDays"
    )
    expiring_count: int | None = Field(
        default=None, validation_alias="expiringCount", serialization_alias="expiringCount"
    )


class OrganizationsCustomLogo(_BaseSchema):
    """Properties describing the custom logo attached to the branding policy."""

    enabled: bool | None = None
    image: OrganizationsImage | None = None


class OrganizationsDescriptions(_BaseSchema):
    """Descriptions of the early access feature."""

    short: str | None = None
    long: str | None = None


class OrganizationsDetails(_BaseSchema):
    """Details about the status changes."""

    old: list[OrganizationsDetailsItem] = Field(default_factory=list)
    new: list[OrganizationsDetailsItem] = Field(default_factory=list)


class OrganizationsDetailsItem(_BaseSchema):
    """Schema for OrganizationsDetailsItem."""

    name: str | None = None
    value: str | None = None


class OrganizationsDetailsItem2(_BaseSchema):
    """Schema for OrganizationsDetailsItem2."""

    name: str | None = None
    value: str | None = None
    product_type: str | None = Field(
        default=None, validation_alias="productType", serialization_alias="productType"
    )


class OrganizationsDevice(_BaseSchema):
    """Device information."""

    serial: str | None = None
    name: str | None = None
    product_type: str | None = Field(
        default=None, validation_alias="productType", serialization_alias="productType"
    )
    model: str | None = None


class OrganizationsDevice2(_BaseSchema):
    """One of the device(s) of the packet capture file."""

    name: str | None = None
    serial: str | None = None


class OrganizationsDevice3(_BaseSchema):
    """Device associated to the schedule."""

    serial: str | None = None
    switchports: str | None = None
    interface: str | None = None


class OrganizationsDevice4(_BaseSchema):
    """Represents the details of an imported device."""

    url: str | None = None
    created: bool | None = None
    status: str | None = None


class OrganizationsDevices(_BaseSchema):
    """Network device information."""

    by_product_type: list[OrganizationsByProductTypeItem2] = Field(
        default_factory=list, validation_alias="byProductType", serialization_alias="byProductType"
    )


class OrganizationsDevicesItem(_BaseSchema):
    """Schema for OrganizationsDevicesItem."""

    url: str | None = None
    name: str | None = None
    order: int | None = None
    product_type: str | None = Field(
        default=None, validation_alias="productType", serialization_alias="productType"
    )
    serial: str | None = None
    mac: str | None = None
    imei: str | None = None
    lldp: OrganizationsLldp | None = None


class OrganizationsDevicesItem2(_BaseSchema):
    """Schema for OrganizationsDevicesItem2."""

    device: OrganizationsDevice3 | None = None


class OrganizationsDevicesItem3(_BaseSchema):
    """Schema for OrganizationsDevicesItem3."""

    quantity: int | None = None
    sku: str | None = None
    description: str | None = None


class OrganizationsEox(_BaseSchema):
    """End of life information for the device."""

    status: str | None = None
    end_of_sale_at: datetime | None = Field(
        default=None, validation_alias="endOfSaleAt", serialization_alias="endOfSaleAt"
    )
    end_of_support_at: datetime | None = Field(
        default=None, validation_alias="endOfSupportAt", serialization_alias="endOfSupportAt"
    )


class OrganizationsErrorsItem(_BaseSchema):
    """Schema for OrganizationsErrorsItem."""

    source: str | None = None
    type_: str | None = Field(default=None, validation_alias="type", serialization_alias="type")


class OrganizationsFile(_BaseSchema):
    """Object containing information about the file."""

    size: int | None = None


class OrganizationsFree(_BaseSchema):
    """Information regarding memory availability on the device over the interval."""

    minimum: int | None = None
    maximum: int | None = None
    median: int | None = None


class OrganizationsFromVersion(_BaseSchema):
    """The initial version of the device."""

    id: str | None = None
    short_name: str | None = Field(
        default=None, validation_alias="shortName", serialization_alias="shortName"
    )
    release_date: str | None = Field(
        default=None, validation_alias="releaseDate", serialization_alias="releaseDate"
    )


class OrganizationsHelpSettings(_BaseSchema):
    """Settings for describing the modifications to various Help page features. Each property in
    this object accepts one of 'default or inherit' (do not modify functionality), 'hide'
    (remove the section from Dashboard), or 'show' (always show the section on Dashboard). Some
    properties in this object also accept custom HTML used to replace the section on Dashboard;
    see the documentation for each property to see the allowed values.
    """

    help_tab: str | None = Field(
        default=None, validation_alias="helpTab", serialization_alias="helpTab"
    )
    get_help_subtab: str | None = Field(
        default=None, validation_alias="getHelpSubtab", serialization_alias="getHelpSubtab"
    )
    community_subtab: str | None = Field(
        default=None, validation_alias="communitySubtab", serialization_alias="communitySubtab"
    )
    cases_subtab: str | None = Field(
        default=None, validation_alias="casesSubtab", serialization_alias="casesSubtab"
    )
    data_protection_requests_subtab: str | None = Field(
        default=None,
        validation_alias="dataProtectionRequestsSubtab",
        serialization_alias="dataProtectionRequestsSubtab",
    )
    get_help_subtab_knowledge_base_search: str | None = Field(
        default=None,
        validation_alias="getHelpSubtabKnowledgeBaseSearch",
        serialization_alias="getHelpSubtabKnowledgeBaseSearch",
    )
    universal_search_knowledge_base_search: str | None = Field(
        default=None,
        validation_alias="universalSearchKnowledgeBaseSearch",
        serialization_alias="universalSearchKnowledgeBaseSearch",
    )
    cisco_meraki_product_documentation: str | None = Field(
        default=None,
        validation_alias="ciscoMerakiProductDocumentation",
        serialization_alias="ciscoMerakiProductDocumentation",
    )
    support_contact_info: str | None = Field(
        default=None,
        validation_alias="supportContactInfo",
        serialization_alias="supportContactInfo",
    )
    new_features_subtab: str | None = Field(
        default=None, validation_alias="newFeaturesSubtab", serialization_alias="newFeaturesSubtab"
    )
    firewall_info_subtab: str | None = Field(
        default=None,
        validation_alias="firewallInfoSubtab",
        serialization_alias="firewallInfoSubtab",
    )
    api_docs_subtab: str | None = Field(
        default=None, validation_alias="apiDocsSubtab", serialization_alias="apiDocsSubtab"
    )
    hardware_replacements_subtab: str | None = Field(
        default=None,
        validation_alias="hardwareReplacementsSubtab",
        serialization_alias="hardwareReplacementsSubtab",
    )
    sm_forums: str | None = Field(
        default=None, validation_alias="smForums", serialization_alias="smForums"
    )
    help_widget: str | None = Field(
        default=None, validation_alias="helpWidget", serialization_alias="helpWidget"
    )


class OrganizationsHighAvailability(_BaseSchema):
    """Device High Availability Capabilities."""

    enabled: bool | None = None
    role: str | None = None


class OrganizationsHost(_BaseSchema):
    """Where organization data is hosted."""

    name: str | None = None


class OrganizationsImage(_BaseSchema):
    """Properties of the image."""

    preview: OrganizationsPreview | None = None


class OrganizationsInitiator(_BaseSchema):
    """User who initiated the move."""

    admin: CreateOrganizationActionBatchCallbackHttpServer | None = None


class OrganizationsIntervalsItem(_BaseSchema):
    """Schema for OrganizationsIntervalsItem."""

    start_ts: datetime | None = Field(
        default=None, validation_alias="startTs", serialization_alias="startTs"
    )
    end_ts: datetime | None = Field(
        default=None, validation_alias="endTs", serialization_alias="endTs"
    )
    memory: OrganizationsMemory | None = None


class OrganizationsJobsItem(_BaseSchema):
    """Schema for OrganizationsJobsItem."""

    id: str | None = None
    status: str | None = None
    scheduled_at: datetime | None = Field(
        default=None, validation_alias="scheduledAt", serialization_alias="scheduledAt"
    )
    completed: OrganizationsCompleted | None = None
    ranging: OrganizationsRanging | None = None
    gnss: OrganizationsRanging | None = None
    errors: list[OrganizationsErrorsItem] = Field(default_factory=list)


class OrganizationsLicenseTypesCounts(_BaseSchema):
    """Aggregated count data for the license type."""

    unassigned: int | None = None


class OrganizationsLicensing(_BaseSchema):
    """Licensing related settings."""

    model: str | None = None


class OrganizationsLimitToItem(_BaseSchema):
    """Schema for OrganizationsLimitToItem."""

    appliance: bool | None = None
    ssids: list[OrganizationsSsidsItem] = Field(default_factory=list)


class OrganizationsLldp(_BaseSchema):
    """Port of affected device."""

    port: str | None = None


class OrganizationsManagement(_BaseSchema):
    """Information about the organization's management system."""

    details: list[OrganizationsDetailsItem] = Field(default_factory=list)


class OrganizationsMemory(_BaseSchema):
    """Information regarding memory usage and availability on the device."""

    used: OrganizationsUsed2 | None = None
    free: OrganizationsFree | None = None


class OrganizationsNameservers(_BaseSchema):
    """Device DNS nameserver information."""

    addresses: list[str] = Field(default_factory=list)


class OrganizationsNetwork(_BaseSchema):
    """Network details."""

    name: str
    id: str


class OrganizationsNetwork2(_BaseSchema):
    """Network information."""

    id: str | None = None
    name: str | None = None
    url: str | None = None
    tags: list[str] = Field(default_factory=list)


class OrganizationsNetwork3(_BaseSchema):
    """Information regarding the network the device belongs to."""

    id: str | None = None
    name: str | None = None
    tags: list[str] = Field(default_factory=list)


class OrganizationsNetworksItem(_BaseSchema):
    """Schema for OrganizationsNetworksItem."""

    id: str | None = None
    access: str | None = None


class OrganizationsOld(_BaseSchema):
    """The device that will be cloned."""

    mac: str
    serial: str
    model: str
    name: str | None = None


class OrganizationsOldestActivation(_BaseSchema):
    """Information about the oldest historical license activation."""

    activation_date: str | None = Field(
        default=None, validation_alias="activationDate", serialization_alias="activationDate"
    )
    active_count: int | None = Field(
        default=None, validation_alias="activeCount", serialization_alias="activeCount"
    )


class OrganizationsOptOutEligibilityHelp(_BaseSchema):
    """Additional help information."""

    label: str | None = None
    url: str | None = None


class OrganizationsOrganizations(_BaseSchema):
    """Organizations involved in the network move."""

    source: CreateOrganizationActionBatchCallbackHttpServer | None = None
    target: CreateOrganizationActionBatchCallbackHttpServer | None = None


class OrganizationsPercentages(_BaseSchema):
    """Memory utilization percentages on the device over the interval."""

    maximum: int | None = None


class OrganizationsPermanentlyQueuedLicensesItem(_BaseSchema):
    """Schema for OrganizationsPermanentlyQueuedLicensesItem."""

    id: str | None = None
    license_type: str | None = Field(
        default=None, validation_alias="licenseType", serialization_alias="licenseType"
    )
    license_key: str | None = Field(
        default=None, validation_alias="licenseKey", serialization_alias="licenseKey"
    )
    order_number: str | None = Field(
        default=None, validation_alias="orderNumber", serialization_alias="orderNumber"
    )
    duration_in_days: int | None = Field(
        default=None, validation_alias="durationInDays", serialization_alias="durationInDays"
    )


class OrganizationsPoe(_BaseSchema):
    """PoE info of the power supply."""

    unit: str | None = None
    maximum: int | None = None


class OrganizationsPolicyObjectsItem(_BaseSchema):
    """Schema for OrganizationsPolicyObjectsItem."""

    id: str | None = None
    name: str | None = None


class OrganizationsPowerSuppliesItem(_BaseSchema):
    """Schema for OrganizationsPowerSuppliesItem."""

    slot: int | None = None
    serial: str | None = None
    model: str | None = None
    status: str | None = None
    poe: OrganizationsPoe | None = None


class OrganizationsPreview(_BaseSchema):
    """Preview of the image."""

    url: str | None = None
    expires_at: datetime | None = Field(
        default=None, validation_alias="expiresAt", serialization_alias="expiresAt"
    )


class OrganizationsPublic(_BaseSchema):
    """Public interface information."""

    address: str | None = None


class OrganizationsRanging(_BaseSchema):
    """Ranging status and progress information."""

    status: str | None = None
    completed: OrganizationsCompleted | None = None


class OrganizationsRecipients(_BaseSchema):
    """List of recipients that will recieve the alert."""

    emails: list[str] = Field(default_factory=list)
    http_server_ids: list[str] = Field(
        default_factory=list, validation_alias="httpServerIds", serialization_alias="httpServerIds"
    )


class OrganizationsRecordsClientVpnConnectionsItem(_BaseSchema):
    """Schema for OrganizationsRecordsClientVpnConnectionsItem."""

    remote_ip: str | None = Field(
        default=None, validation_alias="remoteIp", serialization_alias="remoteIp"
    )
    connected_at: int | None = Field(
        default=None, validation_alias="connectedAt", serialization_alias="connectedAt"
    )
    disconnected_at: int | None = Field(
        default=None, validation_alias="disconnectedAt", serialization_alias="disconnectedAt"
    )


class OrganizationsRecordsNetwork(_BaseSchema):
    """The network upon which a client with the given MAC address was found."""

    id: str | None = None
    organization_id: str | None = Field(
        default=None, validation_alias="organizationId", serialization_alias="organizationId"
    )
    name: str | None = None
    product_types: list[str] = Field(
        default_factory=list, validation_alias="productTypes", serialization_alias="productTypes"
    )
    time_zone: str | None = Field(
        default=None, validation_alias="timeZone", serialization_alias="timeZone"
    )
    tags: list[str] = Field(default_factory=list)
    enrollment_string: str | None = Field(
        default=None, validation_alias="enrollmentString", serialization_alias="enrollmentString"
    )
    url: str | None = None
    notes: str | None = None
    is_bound_to_config_template: bool | None = Field(
        default=None,
        validation_alias="isBoundToConfigTemplate",
        serialization_alias="isBoundToConfigTemplate",
    )


class OrganizationsRegion(_BaseSchema):
    """Region info."""

    name: str | None = None
    host: OrganizationsHost | None = None


class OrganizationsResult(_BaseSchema):
    """Result of the network move operation."""

    status: str | None = None
    reason: str | None = None


class OrganizationsRoaming(_BaseSchema):
    """Roaming Status."""

    status: str | None = None


class OrganizationsRootCertificate(_BaseSchema):
    """Root certificate information."""

    content: str | None = None
    name: str | None = None


class OrganizationsRulesItem(_BaseSchema):
    """Schema for OrganizationsRulesItem."""

    policy: str | None = None
    protocol: str | None = None
    src_port: str | None = Field(
        default=None, validation_alias="srcPort", serialization_alias="srcPort"
    )
    dst_port: str | None = Field(
        default=None, validation_alias="dstPort", serialization_alias="dstPort"
    )
    log: bool | None = None
    tcp_established: bool | None = Field(
        default=None, validation_alias="tcpEstablished", serialization_alias="tcpEstablished"
    )


class OrganizationsSchedule(_BaseSchema):
    """Schedule of the packet capture."""

    name: str | None = None
    start_ts: str | None = Field(
        default=None, validation_alias="startTs", serialization_alias="startTs"
    )
    end_ts: str | None = Field(default=None, validation_alias="endTs", serialization_alias="endTs")
    frequency: str | None = None
    weekdays: list[str] = Field(default_factory=list)
    recurrence: int | None = None
    next_capture_ts: str | None = Field(
        default=None, validation_alias="nextCaptureTs", serialization_alias="nextCaptureTs"
    )


class OrganizationsScope(_BaseSchema):
    """Scope of the alert (which devices and networks are affected)."""

    devices: list[OrganizationsDevicesItem] = Field(default_factory=list)
    applications: list[dict[str, Any]] = Field(default_factory=list)
    peers: list[dict[str, Any]] = Field(default_factory=list)
    others: list[dict[str, Any]] = Field(default_factory=list)


class OrganizationsSeats(_BaseSchema):
    """Seat distribution."""

    limit: int | None = None


class OrganizationsSecret(_BaseSchema):
    """Stores the user secret hash."""

    hash_: str | None = Field(default=None, validation_alias="hash", serialization_alias="hash")


class OrganizationsSeveritiesItem(_BaseSchema):
    """Schema for OrganizationsSeveritiesItem."""

    type_: str = Field(validation_alias="type", serialization_alias="type")


class OrganizationsSeverityCountsItem(_BaseSchema):
    """Schema for OrganizationsSeverityCountsItem."""

    type_: str = Field(validation_alias="type", serialization_alias="type")
    count: int


class OrganizationsShippingPending(_BaseSchema):
    """Order items still pending shipment data."""

    devices: list[OrganizationsDevicesItem3] = Field(default_factory=list)


class OrganizationsShippingShipmentsItem(_BaseSchema):
    """Schema for OrganizationsShippingShipmentsItem."""

    shipped_at: datetime | None = Field(
        default=None, validation_alias="shippedAt", serialization_alias="shippedAt"
    )
    number: int | None = None
    devices: list[OrganizationsDevicesItem3] = Field(default_factory=list)


class OrganizationsSignalStat(_BaseSchema):
    """Tower Signal Status (Cellular Signal Stats)."""

    rsrp: str | None = None
    rsrq: str | None = None


class OrganizationsSlotsItem(_BaseSchema):
    """Schema for OrganizationsSlotsItem."""

    number: int | None = None
    serial: str | None = None
    model: str | None = None
    status: str | None = None


class OrganizationsSoonestActivation(_BaseSchema):
    """Information about the soonest forthcoming license activation."""

    activation_date: str | None = Field(
        default=None, validation_alias="activationDate", serialization_alias="activationDate"
    )
    to_activate_count: int | None = Field(
        default=None, validation_alias="toActivateCount", serialization_alias="toActivateCount"
    )


class OrganizationsSourceGroup(_BaseSchema):
    """The source group for the given adaptive policy."""

    id: str | None = None
    name: str | None = None
    sgt: int | None = None


class OrganizationsSsidsItem(_BaseSchema):
    """Schema for OrganizationsSsidsItem."""

    number: int | None = None


class OrganizationsStaged(_BaseSchema):
    """Staged upgrade."""

    group: CreateOrganizationActionBatchCallbackHttpServer | None = None


class OrganizationsStatesActive(_BaseSchema):
    """Data for active licenses."""

    count: int | None = None


class OrganizationsStatesExpiring(_BaseSchema):
    """Data for expiring licenses."""

    count: int | None = None
    critical: OrganizationsCritical | None = None
    warning: OrganizationsCritical | None = None


class OrganizationsStatesUnused(_BaseSchema):
    """Data for unused licenses."""

    count: int | None = None
    soonest_activation: OrganizationsSoonestActivation | None = Field(
        default=None, validation_alias="soonestActivation", serialization_alias="soonestActivation"
    )


class OrganizationsStatesUnusedActive(_BaseSchema):
    """Data for unused, active licenses."""

    count: int | None = None
    oldest_activation: OrganizationsOldestActivation | None = Field(
        default=None, validation_alias="oldestActivation", serialization_alias="oldestActivation"
    )


class OrganizationsStatus(_BaseSchema):
    """Status of action batch."""

    completed: bool | None = None
    failed: bool | None = None
    errors: list[str] = Field(default_factory=list)
    created_resources: list[OrganizationsCreatedResourcesItem] = Field(
        validation_alias="createdResources", serialization_alias="createdResources"
    )


class OrganizationsStatuses(_BaseSchema):
    """Network device statuses."""

    overall: str | None = None
    by_product_type: list[OrganizationsByProductTypeItem] = Field(
        default_factory=list, validation_alias="byProductType", serialization_alias="byProductType"
    )


class OrganizationsSubscriptionsCounts(_BaseSchema):
    """Numeric breakdown of subscription counts."""

    seats: OrganizationsSeats | None = None


class OrganizationsSwapsDevices(_BaseSchema):
    """The devices involved in the swap."""

    old: OrganizationsOld
    new: OrganizationsOld


class OrganizationsSystemsManagerCounts(_BaseSchema):
    """Aggregated license count data for Systems Manager."""

    total_seats: int | None = Field(
        default=None, validation_alias="totalSeats", serialization_alias="totalSeats"
    )
    active_seats: int | None = Field(
        default=None, validation_alias="activeSeats", serialization_alias="activeSeats"
    )
    unassigned_seats: int | None = Field(
        default=None, validation_alias="unassignedSeats", serialization_alias="unassignedSeats"
    )
    orgwide_enrolled_devices: int | None = Field(
        default=None,
        validation_alias="orgwideEnrolledDevices",
        serialization_alias="orgwideEnrolledDevices",
    )


class OrganizationsTagsItem(_BaseSchema):
    """Schema for OrganizationsTagsItem."""

    tag: str | None = None
    access: str | None = None


class OrganizationsTimeSeriesItem(_BaseSchema):
    """Schema for OrganizationsTimeSeriesItem."""

    ts: datetime | None = None
    loss_percent: float | None = Field(
        default=None, validation_alias="lossPercent", serialization_alias="lossPercent"
    )
    latency_ms: float | None = Field(
        default=None, validation_alias="latencyMs", serialization_alias="latencyMs"
    )


class OrganizationsToVersion(_BaseSchema):
    """ID of the upgrade's target version."""

    id: str | None = None
    short_name: str | None = Field(
        default=None, validation_alias="shortName", serialization_alias="shortName"
    )
    firmware: str | None = None
    release_type: str | None = Field(
        default=None, validation_alias="releaseType", serialization_alias="releaseType"
    )
    release_date: datetime | None = Field(
        default=None, validation_alias="releaseDate", serialization_alias="releaseDate"
    )


class OrganizationsTotals(_BaseSchema):
    """Totals by Severity."""

    informational: int | None = None
    warning: int | None = None
    critical: int | None = None


class OrganizationsTunnel(_BaseSchema):
    """Configuration options used to connect to the device."""

    mode: str | None = None
    port: str | None = None
    host: str | None = None
    name: str | None = None
    root_certificate: OrganizationsRootCertificate | None = Field(
        default=None, validation_alias="rootCertificate", serialization_alias="rootCertificate"
    )


class OrganizationsUpgrade(_BaseSchema):
    """The devices upgrade details and status."""

    time: str | None = None
    from_version: OrganizationsFromVersion | None = Field(
        default=None, validation_alias="fromVersion", serialization_alias="fromVersion"
    )
    to_version: OrganizationsFromVersion | None = Field(
        default=None, validation_alias="toVersion", serialization_alias="toVersion"
    )
    status: str | None = None
    id: str | None = None
    upgrade_batch_id: str | None = Field(
        default=None, validation_alias="upgradeBatchId", serialization_alias="upgradeBatchId"
    )
    staged: OrganizationsStaged | None = None


class OrganizationsUplinksItem(_BaseSchema):
    """Schema for OrganizationsUplinksItem."""

    interface: str | None = None
    addresses: list[OrganizationsAddressesItem] = Field(default_factory=list)


class OrganizationsUplinksItem2(_BaseSchema):
    """Schema for OrganizationsUplinksItem2."""

    interface: str | None = None
    status: str | None = None
    ip: str | None = None
    gateway: str | None = None
    public_ip: str | None = Field(
        default=None, validation_alias="publicIp", serialization_alias="publicIp"
    )
    primary_dns: str | None = Field(
        default=None, validation_alias="primaryDns", serialization_alias="primaryDns"
    )
    secondary_dns: str | None = Field(
        default=None, validation_alias="secondaryDns", serialization_alias="secondaryDns"
    )
    ip_assigned_by: str | None = Field(
        default=None, validation_alias="ipAssignedBy", serialization_alias="ipAssignedBy"
    )
    provider: str | None = None
    signal_stat: OrganizationsSignalStat | None = Field(
        default=None, validation_alias="signalStat", serialization_alias="signalStat"
    )
    mcc: str | None = None
    mnc: str | None = None
    roaming: OrganizationsRoaming | None = None
    connection_type: str | None = Field(
        default=None, validation_alias="connectionType", serialization_alias="connectionType"
    )
    apn: str | None = None
    dns1: str | None = None
    dns2: str | None = None
    signal_type: str | None = Field(
        default=None, validation_alias="signalType", serialization_alias="signalType"
    )
    mtu: int | None = None
    iccid: str | None = None
    imsi: str | None = None
    msisdn: str | None = None


class OrganizationsUsage(_BaseSchema):
    """Data usage information."""

    total: float | None = None
    upstream: float | None = None
    downstream: float | None = None
    percentage: float | None = None


class OrganizationsUsage2(_BaseSchema):
    """Data usage of the device."""

    total: float | None = None
    percentage: float | None = None


class OrganizationsUsage3(_BaseSchema):
    """Usage info in megabytes."""

    total: float | None = None
    average: float | None = None


class OrganizationsUsage4(_BaseSchema):
    """Network client usage data."""

    upstream: float | None = None
    downstream: float | None = None


class OrganizationsUsage5(_BaseSchema):
    """Energy usage of the switch."""

    total: float | None = None


class OrganizationsUsageOverall(_BaseSchema):
    """Overall data usage of all clients across organization."""

    total: float | None = None
    downstream: float | None = None
    upstream: float | None = None


class OrganizationsUsed(_BaseSchema):
    """Information regarding memory usage on the device over the entire timespan."""

    median: int | None = None


class OrganizationsUsed2(_BaseSchema):
    """Information regarding memory usage on the device over the interval."""

    minimum: int | None = None
    maximum: int | None = None
    median: int | None = None
    percentages: OrganizationsPercentages | None = None


class OrganizationsUser(_BaseSchema):
    """User credentials used to connect to the device."""

    public_key: str | None = Field(
        default=None, validation_alias="publicKey", serialization_alias="publicKey"
    )
    username: str | None = None
    secret: OrganizationsSecret | None = None


class OrganizationsUtilization(_BaseSchema):
    """Utilization of the appliance."""

    average: OrganizationsAverage | None = None


class PreviewOrganizationInventoryOrdersResponse(_BaseSchema):
    """Response for previewOrganizationInventoryOrders operation."""

    claim_id: str | None = Field(
        default=None, validation_alias="claimId", serialization_alias="claimId"
    )
    number: str | None = None
    shipping: PreviewOrganizationInventoryOrdersResponseShipping | None = None
    subscriptions: list[ClaimOrganizationInventoryOrdersResponseSubscriptionsItem] = Field(
        default_factory=list
    )


class PreviewOrganizationInventoryOrdersResponseShipping(_BaseSchema):
    """All shipping information for this order."""

    shipments: list[OrganizationsShippingShipmentsItem] = Field(default_factory=list)
    pending: OrganizationsShippingPending | None = None


class ReleaseFromOrganizationInventoryResponse(_BaseSchema):
    """Response for releaseFromOrganizationInventory operation."""

    serials: list[str] = Field(default_factory=list)


class RenewOrganizationLicensesSeatsResponse(_BaseSchema):
    """Response for renewOrganizationLicensesSeats operation."""

    resulting_licenses: list[AssignOrganizationLicensesSeatsResponseResultingLicensesItem] = Field(
        default_factory=list,
        validation_alias="resultingLicenses",
        serialization_alias="resultingLicenses",
    )


class ReorderOrganizationDevicesPacketCaptureSchedulesOrderItem(_BaseSchema):
    """Item schema for order."""

    schedule_id: str | None = Field(
        default=None, validation_alias="scheduleId", serialization_alias="scheduleId"
    )
    priority: int | None = None


class ReorderOrganizationDevicesPacketCaptureSchedulesResponse(_BaseSchema):
    """Response for reorderOrganizationDevicesPacketCaptureSchedules operation."""

    updated_priorities: list[
        ReorderOrganizationDevicesPacketCaptureSchedulesResponseUpdatedPrioritiesItem
    ] = Field(
        default_factory=list,
        validation_alias="updatedPriorities",
        serialization_alias="updatedPriorities",
    )


class ReorderOrganizationDevicesPacketCaptureSchedulesResponseUpdatedPrioritiesItem(_BaseSchema):
    """Schema for ReorderOrganizationDevicesPacketCaptureSchedulesResponseUpdatedPrioritiesItem."""

    schedule_id: str | None = Field(
        default=None, validation_alias="scheduleId", serialization_alias="scheduleId"
    )
    priority: int | None = None


class StopOrganizationDevicesPacketCaptureCaptureResponse(_BaseSchema):
    """Response for stopOrganizationDevicesPacketCaptureCapture operation."""

    capture_id: str | None = Field(
        default=None, validation_alias="captureId", serialization_alias="captureId"
    )
    network: OrganizationsPolicyObjectsItem | None = None
    devices: list[dict[str, Any]] = Field(default_factory=list)
    device: OrganizationsDevice2 | None = None
    admin: OrganizationsPolicyObjectsItem | None = None
    client: OrganizationsClient3 | None = None
    details: list[OrganizationsDetailsItem2] = Field(default_factory=list)
    name: str | None = None
    start_ts: str | None = Field(
        default=None, validation_alias="startTs", serialization_alias="startTs"
    )
    ports: str | None = None
    status: str | None = None
    error_message: str | None = Field(
        default=None, validation_alias="errorMessage", serialization_alias="errorMessage"
    )
    destination: str | None = None
    process: str | None = None
    file: OrganizationsFile | None = None
    duration: int | None = None
    filter_expression: str | None = Field(
        default=None, validation_alias="filterExpression", serialization_alias="filterExpression"
    )
    counts: OrganizationsCounts | None = None
    interface: str | None = None


class UpdateOrganizationActionBatchResponse(_BaseSchema):
    """Response for updateOrganizationActionBatch operation."""

    id: str | None = None
    organization_id: str | None = Field(
        default=None, validation_alias="organizationId", serialization_alias="organizationId"
    )
    confirmed: bool | None = None
    synchronous: bool | None = None
    status: OrganizationsStatus | None = None
    actions: list[OrganizationsActionsItem]


class UpdateOrganizationAdaptivePolicyAclResponse(_BaseSchema):
    """Response for updateOrganizationAdaptivePolicyAcl operation."""

    acl_id: str | None = Field(default=None, validation_alias="aclId", serialization_alias="aclId")
    name: str | None = None
    description: str | None = None
    ip_version: str | None = Field(
        default=None, validation_alias="ipVersion", serialization_alias="ipVersion"
    )
    rules: list[OrganizationsRulesItem] = Field(default_factory=list)
    created_at: datetime | None = Field(
        default=None, validation_alias="createdAt", serialization_alias="createdAt"
    )
    updated_at: datetime | None = Field(
        default=None, validation_alias="updatedAt", serialization_alias="updatedAt"
    )


class UpdateOrganizationAdaptivePolicyAclRulesItem(_BaseSchema):
    """Item schema for rules."""

    policy: str
    protocol: str
    src_port: str | None = Field(
        default=None, validation_alias="srcPort", serialization_alias="srcPort"
    )
    dst_port: str | None = Field(
        default=None, validation_alias="dstPort", serialization_alias="dstPort"
    )
    log: bool | None = None
    tcp_established: bool | None = Field(
        default=None, validation_alias="tcpEstablished", serialization_alias="tcpEstablished"
    )


class UpdateOrganizationAdaptivePolicyGroupPolicyObjectsItem(_BaseSchema):
    """Item schema for policyObjects."""

    id: str | None = None
    name: str | None = None


class UpdateOrganizationAdaptivePolicyGroupResponse(_BaseSchema):
    """Response for updateOrganizationAdaptivePolicyGroup operation."""

    group_id: str | None = Field(
        default=None, validation_alias="groupId", serialization_alias="groupId"
    )
    name: str | None = None
    sgt: int | None = None
    description: str | None = None
    policy_objects: list[OrganizationsPolicyObjectsItem] = Field(
        default_factory=list, validation_alias="policyObjects", serialization_alias="policyObjects"
    )
    is_default_group: bool | None = Field(
        default=None, validation_alias="isDefaultGroup", serialization_alias="isDefaultGroup"
    )
    required_ip_mappings: list[str] = Field(
        default_factory=list,
        validation_alias="requiredIpMappings",
        serialization_alias="requiredIpMappings",
    )
    created_at: str | None = Field(
        default=None, validation_alias="createdAt", serialization_alias="createdAt"
    )
    updated_at: str | None = Field(
        default=None, validation_alias="updatedAt", serialization_alias="updatedAt"
    )


class UpdateOrganizationAdaptivePolicyPolicyAclsItem(_BaseSchema):
    """Item schema for acls."""

    id: str | None = None
    name: str | None = None


class UpdateOrganizationAdaptivePolicyPolicyDestinationGroup(_BaseSchema):
    """The destination adaptive policy group (requires one unique attribute)."""

    id: str | None = None
    name: str | None = None
    sgt: int | None = None


class UpdateOrganizationAdaptivePolicyPolicyResponse(_BaseSchema):
    """Response for updateOrganizationAdaptivePolicyPolicy operation."""

    adaptive_policy_id: str | None = Field(
        default=None, validation_alias="adaptivePolicyId", serialization_alias="adaptivePolicyId"
    )
    source_group: OrganizationsSourceGroup | None = Field(
        default=None, validation_alias="sourceGroup", serialization_alias="sourceGroup"
    )
    destination_group: OrganizationsSourceGroup | None = Field(
        default=None, validation_alias="destinationGroup", serialization_alias="destinationGroup"
    )
    acls: list[OrganizationsPolicyObjectsItem] = Field(default_factory=list)
    last_entry_rule: str | None = Field(
        default=None, validation_alias="lastEntryRule", serialization_alias="lastEntryRule"
    )
    created_at: str | None = Field(
        default=None, validation_alias="createdAt", serialization_alias="createdAt"
    )
    updated_at: str | None = Field(
        default=None, validation_alias="updatedAt", serialization_alias="updatedAt"
    )


class UpdateOrganizationAdaptivePolicyPolicySourceGroup(_BaseSchema):
    """The source adaptive policy group (requires one unique attribute)."""

    id: str | None = None
    name: str | None = None
    sgt: int | None = None


class UpdateOrganizationAdaptivePolicySettingsResponse(_BaseSchema):
    """Response for updateOrganizationAdaptivePolicySettings operation."""

    enabled_networks: list[str] = Field(
        default_factory=list,
        validation_alias="enabledNetworks",
        serialization_alias="enabledNetworks",
    )


class UpdateOrganizationAdminNetworksItem(_BaseSchema):
    """Item schema for networks."""

    id: str
    access: str


class UpdateOrganizationAdminResponse(_BaseSchema):
    """Response for updateOrganizationAdmin operation."""

    id: str | None = None
    name: str | None = None
    email: str | None = None
    org_access: str | None = Field(
        default=None, validation_alias="orgAccess", serialization_alias="orgAccess"
    )
    account_status: str | None = Field(
        default=None, validation_alias="accountStatus", serialization_alias="accountStatus"
    )
    two_factor_auth_enabled: bool | None = Field(
        default=None,
        validation_alias="twoFactorAuthEnabled",
        serialization_alias="twoFactorAuthEnabled",
    )
    has_api_key: bool | None = Field(
        default=None, validation_alias="hasApiKey", serialization_alias="hasApiKey"
    )
    last_active: datetime | None = Field(
        default=None, validation_alias="lastActive", serialization_alias="lastActive"
    )
    tags: list[OrganizationsTagsItem] = Field(default_factory=list)
    networks: list[OrganizationsNetworksItem] = Field(default_factory=list)
    authentication_method: str | None = Field(
        default=None,
        validation_alias="authenticationMethod",
        serialization_alias="authenticationMethod",
    )


class UpdateOrganizationAdminTagsItem(_BaseSchema):
    """Item schema for tags."""

    tag: str
    access: str


class UpdateOrganizationAlertsProfileAlertCondition(_BaseSchema):
    """The conditions that determine if the alert triggers."""

    duration: int | None = None
    window: int | None = None
    bit_rate_bps: int | None = None
    loss_ratio: float | None = None
    latency_ms: int | None = None
    jitter_ms: int | None = None
    mos: float | None = None
    interface: str | None = None


class UpdateOrganizationAlertsProfileRecipients(_BaseSchema):
    """List of recipients that will recieve the alert."""

    emails: list[str] = Field(default_factory=list)
    http_server_ids: list[str] = Field(
        default_factory=list, validation_alias="httpServerIds", serialization_alias="httpServerIds"
    )


class UpdateOrganizationAlertsProfileResponse(_BaseSchema):
    """Response for updateOrganizationAlertsProfile operation."""

    id: str | None = None
    type_: str | None = Field(default=None, validation_alias="type", serialization_alias="type")
    enabled: bool | None = None
    alert_condition: OrganizationsAlertCondition | None = Field(
        default=None, validation_alias="alertCondition", serialization_alias="alertCondition"
    )
    recipients: OrganizationsRecipients | None = None
    network_tags: list[str] = Field(
        default_factory=list, validation_alias="networkTags", serialization_alias="networkTags"
    )
    description: str | None = None


class UpdateOrganizationApi(_BaseSchema):
    """API-specific settings."""

    enabled: bool | None = None


class UpdateOrganizationBrandingPoliciesPrioritiesResponse(_BaseSchema):
    """Response for updateOrganizationBrandingPoliciesPriorities operation."""

    branding_policy_ids: list[str] = Field(
        default_factory=list,
        validation_alias="brandingPolicyIds",
        serialization_alias="brandingPolicyIds",
    )


class UpdateOrganizationBrandingPolicyAdminSettings(_BaseSchema):
    """Settings for describing which kinds of admins this policy applies to."""

    applies_to: str | None = Field(
        default=None, validation_alias="appliesTo", serialization_alias="appliesTo"
    )
    values: list[str] = Field(default_factory=list)


class UpdateOrganizationBrandingPolicyCustomLogo(_BaseSchema):
    """Properties describing the custom logo attached to the branding policy."""

    enabled: bool | None = None
    image: CreateOrganizationBrandingPolicyCustomLogoImage | None = None


class UpdateOrganizationBrandingPolicyHelpSettings(_BaseSchema):
    """Settings for describing the modifications to various Help page features. Each property in
    this object accepts one of 'default or inherit' (do not modify functionality), 'hide'
    (remove the section from Dashboard), or 'show' (always show the section on Dashboard). Some
    properties in this object also accept custom HTML used to replace the section on Dashboard;
    see the documentation for each property to see the allowed values.
    """

    help_tab: str | None = Field(
        default=None, validation_alias="helpTab", serialization_alias="helpTab"
    )
    get_help_subtab: str | None = Field(
        default=None, validation_alias="getHelpSubtab", serialization_alias="getHelpSubtab"
    )
    community_subtab: str | None = Field(
        default=None, validation_alias="communitySubtab", serialization_alias="communitySubtab"
    )
    cases_subtab: str | None = Field(
        default=None, validation_alias="casesSubtab", serialization_alias="casesSubtab"
    )
    data_protection_requests_subtab: str | None = Field(
        default=None,
        validation_alias="dataProtectionRequestsSubtab",
        serialization_alias="dataProtectionRequestsSubtab",
    )
    get_help_subtab_knowledge_base_search: str | None = Field(
        default=None,
        validation_alias="getHelpSubtabKnowledgeBaseSearch",
        serialization_alias="getHelpSubtabKnowledgeBaseSearch",
    )
    universal_search_knowledge_base_search: str | None = Field(
        default=None,
        validation_alias="universalSearchKnowledgeBaseSearch",
        serialization_alias="universalSearchKnowledgeBaseSearch",
    )
    cisco_meraki_product_documentation: str | None = Field(
        default=None,
        validation_alias="ciscoMerakiProductDocumentation",
        serialization_alias="ciscoMerakiProductDocumentation",
    )
    support_contact_info: str | None = Field(
        default=None,
        validation_alias="supportContactInfo",
        serialization_alias="supportContactInfo",
    )
    new_features_subtab: str | None = Field(
        default=None, validation_alias="newFeaturesSubtab", serialization_alias="newFeaturesSubtab"
    )
    firewall_info_subtab: str | None = Field(
        default=None,
        validation_alias="firewallInfoSubtab",
        serialization_alias="firewallInfoSubtab",
    )
    api_docs_subtab: str | None = Field(
        default=None, validation_alias="apiDocsSubtab", serialization_alias="apiDocsSubtab"
    )
    hardware_replacements_subtab: str | None = Field(
        default=None,
        validation_alias="hardwareReplacementsSubtab",
        serialization_alias="hardwareReplacementsSubtab",
    )
    sm_forums: str | None = Field(
        default=None, validation_alias="smForums", serialization_alias="smForums"
    )
    help_widget: str | None = Field(
        default=None, validation_alias="helpWidget", serialization_alias="helpWidget"
    )


class UpdateOrganizationBrandingPolicyResponse(_BaseSchema):
    """Response for updateOrganizationBrandingPolicy operation."""

    name: str | None = None
    enabled: bool | None = None
    admin_settings: OrganizationsAdminSettings | None = Field(
        default=None, validation_alias="adminSettings", serialization_alias="adminSettings"
    )
    help_settings: OrganizationsHelpSettings | None = Field(
        default=None, validation_alias="helpSettings", serialization_alias="helpSettings"
    )
    custom_logo: OrganizationsCustomLogo | None = Field(
        default=None, validation_alias="customLogo", serialization_alias="customLogo"
    )


class UpdateOrganizationConfigTemplateResponse(_BaseSchema):
    """Response for updateOrganizationConfigTemplate operation."""

    id: str | None = None
    name: str | None = None
    product_types: list[str] = Field(
        default_factory=list, validation_alias="productTypes", serialization_alias="productTypes"
    )
    time_zone: str | None = Field(
        default=None, validation_alias="timeZone", serialization_alias="timeZone"
    )


class UpdateOrganizationDevicesPacketCaptureScheduleDevicesItem(_BaseSchema):
    """Item schema for devices."""

    serial: str | None = None
    switchports: str | None = None
    interface: str | None = None


class UpdateOrganizationDevicesPacketCaptureScheduleResponse(_BaseSchema):
    """Response for updateOrganizationDevicesPacketCaptureSchedule operation."""

    schedule_id: str | None = Field(
        default=None, validation_alias="scheduleId", serialization_alias="scheduleId"
    )
    devices: list[OrganizationsDevicesItem2] = Field(default_factory=list)
    name: str | None = None
    admin: OrganizationsPolicyObjectsItem | None = None
    notes: str | None = None
    duration: int | None = None
    filter_expression: str | None = Field(
        default=None, validation_alias="filterExpression", serialization_alias="filterExpression"
    )
    created_at: str | None = Field(
        default=None, validation_alias="createdAt", serialization_alias="createdAt"
    )
    updated_at: str | None = Field(
        default=None, validation_alias="updatedAt", serialization_alias="updatedAt"
    )
    capture_count: int | None = Field(
        default=None, validation_alias="captureCount", serialization_alias="captureCount"
    )
    last_capture_id: str | None = Field(
        default=None, validation_alias="lastCaptureId", serialization_alias="lastCaptureId"
    )
    enabled: bool | None = None
    priority: int | None = None
    schedule: OrganizationsSchedule | None = None
    warnings: list[str] = Field(default_factory=list)


class UpdateOrganizationDevicesPacketCaptureScheduleSchedule(_BaseSchema):
    """Schedule details."""

    name: str | None = None
    start_ts: str | None = Field(
        default=None, validation_alias="startTs", serialization_alias="startTs"
    )
    end_ts: str | None = Field(default=None, validation_alias="endTs", serialization_alias="endTs")
    frequency: str | None = None
    weekdays: list[str] = Field(default_factory=list)
    recurrence: int | None = None


class UpdateOrganizationEarlyAccessFeaturesOptInResponse(_BaseSchema):
    """Response for updateOrganizationEarlyAccessFeaturesOptIn operation."""

    id: str | None = None
    short_name: str | None = Field(
        default=None, validation_alias="shortName", serialization_alias="shortName"
    )
    limit_scope_to_networks: list[OrganizationsPolicyObjectsItem] = Field(
        default_factory=list,
        validation_alias="limitScopeToNetworks",
        serialization_alias="limitScopeToNetworks",
    )
    opt_out_eligibility: (
        GetOrganizationEarlyAccessFeaturesOptInsResponseOptOutEligibility | None
    ) = Field(
        default=None, validation_alias="optOutEligibility", serialization_alias="optOutEligibility"
    )
    created_at: datetime | None = Field(
        default=None, validation_alias="createdAt", serialization_alias="createdAt"
    )


class UpdateOrganizationLicenseResponse(_BaseSchema):
    """Response for updateOrganizationLicense operation."""

    id: str | None = None
    license_type: str | None = Field(
        default=None, validation_alias="licenseType", serialization_alias="licenseType"
    )
    license_key: str | None = Field(
        default=None, validation_alias="licenseKey", serialization_alias="licenseKey"
    )
    order_number: str | None = Field(
        default=None, validation_alias="orderNumber", serialization_alias="orderNumber"
    )
    device_serial: str | None = Field(
        default=None, validation_alias="deviceSerial", serialization_alias="deviceSerial"
    )
    network_id: str | None = Field(
        default=None, validation_alias="networkId", serialization_alias="networkId"
    )
    state: str | None = None
    seat_count: int | None = Field(
        default=None, validation_alias="seatCount", serialization_alias="seatCount"
    )
    total_duration_in_days: int | None = Field(
        default=None,
        validation_alias="totalDurationInDays",
        serialization_alias="totalDurationInDays",
    )
    duration_in_days: int | None = Field(
        default=None, validation_alias="durationInDays", serialization_alias="durationInDays"
    )
    permanently_queued_licenses: list[OrganizationsPermanentlyQueuedLicensesItem] = Field(
        default_factory=list,
        validation_alias="permanentlyQueuedLicenses",
        serialization_alias="permanentlyQueuedLicenses",
    )
    claim_date: str | None = Field(
        default=None, validation_alias="claimDate", serialization_alias="claimDate"
    )
    activation_date: str | None = Field(
        default=None, validation_alias="activationDate", serialization_alias="activationDate"
    )
    expiration_date: str | None = Field(
        default=None, validation_alias="expirationDate", serialization_alias="expirationDate"
    )
    head_license_id: str | None = Field(
        default=None, validation_alias="headLicenseId", serialization_alias="headLicenseId"
    )


class UpdateOrganizationLoginSecurityApiAuthentication(_BaseSchema):
    """Details for indicating whether organization will restrict access to API (but not Dashboard)
    to certain IP addresses.
    """

    ip_restrictions_for_keys: OrganizationsApiAuthenticationIpRestrictionsForKeys | None = Field(
        default=None,
        validation_alias="ipRestrictionsForKeys",
        serialization_alias="ipRestrictionsForKeys",
    )


class UpdateOrganizationLoginSecurityResponse(_BaseSchema):
    """Response for updateOrganizationLoginSecurity operation."""

    enforce_password_expiration: bool | None = Field(
        default=None,
        validation_alias="enforcePasswordExpiration",
        serialization_alias="enforcePasswordExpiration",
    )
    password_expiration_days: int | None = Field(
        default=None,
        validation_alias="passwordExpirationDays",
        serialization_alias="passwordExpirationDays",
    )
    enforce_different_passwords: bool | None = Field(
        default=None,
        validation_alias="enforceDifferentPasswords",
        serialization_alias="enforceDifferentPasswords",
    )
    num_different_passwords: int | None = Field(
        default=None,
        validation_alias="numDifferentPasswords",
        serialization_alias="numDifferentPasswords",
    )
    enforce_strong_passwords: bool | None = Field(
        default=None,
        validation_alias="enforceStrongPasswords",
        serialization_alias="enforceStrongPasswords",
    )
    minimum_password_length: int | None = Field(
        default=None,
        validation_alias="minimumPasswordLength",
        serialization_alias="minimumPasswordLength",
    )
    enforce_account_lockout: bool | None = Field(
        default=None,
        validation_alias="enforceAccountLockout",
        serialization_alias="enforceAccountLockout",
    )
    account_lockout_attempts: int | None = Field(
        default=None,
        validation_alias="accountLockoutAttempts",
        serialization_alias="accountLockoutAttempts",
    )
    enforce_idle_timeout: bool | None = Field(
        default=None,
        validation_alias="enforceIdleTimeout",
        serialization_alias="enforceIdleTimeout",
    )
    idle_timeout_minutes: int | None = Field(
        default=None,
        validation_alias="idleTimeoutMinutes",
        serialization_alias="idleTimeoutMinutes",
    )
    enforce_two_factor_auth: bool | None = Field(
        default=None,
        validation_alias="enforceTwoFactorAuth",
        serialization_alias="enforceTwoFactorAuth",
    )
    enforce_login_ip_ranges: bool | None = Field(
        default=None,
        validation_alias="enforceLoginIpRanges",
        serialization_alias="enforceLoginIpRanges",
    )
    login_ip_ranges: list[str] = Field(
        default_factory=list, validation_alias="loginIpRanges", serialization_alias="loginIpRanges"
    )
    api_authentication: GetOrganizationLoginSecurityResponseApiAuthentication | None = Field(
        default=None, validation_alias="apiAuthentication", serialization_alias="apiAuthentication"
    )


class UpdateOrganizationManagement(_BaseSchema):
    """Information about the organization's management system."""

    details: list[OrganizationsDetailsItem] = Field(default_factory=list)


class UpdateOrganizationPolicyObjectResponse(_BaseSchema):
    """Response for updateOrganizationPolicyObject operation."""

    id: str | None = None
    name: str | None = None
    category: str | None = None
    type_: str | None = Field(default=None, validation_alias="type", serialization_alias="type")
    cidr: str | None = None
    created_at: datetime | None = Field(
        default=None, validation_alias="createdAt", serialization_alias="createdAt"
    )
    updated_at: datetime | None = Field(
        default=None, validation_alias="updatedAt", serialization_alias="updatedAt"
    )
    group_ids: list[str] = Field(
        default_factory=list, validation_alias="groupIds", serialization_alias="groupIds"
    )
    network_ids: list[str] = Field(
        default_factory=list, validation_alias="networkIds", serialization_alias="networkIds"
    )


class UpdateOrganizationPolicyObjectsGroupResponse(_BaseSchema):
    """Response for updateOrganizationPolicyObjectsGroup operation."""

    id: str | None = None
    name: str | None = None
    category: str | None = None
    created_at: datetime | None = Field(
        default=None, validation_alias="createdAt", serialization_alias="createdAt"
    )
    updated_at: datetime | None = Field(
        default=None, validation_alias="updatedAt", serialization_alias="updatedAt"
    )
    object_ids: list[int] = Field(
        default_factory=list, validation_alias="objectIds", serialization_alias="objectIds"
    )
    network_ids: list[str] = Field(
        default_factory=list, validation_alias="networkIds", serialization_alias="networkIds"
    )


class UpdateOrganizationResponse(_BaseSchema):
    """Response for updateOrganization operation."""

    id: str | None = None
    name: str | None = None
    url: str | None = None
    api: OrganizationsApi | None = None
    licensing: OrganizationsLicensing | None = None
    cloud: OrganizationsCloud | None = None
    management: OrganizationsManagement | None = None


class UpdateOrganizationSamlIdpResponse(RootModel[list["UpdateOrganizationSamlIdpResponseItem"]]):
    """Response for updateOrganizationSamlIdp operation."""


class UpdateOrganizationSamlIdpResponseItem(_BaseSchema):
    """Schema for UpdateOrganizationSamlIdpResponseItem."""

    idp_id: str | None = Field(default=None, validation_alias="idpId", serialization_alias="idpId")
    consumer_url: str | None = Field(
        default=None, validation_alias="consumerUrl", serialization_alias="consumerUrl"
    )
    vision_consumer_url: str | None = Field(
        default=None, validation_alias="visionConsumerUrl", serialization_alias="visionConsumerUrl"
    )
    x509cert_sha1_fingerprint: str | None = Field(
        default=None,
        validation_alias="x509certSha1Fingerprint",
        serialization_alias="x509certSha1Fingerprint",
    )
    sso_login_url: str | None = Field(
        default=None, validation_alias="ssoLoginUrl", serialization_alias="ssoLoginUrl"
    )
    slo_logout_url: str | None = Field(
        default=None, validation_alias="sloLogoutUrl", serialization_alias="sloLogoutUrl"
    )


class UpdateOrganizationSamlResponse(_BaseSchema):
    """Response for updateOrganizationSaml operation."""

    enabled: bool | None = None
    sp_initiated: GetOrganizationSamlResponseSpInitiated | None = Field(
        default=None, validation_alias="spInitiated", serialization_alias="spInitiated"
    )


class UpdateOrganizationSamlRoleNetworksItem(_BaseSchema):
    """Item schema for networks."""

    id: str
    access: str


class UpdateOrganizationSamlRoleResponse(_BaseSchema):
    """Response for updateOrganizationSamlRole operation."""

    id: str | None = None
    role: str | None = None
    org_access: str | None = Field(
        default=None, validation_alias="orgAccess", serialization_alias="orgAccess"
    )
    networks: list[OrganizationsNetworksItem] = Field(default_factory=list)
    tags: list[OrganizationsTagsItem] = Field(default_factory=list)
    camera: list[OrganizationsCameraItem] = Field(default_factory=list)


class UpdateOrganizationSamlRoleTagsItem(_BaseSchema):
    """Item schema for tags."""

    tag: str
    access: str


class UpdateOrganizationSamlSpInitiated(_BaseSchema):
    """SP-Initiated SSO settings."""

    subdomain: str | None = None
    idp_id: str | None = Field(default=None, validation_alias="idpId", serialization_alias="idpId")


class UpdateOrganizationSnmpResponse(_BaseSchema):
    """Response for updateOrganizationSnmp operation."""

    v2c_enabled: bool | None = Field(
        default=None, validation_alias="v2cEnabled", serialization_alias="v2cEnabled"
    )
    v2_community_string: str | None = Field(
        default=None, validation_alias="v2CommunityString", serialization_alias="v2CommunityString"
    )
    v3_enabled: bool | None = Field(
        default=None, validation_alias="v3Enabled", serialization_alias="v3Enabled"
    )
    v3_user: str | None = Field(
        default=None, validation_alias="v3User", serialization_alias="v3User"
    )
    v3_auth_mode: str | None = Field(
        default=None, validation_alias="v3AuthMode", serialization_alias="v3AuthMode"
    )
    v3_priv_mode: str | None = Field(
        default=None, validation_alias="v3PrivMode", serialization_alias="v3PrivMode"
    )
    peer_ips: list[str] = Field(
        default_factory=list, validation_alias="peerIps", serialization_alias="peerIps"
    )
    hostname: str | None = None
    port: int | None = None
