{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/google-dialogflow/json-schema/google-dialogflow-google-cloud-dialogflow-cx-v3-list-tools-response-schema.json",
  "title": "GoogleCloudDialogflowCxV3ListToolsResponse",
  "x-generated": "2026-11-04",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/_superseded/google-dialogflow-tools-api-openapi.yml#/components/schemas/GoogleCloudDialogflowCxV3ListToolsResponse",
  "type": "object",
  "properties": {
    "nextPageToken": {
      "type": "string"
    },
    "tools": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/GoogleCloudDialogflowCxV3Tool"
      }
    }
  },
  "$defs": {
    "GoogleCloudDialogflowCxV3DataStoreConnection": {
      "type": "object",
      "properties": {
        "dataStoreType": {
          "type": "string",
          "enum": [
            "DATA_STORE_TYPE_UNSPECIFIED",
            "PUBLIC_WEB",
            "UNSTRUCTURED",
            "STRUCTURED"
          ],
          "x-enumDescriptions": [
            "",
            "",
            "",
            ""
          ]
        },
        "dataStore": {
          "type": "string"
        },
        "documentProcessingMode": {
          "type": "string",
          "enum": [
            "DOCUMENT_PROCESSING_MODE_UNSPECIFIED",
            "DOCUMENTS",
            "CHUNKS"
          ],
          "x-enumDescriptions": [
            "",
            "",
            ""
          ]
        }
      }
    },
    "GoogleCloudDialogflowCxV3Tool": {
      "type": "object",
      "properties": {
        "functionSpec": {
          "$ref": "#/$defs/GoogleCloudDialogflowCxV3ToolFunctionTool"
        },
        "description": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "dataStoreSpec": {
          "$ref": "#/$defs/GoogleCloudDialogflowCxV3ToolDataStoreTool"
        },
        "displayName": {
          "type": "string"
        },
        "openApiSpec": {
          "$ref": "#/$defs/GoogleCloudDialogflowCxV3ToolOpenApiTool"
        },
        "toolType": {
          "type": "string",
          "enum": [
            "TOOL_TYPE_UNSPECIFIED",
            "CUSTOMIZED_TOOL",
            "BUILTIN_TOOL"
          ],
          "x-enumDescriptions": [
            "",
            "",
            ""
          ],
          "readOnly": true
        }
      }
    },
    "GoogleCloudDialogflowCxV3ToolAuthentication": {
      "type": "object",
      "properties": {
        "serviceAccountAuthConfig": {
          "$ref": "#/$defs/GoogleCloudDialogflowCxV3ToolAuthenticationServiceAccountAuthConfig"
        },
        "oauthConfig": {
          "$ref": "#/$defs/GoogleCloudDialogflowCxV3ToolAuthenticationOAuthConfig"
        },
        "serviceAgentAuthConfig": {
          "$ref": "#/$defs/GoogleCloudDialogflowCxV3ToolAuthenticationServiceAgentAuthConfig"
        },
        "bearerTokenConfig": {
          "$ref": "#/$defs/GoogleCloudDialogflowCxV3ToolAuthenticationBearerTokenConfig"
        },
        "apiKeyConfig": {
          "$ref": "#/$defs/GoogleCloudDialogflowCxV3ToolAuthenticationApiKeyConfig"
        }
      }
    },
    "GoogleCloudDialogflowCxV3ToolAuthenticationApiKeyConfig": {
      "type": "object",
      "properties": {
        "apiKey": {
          "type": "string"
        },
        "requestLocation": {
          "type": "string",
          "enum": [
            "REQUEST_LOCATION_UNSPECIFIED",
            "HEADER",
            "QUERY_STRING"
          ],
          "x-enumDescriptions": [
            "",
            "",
            ""
          ]
        },
        "keyName": {
          "type": "string"
        },
        "secretVersionForApiKey": {
          "type": "string"
        }
      }
    },
    "GoogleCloudDialogflowCxV3ToolAuthenticationBearerTokenConfig": {
      "type": "object",
      "properties": {
        "secretVersionForToken": {
          "type": "string"
        },
        "token": {
          "type": "string"
        }
      }
    },
    "GoogleCloudDialogflowCxV3ToolAuthenticationOAuthConfig": {
      "type": "object",
      "properties": {
        "clientId": {
          "type": "string"
        },
        "tokenEndpoint": {
          "type": "string"
        },
        "secretVersionForClientSecret": {
          "type": "string"
        },
        "scopes": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "clientSecret": {
          "type": "string"
        },
        "oauthGrantType": {
          "type": "string",
          "enum": [
            "OAUTH_GRANT_TYPE_UNSPECIFIED",
            "CLIENT_CREDENTIAL"
          ],
          "x-enumDescriptions": [
            "",
            ""
          ]
        }
      }
    },
    "GoogleCloudDialogflowCxV3ToolAuthenticationServiceAccountAuthConfig": {
      "type": "object",
      "properties": {
        "serviceAccount": {
          "type": "string"
        }
      }
    },
    "GoogleCloudDialogflowCxV3ToolAuthenticationServiceAgentAuthConfig": {
      "type": "object",
      "properties": {
        "serviceAgentAuth": {
          "type": "string",
          "enum": [
            "SERVICE_AGENT_AUTH_UNSPECIFIED",
            "ID_TOKEN",
            "ACCESS_TOKEN"
          ],
          "x-enumDescriptions": [
            "",
            "",
            ""
          ]
        }
      }
    },
    "GoogleCloudDialogflowCxV3ToolDataStoreTool": {
      "type": "object",
      "properties": {
        "dataStoreConnections": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/GoogleCloudDialogflowCxV3DataStoreConnection"
          }
        },
        "fallbackPrompt": {
          "$ref": "#/$defs/GoogleCloudDialogflowCxV3ToolDataStoreToolFallbackPrompt"
        }
      }
    },
    "GoogleCloudDialogflowCxV3ToolDataStoreToolFallbackPrompt": {
      "type": "object"
    },
    "GoogleCloudDialogflowCxV3ToolFunctionTool": {
      "type": "object",
      "properties": {
        "outputSchema": {
          "type": "object",
          "additionalProperties": {
            "description": "Properties of the object."
          }
        },
        "inputSchema": {
          "type": "object",
          "additionalProperties": {
            "description": "Properties of the object."
          }
        }
      }
    },
    "GoogleCloudDialogflowCxV3ToolOpenApiTool": {
      "type": "object",
      "properties": {
        "tlsConfig": {
          "$ref": "#/$defs/GoogleCloudDialogflowCxV3ToolTLSConfig"
        },
        "authentication": {
          "$ref": "#/$defs/GoogleCloudDialogflowCxV3ToolAuthentication"
        },
        "textSchema": {
          "type": "string"
        },
        "serviceDirectoryConfig": {
          "$ref": "#/$defs/GoogleCloudDialogflowCxV3ToolServiceDirectoryConfig"
        }
      }
    },
    "GoogleCloudDialogflowCxV3ToolServiceDirectoryConfig": {
      "type": "object",
      "properties": {
        "service": {
          "type": "string"
        }
      }
    },
    "GoogleCloudDialogflowCxV3ToolTLSConfig": {
      "type": "object",
      "properties": {
        "caCerts": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/GoogleCloudDialogflowCxV3ToolTLSConfigCACert"
          }
        }
      }
    },
    "GoogleCloudDialogflowCxV3ToolTLSConfigCACert": {
      "type": "object",
      "properties": {
        "cert": {
          "type": "string",
          "format": "byte"
        },
        "displayName": {
          "type": "string"
        }
      }
    }
  }
}