Sensibo Historical Data API

Time-series measurements and the device event log.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/sensibo-historical-data-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

sensibo-historical-data-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Sensibo AC States Historical Data API
  description: The Sensibo API gives developers full control over Sensibo smart AC controllers and air quality monitors ("pods") - Sensibo Sky, Air, Air Pro, and Elements. Over REST you can list the devices on an account, read the latest temperature, humidity, and air quality measurements, pull up to seven days of historical measurements, get and set the air conditioner state (power, mode, target temperature, fan, swing), configure the Climate React smart-mode automation, and manage schedules and timers. Authentication is a per-account API key passed as the `apiKey` query parameter, generated at https://home.sensibo.com/me/api. OAuth2 is available for commercial integrations (contact support@sensibo.com). Schedules and timers are exposed by Sensibo as a legacy ("v1") surface but are served under the same home.sensibo.com host. This document is grounded in Sensibo's published OpenAPI (sensibo.openapi.yaml) and support documentation; request and response schemas are modeled representatively.
  version: 2.0.0
  contact:
    name: Sensibo Support
    url: https://support.sensibo.com/api/
    email: support@sensibo.com
  license:
    name: Proprietary
    url: https://sensibo.com/pages/terms-of-service
servers:
- url: https://home.sensibo.com/api/v2
  description: Sensibo API v2
security:
- apiKey: []
tags:
- name: Historical Data
  description: Time-series measurements and the device event log.
paths:
  /pods/{device_id}/historicalMeasurements:
    get:
      operationId: getHistoricalMeasurements
      tags:
      - Historical Data
      summary: Get historical measurements
      description: Returns time-series temperature and humidity (and air quality where available) for the pod over a requested window of up to seven days.
      parameters:
      - $ref: '#/components/parameters/DeviceId'
      - name: days
        in: query
        required: false
        description: Number of days of history to return (up to 7).
        schema:
          type: integer
          default: 1
          maximum: 7
      responses:
        '200':
          description: Historical measurement series.
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: string
                    example: success
                  result:
                    type: object
                    properties:
                      temperature:
                        type: array
                        items:
                          $ref: '#/components/schemas/HistoricalPoint'
                      humidity:
                        type: array
                        items:
                          $ref: '#/components/schemas/HistoricalPoint'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '429':
          $ref: '#/components/responses/RateLimited'
  /pods/{device_id}/events:
    get:
      operationId: getEvents
      tags:
      - Historical Data
      summary: Get device events
      description: Returns the device event log (state changes, connectivity, alerts). Event-log retention depends on the account's Sensibo Plus subscription.
      parameters:
      - $ref: '#/components/parameters/DeviceId'
      responses:
        '200':
          description: The device event log.
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: string
                    example: success
                  result:
                    type: array
                    items:
                      type: object
        '401':
          $ref: '#/components/responses/Unauthorized'
        '429':
          $ref: '#/components/responses/RateLimited'
components:
  responses:
    Unauthorized:
      description: Missing or invalid apiKey.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    RateLimited:
      description: 'Too many requests. Requests are rate limited; a 429 indicates the limit was exceeded. Sending an `Accept-Encoding: gzip` header raises the effective limit.'
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  schemas:
    HistoricalPoint:
      type: object
      properties:
        time:
          type: string
          format: date-time
        value:
          type: number
    Error:
      type: object
      properties:
        status:
          type: string
          example: failure
        reason:
          type: string
  parameters:
    DeviceId:
      name: device_id
      in: path
      required: true
      description: The pod (device) identifier.
      schema:
        type: string
  securitySchemes:
    apiKey:
      type: apiKey
      in: query
      name: apiKey
      description: Per-account API key generated at https://home.sensibo.com/me/api and passed as the apiKey query parameter on every request.