{
  "openapi": "3.0.1",
  "info": {
    "title": "Casper Scraper",
    "description": "Scrape Casper.com mattresses, pillows, bedding, bed frames & furniture. Browse by category, search by keyword, or look up exact products by handle/URL. Full pricing (incl. sale pricing), variants, images, descriptions, and Yotpo review ratings. No auth, no proxy.",
    "version": "1.0",
    "x-build-id": "br6xAGyUVGKfUQZ07"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/crawlerbros~casper-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-crawlerbros-casper-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/crawlerbros~casper-scraper/runs": {
      "post": {
        "operationId": "runs-sync-crawlerbros-casper-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/crawlerbros~casper-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-crawlerbros-casper-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",
        "required": [
          "mode"
        ],
        "properties": {
          "mode": {
            "title": "Mode",
            "enum": [
              "category",
              "search",
              "product",
              "reviews"
            ],
            "type": "string",
            "description": "What to fetch.",
            "default": "category"
          },
          "category": {
            "title": "Category (mode=category)",
            "enum": [
              "mattresses",
              "the-one",
              "the-hybrids",
              "the-maxes",
              "the-foams",
              "cooling-mattresses",
              "pillows",
              "classic-pillows",
              "cooling-pillows",
              "specialty-pillows",
              "bedding",
              "sheets",
              "duvets",
              "quilts-blankets-throws",
              "bed-frames",
              "adjustable-bases",
              "headboards",
              "furniture",
              "protectors",
              "mattress-toppers",
              "cooling-collection",
              "cozy-collection",
              "accessories",
              "replacement-parts",
              "mattresses-and-furniture-collection",
              "clearance",
              "best-sellers",
              "all"
            ],
            "type": "string",
            "description": "Casper product category / collection to browse.",
            "default": "mattresses"
          },
          "searchQuery": {
            "title": "Search query (mode=search)",
            "type": "string",
            "description": "Free-text keyword search, e.g. `cooling pillow`, `king mattress`, `duvet`."
          },
          "productHandles": {
            "title": "Product handles or URLs (mode=product / mode=reviews)",
            "type": "array",
            "description": "Casper product handles (e.g. `casper-one-foam`) or full product URLs (e.g. `https://casper.com/products/casper-one-foam`). Used to fetch exact products (mode=product) or their customer reviews (mode=reviews).",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "sortBy": {
            "title": "Sort by",
            "enum": [
              "default",
              "price-ascending",
              "price-descending",
              "title-ascending",
              "title-descending",
              "newest",
              "rating-descending"
            ],
            "type": "string",
            "description": "Re-order results after fetching. `Default` preserves Casper's own category/search ranking (recommended — this is the retailer's own curated/relevance order).",
            "default": "default"
          },
          "priceMin": {
            "title": "Minimum price (USD)",
            "minimum": 0,
            "maximum": 10000,
            "type": "integer",
            "description": "Only include products with at least one variant priced at or above this amount."
          },
          "priceMax": {
            "title": "Maximum price (USD)",
            "minimum": 0,
            "maximum": 10000,
            "type": "integer",
            "description": "Only include products with at least one variant priced at or below this amount."
          },
          "size": {
            "title": "Size (variant filter)",
            "enum": [
              "Twin",
              "Twin XL",
              "Full",
              "Queen",
              "King",
              "California King",
              "Split King",
              "Twin/Twin XL",
              "Full/Queen",
              "King/Cal King",
              "Twin-Twin XL",
              "Twin/TwinXL",
              "Standard",
              "Double",
              "Single",
              "Small",
              "Medium",
              "Large",
              "One Size",
              "One-Size",
              "One Pin",
              "10 Pounds",
              "15 Pounds",
              "20 Pounds",
              "Small Items",
              "Large Items",
              "Glow Single",
              "Glow Double"
            ],
            "type": "string",
            "description": "Only include products that offer this exact size option. Products without a size option are always included."
          },
          "color": {
            "title": "Color (variant filter)",
            "enum": [
              "Ash",
              "Autumn Multi",
              "Big Stripe Gray",
              "Blue",
              "Charcoal",
              "Chocolate",
              "Cream",
              "Dark Oak",
              "Driftwood",
              "Dune",
              "Dusty Rose",
              "Fireside",
              "Fog",
              "Fog Blue",
              "Gray",
              "Indigo",
              "Light Gray",
              "Marshmellow",
              "Midnight",
              "Midnight Gray",
              "Natural",
              "Natural Oak",
              "Navy",
              "Navy Tweed",
              "Oat",
              "Oatmilk",
              "Olive",
              "Peach",
              "Petal",
              "Pink",
              "Sand",
              "Slate",
              "Small Stripe Gray",
              "Spice",
              "Taupe",
              "White"
            ],
            "type": "string",
            "description": "Only include products that offer this exact color option. Products without a color option are always included."
          },
          "inStockOnly": {
            "title": "In-stock only",
            "type": "boolean",
            "description": "Exclude products where every size/color variant is currently out of stock. Products with no stock data are always included.",
            "default": false
          },
          "includeRatings": {
            "title": "Include review ratings",
            "type": "boolean",
            "description": "Enrich each product with its average star rating, review count and star-rating breakdown from Casper's review widget (Yotpo). Disable for a faster run.",
            "default": true
          },
          "reviewStarRating": {
            "title": "Review star rating (mode=reviews)",
            "enum": [
              "any",
              "1",
              "2",
              "3",
              "4",
              "5"
            ],
            "type": "string",
            "description": "Only fetch reviews with this exact star rating. `Any` returns reviews of every rating, newest first.",
            "default": "any"
          },
          "maxItems": {
            "title": "Max items",
            "minimum": 1,
            "maximum": 300,
            "type": "integer",
            "description": "Hard cap on emitted records (products, or individual reviews when mode=reviews).",
            "default": 30
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}