Skip to main content

Unisender Go API

Библиотека Unisender Go API упрощает работу с веб API Unisender Go. Библиотека предоставляет тонкую обёртку над HTTPX: она добавляет к обычным возможностям HTTPX свои схемы данных, а также удобные часто используемые функции, но не мешает, при необходимости, спускаться ниже на уровень HTTP-запросов.

Документация к API Unisender Go.

Ключевые возможности библиотеки

Ключевые возможности библиотеки Unisender Go API:

  • Готовый механизм авторизации
  • Поддержка синхронных и асинхронных запросов к API
  • Доступ к API из любого места в коде через contextvars
  • Строгая валидация данных перед отправкой запросов к API
  • Строгая валидация данных при получении данных от API
  • Наглядные схемы данных для всех типов запросов и ответов к API с цитатами из оф.документации к API
  • Подробная отладочная информация по взаимодействию с API
  • Возможность добавлять новые API endpoints по мере их появления в Unisender Go прямо из внешнего прикладного кода

Пример использования

Пример использования синхронного клиента для отправки письма на адрес recepient@example.com:

from unisender_go_api import SyncClient, SendRequest

with SyncClient.setup('place-your-token-here'):
    request = SendRequest(
        message={
            "recipients": [
                {"email": "recepient@example.com"},
            ],
            "body": {
                "html": "<b>Hello, username!</b>",
            },
            "subject": "Greetings to you",
            "from_email": "mailing@dvmn.org",
        },
    )
    request.send()

Известные ограничения

Временные ограничения:

  • Из всем методов API реализован только send, и то ограничениями:
    • Не поддерживается recipients[].metadata
    • Не поддерживается global_metadata
    • Не поддерживается bypass_global
    • Не поддерживается bypass_unavailable
    • Не поддерживается bypass_unsubscribed
    • Не поддерживается bypass_complained
    • Не поддерживается headers
    • Не поддерживается options
  • Не реализован асинхронный клиент
  • Не реализованы shortcuts для упрощённого доступа к API
  • Из двух серверов Unisender Go поддерживается только один — https://go1.unisender.ru/ru/transactional/api/

Исключения

При работе с API библиотека Unisender Go API API выкидывает несколько типов исключений:

  • UnisenderGoError и его подтипы, см. файл unisender_go_api/exceptions.py
  • httpx.HTTPError
  • pydantic.ValidationError — только при подготовке данных исходящего запроса к API, но не при обработке HTTP ответа

Release files for unisender-go-api 0.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for unisender-go-api 0.3.0
File Size Uploaded
unisender_go_api-0.3.0.tar.gz 10.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for unisender-go-api 0.3.0
File Interpreter ABI Platform
unisender_go_api-0.3.0-py3-none-any.whl Python 3 none any Details

Total release size: 20.8 kB

Release files / unisender_go_api-0.3.0.tar.gz

Download URL unisender_go_api-0.3.0.tar.gz
Size 10.0 kB
Tags Source
SHA-256 checksum
How to use checksums
a0e9d06318b83d1fc3ed1c0dce9d44e6e851d70f9d48f36a7fdcddcf19f80862
BLAKE2b-256 checksum
How to use checksums
cde612a95e704709c49b763584803d28447292b86259a0c13e99471643a3b80f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.0.0 CPython/3.12.3

Release files / unisender_go_api-0.3.0-py3-none-any.whl

Download URL unisender_go_api-0.3.0-py3-none-any.whl
Size 10.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
92c8e1df9ce37f7c134af536c8bd32e688790cc90c7293d2595340dd1b3a95d1
BLAKE2b-256 checksum
How to use checksums
3e8f45b3176759a8fa87b222cb5c3c3b1a3504edc1c50ca1ab915b0abdd089c7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.0.0 CPython/3.12.3

Release history Release notifications | RSS feed

This release

0.3.0 This release

2 release files

0.2.0

2 release files

0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page