{"openapi":"3.1.0","info":{"title":"Regional Price Check API - Geo Pricing in 4 Regions","version":"1.0.0","description":"Check one pricing or shop page from four vantage points at once (US, Singapore, London, Taiwan): price, currency, country-site redirect, language, availability and cookie-consent walls side by side, with a price table converted to one currency. About 40% of the pricing, shop and news pages we sampled show region-specific content. Honest crawler, no proxies pretending to be visitors; a refused region is reported, never replaced.\n\nAll endpoints accept GET (query string) or POST (JSON body). Errors use one shape: `{\"success\": false, \"error\": {\"code\", \"message\", \"retryable\"}}`. When a numeric `Retry-After` header is present, `error.retryAfterSeconds` is included.","contact":{"name":"TidyTools","url":"https://apify.com/tidytools"}},"servers":[{"url":"https://webcapture-api.yukailin.workers.dev","description":"Origin (reachable only through the marketplace gateway)"}],"tags":[{"name":"Price Check"}],"paths":{"/api/v1/price-check":{"get":{"operationId":"priceCheckGet","summary":"Compare prices, currency and country site of one URL across regions (GET)","description":"Opens one pricing, product or shop page from up to four fixed places at the same time (US Phoenix, Singapore, London, Taiwan) and compares what a visitor there gets: price and currency (page text, JSON-LD offers and price meta tags; \"S$\", \"NT$\", \"£\", \"€\", ISO codes and bare \"$\" resolved from structured data, the page and the country site), the country site it redirected to, HTTP status, page language, blocks and walls (\"not available in your region\", cookie-consent walls, \"choose your country\" pickers, 404s) and text similarity, plus a price table converted to one currency. These are four fixed vantage points, not any country. Each region's result really comes from that region: a refused region is reported as refused, never silently replaced by another. Honest crawler: one identifying User-Agent, robots.txt honored, no logins, no cookies, no CAPTCHA solving. Typical time 2-6 s; up to 58 s when a Taiwan browser render is needed.","tags":["Price Check"],"parameters":[{"name":"url","schema":{"type":"string"},"description":"Pricing, product or store page. A bare domain such as `example.com` is accepted (https is assumed). Private, local and cloud-metadata addresses are refused.","required":true,"example":"https://www.spotify.com/premium/","in":"query"},{"name":"regions","schema":{"type":"string","default":"us,sg,eu,tw"},"description":"Comma-separated vantage points: `us` (Phoenix), `sg` (Singapore), `eu` (London, UK), `tw` (Taiwan). Default: all four. Each region is one network fetch; fewer regions = faster.","required":false,"example":"us,sg,eu,tw","in":"query"},{"name":"mode","schema":{"type":"string","default":"auto","enum":["auto","http","browser"]},"description":"`auto` (default): plain HTTP, and a Taiwan page that is still a JavaScript shell (or refused over HTTP) is rendered once in a Taiwan browser. `http`: HTTP only (fastest). `browser`: Taiwan renders in a browser; the other regions have no browser and stay on HTTP.","required":false,"in":"query"},{"name":"convertTo","schema":{"type":"string","default":"USD","enum":["USD","EUR","GBP","SGD","TWD","none"]},"description":"Convert the price table to this currency with daily exchange rates. `none` = no conversion.","required":false,"in":"query"},{"name":"priceNear","schema":{"type":"string"},"description":"Comma-separated anchor texts (a plan name such as `Premium Individual`): keep only the prices that follow one of them.","required":false,"example":"Premium Individual","in":"query"},{"name":"cssSelector","schema":{"type":"string"},"description":"Read prices only from the part of the page matching this CSS selector.","required":false,"in":"query"},{"name":"compareOn","schema":{"type":"string","default":"currency,price,redirect,language,availability,consent_wall,content"},"description":"Comma-separated aspects that count for `differs`: currency, price, redirect, language, availability, consent_wall, content. Default: all.","required":false,"in":"query"},{"name":"similarityThreshold","schema":{"type":"integer","default":80,"minimum":0,"maximum":100},"description":"Text similarity (0-100) below which `content` counts as different.","required":false,"in":"query"},{"name":"includeText","schema":{"type":"boolean","default":false},"description":"Also return each region's visible text (cut at 20,000 characters).","required":false,"in":"query"},{"name":"respectRobots","schema":{"type":"boolean","default":true},"description":"Honor the site's robots.txt for our crawler token.","required":false,"in":"query"},{"name":"timeoutMs","schema":{"type":"integer","default":20000,"minimum":5000,"maximum":30000},"description":"Timeout per region fetch in milliseconds. The whole call is limited to 58 s.","required":false,"in":"query"},{"name":"waitUntil","schema":{"type":"string","default":"load","enum":["load","domcontentloaded","networkidle2"]},"description":"Browser pages: when the page counts as loaded.","required":false,"in":"query"}],"responses":{"200":{"description":"Success.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"const":true},"url":{"type":"string"},"differs":{"type":"boolean","description":"true when the page differs between the regions that returned it, on at least one of the aspects in `compareOn`."},"differences":{"type":"array","description":"What differs: `currency`, `price`, `redirect` (country site), `language`, `availability`, `consent_wall`, `content` (text similarity below `similarityThreshold`).","items":{"type":"string","enum":["currency","price","redirect","language","availability","consent_wall","content"]}},"summary":{"type":"string","description":"One readable sentence about the differences."},"pricesSummary":{"type":"string","description":"One line: the first price per region."},"currencies":{"type":"string"},"regionsChecked":{"type":"array","items":{"type":"string","enum":["us","sg","eu","tw"]}},"regionsDelivered":{"type":"integer"},"comparison":{"type":"object","description":"Per-aspect detail: currency, main price, locale (country site), language, status per region; text similarity (min, pair, threshold); `accessIssues` for regions that were refused.","additionalProperties":true},"priceTable":{"type":"array","description":"Row i = the i-th non-zero price of each region, with `inUSD` (or your `convertTo` currency) when exchange rates were available. Free plans and \"$0 for 1 month\" trials are left out so paid plans line up.","items":{"type":"object","properties":{"position":{"type":"integer"},"us":{"type":"object","properties":{"amount":{"type":"number"},"currency":{"type":"string"},"display":{"type":"string"},"period":{"type":"string","nullable":true},"inUSD":{"type":"number","nullable":true}}},"sg":{"type":"object","properties":{"amount":{"type":"number"},"currency":{"type":"string"},"display":{"type":"string"},"period":{"type":"string","nullable":true},"inUSD":{"type":"number","nullable":true}}},"eu":{"type":"object","properties":{"amount":{"type":"number"},"currency":{"type":"string"},"display":{"type":"string"},"period":{"type":"string","nullable":true},"inUSD":{"type":"number","nullable":true}}},"tw":{"type":"object","properties":{"amount":{"type":"number"},"currency":{"type":"string"},"display":{"type":"string"},"period":{"type":"string","nullable":true},"inUSD":{"type":"number","nullable":true}}}}}},"regions":{"type":"object","description":"One object per requested region: `success`, `status` (ok, blocked, geo_blocked, consent_wall, country_picker, not_found, timeout...), `httpStatus`, `finalUrl`, `locale`, `title`, `language`, `currency` (and `currencySource`; `currencyAssumed: true` when a bare $ could not be resolved), `mainPrice`, `prices`, `structuredPrices`, `availability`, `renderedWith`, `attempts`. A refused region carries `status` and `error`.","additionalProperties":true},"fx":{"type":"object","nullable":true,"description":"Exchange-rate source for the converted values (daily rates), null with convertTo=none or when rates could not be loaded.","properties":{"base":{"type":"string"},"date":{"type":"string","nullable":true},"source":{"type":"string"}}},"userAgent":{"type":"string"},"checkedAt":{"type":"string"},"durationMs":{"type":"integer"}}},"example":{"success":true,"url":"https://www.spotify.com/premium/","differs":true,"differences":["currency","price","redirect","language"],"summary":"Currency differs (US USD, Singapore SGD, London GBP, Taiwan TWD); prices differ (first price: US $12.99, Singapore $11.98, London £12.99, Taiwan $168); different country site (US www.spotify.com/us, Singapore www.spotify.com/sg-en, London www.spotify.com/uk, Taiwan www.spotify.com/tw); language diff…","pricesSummary":"US: $12.99 | Singapore: $11.98 | London: £12.99 | Taiwan: $168","currencies":"USD, SGD, GBP, TWD","regionsChecked":["us","sg","eu","tw"],"regionsDelivered":4,"comparison":{"regionsCompared":["us","sg","eu","tw"],"differs":true,"differences":["currency","price","redirect","language"],"accessIssues":null,"currencyByRegion":{"us":"USD","sg":"SGD","eu":"GBP","tw":"TWD"},"mainPriceByRegion":{"us":"$12.99","sg":"$11.98","eu":"£12.99","tw":"$168"},"localeByRegion":{"us":"www.spotify.com/us","sg":"www.spotify.com/sg-en","eu":"www.spotify.com/uk","tw":"www.spotify.com/tw"},"languageByRegion":{"us":"en-us","sg":"en-sg","eu":"en-gb","tw":"zh-hant"},"statusByRegion":{"us":"ok","sg":"ok","eu":"ok","tw":"ok"},"textSimilarity":{"min":0,"pair":"us/tw","threshold":0.8,"pairs":{"us/sg":0.078,"us/eu":0.391,"us/tw":0,"sg/eu":0.12,"sg/tw":0.001,"eu/tw":0}}},"priceTable":[{"position":1,"us":{"amount":12.99,"currency":"USD","display":"$12.99","period":"month","inUSD":12.99},"sg":{"amount":11.98,"currency":"SGD","display":"$11.98","period":"month","inUSD":9.36},"eu":{"amount":12.99,"currency":"GBP","display":"£12.99","period":"month","inUSD":17.18},"tw":{"amount":168,"currency":"TWD","display":"$168","inUSD":5.27}},{"position":2,"us":{"amount":6.99,"currency":"USD","display":"$6.99","period":"month","inUSD":6.99},"sg":{"amount":6.48,"currency":"SGD","display":"$6.48","period":"month","inUSD":5.06},"eu":{"amount":5.99,"currency":"GBP","display":"£5.99","period":"month","inUSD":7.92},"tw":{"amount":168,"currency":"TWD","display":"$168","period":"month","inUSD":5.27}},{"position":3,"us":null,"sg":{"amount":16.98,"currency":"SGD","display":"$16.98","period":"month","inUSD":13.27},"eu":null,"tw":{"amount":88,"currency":"TWD","display":"$88","inUSD":2.76}},{"position":4,"us":null,"sg":{"amount":20.98,"currency":"SGD","display":"$20.98","period":"month","inUSD":16.4},"eu":null,"tw":{"amount":88,"currency":"TWD","display":"$88","period":"month","inUSD":2.76}}],"regions":{"us":{"region":"us","location":"United States (Phoenix, Oracle data center)","success":true,"status":"ok","httpStatus":200,"finalUrl":"https://www.spotify.com/us/premium/","redirected":true,"locale":"www.spotify.com/us","title":"Spotify Premium - Spotify (USA)","language":"en-us","languageSource":"html","currency":"USD","currencySource":"text","currencies":[{"currency":"USD","count":3}],"mainPrice":{"amount":12.99,"currency":"USD","display":"$12.99","period":"month","source":"text"},"prices":[{"amount":0,"currency":"USD","display":"$0","period":null,"source":"text","context":"th for $0 View all plans Premium Individual only. $0 for 1 month, then $12.99 per month afte"},{"amount":12.99,"currency":"USD","display":"$12.99","period":"month","source":"text","context":"ans Premium Individual only. $0 for 1 month, then $12.99 per month after. Offer only available i"},{"amount":6.99,"currency":"USD","display":"$6.99","period":"month","source":"text","context":"ime $0 for 1 month Premium Student $0 for 1 month $6.99 / month after 1 verified Premium accoun"}],"structuredPrices":[],"priceCount":3,"availability":null,"countryPicker":false,"textChars":3881,"renderedWith":"http","attempts":["us/http: ok (HTTP 200)"]},"sg":{"region":"sg","location":"Singapore (Oracle data center)","success":true,"status":"ok","httpStatus":200,"finalUrl":"https://www.spotify.com/sg-en/premium/","redirected":true,"locale":"www.spotify.com/sg-en","title":"Spotify Premium - Spotify (Singapore)","language":"en-sg","languageSource":"html","currency":"SGD","currencySource":"text","currencies":[{"currency":"SGD","count":5}],"mainPrice":{"amount":11.98,"currency":"SGD","display":"$11.98","period":"month","source":"text"},"prices":[{"amount":0,"currency":"SGD","display":"$0","period":null,"source":"text","context":"time. \\+ 2 more $0 for 1 month Premium Individual $0 for 1 month $11.98/month after 1 Premiu"},{"amount":11.98,"currency":"SGD","display":"$11.98","period":"month","source":"text","context":"$0 for 1 month Premium Individual $0 for 1 month $11.98/month after 1 Premium account Cancel an"},{"amount":6.48,"currency":"SGD","display":"$6.48","period":"month","source":"text","context":"ly. $0 for 1 month Premium Student $0 for 1 month $6.48/month after 1 verified Premium account"},{"amount":16.98,"currency":"SGD","display":"$16.98","period":"month","source":"text","context":"osts $11.98 per month, the Premium Duo plan costs $16.98 per month, the Premium Family plan cost"}],"structuredPrices":[],"priceCount":5,"availability":null,"countryPicker":false,"textChars":4450,"renderedWith":"http","attempts":["sg/http: ok (HTTP 200)"]},"eu":{"region":"eu","location":"United Kingdom (London, Oracle data center)","success":true,"status":"ok","httpStatus":200,"finalUrl":"https://www.spotify.com/uk/premium/","redirected":true,"locale":"www.spotify.com/uk","title":"Spotify Premium (United Kingdom) - Try 1 month for £0","language":"en-gb","languageSource":"html","currency":"GBP","currencySource":"text","currencies":[{"currency":"GBP","count":3}],"mainPrice":{"amount":12.99,"currency":"GBP","display":"£12.99","period":"month","source":"text"},"prices":[{"amount":0,"currency":"GBP","display":"£0","period":null,"source":"text","context":"th for £0 View all plans Premium Individual only. £0 for 1 month, then £12.99 per month afte"},{"amount":12.99,"currency":"GBP","display":"£12.99","period":"month","source":"text","context":"ans Premium Individual only. £0 for 1 month, then £12.99 per month after. Offer only available i"},{"amount":5.99,"currency":"GBP","display":"£5.99","period":"month","source":"text","context":"e £0 for 4 months Premium Student £0 for 4 months £5.99/month after 1 verified Premium account"}],"structuredPrices":[],"priceCount":3,"availability":null,"countryPicker":false,"textChars":2826,"renderedWith":"http","attempts":["eu/http: ok (HTTP 200)"]},"tw":{"region":"tw","location":"Taiwan (residential line)","success":true,"status":"ok","httpStatus":200,"finalUrl":"https://www.spotify.com/tw/premium/","redirected":true,"locale":"www.spotify.com/tw","title":"Spotify Premium - Spotify (台灣)","language":"zh-hant","languageSource":"html","currency":"TWD","currencySource":"text","currencies":[{"currency":"TWD","count":7}],"mainPrice":{"amount":168,"currency":"TWD","display":"$168","period":null,"source":"text"},"prices":[{"amount":0,"currency":"TWD","display":"$0","period":"month","source":"text","context":"可隨時取消。 其他 2 項 1 個月只要 $0 Premium Individual 1 個月只要 $0 後續每月只要 $168 1 個 Premium 帳戶 可隨時取消 試用 1 個"},{"amount":168,"currency":"TWD","display":"$168","period":null,"source":"text","context":"2 項 1 個月只要 $0 Premium Individual 1 個月只要 $0 後續每月只要 $168 1 個 Premium 帳戶 可隨時取消 試用 1 個月只要 $0 前 1 個"},{"amount":168,"currency":"TWD","display":"$168","period":"month","source":"text","context":"個 Premium 帳戶 可隨時取消 試用 1 個月只要 $0 前 1 個月只要 $0，之後每月 $168。 優惠僅限未曾試用 Premium 的使用者。須遵守相關條款。 1 個月只要"},{"amount":88,"currency":"TWD","display":"$88","period":null,"source":"text","context":"守相關條款。 1 個月只要 $0 Premium Student 1 個月只要 $0 後續每月只要 $88 1 個經驗證的 Premium 帳戶 符合資格的學生可享折扣 可隨時取消 試用"}],"structuredPrices":[],"priceCount":7,"availability":null,"countryPicker":false,"textChars":2030,"renderedWith":"http","attempts":["tw/http: ok (HTTP 200)"]}},"fx":{"base":"USD","date":"Sat, 03 Oct 2026 00:02:32 +0000","source":"ExchangeRate-API open access (open.er-api.com), daily rates"},"userAgent":"Mozilla/5.0 (compatible; TidyToolsSmartFetch/1.0; +https://apify.com/tidytools/smart-fetch)","checkedAt":"2026-10-03T04:21:28.167Z","durationMs":2671}}}},"400":{"description":"Invalid parameter (`invalid_request`) or a private/local target (`url_not_allowed`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"},"example":{"success":false,"error":{"code":"url_not_allowed","message":"private, local and reserved hosts are not allowed"}}}}},"413":{"description":"Request body or target document too large (`too_large`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"422":{"description":"`no_region_delivered`: none of the requested regions returned the page (blocked, 404, robots.txt, timeout...). `error.details.regions` has each region's status. Also `url_not_allowed` (400) for private addresses.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"},"example":{"success":false,"error":{"code":"no_region_delivered","message":"No region returned the page: us not_found, sg not_found, eu not_found, tw not_found.","details":{"regions":{"us":{"status":"not_found","httpStatus":404,"error":"the page does not exist (HTTP 404)"},"sg":{"status":"not_found","httpStatus":404,"error":"the page does not exist (HTTP 404)"},"eu":{"status":"not_found","httpStatus":404,"error":"the page does not exist (HTTP 404)"},"tw":{"status":"not_found","httpStatus":404,"error":"the page does not exist (HTTP 404)"}}}}}}}},"504":{"description":"`timeout`: the whole call used its time budget.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}},"post":{"operationId":"priceCheck","summary":"Compare prices, currency and country site of one URL across regions","description":"Opens one pricing, product or shop page from up to four fixed places at the same time (US Phoenix, Singapore, London, Taiwan) and compares what a visitor there gets: price and currency (page text, JSON-LD offers and price meta tags; \"S$\", \"NT$\", \"£\", \"€\", ISO codes and bare \"$\" resolved from structured data, the page and the country site), the country site it redirected to, HTTP status, page language, blocks and walls (\"not available in your region\", cookie-consent walls, \"choose your country\" pickers, 404s) and text similarity, plus a price table converted to one currency. These are four fixed vantage points, not any country. Each region's result really comes from that region: a refused region is reported as refused, never silently replaced by another. Honest crawler: one identifying User-Agent, robots.txt honored, no logins, no cookies, no CAPTCHA solving. Typical time 2-6 s; up to 58 s when a Taiwan browser render is needed.\n\nThe same parameters as the GET form, sent as a JSON body.","tags":["Price Check"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"url":{"type":"string","description":"Pricing, product or store page. A bare domain such as `example.com` is accepted (https is assumed). Private, local and cloud-metadata addresses are refused."},"regions":{"type":"string","default":"us,sg,eu,tw","description":"Comma-separated vantage points: `us` (Phoenix), `sg` (Singapore), `eu` (London, UK), `tw` (Taiwan). Default: all four. Each region is one network fetch; fewer regions = faster."},"mode":{"type":"string","default":"auto","enum":["auto","http","browser"],"description":"`auto` (default): plain HTTP, and a Taiwan page that is still a JavaScript shell (or refused over HTTP) is rendered once in a Taiwan browser. `http`: HTTP only (fastest). `browser`: Taiwan renders in a browser; the other regions have no browser and stay on HTTP."},"convertTo":{"type":"string","default":"USD","enum":["USD","EUR","GBP","SGD","TWD","none"],"description":"Convert the price table to this currency with daily exchange rates. `none` = no conversion."},"priceNear":{"type":"string","description":"Comma-separated anchor texts (a plan name such as `Premium Individual`): keep only the prices that follow one of them."},"cssSelector":{"type":"string","description":"Read prices only from the part of the page matching this CSS selector."},"compareOn":{"type":"string","default":"currency,price,redirect,language,availability,consent_wall,content","description":"Comma-separated aspects that count for `differs`: currency, price, redirect, language, availability, consent_wall, content. Default: all."},"similarityThreshold":{"type":"integer","default":80,"minimum":0,"maximum":100,"description":"Text similarity (0-100) below which `content` counts as different."},"includeText":{"type":"boolean","default":false,"description":"Also return each region's visible text (cut at 20,000 characters)."},"respectRobots":{"type":"boolean","default":true,"description":"Honor the site's robots.txt for our crawler token."},"timeoutMs":{"type":"integer","default":20000,"minimum":5000,"maximum":30000,"description":"Timeout per region fetch in milliseconds. The whole call is limited to 58 s."},"waitUntil":{"type":"string","default":"load","enum":["load","domcontentloaded","networkidle2"],"description":"Browser pages: when the page counts as loaded."}},"required":["url"]}}}},"responses":{"200":{"description":"Success.","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"const":true},"url":{"type":"string"},"differs":{"type":"boolean","description":"true when the page differs between the regions that returned it, on at least one of the aspects in `compareOn`."},"differences":{"type":"array","description":"What differs: `currency`, `price`, `redirect` (country site), `language`, `availability`, `consent_wall`, `content` (text similarity below `similarityThreshold`).","items":{"type":"string","enum":["currency","price","redirect","language","availability","consent_wall","content"]}},"summary":{"type":"string","description":"One readable sentence about the differences."},"pricesSummary":{"type":"string","description":"One line: the first price per region."},"currencies":{"type":"string"},"regionsChecked":{"type":"array","items":{"type":"string","enum":["us","sg","eu","tw"]}},"regionsDelivered":{"type":"integer"},"comparison":{"type":"object","description":"Per-aspect detail: currency, main price, locale (country site), language, status per region; text similarity (min, pair, threshold); `accessIssues` for regions that were refused.","additionalProperties":true},"priceTable":{"type":"array","description":"Row i = the i-th non-zero price of each region, with `inUSD` (or your `convertTo` currency) when exchange rates were available. Free plans and \"$0 for 1 month\" trials are left out so paid plans line up.","items":{"type":"object","properties":{"position":{"type":"integer"},"us":{"type":"object","properties":{"amount":{"type":"number"},"currency":{"type":"string"},"display":{"type":"string"},"period":{"type":"string","nullable":true},"inUSD":{"type":"number","nullable":true}}},"sg":{"type":"object","properties":{"amount":{"type":"number"},"currency":{"type":"string"},"display":{"type":"string"},"period":{"type":"string","nullable":true},"inUSD":{"type":"number","nullable":true}}},"eu":{"type":"object","properties":{"amount":{"type":"number"},"currency":{"type":"string"},"display":{"type":"string"},"period":{"type":"string","nullable":true},"inUSD":{"type":"number","nullable":true}}},"tw":{"type":"object","properties":{"amount":{"type":"number"},"currency":{"type":"string"},"display":{"type":"string"},"period":{"type":"string","nullable":true},"inUSD":{"type":"number","nullable":true}}}}}},"regions":{"type":"object","description":"One object per requested region: `success`, `status` (ok, blocked, geo_blocked, consent_wall, country_picker, not_found, timeout...), `httpStatus`, `finalUrl`, `locale`, `title`, `language`, `currency` (and `currencySource`; `currencyAssumed: true` when a bare $ could not be resolved), `mainPrice`, `prices`, `structuredPrices`, `availability`, `renderedWith`, `attempts`. A refused region carries `status` and `error`.","additionalProperties":true},"fx":{"type":"object","nullable":true,"description":"Exchange-rate source for the converted values (daily rates), null with convertTo=none or when rates could not be loaded.","properties":{"base":{"type":"string"},"date":{"type":"string","nullable":true},"source":{"type":"string"}}},"userAgent":{"type":"string"},"checkedAt":{"type":"string"},"durationMs":{"type":"integer"}}},"example":{"success":true,"url":"https://www.spotify.com/premium/","differs":true,"differences":["currency","price","redirect","language"],"summary":"Currency differs (US USD, Singapore SGD, London GBP, Taiwan TWD); prices differ (first price: US $12.99, Singapore $11.98, London £12.99, Taiwan $168); different country site (US www.spotify.com/us, Singapore www.spotify.com/sg-en, London www.spotify.com/uk, Taiwan www.spotify.com/tw); language diff…","pricesSummary":"US: $12.99 | Singapore: $11.98 | London: £12.99 | Taiwan: $168","currencies":"USD, SGD, GBP, TWD","regionsChecked":["us","sg","eu","tw"],"regionsDelivered":4,"comparison":{"regionsCompared":["us","sg","eu","tw"],"differs":true,"differences":["currency","price","redirect","language"],"accessIssues":null,"currencyByRegion":{"us":"USD","sg":"SGD","eu":"GBP","tw":"TWD"},"mainPriceByRegion":{"us":"$12.99","sg":"$11.98","eu":"£12.99","tw":"$168"},"localeByRegion":{"us":"www.spotify.com/us","sg":"www.spotify.com/sg-en","eu":"www.spotify.com/uk","tw":"www.spotify.com/tw"},"languageByRegion":{"us":"en-us","sg":"en-sg","eu":"en-gb","tw":"zh-hant"},"statusByRegion":{"us":"ok","sg":"ok","eu":"ok","tw":"ok"},"textSimilarity":{"min":0,"pair":"us/tw","threshold":0.8,"pairs":{"us/sg":0.078,"us/eu":0.391,"us/tw":0,"sg/eu":0.12,"sg/tw":0.001,"eu/tw":0}}},"priceTable":[{"position":1,"us":{"amount":12.99,"currency":"USD","display":"$12.99","period":"month","inUSD":12.99},"sg":{"amount":11.98,"currency":"SGD","display":"$11.98","period":"month","inUSD":9.36},"eu":{"amount":12.99,"currency":"GBP","display":"£12.99","period":"month","inUSD":17.18},"tw":{"amount":168,"currency":"TWD","display":"$168","inUSD":5.27}},{"position":2,"us":{"amount":6.99,"currency":"USD","display":"$6.99","period":"month","inUSD":6.99},"sg":{"amount":6.48,"currency":"SGD","display":"$6.48","period":"month","inUSD":5.06},"eu":{"amount":5.99,"currency":"GBP","display":"£5.99","period":"month","inUSD":7.92},"tw":{"amount":168,"currency":"TWD","display":"$168","period":"month","inUSD":5.27}},{"position":3,"us":null,"sg":{"amount":16.98,"currency":"SGD","display":"$16.98","period":"month","inUSD":13.27},"eu":null,"tw":{"amount":88,"currency":"TWD","display":"$88","inUSD":2.76}},{"position":4,"us":null,"sg":{"amount":20.98,"currency":"SGD","display":"$20.98","period":"month","inUSD":16.4},"eu":null,"tw":{"amount":88,"currency":"TWD","display":"$88","period":"month","inUSD":2.76}}],"regions":{"us":{"region":"us","location":"United States (Phoenix, Oracle data center)","success":true,"status":"ok","httpStatus":200,"finalUrl":"https://www.spotify.com/us/premium/","redirected":true,"locale":"www.spotify.com/us","title":"Spotify Premium - Spotify (USA)","language":"en-us","languageSource":"html","currency":"USD","currencySource":"text","currencies":[{"currency":"USD","count":3}],"mainPrice":{"amount":12.99,"currency":"USD","display":"$12.99","period":"month","source":"text"},"prices":[{"amount":0,"currency":"USD","display":"$0","period":null,"source":"text","context":"th for $0 View all plans Premium Individual only. $0 for 1 month, then $12.99 per month afte"},{"amount":12.99,"currency":"USD","display":"$12.99","period":"month","source":"text","context":"ans Premium Individual only. $0 for 1 month, then $12.99 per month after. Offer only available i"},{"amount":6.99,"currency":"USD","display":"$6.99","period":"month","source":"text","context":"ime $0 for 1 month Premium Student $0 for 1 month $6.99 / month after 1 verified Premium accoun"}],"structuredPrices":[],"priceCount":3,"availability":null,"countryPicker":false,"textChars":3881,"renderedWith":"http","attempts":["us/http: ok (HTTP 200)"]},"sg":{"region":"sg","location":"Singapore (Oracle data center)","success":true,"status":"ok","httpStatus":200,"finalUrl":"https://www.spotify.com/sg-en/premium/","redirected":true,"locale":"www.spotify.com/sg-en","title":"Spotify Premium - Spotify (Singapore)","language":"en-sg","languageSource":"html","currency":"SGD","currencySource":"text","currencies":[{"currency":"SGD","count":5}],"mainPrice":{"amount":11.98,"currency":"SGD","display":"$11.98","period":"month","source":"text"},"prices":[{"amount":0,"currency":"SGD","display":"$0","period":null,"source":"text","context":"time. \\+ 2 more $0 for 1 month Premium Individual $0 for 1 month $11.98/month after 1 Premiu"},{"amount":11.98,"currency":"SGD","display":"$11.98","period":"month","source":"text","context":"$0 for 1 month Premium Individual $0 for 1 month $11.98/month after 1 Premium account Cancel an"},{"amount":6.48,"currency":"SGD","display":"$6.48","period":"month","source":"text","context":"ly. $0 for 1 month Premium Student $0 for 1 month $6.48/month after 1 verified Premium account"},{"amount":16.98,"currency":"SGD","display":"$16.98","period":"month","source":"text","context":"osts $11.98 per month, the Premium Duo plan costs $16.98 per month, the Premium Family plan cost"}],"structuredPrices":[],"priceCount":5,"availability":null,"countryPicker":false,"textChars":4450,"renderedWith":"http","attempts":["sg/http: ok (HTTP 200)"]},"eu":{"region":"eu","location":"United Kingdom (London, Oracle data center)","success":true,"status":"ok","httpStatus":200,"finalUrl":"https://www.spotify.com/uk/premium/","redirected":true,"locale":"www.spotify.com/uk","title":"Spotify Premium (United Kingdom) - Try 1 month for £0","language":"en-gb","languageSource":"html","currency":"GBP","currencySource":"text","currencies":[{"currency":"GBP","count":3}],"mainPrice":{"amount":12.99,"currency":"GBP","display":"£12.99","period":"month","source":"text"},"prices":[{"amount":0,"currency":"GBP","display":"£0","period":null,"source":"text","context":"th for £0 View all plans Premium Individual only. £0 for 1 month, then £12.99 per month afte"},{"amount":12.99,"currency":"GBP","display":"£12.99","period":"month","source":"text","context":"ans Premium Individual only. £0 for 1 month, then £12.99 per month after. Offer only available i"},{"amount":5.99,"currency":"GBP","display":"£5.99","period":"month","source":"text","context":"e £0 for 4 months Premium Student £0 for 4 months £5.99/month after 1 verified Premium account"}],"structuredPrices":[],"priceCount":3,"availability":null,"countryPicker":false,"textChars":2826,"renderedWith":"http","attempts":["eu/http: ok (HTTP 200)"]},"tw":{"region":"tw","location":"Taiwan (residential line)","success":true,"status":"ok","httpStatus":200,"finalUrl":"https://www.spotify.com/tw/premium/","redirected":true,"locale":"www.spotify.com/tw","title":"Spotify Premium - Spotify (台灣)","language":"zh-hant","languageSource":"html","currency":"TWD","currencySource":"text","currencies":[{"currency":"TWD","count":7}],"mainPrice":{"amount":168,"currency":"TWD","display":"$168","period":null,"source":"text"},"prices":[{"amount":0,"currency":"TWD","display":"$0","period":"month","source":"text","context":"可隨時取消。 其他 2 項 1 個月只要 $0 Premium Individual 1 個月只要 $0 後續每月只要 $168 1 個 Premium 帳戶 可隨時取消 試用 1 個"},{"amount":168,"currency":"TWD","display":"$168","period":null,"source":"text","context":"2 項 1 個月只要 $0 Premium Individual 1 個月只要 $0 後續每月只要 $168 1 個 Premium 帳戶 可隨時取消 試用 1 個月只要 $0 前 1 個"},{"amount":168,"currency":"TWD","display":"$168","period":"month","source":"text","context":"個 Premium 帳戶 可隨時取消 試用 1 個月只要 $0 前 1 個月只要 $0，之後每月 $168。 優惠僅限未曾試用 Premium 的使用者。須遵守相關條款。 1 個月只要"},{"amount":88,"currency":"TWD","display":"$88","period":null,"source":"text","context":"守相關條款。 1 個月只要 $0 Premium Student 1 個月只要 $0 後續每月只要 $88 1 個經驗證的 Premium 帳戶 符合資格的學生可享折扣 可隨時取消 試用"}],"structuredPrices":[],"priceCount":7,"availability":null,"countryPicker":false,"textChars":2030,"renderedWith":"http","attempts":["tw/http: ok (HTTP 200)"]}},"fx":{"base":"USD","date":"Sat, 03 Oct 2026 00:02:32 +0000","source":"ExchangeRate-API open access (open.er-api.com), daily rates"},"userAgent":"Mozilla/5.0 (compatible; TidyToolsSmartFetch/1.0; +https://apify.com/tidytools/smart-fetch)","checkedAt":"2026-10-03T04:21:28.167Z","durationMs":2671}}}},"400":{"description":"Invalid parameter (`invalid_request`) or a private/local target (`url_not_allowed`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"},"example":{"success":false,"error":{"code":"url_not_allowed","message":"private, local and reserved hosts are not allowed"}}}}},"413":{"description":"Request body or target document too large (`too_large`).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"422":{"description":"`no_region_delivered`: none of the requested regions returned the page (blocked, 404, robots.txt, timeout...). `error.details.regions` has each region's status. Also `url_not_allowed` (400) for private addresses.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"},"example":{"success":false,"error":{"code":"no_region_delivered","message":"No region returned the page: us not_found, sg not_found, eu not_found, tw not_found.","details":{"regions":{"us":{"status":"not_found","httpStatus":404,"error":"the page does not exist (HTTP 404)"},"sg":{"status":"not_found","httpStatus":404,"error":"the page does not exist (HTTP 404)"},"eu":{"status":"not_found","httpStatus":404,"error":"the page does not exist (HTTP 404)"},"tw":{"status":"not_found","httpStatus":404,"error":"the page does not exist (HTTP 404)"}}}}}}}},"504":{"description":"`timeout`: the whole call used its time budget.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}}},"components":{"schemas":{"Error":{"type":"object","required":["success","error"],"properties":{"success":{"const":false},"error":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["not_configured","unauthorized","not_found","method_not_allowed","invalid_request","rate_limited","url_not_allowed","target_blocked","target_unreachable","target_error","unsupported_content","too_large","timeout","upstream_error","board_not_found","app_not_found","robots_disallowed","browser_busy","region_unavailable","no_region_delivered","location_not_found"]},"message":{"type":"string"},"retryable":{"type":"boolean","description":"true for rate_limited, timeout, upstream_error and browser_busy; false for other errors."},"retryAfterSeconds":{"type":"integer","description":"Seconds to wait before retrying, when a numeric Retry-After header is present."},"details":{"type":"object","additionalProperties":true}}}}}}}}