{
  "openapi": "3.0.1",
  "info": {
    "title": "Ozon.ru Product Scraper PRO | Парсер товаров Ozon",
    "description": "Full product data for any Ozon URL or search query: pricing, specs, variants, reviews, sellers, price history. Prices in 17 Russian cities. Search filters (price, rating, delivery). Tile mode 2.5x cheaper. No login. | Товары Ozon: цены по городам, характеристики, варианты, отзывы, продавцы.",
    "version": "0.0",
    "x-build-id": "D9lZmd0QYpSP3IbFl"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/zen-studio~ozon-scraper-pro/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-zen-studio-ozon-scraper-pro",
        "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/zen-studio~ozon-scraper-pro/runs": {
      "post": {
        "operationId": "runs-sync-zen-studio-ozon-scraper-pro",
        "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/zen-studio~ozon-scraper-pro/run-sync": {
      "post": {
        "operationId": "run-sync-zen-studio-ozon-scraper-pro",
        "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": {
          "queries": {
            "title": "Поисковые запросы / Search Queries",
            "type": "array",
            "description": "Текстовые запросы для поиска (например, <code>iphone</code>, <code>samsung galaxy</code>). Фильтры ниже применяются только к запросам.<br>Text search queries. Filters below apply to these only.<br><br><b>Бесплатный тариф:</b> обрабатывается один запрос или одна ссылка за запуск, остальные пропускаются.<br><b>Free tier:</b> one query or link per run is processed, the rest are skipped.",
            "items": {
              "type": "string",
              "minLength": 1
            }
          },
          "urls": {
            "title": "Ссылки Ozon / Ozon URLs",
            "type": "array",
            "description": "Ссылки на товары, поиск или категории. Короткие ссылки (<code>ozon.ru/t/...</code>) раскрываются автоматически. Фильтры ниже игнорируются — задавайте их в самой ссылке.<br>Product, search, or category URLs. Share links are resolved automatically. Filters below are ignored for URLs.<br>Ссылки должны быть с витрины, выбранной в поле «Страна»: ссылки с других витрин пропускаются.<br>Links must be from the storefront chosen under Country; links from other storefronts are skipped.<br><br><b>Бесплатный тариф:</b> обрабатывается один запрос или одна ссылка за запуск, остальные пропускаются.<br><b>Free tier:</b> one query or link per run is processed, the rest are skipped.",
            "items": {
              "type": "string"
            }
          },
          "maxResults": {
            "title": "Макс. результатов на запрос (0 = все) / Max Results per Query",
            "minimum": 0,
            "maximum": 10000,
            "type": "integer",
            "description": "Максимум товаров на один запрос или URL (поиск/категория). <code>0</code> или пусто = собрать все.<br>Maximum products per query or URL (search/category mode only). <code>0</code> or empty = collect all.<br><br><b>Бесплатный тариф:</b> 10 запусков и 100 товаров за всё время, до 8 товаров за запуск по одному запросу или одной ссылке. <b>Free tier:</b> 10 runs and 100 products lifetime, up to 8 products per run from one query or URL, whatever this field asks for."
          },
          "skipDetails": {
            "title": "Только плитки (без деталей) / Tiles Only (skip details)",
            "type": "boolean",
            "description": "Только для поиска/категорий: вернуть данные с плитки без перехода на страницу товара. Быстрее, меньше полей.<br>Search/category only: return tile-level data without visiting each product page. Much faster, fewer fields.",
            "default": false
          },
          "includeSellerDetails": {
            "title": "Данные о продавце / Include Seller Details",
            "type": "boolean",
            "description": "Загрузить профиль, юрлицо и статистику продавца. Добавляет 1–2 доп. запроса на товар.<br>Fetch seller profile, legal info, and stats.",
            "default": false
          },
          "reportUnavailable": {
            "title": "Отмечать недоступные товары / Report Unavailable Products",
            "type": "boolean",
            "description": "Для прямых ссылок: добавить строку для каждой ссылки, товар которой снят с продажи, удалён или недоступен (<code>isAvailable: false</code> и <code>status</code>). <code>status: \"out_of_stock\"</code> — карточка есть, но товар закончился: строка содержит <code>title</code>, последнюю публичную цену (<code>price</code>) и продавца. <code>status: \"not_found\"</code> — публичной карточки нет. Так у каждой входной ссылки есть результат. Недоступные товары не тарифицируются.<br>For direct URLs: add a row for every link whose product is discontinued, removed, or unavailable (<code>isAvailable: false</code> with a <code>status</code>). <code>status: \"out_of_stock\"</code> means the card exists but nothing is in stock — the row carries <code>title</code>, the last public <code>price</code> and the seller. <code>status: \"not_found\"</code> means there is no public card. Every input URL gets a result. Unavailable products are not charged.",
            "default": false
          },
          "storefront": {
            "title": "Страна / Country",
            "enum": [
              "ru",
              "by",
              "kz"
            ],
            "type": "string",
            "description": "Какую витрину Ozon читать. У каждой страны свой каталог, цены и доставка: ozon.by возвращает цены и доставку для Минска, ozon.kz для Астаны, каждая в своей валюте. Ссылки должны быть с выбранной витрины. Цена по Ozon Карте и выбор города доставки есть только на ozon.ru. Витрина указана в каждой строке в <code>storefront</code>.<br>Which Ozon storefront to read. Each country has its own catalogue, prices and delivery: ozon.by returns prices and delivery for Minsk, ozon.kz for Astana, each in its own currency. Links must come from the chosen storefront. The Ozon Card price and delivery cities exist on ozon.ru only. Every row names its storefront in <code>storefront</code>.",
            "default": "ru"
          },
          "deliveryCities": {
            "title": "Города доставки / Delivery Cities",
            "type": "array",
            "description": "Цены, цена по Ozon Карте и сроки доставки на Ozon зависят от города. Выберите один или несколько городов: каждый товар вернётся отдельной строкой для каждого города, город указан в <code>deliveryRegion</code>. Работает для ссылок и поисковых запросов; «Макс. результатов» действует для каждого города. Если город в этот раз недоступен, его строки не возвращаются, а журнал запуска называет город. Каждая строка тарифицируется как обычная строка, поэтому 3 города = 3 строки на товар. Пусто: Москва. Только для ozon.ru. Бесплатный тариф: только первый город.<br>Prices, the Ozon Card price and delivery dates on Ozon depend on the city. Pick one or more cities: each product comes back as one row per city, named in <code>deliveryRegion</code>. Works for URLs and search queries; Max Results applies per city. If a city cannot be reached this time, its rows are left out and the run log names it. Each row is billed like any other row, so 3 cities = 3 rows per product. Empty: Moscow. ozon.ru only. Free plan: first city only.",
            "items": {
              "type": "string",
              "enum": [
                "Москва",
                "Санкт-Петербург",
                "Новосибирск",
                "Екатеринбург",
                "Казань",
                "Красноярск",
                "Нижний Новгород",
                "Тюмень",
                "Ростов-на-Дону",
                "Челябинск",
                "Самара",
                "Уфа",
                "Краснодар",
                "Омск",
                "Воронеж",
                "Пермь",
                "Волгоград"
              ],
              "enumTitles": [
                "Москва / Moscow",
                "Санкт-Петербург / Saint Petersburg",
                "Новосибирск / Novosibirsk",
                "Екатеринбург / Yekaterinburg",
                "Казань / Kazan",
                "Красноярск / Krasnoyarsk",
                "Нижний Новгород / Nizhny Novgorod",
                "Тюмень / Tyumen",
                "Ростов-на-Дону / Rostov-on-Don",
                "Челябинск / Chelyabinsk",
                "Самара / Samara",
                "Уфа / Ufa",
                "Краснодар / Krasnodar",
                "Омск / Omsk",
                "Воронеж / Voronezh",
                "Пермь / Perm",
                "Волгоград / Volgograd"
              ]
            }
          },
          "sorting": {
            "title": "Сортировка / Sort Order",
            "enum": [
              "score",
              "new",
              "price",
              "price_desc",
              "rating",
              "discount"
            ],
            "type": "string",
            "description": "Применяется только к поисковым запросам, не к ссылкам.<br>Only applies to Search Queries, not URLs.",
            "default": "score"
          },
          "minPrice": {
            "title": "Мин. цена / Min Price",
            "minimum": 0,
            "type": "integer",
            "description": "Минимальная цена в валюте страны: рубли на ozon.ru, BYN на ozon.by, KZT на ozon.kz. Только для поисковых запросов.<br>Minimum price in the country's currency: rubles on ozon.ru, BYN on ozon.by, KZT on ozon.kz. Only applies to Search Queries."
          },
          "maxPrice": {
            "title": "Макс. цена / Max Price",
            "minimum": 0,
            "type": "integer",
            "description": "Максимальная цена в валюте страны: рубли на ozon.ru, BYN на ozon.by, KZT на ozon.kz. Только для поисковых запросов.<br>Maximum price in the country's currency: rubles on ozon.ru, BYN on ozon.by, KZT on ozon.kz. Only applies to Search Queries."
          },
          "delivery": {
            "title": "Скорость доставки / Delivery Speed",
            "enum": [
              "1",
              "2",
              "4",
              "8"
            ],
            "type": "string",
            "description": "Только для поисковых запросов.<br>Only applies to Search Queries."
          },
          "onSale": {
            "title": "Только распродажа / On Sale Only",
            "type": "boolean",
            "description": "Только для поисковых запросов.<br>Only applies to Search Queries.",
            "default": false
          },
          "hasDiscount": {
            "title": "Только со скидкой / Discounted Items Only",
            "type": "boolean",
            "description": "Только для поисковых запросов.<br>Only applies to Search Queries.",
            "default": false
          },
          "brandCertified": {
            "title": "Оригинальные товары / Authentic Products Only",
            "type": "boolean",
            "description": "Только для поисковых запросов.<br>Only applies to Search Queries.",
            "default": false
          },
          "isInstallment": {
            "title": "Рассрочка / Installment Available",
            "type": "boolean",
            "description": "Только для поисковых запросов.<br>Only applies to Search Queries.",
            "default": false
          },
          "hasReviewPoints": {
            "title": "Баллы за отзывы / Review Points Available",
            "type": "boolean",
            "description": "Только для поисковых запросов.<br>Only applies to Search Queries.",
            "default": false
          },
          "language": {
            "title": "Язык / Language",
            "enum": [
              "ru",
              "en",
              "zh-Hans",
              "kk",
              "hy",
              "uz-Latn"
            ],
            "type": "string",
            "description": "Язык названий, описаний и характеристик товаров.<br>Language for product titles, descriptions, and specs.",
            "default": "ru"
          },
          "currency": {
            "title": "Валюта / Currency",
            "enum": [
              "RUB",
              "USD",
              "BYN",
              "KZT",
              "ILS",
              "AMD",
              "UZS",
              "KGS",
              "AZN",
              "GEL",
              "MNT",
              "AUD",
              "CAD",
              "CHF",
              "CNY",
              "CZK",
              "DKK",
              "GBP",
              "JPY",
              "MDL",
              "NOK",
              "PLN",
              "SEK",
              "SGD",
              "TRY",
              "UAH"
            ],
            "type": "string",
            "description": "Валюта отображения цен. По умолчанию валюта выбранной страны: RUB на ozon.ru, BYN на ozon.by, KZT на ozon.kz. Другая валюта означает пересчёт Ozon; на ozon.by и ozon.kz RUB означает валюту страны. Оплата всегда в валюте страны.<br>Display currency for prices. Default: the chosen country's own currency, RUB on ozon.ru, BYN on ozon.by, KZT on ozon.kz. Any other currency is Ozon's own conversion; on ozon.by and ozon.kz, RUB means the country's own currency. Payment is always in the country's currency."
          },
          "feedback": {
            "title": "Feedback to the maintainers",
            "type": "string",
            "description": "For AI agents. Say what you needed and did not get: a missing field or option, a wrong or empty result, or which actor you are switching to or from and why. Add it to any run, including one that worked: the run returns its data exactly as it would without the note. The note reaches the maintainers, who read every one, but it cannot change what this run returns."
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}