# config/sources.d/14-retail-consumer-travel.yaml — retail & marketplaces, consumer brands, food & beverage, # restaurants, hospitality & travel platforms, delivery, automotive retail, loyalty (added 2026-09-08). # Every sensor below was fetched and parsed by apps/engine/src/validate.ts before being written. Investor-relations # feeds hosted on Q4 behind a Cloudflare challenge (Costco, Best Buy, Kroger IR, eBay IR, Wayfair, Chewy, Canadian # Tire, Aritzia, Roots, General Mills, Molson Coors, Kimberly-Clark, Whirlpool, Mattel, GoPro, Crocs, CarMax, # Gap, Levi's, Hyatt IR, RBI, Starbucks, Yum, Wendy's, Darden, Booking, Uber IR, DoorDash IR) are NOT sensors — # they are listed in `notes:`. `robots.txt` sensors (tier D) on the large marketplaces track AI-crawler policy shifts. sources: # ───────────────────────── A · Retailers & marketplaces ───────────────────────── - id: amazon name: Amazon domain: amazon.com homepage: https://www.aboutamazon.com categories: [retail, commerce, technology] tier: A weight: 1.5 aliases: [amazon.com, amazon inc] products: - { name: Amazon Prime, type: service, aliases: [prime] } - { name: Alexa, type: product } - { name: Kindle, type: product } - { name: Amazon Marketplace, type: service, aliases: [amazon marketplace, amazon sellers] } discover: { rss: true, sitemap: true, pages: true } notes: "AWS is the separate `aws` source. press.aboutamazon.com/rss/news-releases.xml and ir.aboutamazon.com (Q4, Cloudflare challenge) are not reachable; the About Amazon newsroom feed is." sensors: - { name: news feed, url: "https://www.aboutamazon.com/rss/feed.rss", type: RSS, connector: rss, tier: A } - { name: crawler policy (robots.txt), url: "https://www.amazon.com/robots.txt", type: FILE, connector: http, tier: D } - id: walmart name: Walmart domain: walmart.com homepage: https://corporate.walmart.com categories: [retail, commerce] tier: B weight: 1.3 aliases: [walmart inc, wal-mart] products: - { name: Walmart+, type: service, aliases: [walmart plus] } - { name: Sam's Club, type: product, aliases: [sams club] } discover: { rss: true, sitemap: true, pages: true } notes: "No RSS on corporate.walmart.com or stock.walmart.com (Q4 404); newsroom index page + robots." sensors: - { name: newsroom, url: "https://corporate.walmart.com/content/corporate/en_us/news.html", type: HTML, connector: http, tier: B } - { name: crawler policy (robots.txt), url: "https://www.walmart.com/robots.txt", type: FILE, connector: http, tier: D } - id: target name: Target domain: target.com homepage: https://corporate.target.com categories: [retail, commerce] tier: B weight: 1.2 aliases: [target corporation, target corp] discover: { rss: true, sitemap: true } sensors: - { name: press releases feed, url: "https://corporate.target.com/feeds/pressreleases", type: RSS, connector: rss, tier: B } - { name: news feed, url: "https://corporate.target.com/feeds/news", type: RSS, connector: rss, tier: B } - { name: crawler policy (robots.txt), url: "https://www.target.com/robots.txt", type: FILE, connector: http, tier: D } - id: costco name: Costco domain: costco.com homepage: https://investor.costco.com categories: [retail, commerce] tier: B weight: 1.2 aliases: [costco wholesale] discover: { rss: true, sitemap: true } notes: "investor.costco.com (Q4) sits behind a Cloudflare challenge; costco.com times out for bots. No validated sensor yet." - id: home-depot name: The Home Depot domain: homedepot.com homepage: https://corporate.homedepot.com categories: [retail, commerce] tier: B weight: 1.2 aliases: [home depot] discover: { rss: true, sitemap: true } sensors: - { name: investor news feed, url: "https://ir.homedepot.com/rss/news-releases.xml", type: RSS, connector: rss, tier: B } - { name: crawler policy (robots.txt), url: "https://www.homedepot.com/robots.txt", type: FILE, connector: http, tier: D } - id: lowes name: Lowe's domain: lowes.com homepage: https://corporate.lowes.com categories: [retail, commerce] tier: B aliases: [lowes, lowe's companies] discover: { rss: true, sitemap: true, pages: true } notes: "corporate.lowes.com newsroom has no feed (Akamai on lowes.com)." sensors: - { name: newsroom, url: "https://corporate.lowes.com/newsroom", type: HTML, connector: http, tier: B } - id: kroger name: Kroger domain: thekrogerco.com categories: [retail, food] tier: B aliases: [the kroger co] discover: { rss: true } notes: "ir.kroger.com (Q4) behind a Cloudflare challenge; corporate WordPress feed works." sensors: - { name: newsroom feed, url: "https://www.thekrogerco.com/feed/", type: RSS, connector: rss, tier: B } - id: best-buy name: Best Buy domain: bestbuy.com homepage: https://corporate.bestbuy.com categories: [retail, consumer-tech] tier: B aliases: [bestbuy] discover: { rss: true } notes: "investors.bestbuy.com (Q4) behind a Cloudflare challenge." sensors: - { name: corporate news feed, url: "https://corporate.bestbuy.com/feed/", type: RSS, connector: rss, tier: B } - { name: crawler policy (robots.txt), url: "https://www.bestbuy.com/robots.txt", type: FILE, connector: http, tier: D } - id: ikea name: IKEA domain: ikea.com categories: [retail, consumer] tier: B weight: 1.1 aliases: [ingka, inter ikea] discover: { rss: true, sitemap: true, pages: true } notes: "Newsroom (ikea.com/global/en/newsroom) is client-rendered, no feed." sensors: - { name: crawler policy (robots.txt), url: "https://www.ikea.com/robots.txt", type: FILE, connector: http, tier: D } - id: loblaw name: Loblaw Companies domain: loblaw.ca categories: [retail, food] tier: B weight: 1.1 aliases: [loblaws, loblaw companies limited] products: - { name: PC Optimum, type: service, aliases: [pc optimum] } - { name: Shoppers Drug Mart, type: product, aliases: [shoppers, pharmaprix] } - { name: No Frills, type: product } discover: { rss: true, sitemap: true, pages: true } sensors: - { name: our stories, url: "https://www.loblaw.ca/en/our-stories/", type: HTML, connector: http, tier: B } - id: empire-sobeys name: Empire Company (Sobeys) domain: empireco.ca categories: [retail, food] tier: B aliases: [empire, sobeys, iga, safeway canada] products: - { name: Scene+, type: service, aliases: [scene plus] } - { name: Voilà, type: service, aliases: [voila] } discover: { rss: true, sitemap: true, pages: true } sensors: - { name: news releases, url: "https://www.empireco.ca/news", type: HTML, connector: http, tier: B } - id: dollarama name: Dollarama domain: dollarama.com categories: [retail] tier: B discover: { rss: true, sitemap: true } sensors: - { name: corporate content sitemap, url: "https://www.dollarama.com/sitemap_content.xml", type: SITEMAP, connector: sitemap, tier: B } - id: couche-tard name: Alimentation Couche-Tard domain: couche-tard.com homepage: https://corporate.couche-tard.com categories: [retail] tier: B aliases: [couche-tard, circle k] products: - { name: Circle K, type: product } discover: { rss: true, sitemap: true, pages: true } sensors: - { name: newsroom, url: "https://corporate.couche-tard.com/newsroom", type: HTML, connector: http, tier: B } - id: aldi name: ALDI domain: aldi.us homepage: https://corporate.aldi.us categories: [retail, food] tier: B aliases: [aldi us, aldi süd, aldi nord] discover: { rss: true, sitemap: true, pages: true } notes: "aldi.co.uk newsroom is 403 to bots." sensors: - { name: US newsroom, url: "https://corporate.aldi.us/newsroom", type: HTML, connector: http, tier: B } - id: carrefour name: Carrefour domain: carrefour.com categories: [retail, food] tier: B weight: 1.1 aliases: [groupe carrefour] discover: { rss: true, sitemap: true } sensors: - { name: news feed, url: "https://www.carrefour.com/en/rss.xml", type: RSS, connector: rss, tier: B } - id: hm-group name: H&M Group domain: hmgroup.com categories: [retail, consumer] tier: B aliases: [h&m, hennes & mauritz, h and m] discover: { rss: true, sitemap: true } sensors: - { name: news feed, url: "https://hmgroup.com/feed/", type: RSS, connector: rss, tier: B } - id: seven-and-i name: Seven & i Holdings domain: 7andi.com categories: [retail] tier: B aliases: [seven & i, 7-eleven, seven eleven, 7&i] products: - { name: 7-Eleven, type: product, aliases: [seven eleven] } discover: { rss: true } sensors: - { name: news feed, url: "https://www.7andi.com/rss/en_news.xml", type: RSS, connector: rss, tier: B } - id: alibaba name: Alibaba Group domain: alibabagroup.com categories: [commerce, retail, technology] tier: B weight: 1.3 aliases: [alibaba, taobao, tmall, aliexpress] products: - { name: AliExpress, type: service } - { name: Taobao, type: service } - { name: Tmall, type: service } - { name: Alizila, type: product } discover: { rss: true, sitemap: true } notes: "alibabagroup.com is client-rendered; Alizila (official news site) has a WordPress feed." sensors: - { name: alizila news feed, url: "https://www.alizila.com/feed/", type: RSS, connector: rss, tier: B } - { name: alibaba.com crawler policy (robots.txt), url: "https://www.alibaba.com/robots.txt", type: FILE, connector: http, tier: D } - { name: aliexpress crawler policy (robots.txt), url: "https://www.aliexpress.com/robots.txt", type: FILE, connector: http, tier: D } - id: etsy name: Etsy domain: etsy.com homepage: https://investors.etsy.com categories: [commerce, retail] tier: B aliases: [etsy inc] discover: { rss: true } sensors: - { name: press releases feed, url: "https://investors.etsy.com/news-events/press-releases/rss", type: RSS, connector: rss, tier: B } - { name: crawler policy (robots.txt), url: "https://www.etsy.com/robots.txt", type: FILE, connector: http, tier: D } - id: ebay name: eBay domain: ebay.com homepage: https://www.ebayinc.com categories: [commerce, retail] tier: B weight: 1.1 aliases: [ebay inc] discover: { rss: true } notes: "investors.ebayinc.com (Q4) behind a Cloudflare challenge; ebayinc.com stories feed works." sensors: - { name: news feed, url: "https://www.ebayinc.com/stories/news/rss/", type: RSS, connector: rss, tier: B } - { name: crawler policy (robots.txt), url: "https://www.ebay.com/robots.txt", type: FILE, connector: http, tier: D } - id: rakuten name: Rakuten Group domain: rakuten.co.jp homepage: https://global.rakuten.com/corp/ categories: [commerce, retail, internet] tier: B aliases: [rakuten] discover: { rss: true } sensors: - { name: press releases feed, url: "https://global.rakuten.com/corp/rss/press.xml", type: RSS, connector: rss, tier: B } - { name: crawler policy (robots.txt), url: "https://www.rakuten.co.jp/robots.txt", type: FILE, connector: http, tier: D } - id: mercadolibre name: MercadoLibre domain: mercadolibre.com homepage: https://investor.mercadolibre.com categories: [commerce, retail, payments] tier: B weight: 1.1 aliases: [mercado libre, meli, mercado pago] discover: { rss: true, sitemap: true } notes: "investor.mercadolibre.com exposes no RSS (404 on the usual paths)." sensors: - { name: crawler policy (robots.txt), url: "https://www.mercadolibre.com/robots.txt", type: FILE, connector: http, tier: D } - id: shein name: SHEIN domain: shein.com homepage: https://www.sheingroup.com categories: [commerce, retail, consumer] tier: B aliases: [shein group] discover: { rss: true, sitemap: true, pages: true } sensors: - { name: newsroom, url: "https://www.sheingroup.com/newsroom", type: HTML, connector: http, tier: B } - { name: crawler policy (robots.txt), url: "https://www.shein.com/robots.txt", type: FILE, connector: http, tier: D } - id: flipkart name: Flipkart domain: flipkart.com homepage: https://stories.flipkart.com categories: [commerce, retail] tier: B discover: { rss: true, sitemap: true } sensors: - { name: crawler policy (robots.txt), url: "https://www.flipkart.com/robots.txt", type: FILE, connector: http, tier: D } - id: wayfair name: Wayfair domain: wayfair.com categories: [commerce, retail] tier: B discover: { rss: true } notes: "investor.wayfair.com (Q4) behind a Cloudflare challenge." sensors: - { name: crawler policy (robots.txt), url: "https://www.wayfair.com/robots.txt", type: FILE, connector: http, tier: D } - id: chewy name: Chewy domain: chewy.com categories: [commerce, retail] tier: C discover: { rss: true } notes: "investor.chewy.com (Q4) behind a Cloudflare challenge." sensors: - { name: crawler policy (robots.txt), url: "https://www.chewy.com/robots.txt", type: FILE, connector: http, tier: D } - id: instacart name: Instacart domain: instacart.com homepage: https://company.instacart.com categories: [commerce, food, technology] tier: B aliases: [maplebear] discover: { rss: true, sitemap: true, pages: true } sensors: - { name: company updates, url: "https://company.instacart.com/updates/", type: HTML, connector: http, tier: B } - { name: crawler policy (robots.txt), url: "https://www.instacart.com/robots.txt", type: FILE, connector: http, tier: D } - id: newegg name: Newegg domain: newegg.com categories: [commerce, consumer-tech] tier: C discover: { rss: true } sensors: - { name: insider feed, url: "https://www.newegg.com/insider/feed/", type: RSS, connector: rss, tier: C } - { name: crawler policy (robots.txt), url: "https://www.newegg.com/robots.txt", type: FILE, connector: http, tier: D } - id: canadian-tire name: Canadian Tire Corporation domain: canadiantire.ca homepage: https://corp.canadiantire.ca categories: [retail] tier: B aliases: [canadian tire, ctc, sportchek, mark's] products: - { name: Triangle Rewards, type: service } discover: { rss: true, sitemap: true } notes: "corp.canadiantire.ca and investors.canadiantire.ca (Q4) behind a Cloudflare challenge." sensors: - { name: crawler policy (robots.txt), url: "https://www.canadiantire.ca/robots.txt", type: FILE, connector: http, tier: D } - id: walgreens name: Walgreens Boots Alliance domain: walgreens.com homepage: https://corporate.walgreens.com categories: [retail, health] tier: B aliases: [walgreens, boots, wba] discover: { rss: true, sitemap: true, pages: true } sensors: - { name: news and stories, url: "https://corporate.walgreens.com/news-and-stories/", type: HTML, connector: http, tier: B } - id: cvs name: CVS Health domain: cvshealth.com categories: [retail, health] tier: B weight: 1.1 aliases: [cvs, cvs pharmacy, aetna] discover: { rss: true, sitemap: true, pages: true } sensors: - { name: sitemap, url: "https://www.cvshealth.com/sitemap.xml", type: SITEMAP, connector: sitemap, tier: B, config: { maxUrls: 2000 } } - id: metro-inc name: Metro Inc. domain: metro.ca homepage: https://corpo.metro.ca categories: [retail, food] tier: B aliases: [metro, jean coutu, brunet, super c] products: - { name: Jean Coutu, type: product, aliases: [pjc] } discover: { rss: true, sitemap: true } notes: "No feed on corpo.metro.ca; corporate sitemap only." sensors: - { name: corporate sitemap, url: "https://corpo.metro.ca/sitemap.xml", type: SITEMAP, connector: sitemap, tier: B, config: { maxUrls: 2000 } } - id: lidl name: Lidl domain: lidl.com homepage: https://corporate.lidl.co.uk categories: [retail, food] tier: B aliases: [lidl gb, schwarz group] discover: { rss: true, sitemap: true, pages: true } sensors: - { name: UK media centre, url: "https://corporate.lidl.co.uk/media-centre", type: HTML, connector: http, tier: B } - id: tesco name: Tesco domain: tescoplc.com categories: [retail, food] tier: B weight: 1.1 aliases: [tesco plc] discover: { rss: true, sitemap: true } notes: "tescoplc.com returns 403 to non-browser clients on every path (Akamai). No validated sensor yet." - id: sainsburys name: Sainsbury's domain: sainsburys.co.uk homepage: https://corporate.sainsburys.co.uk categories: [retail, food] tier: B aliases: [sainsburys, j sainsbury, argos] discover: { rss: true, sitemap: true, pages: true } sensors: - { name: press releases feed, url: "https://corporate.sainsburys.co.uk/rss/news", type: RSS, connector: rss, tier: B } - { name: press releases, url: "https://corporate.sainsburys.co.uk/news/press-releases/", type: HTML, connector: http, tier: B } - id: inditex name: Inditex domain: inditex.com categories: [retail, consumer] tier: B weight: 1.1 aliases: [zara, massimo dutti, bershka, pull&bear] products: - { name: Zara, type: product } discover: { rss: true, sitemap: true, pages: true } notes: "zara.com is 403 to bots; inditex.com press pages are server-rendered." sensors: - { name: press news, url: "https://www.inditex.com/itxcomweb/en/press/news", type: HTML, connector: http, tier: B } - id: fast-retailing name: Fast Retailing domain: fastretailing.com categories: [retail, consumer] tier: B aliases: [uniqlo, gu] products: - { name: UNIQLO, type: product, aliases: [uniqlo] } discover: { rss: true, sitemap: true, pages: true } sensors: - { name: news, url: "https://www.fastretailing.com/eng/about/news/", type: HTML, connector: http, tier: B } - id: jd-com name: JD.com domain: jd.com homepage: https://ir.jd.com categories: [commerce, retail] tier: B aliases: [jingdong, jd] discover: { rss: true, sitemap: true } notes: "ir.jd.com and corporate.jd.com are 403 to bots; jd.com robots.txt redirects to an HTML page. No validated sensor yet." - id: pdd-temu name: PDD Holdings (Temu) domain: pddholdings.com categories: [commerce, retail] tier: B aliases: [pdd, temu, pinduoduo] products: - { name: Temu, type: service } - { name: Pinduoduo, type: service } discover: { rss: true, sitemap: true } notes: "investor.pddholdings.com is 403 to bots; temu.com serves an HTML shell for robots.txt. No validated sensor yet." - id: bh-photo name: B&H Photo Video domain: bhphotovideo.com categories: [commerce, consumer-tech] tier: C aliases: [b&h, bh photo] discover: { rss: true } notes: "Whole site behind a Cloudflare challenge (Explora feed included)." - id: simons name: La Maison Simons domain: simons.ca categories: [retail, consumer] tier: C aliases: [simons] discover: { rss: true, sitemap: true } notes: "simons.ca is 403 to bots." - id: aritzia name: Aritzia domain: aritzia.com categories: [retail, consumer] tier: C discover: { rss: true, sitemap: true } notes: "aritzia.com and investors.aritzia.com (Q4) behind a Cloudflare challenge." - id: roots name: Roots domain: roots.com categories: [retail, consumer] tier: C aliases: [roots canada] discover: { rss: true, sitemap: true } notes: "investors.roots.com (Q4) behind a Cloudflare challenge; roots.com exposes no feed." - id: sephora name: Sephora domain: sephora.com homepage: https://newsroom.sephora.com categories: [retail, consumer] tier: B discover: { rss: true } sensors: - { name: newsroom feed, url: "https://newsroom.sephora.com/feed/", type: RSS, connector: rss, tier: B } - id: ulta name: Ulta Beauty domain: ulta.com categories: [retail, consumer] tier: B aliases: [ulta] discover: { rss: true, sitemap: true, pages: true } notes: "investors.ulta.com unreachable for bots; ulta.com newsroom is client-rendered — investor sitemap only." sensors: - { name: investor sitemap, url: "https://www.ulta.com/investor/sitemap.xml", type: SITEMAP, connector: sitemap, tier: B } # ───────────────────────── B · Consumer brands ───────────────────────── - id: nike name: Nike domain: nike.com homepage: https://about.nike.com categories: [consumer, retail] tier: B weight: 1.3 aliases: [nike inc, jordan brand, converse] discover: { rss: true, sitemap: true } sensors: - { name: newsroom feed, url: "https://about.nike.com/en/feed", type: RSS, connector: rss, tier: B } - id: adidas name: adidas domain: adidas-group.com homepage: https://www.adidas-group.com categories: [consumer, retail] tier: B weight: 1.1 aliases: [adidas ag] discover: { rss: true, sitemap: true } notes: "news.adidas.com answers 202 with an empty body (bot management); adidas-group.com exposes no feed. No validated sensor yet." - id: lululemon name: lululemon domain: lululemon.com homepage: https://corporate.lululemon.com categories: [consumer, retail] tier: B aliases: [lululemon athletica] discover: { rss: true } sensors: - { name: press releases feed, url: "https://corporate.lululemon.com/rss/press-releases", type: RSS, connector: rss, tier: B, config: { maxItems: 50 } } - id: canada-goose name: Canada Goose domain: canadagoose.com categories: [consumer, retail] tier: C discover: { rss: true, sitemap: true } notes: "canadagoose.com rate-limits bots (429); investors.canadagoose.com unreachable. No validated sensor yet." - id: lvmh name: LVMH domain: lvmh.com categories: [consumer, retail] tier: B weight: 1.3 aliases: [louis vuitton, moët hennessy louis vuitton, dior, tiffany] products: - { name: Louis Vuitton, type: product } - { name: Dior, type: product } discover: { rss: true, sitemap: true, pages: true } notes: "lvmh.com news pages are client-rendered; sitemap index only." sensors: - { name: sitemap, url: "https://www.lvmh.com/sitemap.xml", type: SITEMAP, connector: sitemap, tier: B, config: { maxUrls: 3000 } } - id: kering name: Kering domain: kering.com categories: [consumer, retail] tier: B weight: 1.1 aliases: [gucci, saint laurent, bottega veneta, balenciaga] products: - { name: Gucci, type: product } discover: { rss: true, sitemap: true } sensors: - { name: sitemap (en), url: "https://www.kering.com/en/sitemap.xml", type: SITEMAP, connector: sitemap, tier: B, config: { maxUrls: 3000 } } - id: hermes name: Hermès domain: hermes.com homepage: https://finance.hermes.com categories: [consumer, retail] tier: B weight: 1.1 aliases: [hermes, hermès international] discover: { rss: true, sitemap: true } sensors: - { name: finance sitemap, url: "https://finance.hermes.com/sitemap-index.xml", type: SITEMAP, connector: sitemap, tier: B, config: { maxUrls: 3000 } } - id: richemont name: Richemont domain: richemont.com categories: [consumer, retail] tier: B aliases: [cartier, van cleef & arpels, iwc, compagnie financière richemont] products: - { name: Cartier, type: product } discover: { rss: true, sitemap: true } sensors: - { name: sitemap, url: "https://www.richemont.com/sitemap.xml", type: SITEMAP, connector: sitemap, tier: B, config: { maxUrls: 2000 } } - id: loreal name: L'Oréal domain: loreal.com categories: [consumer] tier: B weight: 1.2 aliases: [loreal, l'oréal groupe, lancôme, maybelline, garnier] discover: { rss: true, sitemap: true, pages: true } sensors: - { name: news, url: "https://www.loreal.com/en/news/", type: HTML, connector: http, tier: B } - { name: finance news (fr), url: "https://www.loreal-finance.com/fr/actualites", type: HTML, connector: http, tier: B } - id: estee-lauder name: The Estée Lauder Companies domain: elcompanies.com categories: [consumer] tier: B weight: 1.1 aliases: [estee lauder, estée lauder, mac cosmetics, clinique] discover: { rss: true } sensors: - { name: press releases feed, url: "https://www.elcompanies.com/en/rss/press-releases", type: RSS, connector: rss, tier: B } - id: procter-gamble name: Procter & Gamble domain: pg.com homepage: https://us.pg.com categories: [consumer] tier: B weight: 1.3 aliases: [p&g, procter and gamble, pampers, tide, gillette] products: - { name: Gillette, type: product } - { name: Pampers, type: product } - { name: Tide, type: product } discover: { rss: true, sitemap: true, pages: true } notes: "news.pg.com (Q4) redirects to the newsroom; no RSS." sensors: - { name: newsroom, url: "https://us.pg.com/newsroom/", type: HTML, connector: http, tier: B } - { name: sitemap, url: "https://us.pg.com/sitemap.xml", type: SITEMAP, connector: sitemap, tier: B, config: { maxUrls: 2000 } } - id: unilever name: Unilever domain: unilever.com categories: [consumer, food] tier: B weight: 1.3 aliases: [dove, hellmann's, ben & jerry's, knorr] discover: { rss: true, sitemap: true } notes: "unilever.com is 403 to non-browser clients on every path (Akamai). No validated sensor yet." - id: nestle name: Nestlé domain: nestle.com categories: [consumer, food] tier: B weight: 1.3 aliases: [nestle, nespresso, purina, kitkat] products: - { name: Nespresso, type: product } discover: { rss: true, sitemap: true } notes: "nestle.com media pages are 403 to bots (Akamai); sitemap is reachable." sensors: - { name: sitemap, url: "https://www.nestle.com/sitemap.xml", type: SITEMAP, connector: sitemap, tier: B, config: { maxUrls: 3000 } } - id: coca-cola name: The Coca-Cola Company domain: coca-colacompany.com categories: [consumer, food] tier: B weight: 1.3 aliases: [coca-cola, coke, sprite, fanta] discover: { rss: true, sitemap: true, pages: true } notes: "investors.coca-colacompany.com exposes no RSS." sensors: - { name: media center, url: "https://www.coca-colacompany.com/media-center", type: HTML, connector: http, tier: B } - { name: corporate sitemap (us-en), url: "https://www.coca-colacompany.com/content/corporate.sitemap.us-en-sitemap.xml", type: SITEMAP, connector: sitemap, tier: B, config: { maxUrls: 2000 } } - id: pepsico name: PepsiCo domain: pepsico.com categories: [consumer, food] tier: B weight: 1.3 aliases: [pepsi, frito-lay, gatorade, quaker] discover: { rss: true, sitemap: true, pages: true } notes: "investors.pepsico.com and pepsico.com expose no RSS." sensors: - { name: newsroom, url: "https://www.pepsico.com/newsroom", type: HTML, connector: http, tier: B } - { name: sitemap, url: "https://www.pepsico.com/sitemap.xml", type: SITEMAP, connector: sitemap, tier: B, config: { maxUrls: 3000 } } - id: mondelez name: Mondelēz International domain: mondelezinternational.com categories: [consumer, food] tier: B weight: 1.1 aliases: [mondelez, oreo, cadbury, toblerone] discover: { rss: true, sitemap: true } notes: "ir.mondelezinternational.com (Q4) is 403 to bots." sensors: - { name: sitemap, url: "https://www.mondelezinternational.com/sitemap.xml", type: SITEMAP, connector: sitemap, tier: B, config: { maxUrls: 3000 } } - id: kraft-heinz name: Kraft Heinz domain: kraftheinzcompany.com categories: [consumer, food] tier: B aliases: [kraft, heinz] discover: { rss: true, sitemap: true } notes: "news.kraftheinzcompany.com and ir.kraftheinzcompany.com (Q4) behind a Cloudflare challenge. No validated sensor yet." - id: general-mills name: General Mills domain: generalmills.com categories: [consumer, food] tier: B aliases: [cheerios, pillsbury, häagen-dazs] discover: { rss: true, sitemap: true, pages: true } notes: "investors.generalmills.com (Q4) behind a Cloudflare challenge; generalmills.com news pages are client-rendered — sitemap only." sensors: - { name: sitemap, url: "https://www.generalmills.com/sitemap.xml", type: SITEMAP, connector: sitemap, tier: B, config: { maxUrls: 3000 } } - id: kellanova name: Kellanova domain: kellanova.com categories: [consumer, food] tier: C aliases: [kellogg's, kellogg, pringles] discover: { rss: true, sitemap: true } notes: "kellanova.com answers 405 to bots; investor.kellanova.com (Q4) likewise. No validated sensor yet." - id: mars name: Mars, Incorporated domain: mars.com categories: [consumer, food] tier: B aliases: [mars inc, m&m's, snickers, pedigree, royal canin] discover: { rss: true, sitemap: true } notes: "mars.com news pages are 403 to bots; sitemap is reachable." sensors: - { name: sitemap, url: "https://www.mars.com/sitemap.xml", type: SITEMAP, connector: sitemap, tier: B, config: { maxUrls: 3000 } } - id: danone name: Danone domain: danone.com categories: [consumer, food] tier: B aliases: [activia, evian, alpro] discover: { rss: true, sitemap: true, pages: true } sensors: - { name: press releases, url: "https://www.danone.com/newsroom/press-releases.html", type: HTML, connector: http, tier: B } - id: ab-inbev name: AB InBev domain: ab-inbev.com categories: [consumer, food] tier: B weight: 1.1 aliases: [anheuser-busch inbev, anheuser-busch, budweiser, stella artois, corona] discover: { rss: true, sitemap: true, pages: true } notes: "ab-inbev.com news pages are client-rendered (React shell) and the sitemap 404s. No validated sensor yet." - id: diageo name: Diageo domain: diageo.com categories: [consumer, food] tier: B aliases: [johnnie walker, guinness, smirnoff, tanqueray] discover: { rss: true } sensors: - { name: press releases feed, url: "https://www.diageo.com/en/rss/press-releases", type: RSS, connector: rss, tier: B } - id: heineken name: Heineken domain: theheinekencompany.com categories: [consumer, food] tier: B aliases: [heineken n.v.] discover: { rss: true, sitemap: true } notes: "theheinekencompany.com is 403 to bots (Akamai). No validated sensor yet." - id: molson-coors name: Molson Coors domain: molsoncoors.com categories: [consumer, food] tier: B aliases: [molson, coors, miller lite] discover: { rss: true, sitemap: true } notes: "ir.molsoncoors.com (Q4) behind a Cloudflare challenge; the corporate site feed works." sensors: - { name: news feed, url: "https://www.molsoncoors.com/rss.xml", type: RSS, connector: rss, tier: B } - id: constellation-brands name: Constellation Brands domain: cbrands.com categories: [consumer, food] tier: B aliases: [constellation, modelo, corona usa, kim crawford] discover: { rss: true } sensors: - { name: press releases feed, url: "https://www.cbrands.com/blogs/press-releases.atom", type: ATOM, connector: rss, tier: B } - id: saputo name: Saputo domain: saputo.com categories: [consumer, food] tier: B discover: { rss: true, sitemap: true } sensors: - { name: news sitemap, url: "https://www.saputo.com/news-sitemap.xml", type: SITEMAP, connector: sitemap, tier: B } - id: lassonde name: Lassonde Industries domain: lassonde.com categories: [consumer, food] tier: C aliases: [lassonde, oasis] discover: { rss: true } sensors: - { name: news feed, url: "https://www.lassonde.com/en/feed/", type: RSS, connector: rss, tier: C } - id: agropur name: Agropur domain: agropur.com categories: [consumer, food, agriculture] tier: C aliases: [natrel, oka] discover: { rss: true, sitemap: true, pages: true } sensors: - { name: news, url: "https://www.agropur.com/en/news", type: HTML, connector: http, tier: C } - id: colgate-palmolive name: Colgate-Palmolive domain: colgatepalmolive.com categories: [consumer] tier: B aliases: [colgate, palmolive, hill's pet nutrition] discover: { rss: true, sitemap: true } notes: "colgatepalmolive.com and investor.colgatepalmolive.com are 403 to bots. No validated sensor yet." - id: kimberly-clark name: Kimberly-Clark domain: kimberly-clark.com categories: [consumer] tier: B aliases: [kleenex, huggies, kotex, scott] discover: { rss: true, sitemap: true } notes: "kimberly-clark.com and investor.kimberly-clark.com (Q4) behind a Cloudflare challenge. No validated sensor yet." - id: clorox name: The Clorox Company domain: thecloroxcompany.com categories: [consumer] tier: B aliases: [clorox, burt's bees, brita, glad] discover: { rss: true, sitemap: true, pages: true } sensors: - { name: news feed, url: "https://www.thecloroxcompany.com/feed/", type: RSS, connector: rss, tier: B } - { name: newsroom, url: "https://www.thecloroxcompany.com/newsroom/", type: HTML, connector: http, tier: B } - id: reckitt name: Reckitt domain: reckitt.com categories: [consumer, health] tier: B aliases: [reckitt benckiser, dettol, lysol, durex, nurofen] discover: { rss: true, sitemap: true, pages: true } sensors: - { name: news, url: "https://www.reckitt.com/news/", type: HTML, connector: http, tier: B } - id: henkel name: Henkel domain: henkel.com categories: [consumer] tier: B aliases: [persil, schwarzkopf, loctite, pritt] discover: { rss: true, sitemap: true } sensors: - { name: press releases feed, url: "https://www.henkel.com/service/en/33922/asFeed/index.xml", type: RSS, connector: rss, tier: B } - id: beiersdorf name: Beiersdorf domain: beiersdorf.com categories: [consumer] tier: B aliases: [nivea, eucerin, la prairie, tesa] discover: { rss: true, sitemap: true, pages: true } sensors: - { name: press releases, url: "https://www.beiersdorf.com/newsroom/press-information/all-press-releases", type: HTML, connector: http, tier: B } - id: shiseido name: Shiseido domain: shiseido.com homepage: https://corp.shiseido.com categories: [consumer] tier: C aliases: [nars, drunk elephant] discover: { rss: true, sitemap: true } notes: "corp.shiseido.com exposes no feed and its English newsroom 404s on the usual paths. No validated sensor yet." - id: whirlpool name: Whirlpool Corporation domain: whirlpoolcorp.com categories: [consumer, consumer-tech] tier: B aliases: [whirlpool, kitchenaid, maytag] discover: { rss: true, sitemap: true } notes: "investors.whirlpoolcorp.com (Q4) behind a Cloudflare challenge; whirlpoolcorp.com/news 404. No validated sensor yet." - id: electrolux name: Electrolux Group domain: electroluxgroup.com categories: [consumer, consumer-tech] tier: B aliases: [electrolux, frigidaire, aeg] discover: { rss: true, sitemap: true } sensors: - { name: news feed, url: "https://www.electroluxgroup.com/en/feed", type: RSS, connector: rss, tier: B } - id: dyson name: Dyson domain: dyson.com categories: [consumer, consumer-tech] tier: C discover: { rss: true, sitemap: true } notes: "dyson.com newsroom is 403 to bots. No validated sensor yet." - id: philips name: Philips domain: philips.com categories: [consumer, consumer-tech, health] tier: B weight: 1.1 aliases: [royal philips, koninklijke philips] discover: { rss: true, sitemap: true } sensors: - { name: news feed, url: "https://www.philips.com/content/corporate/en_AA/feed.rss.xml?pageSize=15&startIndex=0&src=/content/corporate/en_AA/about/news/archive&sortMode=createdDate", type: RSS, connector: rss, tier: B } - id: sonos name: Sonos domain: sonos.com homepage: https://newsroom.sonos.com categories: [consumer-tech, consumer] tier: B discover: { rss: true } sensors: - { name: press releases feed, url: "https://newsroom.sonos.com/press_releases.atom", type: ATOM, connector: rss, tier: B } - id: gopro name: GoPro domain: gopro.com categories: [consumer-tech, consumer] tier: C discover: { rss: true, sitemap: true } notes: "gopro.com news and investor.gopro.com (Q4) behind a Cloudflare challenge. No validated sensor yet." - id: garmin name: Garmin domain: garmin.com categories: [consumer-tech, consumer] tier: B weight: 1.1 discover: { rss: true, sitemap: true } sensors: - { name: newsroom feed, url: "https://www.garmin.com/en-US/newsroom/feed/", type: RSS, connector: rss, tier: B } - id: peloton name: Peloton domain: onepeloton.com categories: [consumer-tech, consumer] tier: C aliases: [peloton interactive] discover: { rss: true, sitemap: true, pages: true } notes: "investor.onepeloton.com is 403 to bots." sensors: - { name: blog, url: "https://www.onepeloton.com/blog", type: HTML, connector: http, tier: C } - id: mattel name: Mattel domain: mattel.com homepage: https://corporate.mattel.com categories: [consumer] tier: B aliases: [barbie, hot wheels, fisher-price] products: - { name: Barbie, type: product } discover: { rss: true, sitemap: true } notes: "investors.mattel.com (Q4) behind a Cloudflare challenge; corporate sitemap is reachable." sensors: - { name: corporate sitemap, url: "https://corporate.mattel.com/sitemap.xml", type: SITEMAP, connector: sitemap, tier: B } - id: hasbro name: Hasbro domain: hasbro.com categories: [consumer, gaming] tier: B aliases: [wizards of the coast, monopoly, nerf] discover: { rss: true, sitemap: true } notes: "newsroom.hasbro.com and investor.hasbro.com are 403 to bots. No validated sensor yet." - id: lego name: The LEGO Group domain: lego.com categories: [consumer] tier: B weight: 1.1 aliases: [lego] discover: { rss: true, sitemap: true, pages: true } sensors: - { name: newsroom, url: "https://www.lego.com/en-ca/aboutus/newsroom", type: HTML, connector: http, tier: B } - { name: local news sitemap, url: "https://www.lego.com/local-news/sitemap.xml", type: SITEMAP, connector: sitemap, tier: B } - id: yeti name: YETI domain: yeti.com categories: [consumer] tier: C discover: { rss: true, sitemap: true } notes: "yeti.com press pages are 403 to bots. No validated sensor yet." - id: stanley name: Stanley 1913 domain: stanley1913.com categories: [consumer] tier: C aliases: [stanley, stanley cup tumbler, pmi worldwide] discover: { rss: true, sitemap: true } sensors: - { name: stories feed, url: "https://www.stanley1913.com/blogs/stanley-story.atom", type: ATOM, connector: rss, tier: C } - id: crocs name: Crocs domain: crocs.com categories: [consumer, retail] tier: C aliases: [heydude] discover: { rss: true, sitemap: true } notes: "investors.crocs.com (Q4) behind a Cloudflare challenge. No validated sensor yet." - id: vf-corp name: VF Corporation domain: vfc.com categories: [consumer, retail] tier: B aliases: [vf corp, the north face, vans, timberland] products: - { name: The North Face, type: product } - { name: Vans, type: product } discover: { rss: true } sensors: - { name: press releases feed, url: "https://www.vfc.com/investors/news-events-presentations/press-releases/rss", type: RSS, connector: rss, tier: B } - id: levi-strauss name: Levi Strauss & Co. domain: levistrauss.com categories: [consumer, retail] tier: B aliases: [levi's, levis, dockers] discover: { rss: true } notes: "investors.levistrauss.com (Q4) behind a Cloudflare challenge; corporate WordPress feed works." sensors: - { name: news feed, url: "https://www.levistrauss.com/feed/", type: RSS, connector: rss, tier: B } - id: gap name: Gap Inc. domain: gapinc.com categories: [consumer, retail] tier: B aliases: [gap, old navy, banana republic, athleta] discover: { rss: true, sitemap: true, pages: true } notes: "investors.gapinc.com (Q4) behind a Cloudflare challenge." sensors: - { name: newsroom, url: "https://www.gapinc.com/en-us/news", type: HTML, connector: http, tier: B } - id: abercrombie name: Abercrombie & Fitch Co. domain: abercrombie.com homepage: https://corporate.abercrombie.com categories: [consumer, retail] tier: C aliases: [abercrombie, hollister] discover: { rss: true, pages: true } notes: "abercrombieandfitchcompany.gcs-web.com feeds are 403 to bots." sensors: - { name: news, url: "https://corporate.abercrombie.com/news", type: HTML, connector: http, tier: C } - id: ralph-lauren name: Ralph Lauren domain: ralphlauren.com homepage: https://corporate.ralphlauren.com categories: [consumer, retail] tier: B aliases: [polo ralph lauren] discover: { rss: true, pages: true } sensors: - { name: newsroom, url: "https://corporate.ralphlauren.com/newsroom", type: HTML, connector: http, tier: B } - id: tapestry name: Tapestry domain: tapestry.com categories: [consumer, retail] tier: B aliases: [coach, kate spade, stuart weitzman] discover: { rss: true } sensors: - { name: news feed, url: "https://www.tapestry.com/feed/", type: RSS, connector: rss, tier: B } - id: capri-holdings name: Capri Holdings domain: capriholdings.com categories: [consumer, retail] tier: C aliases: [capri, michael kors, versace, jimmy choo] discover: { rss: true, sitemap: true } notes: "capriholdings.com is 403 to bots. No validated sensor yet." # ───────────────────────── C · Restaurants ───────────────────────── - id: mcdonalds name: McDonald's domain: mcdonalds.com homepage: https://corporate.mcdonalds.com categories: [food, retail] tier: B weight: 1.3 aliases: [mcdonald's, mcdonalds, mcd] discover: { rss: true, sitemap: true } notes: "corporate.mcdonalds.com and mcdonalds.com time out for non-browser clients (Akamai); investors.mcdonalds.com unreachable. No validated sensor yet." - id: starbucks name: Starbucks domain: starbucks.com homepage: https://about.starbucks.com categories: [food, retail] tier: B weight: 1.2 discover: { rss: true, sitemap: true } notes: "about.starbucks.com / stories.starbucks.com and investor.starbucks.com (Q4) behind a Cloudflare challenge. No validated sensor yet." - id: yum-brands name: Yum! Brands domain: yum.com categories: [food, retail] tier: B aliases: [yum, kfc, taco bell, pizza hut] products: - { name: KFC, type: product } - { name: Taco Bell, type: product } - { name: Pizza Hut, type: product } discover: { rss: true, pages: true } notes: "investors.yum.com (Q4) behind a Cloudflare challenge." sensors: - { name: news, url: "https://www.yum.com/wps/portal/yumbrands/Yumbrands/news", type: HTML, connector: http, tier: B } - id: restaurant-brands name: Restaurant Brands International domain: rbi.com categories: [food, retail] tier: B weight: 1.1 aliases: [rbi, tim hortons, burger king, popeyes, firehouse subs] products: - { name: Tim Hortons, type: product, aliases: [tims] } - { name: Burger King, type: product } - { name: Popeyes, type: product } discover: { rss: true, sitemap: true, pages: true } notes: "rbi.com (Q4) behind a Cloudflare challenge; timhortons.ca/news is a client-rendered shell (validator: thin). No validated sensor yet." - id: chipotle name: Chipotle Mexican Grill domain: chipotle.com homepage: https://newsroom.chipotle.com categories: [food, retail] tier: B aliases: [chipotle] discover: { rss: true } sensors: - { name: press releases feed, url: "https://newsroom.chipotle.com/press-releases?pagetemplate=rss", type: RSS, connector: rss, tier: B } - id: dominos name: Domino's Pizza domain: dominos.com homepage: https://ir.dominos.com categories: [food, retail] tier: B aliases: [dominos, domino's] discover: { rss: true, sitemap: true } notes: "ir.dominos.com is 403 to bots. No validated sensor yet." - id: subway name: Subway domain: subway.com homepage: https://newsroom.subway.com categories: [food, retail] tier: B discover: { rss: true } sensors: - { name: press releases feed, url: "https://newsroom.subway.com/Press-Releases?pagetemplate=rss", type: RSS, connector: rss, tier: B } - id: mty-group name: MTY Food Group domain: mtygroup.com categories: [food, retail] tier: C aliases: [mty, thaï express, valentine, cold stone] discover: { rss: true, sitemap: true } notes: "mtygroup.com WordPress feeds (all languages/categories) are empty; press releases live behind a client-rendered investors page. No validated sensor yet." - id: aw-canada name: A&W Canada domain: aw.ca homepage: https://web.aw.ca categories: [food, retail] tier: C aliases: [a&w, a&w food services] discover: { rss: true, sitemap: true } notes: "web.aw.ca newsroom is a client-rendered shell. No validated sensor yet." - id: st-hubert name: St-Hubert domain: st-hubert.com categories: [food, retail] tier: C aliases: [rôtisseries st-hubert] discover: { rss: true, sitemap: true } notes: "st-hubert.com is 403 to bots (news, press, sitemap). No validated sensor yet." - id: wendys name: Wendy's domain: wendys.com homepage: https://www.irwendys.com categories: [food, retail] tier: B aliases: [wendys] discover: { rss: true, sitemap: true } notes: "irwendys.com (Q4) behind a Cloudflare challenge; wendys.com has no feed. No validated sensor yet." - id: darden name: Darden Restaurants domain: darden.com categories: [food, retail] tier: C aliases: [olive garden, longhorn steakhouse] discover: { rss: true, sitemap: true } notes: "investor.darden.com (Q4) behind a Cloudflare challenge; darden.com newsroom 404. No validated sensor yet." - id: chick-fil-a name: Chick-fil-A domain: chick-fil-a.com categories: [food, retail] tier: B discover: { rss: true } sensors: - { name: stories feed, url: "https://www.chick-fil-a.com/feed", type: RSS, connector: rss, tier: B } - id: inspire-brands name: Inspire Brands domain: inspirebrands.com categories: [food, retail] tier: B aliases: [dunkin, dunkin', arby's, buffalo wild wings, sonic, baskin-robbins, jimmy john's] products: - { name: Dunkin', type: product, aliases: [dunkin, dunkin donuts] } - { name: Arby's, type: product } discover: { rss: true } sensors: - { name: news feed, url: "https://inspirebrands.com/feed/", type: RSS, connector: rss, tier: B } # ───────────────────────── D · Hospitality & travel ───────────────────────── - id: marriott name: Marriott International domain: marriott.com homepage: https://news.marriott.com categories: [travel] tier: B weight: 1.2 aliases: [marriott, bonvoy, sheraton, westin, ritz-carlton] products: - { name: Marriott Bonvoy, type: service, aliases: [bonvoy] } discover: { rss: true, sitemap: true } notes: "news.marriott.com is fully client-rendered (2.5 KB shell); investors.marriott.com unreachable. No validated sensor yet." - id: hilton name: Hilton domain: hilton.com homepage: https://stories.hilton.com categories: [travel] tier: B weight: 1.2 aliases: [hilton worldwide, hilton honors, waldorf astoria, doubletree] discover: { rss: true } sensors: - { name: stories feed, url: "https://stories.hilton.com/feed", type: RSS, connector: rss, tier: B } - id: hyatt name: Hyatt domain: hyatt.com homepage: https://newsroom.hyatt.com categories: [travel] tier: B aliases: [hyatt hotels, world of hyatt] discover: { rss: true } notes: "investors.hyatt.com (Q4) behind a Cloudflare challenge; newsroom RSS works." sensors: - { name: news releases feed, url: "https://newsroom.hyatt.com/news-releases?pagetemplate=rss", type: RSS, connector: rss, tier: B } - id: ihg name: IHG Hotels & Resorts domain: ihgplc.com categories: [travel] tier: B aliases: [ihg, intercontinental, holiday inn, crowne plaza] discover: { rss: true, sitemap: true } notes: "ihgplc.com is 403 to bots on news and RSS paths (Akamai). No validated sensor yet." - id: accor name: Accor domain: accor.com homepage: https://group.accor.com categories: [travel] tier: B aliases: [accorhotels, ibis, novotel, sofitel, fairmont] discover: { rss: true, sitemap: true } notes: "press.accor.com feed is 403 to bots; group.accor.com exposes no feed. No validated sensor yet." - id: wyndham name: Wyndham Hotels & Resorts domain: wyndhamhotels.com homepage: https://corporate.wyndhamhotels.com categories: [travel] tier: B aliases: [wyndham, days inn, la quinta, super 8] discover: { rss: true } sensors: - { name: news releases feed, url: "https://corporate.wyndhamhotels.com/news-releases/feed/", type: RSS, connector: rss, tier: B } - id: four-seasons name: Four Seasons domain: fourseasons.com homepage: https://press.fourseasons.com categories: [travel] tier: C aliases: [four seasons hotels and resorts] discover: { rss: true, pages: true } sensors: - { name: news releases, url: "https://press.fourseasons.com/news-releases/", type: HTML, connector: http, tier: C } - id: airbnb name: Airbnb domain: airbnb.com homepage: https://news.airbnb.com categories: [travel, technology] tier: B weight: 1.3 discover: { rss: true, sitemap: true, pages: true } notes: "news.airbnb.com has no RSS; investors.airbnb.com exposes no feed." sensors: - { name: newsroom sitemap, url: "https://news.airbnb.com/sitemap.xml", type: SITEMAP, connector: sitemap, tier: B, config: { maxUrls: 3000 } } - { name: crawler policy (robots.txt), url: "https://www.airbnb.com/robots.txt", type: FILE, connector: http, tier: D } - id: booking-holdings name: Booking Holdings domain: booking.com homepage: https://www.bookingholdings.com categories: [travel, technology] tier: B weight: 1.3 aliases: [booking, booking.com, priceline, agoda, kayak, opentable, rentalcars] products: - { name: Booking.com, type: service } - { name: Priceline, type: service } - { name: Agoda, type: service } - { name: OpenTable, type: service } discover: { rss: true, sitemap: true } notes: "ir.bookingholdings.com (Q4) behind a Cloudflare challenge." sensors: - { name: crawler policy (robots.txt), url: "https://www.booking.com/robots.txt", type: FILE, connector: http, tier: D } - id: kayak name: KAYAK domain: kayak.com categories: [travel, technology] tier: C aliases: [kayak] discover: { rss: true } sensors: - { name: news feed, url: "https://www.kayak.com/news/feed/", type: RSS, connector: rss, tier: C } - id: expedia name: Expedia Group domain: expedia.com homepage: https://www.expediagroup.com categories: [travel, technology] tier: B weight: 1.2 aliases: [expedia, hotels.com, vrbo, trivago, orbitz, travelocity] products: - { name: Vrbo, type: service } - { name: Hotels.com, type: service } discover: { rss: true, sitemap: true } notes: "expediagroup.com media/IR pages (Q4) behind a Cloudflare challenge." sensors: - { name: crawler policy (robots.txt), url: "https://www.expedia.com/robots.txt", type: FILE, connector: http, tier: D } - id: tripadvisor name: Tripadvisor domain: tripadvisor.com categories: [travel, internet] tier: B aliases: [trip advisor, viator, thefork] discover: { rss: true, sitemap: true } notes: "ir.tripadvisor.com is 403 to bots." sensors: - { name: crawler policy (robots.txt), url: "https://www.tripadvisor.com/robots.txt", type: FILE, connector: http, tier: D } - id: trip-com name: Trip.com Group domain: trip.com homepage: https://investors.trip.com categories: [travel, internet] tier: B aliases: [trip.com, ctrip, skyscanner, qunar] products: - { name: Skyscanner, type: service } discover: { rss: true, sitemap: true } notes: "investors.trip.com is 403 to bots; skyscanner.net serves a captcha. No validated sensor yet." - id: hopper name: Hopper domain: hopper.com homepage: https://media.hopper.com categories: [travel, technology] tier: C discover: { rss: true, sitemap: true, pages: true } sensors: - { name: media room, url: "https://media.hopper.com/", type: HTML, connector: http, tier: C } - id: carnival name: Carnival Corporation domain: carnivalcorp.com categories: [travel] tier: B weight: 1.1 aliases: [carnival, carnival cruise line, princess cruises, holland america, costa, aida, p&o cruises] discover: { rss: true } sensors: - { name: news feed, url: "https://www.carnivalcorp.com/feed/", type: RSS, connector: rss, tier: B } - id: royal-caribbean name: Royal Caribbean Group domain: royalcaribbeangroup.com categories: [travel] tier: B weight: 1.1 aliases: [royal caribbean, celebrity cruises, silversea] discover: { rss: true, sitemap: true, pages: true } notes: "rclinvestor.com exposes no RSS." sensors: - { name: news, url: "https://www.royalcaribbeangroup.com/news", type: HTML, connector: http, tier: B } - id: norwegian-cruise name: Norwegian Cruise Line Holdings domain: nclhltd.com categories: [travel] tier: B aliases: [norwegian cruise line, ncl, oceania cruises, regent seven seas] discover: { rss: true } sensors: - { name: press releases feed, url: "https://www.nclhltd.com/investors/news-events/press-releases/rss", type: RSS, connector: rss, tier: B } - id: msc-cruises name: MSC Cruises domain: msccruises.com categories: [travel] tier: C aliases: [msc] discover: { rss: true, sitemap: true } notes: "msccruises.com answers 401 to bots. No validated sensor yet." - id: vail-resorts name: Vail Resorts domain: vailresorts.com homepage: https://news.vailresorts.com categories: [travel, sports] tier: C aliases: [vail, epic pass, whistler blackcomb] discover: { rss: true, sitemap: true } notes: "investors.vailresorts.com is 403 to bots; news.vailresorts.com exposes no RSS. No validated sensor yet." - id: club-med name: Club Med domain: clubmed.com homepage: https://corporate.clubmed categories: [travel] tier: C discover: { rss: true, sitemap: true } notes: "corporate.clubmed feed is 403 to bots. No validated sensor yet." - id: transat name: Transat A.T. domain: transat.com categories: [travel, aviation] tier: C aliases: [air transat, transat] discover: { rss: true, sitemap: true, pages: true } sensors: - { name: media, url: "https://www.transat.com/en-CA/corporate/media", type: HTML, connector: http, tier: C } - id: sunwing name: Sunwing domain: sunwing.ca categories: [travel, aviation] tier: C aliases: [sunwing vacations, westjet vacations] discover: { rss: true, sitemap: true } notes: "sunwing.ca exposes no press page or feed reachable by bots. No validated sensor yet." - id: uber name: Uber domain: uber.com categories: [travel, transport, technology] tier: B weight: 1.3 aliases: [uber technologies, uber eats] products: - { name: Uber Eats, type: service } discover: { rss: true, sitemap: true, pages: true } notes: "investor.uber.com (Q4) behind a Cloudflare challenge; uber.com newsroom feed paths answer 406." sensors: - { name: newsroom (US), url: "https://www.uber.com/us/en/newsroom/", type: HTML, connector: http, tier: B } - { name: crawler policy (robots.txt), url: "https://www.uber.com/robots.txt", type: FILE, connector: http, tier: D } - id: lyft name: Lyft domain: lyft.com categories: [travel, transport, technology] tier: B discover: { rss: true, sitemap: true, pages: true } notes: "investor.lyft.com exposes no RSS." sensors: - { name: blog, url: "https://www.lyft.com/blog", type: HTML, connector: http, tier: B } - id: doordash name: DoorDash domain: doordash.com homepage: https://about.doordash.com categories: [food, technology, commerce] tier: B weight: 1.1 aliases: [dashpass, wolt] discover: { rss: true, sitemap: true, pages: true } notes: "ir.doordash.com (Q4) and doordash.com robots.txt behind a Cloudflare challenge." sensors: - { name: news, url: "https://about.doordash.com/en-us/news", type: HTML, connector: http, tier: B } - id: deliveroo name: Deliveroo domain: deliveroo.co.uk homepage: https://corporate.deliveroo.co.uk categories: [food, technology, commerce] tier: C discover: { rss: true, sitemap: true } notes: "corporate.deliveroo.co.uk and deliveroo.news are unreachable for bots. No validated sensor yet." - id: just-eat-takeaway name: Just Eat Takeaway.com domain: justeattakeaway.com categories: [food, technology, commerce] tier: C aliases: [just eat, takeaway.com, skip the dishes, skipthedishes, lieferando, thuisbezorgd] products: - { name: SkipTheDishes, type: service, aliases: [skip] } discover: { rss: true, sitemap: true } notes: "justeattakeaway.com newsroom and RSS behind a Cloudflare challenge; skipthedishes.com/news 403. No validated sensor yet." - id: grab name: Grab domain: grab.com categories: [travel, transport, technology, commerce] tier: B aliases: [grab holdings, grabfood] discover: { rss: true } sensors: - { name: press feed, url: "https://www.grab.com/sg/press/feed/", type: RSS, connector: rss, tier: B } - id: bolt name: Bolt domain: bolt.eu categories: [travel, transport, technology] tier: C aliases: [bolt technology, taxify] discover: { rss: true, sitemap: true, pages: true } sensors: - { name: blog, url: "https://bolt.eu/en/blog/", type: HTML, connector: http, tier: C } - id: getaround name: Getaround domain: getaround.com categories: [travel, transport] tier: C discover: { rss: true, sitemap: true } notes: "getaround.com blog and feed redirect to the homepage. No validated sensor yet." - id: turo name: Turo domain: turo.com categories: [travel, transport] tier: C discover: { rss: true, sitemap: true } notes: "turo.com blog behind a Cloudflare challenge. No validated sensor yet." - id: hertz name: Hertz domain: hertz.com homepage: https://newsroom.hertz.com categories: [travel, transport] tier: B aliases: [hertz global, dollar, thrifty] discover: { rss: true } sensors: - { name: newsroom feed, url: "https://newsroom.hertz.com/feed/", type: RSS, connector: rss, tier: B } - id: avis-budget name: Avis Budget Group domain: avisbudgetgroup.com categories: [travel, transport] tier: B aliases: [avis, budget, zipcar] products: - { name: Zipcar, type: service } discover: { rss: true, sitemap: true, pages: true } notes: "ir.avisbudgetgroup.com is 403 to bots." sensors: - { name: press releases, url: "https://www.avisbudgetgroup.com/home/news-and-media/press-release", type: HTML, connector: http, tier: B } - { name: sitemap, url: "https://www.avisbudgetgroup.com/sitemap.xml", type: SITEMAP, connector: sitemap, tier: B } - id: enterprise-mobility name: Enterprise Mobility domain: enterprisemobility.com categories: [travel, transport] tier: C aliases: [enterprise, enterprise rent-a-car, national car rental, alamo] discover: { rss: true, sitemap: true } notes: "enterprisemobility.com press pages are 403 to bots. No validated sensor yet." - id: sixt name: Sixt domain: sixt.com homepage: https://about.sixt.com categories: [travel, transport] tier: C discover: { rss: true, sitemap: true } notes: "sixt.com and about.sixt.com press pages behind a Cloudflare challenge. No validated sensor yet." - id: amadeus name: Amadeus domain: amadeus.com categories: [travel, technology] tier: B aliases: [amadeus it group] discover: { rss: true, sitemap: true } notes: "amadeus.com newsroom is a client-rendered shell; no feed or XML sitemap. No validated sensor yet." - id: sabre name: Sabre domain: sabre.com categories: [travel, technology] tier: B aliases: [sabre corporation] discover: { rss: true, sitemap: true, pages: true } notes: "investors.sabre.com is 403 to bots; sabre.com releases pages are client-rendered and the feed answers 500. No validated sensor yet." - id: travelport name: Travelport domain: travelport.com categories: [travel, technology] tier: C discover: { rss: true, sitemap: true, pages: true } sensors: - { name: blog, url: "https://www.travelport.com/blog", type: HTML, connector: http, tier: C } # ───────────────────────── E · Automotive retail & loyalty ───────────────────────── - id: carmax name: CarMax domain: carmax.com categories: [automotive, retail] tier: B discover: { rss: true, sitemap: true } notes: "investors.carmax.com (Q4) behind a Cloudflare challenge. No validated sensor yet." - id: autonation name: AutoNation domain: autonation.com categories: [automotive, retail] tier: C discover: { rss: true, sitemap: true } notes: "autonation.com/news 403, newsroom.autonation.com behind a Cloudflare challenge, investors.autonation.com RSS 404. No validated sensor yet." - id: carvana name: Carvana domain: carvana.com homepage: https://investors.carvana.com categories: [automotive, retail, commerce] tier: B discover: { rss: true } sensors: - { name: investor news feed, url: "https://investors.carvana.com/rss/news-releases.xml", type: RSS, connector: rss, tier: B } - id: autocanada name: AutoCanada domain: autocan.ca categories: [automotive, retail] tier: C discover: { rss: true, sitemap: true } notes: "autocan.ca is 403 to bots. No validated sensor yet." - id: air-miles name: AIR MILES domain: airmiles.ca categories: [retail, commerce] tier: C aliases: [air miles, airmiles, bmo air miles] discover: { rss: true, sitemap: true } notes: "airmiles.ca redirects most pages through OAuth; sitemap is the only stable public surface." sensors: - { name: sitemap, url: "https://www.airmiles.ca/sitemap.xml", type: SITEMAP, connector: sitemap, tier: C, config: { maxUrls: 1000 } } # ───────────────────────── F · Extensions of founding-file sources ───────────────────────── - id: shopify extend: true sensors: - { name: crawler policy (robots.txt), url: "https://www.shopify.com/robots.txt", type: FILE, connector: http, tier: D }