Posts
Tab
¶
CommentSort
¶
get_post
¶
get_post(
client: AsyncClient,
access_token: str,
post_id: UUID,
domain: str = "xn--d1ah4a.com",
**kwargs,
) -> tuple[list[Comment], Post]
Получить пост.
| PARAMETER | DESCRIPTION |
|---|---|
client
|
httpx.AsyncClient
TYPE:
|
access_token
|
access токен
TYPE:
|
post_id
|
UUID поста
TYPE:
|
domain
|
домен
TYPE:
|
| RAISES | DESCRIPTION |
|---|---|
UnauthorizedError
|
ошибка авторизации |
NotFoundError
|
пост не существует, удалён, владелец поста забанил, пост принадлежит пользователю с is_private=True, на которого вы не подписаны |
delete_post
¶
delete_post(
client: AsyncClient,
access_token: str,
post_id: UUID,
domain: str = "xn--d1ah4a.com",
**kwargs,
) -> None
Удалить пост.
| PARAMETER | DESCRIPTION |
|---|---|
client
|
httpx.AsyncClient
TYPE:
|
access_token
|
access токен
TYPE:
|
post_id
|
UUID поста
TYPE:
|
domain
|
домен
TYPE:
|
| RAISES | DESCRIPTION |
|---|---|
UnauthorizedError
|
ошибка авторизации |
ForbiddenError
|
Нет прав для удаления поста |
NotFoundError
|
Пост не найден |
restore_post
¶
restore_post(
client: AsyncClient,
access_token: str,
post_id: UUID,
domain: str = "xn--d1ah4a.com",
**kwargs,
) -> None
Восстановить пост.
| PARAMETER | DESCRIPTION |
|---|---|
client
|
httpx.AsyncClient
TYPE:
|
access_token
|
access токен
TYPE:
|
post_id
|
UUID поста
TYPE:
|
domain
|
домен
TYPE:
|
| RAISES | DESCRIPTION |
|---|---|
UnauthorizedError
|
ошибка авторизации |
ForbiddenError
|
Нет прав для восстановления поста |
NotFoundError
|
Пост не найден |
like_post
¶
like_post(
client: AsyncClient,
access_token: str,
post_id: UUID,
domain: str = "xn--d1ah4a.com",
**kwargs,
) -> int
Лайкнуть пост.
| PARAMETER | DESCRIPTION |
|---|---|
client
|
httpx.AsyncClient
TYPE:
|
access_token
|
access токен
TYPE:
|
post_id
|
UUID поста
TYPE:
|
domain
|
домен
TYPE:
|
| RAISES | DESCRIPTION |
|---|---|
UnauthorizedError
|
ошибка авторизации |
NotFoundError
|
Пост не найден |
unlike_post
¶
unlike_post(
client: AsyncClient,
access_token: str,
post_id: UUID,
domain: str = "xn--d1ah4a.com",
**kwargs,
) -> int
Убрать лайк с пост.
| PARAMETER | DESCRIPTION |
|---|---|
client
|
httpx.AsyncClient
TYPE:
|
access_token
|
access токен
TYPE:
|
post_id
|
UUID поста
TYPE:
|
domain
|
домен
TYPE:
|
| RAISES | DESCRIPTION |
|---|---|
UnauthorizedError
|
ошибка авторизации |
NotFoundError
|
Пост не найден |
view_post
¶
view_post(
client: AsyncClient,
access_token: str,
post_id: UUID,
domain: str = "xn--d1ah4a.com",
**kwargs,
) -> None
Просмотр на пост.
| PARAMETER | DESCRIPTION |
|---|---|
client
|
httpx.AsyncClient
TYPE:
|
access_token
|
access токен
TYPE:
|
post_id
|
UUID поста
TYPE:
|
domain
|
домен
TYPE:
|
| RAISES | DESCRIPTION |
|---|---|
UnauthorizedError
|
ошибка авторизации |
pin_post
¶
pin_post(
client: AsyncClient,
access_token: str,
post_id: UUID | str,
domain: str = "xn--d1ah4a.com",
**kwargs,
) -> bool
Закрепить пост.
| PARAMETER | DESCRIPTION |
|---|---|
client
|
httpx.AsyncClient
TYPE:
|
access_token
|
access токен
TYPE:
|
post_id
|
UUID поста
TYPE:
|
domain
|
домен
TYPE:
|
| RAISES | DESCRIPTION |
|---|---|
UnauthorizedError
|
ошибка авторизации |
NotFoundError
|
Пост не найден |
ForbiddenError
|
Можно прикреплять посты только на своей стене |
unpin_post
¶
unpin_post(
client: AsyncClient,
access_token: str,
post_id: UUID,
domain: str = "xn--d1ah4a.com",
**kwargs,
) -> bool
Открепить пост.
| PARAMETER | DESCRIPTION |
|---|---|
client
|
httpx.AsyncClient
TYPE:
|
access_token
|
access токен
TYPE:
|
post_id
|
UUID поста
TYPE:
|
domain
|
домен
TYPE:
|
| RAISES | DESCRIPTION |
|---|---|
UnauthorizedError
|
ошибка авторизации |
NotPinedError
|
Пост не прикреплён |
get_posts_by_user
¶
get_posts_by_user(
client: AsyncClient,
access_token: str,
username_or_id: str | UUID,
cursor: str | None = None,
limit: int = 20,
sort: PostSort | Literal["new", "popular"] = NEW,
domain: str = "xn--d1ah4a.com",
**kwargs,
) -> tuple[Pagination, list[Post]]
Посты на стене пользователя.
| PARAMETER | DESCRIPTION |
|---|---|
client
|
httpx.AsyncClient
TYPE:
|
access_token
|
access токен
TYPE:
|
username_or_id
|
имя пользователя или его UUID
TYPE:
|
cursor
|
next_cursor на предыдущей странице
TYPE:
|
limit
|
максимальное количество выданных постов
TYPE:
|
sort
|
сортировка |
domain
|
домен
TYPE:
|
| RAISES | DESCRIPTION |
|---|---|
UnauthorizedError
|
ошибка авторизации |
NotFoundError
|
пользователь не найден |
ValidationError
|
1 <= limit <= 50 |
UserBlockedError
|
пользователь заблокирован |
get_posts_by_user_liked
¶
get_posts_by_user_liked(
client: AsyncClient,
access_token: str,
username_or_id: str | UUID,
cursor: str | None = None,
limit: int = 20,
sort: PostSort | Literal["new", "popular"] = NEW,
domain: str = "xn--d1ah4a.com",
**kwargs,
) -> tuple[Pagination, list[Post]]
Посты на которые пользователей поставил лайк.
| PARAMETER | DESCRIPTION |
|---|---|
client
|
httpx.AsyncClient
TYPE:
|
access_token
|
access токен
TYPE:
|
username_or_id
|
имя пользователя или его UUID
TYPE:
|
cursor
|
next_cursor на предыдущей странице
TYPE:
|
limit
|
максимальное количество выданных постов
TYPE:
|
sort
|
сортировка |
domain
|
домен
TYPE:
|
| RAISES | DESCRIPTION |
|---|---|
UnauthorizedError
|
ошибка авторизации |
NotFoundError
|
пользователь не найден |
ValidationError
|
1 <= limit <= 50 |
UserBlockedError
|
пользователь заблокирован |
get_posts_by_user_wall
¶
get_posts_by_user_wall(
client: AsyncClient,
access_token: str,
username_or_id: str | UUID,
cursor: None = None,
limit: int = 20,
sort: PostSort | Literal["new", "popular"] = NEW,
domain: str = "xn--d1ah4a.com",
**kwargs,
) -> tuple[Pagination, list[Post]]
Посты на стене пользователя, сделанные не пользователем.
| PARAMETER | DESCRIPTION |
|---|---|
client
|
httpx.AsyncClient
TYPE:
|
access_token
|
access токен
TYPE:
|
username_or_id
|
имя пользователя или его UUID
TYPE:
|
cursor
|
next_cursor на предыдущей странице
TYPE:
|
limit
|
максимальное количество выданных постов
TYPE:
|
sort
|
сортировка |
domain
|
домен
TYPE:
|
| RAISES | DESCRIPTION |
|---|---|
UnauthorizedError
|
ошибка авторизации |
NotFoundError
|
пользователь не найден |
ValidationError
|
1 <= limit <= 50 |
UserBlockedError
|
пользователь заблокирован |
get_posts
¶
get_posts(
client: AsyncClient,
access_token: str,
cursor: None = None,
limit: int = 20,
tab: Tab
| Literal["popular", "following", "clan"] = POPULAR,
domain: str = "xn--d1ah4a.com",
**kwargs,
) -> tuple[Pagination, list[Post]]
Лента.
| PARAMETER | DESCRIPTION |
|---|---|
client
|
httpx.AsyncClient
TYPE:
|
access_token
|
access токен
TYPE:
|
cursor
|
next_cursor на предыдущей странице
TYPE:
|
limit
|
максимальное количество выданных постов
TYPE:
|
tab
|
популярные, подписка, кланы
TYPE:
|
domain
|
домен
TYPE:
|
| RAISES | DESCRIPTION |
|---|---|
UnauthorizedError
|
ошибка авторизации |
ValidationError
|
1 <= limit <= 50 |
get_post_comments
¶
get_post_comments(
client: AsyncClient,
access_token: str,
post_id: UUID,
cursor: str | None = None,
limit: int = 20,
sort: CommentSort
| Literal["popular", "newest", "oldest"] = NEWEST,
domain: str = "xn--d1ah4a.com",
**kwargs,
) -> tuple[TotalPagination, list[Comment]]
Получить комментарии под постом.
| PARAMETER | DESCRIPTION |
|---|---|
client
|
httpx.AsyncClient
TYPE:
|
access_token
|
access токен
TYPE:
|
post_id
|
UUID поста
TYPE:
|
cursor
|
next_cursor с предыдущей страницы
TYPE:
|
limit
|
максимальное количество комментариев на странице
TYPE:
|
sort
|
сортировать по
TYPE:
|
domain
|
домен
TYPE:
|
| RAISES | DESCRIPTION |
|---|---|
UnauthorizedError
|
ошибка авторизации |
NotFoundError
|
Пост не найден |
ParamsValidationError
|
1 <= limit <= 500 |
vote
¶
vote(
client: AsyncClient,
access_token: str,
post_id: UUID,
option_ids: list[UUID],
domain: str = "xn--d1ah4a.com",
**kwargs,
) -> Poll
Проголосовать в опросе
| PARAMETER | DESCRIPTION |
|---|---|
client
|
httpx.AsyncClient
TYPE:
|
access_token
|
access токен
TYPE:
|
post_id
|
UUID поста
TYPE:
|
option_ids
|
список UUID выбранных вариантов
TYPE:
|
domain
|
домен
TYPE:
|
| RAISES | DESCRIPTION |
|---|---|
UnauthorizedError
|
ошибка авторизации |
NotFoundError
|
пост не найден |
ValidationError
|
Один или несколько вариантов не принадлежат этому опросу |
ValidationError
|
В этом опросе можно выбрать только один вариант |
ValidationError
|
len(option_ids) > 0 |
create_post
¶
create_post(
client: AsyncClient,
access_token: str,
content: str = "",
attachment_ids: list[UUID] | None = None,
wall_recipient_id: UUID = None,
multiple_choice: bool = False,
question: str | None = None,
options: list[str] | None = None,
spans: list[
Monospace
| Strike
| Underline
| Bold
| Italic
| Spoiler
| Link
]
| None = None,
domain: str = "xn--d1ah4a.com",
**kwargs,
) -> Post
Создать пост.
| PARAMETER | DESCRIPTION |
|---|---|
client
|
httpx.AsyncClient
TYPE:
|
access_token
|
access токен
TYPE:
|
content
|
Текст поста
TYPE:
|
attachment_ids
|
Прикреплённые файлы
TYPE:
|
wall_recipient_id
|
id пользователя
TYPE:
|
multiple_choice
|
возможен ли множественный выбор в опросе
TYPE:
|
question
|
заголовок опроса
TYPE:
|
options
|
варианты ответов
TYPE:
|
spans
|
форматирование текста
TYPE:
|
domain
|
домен
TYPE:
|
| RAISES | DESCRIPTION |
|---|---|
UnauthorizedError
|
ошибка авторизации |
ValidationError
|
Нельзя создать пост content="", attachment_ids = [], question = None |
ParamsValidationError
|
len(content) <= 1_000 |
VideoRequiresVerificationError
|
Загрузка видео доступна только верифицированным пользователям |
ValidationError
|
len(attachments_ids) <= 10 |
ForbiddenError
|
Некоторые файлы из attachment_ids не существуют |
ParamsValidationError
|
len(spans) <= 100 |
ValidationError
|
1 <= len(question) <= 128 |
ValidationError
|
2 <= len(options) <= 10 |
ValidationError
|
1 <= len(options[i]) <= 32 |
ParamsValidationError
|
span[i].offset >= 0 |
ParamsValidationError
|
span[i].length > 0 |
ParamsValidationError
|
len(span[i].url) <= 2048 |
update_post
¶
update_post(
client: AsyncClient,
access_token: str,
post_id: UUID,
content: str,
spans: list[
Monospace
| Strike
| Underline
| Bold
| Italic
| Spoiler
| Link
]
| None = None,
domain: str = "xn--d1ah4a.com",
**kwargs,
) -> UpdatePostResponse
Изменить пост
| PARAMETER | DESCRIPTION |
|---|---|
client
|
httpx.AsyncClient
TYPE:
|
access_token
|
access токен
TYPE:
|
post_id
|
UUID поста
TYPE:
|
content
|
Новый текст поста
TYPE:
|
spans
|
форматированние текста
TYPE:
|
domain
|
домен
TYPE:
|
| RAISES | DESCRIPTION |
|---|---|
UnauthorizedError
|
ошибка авторизации |
NotFoundError
|
Пост не найден |
ValidationError
|
1 <= len(content) <= 1_000 |
ForbiddenError
|
Нет прав для редактирования этого поста |
EditWindowExpiredError
|
пост нельзя изменять спустя несколько дней |
ParamsValidationError
|
span[i].offset >= 0 |
ParamsValidationError
|
span[i].length > 0 |
ParamsValidationError
|
len(span[i].url) <= 2048 |
repost
¶
repost(
client: AsyncClient,
access_token: str,
post_id: UUID,
content: str = "",
domain: str = "xn--d1ah4a.com",
**kwargs,
) -> Post
Репост.
| PARAMETER | DESCRIPTION |
|---|---|
client
|
httpx.AsyncClient
TYPE:
|
access_token
|
access токен
TYPE:
|
post_id
|
UUID поста
TYPE:
|
content
|
текст репоста
TYPE:
|
domain
|
домен
TYPE:
|
| RAISES | DESCRIPTION |
|---|---|
UnauthorizedError
|
ошибка авторизации |
NotFoundError
|
Пост не найден |
ConflictError
|
Нельзя репостнуть два раза |
ValidationError
|
Нельзя репостить свои посты |
ValidationError
|
len(content) <= 1_000 |