Skip to content

Posts

PostSort

Bases: str, Enum

NEW

NEW = 'new'

POPULAR

POPULAR = 'popular'

Tab

Bases: str, Enum

POPULAR

POPULAR = 'popular'

FOLLOWING

FOLLOWING = 'following'

CLAN

CLAN = 'clan'

CommentSort

Bases: str, Enum

POPULAR

POPULAR = 'popular'

NEWEST

NEWEST = 'newest'

OLDEST

OLDEST = 'oldest'

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: AsyncClient

access_token

access токен

TYPE: str

post_id

UUID поста

TYPE: UUID

domain

домен

TYPE: str DEFAULT: 'xn--d1ah4a.com'

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: AsyncClient

access_token

access токен

TYPE: str

post_id

UUID поста

TYPE: UUID

domain

домен

TYPE: str DEFAULT: 'xn--d1ah4a.com'

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: AsyncClient

access_token

access токен

TYPE: str

post_id

UUID поста

TYPE: UUID

domain

домен

TYPE: str DEFAULT: 'xn--d1ah4a.com'

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: AsyncClient

access_token

access токен

TYPE: str

post_id

UUID поста

TYPE: UUID

domain

домен

TYPE: str DEFAULT: 'xn--d1ah4a.com'

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: AsyncClient

access_token

access токен

TYPE: str

post_id

UUID поста

TYPE: UUID

domain

домен

TYPE: str DEFAULT: 'xn--d1ah4a.com'

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: AsyncClient

access_token

access токен

TYPE: str

post_id

UUID поста

TYPE: UUID

domain

домен

TYPE: str DEFAULT: 'xn--d1ah4a.com'

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: AsyncClient

access_token

access токен

TYPE: str

post_id

UUID поста

TYPE: UUID | str

domain

домен

TYPE: str DEFAULT: 'xn--d1ah4a.com'

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: AsyncClient

access_token

access токен

TYPE: str

post_id

UUID поста

TYPE: UUID

domain

домен

TYPE: str DEFAULT: 'xn--d1ah4a.com'

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: AsyncClient

access_token

access токен

TYPE: str

username_or_id

имя пользователя или его UUID

TYPE: str | UUID

cursor

next_cursor на предыдущей странице

TYPE: str | None DEFAULT: None

limit

максимальное количество выданных постов

TYPE: int DEFAULT: 20

sort

сортировка

TYPE: PostSort | Literal['new', 'popular'] DEFAULT: NEW

domain

домен

TYPE: str DEFAULT: 'xn--d1ah4a.com'

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: AsyncClient

access_token

access токен

TYPE: str

username_or_id

имя пользователя или его UUID

TYPE: str | UUID

cursor

next_cursor на предыдущей странице

TYPE: str | None DEFAULT: None

limit

максимальное количество выданных постов

TYPE: int DEFAULT: 20

sort

сортировка

TYPE: PostSort | Literal['new', 'popular'] DEFAULT: NEW

domain

домен

TYPE: str DEFAULT: 'xn--d1ah4a.com'

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: AsyncClient

access_token

access токен

TYPE: str

username_or_id

имя пользователя или его UUID

TYPE: str | UUID

cursor

next_cursor на предыдущей странице

TYPE: None DEFAULT: None

limit

максимальное количество выданных постов

TYPE: int DEFAULT: 20

sort

сортировка

TYPE: PostSort | Literal['new', 'popular'] DEFAULT: NEW

domain

домен

TYPE: str DEFAULT: 'xn--d1ah4a.com'

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: AsyncClient

access_token

access токен

TYPE: str

cursor

next_cursor на предыдущей странице

TYPE: None DEFAULT: None

limit

максимальное количество выданных постов

TYPE: int DEFAULT: 20

tab

популярные, подписка, кланы

TYPE: Tab | Literal['popular', 'following', 'clan'] DEFAULT: POPULAR

domain

домен

TYPE: str DEFAULT: 'xn--d1ah4a.com'

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: AsyncClient

access_token

access токен

TYPE: str

post_id

UUID поста

TYPE: UUID

cursor

next_cursor с предыдущей страницы

TYPE: str | None DEFAULT: None

limit

максимальное количество комментариев на странице

TYPE: int DEFAULT: 20

sort

сортировать по

TYPE: CommentSort | Literal['popular', 'newest', 'oldest'] DEFAULT: NEWEST

domain

домен

TYPE: str DEFAULT: 'xn--d1ah4a.com'

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: AsyncClient

access_token

access токен

TYPE: str

post_id

UUID поста

TYPE: UUID

option_ids

список UUID выбранных вариантов

TYPE: list[UUID]

domain

домен

TYPE: str DEFAULT: 'xn--d1ah4a.com'

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: AsyncClient

access_token

access токен

TYPE: str

content

Текст поста

TYPE: str DEFAULT: ''

attachment_ids

Прикреплённые файлы

TYPE: list[UUID] | None DEFAULT: None

wall_recipient_id

id пользователя

TYPE: UUID DEFAULT: None

multiple_choice

возможен ли множественный выбор в опросе

TYPE: bool DEFAULT: False

question

заголовок опроса

TYPE: str | None DEFAULT: None

options

варианты ответов

TYPE: list[str] | None DEFAULT: None

spans

форматирование текста

TYPE: list[Monospace | Strike | Underline | Bold | Italic | Spoiler | Link] | None DEFAULT: None

domain

домен

TYPE: str DEFAULT: 'xn--d1ah4a.com'

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: AsyncClient

access_token

access токен

TYPE: str

post_id

UUID поста

TYPE: UUID

content

Новый текст поста

TYPE: str

spans

форматированние текста

TYPE: list[Monospace | Strike | Underline | Bold | Italic | Spoiler | Link] | None DEFAULT: None

domain

домен

TYPE: str DEFAULT: 'xn--d1ah4a.com'

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: AsyncClient

access_token

access токен

TYPE: str

post_id

UUID поста

TYPE: UUID

content

текст репоста

TYPE: str DEFAULT: ''

domain

домен

TYPE: str DEFAULT: 'xn--d1ah4a.com'

RAISES DESCRIPTION
UnauthorizedError

ошибка авторизации

NotFoundError

Пост не найден

ConflictError

Нельзя репостнуть два раза

ValidationError

Нельзя репостить свои посты

ValidationError

len(content) <= 1_000