Source code for netbird.models.posture_check

"""
Posture check models for NetBird API.
"""

from typing import Any, Dict, Optional

from pydantic import Field

from .common import BaseModel, ResourceId


[docs] class PostureCheckCreate(BaseModel): """Model for creating a posture check.""" name: str = Field(..., description="Posture check name") description: str = Field(..., description="Posture check description") checks: Optional[Dict[str, Any]] = Field( None, description="Check configurations (nb_version_check, os_version_check, " "geo_location_check, peer_network_range_check, process_check)", )
[docs] class PostureCheckUpdate(BaseModel): """Model for updating a posture check.""" name: Optional[str] = Field(None, description="Posture check name") description: Optional[str] = Field(None, description="Posture check description") checks: Optional[Dict[str, Any]] = Field(None, description="Check configurations")
[docs] class PostureCheck(BaseModel): """NetBird posture check model.""" id: ResourceId = Field(..., description="Unique posture check identifier") name: str = Field(..., description="Posture check name") description: Optional[str] = Field(None, description="Posture check description") checks: Optional[Dict[str, Any]] = Field(None, description="Check configurations")