Skip to main content

Async Python client for MyDot.one social platform

Project description

aiodot logo

aiodot 🚀

Async Python client for MyDot.one social platform
Build bots, automation, and tools with ease.

PyPI version Python License: MIT


aiodot is an asynchronous Python library for MyDot.one. Built with aiohttp — fast, async-first, session-based like aiogram.


✨ Features

  • Async-first — Built on aiohttp
  • 💾 Session persistence — Login once, auto-loads next time
  • 🔄 Auto token refresh — Handles 401 gracefully
  • 📦 50+ endpoints — Full API coverage
  • 🎯 Type hints — Full type annotations

📦 Installation

pip install aiodot

💡 Quick Start

import asyncio
from aiodot import MyDotClient

TOKEN = "your-token"  # F12 → Cookies → __Secure-access_token

async def main():
    async with MyDotClient(token=TOKEN, session_file="user.session.json") as client:
        me = await client.get_me()
        print(f"@{me.username}")

        dot = await client.create_dot("Hello aiodot! 🚀")
        print(dot.url)

asyncio.run(main())

🤖 Echo Bot

import asyncio
from aiodot import MyDotClient

TOKEN = "your-token"

async def main():
    processed = set()
    async with MyDotClient(token=TOKEN, session_file="bot.session.json") as c:
        print(f"🤖 @{(await c.get_me()).username} started!")
        while True:
            for n in (await c.get_notifications(10)).get("results", []):
                if n.get("id") in processed: continue
                processed.add(n.get("id"))
                if n.get("type") == "mention":
                    d = n.get("dot", {})
                    if d.get("id"):
                        await c.reply(d["id"], "Hello! 🤖")
            await asyncio.sleep(15)

asyncio.run(main())

📖 API Reference

Category Methods
Profile get_me(), update_profile(), set_visibility()
Dots create_dot(), get_dot(), reply(), repost(), quote(), like(), bookmark(), edit_dot(), delete_dot()
Social follow(), unfollow(), block(), unblock(), mute(), unmute()
Users search_users(), get_user_followers(), get_user_following(), get_user_dots()
Feed home_feed(), following_feed(), follow_suggestions()
Notifications get_notifications(), mark_all_read(), get_notification_preferences()
Trending get_trending_hashtags(), get_trending_media()

⚠️ Disclaimer

Unofficial library. Use responsibly per MyDot.one Terms of Service.


📡 Community


📄 License

MIT © karbaladev.ir

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

aiodot-1.0.0.tar.gz (10.7 kB view details)

Uploaded Source

Built Distribution

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

aiodot-1.0.0-py3-none-any.whl (10.0 kB view details)

Uploaded Python 3

File details

Details for the file aiodot-1.0.0.tar.gz.

File metadata

  • Download URL: aiodot-1.0.0.tar.gz
  • Upload date:
  • Size: 10.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.2

File hashes

Hashes for aiodot-1.0.0.tar.gz
Algorithm Hash digest
SHA256 562f90400f40970e5761eb29d16154bfa0d07569a2c3f89ed208b37039eb7603
MD5 74bd8045285fb4a96b1e6365541eef89
BLAKE2b-256 8e67fd1dd00eba2256fd3a2a0ec1c19f4249a316c70b72f401cf41483dcf6bba

See more details on using hashes here.

File details

Details for the file aiodot-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: aiodot-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 10.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.2

File hashes

Hashes for aiodot-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 cb861102c7299a98c60d093ff160b1994988a9863a8b6edc12c0cd4fc75d98dc
MD5 81a1532f107fd7ab22019af4280b5e24
BLAKE2b-256 5fbb7a85fb2447872a8b74380f6c91e77e6a1213ffdcad4c1d0b5f3161ba665d

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