Thin wrapper for the Unisender Go API
Project description
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.pyhttpx.HTTPError
pydantic.ValidationError
— только при подготовке данных исходящего запроса к API, но не при обработке HTTP ответа
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
unisender_go_api-0.2.0.tar.gz
(10.0 kB
view hashes)
Built Distribution
Close
Hashes for unisender_go_api-0.2.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 75a42a1df7d330dec815d6084793bb9ab584293d8085f6a6a803278a55fe42e2 |
|
MD5 | 609a2d4307283ad5b8a20ebc5dfeba7a |
|
BLAKE2b-256 | 4b69747ba255389292efdfd80f30d384ebafa64f97c58283a578b8e89d5e460d |