feat: Обновить модель пользователя для поддержки тега и добавить новый эндпоинт для получения пользователей по тегу

This commit is contained in:
Artem 2025-05-11 15:42:50 +02:00
parent f04d2afe4a
commit 3a2e87897a
No known key found for this signature in database
GPG key ID: 833485276B7902CE
5 changed files with 14 additions and 1 deletions

View file

@ -39,6 +39,7 @@ pip install git+https://github.com/sm1ky/remnawave-api.git@development
| Contract Version | Remnawave Panel Version |
| ---------------- | ----------------------- |
| 1.1.1 | 1.6.1 |
| 1.1.0 | 1.6.0 |
| 1.0.8 | 1.5.7 |

View file

@ -1,6 +1,6 @@
[project]
name = "remnawave-api"
version = "1.1.0"
version = "1.1.1"
description = "A Python SDK for interacting with the Remnawave API."
authors = [
{name = "Artem",email = "sm1ky@forestsnet.com"}

View file

@ -148,3 +148,11 @@ class UsersController(BaseController):
) -> EmailUserResponseDto:
"""Get Users By Email"""
...
@get("/users/by-tag/{tag}", response_class=UsersResponseDto)
async def get_users_by_tag(
self,
tag: Annotated[str, Path(description="Tag of the user")],
) -> UsersResponseDto:
"""Get Users By Tag"""
...

View file

@ -55,6 +55,7 @@ class CreateUserRequestDto(BaseModel):
None, serialization_alias="lastTrafficResetAt"
)
description: Optional[str] = None
tag: Optional[str] = None
telegram_id: Optional[int] = Field(None, serialization_alias="telegramId")
email: Optional[str] = None
hwidDeviceLimit: Optional[int] = Field(
@ -82,6 +83,7 @@ class UpdateUserRequestDto(BaseModel):
None, serialization_alias="lastTrafficResetAt"
)
description: Optional[str] = None
tag: Optional[str] = None
telegram_id: Optional[int] = Field(None, serialization_alias="telegramId")
email: Optional[str] = None
hwidDeviceLimit: Optional[int] = Field(

View file

@ -23,6 +23,7 @@ class UpdateUserFields(BaseModel):
)
expire_at: Optional[datetime] = Field(None, serialization_alias="expireAt")
description: Optional[str] = None
tag: Optional[str] = None
telegram_id: Optional[int] = Field(None, serialization_alias="telegramId")
email: Optional[str] = None
@ -37,6 +38,7 @@ class BulkAllUpdateUsersRequestDto(BaseModel):
)
expire_at: Optional[datetime] = Field(None, serialization_alias="expireAt")
description: Optional[str] = None
tag: Optional[str] = None
telegram_id: Optional[int] = Field(None, serialization_alias="telegramId")
email: Optional[str] = None