{
  "openapi": "3.0.1",
  "info": {
    "title": "App Store & Google Play Scraper (App Data, Search, Top Charts)",
    "description": "Scrape app details, keyword search rankings and top charts from Google Play and the Apple App Store into one unified dataset: ratings, installs, price, version, developer, category.",
    "version": "0.1",
    "x-build-id": "RCvsABwEax9Z44a8m"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/scraper-forge~app-store-play-store-data/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-scraper-forge-app-store-play-store-data",
        "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/scraper-forge~app-store-play-store-data/runs": {
      "post": {
        "operationId": "runs-sync-scraper-forge-app-store-play-store-data",
        "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/scraper-forge~app-store-play-store-data/run-sync": {
      "post": {
        "operationId": "run-sync-scraper-forge-app-store-play-store-data",
        "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": {
          "playStoreApps": {
            "title": "Google Play apps",
            "type": "array",
            "description": "Full details for these apps. Play Store URLs or package names (com.spotify.music).",
            "items": {
              "type": "string"
            }
          },
          "appStoreApps": {
            "title": "App Store apps",
            "type": "array",
            "description": "App Store URLs, numeric IDs (324684580) or bundle IDs (com.spotify.client).",
            "items": {
              "type": "string"
            }
          },
          "searchTerms": {
            "title": "Search terms",
            "type": "array",
            "description": "Find apps by keyword, with their rank in the store's search results. Great for ASO and competitor research.",
            "items": {
              "type": "string"
            }
          },
          "searchPlatforms": {
            "title": "Search on",
            "enum": [
              "both",
              "googlePlay",
              "appStore"
            ],
            "type": "string",
            "description": "Which store(s) to search.",
            "default": "both"
          },
          "topCharts": {
            "title": "Scrape top charts",
            "type": "boolean",
            "description": "Get the ranked top-chart list.",
            "default": false
          },
          "chartPlatforms": {
            "title": "Charts from",
            "enum": [
              "both",
              "googlePlay",
              "appStore"
            ],
            "type": "string",
            "description": "Which store(s) to pull charts from.",
            "default": "both"
          },
          "playCollection": {
            "title": "Google Play chart",
            "enum": [
              "TOP_FREE",
              "TOP_PAID",
              "GROSSING"
            ],
            "type": "string",
            "description": "Top free, top paid or top grossing.",
            "default": "TOP_FREE"
          },
          "playCategory": {
            "title": "Google Play category",
            "enum": [
              "APPLICATION",
              "ANDROID_WEAR",
              "ART_AND_DESIGN",
              "AUTO_AND_VEHICLES",
              "BEAUTY",
              "BOOKS_AND_REFERENCE",
              "BUSINESS",
              "COMICS",
              "COMMUNICATION",
              "DATING",
              "EDUCATION",
              "ENTERTAINMENT",
              "EVENTS",
              "FINANCE",
              "FOOD_AND_DRINK",
              "HEALTH_AND_FITNESS",
              "HOUSE_AND_HOME",
              "LIBRARIES_AND_DEMO",
              "LIFESTYLE",
              "MAPS_AND_NAVIGATION",
              "MEDICAL",
              "MUSIC_AND_AUDIO",
              "NEWS_AND_MAGAZINES",
              "PARENTING",
              "PERSONALIZATION",
              "PHOTOGRAPHY",
              "PRODUCTIVITY",
              "SHOPPING",
              "SOCIAL",
              "SPORTS",
              "TOOLS",
              "TRAVEL_AND_LOCAL",
              "VIDEO_PLAYERS",
              "WATCH_FACE",
              "WEATHER",
              "GAME",
              "GAME_ACTION",
              "GAME_ADVENTURE",
              "GAME_ARCADE",
              "GAME_BOARD",
              "GAME_CARD",
              "GAME_CASINO",
              "GAME_CASUAL",
              "GAME_EDUCATIONAL",
              "GAME_MUSIC",
              "GAME_PUZZLE",
              "GAME_RACING",
              "GAME_ROLE_PLAYING",
              "GAME_SIMULATION",
              "GAME_SPORTS",
              "GAME_STRATEGY",
              "GAME_TRIVIA",
              "GAME_WORD",
              "FAMILY"
            ],
            "type": "string",
            "description": "Category for the Google Play chart (Application = all apps, Game = all games).",
            "default": "APPLICATION"
          },
          "appStoreCollection": {
            "title": "App Store chart",
            "enum": [
              "TOP_MAC",
              "TOP_FREE_MAC",
              "TOP_GROSSING_MAC",
              "TOP_PAID_MAC",
              "NEW_IOS",
              "NEW_FREE_IOS",
              "NEW_PAID_IOS",
              "TOP_FREE_IOS",
              "TOP_FREE_IPAD",
              "TOP_GROSSING_IOS",
              "TOP_GROSSING_IPAD",
              "TOP_PAID_IOS",
              "TOP_PAID_IPAD"
            ],
            "type": "string",
            "description": "Which App Store chart.",
            "default": "TOP_FREE_IOS"
          },
          "appStoreCategory": {
            "title": "App Store category",
            "enum": [
              "",
              "6018",
              "6000",
              "6022",
              "6017",
              "6016",
              "6015",
              "6023",
              "6014",
              "7001",
              "7002",
              "7003",
              "7004",
              "7005",
              "7006",
              "7007",
              "7008",
              "7009",
              "7011",
              "7012",
              "7013",
              "7014",
              "7015",
              "7016",
              "7017",
              "7018",
              "7019",
              "6013",
              "6012",
              "6021",
              "13007",
              "13006",
              "13009",
              "13010",
              "13011",
              "13013",
              "13014",
              "13015",
              "13023",
              "13002",
              "13012",
              "13017",
              "13018",
              "13003",
              "13019",
              "13020",
              "13021",
              "13004",
              "13024",
              "13001",
              "13025",
              "13026",
              "13027",
              "13005",
              "13028",
              "13029",
              "13008",
              "13030",
              "6020",
              "6011",
              "6010",
              "6009",
              "6008",
              "6007",
              "6006",
              "6024",
              "6005",
              "6004",
              "6003",
              "6002",
              "6001"
            ],
            "type": "string",
            "description": "Optional category for the App Store chart.",
            "default": ""
          },
          "maxResults": {
            "title": "Max results per search/chart",
            "minimum": 1,
            "maximum": 250,
            "type": "integer",
            "description": "Google Play returns up to 250 search results, the App Store up to 200.",
            "default": 50
          },
          "fullDetails": {
            "title": "Full details for search/chart results",
            "type": "boolean",
            "description": "Fetch every field (installs, version, description, screenshots�) for each search/chart result. Slower; specific apps always get full details.",
            "default": false
          },
          "country": {
            "title": "Country",
            "type": "string",
            "description": "Two-letter store country (us, fr, gb, de, jp�). Rankings and prices differ per country.",
            "default": "us"
          },
          "language": {
            "title": "Language (Google Play)",
            "type": "string",
            "description": "Two-letter language for Google Play texts.",
            "default": "en"
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}