{
  "data": {
    "id": "UbLTInQaLPvmv9zOa",
    "actId": "QfRXeFPvqqB0A6cjw",
    "userId": "NL4ThgItAwaoBlffQ",
    "startedAt": "2026-10-23T14:32:27.352Z",
    "finishedAt": "2026-10-23T14:32:39.998Z",
    "status": "SUCCEEDED",
    "meta": {
      "origin": "CLI"
    },
    "stats": {
      "durationMillis": 12561,
      "runTimeSecs": 12.561,
      "computeUnits": 0.013956666666666666,
      "imageSizeBytes": 318477312
    },
    "options": {
      "useCache": true,
      "betaPackages": false,
      "memoryMbytes": 4096,
      "diskMbytes": 8192
    },
    "createdByOrganizationMemberUserId": "zifX0mkAFMHe8CatY",
    "exitCode": 0,
    "inputSchema": "{\n  \"title\": \"Shopee Scraper Input\",\n  \"description\": \"Collect public Shopee shop profiles, item details, category trees and mall shops across eight markets.\",\n  \"type\": \"object\",\n  \"schemaVersion\": 1,\n  \"properties\": {\n    \"mode\": {\n      \"title\": \"Mode\",\n      \"type\": \"string\",\n      \"description\": \"What to collect.\",\n      \"editor\": \"select\",\n      \"default\": \"shopProfile\",\n      \"prefill\": \"shopProfile\",\n      \"enumSuggestedValues\": [\n        \"shopProfile\",\n        \"itemByUrl\",\n        \"categoryTree\",\n        \"mallShops\"\n      ]\n    },\n    \"market\": {\n      \"title\": \"Market\",\n      \"type\": \"string\",\n      \"description\": \"Shopee market. Used for categoryTree, mallShops and bare IDs; a full URL keeps its own market.\",\n      \"editor\": \"select\",\n      \"enum\": [\n        \"MY\",\n        \"SG\",\n        \"PH\",\n        \"TH\",\n        \"VN\",\n        \"ID\",\n        \"BR\",\n        \"TW\"\n      ],\n      \"enumTitles\": [\n        \"Malaysia (shopee.com.my)\",\n        \"Singapore (shopee.sg)\",\n        \"Philippines (shopee.ph)\",\n        \"Thailand (shopee.co.th)\",\n        \"Vietnam (shopee.vn)\",\n        \"Indonesia (shopee.co.id)\",\n        \"Brazil (shopee.com.br)\",\n        \"Taiwan (shopee.tw)\"\n      ],\n      \"prefill\": \"MY\"\n    },\n    \"shopUrl\": {\n      \"title\": \"Shop URL or username\",\n      \"type\": \"string\",\n      \"description\": \"Shop username, numeric shop ID, /shop/<id> path, or full Shopee shop URL (mode=shopProfile).\",\n      \"editor\": \"textfield\",\n      \"prefill\": \"watsons.my\"\n    },\n    \"itemUrl\": {\n      \"title\": \"Item URL\",\n      \"type\": \"string\",\n      \"description\": \"Full item URL, -i.<shopid>.<itemid>, shopid.itemid, or /product/<shopid>/<itemid> (mode=itemByUrl).\",\n      \"editor\": \"textfield\"\n    },\n    \"categoryId\": {\n      \"title\": \"Category ID or name\",\n      \"type\": \"string\",\n      \"description\": \"Numeric category ID from categoryTree mode, or a category name. Leave blank for the whole tree (mode=categoryTree).\",\n      \"editor\": \"textfield\"\n    },\n    \"includeChildren\": {\n      \"title\": \"Include child categories\",\n      \"type\": \"boolean\",\n      \"description\": \"Include child categories (mode=categoryTree). When categoryId is blank, false returns only top-level categories.\",\n      \"default\": true,\n      \"prefill\": false\n    },\n    \"includeShopCategories\": {\n      \"title\": \"Include shop categories\",\n      \"type\": \"boolean\",\n      \"description\": \"Add the shop's own category list to the shop record (mode=shopProfile).\",\n      \"default\": false,\n      \"prefill\": false\n    },\n    \"includeFeaturedItem\": {\n      \"title\": \"Include featured product\",\n      \"type\": \"boolean\",\n      \"description\": \"Add the featured product card published on the shop page; on itemByUrl, merge it when the item matches.\",\n      \"default\": true,\n      \"prefill\": false\n    },\n    \"maxItems\": {\n      \"title\": \"Max records\",\n      \"type\": \"integer\",\n      \"description\": \"Hard cap on emitted records. Use 500 for a complete category tree.\",\n      \"minimum\": 1,\n      \"maximum\": 500,\n      \"default\": 50,\n      \"prefill\": 1\n    }\n  },\n  \"required\": [\n    \"mode\"\n  ]\n}",
    "readme": "# Shopee Shop Profile, Item & Category Scraper\n\nCollect public **Shopee** data across Malaysia, Singapore, the Philippines, Thailand, Vietnam, Indonesia, Brazil and Taiwan. Get shop profiles with ratings, followers and response metrics; item pages with descriptions, images, variants and specifications; complete category trees; and mall-shop directories. No login, cookies or proxy setup required. Shop profiles and category trees work in all eight markets; mall-shop directories work in seven (Indonesia returns none); item detail works in seven because Taiwan's item pages are not public.\n\n## What this actor does\n\n- **Four modes:** `shopProfile` (shop page), `itemByUrl` (item page), `categoryTree` (full taxonomy), `mallShops` (mall directory)\n- **Eight markets:** MY / SG / PH / TH / VN / ID / BR / TW, with the correct local currency. Item detail is available in MY / SG / PH / TH / VN / ID / BR; TW item pages are not public.\n- **Shop profiles:** rating, rating counts, followers, item count, response rate and time, joined date, official/verified badges, description, cover image, optional shop categories\n- **Item details:** title, description, brand, category path, images, option groups, attributes, per-model stock, condition, shipping flags\n- **Featured product card:** the one product Shopee publishes on a shop page, with its public price, original price, discount, rating, sold count, stock and likes\n- **Category trees:** every top-level and child category for the selected market, with IDs, paths and child counts\n- **Mall shops:** the shops listed in a market's mall directory, enriched with their public profiles\n- **Empty fields are omitted**\n\n## Output per shop (`recordType: \"shop\"`)\n\n- `shopId`, `userid`, `shopName`, `username`, `country`, `market`, `currency`\n- `ratingStar`, `ratingCount`, `rating_good`, `rating_normal`, `rating_bad`\n- `followerCount`, `itemCount`, `responseRate`, `responseTimeSeconds`\n- `createdTimestamp`, `joinedAt`, `lastActiveTimestamp`, `lastActiveAt`, `cancellationRate`\n- `isOfficialShop`, `isShopeeVerified`, `isPreferredPlusSeller`, `showOfficialShopLabel`, `isShopeeChoiceShop`, `vacation`, `isFollowed`\n- `description`, `coverImage`\n- `shopCategories[]` — `categoryId`, `name`, `itemCount` (when requested)\n- `featuredItemId` — the featured product, when one is published\n- `warnings[]` — per-row note when the featured card was requested but unavailable\n- `sourceUrl`, `scrapedAt`, `recordType`\n\n## Output per item (`recordType: \"item\"`)\n\n- `itemId`, `shopId`, `title`, `shopName`, `shopUsername`\n- `price`, `priceMin`, `priceMax`, `priceOriginal`, `discountPercent`, `currency` — **featured product only**\n- `sold`, `soldLast30Days`, `stock`, `ratingStar`, `ratingCount`, `likeCount` — **featured product only**\n- `categoryId`, `category`, `categoryPath`, `categories[]`, `location`\n- `listedTimestamp`, `listedAt`, `images[]`, `imageCover`\n- `description`, `itemStatus`, `brand`, `brandId`, `condition`\n- `variations[]` — legacy text form, e.g. `Colour: Red, Blue`\n- `variationGroups[]` — `name`, `options[]`\n- `attributes[]` — `id`, `name`, `value`\n- `variants[]` — `modelId`, `name`, `stock`; plus `modelCount`\n- `isPreOrder`, `isFreeShipping`, `isServiceByShopee`, `isOfficialShop`\n- `featured` — `true` when the price/rating/sold/stock fields come from the shop's featured card\n- `status` — `item_page_unavailable` when only the featured card could be returned\n- `warnings[]` — per-row note explaining a card fallback or an unavailable featured card\n- `sourceUrl`, `scrapedAt`, `recordType`\n\n## Output per category (`recordType: \"category\"`)\n\n- `categoryId`, `category`, `categoryName`, `displayName`\n- `parentCategoryId`, `level`, `path`, `childCount`\n- `imageUrl`, `market`, `currency`, `sourceUrl`\n- `scrapedAt`, `recordType`\n\n## Input\n\n| Field | Type | Default | Description |\n|---|---|---|---|\n| `mode` | string | `shopProfile` | `shopProfile` / `itemByUrl` / `categoryTree` / `mallShops` |\n| `market` | string | – | `MY` / `SG` / `PH` / `TH` / `VN` / `ID` / `BR` / `TW` (prefill `MY`) |\n| `shopUrl` | string | – | Shop username, numeric ID, `/shop/<id>` path or full URL (mode=shopProfile; prefill `watsons.my`) |\n| `itemUrl` | string | – | Full item URL, `-i.<shopid>.<itemid>`, `shopid.itemid` or `/product/<shopid>/<itemid>` (mode=itemByUrl) |\n| `categoryId` | string | – | Category ID or name; blank = whole tree (mode=categoryTree) |\n| `includeChildren` | boolean | `true` | Include child categories; when `categoryId` is blank, false returns only top-level categories |\n| `includeShopCategories` | boolean | `false` | Add the shop's own category list (mode=shopProfile) |\n| `includeFeaturedItem` | boolean | `true` | Add the featured product card; on itemByUrl, merge it when the item matches. Also enables the shop-page mirror that supplies `cancellationRate` and `showOfficialShopLabel` |\n| `maxItems` | integer | `50` | Hard cap on emitted records (1–500). Use 500 for a full category tree |\n\nLegacy values `shopProducts` and `browseByCategory` are still accepted and mapped to the current modes; legacy `domain`, `shopUsername`, and `category` inputs are also mapped.\n\n### Example: shop profile in Malaysia\n\n```json\n{\n  \"mode\": \"shopProfile\",\n  \"market\": \"MY\",\n  \"shopUrl\": \"watsons.my\",\n  \"includeShopCategories\": true,\n  \"includeFeaturedItem\": true,\n  \"maxItems\": 20\n}\n```\n\n### Example: item detail in Singapore\n\n```json\n{\n  \"mode\": \"itemByUrl\",\n  \"itemUrl\": \"https://shopee.sg/product/15235546/26306526891\",\n  \"includeFeaturedItem\": true,\n  \"maxItems\": 5\n}\n```\n\n### Example: full category tree in Indonesia\n\n```json\n{\n  \"mode\": \"categoryTree\",\n  \"market\": \"ID\",\n  \"maxItems\": 500\n}\n```\n\n### Example: mall shops in the Philippines\n\n```json\n{\n  \"mode\": \"mallShops\",\n  \"market\": \"PH\",\n  \"maxItems\": 10\n}\n```\n\n## Use cases\n\n- **Seller intelligence** — compare shop ratings, follower counts, response times and official badges across markets\n- **Catalogue enrichment** — add descriptions, images, attributes and option groups to an existing product list\n- **Category mapping** — build a local category taxonomy with IDs and parent paths for each Shopee market\n- **Marketplace monitoring** — track the featured product's public price, discount, rating and sold count over time\n- **Mall discovery** — collect the shops promoted in a market's mall directory for outreach or benchmarking\n- **Multi-market research** — run the same shop or item across eight catalogues with the correct currencies\n\n## FAQ\n\n**What is the data source?** Public Shopee shop and item pages, and Shopee's public category and mall-directory endpoints. This actor is a third-party tool and is not affiliated with or endorsed by Shopee.\n\n**Do I need an account, cookies or a proxy?** No. The actor reads public pages and requires no login, cookies or proxy configuration.\n\n**Why can't I search by keyword or list every item in a category?** Shopee gates keyword search and category item listings behind a login/anti-bot wall for automated visitors. This actor deliberately uses the public shop, item and category surfaces instead.\n\n**Why are price, rating, sold count or stock missing on some items?** Shopee hides those fields from logged-out visitors on most item pages. They are included when the item is the shop's featured product, whose public card carries them. The `featured` field tells you which records have them. The public card comes from a translation mirror that can rate-limit (HTTP 429); in that case the shop record is still returned but the card is omitted.\n\n**What is the featured product?** It is the single product card Shopee publishes on a shop page. It usually changes over time; it is not a substitute for a full catalogue.\n\n**Which markets are supported?** Malaysia, Singapore, the Philippines, Thailand, Vietnam, Indonesia, Brazil and Taiwan. The market is inferred from a full URL; otherwise the `market` input is used. Item detail is currently public in all markets except Taiwan, where the item page returns no data; `itemByUrl` can then return only the shop's featured card when `includeFeaturedItem` is on.\n\n**What does `cancellationRate` mean?** It is Shopee's public seller cancellation metric, reported as a percentage as published. It is omitted when Shopee does not expose it.\n\n**Why are some fields missing?** Empty fields are omitted by design. Descriptions, brands, attributes and shop categories are not published for every shop or item.\n\n**How fresh is the data?** Live — every run fetches the current public pages.\n\n**Can I get a shop's complete catalogue?** No. Shopee's public shop page exposes the profile and at most a featured product; the full item feed requires login. Use `itemByUrl` for specific items.\n\n## Limitations\n\n- Keyword search, category item listings and full shop item feeds are not public; they are not supported.\n- Item price, rating, sold count and stock are only available for a shop's featured product.\n- Taiwan item pages are not public: the page returns an empty item payload (Shopee error `90309999`). `itemByUrl` therefore returns no item detail in TW; with `includeFeaturedItem` on, it can return only the featured card. Shop profiles, category trees and mall shops still work in TW.\n- The translation mirror that supplies the featured card can return HTTP 429. The actor backs off and keeps the shop record, but the card may be missing for that run; `featured` is absent on those item records.\n- `cancellationRate` and `showOfficialShopLabel` come from the same shop-page mirror as the featured card. They are omitted when `includeFeaturedItem` is off or the mirror is rate-limited.\n- Mall-shop directories are available for most markets; Indonesia currently returns none, while shop and item URLs still work.\n- Item descriptions, brands and attributes are published for most but not all items; missing values are omitted.\n- `maxItems` caps emitted records at 500; a full category tree can be collected with `maxItems: 500`.\n- On Taiwan, some item pages do not expose a usable payload. When the item is the shop's featured product, the actor returns that card with `status: \"item_page_unavailable\"` and a warning instead of an empty row.\n- If the featured card is temporarily rate-limited after three attempts, the shop row is still returned with a `warnings[]` entry instead of being dropped.\n- Reviews, seller contact details and per-variant prices are not part of this actor.\n- Old saved tasks that send the retired `mode` values `shopProducts` or `browseByCategory` are rejected by input validation before the actor starts; use `shopProfile` or `categoryTree` instead. Legacy `minPrice`, `maxPrice`, `minRating` and `containsKeyword` still apply to the featured card, and `proxyConfiguration` is ignored. The schema also supplies `market` and `shopUrl` defaults, so old tasks that relied only on legacy `domain` or `shopUsername` should set `market` and `shopUrl` explicitly.\n",
    "actorDefinition": {
      "actorSpecification": 1,
      "name": "shopee-shop-profile-item-and-category-scraper",
      "title": "Shopee Shop Profile, Item & Category Scraper",
      "description": "Collect public Shopee shop profiles, item details, full category trees and mall shops across eight markets. Get ratings, followers, response rates, descriptions, images, variants and attributes without login or proxy.",
      "version": "1.0",
      "buildTag": "latest",
      "dockerfile": "./Dockerfile",
      "readme": "# Shopee Shop Profile, Item & Category Scraper\n\nCollect public **Shopee** data across Malaysia, Singapore, the Philippines, Thailand, Vietnam, Indonesia, Brazil and Taiwan. Get shop profiles with ratings, followers and response metrics; item pages with descriptions, images, variants and specifications; complete category trees; and mall-shop directories. No login, cookies or proxy setup required. Shop profiles and category trees work in all eight markets; mall-shop directories work in seven (Indonesia returns none); item detail works in seven because Taiwan's item pages are not public.\n\n## What this actor does\n\n- **Four modes:** `shopProfile` (shop page), `itemByUrl` (item page), `categoryTree` (full taxonomy), `mallShops` (mall directory)\n- **Eight markets:** MY / SG / PH / TH / VN / ID / BR / TW, with the correct local currency. Item detail is available in MY / SG / PH / TH / VN / ID / BR; TW item pages are not public.\n- **Shop profiles:** rating, rating counts, followers, item count, response rate and time, joined date, official/verified badges, description, cover image, optional shop categories\n- **Item details:** title, description, brand, category path, images, option groups, attributes, per-model stock, condition, shipping flags\n- **Featured product card:** the one product Shopee publishes on a shop page, with its public price, original price, discount, rating, sold count, stock and likes\n- **Category trees:** every top-level and child category for the selected market, with IDs, paths and child counts\n- **Mall shops:** the shops listed in a market's mall directory, enriched with their public profiles\n- **Empty fields are omitted**\n\n## Output per shop (`recordType: \"shop\"`)\n\n- `shopId`, `userid`, `shopName`, `username`, `country`, `market`, `currency`\n- `ratingStar`, `ratingCount`, `rating_good`, `rating_normal`, `rating_bad`\n- `followerCount`, `itemCount`, `responseRate`, `responseTimeSeconds`\n- `createdTimestamp`, `joinedAt`, `lastActiveTimestamp`, `lastActiveAt`, `cancellationRate`\n- `isOfficialShop`, `isShopeeVerified`, `isPreferredPlusSeller`, `showOfficialShopLabel`, `isShopeeChoiceShop`, `vacation`, `isFollowed`\n- `description`, `coverImage`\n- `shopCategories[]` — `categoryId`, `name`, `itemCount` (when requested)\n- `featuredItemId` — the featured product, when one is published\n- `warnings[]` — per-row note when the featured card was requested but unavailable\n- `sourceUrl`, `scrapedAt`, `recordType`\n\n## Output per item (`recordType: \"item\"`)\n\n- `itemId`, `shopId`, `title`, `shopName`, `shopUsername`\n- `price`, `priceMin`, `priceMax`, `priceOriginal`, `discountPercent`, `currency` — **featured product only**\n- `sold`, `soldLast30Days`, `stock`, `ratingStar`, `ratingCount`, `likeCount` — **featured product only**\n- `categoryId`, `category`, `categoryPath`, `categories[]`, `location`\n- `listedTimestamp`, `listedAt`, `images[]`, `imageCover`\n- `description`, `itemStatus`, `brand`, `brandId`, `condition`\n- `variations[]` — legacy text form, e.g. `Colour: Red, Blue`\n- `variationGroups[]` — `name`, `options[]`\n- `attributes[]` — `id`, `name`, `value`\n- `variants[]` — `modelId`, `name`, `stock`; plus `modelCount`\n- `isPreOrder`, `isFreeShipping`, `isServiceByShopee`, `isOfficialShop`\n- `featured` — `true` when the price/rating/sold/stock fields come from the shop's featured card\n- `status` — `item_page_unavailable` when only the featured card could be returned\n- `warnings[]` — per-row note explaining a card fallback or an unavailable featured card\n- `sourceUrl`, `scrapedAt`, `recordType`\n\n## Output per category (`recordType: \"category\"`)\n\n- `categoryId`, `category`, `categoryName`, `displayName`\n- `parentCategoryId`, `level`, `path`, `childCount`\n- `imageUrl`, `market`, `currency`, `sourceUrl`\n- `scrapedAt`, `recordType`\n\n## Input\n\n| Field | Type | Default | Description |\n|---|---|---|---|\n| `mode` | string | `shopProfile` | `shopProfile` / `itemByUrl` / `categoryTree` / `mallShops` |\n| `market` | string | – | `MY` / `SG` / `PH` / `TH` / `VN` / `ID` / `BR` / `TW` (prefill `MY`) |\n| `shopUrl` | string | – | Shop username, numeric ID, `/shop/<id>` path or full URL (mode=shopProfile; prefill `watsons.my`) |\n| `itemUrl` | string | – | Full item URL, `-i.<shopid>.<itemid>`, `shopid.itemid` or `/product/<shopid>/<itemid>` (mode=itemByUrl) |\n| `categoryId` | string | – | Category ID or name; blank = whole tree (mode=categoryTree) |\n| `includeChildren` | boolean | `true` | Include child categories; when `categoryId` is blank, false returns only top-level categories |\n| `includeShopCategories` | boolean | `false` | Add the shop's own category list (mode=shopProfile) |\n| `includeFeaturedItem` | boolean | `true` | Add the featured product card; on itemByUrl, merge it when the item matches. Also enables the shop-page mirror that supplies `cancellationRate` and `showOfficialShopLabel` |\n| `maxItems` | integer | `50` | Hard cap on emitted records (1–500). Use 500 for a full category tree |\n\nLegacy values `shopProducts` and `browseByCategory` are still accepted and mapped to the current modes; legacy `domain`, `shopUsername`, and `category` inputs are also mapped.\n\n### Example: shop profile in Malaysia\n\n```json\n{\n  \"mode\": \"shopProfile\",\n  \"market\": \"MY\",\n  \"shopUrl\": \"watsons.my\",\n  \"includeShopCategories\": true,\n  \"includeFeaturedItem\": true,\n  \"maxItems\": 20\n}\n```\n\n### Example: item detail in Singapore\n\n```json\n{\n  \"mode\": \"itemByUrl\",\n  \"itemUrl\": \"https://shopee.sg/product/15235546/26306526891\",\n  \"includeFeaturedItem\": true,\n  \"maxItems\": 5\n}\n```\n\n### Example: full category tree in Indonesia\n\n```json\n{\n  \"mode\": \"categoryTree\",\n  \"market\": \"ID\",\n  \"maxItems\": 500\n}\n```\n\n### Example: mall shops in the Philippines\n\n```json\n{\n  \"mode\": \"mallShops\",\n  \"market\": \"PH\",\n  \"maxItems\": 10\n}\n```\n\n## Use cases\n\n- **Seller intelligence** — compare shop ratings, follower counts, response times and official badges across markets\n- **Catalogue enrichment** — add descriptions, images, attributes and option groups to an existing product list\n- **Category mapping** — build a local category taxonomy with IDs and parent paths for each Shopee market\n- **Marketplace monitoring** — track the featured product's public price, discount, rating and sold count over time\n- **Mall discovery** — collect the shops promoted in a market's mall directory for outreach or benchmarking\n- **Multi-market research** — run the same shop or item across eight catalogues with the correct currencies\n\n## FAQ\n\n**What is the data source?** Public Shopee shop and item pages, and Shopee's public category and mall-directory endpoints. This actor is a third-party tool and is not affiliated with or endorsed by Shopee.\n\n**Do I need an account, cookies or a proxy?** No. The actor reads public pages and requires no login, cookies or proxy configuration.\n\n**Why can't I search by keyword or list every item in a category?** Shopee gates keyword search and category item listings behind a login/anti-bot wall for automated visitors. This actor deliberately uses the public shop, item and category surfaces instead.\n\n**Why are price, rating, sold count or stock missing on some items?** Shopee hides those fields from logged-out visitors on most item pages. They are included when the item is the shop's featured product, whose public card carries them. The `featured` field tells you which records have them. The public card comes from a translation mirror that can rate-limit (HTTP 429); in that case the shop record is still returned but the card is omitted.\n\n**What is the featured product?** It is the single product card Shopee publishes on a shop page. It usually changes over time; it is not a substitute for a full catalogue.\n\n**Which markets are supported?** Malaysia, Singapore, the Philippines, Thailand, Vietnam, Indonesia, Brazil and Taiwan. The market is inferred from a full URL; otherwise the `market` input is used. Item detail is currently public in all markets except Taiwan, where the item page returns no data; `itemByUrl` can then return only the shop's featured card when `includeFeaturedItem` is on.\n\n**What does `cancellationRate` mean?** It is Shopee's public seller cancellation metric, reported as a percentage as published. It is omitted when Shopee does not expose it.\n\n**Why are some fields missing?** Empty fields are omitted by design. Descriptions, brands, attributes and shop categories are not published for every shop or item.\n\n**How fresh is the data?** Live — every run fetches the current public pages.\n\n**Can I get a shop's complete catalogue?** No. Shopee's public shop page exposes the profile and at most a featured product; the full item feed requires login. Use `itemByUrl` for specific items.\n\n## Limitations\n\n- Keyword search, category item listings and full shop item feeds are not public; they are not supported.\n- Item price, rating, sold count and stock are only available for a shop's featured product.\n- Taiwan item pages are not public: the page returns an empty item payload (Shopee error `90309999`). `itemByUrl` therefore returns no item detail in TW; with `includeFeaturedItem` on, it can return only the featured card. Shop profiles, category trees and mall shops still work in TW.\n- The translation mirror that supplies the featured card can return HTTP 429. The actor backs off and keeps the shop record, but the card may be missing for that run; `featured` is absent on those item records.\n- `cancellationRate` and `showOfficialShopLabel` come from the same shop-page mirror as the featured card. They are omitted when `includeFeaturedItem` is off or the mirror is rate-limited.\n- Mall-shop directories are available for most markets; Indonesia currently returns none, while shop and item URLs still work.\n- Item descriptions, brands and attributes are published for most but not all items; missing values are omitted.\n- `maxItems` caps emitted records at 500; a full category tree can be collected with `maxItems: 500`.\n- On Taiwan, some item pages do not expose a usable payload. When the item is the shop's featured product, the actor returns that card with `status: \"item_page_unavailable\"` and a warning instead of an empty row.\n- If the featured card is temporarily rate-limited after three attempts, the shop row is still returned with a `warnings[]` entry instead of being dropped.\n- Reviews, seller contact details and per-variant prices are not part of this actor.\n- Old saved tasks that send the retired `mode` values `shopProducts` or `browseByCategory` are rejected by input validation before the actor starts; use `shopProfile` or `categoryTree` instead. Legacy `minPrice`, `maxPrice`, `minRating` and `containsKeyword` still apply to the featured card, and `proxyConfiguration` is ignored. The schema also supplies `market` and `shopUrl` defaults, so old tasks that relied only on legacy `domain` or `shopUsername` should set `market` and `shopUrl` explicitly.\n",
      "input": {
        "title": "Shopee Scraper Input",
        "description": "Collect public Shopee shop profiles, item details, category trees and mall shops across eight markets.",
        "type": "object",
        "schemaVersion": 1,
        "properties": {
          "mode": {
            "title": "Mode",
            "type": "string",
            "description": "What to collect.",
            "editor": "select",
            "default": "shopProfile",
            "prefill": "shopProfile",
            "enumSuggestedValues": [
              "shopProfile",
              "itemByUrl",
              "categoryTree",
              "mallShops"
            ]
          },
          "market": {
            "title": "Market",
            "type": "string",
            "description": "Shopee market. Used for categoryTree, mallShops and bare IDs; a full URL keeps its own market.",
            "editor": "select",
            "enum": [
              "MY",
              "SG",
              "PH",
              "TH",
              "VN",
              "ID",
              "BR",
              "TW"
            ],
            "enumTitles": [
              "Malaysia (shopee.com.my)",
              "Singapore (shopee.sg)",
              "Philippines (shopee.ph)",
              "Thailand (shopee.co.th)",
              "Vietnam (shopee.vn)",
              "Indonesia (shopee.co.id)",
              "Brazil (shopee.com.br)",
              "Taiwan (shopee.tw)"
            ],
            "prefill": "MY"
          },
          "shopUrl": {
            "title": "Shop URL or username",
            "type": "string",
            "description": "Shop username, numeric shop ID, /shop/<id> path, or full Shopee shop URL (mode=shopProfile).",
            "editor": "textfield",
            "prefill": "watsons.my"
          },
          "itemUrl": {
            "title": "Item URL",
            "type": "string",
            "description": "Full item URL, -i.<shopid>.<itemid>, shopid.itemid, or /product/<shopid>/<itemid> (mode=itemByUrl).",
            "editor": "textfield"
          },
          "categoryId": {
            "title": "Category ID or name",
            "type": "string",
            "description": "Numeric category ID from categoryTree mode, or a category name. Leave blank for the whole tree (mode=categoryTree).",
            "editor": "textfield"
          },
          "includeChildren": {
            "title": "Include child categories",
            "type": "boolean",
            "description": "Include child categories (mode=categoryTree). When categoryId is blank, false returns only top-level categories.",
            "default": true,
            "prefill": false
          },
          "includeShopCategories": {
            "title": "Include shop categories",
            "type": "boolean",
            "description": "Add the shop's own category list to the shop record (mode=shopProfile).",
            "default": false,
            "prefill": false
          },
          "includeFeaturedItem": {
            "title": "Include featured product",
            "type": "boolean",
            "description": "Add the featured product card published on the shop page; on itemByUrl, merge it when the item matches.",
            "default": true,
            "prefill": false
          },
          "maxItems": {
            "title": "Max records",
            "type": "integer",
            "description": "Hard cap on emitted records. Use 500 for a complete category tree.",
            "minimum": 1,
            "maximum": 500,
            "default": 50,
            "prefill": 1
          }
        },
        "required": [
          "mode"
        ]
      },
      "output": {
        "actorOutputSchemaVersion": 1,
        "title": "Shopee Shop Profile, Item & Category Scraper Output",
        "description": "Shopee shop profiles, item details, category tree nodes and mall shop records across eight markets.",
        "properties": {
          "items": {
            "type": "string",
            "title": "Shopee shops, items & categories",
            "description": "Dataset containing Shopee shop, item, category and mall-shop records.",
            "template": "{{links.apiDefaultDatasetUrl}}/items"
          }
        }
      },
      "defaultMemoryMbytes": 1024,
      "minMemoryMbytes": 1024,
      "storages": {
        "dataset": {
          "actorSpecification": 1,
          "views": {
            "overview": {
              "title": "Shops, items & categories",
              "transformation": {
                "fields": [
                  "recordType",
                  "market",
                  "shopName",
                  "title",
                  "categoryName",
                  "price",
                  "currency",
                  "ratingStar",
                  "followerCount"
                ]
              },
              "display": {
                "component": "table",
                "properties": {}
              }
            }
          }
        }
      },
      "environmentVariables": {}
    },
    "buildNumber": "1.0.2",
    "imageDigest": "c2c783fdd9b8e90509ff861437757374b336339d0659acf5973dd63715fb185f",
    "actVersion": {
      "sourceType": "SOURCE_FILES",
      "buildTag": "latest",
      "versionNumber": "1.0"
    },
    "usage": {
      "ACTOR_COMPUTE_UNITS": 0.013956666666666666
    }
  }
}