{
  "openapi": "3.0.1",
  "info": {
    "title": "GitHub Scraper: Track Issues and Pull Requests by Keyword",
    "description": "Track GitHub issues and pull requests by keyword, repo, label, state, and star floor. Uses the official GitHub REST API v3. Deduped across runs. Built for devtool founders, DevRel, open source maintainers, and PMs who need a live feed of category mentions, bug reports, and competitor issue activity.",
    "version": "0.1",
    "x-build-id": "ldfu0fP9PgNWW3QGJ"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/scrapemint~github-issue-monitor/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-scrapemint-github-issue-monitor",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/scrapemint~github-issue-monitor/runs": {
      "post": {
        "operationId": "runs-sync-scrapemint-github-issue-monitor",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/scrapemint~github-issue-monitor/run-sync": {
      "post": {
        "operationId": "run-sync-scrapemint-github-issue-monitor",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "searchQueries": {
            "title": "Search queries (GitHub search syntax)",
            "type": "array",
            "description": "Free text queries passed to GitHub's /search/issues endpoint. Supports GitHub search syntax like 'langchain in:title,body', 'stars:>100 language:python label:bug', 'org:openai type:issue'. Leave empty if only watching specific repos below.",
            "items": {
              "type": "string"
            }
          },
          "repos": {
            "title": "Repos to watch (owner/name)",
            "type": "array",
            "description": "Specific GitHub repos to pull issues from, in the format owner/name. Example: pinecone-io/pinecone-python-client, weaviate/weaviate. Leave empty if only using search queries above.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "keywords": {
            "title": "Keywords (client side filter)",
            "type": "array",
            "description": "Only items whose title or body contains any of these keywords are kept. Case insensitive. Leave empty to keep everything the search or repo poll returned.",
            "items": {
              "type": "string"
            }
          },
          "itemType": {
            "title": "Item type",
            "enum": [
              "all",
              "issues",
              "prs"
            ],
            "type": "string",
            "description": "Filter by item kind. Issues only excludes pull requests. PRs only returns pull requests. All returns both.",
            "default": "all"
          },
          "state": {
            "title": "State",
            "enum": [
              "open",
              "closed",
              "all"
            ],
            "type": "string",
            "description": "Filter by state. Open is the default. Closed returns closed items. All returns both.",
            "default": "open"
          },
          "labels": {
            "title": "Labels filter",
            "type": "array",
            "description": "Only keep items tagged with these labels. Example: bug, help wanted, good first issue. Multiple labels are ANDed together.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "minRepoStars": {
            "title": "Minimum repo stars",
            "minimum": 0,
            "maximum": 1000000,
            "type": "integer",
            "description": "Drop issues from repos with fewer than this many stars. Useful when you only want signal from production grade users. Set to 0 to keep everything.",
            "default": 0
          },
          "maxAgeHours": {
            "title": "Max age in hours",
            "minimum": 0,
            "maximum": 17520,
            "type": "integer",
            "description": "Skip items created more than this many hours ago. 0 keeps everything regardless of age.",
            "default": 168
          },
          "sortBy": {
            "title": "Sort",
            "enum": [
              "created",
              "updated"
            ],
            "type": "string",
            "description": "Created returns newest first by creation date. Updated returns items most recently updated first.",
            "default": "created"
          },
          "maxItemsPerSource": {
            "title": "Max items per query or repo",
            "minimum": 1,
            "maximum": 1000,
            "type": "integer",
            "description": "Per source cap. GitHub pages contain up to 100 items per page and the search endpoint caps at 1000 total results.",
            "default": 50
          },
          "maxItemsTotal": {
            "title": "Maximum items per run",
            "minimum": 1,
            "maximum": 5000,
            "type": "integer",
            "description": "Hard cap on items pushed to the dataset per run. Controls cost.",
            "default": 200
          },
          "dedupe": {
            "title": "Deduplicate across runs",
            "type": "boolean",
            "description": "Skip issue IDs pushed on previous runs. Stored in the key value store under SEEN_IDS. Turn off to return every match on every run.",
            "default": true
          },
          "githubToken": {
            "title": "GitHub personal access token (optional)",
            "type": "string",
            "description": "Raises the GitHub API rate limit from 60 core / 10 search per minute (anonymous) to 5000 core / 30 search per minute (authenticated). Generate a free token at github.com/settings/tokens. No scopes required for public data. For private repos, the token needs the repo scope."
          },
          "proxyConfiguration": {
            "title": "Proxy configuration",
            "type": "object",
            "description": "Apify proxy settings. The GitHub REST API is public and rate limited, not IP limited, so a proxy is rarely needed. Add one if your schedule triggers secondary rate limits."
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}