{"id":18976295,"url":"https://github.com/aiogram/aiohttp-session","last_synced_at":"2026-04-09T08:30:18.484Z","repository":{"id":66186356,"uuid":"264560428","full_name":"aiogram/aiohttp-session","owner":"aiogram","description":"Session extension for aiogram","archived":false,"fork":false,"pushed_at":"2020-05-17T15:20:40.000Z","size":23,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-02-13T08:28:40.808Z","etag":null,"topics":["aiogram","aiohttp-client"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/aiogram.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2020-05-17T01:24:35.000Z","updated_at":"2024-06-25T13:02:34.000Z","dependencies_parsed_at":"2023-02-21T17:00:47.028Z","dependency_job_id":null,"html_url":"https://github.com/aiogram/aiohttp-session","commit_stats":{"total_commits":3,"total_committers":1,"mean_commits":3.0,"dds":0.0,"last_synced_commit":"7d4b82be851c99a9cc344f50018c454b9d5dddb6"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aiogram%2Faiohttp-session","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aiogram%2Faiohttp-session/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aiogram%2Faiohttp-session/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aiogram%2Faiohttp-session/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aiogram","download_url":"https://codeload.github.com/aiogram/aiohttp-session/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239978057,"owners_count":19728271,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aiogram","aiohttp-client"],"created_at":"2024-11-08T15:23:30.837Z","updated_at":"2026-04-09T08:30:18.432Z","avatar_url":"https://github.com/aiogram.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"Aiohttp extension for aiogram\n#############################\n\nUsing aiogram with aiohttp as http client\n\nAiohttpSession represents a wrapper-class around `ClientSession` from `aiohttp \u003chttps://pypi.org/project/aiohttp/\u003e`_\n\nInstallation\n============\n\n::\n\n    pip install aiogram_aiohttp_session\n\n\nBasic Usage example\n===================\n\n.. code-block:: python\n\n\n    from aiogram import Bot\n    from aiogram_aiohttp_session import AiohttpSession\n\n    session = AiohttpSession()\n    Bot('token', session=session)\n\n\nProxy requests in AiohttpSession\n================================\n\nIn order to use AiohttpSession with proxy connector you have to install `aiohttp-socks \u003chttps://pypi.org/project/aiohttp-socks/\u003e`_\n\nCreate proxy session\n--------------------\n\n.. code-block:: python\n\n    from aiogram import Bot\n    from aiogram_aiohttp_session import AiohttpSession\n\n    session = AiohttpSession(proxy=\"protocol://host:port/\")\n    Bot(token=\"bot token\", session=session)\n\n.. note:: Only following protocols are supported: http(tunneling), socks4(a), socks5 as aiohttp_socks documentation claims.\n\n\nAuthorization\n-------------\n\nProxy authorization credentials can be specified in proxy URL or come as an instance of `aiohttp.BasicAuth` containing\nlogin and password.\n\nConsider examples:\n\n.. code-block:: python\n\n    from aiohttp import BasicAuth\n    from aiogram_aiohttp_session import AiohttpSession\n\n    auth = BasicAuth(login=\"user\", password=\"password\")\n    session = AiohttpSession(proxy=(\"protocol://host:port\", auth))\n    # or simply include your basic auth credential in URL\n    session = AiohttpSession(proxy=\"protocol://user:password@host:port\")\n\n\n.. note:: Library prefers `BasicAuth` over username and password in URL, so\n    if proxy URL contains login and password and `BasicAuth` object is passed at the same time\n    aiogram will use login and password from `BasicAuth` instance.\n\n\nProxy chains\n------------\n\nSince `aiohttp-socks \u003chttps://pypi.org/project/aiohttp-socks/\u003e`_ supports proxy chains, you're able to use them in aiogram\n\nExample of chain proxies:\n^^^^^^^^^^^^^^^^^^^^^^^^^\n\n.. code-block:: python\n\n    from aiohttp import BasicAuth\n    from aiogram_aiohttp_session import AiohttpSession\n\n    auth = BasicAuth(login=\"user\", password=\"password\")\n    session = AiohttpSession(\n        proxy={\"protocol0://host:port0\",\n               \"protocol1://user:password@host:port1\",\n               (\"protocol2://host:port2\", auth),}  # can be any iterable if not set\n    )\n\n\nRationale\n=========\n\nGet rid of huge redundant code-base in main repo. Make an example of session extension for aiogram\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faiogram%2Faiohttp-session","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faiogram%2Faiohttp-session","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faiogram%2Faiohttp-session/lists"}