{
  "name": "UploadCertificate",
  "fully_qualified_name": "VercelApi.UploadCertificate@0.1.0",
  "description": "Uploads a certificate to Vercel.\n\nUse this tool to upload a new certificate to the Vercel platform. This is needed when adding or updating SSL certificates for your domains.",
  "toolkit": {
    "name": "ArcadeVercelApi",
    "description": null,
    "version": "0.1.0"
  },
  "input": {
    "parameters": [
      {
        "name": "team_identifier",
        "required": false,
        "description": "The unique identifier for the team to perform the request on behalf of.",
        "value_schema": {
          "val_type": "string",
          "inner_val_type": null,
          "enum": null,
          "properties": null,
          "inner_properties": null,
          "description": "The Team identifier to perform the request on behalf of."
        },
        "inferrable": true,
        "http_endpoint_parameter_name": "teamId"
      },
      {
        "name": "team_slug",
        "required": false,
        "description": "Specify the team slug to perform the request on behalf of in Vercel.",
        "value_schema": {
          "val_type": "string",
          "inner_val_type": null,
          "enum": null,
          "properties": null,
          "inner_properties": null,
          "description": "The Team slug to perform the request on behalf of."
        },
        "inferrable": true,
        "http_endpoint_parameter_name": "slug"
      },
      {
        "name": "certificate_upload_data",
        "required": false,
        "description": "A JSON object containing 'ca' (certificate authority), 'key' (certificate key), 'cert' (certificate), and 'skipValidation' (to skip validation, true or false).",
        "value_schema": {
          "val_type": "json",
          "inner_val_type": null,
          "enum": null,
          "properties": {
            "ca": {
              "val_type": "string",
              "inner_val_type": null,
              "enum": null,
              "properties": null,
              "inner_properties": null,
              "description": "The certificate authority"
            },
            "key": {
              "val_type": "string",
              "inner_val_type": null,
              "enum": null,
              "properties": null,
              "inner_properties": null,
              "description": "The certificate key"
            },
            "cert": {
              "val_type": "string",
              "inner_val_type": null,
              "enum": null,
              "properties": null,
              "inner_properties": null,
              "description": "The certificate"
            },
            "skipValidation": {
              "val_type": "boolean",
              "inner_val_type": null,
              "enum": null,
              "properties": null,
              "inner_properties": null,
              "description": "Skip validation of the certificate"
            }
          },
          "inner_properties": null,
          "description": ""
        },
        "inferrable": true,
        "http_endpoint_parameter_name": "requestBody"
      }
    ]
  },
  "output": {
    "description": "Response from the API endpoint 'uploadCert'.",
    "available_modes": [
      "value",
      "error",
      "null"
    ],
    "value_schema": {
      "val_type": "json",
      "inner_val_type": null,
      "enum": null,
      "properties": null,
      "inner_properties": null,
      "description": null
    }
  },
  "requirements": {
    "authorization": null,
    "secrets": [
      {
        "key": "VERCEL_ACCESS_TOKEN"
      }
    ],
    "metadata": null
  },
  "deprecation_message": null,
  "metadata": {
    "object_type": "api_wrapper_tool",
    "version": "1.1.0",
    "description": "Tools that enable LLMs to interact directly with the vercel API."
  },
  "http_endpoint": {
    "metadata": {
      "object_type": "http_endpoint",
      "version": "1.2.0",
      "description": ""
    },
    "url": "https://api.vercel.com/v8/certs",
    "http_method": "PUT",
    "headers": {
      "Content-Type": "application/json"
    },
    "parameters": [
      {
        "name": "teamId",
        "tool_parameter_name": "team_identifier",
        "description": "The Team identifier to perform the request on behalf of.",
        "value_schema": {
          "val_type": "string",
          "inner_val_type": null,
          "enum": null,
          "properties": null,
          "inner_properties": null,
          "description": "The Team identifier to perform the request on behalf of."
        },
        "accepted_as": "query",
        "required": false,
        "deprecated": false,
        "default": null,
        "documentation_urls": []
      },
      {
        "name": "slug",
        "tool_parameter_name": "team_slug",
        "description": "The Team slug to perform the request on behalf of.",
        "value_schema": {
          "val_type": "string",
          "inner_val_type": null,
          "enum": null,
          "properties": null,
          "inner_properties": null,
          "description": "The Team slug to perform the request on behalf of."
        },
        "accepted_as": "query",
        "required": false,
        "deprecated": false,
        "default": null,
        "documentation_urls": []
      },
      {
        "name": "requestBody",
        "tool_parameter_name": "certificate_upload_data",
        "description": "",
        "value_schema": {
          "val_type": "json",
          "inner_val_type": null,
          "enum": null,
          "properties": {
            "ca": {
              "val_type": "string",
              "inner_val_type": null,
              "enum": null,
              "properties": null,
              "inner_properties": null,
              "description": "The certificate authority"
            },
            "key": {
              "val_type": "string",
              "inner_val_type": null,
              "enum": null,
              "properties": null,
              "inner_properties": null,
              "description": "The certificate key"
            },
            "cert": {
              "val_type": "string",
              "inner_val_type": null,
              "enum": null,
              "properties": null,
              "inner_properties": null,
              "description": "The certificate"
            },
            "skipValidation": {
              "val_type": "boolean",
              "inner_val_type": null,
              "enum": null,
              "properties": null,
              "inner_properties": null,
              "description": "Skip validation of the certificate"
            }
          },
          "inner_properties": null,
          "description": ""
        },
        "accepted_as": "body",
        "required": false,
        "deprecated": false,
        "default": null,
        "documentation_urls": []
      }
    ],
    "documentation_urls": [],
    "secrets": [
      {
        "arcade_key": "VERCEL_ACCESS_TOKEN",
        "parameter_name": "Authorization",
        "accepted_as": "header",
        "formatted_value": "Bearer {authorization}",
        "description": "",
        "is_auth_token": false
      }
    ],
    "request_body_spec": "{\n  \"content\": {\n    \"application/json\": {\n      \"schema\": {\n        \"type\": \"object\",\n        \"required\": [\n          \"ca\",\n          \"key\",\n          \"cert\"\n        ],\n        \"additionalProperties\": false,\n        \"properties\": {\n          \"ca\": {\n            \"type\": \"string\",\n            \"description\": \"The certificate authority\"\n          },\n          \"key\": {\n            \"type\": \"string\",\n            \"description\": \"The certificate key\"\n          },\n          \"cert\": {\n            \"type\": \"string\",\n            \"description\": \"The certificate\"\n          },\n          \"skipValidation\": {\n            \"type\": \"boolean\",\n            \"description\": \"Skip validation of the certificate\"\n          }\n        }\n      }\n    }\n  }\n}",
    "use_request_body_schema_mode": true,
    "validate_request_body_schema": true
  }
}
