pytile
A simple Python API for Tile® Bluetooth trackers
What it is and what it does
pytile is an async Python client for the unofficial Tile Bluetooth tracker API. It lets you query your Tile devices from code—fetching current location, device status (active/lost/dead), firmware versions, and other metadata. The library wraps aiohttp for async HTTP calls and handles authentication against Tile's cloud service.
The package is built on an undocumented, reverse-engineered API, so it carries inherent risk: Tile could change or block it at any time. It supports Python 3.10–3.13 and exposes a simple async interface: log in with credentials, fetch your tiles, and call methods like `async_get_tiles()`, `async_update()`, or `async_history()` (Premium only) to retrieve data. No compiled dependencies or system libraries required.
Use it for:
- Build a home automation dashboard that displays real-time locations of all your Tile trackers.
- Monitor whether specific Tiles are marked lost or inactive and trigger alerts.
- Export historical location data for a Tile device over a date range (Premium accounts only).
- Integrate Tile tracking into a personal asset-tracking application or bot.
- Periodically refresh Tile status in a background service to keep location data current.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Retrieves information from Tile® Bluetooth trackers via an unofficial API, including current location, device status, and historical position data for Premium accounts.
Yes, if you own Tile devices and need programmatic access to their data. Install friction is low, maintenance is active, and the MIT license is permissive. However, be aware that this library depends on an unofficial API that Tile does not publish or guarantee—it may break without notice. Test thoroughly before relying on it in production.
Install
pytile on PyPI
pip
pip install pytileuv
uv add pytilepoetry
poetry add pytileInstalling pytile
Before you install
Low friction install with three lightweight async dependencies. Active maintenance as of August 2026 with recent commits; repo has 223 stars and no archived status.
License in practice
MIT license permits free use, modification, and distribution with minimal restrictions, making it suitable for both personal and commercial projects.
Quickstart
pip install pytile
import asyncio
from aiohttp import ClientSession
from pytile import async_login
async def main():
async with ClientSession() as session:
api = await async_login(email, password, session)
tiles = await api.async_get_tiles()
for tile_uuid, tile in tiles.items():
print(f"{tile.name}: {tile.latitude}, {tile.longitude}")
asyncio.run(main())
Requires Python 3.10 or later; Tile account credentials needed for API authentication.
Verify before relying
- Whether the unofficial Tile API remains stable or has breaking changes since the last release (595 days ago).
- Current rate limits or throttling behavior of the Tile cloud API that users should account for.
- Whether Premium features (history retrieval) remain available or have been restricted by Tile.
Package facts
| License | MIT (permissive) |
| Python support | supports the current Python release (<4.0,>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 3 — aiohttp, certifi, yarl |
| Maintenance | actively maintained — 595 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 73,559/month — #14,976 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: pytile-2024.12.0-py3-none-any.whl
Tags
More Internet packages
Botocore provides low-level, data-driven access…
permissive · top 100 on PyPI
aiobotocoreProvides an async client for AWS services using…
permissive · top 100 on PyPI
pydanticPydantic validates Python data structures…
permissive · top 100 on PyPI
filelockProvides a platform-independent file locking…
permissive · top 100 on PyPI
fastapiFastAPI is a Python web framework for building…
permissive · top 100 on PyPI
googleapis-common-protosProvides common Protocol Buffer message…
permissive · top 100 on PyPI
aiotractiveAsynchronous Python client for the Tractive pet…
permissive · top 15,000 on PyPI
pyGeoTileConverts between geographic coordinate systems…
permissive · top 15,000 on PyPI
contextilyContextily retrieves tile-based map imagery…
permissive · top 15,000 on PyPI
mygeotabMyGeotab is a Python client library for the…
permissive · top 15,000 on PyPI
winrt-Windows.Devices.BluetoothProvides Python bindings to Windows Runtime…
permissive · top 15,000 on PyPI
winrt-Windows.Devices.Bluetooth.AdvertisementProvides Python bindings to access Windows…
permissive · top 15,000 on PyPI
giosFetches real-time air quality measurements from…
permissive · top 15,000 on PyPI
winrt-Windows.Devices.Bluetooth.GenericAttributeProfileProvides Python bindings to access Windows…
permissive · top 15,000 on PyPI
xyzservicesProvides a Python API and JSON database of XYZ…
permissive · top 5,000 on PyPI
pmtilesRead and write PMTiles archives, a single-file…
permissive · top 15,000 on PyPI