Agent

Represents an agent that can call the model and use tools.

Artificial IntelligenceGenerative AIAI AgentsFoundation ModelsMachine LearningCloudMicrosoft AzureA2A

Properties

Name Type Description
id string The identifier, which can be referenced in API endpoints.
object string The object type, which is always assistant.
created_at integer The Unix timestamp, in seconds, representing when this object was created.
name stringnull The name of the agent.
description stringnull The description of the agent.
model string The ID of the model to use.
instructions stringnull The system instructions for the agent to use.
tools array The collection of tools enabled for the agent.
tool_resources object A set of resources that are used by the agent's tools. The resources are specific to the type of tool. For example, the `code_interpreter` tool requires a list of file IDs, while the `file_search` too
temperature numbernull What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic.
top_p numbernull An alternative to sampling with temperature, called nucleus sampling, where the model considers the results of the tokens with top_p probability mass. So 0.1 means only the tokens comprising the top 1
response_format object The response format of the tool calls used by this agent.
metadata objectnull A set of up to 16 key/value pairs that can be attached to an object, used for storing additional information about that object in a structured format. Keys may be up to 64 characters in length and val
View JSON Schema on GitHub

JSON Schema

azure-ai-foundry-agent-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/azure-ai-foundry/json-schema/azure-ai-foundry-agent-schema.json",
  "title": "Agent",
  "description": "Represents an agent that can call the model and use tools.",
  "x-generated": "2026-11-12",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/_superseded/azure-ai-foundry-assistants-api-openapi.yml#/components/schemas/Agent",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "The identifier, which can be referenced in API endpoints."
    },
    "object": {
      "type": "string",
      "description": "The object type, which is always assistant.",
      "enum": [
        "assistant"
      ],
      "x-ms-enum": {
        "modelAsString": false
      }
    },
    "created_at": {
      "type": "integer",
      "format": "unixtime",
      "description": "The Unix timestamp, in seconds, representing when this object was created.",
      "x-ms-client-name": "createdAt"
    },
    "name": {
      "type": [
        "string",
        "null"
      ],
      "description": "The name of the agent."
    },
    "description": {
      "type": [
        "string",
        "null"
      ],
      "description": "The description of the agent."
    },
    "model": {
      "type": "string",
      "description": "The ID of the model to use."
    },
    "instructions": {
      "type": [
        "string",
        "null"
      ],
      "description": "The system instructions for the agent to use."
    },
    "tools": {
      "type": "array",
      "description": "The collection of tools enabled for the agent.",
      "default": [],
      "items": {
        "$ref": "#/$defs/ToolDefinition"
      }
    },
    "tool_resources": {
      "$ref": "#/$defs/ToolResources",
      "description": "A set of resources that are used by the agent's tools. The resources are specific to the type of tool. For example, the `code_interpreter`\ntool requires a list of file IDs, while the `file_search` tool requires a list of vector store IDs.",
      "x-ms-client-name": "toolResources"
    },
    "temperature": {
      "type": [
        "number",
        "null"
      ],
      "format": "float",
      "description": "What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random,\nwhile lower values like 0.2 will make it more focused and deterministic.",
      "default": 1,
      "minimum": 0,
      "maximum": 2
    },
    "top_p": {
      "type": [
        "number",
        "null"
      ],
      "format": "float",
      "description": "An alternative to sampling with temperature, called nucleus sampling, where the model considers the results of the tokens with top_p probability mass.\nSo 0.1 means only the tokens comprising the top 10% probability mass are considered.\n\nWe generally recommend altering this or temperature but not both.",
      "default": 1,
      "minimum": 0,
      "maximum": 1,
      "x-ms-client-name": "topP"
    },
    "response_format": {
      "$ref": "#/$defs/AgentsResponseFormatOption",
      "description": "The response format of the tool calls used by this agent.",
      "x-ms-client-name": "responseFormat"
    },
    "metadata": {
      "type": [
        "object",
        "null"
      ],
      "description": "A set of up to 16 key/value pairs that can be attached to an object, used for storing additional information about that object in a structured format. Keys may be up to 64 characters in length and values may be up to 512 characters in length.",
      "additionalProperties": {
        "type": "string"
      }
    }
  },
  "required": [
    "id",
    "object",
    "created_at",
    "name",
    "description",
    "model",
    "instructions",
    "tools",
    "tool_resources",
    "temperature",
    "top_p",
    "metadata"
  ],
  "$defs": {
    "AISearchIndexResource": {
      "type": "object",
      "description": "A AI Search Index resource.",
      "properties": {
        "index_connection_id": {
          "type": "string",
          "description": "An index connection id in an IndexResource attached to this agent.",
          "x-ms-client-name": "indexConnectionId"
        },
        "index_name": {
          "type": "string",
          "description": "The name of an index in an IndexResource attached to this agent.",
          "x-ms-client-name": "indexName"
        },
        "query_type": {
          "$ref": "#/$defs/AzureAISearchQueryType",
          "description": "Type of query in an AIIndexResource attached to this agent.",
          "x-ms-client-name": "queryType"
        },
        "top_k": {
          "type": "integer",
          "format": "int32",
          "description": "Number of documents to retrieve from search and present to the model.",
          "x-ms-client-name": "topK"
        },
        "filter": {
          "type": "string",
          "description": "filter string for search resource."
        },
        "index_asset_id": {
          "type": "string",
          "description": "Index asset id for search resource.",
          "x-ms-client-name": "indexAssetId"
        }
      }
    },
    "AgentsResponseFormatOption": {},
    "AzureAISearchQueryType": {
      "type": "string",
      "description": "Available query types for Azure AI Search tool.",
      "enum": [
        "simple",
        "semantic",
        "vector",
        "vector_simple_hybrid",
        "vector_semantic_hybrid"
      ],
      "x-ms-enum": {
        "name": "AzureAISearchQueryType",
        "modelAsString": true,
        "values": [
          {
            "name": "simple",
            "value": "simple",
            "description": "Query type `simple`"
          },
          {
            "name": "semantic",
            "value": "semantic",
            "description": "Query type `semantic`"
          },
          {
            "name": "vector",
            "value": "vector",
            "description": "Query type `vector`"
          },
          {
            "name": "vector_simple_hybrid",
            "value": "vector_simple_hybrid",
            "description": "Query type `vector_simple_hybrid`"
          },
          {
            "name": "vector_semantic_hybrid",
            "value": "vector_semantic_hybrid",
            "description": "Query type `vector_semantic_hybrid`"
          }
        ]
      }
    },
    "AzureAISearchToolResource": {
      "type": "object",
      "description": "A set of index resources used by the `azure_ai_search` tool.",
      "properties": {
        "indexes": {
          "type": "array",
          "description": "The indices attached to this agent. There can be a maximum of 1 index\nresource attached to the agent.",
          "maxItems": 1,
          "items": {
            "$ref": "#/$defs/AISearchIndexResource"
          },
          "x-ms-client-name": "indexList"
        }
      }
    },
    "CodeInterpreterToolResource": {
      "type": "object",
      "description": "A set of resources that are used by the `code_interpreter` tool.",
      "properties": {
        "file_ids": {
          "type": "array",
          "description": "A list of file IDs made available to the `code_interpreter` tool. There can be a maximum of 20 files\nassociated with the tool.",
          "default": [],
          "maxItems": 20,
          "items": {
            "type": "string"
          },
          "x-ms-client-name": "fileIds"
        },
        "data_sources": {
          "type": "array",
          "description": "The data sources to be used. This option is mutually exclusive with the `fileIds` property.",
          "maxItems": 20,
          "items": {
            "$ref": "#/$defs/VectorStoreDataSource"
          },
          "x-ms-client-name": "dataSources"
        }
      }
    },
    "FileSearchToolResource": {
      "type": "object",
      "description": "A set of resources that are used by the `file_search` tool.",
      "properties": {
        "vector_store_ids": {
          "type": "array",
          "description": "The ID of the vector store attached to this agent. There can be a maximum of 1 vector\nstore attached to the agent.",
          "maxItems": 1,
          "items": {
            "type": "string"
          },
          "x-ms-client-name": "vectorStoreIds"
        },
        "vector_stores": {
          "type": "array",
          "description": "The list of vector store configuration objects from Azure.\nThis list is limited to one element.\nThe only element of this list contains the list of azure asset IDs used by the search tool.",
          "maxItems": 1,
          "items": {
            "$ref": "#/$defs/VectorStoreConfigurations"
          },
          "x-ms-client-name": "vectorStores"
        }
      }
    },
    "ToolDefinition": {
      "type": "object",
      "description": "An abstract representation of an input tool definition that an agent can use.",
      "properties": {
        "type": {
          "type": "string",
          "description": "The object type."
        }
      },
      "required": [
        "type"
      ]
    },
    "ToolResources": {
      "type": "object",
      "description": "A set of resources that are used by the agent's tools. The resources are specific to the type of\ntool. For example, the `code_interpreter` tool requires a list of file IDs, while the `file_search`\ntool requires a list of vector store IDs.",
      "properties": {
        "code_interpreter": {
          "$ref": "#/$defs/CodeInterpreterToolResource",
          "description": "Resources to be used by the `code_interpreter` tool consisting of file IDs.",
          "x-ms-client-name": "codeInterpreter"
        },
        "file_search": {
          "$ref": "#/$defs/FileSearchToolResource",
          "description": "Resources to be used by the `file_search` tool consisting of vector store IDs.",
          "x-ms-client-name": "fileSearch"
        },
        "azure_ai_search": {
          "$ref": "#/$defs/AzureAISearchToolResource",
          "description": "Resources to be used by the `azure_ai_search` tool consisting of index IDs and names.",
          "x-ms-client-name": "azureAISearch"
        }
      }
    },
    "VectorStoreConfiguration": {
      "type": "object",
      "description": "Vector storage configuration is the list of data sources, used when multiple\nfiles can be used for the enterprise file search.",
      "properties": {
        "data_sources": {
          "type": "array",
          "description": "Data sources",
          "items": {
            "$ref": "#/$defs/VectorStoreDataSource"
          },
          "x-ms-client-name": "dataSources"
        }
      },
      "required": [
        "data_sources"
      ]
    },
    "VectorStoreConfigurations": {
      "type": "object",
      "description": "The structure, containing the list of vector storage configurations i.e. the list of azure asset IDs.",
      "properties": {
        "name": {
          "type": "string",
          "description": "Name",
          "x-ms-client-name": "storeName"
        },
        "configuration": {
          "$ref": "#/$defs/VectorStoreConfiguration",
          "description": "Configurations",
          "x-ms-client-name": "storeConfiguration"
        }
      },
      "required": [
        "name",
        "configuration"
      ]
    },
    "VectorStoreDataSource": {
      "type": "object",
      "description": "The structure, containing Azure asset URI path and the asset type of the file used as a data source\nfor the enterprise file search.",
      "properties": {
        "uri": {
          "type": "string",
          "description": "Asset URI.",
          "x-ms-client-name": "assetIdentifier"
        },
        "type": {
          "$ref": "#/$defs/VectorStoreDataSourceAssetType",
          "description": "The asset type",
          "x-ms-client-name": "assetType"
        }
      },
      "required": [
        "uri",
        "type"
      ]
    },
    "VectorStoreDataSourceAssetType": {
      "type": "string",
      "description": "Type of vector storage asset. Asset type may be a uri_asset, in this case it should contain asset URI ID,\nin the case of id_asset it should contain the data ID.",
      "enum": [
        "uri_asset",
        "id_asset"
      ],
      "x-ms-enum": {
        "name": "VectorStoreDataSourceAssetType",
        "modelAsString": true,
        "values": [
          {
            "name": "uri_asset",
            "value": "uri_asset",
            "description": "Azure URI"
          },
          {
            "name": "id_asset",
            "value": "id_asset",
            "description": "The data ID"
          }
        ]
      }
    }
  }
}

Work with this as data

Every JSON Schema 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 schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • 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 JSON Schema
curl "https://apis.io/api/v1/json-schemas/azure-ai-foundry-agent"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

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.