{
  "openapi": "3.0.1",
  "info": {
    "title": "Mercari Scraper: Japan & US Listings, Sold Prices",
    "description": "Scrape Mercari Japan and Mercari US in one run, no login: listings on sale, sold or in trade by keyword, category, search link, seller or brand. Price in yen or dollars, condition, brand, size, photos; details, translation and sold price summaries on request. Change monitor. JSON, CSV, Excel.",
    "version": "0.2",
    "x-build-id": "xtKQYyNMO2hy9vmaO"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/automation_craft~mercari-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-automation_craft-mercari-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/automation_craft~mercari-scraper/runs": {
      "post": {
        "operationId": "runs-sync-automation_craft-mercari-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/automation_craft~mercari-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-automation_craft-mercari-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": {
          "market": {
            "title": "Market",
            "enum": [
              "japan",
              "us",
              "both"
            ],
            "type": "string",
            "description": "japan reads jp.mercari.com (prices in yen), us reads mercari.com (prices in dollars), both reads the two in one run with one row shape. Left empty: japan."
          },
          "keywords": {
            "title": "Keywords",
            "type": "array",
            "description": "Search words as you would type them on Mercari, for example pokemon card, ポケモンカード, lululemon or nintendo switch. Each keyword is searched in every market the run reads. Up to 100 keywords of up to 100 characters each.",
            "items": {
              "type": "string"
            }
          },
          "searchAllListings": {
            "title": "Search every listing",
            "type": "boolean",
            "description": "Search every listing of each market the run reads, without a keyword, with the filters below (for example every listing in a price band, newest first). Not together with keywords, category ids, sellers or brands.",
            "default": false
          },
          "japanCategoryIds": {
            "title": "Mercari Japan category ids",
            "type": "array",
            "description": "Mercari Japan category ids, the number after category_id= in a jp.mercari.com search link (for example 7002 for Nintendo Switch). Checked against Mercari Japan's own category list, which this Actor carries; an unknown id is a free row. Mercari Japan only: refused when the run does not search Mercari Japan.",
            "items": {
              "type": "string"
            }
          },
          "usCategoryIds": {
            "title": "Mercari US category ids",
            "type": "array",
            "description": "Mercari US category ids (the number in a category link such as www.mercari.com/us/category/796/), for example 796 for video games. Checked against Mercari US's own list of 3,233 categories shipped with this Actor; an id not on it is a free row. Every keyword is searched in every category. Mercari US only: refused when the run does not search Mercari US.",
            "items": {
              "type": "string"
            }
          },
          "splitByDepartment": {
            "title": "Split by department (US)",
            "type": "boolean",
            "description": "Read each search once in each of Mercari US's 17 departments (Women, Men, Electronics, Toys & Collectibles and the rest), each with its own reach of listings. Not together with category ids; at most 100 searches a run, so up to 5 keywords. Mercari US only: refused when the run does not search Mercari US.",
            "default": false
          },
          "searchUrls": {
            "title": "Search links",
            "type": "array",
            "description": "Search links copied from jp.mercari.com (https://jp.mercari.com/search?keyword=...) or www.mercari.com (a search, a /us/category/ page or a /us/brand/ page). The host names the market. Each link is read as its own search with every filter on it applied as the site applies it (keyword, excluded word, category, brand, size, seller, price, condition, shipping payer, status, order, colour; on Japan also prefecture, shipping method, Mercari Shops or personal and attribute filters; on US also sold time and deals). A link with a filter Mercari does not apply for a visitor is refused with the reason, free. The filters below apply to keyword searches; the filters applied by this Actor apply to links too. Up to 100 links, each a text or {\"url\": ..., \"label\": ...}.",
            "items": {
              "type": "string"
            }
          },
          "sellerUrls": {
            "title": "Sellers and shops",
            "type": "array",
            "description": "Seller profile links (https://jp.mercari.com/user/profile/123456789 or www.mercari.com/u/<id or username>/), Mercari Shops shop links (https://jp.mercari.com/shops/profile/...) or bare seller ids: the listings of each seller or shop, filtered by the settings below (with keywords: each keyword within each seller). One market per run: set Market to Japan or US. A US username is looked up at Mercari once; an unknown one is a free row. Up to 100.",
            "items": {
              "type": "string"
            }
          },
          "listingUrls": {
            "title": "Listing links",
            "type": "array",
            "description": "Mercari listing links: https://jp.mercari.com/item/m..., https://jp.mercari.com/shops/product/... or https://www.mercari.com/us/item/m.../ (a bare id such as m12345678901 works when the run reads one market). Each link is read with its details and delivered as given; the search filters below do not apply to links. A listing that no longer exists is a free row. Up to 5,000, each a text or {\"url\": ..., \"label\": ...}.",
            "items": {
              "type": "string"
            }
          },
          "similarToListings": {
            "title": "Similar listings of (Japan)",
            "type": "array",
            "description": "Mercari Japan listing links (https://jp.mercari.com/item/m...) whose similar listings, as Mercari shows them on the listing page, are delivered (30 a page). Their rows carry title, price, status and type; other filters are checked on each listing's detail when Include details is on, and without it only filters on those fields can pass. Up to 100. Mercari Japan only: refused when the run does not search Mercari Japan.",
            "items": {
              "type": "string"
            }
          },
          "brands": {
            "title": "Brands",
            "type": "array",
            "description": "Brand names as the market lists them (Japan: NIKE, ナイキ, Supreme, ルイ・ヴィトン; US: Nike, lululemon athletica, Coach) or brand ids (the number in a brand link). On Mercari Japan a name is looked up at Mercari once per run (up to 20 names); on Mercari US it is matched against Mercari US's own brand list shipped with this Actor (28,853 brands). A name is used only when exactly one brand carries it; otherwise a free row lists the candidates. With no keyword, the brands alone are searched. One market per run: set Market to Japan or US.",
            "items": {
              "type": "string"
            }
          },
          "useJapaneseAliases": {
            "title": "Retry keywords in Japanese (Japan)",
            "type": "boolean",
            "description": "When a keyword finds no listing at all and it is a franchise name written in Chinese or English that this Actor's table knows (for example 宝可梦 or one piece), search the Japanese term sellers use (ポケモン, ワンピース) once instead. Rows say which term found them (keywordUsed, keywordMapped). Off: the search's coverage row names the term. Mercari Japan only: refused when the run does not search Mercari Japan.",
            "default": false
          },
          "statuses": {
            "title": "Status",
            "type": "array",
            "description": "on_sale (listed), sold (sold comparables) and trading (sold, the trade not yet finished; Mercari US marks it sold after the buyer rates it). Pick one or more; left empty: on_sale.",
            "items": {
              "type": "string",
              "enum": [
                "on_sale",
                "sold",
                "trading"
              ],
              "enumTitles": [
                "On sale",
                "Sold",
                "In trade (sold, not yet completed)"
              ]
            }
          },
          "sort": {
            "title": "Order",
            "enum": [
              "newest",
              "best_match",
              "price_low",
              "price_high",
              "most_liked",
              "oldest",
              "recently_sold"
            ],
            "type": "string",
            "description": "newest (the default, and the only order a monitor reads; Mercari Japan moves a listing up it when the seller edits it), best_match (Mercari's relevance order), price_low, price_high; most_liked on Mercari Japan only; oldest and recently_sold (sold and in trade listings only, by the moment of the sale) on Mercari US only. An order one of the run's markets does not serve is refused. A Mercari US run of sold or in trade listings only in best match is run as recently sold, the order Mercari applies to it; in a run of both markets that combination is refused."
          },
          "minPriceJpy": {
            "title": "Minimum price in yen (Japan)",
            "minimum": 0,
            "maximum": 9999999,
            "type": "integer",
            "description": "Whole yen. Mercari Japan only: refused when the run does not search Mercari Japan."
          },
          "maxPriceJpy": {
            "title": "Maximum price in yen (Japan)",
            "minimum": 0,
            "maximum": 9999999,
            "type": "integer",
            "description": "Whole yen. Mercari Japan only: refused when the run does not search Mercari Japan."
          },
          "minPriceUsd": {
            "title": "Minimum price in dollars (US)",
            "minimum": 0,
            "maximum": 100000,
            "type": "number",
            "description": "Lowest price in US dollars, up to two decimals. Mercari US only: refused when the run does not search Mercari US."
          },
          "maxPriceUsd": {
            "title": "Maximum price in dollars (US)",
            "minimum": 0,
            "maximum": 100000,
            "type": "number",
            "description": "Highest price in US dollars, up to two decimals. Mercari US only: refused when the run does not search Mercari US."
          },
          "conditions": {
            "title": "Condition",
            "type": "array",
            "description": "One vocabulary for both markets: new, like_new, good, fair, poor. On Mercari Japan fair covers its two middle grades (some scratches and scratches or marks); every other value is one grade on each market.",
            "items": {
              "type": "string",
              "enum": [
                "new",
                "like_new",
                "good",
                "fair",
                "poor"
              ],
              "enumTitles": [
                "New",
                "Like new",
                "Good",
                "Fair",
                "Poor"
              ]
            }
          },
          "sizeIds": {
            "title": "Size ids",
            "type": "array",
            "description": "Size ids of the market's own size list, the size_id= number in a jp.mercari.com search link (for example 3 for clothing size M) or the sizeIds number in a www.mercari.com link; checked against the list this Actor carries (Mercari US: 384 sizes). One market per run: set Market to Japan or US.",
            "items": {
              "type": "string"
            }
          },
          "colors": {
            "title": "Colour",
            "type": "array",
            "description": "The market's own colours. Mercari Japan: white, black, gray, brown, beige, green, blue, purple, yellow, pink, red, orange. Mercari US: black, grey, white, beige, red, pink, purple, blue, green, yellow, orange, brown, gold, silver (Mercari US matches only listings whose seller set a colour). A colour the market does not list is refused. One market per run: set Market to Japan or US.",
            "items": {
              "type": "string",
              "enum": [
                "white",
                "black",
                "gray",
                "grey",
                "brown",
                "beige",
                "green",
                "blue",
                "purple",
                "yellow",
                "pink",
                "red",
                "orange",
                "gold",
                "silver"
              ],
              "enumTitles": [
                "White",
                "Black",
                "Gray (Japan)",
                "Grey (US)",
                "Brown",
                "Beige",
                "Green",
                "Blue",
                "Purple",
                "Yellow",
                "Pink",
                "Red",
                "Orange",
                "Gold (US)",
                "Silver (US)"
              ]
            }
          },
          "shippingPayer": {
            "title": "Shipping paid by",
            "enum": [
              "seller",
              "buyer"
            ],
            "type": "string",
            "description": "seller: shipping included in the price (Japan 送料込み, US free shipping); buyer: the buyer pays shipping (Japan on delivery, 着払い)."
          },
          "shippingMethods": {
            "title": "Shipping method (Japan)",
            "type": "array",
            "description": "anonymous: anonymous shipping (Mercari's own delivery services); japan_post: Japan Post; no_option: methods without either. A filter of Mercari Japan alone: refused unless Market is japan (in a run of both markets it would leave the US searches unfiltered).",
            "items": {
              "type": "string",
              "enum": [
                "anonymous",
                "japan_post",
                "no_option"
              ],
              "enumTitles": [
                "Anonymous shipping",
                "Japan Post",
                "Other methods"
              ]
            }
          },
          "shippingFromPrefectures": {
            "title": "Ships from prefecture (Japan)",
            "type": "array",
            "description": "Prefectures the item ships from: ids from 1 (Hokkaido) to 47 (Okinawa), or English names such as Tokyo, Osaka or Hokkaido. A filter of Mercari Japan alone: refused unless Market is japan (in a run of both markets it would leave the US searches unfiltered).",
            "items": {
              "type": "string"
            }
          },
          "personalListingsOnly": {
            "title": "Personal listings only (Japan)",
            "type": "boolean",
            "description": "Leave out Mercari Shops products, so sold comparables are sales between people (a Japan sold search is otherwise mostly shop products). Mercari Japan only: refused when the run does not search Mercari Japan.",
            "default": false
          },
          "shopListingsOnly": {
            "title": "Mercari Shops listings only (Japan)",
            "type": "boolean",
            "description": "Only Mercari Shops products (shops' listings), no personal listings. A filter of Mercari Japan alone: refused unless Market is japan (in a run of both markets it would leave the US searches unfiltered).",
            "default": false
          },
          "dealsOnly": {
            "title": "Deals only (US)",
            "type": "boolean",
            "description": "Only listings whose price is below their original price (Mercari's own deals filter; every delivered row is checked for it). A filter of Mercari US alone: refused unless Market is us (in a run of both markets it would leave the Japan searches unfiltered).",
            "default": false
          },
          "soldWithinDays": {
            "title": "Sold within days (US)",
            "minimum": 1,
            "maximum": 365,
            "type": "integer",
            "description": "Only listings sold within this many days before the run started, by the moment of the sale Mercari keeps. Needs Status set to sold, in trade or both. A filter of Mercari US alone: refused unless Market is us (in a run of both markets it would leave the Japan searches unfiltered)."
          },
          "postedWithinDays": {
            "title": "Posted within days",
            "minimum": 1,
            "maximum": 365,
            "type": "integer",
            "description": "Only listings created within this many days before the run started. On Mercari US in newest first order the walk ends at the first page older than that; on Mercari Japan, whose newest first order is not by creation time, older rows are left out for free and the walk goes on to the page limit."
          },
          "excludeKeywords": {
            "title": "Exclude words",
            "type": "array",
            "description": "Listings whose title holds one of these words (a word of the title that starts with one, as for the title match: \"lego\" also leaves out \"LEGOスターウォーズ\"; any letter case, full width letters read as plain ones) are left out, free. For example junk, broken or ジャンク.",
            "items": {
              "type": "string"
            }
          },
          "onlyTitleMatches": {
            "title": "Only titles with every keyword word",
            "type": "boolean",
            "description": "Leave out listings whose title does not hold every word of the keyword (Mercari also returns related listings). Every row carries titleMatchesKeyword either way. A Japanese title often writes a brand in katakana: switch this on with Japanese keywords for Japan.",
            "default": false
          },
          "includePromoted": {
            "title": "Include promoted listings (US)",
            "type": "boolean",
            "description": "Mercari US moves paid promoted listings up its order; each US row says promoted true or false. Switch off to leave them out (free). Mercari Japan has no promoted listings, so a Japan run is not changed by it.",
            "default": true
          },
          "includeDescriptions": {
            "title": "Include descriptions (US)",
            "type": "boolean",
            "description": "Each Mercari US listing's full description on its row, read from the search itself (no detail read and no extra charge). Mercari US only: refused when the run does not search Mercari US.",
            "default": false
          },
          "includeDetails": {
            "title": "Include details",
            "type": "boolean",
            "description": "Read each delivered listing's detail and add it to the row (billed as Listing detail on top of Listing). Both markets: description, likes, shipping payer and fee, and the seller's rating, its count and the number of listings; a personal seller's public id, display name and profile link only with Include personal data. Mercari Japan adds comment count, hashtags, attributes, colours, shipping method, prefecture and days, auction, offers, anonymous shipping, authentication and the rating's good, normal and bad counts; a Mercari Shops product carries its shop's name, score, review count and stock by variant. Mercari US adds the sales count, shipping class, ships from state and delivery estimate, Buyer Protection fee and total, offers, in carts, Mercari Authenticate, the moment of the sale and days to sell. Every filter is checked again on the detail.",
            "default": false
          },
          "includeComments": {
            "title": "Include comments (Japan)",
            "type": "boolean",
            "description": "With Include details on (also for listing links, which are always read with their details): the listing's comments as texts with their time and whether the seller wrote them, exactly as written; with Include personal data on, also each commenter's public id and display name (userId, userName). No extra charge: they come with the detail. Mercari Japan only: refused when the run does not search Mercari Japan.",
            "default": false
          },
          "includePersonalData": {
            "title": "Include personal data",
            "type": "boolean",
            "description": "Off (the default): a personal seller's public id and profile link (sellerId, sellerUrl, on every row whose search or detail names the seller) and display name (sellerName, rows with details) are empty, and a seller id Mercari US looked up from a username you gave is not shown (searchSellerId and the search label). On: they are delivered as Mercari shows them to visitors who are not signed in. Titles, descriptions, hashtags, comment texts and Mercari Japan's translations are never masked: they come exactly as Mercari serves them, switch on or off, contact details a seller wrote included. A Mercari Shops shop's id, name and link are always delivered. Nothing behind a Mercari login is read. With it on you can also turn on Seller profiles and Seller reviews, and comments name their commenter (public id and display name). You are responsible for a lawful use of personal data, GDPR included. No extra charge.",
            "default": false
          },
          "includeSellerProfiles": {
            "title": "Seller profiles",
            "type": "boolean",
            "description": "With Include personal data on: one profile row for each private seller of the listings this run delivers on Mercari Japan and Mercari US (type seller): the seller's public id, display name and link, followers and following, introduction as written, badges (Mercari Japan's badge names; on Mercari US fast shipper, fast responder, reliable shipper, pro seller), rating with its count, number of listings and the date they joined. Mercari Japan adds the good, normal and bad rating counts; Mercari US the sales count, verifications and cancellation rate. Billed as one Seller profile per row. A Mercari Shops shop gets none (a business; its id and name are on its listings). Not with a monitor name. Refused without Include personal data.",
            "default": false
          },
          "includeSellerReviews": {
            "title": "Seller reviews",
            "type": "boolean",
            "description": "With Include personal data on: the reviews of each private seller of the listings this run delivers (type review), newest first, up to Reviews per seller: the rating as Mercari words it (good, normal or bad; on Mercari US also cancel), the text as written, the role the seller had in that sale (seller or buyer), the date, and the reviewer's public id, name and link (Mercari US adds the feedback tags and whether Mercari posted it). Billed as one Seller review per row. Not with a monitor name. Refused without Include personal data.",
            "default": false
          },
          "maxReviewsPerSeller": {
            "title": "Reviews per seller",
            "minimum": 1,
            "maximum": 1000,
            "type": "integer",
            "description": "With Seller reviews: the most review rows per seller, newest first (20 when left out). A seller with fewer reviews gives what it has."
          },
          "translateTo": {
            "title": "Translate to (Japan)",
            "enum": [
              "en",
              "zh-TW"
            ],
            "type": "string",
            "description": "Mercari Japan's own machine translation of each delivered listing's title and description (Mercari makes it on request; it may contain errors). Billed as Translation per translated row. Mercari translates its own listings only: a Mercari Shops product is not translated or charged for it. Mercari Japan only: refused when the run does not search Mercari Japan."
          },
          "currency": {
            "title": "Second currency (Japan)",
            "enum": [
              "USD",
              "EUR",
              "GBP",
              "AUD",
              "CNY",
              "TWD",
              "HKD",
              "KRW"
            ],
            "type": "string",
            "description": "Add each Mercari Japan price in this currency at the exchange rate Mercari Japan shows (read once per run; Mercari updates it daily). No extra charge. Mercari Japan only: refused when the run does not search Mercari Japan."
          },
          "shipsToCountry": {
            "title": "Check buyable from country (Japan)",
            "type": "string",
            "description": "A two letter country code (US, GB, TW, KR ...): each delivered listing says whether Mercari Japan lets a buyer in that country buy it (through its cross border partner), as Mercari answers on the listing page. Billed as Country check per answered row. A Mercari Shops product is not checked or charged for it (Mercari answers for its own listings only). Mercari Japan only: refused when the run does not search Mercari Japan."
          },
          "priceSummary": {
            "title": "Price summary per search",
            "type": "boolean",
            "description": "One extra row per search with the count, lowest, highest, average and median price, the quartiles and percentiles, the share sold, the median days to sell (Japan approximate, US from the details read), figures per status and ten listings across the price range, from the listings the search delivered. Use status sold for sold comparables. Billed as Price summary per search.",
            "default": false
          },
          "targetMarginPercent": {
            "title": "Target margin for a suggested buy price",
            "minimum": 1,
            "maximum": 95,
            "type": "integer",
            "description": "With a price summary: the suggested highest buy price, the median price of the sold and in trade listings less this percent. A rule of thumb that leaves out fees and shipping."
          },
          "onlyBelowSoldMedian": {
            "title": "Only listings under the sold median (Japan)",
            "type": "boolean",
            "description": "For each search, read up to 3 pages of its SOLD listings first, then deliver only listings on sale priced under their median price (with a Price summary row per search). Status must be on_sale. A filter of Mercari Japan alone: refused unless Market is japan (in a run of both markets it would leave the US searches unfiltered).",
            "default": false
          },
          "maxItems": {
            "title": "Maximum listings",
            "minimum": 1,
            "maximum": 100000,
            "type": "integer",
            "description": "Listing rows this run's searches and links deliver (and charge) at most. Left empty: 100. With several searches each gets an equal share first, then the rest goes to the searches that have more. A change monitor's re-checks (Check listings the searches no longer show) are bounded by Maximum listing checks instead."
          },
          "maxItemsPerSearch": {
            "title": "Maximum listings per search",
            "minimum": 1,
            "maximum": 100000,
            "type": "integer",
            "description": "Listing rows one search (a keyword in one market, a link, a seller) delivers at most, within Maximum listings."
          },
          "maxPagesPerSearch": {
            "title": "Maximum pages per search",
            "minimum": 1,
            "maximum": 100,
            "type": "integer",
            "description": "Results pages read per search (Mercari Japan about 120 listings a page, 30 for similar listings; Mercari US 100). Left empty: 10. One Mercari Japan search serves about 10,000 listings; one Mercari US search serves 1,000, and in the newest and oldest orders this Actor goes on in the next creation time window, so up to 100 pages reach up to 10,000 US listings."
          },
          "minSecondsBetweenRequests": {
            "title": "Seconds between requests",
            "minimum": 1,
            "maximum": 5,
            "type": "integer",
            "description": "A slower pace: at least this many seconds (1 to 5) between two requests to each market, one at a time. Leave it empty for the normal pace (about 0.7 seconds)."
          },
          "monitorName": {
            "title": "Monitor name",
            "type": "string",
            "description": "A short name of your own, such as pokemon-cards-jp (letters, digits, spaces and . _ , - : # ( ), up to 60 characters). Every run reads the newest pages of each search up to the page limit and pays a Results page per page read; listings the monitor delivered before are free unless they changed (with Changes too), you ask for them again (Unchanged ones too) or a re-check finds them sold, changed or removed (Check listings), each then billed as a Listing. One name belongs to one set of settings."
          },
          "monitorChanges": {
            "title": "Changes too",
            "type": "boolean",
            "description": "With a monitor name: also deliver listings the monitor delivered before whose price or status changed since (sold, in trade, price cut or rise), with the previous price and status, the change, and when the monitor first and last saw them. Billed as Listing again for a changed listing.",
            "default": false
          },
          "monitorDeliverUnchanged": {
            "title": "Unchanged ones too",
            "type": "boolean",
            "description": "With Changes too: also deliver the remembered listings that did not change (marked unchanged); each one delivered is billed as a Listing (and a Listing detail with details).",
            "default": false
          },
          "checkRemovedListings": {
            "title": "Check listings the searches no longer show",
            "type": "boolean",
            "description": "With Changes too: re-read remembered listings on sale or in trade that this run's pages did not show (a Listing check per answered read), to learn whether they sold, changed price or were removed. Each one that sold, changed or was removed is delivered as a row and billed as a Listing (plus a Listing detail with details for a changed one). Bounded by Maximum listing checks, not by Maximum listings.",
            "default": false
          },
          "maxListingChecks": {
            "title": "Maximum listing checks",
            "minimum": 1,
            "maximum": 1000,
            "type": "integer",
            "description": "Remembered listings re-read at most per run (default 100), the longest unseen first. These re-checks and the rows they deliver do not count toward Maximum listings."
          },
          "resumeFromDatasetId": {
            "title": "Resume from dataset",
            "type": "string",
            "description": "The id of a dataset of an earlier run of this Actor (17 letters and digits, from its Storage tab): the listings in it are not delivered or charged again, so an interrupted run can be continued. A dataset that cannot be read refuses the run before anything is read. A dataset of up to 200,000 rows; a larger one refuses the run, free."
          },
          "useResidentialProxy": {
            "title": "Use residential proxy (Japan)",
            "type": "boolean",
            "description": "Read Mercari Japan through Apify residential exits in Japan instead of the datacenter group (the default, which answers every call in our tests). No extra charge. Mercari Japan only: refused when the run does not search Mercari Japan.",
            "default": false
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}