Dapr Metadata API

The Dapr Metadata API provides information about the Dapr sidecar, including application connection details, registered components, active subscriptions, and HTTP endpoints. It also allows setting custom metadata attributes.

OpenAPI Specification

dapr-metadata-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Dapr Metadata API
  description: >-
    The Dapr Metadata API provides information about the Dapr sidecar,
    including the application connection details, registered components,
    active subscriptions, and HTTP endpoints. It also allows setting
    custom metadata attributes.
  version: 1.0.0
  contact:
    name: Dapr
    url: https://dapr.io
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0
externalDocs:
  description: Dapr Metadata API Reference
  url: https://docs.dapr.io/reference/api/metadata_api/
servers:
  - url: http://localhost:3500
    description: Dapr Sidecar
paths:
  /v1.0/metadata:
    get:
      summary: Dapr Get Metadata
      description: >-
        Returns information about the Dapr sidecar, including app
        connection details, registered components, subscriptions,
        and HTTP endpoints.
      operationId: getMetadata
      tags:
        - Metadata
      responses:
        '200':
          description: Metadata retrieved successfully.
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    description: The application ID.
                  runtimeVersion:
                    type: string
                    description: The Dapr runtime version.
                  enabledFeatures:
                    type: array
                    items:
                      type: string
                    description: List of enabled features.
                  actors:
                    type: array
                    items:
                      type: object
                      properties:
                        type:
                          type: string
                        count:
                          type: integer
                    description: Registered actor types and counts.
                  components:
                    type: array
                    items:
                      type: object
                      properties:
                        name:
                          type: string
                        type:
                          type: string
                        version:
                          type: string
                        capabilities:
                          type: array
                          items:
                            type: string
                    description: Registered components.
                  subscriptions:
                    type: array
                    items:
                      type: object
                      properties:
                        pubsubname:
                          type: string
                        topic:
                          type: string
                        rules:
                          type: array
                          items:
                            type: object
                        deadLetterTopic:
                          type: string
                    description: Active subscriptions.
                  httpEndpoints:
                    type: array
                    items:
                      type: object
                      properties:
                        name:
                          type: string
                    description: Registered HTTP endpoints.
                  appConnectionProperties:
                    type: object
                    properties:
                      port:
                        type: integer
                      protocol:
                        type: string
                      channelAddress:
                        type: string
                      maxConcurrency:
                        type: integer
                      health:
                        type: object
                        properties:
                          healthCheckPath:
                            type: string
                          healthProbeInterval:
                            type: string
                          healthProbeTimeout:
                            type: string
                          healthThreshold:
                            type: integer
                    description: App connection properties.
                  extended:
                    type: object
                    additionalProperties:
                      type: string
                    description: Custom extended metadata attributes.
        '500':
          description: Failed to get metadata.
  /v1.0/metadata/{key}:
    put:
      summary: Dapr Set Metadata
      description: Sets a custom metadata attribute on the Dapr sidecar.
      operationId: setMetadata
      tags:
        - Metadata
      parameters:
        - name: key
          in: path
          required: true
          description: The metadata attribute key to set.
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: string
              description: The value to set for the metadata attribute.
      responses:
        '204':
          description: Metadata set successfully.
        '500':
          description: Failed to set metadata.
tags:
  - name: Metadata
    description: Sidecar metadata operations.