production-evyos-systems-an.../ServicesApi/Schemas/rules/rules.py

38 lines
1.0 KiB
Python

from Schemas.base_imports import (
CrudCollection,
UUID,
String,
mapped_column,
Mapped,
Index,
)
class EndpointRestriction(CrudCollection):
"""
Initialize Endpoint Restriction with default values
"""
__tablename__ = "endpoint_restriction"
__exclude__fields__ = []
operation_uu_id: Mapped[UUID] = mapped_column(
String, comment="UUID of the operation", nullable=False, unique=True
)
endpoint_function: Mapped[str] = mapped_column(
String, comment="Function name of the API endpoint"
)
endpoint_name: Mapped[str] = mapped_column(
String, comment="Name of the API endpoint"
)
endpoint_method: Mapped[str] = mapped_column(
String, comment="HTTP method used by the endpoint"
)
endpoint_desc: Mapped[str] = mapped_column(
String, server_default="", comment="Description of the endpoint"
)
__table_args__ = (
Index("idx_endpoint_restriction_operation_uu_id", operation_uu_id, endpoint_method, endpoint_name, unique=True),
)