Akri · Schema

AkriConfiguration

Akri Configuration custom resource (configurations.akri.sh) that specifies device discovery settings and optional broker workload deployment specifications.

Device ManagementEdge ComputingIoTKubernetesCNCFOpen SourceOPC UAONVIFudev

Properties

Name Type Description
apiVersion string API version of the Akri Configuration resource
kind string Resource kind
metadata object Kubernetes object metadata
spec object Configuration specification
View JSON Schema on GitHub

JSON Schema

akri-akri-configuration-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/akri/refs/heads/main/json-schema/akri-akri-configuration-schema.json",
  "title": "AkriConfiguration",
  "description": "Akri Configuration custom resource (configurations.akri.sh) that specifies device discovery settings and optional broker workload deployment specifications.",
  "type": "object",
  "properties": {
    "apiVersion": {
      "type": "string",
      "description": "API version of the Akri Configuration resource",
      "example": "akri.sh/v0"
    },
    "kind": {
      "type": "string",
      "description": "Resource kind",
      "example": "Configuration"
    },
    "metadata": {
      "type": "object",
      "description": "Kubernetes object metadata",
      "properties": {
        "name": {
          "type": "string",
          "description": "Name of the configuration",
          "example": "onvif-camera"
        },
        "namespace": {
          "type": "string",
          "description": "Kubernetes namespace",
          "example": "default"
        }
      }
    },
    "spec": {
      "type": "object",
      "description": "Configuration specification",
      "properties": {
        "discoveryHandler": {
          "type": "object",
          "description": "Discovery Handler settings for device discovery",
          "properties": {
            "name": {
              "type": "string",
              "description": "Name of the Discovery Handler to use",
              "example": "onvif"
            },
            "discoveryDetails": {
              "type": "string",
              "description": "Protocol-specific discovery details as a string",
              "example": "ipAddresses:\\n  action: Exclude\\n  items:\\n  - 10.0.0.1"
            },
            "discoveryProperties": {
              "type": "array",
              "description": "Additional key-value properties for Discovery Handler",
              "items": {
                "type": "object",
                "properties": {
                  "name": {
                    "type": "string",
                    "example": "USERNAME_LIST"
                  },
                  "value": {
                    "type": "string",
                    "example": "admin"
                  }
                }
              }
            }
          }
        },
        "capacity": {
          "type": "integer",
          "description": "Maximum number of broker replicas per device",
          "example": 1
        }
      }
    }
  }
}