AllChats SDK
Unified Python SDK for messaging platforms.
Connect Telegram, VK, MAX, and other messengers through one account-oriented API: authenticate, send, receive events, and persist sessions — without FastAPI or a database.
Installation
pip install allchats-sdk
# provider-specific integrations
pip install "allchats-sdk[telegram]"
pip install "allchats-sdk[vk]"
pip install "allchats-sdk[max]"
pip install "allchats-sdk[telegram,vk]"
Requires Python 3.11+. The base install is minimal; messenger runtimes are optional extras.
Quick start
import asyncio
from allchats_sdk.telegram import TelegramClient
from allchats_sdk import FileCredentialStore
async def main() -> None:
store = FileCredentialStore("./telegram-session.json")
client = TelegramClient(
account_id="acc-1",
app_id=12345, # https://my.telegram.org/apps
app_hash="your_app_hash",
credential_store=store,
)
await client.auth.start_qr()
await client.auth.wait_until_authorized(
password_provider=lambda: input("2FA password: "),
)
await client.connect()
message_id, chat_id = await client.messages.send("hello", chat_id="123456789")
print(message_id, chat_id)
await client.disconnect()
asyncio.run(main())
More scripts: examples/.
Supported messengers
| Provider | Extra | Public client | Status |
|---|---|---|---|
| Telegram | [telegram] |
TelegramClient |
First-class |
| VK | [vk] |
VKClient |
First-class |
| MAX | [max] |
MAXClient |
Host session_host required |
[whatsapp] |
— | Manager / host (no public client yet) | |
| Discord | [discord] |
— | Manager / host (no public client yet) |
| Avito | [avito] |
— | Manager / host (no public client yet) |
Capability details: docs/capabilities.md.
Capabilities
Account clients expose capability groups via properties:
client.auth # connect, QR, disconnect, …
client.messages # send
client.chats # client_state / sync (when supported)
from allchats_sdk import Capability
list(Capability) # messages, chats, auth
Unsupported groups raise UnsupportedCapabilityError. There is no client.capabilities list API — probe the properties you need.
Documentation
| Guide | Description |
|---|---|
| Getting started | Install → connect → send / receive |
| Architecture | Public vs internal layers |
| Authentication | QR, token, OAuth, MAX host |
| Events | EventSink and event types |
| Capabilities | Matrix + how to probe |
| Credentials | Stores and sanitization |
| Errors | Exception hierarchy |
| Security | Sessions, logging, reporting |
| Providers | Per-messenger notes |
Security
Do not commit session files or tokens. See SECURITY.md and docs/security.md.
Contributing
git clone https://github.com/https-allchats-pro/sdk.git
cd sdk
pip install -e ".[all,dev]"
pytest
- Prefer public imports (
allchats_sdk,allchats_sdk.telegram, …). - Do not rely on
allchats_sdk.internalin application code. - Open a PR against
main; CI must pass.
License
MIT — see LICENSE.
Metadata
Release files for allchats-sdk 0.1.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| allchats_sdk-0.1.2.tar.gz | 149.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| allchats_sdk-0.1.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 338.9 kB
Release files / allchats_sdk-0.1.2.tar.gz
| Download URL | allchats_sdk-0.1.2.tar.gz |
|---|---|
| Size | 149.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
1b6a6e3daefac602433e8206d84a497bf8e8ce49f3e76d8b9d8a8a6ab3b8c5a2
|
|
BLAKE2b-256 checksum How to use checksums |
572b98e768be3deb8b1b06ca0c2a444a2c5721de8de570c6ce0291ecc116e44e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / allchats_sdk-0.1.2-py3-none-any.whl
| Download URL | allchats_sdk-0.1.2-py3-none-any.whl |
|---|---|
| Size | 189.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
5b31f47232bd881441e494f2873162b560bba17d49007a5ddf35a7c5eb038470
|
|
BLAKE2b-256 checksum How to use checksums |
dd252d5202f797d38d90f7a94fa59a9a6d8e6b1b5a85a78bad11ad9df41984ad
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|