weezy-sdk
Typed SMS clients for Python 3.11+.
Installation
pip install weezy-sdk
The package is named weezy-sdk; import clients from weezy.
For local development, install from this repository with pip install ./python.
Synchronous client
import os
from weezy import Weezy, WeezyError
with Weezy(
client_id=os.environ['WEEZY_CLIENT_ID'],
client_secret=os.environ['WEEZY_CLIENT_SECRET'],
) as client:
wallet = client.sms.balance()
print(f"Balance: {wallet['balance']:.3f} points") # 1 point = 1 EUR
message = client.sms.send(body={
'to': '+2250700000000', 'body': 'Bonjour !', 'sender_name': 'WEEZY',
})
print(f"Cost: {message['cost']} points")
status = client.sms.status(message_x_id=message['x_id'])
Asynchronous client
import asyncio
import os
from weezy import AsyncWeezy
async def main():
async with AsyncWeezy(
client_id=os.environ['WEEZY_CLIENT_ID'],
client_secret=os.environ['WEEZY_CLIENT_SECRET'],
) as client:
wallet = await client.sms.balance()
print(f"Balance: {wallet['balance']:.3f} points")
asyncio.run(main())
Send methods create real messages with live credentials. Use a dedicated test account and recipient when testing.
SMS methods: balance(), senders(), send(body=...), send_bulk(body=...), status(message_x_id=...), opt_outs(body=...). All arguments are keyword-only. See the full reference.
WeezyError exposes status, details and request_id. A timeout or transport failure has status 0. Close clients with close() / await aclose() or use the context managers above. Options include base_url (full client API prefix), timeout in seconds and an injectable httpx transport. No automatic retries.
SMS amounts (balance, cost, unit_price, amount_reserved, ...) are float values in points (1 point = 1 EUR, up to 3 decimals), with unit == 'point' on the object.
TypedDict request and response contracts are exported from weezy.types. They support editor/type-checker assistance; runtime validation remains on the API.
Metadata
Release files for weezy-sdk 0.3.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| weezy_sdk-0.3.0.tar.gz | 7.8 kB | With provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| weezy_sdk-0.3.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 14.5 kB
Release files / weezy_sdk-0.3.0.tar.gz
| Download URL | weezy_sdk-0.3.0.tar.gz |
|---|---|
| Size | 7.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
44deef48eda4c8315b8bff18038b154b09c1823014d4dc1e5086fb008c0dabd7
|
|
BLAKE2b-256 checksum How to use checksums |
238f89f55de8b47598bb4304c5dc1beb8d2a6ee1d4fb0ea5d224086a655ea137
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 9, 2026.
Transparency logRelease files / weezy_sdk-0.3.0-py3-none-any.whl
| Download URL | weezy_sdk-0.3.0-py3-none-any.whl |
|---|---|
| Size | 6.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
9224133492828ee7ca064ecbf159ed46147ccda0e52bdbd4a397342b8ea20b69
|
|
BLAKE2b-256 checksum How to use checksums |
48010368d74887a6a80ab0deab02cefb8c66e637c6fbea313fb5bb9ccf5a13ee
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 9, 2026.
Transparency logSecurity for weezy-sdk 0.3.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for weezy_sdk-0.3.0.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 9, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.