{
  "/v1/tool/list": {
    "get": {
      "tags": [
        "tool management"
      ],
      "summary": "List Tools",
      "description": "List all auto-discovered tools and their policies.\n\nParameters:\n- input_policy: Optional filter \u2014 one of \"trusted\", \"untrusted\", \"blocked\"",
      "operationId": "list_tools_v1_tool_list_get",
      "security": [
        {
          "APIKeyHeader": []
        }
      ],
      "parameters": [
        {
          "name": "input_policy",
          "in": "query",
          "required": false,
          "schema": {
            "anyOf": [
              {
                "enum": [
                  "trusted",
                  "untrusted",
                  "blocked"
                ],
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "title": "Input Policy"
          }
        }
      ],
      "responses": {
        "200": {
          "description": "Successful Response",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ToolListResponse"
              }
            }
          }
        },
        "422": {
          "description": "Validation Error",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/HTTPValidationError"
              }
            }
          }
        }
      }
    }
  },
  "/v1/tool/policy": {
    "post": {
      "tags": [
        "tool management"
      ],
      "summary": "Update Tool Policy",
      "description": "Set the input_policy and/or output_policy for a tool (global), or block for a specific team/key (override).\n\nParameters:\n- tool_name: str - The tool to update\n- input_policy: optional - \"trusted\" | \"untrusted\" | \"blocked\"\n- output_policy: optional - \"trusted\" | \"untrusted\"\n- team_id: optional - if set, create/update override for this team only\n- key_hash: optional - if set, create/update override for this key only",
      "operationId": "update_tool_policy_v1_tool_policy_post",
      "requestBody": {
        "content": {
          "application/json": {
            "schema": {
              "$ref": "#/components/schemas/ToolPolicyUpdateRequest"
            }
          }
        },
        "required": true
      },
      "responses": {
        "200": {
          "description": "Successful Response",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ToolPolicyUpdateResponse"
              }
            }
          }
        },
        "422": {
          "description": "Validation Error",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/HTTPValidationError"
              }
            }
          }
        }
      },
      "security": [
        {
          "APIKeyHeader": []
        }
      ]
    }
  },
  "/v1/tool/policy/options": {
    "get": {
      "tags": [
        "tool management"
      ],
      "summary": "Get Tool Policy Options",
      "description": "Return the available input and output policy options with descriptions.\nStatic data \u2014 no DB call.",
      "operationId": "get_tool_policy_options_v1_tool_policy_options_get",
      "responses": {
        "200": {
          "description": "Successful Response",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ToolPolicyOptionsResponse"
              }
            }
          }
        }
      },
      "security": [
        {
          "APIKeyHeader": []
        }
      ]
    }
  },
  "/v1/tool/{tool_name}": {
    "get": {
      "tags": [
        "tool management"
      ],
      "summary": "Get Tool",
      "description": "Get details for a single tool.",
      "operationId": "get_tool_v1_tool__tool_name__get",
      "security": [
        {
          "APIKeyHeader": []
        }
      ],
      "parameters": [
        {
          "name": "tool_name",
          "in": "path",
          "required": true,
          "schema": {
            "type": "string",
            "title": "Tool Name"
          }
        }
      ],
      "responses": {
        "200": {
          "description": "Successful Response",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LiteLLM_ToolTableRow"
              }
            }
          }
        },
        "422": {
          "description": "Validation Error",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/HTTPValidationError"
              }
            }
          }
        }
      }
    }
  },
  "/v1/tool/{tool_name}/detail": {
    "get": {
      "tags": [
        "tool management"
      ],
      "summary": "Get Tool Detail",
      "description": "Get a single tool with its policy overrides (for UI detail view).",
      "operationId": "get_tool_detail_v1_tool__tool_name__detail_get",
      "security": [
        {
          "APIKeyHeader": []
        }
      ],
      "parameters": [
        {
          "name": "tool_name",
          "in": "path",
          "required": true,
          "schema": {
            "type": "string",
            "title": "Tool Name"
          }
        }
      ],
      "responses": {
        "200": {
          "description": "Successful Response",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ToolDetailResponse"
              }
            }
          }
        },
        "422": {
          "description": "Validation Error",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/HTTPValidationError"
              }
            }
          }
        }
      }
    }
  },
  "/v1/tool/{tool_name}/logs": {
    "get": {
      "tags": [
        "tool management"
      ],
      "summary": "Get Tool Usage Logs",
      "description": "Return paginated spend logs for requests that used this tool (from SpendLogToolIndex).",
      "operationId": "get_tool_usage_logs_v1_tool__tool_name__logs_get",
      "security": [
        {
          "APIKeyHeader": []
        }
      ],
      "parameters": [
        {
          "name": "tool_name",
          "in": "path",
          "required": true,
          "schema": {
            "type": "string",
            "title": "Tool Name"
          }
        },
        {
          "name": "page",
          "in": "query",
          "required": false,
          "schema": {
            "type": "integer",
            "minimum": 1,
            "default": 1,
            "title": "Page"
          }
        },
        {
          "name": "page_size",
          "in": "query",
          "required": false,
          "schema": {
            "type": "integer",
            "maximum": 100,
            "minimum": 1,
            "default": 50,
            "title": "Page Size"
          }
        },
        {
          "name": "start_date",
          "in": "query",
          "required": false,
          "schema": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "description": "YYYY-MM-DD",
            "title": "Start Date"
          },
          "description": "YYYY-MM-DD"
        },
        {
          "name": "end_date",
          "in": "query",
          "required": false,
          "schema": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "description": "YYYY-MM-DD",
            "title": "End Date"
          },
          "description": "YYYY-MM-DD"
        }
      ],
      "responses": {
        "200": {
          "description": "Successful Response",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ToolUsageLogsResponse"
              }
            }
          }
        },
        "422": {
          "description": "Validation Error",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/HTTPValidationError"
              }
            }
          }
        }
      }
    }
  },
  "/v1/tool/{tool_name}/overrides": {
    "delete": {
      "tags": [
        "tool management"
      ],
      "summary": "Delete Tool Policy Override",
      "description": "Remove a policy override for a tool. Specify the override by team_id or key_hash\n(exactly one required).",
      "operationId": "delete_tool_policy_override_v1_tool__tool_name__overrides_delete",
      "security": [
        {
          "APIKeyHeader": []
        }
      ],
      "parameters": [
        {
          "name": "tool_name",
          "in": "path",
          "required": true,
          "schema": {
            "type": "string",
            "title": "Tool Name"
          }
        },
        {
          "name": "team_id",
          "in": "query",
          "required": false,
          "schema": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "description": "Team ID of the override to remove",
            "title": "Team Id"
          },
          "description": "Team ID of the override to remove"
        },
        {
          "name": "key_hash",
          "in": "query",
          "required": false,
          "schema": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "description": "Key hash of the override to remove",
            "title": "Key Hash"
          },
          "description": "Key hash of the override to remove"
        }
      ],
      "responses": {
        "200": {
          "description": "Successful Response",
          "content": {
            "application/json": {
              "schema": {}
            }
          }
        },
        "422": {
          "description": "Validation Error",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/HTTPValidationError"
              }
            }
          }
        }
      }
    }
  }
}