Comments
comment
¶
comment(
client: AsyncClient,
access_token: str,
post_id: UUID,
content: str = "",
attachment_ids: list[UUID] | None = None,
domain: str = "xn--d1ah4a.com",
**kwargs,
) -> Comment
Создать комментарий.
| PARAMETER | DESCRIPTION |
|---|---|
client
|
httpx.AsyncClient
TYPE:
|
access_token
|
access токен
TYPE:
|
post_id
|
UUID поста
TYPE:
|
content
|
текст поста
TYPE:
|
attachment_ids
|
список UUID файлов
TYPE:
|
domain
|
домен
TYPE:
|
| RETURNS | DESCRIPTION |
|---|---|
Comment
|
Созданный комментарий |
| RAISES | DESCRIPTION |
|---|---|
UnauthorizedError
|
ошибка авторизации |
NotFoundError
|
пост не найден |
ITDError
|
attachments_ids[i] файла с таким UUID не существует |
ValidationError
|
Нельзя создать комментарий content="", attachment_ids = [] |
ParamsValidationError
|
len(attachments_ids) <= 4 |
ITDError
|
не должно быть одинаковых attachment_ids[i] |
ParamsValidationError
|
len(content) <= 1_000 |
Examples:
from httpx import AsyncClient
from aioitd.api import refresh, get_posts, comment, upload_file
refresh_token = "ВАШ ТОКЕН"
async def main():
async with AsyncClient() as client:
access_token = await refresh(client, refresh_token)
_, posts = await get_posts(client, access_token)
with open('tests/image.jpg', 'rb') as f:
image = await upload_file(client, access_token, f)
await comment(client, access_token, posts[0].id, "Это комментарий", [image.id])
replies
¶
replies(
client: AsyncClient,
access_token: str,
comment_id: UUID,
content: str = "",
replay_to_user_id: UUID = None,
attachment_ids: list[UUID] = None,
domain: str = "xn--d1ah4a.com",
**kwargs,
) -> Reply
Ответить на комментарий
| PARAMETER | DESCRIPTION |
|---|---|
client
|
httpx.AsyncClient
TYPE:
|
access_token
|
access токен
TYPE:
|
comment_id
|
UUID комментария
TYPE:
|
content
|
текст комментария
TYPE:
|
replay_to_user_id
|
UUID пользователя, которому ответ
TYPE:
|
attachment_ids
|
список UUID файлов
TYPE:
|
domain
|
домен
TYPE:
|
| RETURNS | DESCRIPTION |
|---|---|
Reply
|
Созданный ответ |
| RAISES | DESCRIPTION |
|---|---|
UnauthorizedError
|
ошибка авторизации |
NotFoundError
|
комментарий не найден |
ValidationError
|
Нельзя создать ответ content="", attachment_ids = [] |
ITDError
|
attachments_ids[i] файла с таким UUID не существует |
ParamsValidationError
|
len(attachments_ids) <= 4 |
ParamsValidationError
|
len(content) <= 1_000 |
Examples:
from httpx import AsyncClient
from aioitd.api import refresh, get_posts, comment, upload_file, replies
refresh_token = "ВАШ ТОКЕН"
async def main():
async with AsyncClient() as client:
access_token = await refresh(client, refresh_token)
_, posts = await get_posts(client, access_token)
with open('tests/image.jpg', 'rb') as f:
image = await upload_file(client, access_token, f)
comm = await comment(client, access_token, posts[0].id, "Это комментарий")
await replies(client, access_token, comm.id, 'Это ответ', attachment_ids=[image.id])
edit_comment
¶
edit_comment(
client: AsyncClient,
access_token: str,
comment_id: UUID,
content: str,
domain: str = "xn--d1ah4a.com",
**kwargs,
) -> UpdateCommentResponse
Ответить на комментарий.
| PARAMETER | DESCRIPTION |
|---|---|
client
|
httpx.AsyncClient
TYPE:
|
access_token
|
access токен
TYPE:
|
comment_id
|
UUID комментария
TYPE:
|
content
|
текст комментария
TYPE:
|
domain
|
домен
TYPE:
|
| RETURNS | DESCRIPTION |
|---|---|
UpdateCommentResponse
|
Новое содержимое комментария |
| RAISES | DESCRIPTION |
|---|---|
UnauthorizedError
|
ошибка авторизации |
NotFoundError
|
комментарий не найден |
ForbiddenError
|
нет прав на редактирование этого комментария |
ParamsValidationError
|
1 <= len(content) <= 1_000 |
Examples:
from httpx import AsyncClient
from aioitd.api import refresh, get_posts, comment, edit_comment
refresh_token = "ВАШ ТОКЕН"
async def main():
async with AsyncClient() as client:
access_token = await refresh(client, refresh_token)
_, posts = await get_posts(client, access_token)
comm = await comment(client, access_token, posts[0].id, "Это комментарий")
await edit_comment(client, access_token, comm.id, 'Изменённый комментарий')
delete_comment
¶
delete_comment(
client: AsyncClient,
access_token: str,
comment_id: UUID,
domain: str = "xn--d1ah4a.com",
**kwargs,
) -> None
Удалить комментарий.
| PARAMETER | DESCRIPTION |
|---|---|
client
|
httpx.AsyncClient
TYPE:
|
access_token
|
access токен
TYPE:
|
comment_id
|
UUID комментария
TYPE:
|
domain
|
домен
TYPE:
|
| RAISES | DESCRIPTION |
|---|---|
UnauthorizedError
|
ошибка авторизации |
NotFoundError
|
комментарий не найден |
ForbiddenError
|
нет прав на удаление комментария |
Examples:
from httpx import AsyncClient
from aioitd.api import refresh, get_posts, comment, delete_comment
refresh_token = "ВАШ ТОКЕН"
async def main():
async with AsyncClient() as client:
access_token = await refresh(client, refresh_token)
_, posts = await get_posts(client, access_token)
comm = await comment(client, access_token, posts[0].id, "Это комментарий")
await delete_comment(client, access_token, comm.id)
restore_comment
¶
restore_comment(
client: AsyncClient,
access_token: str,
comment_id: UUID,
domain: str = "xn--d1ah4a.com",
**kwargs,
) -> None
Восстановить комментарий.
| PARAMETER | DESCRIPTION |
|---|---|
client
|
httpx.AsyncClient
TYPE:
|
access_token
|
access токен
TYPE:
|
comment_id
|
UUID комментария
TYPE:
|
domain
|
домен
TYPE:
|
| RAISES | DESCRIPTION |
|---|---|
UnauthorizedError
|
ошибка авторизации |
NotFoundError
|
комментарий не найден |
ForbiddenError
|
нет прав на восстановление комментария |
Examples:
from httpx import AsyncClient
from aioitd.api import refresh, get_posts, comment, delete_comment, restore_comment
refresh_token = "101c68cc5142de4737f3112fb8236715595e6f9ce0ea19ababb219210f526373"
async def main():
async with AsyncClient() as client:
access_token = await refresh(client, refresh_token)
_, posts = await get_posts(client, access_token)
comm = await comment(client, access_token, posts[0].id, "Это комментарий")
await delete_comment(client, access_token, comm.id)
await restore_comment(client, access_token, comm.id)
like_comment
¶
like_comment(
client: AsyncClient,
access_token: str,
comment_id: UUID,
domain: str = "xn--d1ah4a.com",
**kwargs,
) -> int
Поставить лайк на комментарий.
| PARAMETER | DESCRIPTION |
|---|---|
client
|
httpx.AsyncClient
TYPE:
|
access_token
|
access токен
TYPE:
|
comment_id
|
UUID комментария
TYPE:
|
domain
|
домен
TYPE:
|
| RETURNS | DESCRIPTION |
|---|---|
int
|
Лайков на комментарии |
| RAISES | DESCRIPTION |
|---|---|
UnauthorizedError
|
ошибка авторизации |
NotFoundError
|
комментарий не найден |
Examples:
from httpx import AsyncClient
from aioitd.api import refresh, get_posts_by_user, like_comment, get_post_comments
refresh_token = "101c68cc5142de4737f3112fb8236715595e6f9ce0ea19ababb219210f526373"
async def main():
async with AsyncClient() as client:
access_token = await refresh(client, refresh_token)
_, posts = await get_posts_by_user(client, access_token, 'nowkie')
_, comments = await get_post_comments(client, access_token, posts[0].id)
await like_comment(client, access_token, comments[0].id)
unlike_comment
¶
unlike_comment(
client: AsyncClient,
access_token: str,
comment_id: UUID,
domain: str = "xn--d1ah4a.com",
**kwargs,
) -> int
Удалить лайк с комментария.
| PARAMETER | DESCRIPTION |
|---|---|
client
|
httpx.AsyncClient
TYPE:
|
access_token
|
access токен
TYPE:
|
comment_id
|
UUID комментария
TYPE:
|
domain
|
домен
TYPE:
|
| RETURNS | DESCRIPTION |
|---|---|
int
|
Лайков на комментарии |
| RAISES | DESCRIPTION |
|---|---|
UnauthorizedError
|
ошибка авторизации |
NotFoundError
|
комментарий не найден |
Examples:
from httpx import AsyncClient
from aioitd.api import refresh, get_posts_by_user, like_comment, get_post_comments, delete_like_comment
refresh_token = "ВАШ ТОКЕН"
async def main():
async with AsyncClient() as client:
access_token = await refresh(client, refresh_token)
_, posts = await get_posts_by_user(client, access_token, 'nowkie')
_, comments = await get_post_comments(client, access_token, posts[0].id)
await like_comment(client, access_token, comments[0].id)
await delete_like_comment(client, access_token, comments[0].id)
get_comment_replies
¶
get_comment_replies(
client: AsyncClient,
access_token: str,
comment_id: UUID,
limit: int = 100,
page: int = 1,
domain: str = "xn--d1ah4a.com",
**kwargs,
) -> tuple[PagePagination, list[Reply]]
Получить ответы на комментарий.
| PARAMETER | DESCRIPTION |
|---|---|
client
|
httpx.AsyncClient
TYPE:
|
access_token
|
access токен
TYPE:
|
comment_id
|
UUID комментария
TYPE:
|
limit
|
максимальное количество ответов на странице
TYPE:
|
page
|
номер страницы
TYPE:
|
domain
|
домен
TYPE:
|
| RETURNS | DESCRIPTION |
|---|---|
tuple[PagePagination, list[Reply]]
|
Ответы на комментарий |
| RAISES | DESCRIPTION |
|---|---|
UnauthorizedError
|
ошибка авторизации |
NotFoundError
|
комментарий не найден |
ParamsValidationError
|
1 <= limit <= 100 |
ParamsValidationError
|
page >= 1 |