{
  "name": "CreateRepositoryAutolink",
  "fully_qualified_name": "GithubApi.CreateRepositoryAutolink@0.1.0",
  "description": "Create an autolink reference in a GitHub repository.\n\nUse this tool to create an autolink reference in a GitHub repository, provided you have admin access. It's helpful for linking external resources or references directly from issues and pull requests.",
  "toolkit": {
    "name": "ArcadeGithubApi",
    "description": null,
    "version": "0.1.0"
  },
  "input": {
    "parameters": [
      {
        "name": "repository_owner_account",
        "required": true,
        "description": "The account owner of the repository. The name is not case sensitive.",
        "value_schema": {
          "val_type": "string",
          "inner_val_type": null,
          "enum": null,
          "properties": null,
          "inner_properties": null,
          "description": "The account owner of the repository. The name is not case sensitive."
        },
        "inferrable": true,
        "http_endpoint_parameter_name": "owner"
      },
      {
        "name": "repository_name",
        "required": true,
        "description": "The name of the repository. This is not case sensitive.",
        "value_schema": {
          "val_type": "string",
          "inner_val_type": null,
          "enum": null,
          "properties": null,
          "inner_properties": null,
          "description": "The name of the repository. The name is not case sensitive."
        },
        "inferrable": true,
        "http_endpoint_parameter_name": "repo"
      },
      {
        "name": "autolink_key_prefix",
        "required": true,
        "description": "The prefix that triggers link creation when found in issues, pull requests, or commits.",
        "value_schema": {
          "val_type": "string",
          "inner_val_type": null,
          "enum": null,
          "properties": null,
          "inner_properties": null,
          "description": "This prefix appended by certain characters will generate a link any time it is found in an issue, pull request, or commit."
        },
        "inferrable": true,
        "http_endpoint_parameter_name": "key_prefix"
      },
      {
        "name": "url_template_for_autolink",
        "required": true,
        "description": "URL containing `<num>` for reference. It should match the characters based on `is_alphanumeric` value.",
        "value_schema": {
          "val_type": "string",
          "inner_val_type": null,
          "enum": null,
          "properties": null,
          "inner_properties": null,
          "description": "The URL must contain `<num>` for the reference number. `<num>` matches different characters depending on the value of `is_alphanumeric`."
        },
        "inferrable": true,
        "http_endpoint_parameter_name": "url_template"
      },
      {
        "name": "match_alphanumeric_characters",
        "required": false,
        "description": "Determines if the autolink reference matches alphanumeric characters. True includes A-Z, 0-9, '-', false matches only numeric characters.",
        "value_schema": {
          "val_type": "boolean",
          "inner_val_type": null,
          "enum": null,
          "properties": null,
          "inner_properties": null,
          "description": "Whether this autolink reference matches alphanumeric characters. If true, the `<num>` parameter of the `url_template` matches alphanumeric characters `A-Z` (case insensitive), `0-9`, and `-`. If false, this autolink reference only matches numeric characters."
        },
        "inferrable": true,
        "http_endpoint_parameter_name": "is_alphanumeric"
      }
    ]
  },
  "output": {
    "description": "Response from the API endpoint 'repos/create-autolink'.",
    "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": {
      "provider_id": "arcade-github",
      "provider_type": "oauth2",
      "id": null,
      "oauth2": null
    },
    "secrets": [
      {
        "key": "GIT_SERVER_URL"
      }
    ],
    "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 GitHub API."
  },
  "http_endpoint": {
    "metadata": {
      "object_type": "http_endpoint",
      "version": "1.2.0",
      "description": ""
    },
    "url": "{git_server_url}/api/v3/repos/{owner}/{repo}/autolinks",
    "http_method": "POST",
    "headers": {},
    "parameters": [
      {
        "name": "owner",
        "tool_parameter_name": "repository_owner_account",
        "description": "The account owner of the repository. The name is not case sensitive.",
        "value_schema": {
          "val_type": "string",
          "inner_val_type": null,
          "enum": null,
          "properties": null,
          "inner_properties": null,
          "description": "The account owner of the repository. The name is not case sensitive."
        },
        "accepted_as": "path",
        "required": true,
        "deprecated": false,
        "default": null,
        "documentation_urls": []
      },
      {
        "name": "repo",
        "tool_parameter_name": "repository_name",
        "description": "The name of the repository. The name is not case sensitive.",
        "value_schema": {
          "val_type": "string",
          "inner_val_type": null,
          "enum": null,
          "properties": null,
          "inner_properties": null,
          "description": "The name of the repository. The name is not case sensitive."
        },
        "accepted_as": "path",
        "required": true,
        "deprecated": false,
        "default": null,
        "documentation_urls": []
      },
      {
        "name": "is_alphanumeric",
        "tool_parameter_name": "match_alphanumeric_characters",
        "description": "Whether this autolink reference matches alphanumeric characters. If true, the `<num>` parameter of the `url_template` matches alphanumeric characters `A-Z` (case insensitive), `0-9`, and `-`. If false, this autolink reference only matches numeric characters.",
        "value_schema": {
          "val_type": "boolean",
          "inner_val_type": null,
          "enum": null,
          "properties": null,
          "inner_properties": null,
          "description": "Whether this autolink reference matches alphanumeric characters. If true, the `<num>` parameter of the `url_template` matches alphanumeric characters `A-Z` (case insensitive), `0-9`, and `-`. If false, this autolink reference only matches numeric characters."
        },
        "accepted_as": "body",
        "required": false,
        "deprecated": false,
        "default": "true",
        "documentation_urls": []
      },
      {
        "name": "key_prefix",
        "tool_parameter_name": "autolink_key_prefix",
        "description": "This prefix appended by certain characters will generate a link any time it is found in an issue, pull request, or commit.",
        "value_schema": {
          "val_type": "string",
          "inner_val_type": null,
          "enum": null,
          "properties": null,
          "inner_properties": null,
          "description": "This prefix appended by certain characters will generate a link any time it is found in an issue, pull request, or commit."
        },
        "accepted_as": "body",
        "required": true,
        "deprecated": false,
        "default": null,
        "documentation_urls": []
      },
      {
        "name": "url_template",
        "tool_parameter_name": "url_template_for_autolink",
        "description": "The URL must contain `<num>` for the reference number. `<num>` matches different characters depending on the value of `is_alphanumeric`.",
        "value_schema": {
          "val_type": "string",
          "inner_val_type": null,
          "enum": null,
          "properties": null,
          "inner_properties": null,
          "description": "The URL must contain `<num>` for the reference number. `<num>` matches different characters depending on the value of `is_alphanumeric`."
        },
        "accepted_as": "body",
        "required": true,
        "deprecated": false,
        "default": null,
        "documentation_urls": []
      }
    ],
    "documentation_urls": [],
    "secrets": [
      {
        "arcade_key": "GIT_SERVER_URL",
        "parameter_name": "git_server_url",
        "accepted_as": "path",
        "formatted_value": null,
        "description": "",
        "is_auth_token": false
      },
      {
        "arcade_key": "auth_token",
        "parameter_name": "Authorization",
        "accepted_as": "header",
        "formatted_value": "Bearer {authorization}",
        "description": "The OAuth token to use for authentication.",
        "is_auth_token": true
      }
    ],
    "request_body_spec": "{\n  \"content\": {\n    \"application/json\": {\n      \"examples\": {\n        \"default\": {\n          \"value\": {\n            \"is_alphanumeric\": true,\n            \"key_prefix\": \"TICKET-\",\n            \"url_template\": \"https://example.com/TICKET?query=<num>\"\n          }\n        }\n      },\n      \"schema\": {\n        \"properties\": {\n          \"is_alphanumeric\": {\n            \"default\": \"true\",\n            \"description\": \"Whether this autolink reference matches alphanumeric characters. If true, the `<num>` parameter of the `url_template` matches alphanumeric characters `A-Z` (case insensitive), `0-9`, and `-`. If false, this autolink reference only matches numeric characters.\",\n            \"type\": \"boolean\"\n          },\n          \"key_prefix\": {\n            \"description\": \"This prefix appended by certain characters will generate a link any time it is found in an issue, pull request, or commit.\",\n            \"type\": \"string\"\n          },\n          \"url_template\": {\n            \"description\": \"The URL must contain `<num>` for the reference number. `<num>` matches different characters depending on the value of `is_alphanumeric`.\",\n            \"type\": \"string\"\n          }\n        },\n        \"required\": [\n          \"key_prefix\",\n          \"url_template\"\n        ],\n        \"type\": \"object\"\n      }\n    }\n  },\n  \"required\": true\n}",
    "use_request_body_schema_mode": false,
    "validate_request_body_schema": false
  }
}
