{
  "openapi": "3.0.1",
  "info": {
    "title": "SmartBuyGlasses Scraper",
    "description": "[💰 $0.9 / 1K] Extract SmartBuyGlasses sunglasses, eyeglasses and contact lenses: price, discount, stock, rating, brand, UPC, frame shape, material, lens type, prescription and PD range, plus images. Search by keyword, brand or URL across 34 country stores.",
    "version": "1.0",
    "x-build-id": "DLJCkUaOeL7qbryRd"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/solidcode~smartbuyglasses-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-solidcode-smartbuyglasses-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/solidcode~smartbuyglasses-scraper/runs": {
      "post": {
        "operationId": "runs-sync-solidcode-smartbuyglasses-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/solidcode~smartbuyglasses-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-solidcode-smartbuyglasses-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",
        "properties": {
          "startUrls": {
            "title": "SmartBuyGlasses URLs",
            "type": "array",
            "description": "Paste any SmartBuyGlasses page links — a category page (sunglasses, eyeglasses, contact lenses), a brand page, a search results page, or a single product page. The scraper works out what each link is and collects every product it finds. Works with any of the country stores.",
            "items": {
              "type": "object",
              "required": [
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "title": "URL of a web page",
                  "format": "uri"
                }
              }
            }
          },
          "searchTerms": {
            "title": "Search Keywords",
            "type": "array",
            "description": "Search the store by keyword, for example 'ray-ban aviator' or 'blue light glasses'. Each keyword runs its own search and every matching product is collected. Leave empty if you are only using links.",
            "items": {
              "type": "string"
            }
          },
          "brands": {
            "title": "Brands",
            "type": "array",
            "description": "Collect specific brands by name, for example 'Ray-Ban', 'Prada' or 'Oakley'. Each brand is collected separately, which is the best way to gather a large catalogue — see the note on the results limit below.",
            "items": {
              "type": "string"
            }
          },
          "productType": {
            "title": "Catalogue",
            "enum": [
              "sunglasses",
              "eyeglasses",
              "contact-lenses",
              "all"
            ],
            "type": "string",
            "description": "Which catalogue to browse when you have not given any links, keywords or brands above. Also decides which catalogue your brand and filter choices apply to. Note: the Italy, Colombia, Singapore and Taiwan stores do not sell contact lenses."
          },
          "gender": {
            "title": "Gender",
            "enum": [
              "any",
              "men",
              "women",
              "kids"
            ],
            "type": "string",
            "description": "Only collect eyewear made for this audience."
          },
          "frameShape": {
            "title": "Frame Shape",
            "uniqueItems": true,
            "type": "array",
            "description": "Only collect these frame shapes. Leave empty to include all shapes.",
            "items": {
              "type": "string",
              "enum": [
                "aviator",
                "browline",
                "butterfly",
                "cat-eye",
                "geometric",
                "goggle",
                "oval",
                "oversized",
                "pilot",
                "rectangle",
                "round",
                "single-lens",
                "square",
                "wayfarer",
                "wraparound"
              ],
              "enumTitles": [
                "Aviator",
                "Browline",
                "Butterfly",
                "Cat Eye",
                "Geometric",
                "Goggle",
                "Oval",
                "Oversized",
                "Pilot",
                "Rectangle",
                "Round",
                "Single Lens",
                "Square",
                "Wayfarer",
                "Wraparound"
              ]
            }
          },
          "frameMaterial": {
            "title": "Frame Material",
            "uniqueItems": true,
            "type": "array",
            "description": "Only collect frames made from these materials. Leave empty to include all materials.",
            "items": {
              "type": "string",
              "enum": [
                "acetate",
                "carbon-fiber",
                "eco-friendly",
                "metal",
                "plastic",
                "polycarbonate",
                "tr90",
                "titanium",
                "wood"
              ],
              "enumTitles": [
                "Acetate",
                "Carbon Fiber",
                "Eco-Friendly",
                "Metal",
                "Plastic",
                "Polycarbonate",
                "TR90",
                "Titanium",
                "Wood"
              ]
            }
          },
          "frameType": {
            "title": "Frame Type",
            "uniqueItems": true,
            "type": "array",
            "description": "Only collect these frame types. Leave empty to include all types.",
            "items": {
              "type": "string",
              "enum": [
                "clip-on",
                "full-rim",
                "rimless",
                "semi-rimless"
              ],
              "enumTitles": [
                "Clip-On",
                "Full Rim",
                "Rimless",
                "Semi Rimless"
              ]
            }
          },
          "lensType": {
            "title": "Lens Type",
            "uniqueItems": true,
            "type": "array",
            "description": "Only collect eyewear with these lens types, such as polarized or photochromic. Leave empty to include all lens types.",
            "items": {
              "type": "string",
              "enum": [
                "mirrored-lenses",
                "progressive-lenses",
                "photochromic-lenses",
                "polarized",
                "single-vision"
              ],
              "enumTitles": [
                "Mirrored",
                "Multifocal / Progressive",
                "Photochromic",
                "Polarized",
                "Single Vision"
              ]
            }
          },
          "frameColor": {
            "title": "Frame Colour",
            "uniqueItems": true,
            "type": "array",
            "description": "Only collect frames in these colours. Leave empty to include all colours.",
            "items": {
              "type": "string",
              "enum": [
                "black",
                "blue",
                "brown",
                "burgundy",
                "clear",
                "glitter",
                "gold",
                "green",
                "grey",
                "gunmetal",
                "orange",
                "pattern",
                "pink",
                "purple",
                "rainbow",
                "red",
                "rose-gold",
                "silver",
                "tortoiseshell",
                "two-tone",
                "white",
                "yellow"
              ],
              "enumTitles": [
                "Black",
                "Blue",
                "Brown",
                "Burgundy",
                "Clear",
                "Glitter",
                "Gold",
                "Green",
                "Grey",
                "Gunmetal",
                "Orange",
                "Pattern",
                "Pink",
                "Purple",
                "Rainbow",
                "Red",
                "Rose Gold",
                "Silver",
                "Tortoiseshell",
                "Two-Tone",
                "White",
                "Yellow"
              ]
            }
          },
          "deals": {
            "title": "Deals Only",
            "enum": [
              "any",
              "cheap-glasses",
              "clearance",
              "outlet"
            ],
            "type": "string",
            "description": "Limit results to one of the store's discount sections instead of the full catalogue."
          },
          "inStockOnly": {
            "title": "In Stock Only",
            "type": "boolean",
            "description": "Only collect products that are available to buy right now. Turn off to also include sold-out items."
          },
          "minPrice": {
            "title": "Minimum Price",
            "minimum": 0,
            "type": "integer",
            "description": "Only collect products priced at or above this amount, in the currency of the store you picked below. Leave empty for no minimum."
          },
          "maxPrice": {
            "title": "Maximum Price",
            "minimum": 0,
            "type": "integer",
            "description": "Only collect products priced at or below this amount, in the currency of the store you picked below. Leave empty for no maximum."
          },
          "sortBy": {
            "title": "Sort Results By",
            "enum": [
              "popularity",
              "price-asc",
              "price-desc",
              "discount",
              "newest",
              "name-asc"
            ],
            "type": "string",
            "description": "The order products are collected in. This is useful together with the results limit — for example, sort by biggest discount and keep the top 100 to find the best deals."
          },
          "country": {
            "title": "Country Store",
            "enum": [
              "us",
              "gb",
              "ca",
              "au",
              "nz",
              "ie",
              "de",
              "at",
              "ch",
              "nl",
              "be",
              "fr",
              "es",
              "it",
              "pt",
              "pl",
              "se",
              "no",
              "dk",
              "fi",
              "br",
              "mx",
              "ar",
              "cl",
              "co",
              "jp",
              "hk",
              "tw",
              "sg",
              "my",
              "id",
              "in",
              "ae",
              "za"
            ],
            "type": "string",
            "description": "Which of the 34 SmartBuyGlasses country stores to collect from. This sets the currency, the language of product names and descriptions, and the stock levels shown. Ignored for any link you paste that already points at a specific country store — those are always collected from the store they belong to."
          },
          "includeProductDetails": {
            "title": "Include Full Product Details",
            "type": "boolean",
            "description": "Open each product page to collect the complete spec sheet — UPC, manufacturer, frame and lens materials, face shapes, UV protection, prescription and PD range, frame measurements, star rating and the full image gallery. Turn this off for a much faster, cheaper run that returns only what is visible on listing pages: name, brand, price, discount, stock and the main image."
          },
          "maxItems": {
            "title": "Maximum Products",
            "minimum": 0,
            "type": "integer",
            "description": "Stop after collecting this many products in total, across every link, keyword and brand. Set to 0 to collect everything found. Important: the store serves a maximum of 2,000 products per single search, category, brand or link — that is a limit on the store's side, not on this scraper. To gather more than 2,000, add several brands, keywords or filtered links above rather than raising this number; the run will tell you in the log whenever a search hits that ceiling."
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}