> ## Documentation Index
> Fetch the complete documentation index at: https://docs.vibechain.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Subscribe to runtime updates

> SSE with hello, reset, invalidate and trade events plus presence/heartbeat updates. Retain ids; Last-Event-ID takes precedence over after. On reset, refetch durable GET endpoints. Updates are not finality or transaction receipts. Up to 16 topics; wallet topic addresses must be lowercase. Back off on 503 or disconnect.



## OpenAPI

````yaml /api-reference/vibemarket_openapi.json get /runtime/{version}/stream
openapi: 3.0.3
info:
  title: vibe.market API
  version: '2026-09-10'
  description: >-
    Consumer HTTP API for the current vibe.market at
    https://vibechain.com/market. This is an experimental protocol; review
    https://vibechain.com/terms. Public reads do not require Classic API keys.
    Discover runtime graphs rather than hardcoding a revision. The
    /api/vibemarket2 namespace is intentional. Operational provider webhooks and
    operator-only controls are excluded.
  termsOfService: https://vibechain.com/terms
servers:
  - url: https://build.vibechain.com/api/vibemarket2
    description: Current-market backend
security: []
tags:
  - name: Discovery
  - name: Indexed market
  - name: Board
  - name: Live updates
  - name: Creators
  - name: Artwork
  - name: Accounts
  - name: Community
  - name: Private messages
  - name: Scoped sessions
paths:
  /runtime/{version}/stream:
    get:
      tags:
        - Live updates
      summary: Subscribe to runtime updates
      description: >-
        SSE with hello, reset, invalidate and trade events plus
        presence/heartbeat updates. Retain ids; Last-Event-ID takes precedence
        over after. On reset, refetch durable GET endpoints. Updates are not
        finality or transaction receipts. Up to 16 topics; wallet topic
        addresses must be lowercase. Back off on 503 or disconnect.
      operationId: vm2020
      parameters:
        - name: version
          in: path
          required: true
          schema:
            type: string
          description: >-
            Runtime id from /runtime/versions or catalog/sources; never infer
            the newest revision from its name.
        - name: topics
          in: query
          required: false
          schema:
            type: string
            default: catalog,pot
          description: >-
            Comma-separated catalog, pot, market:{positiveDropId},
            wallet:{lowercaseAddress}; maximum 16.
        - name: after
          in: query
          required: false
          schema:
            type: integer
            format: int64
            minimum: 0
        - name: Last-Event-ID
          in: header
          schema:
            type: string
            pattern: ^[0-9]+$
        - name: watch
          in: query
          required: false
          schema:
            type: string
            pattern: ^(shelf|[1-9][0-9]{0,77})$
          description: Presence scope.
      responses:
        '200':
          description: Long-lived server-sent event stream.
          content:
            text/event-stream:
              schema:
                type: string
        '400':
          description: Invalid input, signature, cursor or action.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Resource not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '503':
          description: Dependency, projection or capacity unavailable. Retry with backoff.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security: []
components:
  schemas:
    Error:
      type: object
      properties:
        error:
          type: string
      required:
        - error

````