SPAN is a San Francisco-based home energy technology company building smart electrical panels that replace traditional residential breaker boxes with a software-defined, controllable, and metered panel. SPAN Panel provides whole-home real-time power and energy metering, per-circuit monitoring and remote relay control, grid/islanding state management for whole-home backup with solar and energy storage, EV charging coordination via SPAN Drive, and a mobile app for energy management. As of the SPAN Panel firmware r202603 release (Q1 2026), SPAN exposes a public-beta on-premise SPAN API for software integrations between SPAN Panel and other devices on the home Local Area Network. The SPAN API is a real, documented HTTP + MQTT/Homie surface that runs directly on the panel — there is no cloud-hosted developer endpoint. The REST surface provides authentication, system status, Wi-Fi setup, panel state, per-circuit control, panel grid relay, energy storage state-of-energy, and emergency reconnect operations. The publish/subscribe surface uses the Electrification Bus (eBus) framework and Homie Convention over MQTT for streaming real-time panel state, per-circuit telemetry, and control of relays. SPAN API is licensed for personal, non-commercial use under MIT-0 for docs and example code; commercial / fleet use requires the separately licensed SPAN Fleet Manager.
SPAN publishes 2 APIs on the APIs.io network: REST API and eBus MQTT API. Tagged areas include Energy, Home Energy, Electrification, Smart Panel, and Electrical Panel.
The SPAN catalog on APIs.io includes 6 machine-runnable capabilities, 1 event-driven AsyncAPI specification, 1 JSON-LD context, and 1 Spectral governance ruleset.
SPAN’s developer surface includes developer portal, documentation, engineering blog, support, changelog, SDKs, tooling, and 25 more developer resources.
Local on-premise HTTP/JSON REST API hosted directly on SPAN Panel. The API exposes authentication (registering API clients and obtaining JWT access tokens), system status, Wi-Fi...
Publish/subscribe streaming API hosted on SPAN Panel using the Electrification Bus (eBus) integration framework and the Homie Convention. SPAN Panel hosts an MQTT broker accessi...
Whole-home and per-circuit real-time power and energy metering
Per-circuit remote relay control with named circuits and priority groups
Grid / islanding state management for whole-home backup with solar and energy storage
SPAN Drive — integrated Level 2 EV charging coordinated with the panel
SPAN Home mobile and on-premise apps for energy management and monitoring
On-premise SPAN API hosted on the panel — REST + MQTT, LAN-only, no cloud
HTTP Bearer JWT authentication minted by the panel and bound to a named API client
REST resources for circuits, panel state, panel grid relay, panel meter and power, islanding state, energy storage SoE and nice-to-have thresholds, Wi-Fi scan/connect, system status, emergency reconnect
MQTT pub/sub via the Electrification Bus (eBus) framework using the Homie Convention
mDNS-advertised local discovery (`_span._tcp`, `_span-api._tcp`, `_mqtt._tcp`) for zero-config integration
JSON Schema for Homie device descriptions and mDNS service records
Publish/subscribe streaming API hosted directly on SPAN Panel using the Electrification Bus (eBus) integration framework and the Homie Convention for MQTT topic and payload stru...
aid: span-io
name: SPAN
description: >-
SPAN is a San Francisco-based home energy technology company building smart
electrical panels that replace traditional residential breaker boxes with a
software-defined, controllable, and metered panel. SPAN Panel provides
whole-home real-time power and energy metering, per-circuit monitoring and
remote relay control, grid/islanding state management for whole-home backup
with solar and energy storage, EV charging coordination via SPAN Drive, and
a mobile app for energy management. As of the SPAN Panel firmware r202603
release (Q1 2026), SPAN exposes a public-beta on-premise SPAN API for
software integrations between SPAN Panel and other devices on the home Local
Area Network. The SPAN API is a real, documented HTTP + MQTT/Homie surface
that runs directly on the panel — there is no cloud-hosted developer
endpoint. The REST surface provides authentication, system status, Wi-Fi
setup, panel state, per-circuit control, panel grid relay, energy storage
state-of-energy, and emergency reconnect operations. The publish/subscribe
surface uses the Electrification Bus (eBus) framework and Homie Convention
over MQTT for streaming real-time panel state, per-circuit telemetry, and
control of relays. SPAN API is licensed for personal, non-commercial use
under MIT-0 for docs and example code; commercial / fleet use requires the
separately licensed SPAN Fleet Manager.
type: Provider
position: Provider
access: 3rd-Party
image: https://kinlane-productions.s3.amazonaws.com/apis-json/apis-json-logo.jpg
tags:
- Energy
- Home Energy
- Electrification
- Smart Panel
- Electrical Panel
- Home Automation
- Solar
- Energy Storage
- EV Charging
- Grid
- Islanding
- Backup Power
- Demand Response
- IoT
- MQTT
- Homie
- Electrification Bus
- On-Premise
url: https://raw.githubusercontent.com/api-evangelist/span-io/refs/heads/main/apis.yml
created: '2026-05-25'
modified: '2026-05-25'
specificationVersion: '0.20'
apis:
- aid: span-io:span-rest-api
name: SPAN REST API
description: >-
Local on-premise HTTP/JSON REST API hosted directly on SPAN Panel. The
API exposes authentication (registering API clients and obtaining JWT
access tokens), system status, Wi-Fi scan and connect, panel state, main
meter, panel power, islanding state, per-circuit control, panel grid
relay control, emergency reconnect, and energy storage state-of-energy
and nice-to-have thresholds. All access is local-only on the home LAN;
authentication uses HTTP Bearer JWT credentials minted by the panel
itself. Available initially on SPAN Panel MAIN 32 with firmware r202603
and later, with rollout to MAIN 16 / MLO 24 / MAIN 40 / MLO 48 planned
for the second half of 2026.
humanURL: https://github.com/spanio/SPAN-API-Client-Docs
baseURL: http://span-{serial-number}.local/api/v1
tags:
- Energy
- Home Energy
- Smart Panel
- REST
- On-Premise
- Circuits
- Energy Storage
- Grid
- Islanding
properties:
- url: https://github.com/spanio/SPAN-API-Client-Docs
type: Documentation
- url: https://github.com/spanio/SPAN-API-Client-Docs/blob/main/README.md
type: Documentation
- url: openapi/span-rest-api-openapi.json
type: OpenAPI
- url: https://github.com/spanio/SPAN-API-Client-Docs/blob/main/specs/r202615/openapi.json
type: OpenAPI
- url: json-schema/span-mdns-services-schema.json
type: JSONSchema
- url: json-ld/span-context.jsonld
type: JSONLD
- url: capabilities/circuits.yaml
type: NaftikoCapability
- url: capabilities/panel.yaml
type: NaftikoCapability
- url: capabilities/storage.yaml
type: NaftikoCapability
- url: capabilities/auth.yaml
type: NaftikoCapability
- url: capabilities/wifi.yaml
type: NaftikoCapability
- aid: span-io:span-ebus-mqtt-api
name: SPAN eBus MQTT API
description: >-
Publish/subscribe streaming API hosted on SPAN Panel using the
Electrification Bus (eBus) integration framework and the Homie
Convention. SPAN Panel hosts an MQTT broker accessible over MQTTS
(8883), WS, and WSS. Clients subscribe to `ebus/5/<serial>/...` topics
to receive real-time panel state, per-circuit telemetry, energy storage
state, and SPAN Drive integration data, and publish to `/set` topics to
operate relays and control panel state. The broker enforces topic-level
ACLs — full read access on `ebus/#`, write access limited to Homie
`/set` control topics and to non-panel device subtrees under `ebus/5/`.
Credentials are obtained via the REST authentication endpoint.
humanURL: https://github.com/spanio/SPAN-API-Client-Docs#span-api-interaction-models
tags:
- MQTT
- Homie
- Electrification Bus
- eBus
- Pub/Sub
- Streaming
- On-Premise
- Energy
properties:
- url: https://github.com/spanio/SPAN-API-Client-Docs#publishsubscribe
type: Documentation
- url: https://homieiot.github.io/specification/
type: Documentation
- url: https://ebus.energy/
type: Documentation
- url: asyncapi/span-ebus-asyncapi.yml
type: AsyncAPI
- url: json-schema/span-homie-schema.json
type: JSONSchema
- url: capabilities/ebus-telemetry.yaml
type: NaftikoCapability
common:
- type: Website
url: https://www.span.io
- type: Portal
url: https://www.span.io
- type: Documentation
url: https://github.com/spanio/SPAN-API-Client-Docs
- type: Documentation
url: https://opensource.span.io/span-panel/
- type: Product
url: https://www.span.io/smart-panel-product
- type: Product
url: https://www.span.io/products/main-32
- type: Product
url: https://www.span.io/drive
- type: Product
url: https://www.span.io/app
- type: Product
url: https://www.span.io/utilities
- type: Blog
url: https://www.span.io/blog
- type: AnnouncementPost
url: https://www.span.io/blog/introducing-span-api-and-span-home-on-premise-public-beta
name: Introducing SPAN API and SPAN Home On-premise (Public Beta)
- type: Support
url: https://support.span.io/hc/en-us
- type: TermsOfService
url: https://www.span.io/terms-of-service
- type: PrivacyPolicy
url: https://www.span.io/privacy-policy
- type: GitHubOrganization
url: https://github.com/spanio
- type: Repository
url: https://github.com/spanio/SPAN-API-Client-Docs
name: SPAN API Client Documentation
- type: Forum
url: https://github.com/spanio/SPAN-API-Client-Docs/discussions
name: SPAN API GitHub Discussions
- type: Issues
url: https://github.com/spanio/SPAN-API-Client-Docs/issues
- type: ChangeLog
url: https://github.com/spanio/SPAN-API-Client-Docs/blob/main/CHANGELOG.md
- type: License
url: https://github.com/spanio/SPAN-API-Client-Docs/blob/main/LICENSE
name: MIT-0 (Docs and example code)
- type: SDK
url: https://github.com/SpanPanel/span-panel-api
name: span-panel-api (Python, community)
- type: SDK
url: https://github.com/SpanPanel/Span
name: Home Assistant Integration (community)
- type: SDK
url: https://github.com/SpanPanel/simulator
name: SPAN Panel eBus Simulator (community)
- type: Tool
url: https://github.com/spanio/SPAN-API-Client-Docs/tree/main/scripts
name: SPAN reference scripts (span-discover, span-auth, span-curl, span-mqtt-pub, span-mqtt-sub, span-mdns-query)
- type: Twitter
url: https://twitter.com/span_io
- type: LinkedIn
url: https://www.linkedin.com/company/span-io
- type: YouTube
url: https://www.youtube.com/@span_io
- type: Careers
url: https://www.span.io/careers
- type: Contact
url: https://www.span.io/contact
- type: Plans
url: plans/span-io-plans-pricing.yml
- type: RateLimits
url: rate-limits/span-io-rate-limits.yml
- type: FinOps
url: finops/span-io-finops.yml
- type: Features
data:
- SPAN Panel — software-defined smart electrical panel replacing traditional residential breaker boxes
- Whole-home and per-circuit real-time power and energy metering
- Per-circuit remote relay control with named circuits and priority groups
- Grid / islanding state management for whole-home backup with solar and energy storage
- SPAN Drive — integrated Level 2 EV charging coordinated with the panel
- SPAN Home mobile and on-premise apps for energy management and monitoring
- On-premise SPAN API hosted on the panel — REST + MQTT, LAN-only, no cloud
- HTTP Bearer JWT authentication minted by the panel and bound to a named API client
- REST resources for circuits, panel state, panel grid relay, panel meter and power, islanding state, energy storage SoE and nice-to-have thresholds, Wi-Fi scan/connect, system status, emergency reconnect
- MQTT pub/sub via the Electrification Bus (eBus) framework using the Homie Convention
- mDNS-advertised local discovery (`_span._tcp`, `_span-api._tcp`, `_mqtt._tcp`) for zero-config integration
- JSON Schema for Homie device descriptions and mDNS service records
- Reference shell + Python scripts (span-discover, span-auth, span-curl, span-mqtt-sub, span-mdns-query)
- Public beta — initial firmware r202603 for SPAN Panel MAIN 32, rolling out to MAIN 16 / MLO 24 / MAIN 40 / MLO 48 in H2 2026
- Commercial / fleet integrations served separately via SPAN Fleet Manager licensing
- SPAN Utilities — distributed energy resource (DER) management platform for utility partners
sources:
- https://www.span.io/blog/introducing-span-api-and-span-home-on-premise-public-beta
- https://github.com/spanio/SPAN-API-Client-Docs
- https://www.span.io/smart-panel-product
- https://opensource.span.io/span-panel/
updated: '2026-05-25'
maintainers:
- FN: Kin Lane
email: [email protected]