{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/cognizant-technology/json-schema/cognizant-technology-function-response-schema.json",
  "title": "FunctionResponse",
  "description": "Response structure for Function gRPC method",
  "x-generated": "2026-11-04",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/cognizant-technology-agentservice-api-openapi.yml#/components/schemas/FunctionResponse",
  "type": "object",
  "properties": {
    "function": {
      "$ref": "#/$defs/Function"
    }
  },
  "$defs": {
    "Function": {
      "type": "object",
      "properties": {
        "description": {
          "type": "string",
          "description": "Outward-facing description of what the agent does."
        },
        "parameters": {
          "type": "object",
          "description": "Optional map of parameters passed in via the natural-language chat text channel that the agent needs in order to work. This is really a pydantic/OpenAI function description, which is a bit too complex to specify directly in protobuf."
        },
        "sly_data_schema": {
          "type": "object",
          "description": "This is a description of what data is expected to come *in* via the sly_data channel. Optional map of parameters passed in via the sly_data dictionary private data channel that the agent needs in order to work.  Just like the parameters above, this is really a pydantic/OpenAI function description, which is a bit too complex to specify directly in protobuf."
        },
        "sly_data_output_schema": {
          "type": "object",
          "description": "This is a description of what data is expected to come *out* via the sly_data channel. Optional map of parameters returned via the sly_data dictionary private data channel that the agent will return after its work.  Just like the parameters above, this is really a pydantic/OpenAI function description, which is a bit too complex to specify directly in protobuf."
        }
      },
      "description": "Description of an agent's function"
    }
  }
}