{
  "openapi": "3.0.1",
  "info": {
    "title": "Allegro Photos, Descriptions & Specs by EAN",
    "description": "Bulk Allegro.pl product-content scraper by EAN/GTIN: product photos (full resolution, optional file download), description (HTML/plain text) and parameters. Up to 1000 EANs per run. 🇵🇱 Zdjęcia, opisy i parametry produktów z Allegro po kodzie EAN. By Klevio.",
    "version": "1.0",
    "x-build-id": "ArG9wxG6QLqg23y7u"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/klevio~allegro-description-photo-parameters/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-klevio-allegro-description-photo-parameters",
        "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/klevio~allegro-description-photo-parameters/runs": {
      "post": {
        "operationId": "runs-sync-klevio-allegro-description-photo-parameters",
        "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/klevio~allegro-description-photo-parameters/run-sync": {
      "post": {
        "operationId": "run-sync-klevio-allegro-description-photo-parameters",
        "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",
        "required": [
          "eans"
        ],
        "properties": {
          "eans": {
            "title": "Lista EAN-ów / GTIN",
            "type": "array",
            "description": "Kody EAN/GTIN produktów. Max 1000 na run, jeden kod per linia. Dla każdego kodu aktor znajduje produkt na allegro.pl i zwraca jego zdjęcia, opis oraz parametry.",
            "items": {
              "type": "string"
            }
          },
          "productSelection": {
            "title": "Wybór produktu (gdy EAN pasuje do kilku)",
            "enum": [
              "relevance",
              "popularity"
            ],
            "type": "string",
            "description": "Jak rozstrzygać, gdy jeden kod EAN pasuje do kilku kart produktu. 'Trafność' = pierwszy wynik wyszukiwarki Allegro (domyślnie). 'Popularność' = karta z najsilniejszym sygnałem popularności (oceny/opinie), a gdy Allegro go nie udostępnia — automatyczny powrót do trafności.",
            "default": "relevance"
          },
          "maxImages": {
            "title": "Ile zdjęć pobrać",
            "minimum": 1,
            "maximum": 50,
            "type": "integer",
            "description": "Maksymalna liczba zdjęć produktu (pierwsze = główne). PIERWSZE 3 ZDJĘCIA SĄ W CENIE BAZOWEJ; każde kolejne (4., 5., …) jest dodatkowo płatne (dla planów płatnych Apify — gratis). Ustaw 1, aby pobrać tylko zdjęcie główne.",
            "default": 3
          },
          "fetchDescription": {
            "title": "Pobieraj opis produktu",
            "type": "boolean",
            "description": "Jeśli WŁĄCZONE — aktor zwraca opis produktu (w cenie bazowej). Format (HTML / czysty tekst) ustawiasz poniżej.",
            "default": true
          },
          "descriptionFormat": {
            "title": "Format opisu",
            "enum": [
              "html",
              "text"
            ],
            "type": "string",
            "description": "'HTML' = pełny HTML opisu (nagłówki, pogrubienia, tabele, obrazki osadzone w opisie). 'Czysty tekst' = sam tekst bez znaczników i obrazków. Działa tylko gdy 'Pobieraj opis produktu' jest włączone.",
            "default": "html"
          },
          "fetchParameters": {
            "title": "Pobieraj parametry produktu",
            "type": "boolean",
            "description": "Jeśli WŁĄCZONE — aktor zwraca parametry produktu jako pary klucz→wartość (np. {\"Marka\":\"Blaupunkt\",\"Przekątna ekranu\":\"43\\\"\"}). W cenie bazowej (ten sam fetch strony). Domyślnie WŁĄCZONE.",
            "default": true
          },
          "downloadImages": {
            "title": "Pobieraj pliki zdjęć (opcjonalne, dodatkowo płatne)",
            "type": "boolean",
            "description": "Jeśli WŁĄCZONE — aktor pobiera pliki zdjęć do magazynu Key-Value Store tego runu i dodaje link 'file' obok 'originalUrl'. UWAGA: pliki są dostępne ~7 dni (okno retencji datasetu) — pobierz je u siebie w tym czasie. Oryginalne URL-e Allegro (originalUrl) zwracamy ZAWSZE i nie wygasają. Każde pobrane zdjęcie powyżej pierwszych 3 jest dodatkowo płatne (dla planów płatnych Apify — taniej). Domyślnie WYŁĄCZONE (zwracamy same URL-e).",
            "default": false
          },
          "brightDataWssUrl": {
            "title": "Bright Data Browser endpoint (zostaw PUSTE)",
            "type": "string",
            "description": "Zaawansowane / opcjonalne. Zostaw PUSTE — infrastruktura scrapująca jest wliczona w cenę aktora. Pole tylko dla użytkowników z własnym kontem Bright Data (format: wss://brd-customer-XXX-zone-YYY:PASSWORD@brd.superproxy.io:9222)."
          },
          "maxConcurrency": {
            "title": "Równoległość",
            "minimum": 1,
            "maximum": 5,
            "type": "integer",
            "description": "Liczba równoległych sesji browsera. Default 2 dla balansu szybkość/niezawodność.",
            "default": 2
          },
          "minDelayMs": {
            "title": "Min delay (ms)",
            "minimum": 0,
            "type": "integer",
            "description": "Minimalne opóźnienie między żądaniami stron (bezpieczeństwo DataDome).",
            "default": 1500
          },
          "maxDelayMs": {
            "title": "Max delay (ms)",
            "minimum": 0,
            "type": "integer",
            "description": "Maksymalne opóźnienie; aktor losuje wartość między min a max.",
            "default": 4000
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}