{"id":22325858,"url":"https://github.com/falahati/sdroid","last_synced_at":"2026-04-01T23:34:09.725Z","repository":{"id":65386913,"uuid":"158919049","full_name":"falahati/SDroid","owner":"falahati","description":"SDroid is a framework for designing and running custom bots for Steam network capable of trading and managing the Steam Account they are connected to.","archived":false,"fork":false,"pushed_at":"2024-02-09T17:52:06.000Z","size":17517,"stargazers_count":24,"open_issues_count":8,"forks_count":3,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-07-24T05:59:05.067Z","etag":null,"topics":["authenticator","custom-bot","otp-generator","steam","steam-account","steam-api","steamauth","steambot","trading"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/falahati.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2018-11-24T08:58:52.000Z","updated_at":"2025-06-29T10:10:59.000Z","dependencies_parsed_at":"2023-01-25T14:01:15.580Z","dependency_job_id":"a928348a-6f9b-481b-9d82-60f28da1cf8a","html_url":"https://github.com/falahati/SDroid","commit_stats":{"total_commits":765,"total_committers":69,"mean_commits":11.08695652173913,"dds":0.8313725490196078,"last_synced_commit":"8e2659c2b509608c34caeaab1c7aaea2fef40e42"},"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/falahati/SDroid","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/falahati%2FSDroid","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/falahati%2FSDroid/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/falahati%2FSDroid/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/falahati%2FSDroid/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/falahati","download_url":"https://codeload.github.com/falahati/SDroid/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/falahati%2FSDroid/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266822379,"owners_count":23989825,"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","status":"online","status_checked_at":"2025-07-24T02:00:09.469Z","response_time":99,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["authenticator","custom-bot","otp-generator","steam","steam-account","steam-api","steamauth","steambot","trading"],"created_at":"2024-12-04T02:14:10.247Z","updated_at":"2026-04-01T23:34:09.683Z","avatar_url":"https://github.com/falahati.png","language":"C#","funding_links":["https://www.paypal.com/cgi-bin/webscr?cmd=_donations\u0026business=ramin.graphix@gmail.com\u0026lc=US\u0026item_name=Donate\u0026no_note=0\u0026cn=\u0026curency_code=USD\u0026bn=PP-DonationsBF:btn_donateCC_LG.gif:NonHosted"],"categories":[],"sub_categories":[],"readme":"## SDroid\n[![](https://img.shields.io/github/license/falahati/SDroid.svg?style=flat-square)](https://github.com/falahati/SDroid/blob/master/LICENSE)\n[![](https://img.shields.io/github/commit-activity/y/falahati/SDroid.svg?style=flat-square)](https://github.com/falahati/SDroid/commits/master)\n[![](https://img.shields.io/github/issues/falahati/SDroid.svg?style=flat-square)](https://github.com/falahati/SDroid/issues)\n\n**SDroid** is a framework for designing and running custom bots for Steam network capable of trading \nand managing the Steam Account they are connected to.\n\nBased on [geel9's SteamAuth](https://github.com/geel9/SteamAuth) and [Jessecar96's SteamBot](https://github.com/Jessecar96/SteamBot) projects.\n\n## Components\n### SDroid.SteamWeb\n[![](https://img.shields.io/nuget/dt/SDroid.SteamWeb.svg?style=flat-square)](https://www.nuget.org/packages/SDroid.SteamWeb)\n[![](https://img.shields.io/nuget/v/SDroid.SteamWeb.svg?style=flat-square)](https://www.nuget.org/packages/SDroid.SteamWeb)\n\n**SDroid.SteamWeb** is a C# library that provides Steam web login, access and WebAPI functionalities.\n\nClick [here](/SDroid.SteamWeb/README.md) to read more about this library.\n\nThis library is available as a NuGet package [here](https://www.nuget.org/packages/SDroid.SteamWeb).\n\n### SDroid.SteamMobile\n[![](https://img.shields.io/nuget/dt/SDroid.SteamMobile.svg?style=flat-square)](https://www.nuget.org/packages/SDroid.SteamMobile)\n[![](https://img.shields.io/nuget/v/SDroid.SteamMobile.svg?style=flat-square)](https://www.nuget.org/packages/SDroid.SteamMobile)\n\n**SDroid.SteamMobile** is a C# library that provides Steam Mobile and Mobile Authenticator functionalities.\n\nClick [here](/SDroid.SteamMobile/README.md) to read more about this library.\n\nThis library is available as a NuGet package [here](https://www.nuget.org/packages/SDroid.SteamMobile).\n\n### SDroid.SteamTrade\n[![](https://img.shields.io/nuget/dt/SDroid.SteamTrade.svg?style=flat-square)](https://www.nuget.org/packages/SDroid.SteamTrade)\n[![](https://img.shields.io/nuget/v/SDroid.SteamTrade.svg?style=flat-square)](https://www.nuget.org/packages/SDroid.SteamTrade)\n\n**SDroid.SteamTrade** is a C# library that provides Steam trading and inventory retrieval functionalities.\n\nClick [here](/SDroid.SteamTrade/README.md) to read more about this library.\n\nThis library is available as a NuGet package [here](https://www.nuget.org/packages/SDroid.SteamTrade).\n\n### SDroid\n[![](https://img.shields.io/nuget/dt/SDroid.svg?style=flat-square)](https://www.nuget.org/packages/SDroid)\n[![](https://img.shields.io/nuget/v/SDroid.svg?style=flat-square)](https://www.nuget.org/packages/SDroid)\n\n**SDroid** in the highest level library in this project that aims to provides developers with an easier path to\ndesign, develop and deploy a custom bot for the Steam Network.\n\nThis readme file contains information about the types available in this library and links to some simple\nsample bots developed with it.\n\nThis library is available as a NuGet package [here](https://www.nuget.org/packages/SDroid).\n\n## Help me fund my own Death Star\n\n[![](https://img.shields.io/badge/crypto-CoinPayments-8a00a3.svg?style=flat-square)](https://www.coinpayments.net/index.php?cmd=_donate\u0026reset=1\u0026merchant=820707aded07845511b841f9c4c335cd\u0026item_name=Donate\u0026currency=USD\u0026amountf=20.00000000\u0026allow_amount=1\u0026want_shipping=0\u0026allow_extra=1)\n[![](https://img.shields.io/badge/shetab-ZarinPal-8a00a3.svg?style=flat-square)](https://zarinp.al/@falahati)\n[![](https://img.shields.io/badge/usd-Paypal-8a00a3.svg?style=flat-square)](https://www.paypal.com/cgi-bin/webscr?cmd=_donations\u0026business=ramin.graphix@gmail.com\u0026lc=US\u0026item_name=Donate\u0026no_note=0\u0026cn=\u0026curency_code=USD\u0026bn=PP-DonationsBF:btn_donateCC_LG.gif:NonHosted)\n\n**--OR--**\n\nYou can always donate your time by contributing to the project or by introducing it to others.\n\n## Classes\nFollowings are the classes available in this library along with their primary responsibility.\n\n### `SteamBot`\n`SteamBot` is an abstract class allowing developers to create a simple Steam Bot with as little code as possible.\n\n### `SteamKitBot`\n`SteamKitBot` is an abstract class extending the `SteamBot` type which aims to allow developers\nto make a Steam Bot with access to the Steam Network through the [SteamKit2](https://github.com/SteamRE/SteamKit) \nlibrary with as little code as possible.\n\n\n## Interfaces\nFollowings are the classes available in this library along with their primary responsibility.\n\n### `IAuthenticatorBot`\n`IAuthenticatorBot` is an interface that can be added to a `SteamBot` child class that allows the login \nprocess to use the code generated by the authenticator to login into the Steam Website or Network.\n\nThe process of linking an authenticator to the account should be still handled by the developer. However, a \nbot extending the `SteamBot` and implementing the `IAuthenticatorBot` will also be notified if a new \nauthenticator confirmation becomes available.\n\nAn `IAuthenticatorBot` bot automatically logs in using the mobile endpoints. This also allows for a greater\nsession validity.\n\n### `ITradeBot`\n`ITradeBot` is an interface that can be added to a `SteamBot` child class that automatically initializes an instance of\n`TradeManager` after login and notifies the bot extending the `SteamBot` and implementing the `ITradeBot`\nof its events.\n\n### `ITradeOfferBot`\n`ITradeOfferBot` is an interface that can be added to a `SteamBot` child class that automatically initializes an instance of\n`TradeOfferManager` after login and notifies the bot extending the `SteamBot` and implementing the `ITradeOfferBot`\nof its events.\n\n\n\n## Samples\nThere are three sample bots available as part of the **SDroidTest** project:\n\n### `AuthenticatorBot`\n`AuthenticatorBot` is a bot extending the `SteamBot` and implementing the `IAuthenticatorBot` interface that\nasks for a \"maFile\" or a \"maFile2\" to deserialize an authenticator as part of the login process. This bot also gets\nnotifications regarding new authenticator confirmations and can accept or reject these confirmations from the terminal.\n\nRead the code being this bot by clicking [here](/SDroidTest/AuthenticatorBot.cs) or by compiling the `SDroidTest` project.\n\n### `SteamKitBot`\n`SteamKitBot` is a bot extending the `SteamKitBot` type and connects to the Steam Network, logs in, changes its online status, gets notifications regarding the account settings and wallet information as well as new chat messages. \n\nChat responses can be sent from the terminal to all friends.\n\nRead the code being this bot by clicking [here](/SDroidTest/SteamKitBot.cs) or by compiling the `SDroidTest` project.\n\n\n### `TradeOfferBot`\n`TradeOfferBot` is a bot extending the `SteamBot` and implementing the `ITradeofferBot` interface that login in and\ngets notifications regarding changes in trade offers as well as retrieving bot's inventory on login.\n\nIncoming trade offers can be accepted or rejected from the terminal.\n\nRead the code being this bot by clicking [here](/SDroidTest/TradeOfferBot.cs) or by compiling the `SDroidTest` project.\n\n\n\n## Disclaimer\nPlease note that this library created for research and educational propose only and there is no guarantee for it to work or function properly. \n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n\n\n\n## License\nThe MIT License (MIT)\n\nCopyright (c) 2018-2020 Soroush Falahati\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffalahati%2Fsdroid","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffalahati%2Fsdroid","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffalahati%2Fsdroid/lists"}