{
  "openapi": "3.0.1",
  "info": {
    "title": "Competitor Price Intelligence API - Price, Stock, Seller Offers",
    "description": "Export competitor price intelligence your account monitors: daily competitor price, stock and promotion history, marketplace seller offers and buy box, category rank, review scores, your products with competitor price range, from the Lengow Market Intelligence API. Read only. Bring your own key.",
    "version": "0.1",
    "x-build-id": "lI4CY53ccVLeZZSUa"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/nabeelbaghoor~competitor-price-intelligence-api/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-nabeelbaghoor-competitor-price-intelligence-api",
        "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/nabeelbaghoor~competitor-price-intelligence-api/runs": {
      "post": {
        "operationId": "runs-sync-nabeelbaghoor-competitor-price-intelligence-api",
        "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/nabeelbaghoor~competitor-price-intelligence-api/run-sync": {
      "post": {
        "operationId": "run-sync-nabeelbaghoor-competitor-price-intelligence-api",
        "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": {
          "service": {
            "title": "What to read",
            "enum": [
              "privateStores",
              "publicStores",
              "privateProducts",
              "publicProducts",
              "privateProductAttributes",
              "publicProductAttributes",
              "privatePriceHistory",
              "publicPriceHistory",
              "placementHistory",
              "placementHistoryWithCategoryId",
              "scoreHistory",
              "commentsHistory",
              "marketplaceOffers",
              "marketplaceOfferPriceHistory",
              "connections",
              "geoDefinitions",
              "geoOffers",
              "geoOfferAttributes"
            ],
            "type": "string",
            "description": "One service per run. My stores needs nothing but the key and lists the store ids that narrow every other service, so it is the default. The history services read one row per product per day; the rest read one row per store, product, attribute set, offer, connection or location.",
            "default": "privateStores"
          },
          "storeIds": {
            "title": "Store ids",
            "type": "array",
            "description": "Optional. Numeric store ids, one per line, as the store services list them. Each id is sent to the provider as its stores filter, one request per id. Left empty, the provider answers for every store the key can read. Not used by the two store lists.",
            "items": {
              "type": "string"
            }
          },
          "dateFrom": {
            "title": "From date",
            "type": "string",
            "description": "History services with a date filter only (price, placement, score and review count history): the first day, as YYYY-MM-DD. Left blank, the provider uses its own window: the last 90 days, or the last 30 days for placement history."
          },
          "dateTo": {
            "title": "To date",
            "type": "string",
            "description": "History services with a date filter only: the last day, as YYYY-MM-DD. Left blank, the provider uses today."
          },
          "productIds": {
            "title": "Only these product ids",
            "type": "array",
            "description": "Optional. Keep only records whose public (competitor) product id, private (your) product id or product id is listed, one per line. Applied to the provider's answer, which covers every product of the store.",
            "items": {
              "type": "string"
            }
          },
          "countryCodes": {
            "title": "Only these countries",
            "type": "array",
            "description": "Stores and products only: keep only records whose two-letter ISO 3166-1 country code is listed, one per line, such as fr or es. Applied to the provider's answer.",
            "items": {
              "type": "string"
            }
          },
          "sellerNames": {
            "title": "Only these marketplace sellers",
            "type": "array",
            "description": "Marketplace offers and their price history only: keep only offers from sellers whose name is listed, one per line, matched without regard to case. Applied to the provider's answer.",
            "items": {
              "type": "string"
            }
          },
          "inStockOnly": {
            "title": "In stock only",
            "type": "boolean",
            "description": "Services that report stock only (products, price history, marketplace offer price history, geo-located offers): keep only records whose stock value is above zero. Applied to the provider's answer.",
            "default": false
          },
          "maxResults": {
            "title": "Maximum results",
            "minimum": 1,
            "maximum": 100000,
            "type": "integer",
            "description": "Stop after this many rows. Price history for a store is one row per product per day, so 90 days of a 1,000 product catalogue is up to 90,000 rows.",
            "default": 1000
          },
          "requestsPerMinute": {
            "title": "Requests per minute",
            "minimum": 1,
            "maximum": 120,
            "type": "integer",
            "description": "Pacing ceiling for calls to the provider. Each call answers a whole dataset, so a run makes one call per store id.",
            "default": 30
          },
          "apiKey": {
            "title": "API key",
            "type": "string",
            "description": "Your own 60-character Business Intelligence API key, which Lengow provides to Market Intelligence customers. This actor is bring-your-own-key and never ships one. Leave blank to use the DATA_API_KEY environment secret instead. It is sent as the api_key parameter and never written to a row or the log."
          },
          "baseUrl": {
            "title": "API base URL",
            "type": "string",
            "description": "Override the host the actor calls. Only useful for testing against a different environment."
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}