{
  "name": "ListIssueComments",
  "fully_qualified_name": "GithubApi.ListIssueComments@0.1.0",
  "description": "Fetch comments for all issues in a repository.\n\nUse this tool to retrieve all comments from issues in a specified GitHub repository. Comments are ordered by ascending ID.",
  "toolkit": {
    "name": "ArcadeGithubApi",
    "description": null,
    "version": "0.1.0"
  },
  "input": {
    "parameters": [
      {
        "name": "repository_owner",
        "required": true,
        "description": "The account owner of the repository, 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. 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."
        },
        "inferrable": true,
        "http_endpoint_parameter_name": "repo"
      },
      {
        "name": "sort_property",
        "required": false,
        "description": "The property to sort the issue comments by. Use 'created' for when the repo was starred or 'updated' for last push.",
        "value_schema": {
          "val_type": "string",
          "inner_val_type": null,
          "enum": [
            "created",
            "updated"
          ],
          "properties": null,
          "inner_properties": null,
          "description": "The property to sort the results by. `created` means when the repository was starred. `updated` means when the repository was last pushed to."
        },
        "inferrable": true,
        "http_endpoint_parameter_name": "sort"
      },
      {
        "name": "sort_direction",
        "required": false,
        "description": "Sets the sorting order, `asc` for ascending or `desc` for descending, used with `sort`.",
        "value_schema": {
          "val_type": "string",
          "inner_val_type": null,
          "enum": [
            "asc",
            "desc"
          ],
          "properties": null,
          "inner_properties": null,
          "description": "Either `asc` or `desc`. Ignored without the `sort` parameter."
        },
        "inferrable": true,
        "http_endpoint_parameter_name": "direction"
      },
      {
        "name": "updated_after_timestamp",
        "required": false,
        "description": "Filter comments updated after this timestamp in ISO 8601 format: `YYYY-MM-DDTHH:MM:SSZ`.",
        "value_schema": {
          "val_type": "string",
          "inner_val_type": null,
          "enum": null,
          "properties": null,
          "inner_properties": null,
          "description": "Only show notifications updated after the given time. This is a timestamp in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format: `YYYY-MM-DDTHH:MM:SSZ`."
        },
        "inferrable": true,
        "http_endpoint_parameter_name": "since"
      },
      {
        "name": "results_per_page",
        "required": false,
        "description": "Specify the number of results to display per page, up to a maximum of 100.",
        "value_schema": {
          "val_type": "integer",
          "inner_val_type": null,
          "enum": null,
          "properties": null,
          "inner_properties": null,
          "description": "The number of results per page (max 100)."
        },
        "inferrable": true,
        "http_endpoint_parameter_name": "per_page"
      },
      {
        "name": "results_page_number",
        "required": false,
        "description": "The page number of results to fetch for issue comments in a repository.",
        "value_schema": {
          "val_type": "integer",
          "inner_val_type": null,
          "enum": null,
          "properties": null,
          "inner_properties": null,
          "description": "Page number of the results to fetch."
        },
        "inferrable": true,
        "http_endpoint_parameter_name": "page"
      }
    ]
  },
  "output": {
    "description": "Response from the API endpoint 'issues/list-comments-for-repo'.",
    "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}/issues/comments",
    "http_method": "GET",
    "headers": {},
    "parameters": [
      {
        "name": "sort",
        "tool_parameter_name": "sort_property",
        "description": "The property to sort the results by. `created` means when the repository was starred. `updated` means when the repository was last pushed to.",
        "value_schema": {
          "val_type": "string",
          "inner_val_type": null,
          "enum": [
            "created",
            "updated"
          ],
          "properties": null,
          "inner_properties": null,
          "description": "The property to sort the results by. `created` means when the repository was starred. `updated` means when the repository was last pushed to."
        },
        "accepted_as": "query",
        "required": false,
        "deprecated": false,
        "default": "created",
        "documentation_urls": []
      },
      {
        "name": "direction",
        "tool_parameter_name": "sort_direction",
        "description": "Either `asc` or `desc`. Ignored without the `sort` parameter.",
        "value_schema": {
          "val_type": "string",
          "inner_val_type": null,
          "enum": [
            "asc",
            "desc"
          ],
          "properties": null,
          "inner_properties": null,
          "description": "Either `asc` or `desc`. Ignored without the `sort` parameter."
        },
        "accepted_as": "query",
        "required": false,
        "deprecated": false,
        "default": null,
        "documentation_urls": []
      },
      {
        "name": "since",
        "tool_parameter_name": "updated_after_timestamp",
        "description": "Only show notifications updated after the given time. This is a timestamp in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format: `YYYY-MM-DDTHH:MM:SSZ`.",
        "value_schema": {
          "val_type": "string",
          "inner_val_type": null,
          "enum": null,
          "properties": null,
          "inner_properties": null,
          "description": "Only show notifications updated after the given time. This is a timestamp in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format: `YYYY-MM-DDTHH:MM:SSZ`."
        },
        "accepted_as": "query",
        "required": false,
        "deprecated": false,
        "default": null,
        "documentation_urls": []
      },
      {
        "name": "per_page",
        "tool_parameter_name": "results_per_page",
        "description": "The number of results per page (max 100).",
        "value_schema": {
          "val_type": "integer",
          "inner_val_type": null,
          "enum": null,
          "properties": null,
          "inner_properties": null,
          "description": "The number of results per page (max 100)."
        },
        "accepted_as": "query",
        "required": false,
        "deprecated": false,
        "default": 30,
        "documentation_urls": []
      },
      {
        "name": "page",
        "tool_parameter_name": "results_page_number",
        "description": "Page number of the results to fetch.",
        "value_schema": {
          "val_type": "integer",
          "inner_val_type": null,
          "enum": null,
          "properties": null,
          "inner_properties": null,
          "description": "Page number of the results to fetch."
        },
        "accepted_as": "query",
        "required": false,
        "deprecated": false,
        "default": 1,
        "documentation_urls": []
      },
      {
        "name": "owner",
        "tool_parameter_name": "repository_owner",
        "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": []
      }
    ],
    "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": null,
    "use_request_body_schema_mode": false,
    "validate_request_body_schema": false
  }
}
