{
  "openapi": "3.0.1",
  "info": {
    "title": "GameStop Inventory Checker: Stock by Store & Restock Alerts",
    "description": "Check GameStop inventory in the stores near any US ZIP code with exact units per store, regular and Pro price, pre-order and online status. Graded cards from marketplace sellers left out. Scheduled runs return restocks, deliveries, sell-outs and the usual restock day of each store.",
    "version": "0.1",
    "x-build-id": "u5TcHSMMwaQdW89gI"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/s_actors~gamestop-inventory-checker/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-s_actors-gamestop-inventory-checker",
        "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/s_actors~gamestop-inventory-checker/runs": {
      "post": {
        "operationId": "runs-sync-s_actors-gamestop-inventory-checker",
        "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/s_actors~gamestop-inventory-checker/run-sync": {
      "post": {
        "operationId": "run-sync-s_actors-gamestop-inventory-checker",
        "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": {
          "mode": {
            "title": "📋 What to do",
            "enum": [
              "search",
              "products",
              "stores"
            ],
            "type": "string",
            "description": "Search: keywords or gamestop.com search/category links, every product with price, Pro price and units in the stores near your ZIP. Check products: exact items by ID or link (best for a restock watchlist). Find stores: GameStop stores near a ZIP code.",
            "default": "search"
          },
          "keywords": {
            "title": "🔎 Keywords",
            "type": "array",
            "description": "Search mode: what to search on gamestop.com, one per line (e.g. \"pokemon elite trainer box\", \"nintendo switch 2\", \"one piece card game\").",
            "items": {
              "type": "string"
            }
          },
          "searchUrls": {
            "title": "🔗 Search or category links",
            "type": "array",
            "description": "Search mode: gamestop.com search or category links, with filters (franchise, platform...) if you set them on the site.",
            "items": {
              "type": "string"
            }
          },
          "products": {
            "title": "🏷️ Products",
            "type": "array",
            "description": "Check products mode: GameStop product IDs (the number at the end of a product link, e.g. 445744) or the links themselves, one per line.",
            "items": {
              "type": "string"
            }
          },
          "zipCode": {
            "title": "📍 ZIP code",
            "type": "string",
            "description": "US ZIP code: units are checked in the GameStop stores nearest to it. Empty = price and online status only."
          },
          "maxStores": {
            "title": "🏬 Number of stores",
            "minimum": 1,
            "maximum": 50,
            "type": "integer",
            "description": "How many of the nearest stores to return (one row per product and store).",
            "default": 5
          },
          "radiusMiles": {
            "title": "📏 Search radius (miles)",
            "minimum": 1,
            "maximum": 100,
            "type": "integer",
            "description": "Only stores within this distance of the ZIP code.",
            "default": 25
          },
          "storeIds": {
            "title": "🔢 Store numbers",
            "type": "array",
            "description": "Only these GameStop store numbers (they must be within the radius; find them with \"Find stores near a ZIP code\").",
            "items": {
              "type": "string"
            }
          },
          "includeGradedCards": {
            "title": "🎴 Include graded cards",
            "type": "boolean",
            "description": "Off: graded single cards (PSA) listed by marketplace sellers are left out of searches, so results are GameStop's own sealed products. On: include them (online only).",
            "default": false
          },
          "includeDigital": {
            "title": "💾 Include digital products",
            "type": "boolean",
            "description": "Include digital codes and DLC (online only, never in stores).",
            "default": false
          },
          "maxProductsPerSearch": {
            "title": "🔢 Max products per search",
            "minimum": 1,
            "maximum": 1200,
            "type": "integer",
            "description": "Search mode: how many products to take from each keyword or link.",
            "default": 60
          },
          "sortBy": {
            "title": "↕️ Sort",
            "enum": [
              "best_match",
              "most_popular",
              "best_selling",
              "price_low",
              "price_high",
              "new"
            ],
            "type": "string",
            "description": "Search mode: order of the products, as on gamestop.com.",
            "default": "best_match"
          },
          "onlyInStock": {
            "title": "✅ Only in stock",
            "type": "boolean",
            "description": "Return only rows where the store has units (or, without a ZIP code, products you can order online).",
            "default": false
          },
          "maxPrice": {
            "title": "💲 Maximum price ($)",
            "minimum": 0,
            "type": "integer",
            "description": "Return only products at or below this price. Empty = any price."
          },
          "onlyChanges": {
            "title": "🔔 Only report changes",
            "type": "boolean",
            "description": "For scheduled runs. The first run saves units and prices; later runs return only what changed: back in stock at a store, a delivery (3+ units added), sold out, back online, price changes, new products. Each row also carries the restock history seen by this monitor and the usual restock weekday. You pay only for the changes returned.",
            "default": false
          },
          "monitorName": {
            "title": "🏷️ Monitor name",
            "type": "string",
            "description": "Separate monitors keep separate memory. Use a different name for each scheduled task.",
            "default": "default"
          },
          "maxConcurrency": {
            "title": "⚡ Parallel requests",
            "minimum": 1,
            "maximum": 10,
            "type": "integer",
            "description": "How many requests run at the same time.",
            "default": 3
          }
        }
      },
      "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
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "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
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}