Home Connect (BSH appliances) Events API

Get value changes via SSE

Operations 2

GET /homeappliances/events Get stream of events for all appliances - NOT WORKING WITH SWAGGER #
GET /homeappliances/{haId}/events Get stream of events for one appliance - NOT WORKING WITH SWAGGER #

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/home-connect:home-connect-events-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 form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

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

OpenAPI Specification

home-connect-events-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Home Connect Events API
  description: 'This API provides access to home appliances enabled by Home Connect

    (https://home-connect.com). Through the API programs can be started and

    stopped, or home appliances configured and monitored. For instance, you can

    start a cotton program on a washer and get a notification when the cycle is

    complete.


    To get started with this web client, visit https://developer.home-connect.com

    and register an account. An application with a client ID for this API client

    will be automatically generated for you.


    If you want to use your custom application here, please remember to set its

    Redirect URI to https://apiclient.home-connect.com/o2c.html, otherwise

    authorization process will fail.


    In order to use this API in your own client, you need an OAuth 2 client

    implementing the authorization code grant flow

    (https://api-docs.home-connect.com/authorization?#authorization-code-grant-flow).


    More details can be found here: https://www.rfc-editor.org/rfc/rfc6749.txt


    Authorization URL: https://api.home-connect.com/security/oauth/authorize


    Token URL: https://api.home-connect.com/security/oauth/token'
  version: '1'
servers:
- url: https://api.home-connect.com/api
tags:
- name: Events
  description: Get value changes via SSE
paths:
  /homeappliances/events:
    parameters:
    - name: Accept-Language
      in: header
      description: Language for localized assets
      schema:
        type: string
        enum:
        - de-DE
        - en-GB
        - en-US
    get:
      summary: Get stream of events for all appliances - NOT WORKING WITH SWAGGER
      tags:
      - Events
      operationId: get_all_events
      description: 'Server Sent Events are available as Eventsource API in JavaScript

        and are implemented by various HTTP client libraries and tools

        including curl.


        Unfortunately, SSE is not compatible to OpenAPI specs and can therefore

        not be properly specified within this API description.


        An SSE event contains three parts separated by linebreaks: event, data and id.

        Different events are separated by empty lines.


        The event field can be one of these types: KEEP-ALIVE, STATUS, EVENT, NOTIFY, CONNECTED, DISCONNECTED, PAIRED, DEPAIRED.


        In case of all event types (except KEEP-ALIVE), the "data" field is populated with the JSON object defined below.


        The id contains the home appliance ID. (except for KEEP-ALIVE event type)


        Further documentation can be found here:

        * Events availability matrix

        * Program changes

        * Option changes

        * Program progress changes

        * Home appliance state changes'
      responses:
        200:
          description: 'Returns status updates as Server Sent Events (SSE)

            '
          content:
            text/event-stream:
              schema:
                $ref: '#/components/schemas/ArrayOfEvents'
        401:
          $ref: '#/components/responses/Unauthorized'
        403:
          $ref: '#/components/responses/Forbidden'
        406:
          $ref: '#/components/responses/NotAcceptable'
        429:
          $ref: '#/components/responses/QuotaError'
        500:
          $ref: '#/components/responses/InternalError'
      security:
      - homeconnect_auth:
        - Monitor
        - Oven-Monitor
        - Dishwasher-Monitor
        - Washer-Monitor
        - Dryer-Monitor
        - FridgeFreezer-Monitor
        - CoffeeMaker-Monitor
        - Hob-Monitor
        - Hood-Monitor
        - CleaningRobot-Monitor
        - WasherDryer-Monitor
        - Refrigerator-Monitor
        - Freezer-Monitor
        - WineCooler-Monitor
        - CookProcessor-Monitor
        - Oven
        - Dishwasher
        - Washer
        - Dryer
        - FridgeFreezer
        - CoffeeMaker
        - Hob
        - Hood
        - CleaningRobot
        - WasherDryer
        - Refrigerator
        - Freezer
        - WineCooler
        - CookProcessor
  /homeappliances/{haId}/events:
    parameters:
    - name: haId
      in: path
      description: ID of home appliance
      required: true
      schema:
        type: string
    - name: Accept-Language
      in: header
      description: Language for localized assets
      schema:
        type: string
        enum:
        - de-DE
        - en-GB
        - en-US
    - name: Accept
      in: header
      schema:
        type: string
        enum:
        - application/vnd.bsh.sdk.v1+json
        - text/event-stream
    get:
      summary: Get stream of events for one appliance - NOT WORKING WITH SWAGGER
      tags:
      - Events
      operationId: get_events
      description: 'If you want to do a one-time query of the current status, you can ask for

        the content-type `application/vnd.bsh.sdk.v1+json` and get the status

        as normal HTTP response.


        If you want an ongoing stream of events in real time, ask for the content

        type `text/event-stream` and you''ll get a stream as Server Sent Events.


        Server Sent Events are available as Eventsource API in JavaScript

        and are implemented by various HTTP client libraries and tools

        including curl.


        Unfortunately, SSE is not compatible to OpenAPI specs and can therefore

        not be properly specified within this API description.


        An SSE event contains three parts separated by linebreaks: event, data and id.

        Different events are separated by empty lines.


        The event field can be one of these types: KEEP-ALIVE, STATUS, EVENT, NOTIFY, CONNECTED, DISCONNECTED.


        In case of all event types (except KEEP-ALIVE), the "data" field is populated with the JSON object defined below.


        The id contains the home appliance ID.


        Further documentation can be found here:

        * Events availability matrix

        * Program changes

        * Option changes

        * Program progress changes

        * Home appliance state changes'
      responses:
        200:
          description: 'Returns status updates as Server Sent Events (SSE)

            '
          content:
            application/vnd.bsh.sdk.v1+json:
              schema:
                $ref: '#/components/schemas/ArrayOfEvents'
            text/event-stream:
              schema:
                $ref: '#/components/schemas/ArrayOfEvents'
        401:
          $ref: '#/components/responses/Unauthorized'
        403:
          $ref: '#/components/responses/Forbidden'
        406:
          $ref: '#/components/responses/NotAcceptable'
        429:
          $ref: '#/components/responses/QuotaError'
        500:
          $ref: '#/components/responses/InternalError'
      security:
      - homeconnect_auth:
        - Monitor
        - Oven-Monitor
        - Dishwasher-Monitor
        - Washer-Monitor
        - Dryer-Monitor
        - FridgeFreezer-Monitor
        - CoffeeMaker-Monitor
        - Hob-Monitor
        - Hood-Monitor
        - CleaningRobot-Monitor
        - WasherDryer-Monitor
        - Refrigerator-Monitor
        - Freezer-Monitor
        - WineCooler-Monitor
        - CookProcessor-Monitor
        - Oven
        - Dishwasher
        - Washer
        - Dryer
        - FridgeFreezer
        - CoffeeMaker
        - Hob
        - Hood
        - CleaningRobot
        - WasherDryer
        - Refrigerator
        - Freezer
        - WineCooler
        - CookProcessor
components:
  schemas:
    ForbiddenError:
      type: object
      required:
      - error
      properties:
        error:
          type: object
          required:
          - key
          properties:
            key:
              type: string
            description:
              type: string
      example:
        error:
          key: insufficient_scope
          description: Insufficient scope for this resource
    NotAcceptableError:
      type: object
      required:
      - error
      properties:
        error:
          type: object
          required:
          - key
          properties:
            key:
              type: string
            description:
              type: string
      example:
        error:
          key: '406'
          description: Resource representation is only available with these types:\napplication/vnd.bsh.sdk.v1+json
    ArrayOfEvents:
      type: object
      required:
      - items
      properties:
        items:
          type: array
          items:
            type: object
            required:
            - key
            - timestamp
            - level
            - handling
            - value
            properties:
              key:
                type: string
                description: Feature key of the event
              name:
                type: string
                description: User-friendly, localized name of the feature key
              uri:
                type: string
                description: URI of the resource that changed
              timestamp:
                type: integer
                format: int64
                description: Creation time of event as unix timestamp
              level:
                type: string
                description: 'Level of the event, possible values: critical, alert, warning, hint, info

                  '
              handling:
                type: string
                description: 'Expected activity, possible values: none, acknowledge, decision

                  '
              value:
                type:
                - string
                - number
                - boolean
                description: New value, e.g. in case of a status update
              displayvalue:
                type: string
                description: User-friendly, localized name of the enumeration value
              unit:
                type: string
                description: Unit of the value
      example:
        items:
        - key: Cooking.Oven.Option.SetpointTemperature
          name: Target temperature for the oven
          uri: /api/homeappliances/BOSCH-HNG6764B6-0000000011FF/programs/active/options/Cooking.Oven.Option.SetpointTemperature
          timestamp: 1556793979
          level: hint
          handling: none
          value: 200
          unit: °C
    UnauthorizedError:
      type: object
      required:
      - error
      properties:
        error:
          type: object
          required:
          - key
          properties:
            key:
              type: string
            description:
              type: string
      example:
        error:
          key: invalid_token
          description: The access token expired
    TooManyRequestsError:
      type: object
      required:
      - error
      properties:
        error:
          type: object
          required:
          - key
          properties:
            key:
              type: string
            description:
              type: string
      example:
        error:
          key: '429'
          description: The user has sent too many requests in a given amount of time.
    InteralServerError:
      type: object
      required:
      - error
      properties:
        error:
          type: object
          required:
          - key
          properties:
            key:
              type: string
            description:
              type: string
      example:
        error:
          key: Internal Server Error
          description: Could not validate permissions to access HomeAppliance
  responses:
    InternalError:
      description: Internal Server Error
      content:
        application/vnd.bsh.sdk.v1+json:
          schema:
            $ref: '#/components/schemas/InteralServerError'
    QuotaError:
      description: 'The number of requests for a specific endpoint exceeded the quota of the client.

        '
      content:
        application/vnd.bsh.sdk.v1+json:
          schema:
            $ref: '#/components/schemas/TooManyRequestsError'
    NotAcceptable:
      description: The resource identified by the request is only capable of generating response entities which have content characteristics not acceptable according to the accept headers sent in the request.
      content:
        application/vnd.bsh.sdk.v1+json:
          schema:
            $ref: '#/components/schemas/NotAcceptableError'
    Unauthorized:
      description: Unauthorized - No or invalid access token
      content:
        application/vnd.bsh.sdk.v1+json:
          schema:
            $ref: '#/components/schemas/UnauthorizedError'
    Forbidden:
      description: Forbidden - Scope has not been granted
      content:
        application/vnd.bsh.sdk.v1+json:
          schema:
            $ref: '#/components/schemas/ForbiddenError'
  securitySchemes:
    homeconnect_auth:
      type: oauth2
      flows:
        authorizationCode:
          scopes:
            IdentifyAppliance: Grants right to identify a home appliance under /api/homeappliances
            Monitor: Grants access to read resources under /api/homeappliances except images and settings
            Control: Grants access to modify resources under under /api/homeappliances except images and settings
            Images: Grants access to read resources under /api/homeappliances/{haId}/images
            Settings: Grants access to read and modify resources under /api/homeappliances/{haId}/settings
            Oven: Grants access to read or modify all resources under /api/homeappliances on ovens
            Oven-Monitor: Grants access to read resources under /api/homeappliances except images and settings on ovens
            Oven-Control: Grants access to modify resources under under /api/homeappliances except images and settings on ovens
            Oven-Settings: Grants access to read and modify resources under /api/homeappliances/{haId}/settings on ovens
            Dishwasher: Grants access to read or modify all resources under /api/homeappliances on dishwashers
            Dishwasher-Monitor: Grants access to read resources under /api/homeappliances except images and settings on dishwashers
            Dishwasher-Control: Grants access to modify resources under under /api/homeappliances except images and settings on dishwashers
            Dishwasher-Settings: Grants access to read and modify resources under /api/homeappliances/{haId}/settings on dishwashers
            Washer: Grants access to read or modify all resources under /api/homeappliances on washers
            Washer-Monitor: Grants access to read resources under /api/homeappliances except images and settings on washers
            Washer-Control: Grants access to modify resources under under /api/homeappliances except images and settings on washers
            Washer-Settings: Grants access to read and modify resources under /api/homeappliances/{haId}/settings on washers
            Dryer: Grants access to read or modify all resources under /api/homeappliances on dryers
            Dryer-Monitor: Grants access to read resources under /api/homeappliances except images and settings on dryers
            Dryer-Control: Grants access to modify resources under under /api/homeappliances except images and settings on dryers
            Dryer-Settings: Grants access to read and modify resources under /api/homeappliances/{haId}/settings on dryers
            WasherDryer: Grants access to read or modify all resources under /api/homeappliances on washerdryers
            WasherDryer-Monitor: Grants access to read resources under /api/homeappliances except images and settings on washerdryers
            WasherDryer-Control: Grants access to modify resources under under /api/homeappliances except images and settings on washerdryers
            WasherDryer-Settings: Grants access to read and modify resources under /api/homeappliances/{haId}/settings on washerdryers
            FridgeFreezer: Grants access to read or modify all resources under /api/homeappliances on fridgefreezers
            FridgeFreezer-Monitor: Grants access to read resources under /api/homeappliances except images and settings on fridgefreezers
            FridgeFreezer-Control: Grants access to modify resources under /api/homeappliances except images and settings on fridgefreezers
            FridgeFreezer-Settings: Grants access to read and modify resources under /api/homeappliances/{haId}/settings on fridgefreezers
            FridgeFreezer-Images: Grants access to read resources under /api/homeappliances/{haId}/images on fridgefreezers
            CoffeeMaker: Grants access to read or modify all resources under /api/homeappliances on coffee makers
            CoffeeMaker-Monitor: Grants access to read resources under /api/homeappliances except images and settings on coffee makers
            CoffeeMaker-Control: Grants access to modify resources under under /api/homeappliances except images and settings on coffee makers
            CoffeeMaker-Settings: Grants access to read and modify resources under /api/homeappliances/{haId}/settings on coffee makers
            Hob: Grants access to read or modify all resources under /api/homeappliances on hobs
            Hob-Monitor: Grants access to read resources under /api/homeappliances except images and settings on hobs
            Hob-Control: Grants access to modify resources under under /api/homeappliances except images and settings on hobs
            Hob-Settings: Grants access to read and modify resources under /api/homeappliances/{haId}/settings on hobs
            Hood: Grants access to read or modify all resources under /api/homeappliances on hoods
            Hood-Monitor: Grants access to read resources under /api/homeappliances except images and settings on hoods
            Hood-Control: Grants access to modify resources under under /api/homeappliances except images and settings on hoods
            Hood-Settings: Grants access to read and modify resources under /api/homeappliances/{haId}/settings on hoods
            CleaningRobot: Grants access to read or modify all resources under /api/homeappliances on cleaning robots
            CleaningRobot-Monitor: Grants access to read resources under /api/homeappliances except images and settings on cleaning robots
            CleaningRobot-Control: Grants access to modify resources under under /api/homeappliances except images and settings on cleaning robots
            CleaningRobot-Settings: Grants access to read and modify resources under /api/homeappliances/{haId}/settings on cleaning robots
            CleaningRobot-Map: Grants access to read resources under /api/homeappliances/{haId}/map on cleaning robots
            Refrigerator: Grants access to read or modify all resources under /api/homeappliances on refrigerators
            Refrigerator-Monitor: Grants access to read resources under /api/homeappliances except images and settings on refrigerators
            Refrigerator-Control: Grants access to modify resources under under /api/homeappliances except images and settings on refrigerators
            Refrigerator-Settings: Grants access to read and modify resources under /api/homeappliances/{haId}/settings on refrigerators
            Freezer: Grants access to read or modify all resources under /api/homeappliances on freezers
            Freezer-Monitor: Grants access to read resources under /api/homeappliances except images and settings on freezers
            Freezer-Control: Grants access to modify resources under under /api/homeappliances except images and settings on freezers
            Freezer-Settings: Grants access to read and modify resources under /api/homeappliances/{haId}/settings on freezers
            WineCooler: Grants access to read or modify all resources under /api/homeappliances on wine coolers
            WineCooler-Monitor: Grants access to read resources under /api/homeappliances except images and settings on wine coolers
            WineCooler-Control: Grants access to modify resources under under /api/homeappliances except images and settings on wine coolers
            WineCooler-Settings: Grants access to read and modify resources under /api/homeappliances/{haId}/settings on wine coolers
            CookProcessor: Grants access to read or modify all resources under /api/homeappliances on cookprocessors
            CookProcessor-Monitor: Grants access to read resources under /api/homeappliances except images and settings on cookprocessors
            CookProcessor-Control: Grants access to modify resources under under /api/homeappliances except images and settings on cookprocessors
            CookProcessor-Settings: Grants access to read and modify resources under /api/homeappliances/{haId}/settings on cookprocessors
          authorizationUrl: https://api.home-connect.com/security/oauth/authorize
          tokenUrl: https://api.home-connect.com/security/oauth/token
      description: 'The Home Connect API uses the authorization code grant flow of the OAuth2

        Authorization Framework as specified in RFC 6749 (https://tools.ietf.org/html/rfc6749).

        Authorization tokens have to be transmitted in the HTTP headers as defined

        in RFC 6750 (https://tools.ietf.org/html/rfc6750).

        '
externalDocs:
  description: Home Connect Developer Portal
  url: https://developer.home-connect.com/