mirror of
https://github.com/remnawave/python-sdk.git
synced 2026-08-31 22:31:02 +00:00
- Updated NodeUsageDto to include node_uuid and changed date to datetime. - Changed total fields in subscription and subscription request history models from float to int. - Introduced response rules and conditions for subscription settings, including new models for response modifications. - Added external squads management with CRUD operations and associated models. - Implemented passkey management with registration and verification endpoints. - Enhanced snippets management with full CRUD operations and validation. - Added OAuth2 provider enum for better authentication handling.
41 lines
No EOL
1.1 KiB
Python
41 lines
No EOL
1.1 KiB
Python
from datetime import datetime
|
|
from typing import List, Optional
|
|
from uuid import UUID
|
|
|
|
from pydantic import BaseModel, Field
|
|
|
|
|
|
class SubscriptionRequestHistoryRecord(BaseModel):
|
|
id: int
|
|
user_uuid: UUID = Field(alias="userUuid")
|
|
request_ip: Optional[str] = Field(alias="requestIp")
|
|
user_agent: Optional[str] = Field(alias="userAgent")
|
|
request_at: datetime = Field(alias="requestAt")
|
|
|
|
|
|
class SubscriptionRequestHistoryData(BaseModel):
|
|
records: List[SubscriptionRequestHistoryRecord]
|
|
total: int
|
|
|
|
|
|
class GetAllSubscriptionRequestHistoryResponseDto(SubscriptionRequestHistoryData):
|
|
pass
|
|
|
|
|
|
class AppStatItem(BaseModel):
|
|
app: str
|
|
count: float
|
|
|
|
|
|
class HourlyRequestStat(BaseModel):
|
|
date_time: datetime = Field(alias="dateTime")
|
|
request_count: float = Field(alias="requestCount")
|
|
|
|
|
|
class SubscriptionRequestHistoryStatsData(BaseModel):
|
|
by_parsed_app: List[AppStatItem] = Field(alias="byParsedApp")
|
|
hourly_request_stats: List[HourlyRequestStat] = Field(alias="hourlyRequestStats")
|
|
|
|
|
|
class GetSubscriptionRequestHistoryStatsResponseDto(SubscriptionRequestHistoryStatsData):
|
|
pass |