Metadata-Version: 2.4
Name: niilox
Version: 0.1.0
Summary: Official Python client for the Niilox API
Author-email: Niilox Communications <dev@niilox.com>
License-Expression: MIT
Project-URL: Homepage, https://www.niilox.com
Project-URL: Documentation, https://www.niilox.com/portal/dashboard/docs
Project-URL: Repository, https://github.com/niilox-communications/niilox-api
Project-URL: TypeScript SDK, https://www.npmjs.com/package/@niilox/sdk
Keywords: niilox,api,sdk,sms,payments,multi-tenant,webrtc,auth,nigeria,fintech
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
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 :: Software Development :: Libraries
Classifier: Typing :: Typed
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: httpx>=0.27
Provides-Extra: dev
Requires-Dist: pytest>=7; extra == "dev"
Requires-Dist: build; extra == "dev"
Requires-Dist: twine; extra == "dev"
Dynamic: license-file

# Niilox Python SDK

Lightweight client — **subset** of the TypeScript `@niilox/sdk`. Same API base; not full module parity.

**Install (PyPI):**

```bash
pip install niilox
```

Monorepo contributors:

```bash
pip install -e .
```

```python
from niilox import Client

client = Client.from_env()  # NIILOX_APP_ID, NIILOX_API_KEY
print(client.platform_ping())

client = Client("geogig", token=user_jwt)
print(client.users_me())
```

## Covered methods

| Area | Methods |
|------|---------|
| Platform | `platform_ping`, `platform_usage` |
| SMS / numbers | `sms_*`, `numbers_*` |
| Auth | `auth_guest`, phone, password, refresh, forgot/reset |
| Users | `users_me`, `users_token_balance`, `users_confirm_age` |
| Verification / profile | `verification_*`, `profile_*` |
| Payments / wallet | `payments_identity_*`, `wallet_summary`, `payout_details` |
| Gigs | `gigs_list`, `gigs_get`, `gigs_accept`, `gigs_video_call` |
| DMs / peer | `dms_*`, `peer_ice`, `peer_signal_url` |
| Rooms / seats | `rooms_*`, `seats_inventory`, `seats_reserve`, `seats_create_offering` |
| Gifts | `gifts_list`, `gifts_send`, `gifts_my_gifters` |
| Stage / moderation | `stage_get`, `stage_request`, `moderation_list`, `moderation_kick` |
| Scheduled / rodent | `scheduled_*`, `rodent_create_booking` |
| Safety | `safety_me` |
| WebSockets | `ws_personal_url`, `ws_room_url` |

For full API coverage use TypeScript `@niilox/sdk` or `client.request()` via extending `_HttpMixin`.

See [../README.md](../README.md) and [Platform status](../../backend/drift/docs/PLATFORM_STATUS.md).
