Metadata-Version: 2.5
Name: deewan
Version: 0.2.0
Summary: Official server SDK for the Deewan video meetings API: rooms, join links, meetings, polls, breakouts, recordings and webhooks.
Project-URL: Documentation, https://deewan.io/en/docs/sdk
Project-URL: Repository, https://github.com/deewanio/deewan-platform/tree/main/packages/python
Project-URL: Issues, https://github.com/deewanio/deewan-platform/issues
Author-email: Deewan <support@deewan.io>
License-Expression: MIT
License-File: LICENSE
Keywords: deewan,e2ee,meetings,video,webrtc
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Typing :: Typed
Requires-Python: >=3.9
Provides-Extra: recordings
Requires-Dist: cryptography>=42; extra == 'recordings'
Description-Content-Type: text/markdown

# deewan

The official Python server SDK for the [Deewan](https://deewan.io) video meetings API.

```bash
pip install deewan
pip install "deewan[recordings]"   # only to download (decrypt) recordings
```

```python
import os
from deewan import Deewan, DeewanError, verify_webhook

deewan = Deewan(os.environ["DEEWAN_API_KEY"])

room = deewan.rooms.create(name="Onboarding call")
link = deewan.rooms.create_join_link(room["id"], name="Sara", role="host")
token = deewan.rooms.create_token(room["id"], name="Omar")  # for a custom interface

event = verify_webhook(raw_body, headers["Deewan-Signature"], os.environ["DEEWAN_WEBHOOK_SECRET"])
```

Python 3.9+, no dependencies. Requests time out after 15 s; reads are retried
on 429 and 5xx, writes only when they can't have been applied. Redirects and
plain http are refused, so the key is only ever sent to Deewan. Errors are
`DeewanError` with `status`, `code`, `message` and `request_id`.

Server-side only — the API key must never reach a browser or app.
Full reference: https://deewan.io/en/docs/sdk
