{
  "openapi": "3.0.1",
  "info": {
    "title": "WooCommerce Store Products Export - Prices, Stock, No Login",
    "description": "Export public products from any WooCommerce store: prices, sale prices, stock, SKUs, categories, attributes, images and links. Whole catalog or one category, only-new mode for scheduled runs. No login or API key needed.",
    "version": "0.1",
    "x-build-id": "12VJV1bM2lHNGXVjE"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/cliqtomedia~woocommerce-products/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-cliqtomedia-woocommerce-products",
        "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/cliqtomedia~woocommerce-products/runs": {
      "post": {
        "operationId": "runs-sync-cliqtomedia-woocommerce-products",
        "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/cliqtomedia~woocommerce-products/run-sync": {
      "post": {
        "operationId": "run-sync-cliqtomedia-woocommerce-products",
        "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": [
          "storeUrls"
        ],
        "properties": {
          "storeUrls": {
            "title": "WooCommerce store URLs",
            "maxItems": 100,
            "type": "array",
            "description": "Up to 100 WooCommerce stores as URLs or domains, e.g. https://woocommerce.com or shop.example.com. A category page URL such as https://shop.example.com/product-category/hoodies/ exports only that category. Each store you check is billed once. Stores that close their API to visitors are skipped and reported, never logged into.",
            "items": {
              "type": "string"
            }
          },
          "category": {
            "title": "Category (optional)",
            "maxLength": 200,
            "type": "string",
            "description": "Product category applied to every store without a category in its URL: slug (hoodies), ID (16) or name (Hoodies). If a store has no such category, its status row lists the categories it has. Leave empty to export the whole catalog."
          },
          "maxProducts": {
            "title": "Max products per store",
            "minimum": 1,
            "maximum": 50000,
            "type": "integer",
            "description": "Stop each store after this many product rows, newest products first unless Sort by says otherwise. Each product row is billed.",
            "default": 1000
          },
          "onlyNew": {
            "title": "Only new products",
            "type": "boolean",
            "description": "Return only products added since the previous run with the same state name and filters. The first run returns the newest products (up to the max) and marks older ones as already seen; later runs return only new products, usually in one request per store. State lives in your account's key-value store woocommerce-products-state.",
            "default": false
          },
          "search": {
            "title": "Search text (optional)",
            "maxLength": 200,
            "type": "string",
            "description": "Keep only products the store's own search finds for this text, e.g. hoodie. Same as the search box on the store. Up to 200 characters."
          },
          "onSale": {
            "title": "Only products on sale",
            "type": "boolean",
            "description": "Keep only products the store marks as on sale.",
            "default": false
          },
          "featured": {
            "title": "Only featured products",
            "type": "boolean",
            "description": "Keep only products the store marks as featured.",
            "default": false
          },
          "stockStatus": {
            "title": "Stock status (optional)",
            "uniqueItems": true,
            "type": "array",
            "description": "Keep only products with these stock statuses. Leave empty for all.",
            "items": {
              "type": "string",
              "enum": [
                "instock",
                "outofstock",
                "onbackorder"
              ],
              "enumTitles": [
                "In stock",
                "Out of stock",
                "On backorder"
              ]
            }
          },
          "minPrice": {
            "title": "Min price (optional)",
            "minimum": 0,
            "maximum": 1000000000,
            "type": "number",
            "description": "Keep only products priced at least this much, in each store's own currency (e.g. 50 means $50 in a USD store)."
          },
          "maxPrice": {
            "title": "Max price (optional)",
            "minimum": 0,
            "maximum": 1000000000,
            "type": "number",
            "description": "Keep only products priced at most this much, in each store's own currency."
          },
          "sortBy": {
            "title": "Sort by",
            "enum": [
              "date",
              "price",
              "popularity",
              "rating",
              "title",
              "menu_order"
            ],
            "type": "string",
            "description": "Order in which products are read and saved. With Max products this decides which products you get, e.g. price ascending gives the cheapest. Only new products always uses newest first.",
            "default": "date"
          },
          "sortOrder": {
            "title": "Sort order",
            "enum": [
              "desc",
              "asc"
            ],
            "type": "string",
            "description": "Descending (high to low, newest first) or ascending.",
            "default": "desc"
          },
          "stateName": {
            "title": "State name (only new products)",
            "pattern": "^[a-zA-Z0-9_-]{1,40}$",
            "type": "string",
            "description": "Name of the onlyNew memory, so different schedules or task setups do not share it. Letters, digits, - and _ (up to 40). Default: default."
          },
          "deliveryConnector": {
            "title": "Send results to (optional)",
            "type": "string",
            "description": "Your Slack, Notion or other MCP connector. After the run the Actor posts a short summary there. Connect services once in Apify Console → MCP connectors."
          },
          "deliveryTarget": {
            "title": "Notion page or channel (optional)",
            "type": "string",
            "description": "Where to post the summary: a Notion page link (each run is added on top of that page) or a Slack channel ID. Leave empty to let the connector decide."
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}