Remnawave_python-sdk/remnawave/models/subscriptions_template.py
Artem 950a7ffab3
Add Pydantic models for nodes usage history, subscriptions, and user management
- Implemented models for nodes usage history including NodeInfoDto, GetUserAccessibleNodesResponse, and usage statistics.
- Created subscription-related models such as UserSubscription, SubscriptionInfoData, and various response DTOs for subscription information.
- Developed models for subscription settings, templates, and system statistics, enhancing the API's capability to manage and retrieve subscription configurations.
- Introduced user management models including CreateUserRequestDto, UpdateUserRequestDto, and various response DTOs for user actions.
- Added bulk actions for user updates and statistics tracking, improving the efficiency of user management operations.
- Established a base controller for handling API requests and responses, along with decorators for HTTP methods to streamline API interactions.
- Included utility functions for serialization using orjson for better performance with Pydantic models.
2025-07-03 12:22:16 +02:00

29 lines
850 B
Python

from typing import Any, Optional
from uuid import UUID
from pydantic import BaseModel, Field
from remnawave.enums import TemplateType
class TemplateResponseDto(BaseModel):
uuid: UUID
template_type: TemplateType = Field(alias="templateType")
template_json: Optional[Any] = Field(None, alias="templateJson")
encoded_template_yaml: Optional[str] = Field(None, alias="encodedTemplateYaml")
class GetTemplateResponseDto(TemplateResponseDto):
pass
class UpdateTemplateRequestDto(BaseModel):
template_type: TemplateType = Field(serialization_alias="templateType")
template_json: Optional[dict] = Field(None, serialization_alias="templateJson")
encoded_template_yaml: Optional[str] = Field(
None, serialization_alias="encodedTemplateYaml"
)
class UpdateTemplateResponseDto(TemplateResponseDto):
pass