Extended metadata schemas

This page provides a catalog of the supported schemas for the extended metadata property on services and workloads. Extended metadata adds rich, structured data to App Hub application components, providing context for governance, operations, and integration with other systems.

Each schema is identified by a unique key and defines the structure and fields for a specific type of metadata.

apphub.googleapis.com/AgentProperties

This schema is used to describe the properties of an AI agent, letting other systems find and understand it. It is typically applied to workloads that have a functional type property of AGENT. The schema is compatible with the Agent2Agent (A2A) Agent Card.

Schema definition

The following is the schema for this metadata type in JSON format.

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "title": "apphub.googleapis.com/AgentProperties",
  "description": "The schema for apphub.googleapis.com/AgentProperties. Except for framework, the properties are derived from the A2A Agent Card.",
  "type": "object",
  "additionalProperties": false,
  "properties": {
    "displayName": {
      "type": "string",
      "description": "The display name of the agent."
    },
    "description": {
      "type": "string",
      "description": "The description of the agent."
    },
    "version": {
      "type": "string",
      "description": "Contains the version of the Agent."
    },
    "framework": {
      "type": "string",
      "description": "The agent framework used to develop the agent."
    },
    "agentCardUri": {
      "type": "string",
      "description": "The URI of the agent card for the agent."
    },
    "skills": {
      "type": "array",
      "description": "A list of skills the agent possesses.",
      "items": {
        "type": "object",
        "title": "Skills",
        "description": "Defines a skill for an agent.",
        "additionalProperties": false,
        "properties": {
          "id": {
            "type": "string",
            "description": "A unique identifier for the agent's skill."
          },
          "name": {
            "type": "string",
            "description": "A human readable name for the agent's skill."
          },
          "description": {
            "type": "string",
            "description": "A description of the agent's skill."
          },
          "tags": {
            "type": "array",
            "description": "A set of keywords describing the skill's capabilities.",
            "items": {
              "type": "string"
            }
          },
          "examples": {
            "type": "array",
            "description": "Example prompts or scenarios that this skill can handle.",
            "items": {
              "type": "string"
            }
          }
        }
      }
    }
  }
}

Field descriptions

Field Type Description
displayName string The display name of the agent.
description string The description of the agent.
version string The version of the agent.
framework string The framework used to develop the agent.
agentCardUri string The URI of the agent card for the agent.
skills array A list of skills the agent possesses.
skills.id string A unique identifier for the agent's skill.
skills.name string A human readable name for the agent's skill.
skills.description string A description of the agent's skill.
skills.tags array of string A set of keywords describing the skill's capabilities.
skills.examples array of string Example prompts or scenarios that this skill can handle.