https://github.com/malmeloo/FindMy.py Skip to content Navigation Menu Toggle navigation Sign in * Product + GitHub Copilot Write better code with AI + Security Find and fix vulnerabilities + Actions Automate any workflow + Codespaces Instant dev environments + Issues Plan and track work + Code Review Manage code changes + Discussions Collaborate outside of code + Code Search Find more, search less Explore + All features + Documentation + GitHub Skills + Blog * Solutions By company size + Enterprises + Small and medium teams + Startups By use case + DevSecOps + DevOps + CI/CD + View all use cases By industry + Healthcare + Financial services + Manufacturing + Government + View all industries View all solutions * Resources Topics + AI + DevOps + Security + Software Development + View all Explore + Learning Pathways + White papers, Ebooks, Webinars + Customer Stories + Partners + Executive Insights * Open Source + GitHub Sponsors Fund open source developers + The ReadME Project GitHub community articles Repositories + Topics + Trending + Collections * Enterprise + Enterprise platform AI-powered developer platform Available add-ons + Advanced Security Enterprise-grade security features + GitHub Copilot Enterprise-grade AI features + Premium Support Enterprise-grade 24/7 support * Pricing Search or jump to... Search code, repositories, users, issues, pull requests... Search [ ] Clear Search syntax tips Provide feedback We read every piece of feedback, and take your input very seriously. [ ] [ ] Include my email address so I can be contacted Cancel Submit feedback Saved searches Use saved searches to filter your results more quickly Name [ ] Query [ ] To see all available qualifiers, see our documentation. Cancel Create saved search Sign in Sign up Reseting focus You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert {{ message }} malmeloo / FindMy.py Public * * Notifications You must be signed in to change notification settings * Fork 23 * Star 440 + + = Everything you need to query Apple's FindMy network! docs.mikealmel.ooo/findmy.py/ License MIT license 440 stars 23 forks Branches Tags Activity Star Notifications You must be signed in to change notification settings * Code * Issues 8 * Pull requests 6 * Discussions * Actions * Projects 0 * Security * Insights Additional navigation options * Code * Issues * Pull requests * Discussions * Actions * Projects * Security * Insights malmeloo/FindMy.py main BranchesTags [ ] Go to file Code Folders and files Last commit Last Name Name message commit date Latest commit History 242 Commits .github .github docs docs examples examples findmy findmy scripts scripts tests tests .envrc .envrc .gitignore .gitignore .pre-commit-config.yaml .pre-commit-config.yaml LICENSE.md LICENSE.md README.md README.md poetry.lock poetry.lock pyproject.toml pyproject.toml shell.nix shell.nix View all files Repository files navigation * README * MIT license FindMy.py [6874747073] [6874747073] [6874747073] [6874747073] The all-in-one library that provides everything you need to query Apple's FindMy network! The current "Find My-scene" is quite fragmented, with code being all over the place across multiple repositories, written by several authors. This project aims to unify this scene, providing common building blocks for any application wishing to integrate with the Find My network. Important This project is currently in Alpha. While existing functionality will likely not change much, the API design is subject to change without prior warning. You are encouraged to report any issues you can find on the issue tracker! Features * [*] Cross-platform: no Mac needed * [*] Fetch and decrypt location reports + [*] Official accessories (AirTags, iDevices, etc.) + [*] Custom AirTags (OpenHaystack) * [*] Apple account sign-in + [*] SMS 2FA support + [*] Trusted Device 2FA support * [*] Scan for nearby FindMy-devices + [*] Decode their info, such as public keys and status bytes * [*] Import or create your own accessory keys * [*] Both async and sync APIs Roadmap * [ ] Local anisette generation (without server) + More information: #2 Installation The package can be installed from PyPi: pip install findmy For usage examples, see the examples directory. Documentation can be found here. Contributing Want to contribute code? That's great! For new features, please open an issue first so we can discuss. This project uses Ruff for linting and formatting. Before opening a pull request, please ensure that your code adheres to these rules. There are pre-commit hooks included to help you with this, which you can set up as follows: pip install poetry poetry install --with dev # this installs pre-commit into your environment pre-commit install After following the above steps, your code will be linted and formatted automatically before committing it. Derivative projects There are several other cool projects based on this library! Some of them have been listed below, make sure to check them out as well. * OfflineFindRecovery - Set of scripts to be able to precisely locate your lost MacBook via Apple's Offline Find through Bluetooth Low Energy. * SwiftFindMy - Swift port of FindMy.py Credits While I designed the library, the vast majority of actual functionality is made possible by the following wonderful people and organizations: * @seemo-lab for OpenHaystack and their research; * @JJTech0130 for Pypush, providing the breakthrough necessary for getting this to work without a Mac; * @biemster for FindMy, which is the main basis of this project; * @Dadoum for pyprovision and anisette-v3-server; * @nythepegasus for GrandSlam SMS 2FA; * And probably more, so let me know! :D About + + = Everything you need to query Apple's FindMy network! docs.mikealmel.ooo/FindMy.py/ Topics find-my airtag openhaystack Resources Readme License MIT license Activity Stars 440 stars Watchers 10 watching Forks 23 forks Report repository Releases 10 FindMy.py v0.7.5 Latest Sep 18, 2024 + 9 releases Sponsor this project Sponsor Learn more about GitHub Sponsors Contributors 9 * @malmeloo * @renovate[bot] * @siebert * @Philip2809 * @robertsmd * @hajekj * @Mimoja * @tsaaristo * @pre-commit-ci-lite[bot] Languages * Python 99.8% * Other 0.2% Footer (c) 2024 GitHub, Inc. Footer navigation * Terms * Privacy * Security * Status * Docs * Contact * Manage cookies * Do not share my personal information You can't perform that action at this time.