Перейти к содержанию

messenger

Источник API: Мессенджер.json, Рассылкаскидокиспецпредложенийвмессенджере.json.

Enum

Пакет messenger.

Chat dataclass

Chat(
    transport: Transport,
    chat_id: int | str | None = None,
    user_id: int | str | None = None,
)

Bases: DomainObject

Доменный объект чата.

get

get() -> ChatInfo

Получает чат по chat_id.

Raises: AvitoError с полями operation, status, request_id, attempt, method и endpoint.

list

list() -> ChatsResult

Получает список чатов пользователя.

Пустой результат возвращается как пустая коллекция или None согласно аннотации метода.

Raises: AvitoError с полями operation, status, request_id, attempt, method и endpoint.

mark_read

mark_read(
    *, idempotency_key: str | None = None
) -> MessageActionResult

Помечает чат как прочитанный.

Параметр idempotency_key задает ключ идемпотентности для безопасного повтора write-операции.

Raises: AvitoError с полями operation, status, request_id, attempt, method и endpoint.

blacklist

blacklist(
    *,
    blacklisted_user_id: int,
    idempotency_key: str | None = None,
) -> MessageActionResult

Добавляет пользователя в blacklist.

Параметр idempotency_key задает ключ идемпотентности для безопасного повтора write-операции.

Raises: AvitoError с полями operation, status, request_id, attempt, method и endpoint.

ChatMedia dataclass

ChatMedia(
    transport: Transport, user_id: int | str | None = None
)

Bases: DomainObject

Доменный объект media-функций мессенджера.

get_voice_files

get_voice_files() -> VoiceFilesResult

Получает голосовые сообщения.

Raises: AvitoError с полями operation, status, request_id, attempt, method и endpoint.

upload_images

upload_images(
    *,
    files: list[UploadImageFile],
    idempotency_key: str | None = None,
) -> UploadImagesResult

Загружает изображения для сообщений.

Параметр idempotency_key задает ключ идемпотентности для безопасного повтора write-операции.

Raises: AvitoError с полями operation, status, request_id, attempt, method и endpoint.

ChatMessage dataclass

ChatMessage(
    transport: Transport,
    chat_id: int | str | None = None,
    message_id: int | str | None = None,
    user_id: int | str | None = None,
)

Bases: DomainObject

Доменный объект сообщения чата.

list

list(*, chat_id: str | None = None) -> MessagesResult

Получает список сообщений V3.

Пустой результат возвращается как пустая коллекция или None согласно аннотации метода.

Raises: AvitoError с полями operation, status, request_id, attempt, method и endpoint.

send_message

send_message(
    *,
    chat_id: str | None = None,
    message: str,
    idempotency_key: str | None = None,
) -> MessageActionResult

Отправляет текстовое сообщение.

Параметр idempotency_key задает ключ идемпотентности для безопасного повтора write-операции.

Raises: AvitoError с полями operation, status, request_id, attempt, method и endpoint.

send_image

send_image(
    *,
    chat_id: str | None = None,
    image_id: str,
    caption: str | None = None,
    idempotency_key: str | None = None,
) -> MessageActionResult

Отправляет сообщение с изображением.

Параметр idempotency_key задает ключ идемпотентности для безопасного повтора write-операции.

Raises: AvitoError с полями operation, status, request_id, attempt, method и endpoint.

delete

delete(
    *,
    chat_id: str | None = None,
    message_id: str | None = None,
    idempotency_key: str | None = None,
) -> MessageActionResult

Удаляет сообщение.

Параметр idempotency_key задает ключ идемпотентности для безопасного повтора write-операции.

Raises: AvitoError с полями operation, status, request_id, attempt, method и endpoint.

ChatWebhook dataclass

ChatWebhook(
    transport: Transport, user_id: int | str | None = None
)

Bases: DomainObject

Доменный объект webhook мессенджера.

list

list() -> SubscriptionsResult

Получает список webhook-подписок.

Пустой результат возвращается как пустая коллекция или None согласно аннотации метода.

Raises: AvitoError с полями operation, status, request_id, attempt, method и endpoint.

unsubscribe

unsubscribe(
    *, url: str, idempotency_key: str | None = None
) -> WebhookActionResult

Отключает webhook.

Параметр idempotency_key задает ключ идемпотентности для безопасного повтора write-операции.

Raises: AvitoError с полями operation, status, request_id, attempt, method и endpoint.

subscribe

subscribe(
    *,
    url: str,
    secret: str | None = None,
    idempotency_key: str | None = None,
) -> WebhookActionResult

Включает webhook v3.

Параметр idempotency_key задает ключ идемпотентности для безопасного повтора write-операции.

Raises: AvitoError с полями operation, status, request_id, attempt, method и endpoint.

SpecialOfferCampaign dataclass

SpecialOfferCampaign(
    transport: Transport,
    campaign_id: int | str | None = None,
    user_id: int | str | None = None,
)

Bases: DomainObject

Доменный объект рассылки скидок и спецпредложений.

get_available

get_available(
    *, item_ids: list[int]
) -> SpecialOfferAvailableResult

Получает объявления, доступные для рассылки.

Raises: AvitoError с полями operation, status, request_id, attempt, method и endpoint.

create_multi

create_multi(
    *,
    item_ids: list[int],
    message: str,
    discount_percent: int | None = None,
    idempotency_key: str | None = None,
) -> MultiCreateSpecialOfferResult

Создает рассылку спецпредложений.

Параметр idempotency_key задает ключ идемпотентности для безопасного повтора write-операции.

Raises: AvitoError с полями operation, status, request_id, attempt, method и endpoint.

confirm_multi

confirm_multi(
    *,
    campaign_id: str | None = None,
    idempotency_key: str | None = None,
) -> WebhookActionResult

Подтверждает и оплачивает рассылку.

Параметр idempotency_key задает ключ идемпотентности для безопасного повтора write-операции.

Raises: AvitoError с полями operation, status, request_id, attempt, method и endpoint.

get_stats

get_stats(
    *, campaign_id: str | None = None
) -> SpecialOfferStatsResult

Получает статистику рассылки.

Raises: AvitoError с полями operation, status, request_id, attempt, method и endpoint.

get_tariff_info

get_tariff_info() -> TariffInfo

Получает информацию о тарифе спецпредложений.

Raises: AvitoError с полями operation, status, request_id, attempt, method и endpoint.

MessageActionStatus

Bases: str, Enum

Статус операции с сообщением или чатом.

MessageDirection

Bases: str, Enum

Направление сообщения.

MessageType

Bases: str, Enum

Тип сообщения.

SpecialOfferCampaignStatus

Bases: str, Enum

Статус кампании спецпредложений.

SubscriptionStatus

Bases: str, Enum

Статус webhook-подписки.

WebhookStatus

Bases: str, Enum

Статус действия с webhook.

ChatInfo dataclass

ChatInfo(
    chat_id: str | None,
    user_id: int | None,
    title: str | None,
    unread_count: int | None,
    last_message_text: str | None,
)

Bases: SerializableModel

Информация о чате.

ChatsResult dataclass

ChatsResult(
    items: list[ChatInfo], total: int | None = None
)

Bases: SerializableModel

Список чатов.

MessageActionResult dataclass

MessageActionResult(
    success: bool,
    message_id: str | None = None,
    status: MessageActionStatus | None = None,
)

Bases: SerializableModel

Результат операции с сообщением или чатом.

MessageInfo dataclass

MessageInfo(
    message_id: str | None,
    chat_id: str | None,
    author_id: int | None,
    text: str | None,
    created_at: datetime | None,
    direction: MessageDirection | None,
    type: MessageType | None,
)

Bases: SerializableModel

Информация о сообщении чата.

MessagesResult dataclass

MessagesResult(
    items: list[MessageInfo], total: int | None = None
)

Bases: SerializableModel

Список сообщений чата.

MultiCreateSpecialOfferResult dataclass

MultiCreateSpecialOfferResult(
    campaign_id: str | None,
    status: SpecialOfferCampaignStatus | None,
)

Bases: SerializableModel

Результат создания рассылки.

SpecialOfferAvailableResult dataclass

SpecialOfferAvailableResult(
    items: list[SpecialOfferAvailableItem],
)

Bases: SerializableModel

Результат получения доступных объявлений.

SpecialOfferStatsResult dataclass

SpecialOfferStatsResult(
    campaign_id: str | None,
    sent_count: int | None,
    delivered_count: int | None,
    read_count: int | None,
)

Bases: SerializableModel

Статистика рассылки.

SubscriptionsResult dataclass

SubscriptionsResult(items: list[SubscriptionInfo])

Bases: SerializableModel

Список webhook-подписок.

TariffInfo dataclass

TariffInfo(
    price: float | None,
    currency: str | None,
    daily_limit: int | None,
)

Bases: SerializableModel

Информация о тарифе рассылок.

UploadImageFile dataclass

UploadImageFile(
    field_name: str,
    filename: str,
    content: bytes | BinaryIO,
    content_type: str,
)

Файл изображения для загрузки в мессенджер.

UploadImagesRequest dataclass

UploadImagesRequest(files: list[UploadImageFile])

Запрос загрузки изображений для сообщений.

to_files

to_files() -> dict[str, object]

Сериализует multipart-структуру для transport.

UploadImagesResult dataclass

UploadImagesResult(items: list[UploadImageResult])

Bases: SerializableModel

Список загруженных изображений.

VoiceFilesResult dataclass

VoiceFilesResult(items: list[VoiceFile])

Bases: SerializableModel

Список голосовых сообщений.

WebhookActionResult dataclass

WebhookActionResult(
    success: bool, status: WebhookStatus | None = None
)

Bases: SerializableModel

Результат операции с webhook.