{
  "openapi": "3.0.1",
  "info": {
    "title": "CoinGecko Scraper",
    "description": "Extract CoinGecko market data for any coin with no API key: price in any currency, market cap and rank, 24h volume, circulating and max supply, all-time high and low, and multi-window change. Export data, run via API, schedule and monitor runs, or integrate with other tools.",
    "version": "0.0",
    "x-build-id": "8l1tTHUMr5adPqUD9"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/publicmoney~coingecko-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-publicmoney-coingecko-scraper",
        "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/publicmoney~coingecko-scraper/runs": {
      "post": {
        "operationId": "runs-sync-publicmoney-coingecko-scraper",
        "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/publicmoney~coingecko-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-publicmoney-coingecko-scraper",
        "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": {
          "coinIds": {
            "title": "🪙 Coin IDs or CoinGecko URLs",
            "maxItems": 250,
            "type": "array",
            "description": "CoinGecko coin ids to read, one per line. These are CoinGecko's own slugs and not tickers, so Bitcoin is 'bitcoin' and Polygon is 'matic-network'; the id is the last part of the coin's CoinGecko URL. Leave the field empty to sweep the top of the market in the order you chose instead of naming coins. Examples: 'bitcoin', 'ethereum', 'solana'.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "vsCurrency": {
            "title": "💱 Quote currency",
            "type": "string",
            "description": "The currency every price, market cap and volume is quoted in. Any code CoinGecko supports works, crypto as well as fiat, so you can price a portfolio in euros or denominate it in BTC. Examples: 'usd', 'eur', 'jpy', 'btc'. Default is 'usd'.",
            "default": "usd"
          },
          "category": {
            "title": "🏷️ Category",
            "type": "string",
            "description": "Restrict the ranking to one CoinGecko category ID. Examples: 'layer-1', 'decentralized-finance-defi', 'meme-token'. Ignored when Coin IDs are given."
          },
          "order": {
            "title": "↕️ Order",
            "enum": [
              "market_cap_desc",
              "market_cap_asc",
              "volume_desc",
              "volume_asc",
              "id_asc",
              "id_desc"
            ],
            "type": "string",
            "description": "How a market sweep is ordered when the coin list is left empty. Ignored when you name coins, because named coins come back in the order you listed them. Examples: 'market_cap_desc', 'volume_desc', 'id_asc'. Default is 'market_cap_desc'.",
            "default": "market_cap_desc"
          },
          "includeCoinProfile": {
            "title": "📇 Include coin profile",
            "type": "boolean",
            "description": "Adds the project profile to each record: links, categories and the description CoinGecko carries. It costs an extra request per coin, so leave it off for a price-only run. Examples: true for research, false for prices. Default is off.",
            "default": false
          },
          "maxItems": {
            "title": "🔢 Max items",
            "minimum": 0,
            "maximum": 5000,
            "type": "integer",
            "description": "Maximum number of coins to read, counted from the top of the list. Use it to cap spend on a long list without editing the list itself. Examples: 10, 50, 200.",
            "default": 100
          },
          "apiKey": {
            "title": "🔑 CoinGecko Pro API key",
            "type": "string",
            "description": "CoinGecko Pro API key. The public API works with no key but is rate limited hard enough that a large sweep can trip it; supplying a key raises the limit and switches the run to the Pro endpoint. Stored as a secret and never written to the dataset."
          },
          "includeHistory": {
            "title": "📈 Include price history",
            "type": "boolean",
            "description": "Adds a price series for the trailing window set by History days. It costs an extra request per coin, so leave it off unless you need the series. Examples: true for a chart, false for a snapshot. Default is off.",
            "default": false
          },
          "historyDays": {
            "title": "📅 History window (days)",
            "minimum": 1,
            "maximum": 365,
            "type": "integer",
            "description": "How many days of price history to include when history is on. Longer windows return more points and take longer to fetch. Examples: 7, 30, 365. Default is 30.",
            "default": 30
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}