Skip to main content

Python SDK for the UseSend API

Project description

UseSend Python SDK

A minimal Python SDK for the UseSend API, mirroring the structure of the JavaScript SDK.

Installation

Install via pip or Poetry:

pip install usesend
# or
poetry add usesend

Usage

from usesend import UseSend, types

# By default: raises UseSendHTTPError on non-2xx.
client = UseSend("us_123")

# 1) TypedDict payload (autocomplete in IDEs). Use dict to pass 'from'.
payload: types.EmailCreate = {
    "to": "test@example.com",
    "from": "no-reply@example.com",
    "subject": "Hello",
    "html": "<strong>Hi!</strong>",
}
resp, _ = client.emails.send(payload=payload)

# 2) Or pass a plain dict (supports 'from')
resp, _ = client.emails.send(payload={
    "to": "test@example.com",
    "from": "no-reply@example.com",
    "subject": "Hello",
    "html": "<strong>Hi!</strong>",
})

# Toggle behavior if desired:
# - raise_on_error=False: return (None, error_dict) instead of raising
# No model parsing occurs; methods return plain dicts following the typed shapes.
client = UseSend("us_123", raise_on_error=False)
raw, err = client.emails.get(email_id="email_123")
if err:
    print("error:", err)
else:
    print("ok:", raw)

Development

This package is managed with Poetry. Models are maintained in-repo under usesend/types.py (readable names). Update this file as the API evolves.

It is published as usesend on PyPI.

Notes

  • Human-friendly models are available under usesend.types (e.g., EmailCreate, Contact, APIError).
  • Endpoint methods accept TypedDict payloads or plain dicts via the payload= keyword.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

usesend-0.2.4.tar.gz (6.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

usesend-0.2.4-py3-none-any.whl (8.5 kB view details)

Uploaded Python 3

File details

Details for the file usesend-0.2.4.tar.gz.

File metadata

  • Download URL: usesend-0.2.4.tar.gz
  • Upload date:
  • Size: 6.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.23

File hashes

Hashes for usesend-0.2.4.tar.gz
Algorithm Hash digest
SHA256 8e47ce17aecde3e91fa58dbbf6e07afebf9e2953bb6363921e5edbe86de9dd66
MD5 59c9d7b095a0012c91c4c3b6efb9d58c
BLAKE2b-256 61ed4bdac68e57d36bc0e3010405e5e745f2bbe7c9ca182d8411998cbae4f968

See more details on using hashes here.

File details

Details for the file usesend-0.2.4-py3-none-any.whl.

File metadata

  • Download URL: usesend-0.2.4-py3-none-any.whl
  • Upload date:
  • Size: 8.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.23

File hashes

Hashes for usesend-0.2.4-py3-none-any.whl
Algorithm Hash digest
SHA256 f2d80c2b0d7a0d2ba6e305cb6b4ba93bc6fb0f12a3020bcec1e43f35394f8668
MD5 568b617fd2a25c1aadadc37cb3f1b3b8
BLAKE2b-256 475da0f222e21cf9ea03fc524125395820abab3bb587a3f7066d38fc3050ba2c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page