{
  "openapi": "3.0.1",
  "info": {
    "title": "Decathlon Scraper",
    "description": "[💰 $3 / 1K] Extract Decathlon products from 11 European stores — prices, discounts, brands, sizes, ratings, images, stock and seller. Search by keyword or paste search, category and product URLs.",
    "version": "1.0",
    "x-build-id": "AaqgGRXGKwn31mEOu"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/solidcode~decathlon-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-solidcode-decathlon-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/solidcode~decathlon-scraper/runs": {
      "post": {
        "operationId": "runs-sync-solidcode-decathlon-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/solidcode~decathlon-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-solidcode-decathlon-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": {
          "searchQueries": {
            "title": "Search Keywords",
            "type": "array",
            "description": "Keywords to search on Decathlon, such as 'running shoes' or 'camping tent'. Each keyword runs its own search and every matching product is collected. Use words in the language of the store you picked below. Decathlon itself shows at most about 1,000 products per keyword — add more keywords, or use a category URL below, to go deeper. A product that matches several of your keywords is collected once, listed against the first keyword that found it.",
            "items": {
              "type": "string"
            }
          },
          "startUrls": {
            "title": "Decathlon URLs",
            "type": "array",
            "description": "Paste Decathlon page URLs — a search results page, a whole category (for example a 'Running Shoes' page), or an individual product page. The scraper works out the page type automatically and collects every product it finds. Any supported store works.",
            "items": {
              "type": "string"
            }
          },
          "country": {
            "title": "Decathlon Store",
            "enum": [
              "co.uk",
              "fr",
              "de",
              "es",
              "it",
              "nl",
              "be",
              "pt",
              "pl",
              "ch",
              "cz"
            ],
            "type": "string",
            "description": "Which Decathlon store to read from. This sets the prices, currency, availability and product language you get back. Prices and range differ between stores, so pick the market you actually care about."
          },
          "brands": {
            "title": "Brands",
            "type": "array",
            "description": "Only collect products from these brands — for example 'Quechua', 'Kiprun', 'Domyos', 'Nike' or 'Adidas'. Brand names are written the same way in every store. Leave empty to include all brands.",
            "items": {
              "type": "string"
            }
          },
          "sports": {
            "title": "Sports",
            "type": "array",
            "description": "Only collect products tagged with these sports, for example 'hiking', 'fitness' or 'cycling'. Use the wording your chosen store uses. If a sport isn't recognised, the run tells you which ones are available.",
            "items": {
              "type": "string"
            }
          },
          "gender": {
            "title": "Audience",
            "enum": [
              "any",
              "men",
              "women",
              "boys",
              "girls",
              "kids",
              "unisex"
            ],
            "type": "string",
            "description": "Only collect products made for this audience."
          },
          "colors": {
            "title": "Colours",
            "uniqueItems": true,
            "type": "array",
            "description": "Only collect products available in these colours. Leave empty to include every colour.",
            "items": {
              "type": "string",
              "enum": [
                "black",
                "white",
                "blue",
                "grey",
                "green",
                "pink",
                "yellow",
                "red",
                "orange",
                "multicolour",
                "beige",
                "purple",
                "brown"
              ],
              "enumTitles": [
                "Black",
                "White",
                "Blue",
                "Grey",
                "Green",
                "Pink",
                "Yellow",
                "Red",
                "Orange",
                "Multicolour",
                "Beige",
                "Purple",
                "Brown"
              ]
            }
          },
          "sortBy": {
            "title": "Sort Order",
            "enum": [
              "relevance",
              "price_asc",
              "price_desc",
              "biggest_discount",
              "best_rated"
            ],
            "type": "string",
            "description": "Order in which products are collected. Pair this with a result limit to get exactly what you need — for example sort by biggest discount and take the top 100 to build a deals feed. On keyword searches Decathlon returns the top ~1,000 products for the chosen order. The Netherlands store does not offer 'Biggest Discount' — there it falls back to the recommended order and the run tells you so."
          },
          "includeProductDetails": {
            "title": "Include Full Product Details",
            "type": "boolean",
            "description": "Also collect the full description, technical specifications, materials, care instructions, barcodes and every product image for each product. Gives you much richer rows, but makes the run noticeably slower. Leave off for fast price and stock monitoring. Individual product URLs always come with these details."
          },
          "maxItems": {
            "title": "Maximum Products",
            "minimum": 0,
            "type": "integer",
            "description": "Stop after collecting this many products in total, across all keywords and URLs. Set to 0 to collect everything found. Results are collected a page at a time and the run always finishes the page it is on, so a run can end slightly above your limit — never below. Note that a single Decathlon keyword search returns up to about 1,000 products; category pages go deeper."
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}