Build with LocalSky
Use LocalSky as a data source for dashboards, automations, reports, and AI tools. The API provides current conditions, forecast windows, irrigation state, and recorded history. SSE streams deliver snapshot updates.
Pick an interface
| Need | Interface |
|---|---|
| Current state or a one-time query | REST JSON |
| Live dashboard updates | SSE |
| Native Home Assistant entities and actions | Companion integration |
| Existing broker automations | MQTT publishing and supported MQTT inputs |
| Custom weather hardware | Sensor ingest |
| An OpenAPI-compatible client | Download the read profile |
The OpenAPI file describes selected read endpoints. It is an importable connector profile, not an exhaustive specification of every LocalSky route. Set its server URL to your own instance.
Start with working examples
Download the Python client or JavaScript client. Both probe the server, check API compatibility, and query a forecast window without issuing watering commands.
The examples read LOCALSKY_URL and an optional LOCALSKY_TOKEN from the environment. Keep credentials in your client or connector’s secret storage.
Contract basics
- Base path:
/api/v1. - Response contract: API 2.4.0. The version in the URL and response contract are separate.
- Authentication: bearer API token when required.
- Unknown data: null remains unknown. Some legacy snapshot numbers also require their accompanying validity or timestamp fields.
- Time: epoch values are UTC seconds. Daily grouping uses the installation timezone.
- Units: follow field suffixes. Display preferences do not change API units.
- Errors: preserve the response status, code, and request ID.
For consequential automation, evaluate source age, coverage, and the fields you actually need. A successful HTTP response can contain unavailable data.
AI-readable documentation
llms.txt is a concise navigation index. llms-full.txt contains the guide in plain text. These files help tools find documentation; they do not grant network access or credentials.