Metadata-Version: 2.5
Name: sesy
Version: 0.1.0
Summary: Python SDK for SESY email service
Project-URL: Homepage, https://sesy.email
Project-URL: Documentation, https://sesy.email/docs
Project-URL: Source, https://github.com/denibertovic/sesy-python
Project-URL: Tracker, https://github.com/denibertovic/sesy-python/issues
Author: Deni Bertovic
License-Expression: MIT
License-File: LICENSE
Keywords: api,email,sdk,ses
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Communications :: Email
Classifier: Typing :: Typed
Requires-Python: >=3.9
Requires-Dist: httpx>=0.25.0
Provides-Extra: dev
Requires-Dist: mypy>=1.0.0; extra == 'dev'
Requires-Dist: pytest-asyncio>=0.21.0; extra == 'dev'
Requires-Dist: pytest-httpx>=0.30.0; extra == 'dev'
Requires-Dist: pytest>=7.0.0; extra == 'dev'
Requires-Dist: ruff>=0.1.0; extra == 'dev'
Description-Content-Type: text/markdown

# SESY Python SDK

Python client library for the SESY email service.

## Installation

```bash
uv add sesy
```

Or with pip:

```bash
pip install sesy
```

## Quick Start

```python
from sesy import SesyClient

client = SesyClient(api_key="your-api-key")

# Send an email
response = client.send_email(
    to="user@example.com",
    subject="Hello",
    html="<h1>Welcome!</h1>",
)
print(f"Message ID: {response.message_id}")

# Check message status
message = client.get_message(response.message_id)
print(f"Status: {message.status}")
```

## Async Support

```python
from sesy import AsyncSesyClient

async with AsyncSesyClient(api_key="your-api-key") as client:
    response = await client.send_email(
        to="user@example.com",
        template="welcome",
        data={"name": "John"},
    )
```

## API Methods

- `send_email()` - Send an email
- `get_message()` - Get message details
- `list_suppressions()` - List suppressed emails
- `add_suppression()` - Add email to suppression list
- `get_limits()` - Get rate limit status
