Home
Adafruit IO
Adafruit IO
Adafruit IO is a cloud Internet of Things platform from Adafruit Industries built for makers, hobbyists, students, and STEM educators. It provides feed-based time-series storage, drag-and-drop dashboards with 20+ visualization block types, actions/triggers for SMS/voice/email/webhook notifications, built-in services (time, weather, randomizer, air quality), and a complete REST + MQTT API surface for Adafruit Feather and Metro boards, ESP32 / ESP8266 / Pico microcontrollers, Raspberry Pi, and any other HTTP- or MQTT-capable hardware. First-class Arduino, CircuitPython, and Python client libraries plus the no-code Wippersnapper firmware make it the easiest way for hobbyists to get their projects onto the Internet of Things.
3 APIs
9 Capabilities
18 Features
IoT Internet of Things MQTT Maker Hobbyist CircuitPython Arduino ESP32 Feather Dashboards Time Series
Adafruit IO publishes 2 APIs on the APIs.io network: REST API and Webhooks API. Tagged areas include IoT, Internet of Things, MQTT, Maker, and Hobbyist.
The Adafruit IO catalog on APIs.io includes 9 machine-runnable capabilities , 1 JSON-LD context, and 1 Spectral governance ruleset.
Adafruit IO’s developer surface includes developer portal, documentation, getting-started guide, engineering blog, changelog, signup flow, pricing, and 31 more developer resources.
REST API for Adafruit IO providing CRUD operations across feeds, time-series data points, groups, dashboards, dashboard blocks, triggers (reactive and scheduled actions), API to...
MQTT broker at io.adafruit.com for publish/subscribe access to Adafruit IO feeds and groups. TLS on port 8883, plaintext on 1883, and MQTT-over-WebSocket on port 443. Authentica...
Token-authenticated inbound webhook endpoints that allow third-party services (IFTTT, Zapier, Make, or any HTTP client) to push data into an Adafruit IO feed without an API key....
Run Capabilities with Naftiko — Deploy and orchestrate these API capabilities using Naftiko Fleet.
Run with Naftiko
Adafruit IO Activities — read the audit/activity log for the authenticated account, optionally filtered by activity type. Self-contained Naftiko capability.
Run with Naftiko
Adafruit IO Dashboard Blocks — create, position, and configure visualization blocks (gauges, charts, toggles, sliders, maps, color pickers, indicators, etc.) on a dashboard. Sel...
Run with Naftiko
Adafruit IO Dashboards — create, list, update, and delete dashboards that hold visualization blocks bound to feeds. Self-contained Naftiko capability.
Run with Naftiko
Adafruit IO Data — write and read individual time-series values on a feed, including batch writes, chart-aggregated reads, and positional queries (first/last/previous/next/retai...
Run with Naftiko
Adafruit IO Feeds — list, create, read, update, and delete the named feed channels that hold time-series data. Self-contained Naftiko capability covering the feeds business surf...
Run with Naftiko
Adafruit IO Groups — bundle feeds for batch reads/writes and shared ACL. Self-contained Naftiko capability covering the groups business surface.
Run with Naftiko
Adafruit IO Tokens — manage scoped, revocable personal access tokens that grant API access without exposing the main account API key. Self-contained Naftiko capability.
Run with Naftiko
Adafruit IO Triggers (Actions) — reactive triggers fired on feed value comparisons (threshold, equal, change) and scheduled triggers that fire on a schedule. Self-contained Naft...
Run with Naftiko
Adafruit IO Inbound Webhooks — token-authenticated endpoints for pushing data into an Adafruit IO feed without an API key. Three variants: standard JSON, raw payload, and ping/n...
Run with Naftiko
Run Capabilities with Naftiko — Deploy and orchestrate these API capabilities using Naftiko Fleet.
Run with Naftiko
Feed-centric time-series datastore for IoT sensor and actuator values
Drag-and-drop dashboards with 20+ block types (gauges, charts, toggles, sliders, maps, color pickers, image, indicators, text, number pad, selector, etc.)
Feed groups for organizing related feeds and batch group writes
Actions/Triggers — reactive triggers (threshold, equal, change) and scheduled actions (every N minutes, hours, daily, weekly)
Webhook-in endpoints (standard, raw, notify) for ingesting data without an API key
SMS, voice, email, and webhook notifications via actions (Plus tier)
Built-in services — time service, randomizer, weather forecasts, air quality
MQTT broker at io.adafruit.com with TLS (8883), plain (1883), and WebSocket (443) transports
Adafruit IO Wippersnapper firmware — no-code MQTT firmware for ESP32, ESP8266, and Pico
First-class Arduino and CircuitPython client libraries
Public feed sharing and embeddable dashboards
Permission/ACL primitive for fine-grained sharing of feeds, dashboards, and groups
Personal access tokens for scoped, revocable credentials separate from the main API key
Account activities log with type filtering
Throttle topic to monitor rate-limit pressure programmatically
Single comprehensive Swagger 2.0 / OpenAPI spec published in adafruit/io-api on GitHub
IFTTT and Zapier integrations for cross-service automation
Optimized for makers, hobbyists, and STEM education with Adafruit Feather, Metro, and Raspberry Pi hardware
38 classes · 8 properties
JSON-LD
8 rules ·
1 errors
5 warnings
SPECTRAL
Sources
aid: adafruit-io
url: https://raw.githubusercontent.com/api-evangelist/adafruit-io/refs/heads/main/apis.yml
apis:
- aid: adafruit-io:adafruit-io-rest-api
name: Adafruit IO REST API
tags:
- IoT
- Internet of Things
- Feeds
- Data
- Dashboards
- Maker
humanURL: https://io.adafruit.com/api/docs/
baseURL: https://io.adafruit.com/api/v2
properties:
- url: https://io.adafruit.com/api/docs/
type: Documentation
- url: https://io.adafruit.com/api/docs/#adafruit-io-http-api
type: Documentation
- url: openapi/adafruit-io-rest-api-openapi.yml
type: OpenAPI
- url: json-schema/adafruit-io-feed-schema.json
type: JSONSchema
- url: json-schema/adafruit-io-data-schema.json
type: JSONSchema
- url: json-schema/adafruit-io-dashboard-schema.json
type: JSONSchema
- url: json-ld/adafruit-io-context.jsonld
type: JSONLD
- url: capabilities/feeds.yaml
type: NaftikoCapability
- url: capabilities/data.yaml
type: NaftikoCapability
- url: capabilities/groups.yaml
type: NaftikoCapability
- url: capabilities/dashboards.yaml
type: NaftikoCapability
- url: capabilities/blocks.yaml
type: NaftikoCapability
- url: capabilities/triggers.yaml
type: NaftikoCapability
- url: capabilities/tokens.yaml
type: NaftikoCapability
- url: capabilities/activities.yaml
type: NaftikoCapability
- url: capabilities/webhooks.yaml
type: NaftikoCapability
description: REST API for Adafruit IO providing CRUD operations across feeds, time-series data points, groups,
dashboards, dashboard blocks, triggers (reactive and scheduled actions), API tokens, permissions/ACL, account
activities, and inbound webhooks. Base URL https://io.adafruit.com/api/v2 — authenticated via the X-AIO-Key
header or query parameter using an Adafruit IO API key. Supports batch data writes, chart-aggregated reads,
positional queries (first/last/previous/next/retain), and Link-header pagination up to 1000 records per page.
- aid: adafruit-io:adafruit-io-mqtt-api
name: Adafruit IO MQTT API
tags:
- IoT
- Internet of Things
- MQTT
- Realtime
- Feeds
humanURL: https://io.adafruit.com/api/docs/mqtt.html
baseURL: mqtts://io.adafruit.com:8883
properties:
- url: https://io.adafruit.com/api/docs/mqtt.html
type: Documentation
- url: https://io.adafruit.com/api/docs/mqtt.html#mqtt-topics
type: Documentation
description: MQTT broker at io.adafruit.com for publish/subscribe access to Adafruit IO feeds and groups. TLS
on port 8883, plaintext on 1883, and MQTT-over-WebSocket on port 443. Authenticate with your Adafruit IO
username and API key. Supports QoS 0 and QoS 1 (QoS 2 not supported); MQTT retain flag is not honored — use
the /get topic modifier to fetch the last value of a feed instead. Topic structure includes feed topics
({username}/feeds/{key}), compact aliases ({username}/f/{key}), JSON/CSV suffixes, group topics
({username}/groups/{key}), throttle ({username}/throttle), and errors ({username}/errors). Wildcard
subscriptions with `+` and `#` are supported for feed discovery.
- aid: adafruit-io:adafruit-io-webhooks-api
name: Adafruit IO Webhooks API
tags:
- IoT
- Internet of Things
- Webhooks
- Feeds
humanURL: https://io.adafruit.com/api/docs/#webhooks
baseURL: https://io.adafruit.com/api/v2/webhooks
properties:
- url: https://io.adafruit.com/api/docs/#webhooks
type: Documentation
- url: openapi/adafruit-io-rest-api-openapi.yml
type: OpenAPI
- url: capabilities/webhooks.yaml
type: NaftikoCapability
description: Token-authenticated inbound webhook endpoints that allow third-party services (IFTTT, Zapier, Make,
or any HTTP client) to push data into an Adafruit IO feed without an API key. Endpoints include the standard
JSON webhook (POST /webhooks/feed/:token), the raw-payload webhook
(POST /webhooks/feed/:token/raw) for arbitrary request bodies, and a notify webhook
(POST /webhooks/feed/:token/notify) for ping-style triggers. Tokens are generated per-feed and managed in
the Adafruit IO UI.
name: Adafruit IO
tags:
- IoT
- Internet of Things
- MQTT
- Maker
- Hobbyist
- CircuitPython
- Arduino
- ESP32
- Feather
- Dashboards
- Time Series
kind: contract
image: https://kinlane-productions2.s3.amazonaws.com/apis-json/apis-json-logo.jpg
access: 3rd-Party
common:
- url: https://io.adafruit.com
name: Adafruit IO Portal
type: Portal
- url: https://io.adafruit.com/api/docs/
name: Adafruit IO API Documentation
type: Documentation
- url: https://io.adafruit.com/api/docs/cookbook.html
name: API Cookbook
type: Documentation
- url: https://io.adafruit.com/api/docs/mqtt.html
name: MQTT API Documentation
type: Documentation
- url: https://learn.adafruit.com/series/adafruit-io-basics
name: Adafruit IO Basics Series
type: GettingStarted
- url: https://learn.adafruit.com/welcome-to-adafruit-io
name: Welcome to Adafruit IO
type: GettingStarted
- url: https://io.adafruit.com/blog
name: Adafruit IO Blog
type: Blog
- url: https://io.adafruit.com/blog/changelog/
name: Adafruit IO Changelog
type: ChangeLog
- url: https://forums.adafruit.com/viewforum.php?f=56
name: Adafruit IO Forums
type: Forum
- url: https://discord.gg/adafruit
name: Adafruit Discord — #adafruit-io
type: Forum
- url: https://io.adafruit.com/signup
name: Sign Up for Adafruit IO
type: SignUp
- url: https://io.adafruit.com/login
name: Sign In
type: Login
- url: https://www.adafruit.com/iot
name: Adafruit IoT Products
type: Documentation
- url: https://io.adafruit.com/plus
name: Adafruit IO Plus
type: Pricing
- url: https://io.adafruit.com/api/docs/#rate-limiting
name: Adafruit IO Rate Limits
type: RateLimits
- url: https://io.adafruit.com/api/docs/#errors
name: Adafruit IO API Errors
type: Errors
- url: https://io.adafruit.com/api/docs/#authentication
name: Authentication
type: Authentication
- url: https://www.adafruit.com/privacy
type: PrivacyPolicy
- url: https://www.adafruit.com/termsofservice
type: TermsOfService
- url: https://github.com/adafruit
type: GitHubOrganization
- url: https://github.com/adafruit/io-api
name: Adafruit IO API Documentation (source)
type: SourceCode
- url: https://github.com/adafruit/Adafruit_IO_Python
name: Adafruit IO Python Client
type: SDK
- url: https://github.com/adafruit/Adafruit_IO_Arduino
name: Adafruit IO Arduino Library
type: SDK
- url: https://github.com/adafruit/Adafruit_CircuitPython_AdafruitIO
name: Adafruit IO CircuitPython Library
type: SDK
- url: https://github.com/adafruit/io-client-ruby
name: Adafruit IO Ruby Client
type: SDK
- url: https://github.com/adafruit/adafruit-io-node
name: Adafruit IO Node.js Client
type: SDK
- url: https://github.com/adafruit/io-client-go
name: Adafruit IO Go Client
type: SDK
- url: https://github.com/adafruit/Adafruit_MQTT_Library
name: Adafruit MQTT Library (Arduino)
type: Tool
- url: https://github.com/adafruit/adafruit-io-basics
name: Adafruit IO Basics Examples
type: CodeExamples
- url: https://github.com/adafruit/io-swagger-templates
name: Swagger Codegen Templates for Adafruit IO
type: Tool
- url: https://github.com/adafruit/adafruit-io-node-tunnel
name: Adafruit IO TLS Tunnel
type: Tool
- url: https://www.adafruit.com/category/1011
name: Adafruit IO-Compatible Hardware
type: Documentation
- url: https://www.adafruit.com/category/943
name: Feather Boards
type: Documentation
- url: https://learn.adafruit.com/welcome-to-circuitpython
name: CircuitPython Documentation
type: Documentation
- url: https://ifttt.com/adafruit
name: Adafruit on IFTTT
type: Integrations
- url: https://zapier.com/apps/adafruit-io/integrations
name: Adafruit IO on Zapier
type: Integrations
- url: https://io.adafruit.com/plus
data:
- id: free
name: Free
entries:
- geo: US
unit: 1
label: User
limit: 1
price: Free
metric: user
timeFrame: month
description: Free Adafruit IO account.
elements:
- name: Up to 30 data points per minute
- name: 30 days of data retention
- name: Up to 10 feeds
- name: Up to 5 dashboards
- name: Up to 5 actions (reactive triggers + scheduled feeds)
- name: Up to 5 group permissions
- name: MQTT, HTTP, and WebSocket access
description: Free tier for hobbyists and learners.
- id: io-plus
name: Adafruit IO Plus (Monthly)
entries:
- geo: US
unit: 1
label: User
limit: 1
price: 10
metric: user
timeFrame: month
description: Monthly Adafruit IO Plus subscription.
elements:
- name: 60 data points per minute
- name: 60 days of data retention
- name: Unlimited feeds
- name: Unlimited dashboards
- name: Unlimited actions
- name: Unlimited group permissions
- name: SMS and voice action notifications
- name: Priority support
description: Monthly Plus subscription for makers and projects that exceed the free tier.
- id: io-plus-annual
name: Adafruit IO Plus (Yearly)
entries:
- geo: US
unit: 1
label: User
limit: 1
price: 99
metric: user
timeFrame: year
description: Annual Adafruit IO Plus subscription (discounted vs. monthly).
elements:
- name: All Adafruit IO Plus monthly features
- name: ~17% savings vs. monthly billing
description: Annual Plus subscription billed once per year.
name: Plans
type: Plans
- url: plans/adafruit-io-plans-pricing.yml
type: Plans
- url: rate-limits/adafruit-io-rate-limits.yml
type: RateLimits
- url: finops/adafruit-io-finops.yml
type: FinOps
- type: Features
data:
- Feed-centric time-series datastore for IoT sensor and actuator values
- Drag-and-drop dashboards with 20+ block types (gauges, charts, toggles, sliders, maps, color pickers, image,
indicators, text, number pad, selector, etc.)
- Feed groups for organizing related feeds and batch group writes
- Actions/Triggers — reactive triggers (threshold, equal, change) and scheduled actions (every N minutes, hours,
daily, weekly)
- Webhook-in endpoints (standard, raw, notify) for ingesting data without an API key
- SMS, voice, email, and webhook notifications via actions (Plus tier)
- Built-in services — time service, randomizer, weather forecasts, air quality
- MQTT broker at io.adafruit.com with TLS (8883), plain (1883), and WebSocket (443) transports
- Adafruit IO Wippersnapper firmware — no-code MQTT firmware for ESP32, ESP8266, and Pico
- First-class Arduino and CircuitPython client libraries
- Public feed sharing and embeddable dashboards
- Permission/ACL primitive for fine-grained sharing of feeds, dashboards, and groups
- Personal access tokens for scoped, revocable credentials separate from the main API key
- Account activities log with type filtering
- Throttle topic to monitor rate-limit pressure programmatically
- Single comprehensive Swagger 2.0 / OpenAPI spec published in adafruit/io-api on GitHub
- IFTTT and Zapier integrations for cross-service automation
- Optimized for makers, hobbyists, and STEM education with Adafruit Feather, Metro, and Raspberry Pi hardware
sources:
- https://io.adafruit.com/api/docs/
- https://io.adafruit.com/api/docs/mqtt.html
- https://io.adafruit.com/plus
- https://github.com/adafruit/io-api
updated: '2026-05-25'
created: '2026-05-25T00:00:00.000Z'
modified: '2026-05-25'
position: Consuming
description: Adafruit IO is a cloud Internet of Things platform from Adafruit Industries built for makers,
hobbyists, students, and STEM educators. It provides feed-based time-series storage, drag-and-drop dashboards
with 20+ visualization block types, actions/triggers for SMS/voice/email/webhook notifications, built-in
services (time, weather, randomizer, air quality), and a complete REST + MQTT API surface for Adafruit Feather
and Metro boards, ESP32 / ESP8266 / Pico microcontrollers, Raspberry Pi, and any other HTTP- or MQTT-capable
hardware. First-class Arduino, CircuitPython, and Python client libraries plus the no-code Wippersnapper
firmware make it the easiest way for hobbyists to get their projects onto the Internet of Things.
maintainers:
- FN: Kin Lane
email: [email protected]
X: apievangelist
url: https://apievangelist.com
specificationVersion: '0.16'