DTC Bike Brand Catalog & Pricing Aggregator avatar

DTC Bike Brand Catalog & Pricing Aggregator

Pricing

Pay per event

Go to Apify Store
DTC Bike Brand Catalog & Pricing Aggregator

DTC Bike Brand Catalog & Pricing Aggregator

Scrape bike product listings, specs, and current pricing from Canyon, Trek, and Felt direct-to-consumer brand sites. Delivers model name, category, SKU, price, stock status, and spec data.

Pricing

Pay per event

Rating

0.0

(0)

Developer

BowTiedRaccoon

BowTiedRaccoon

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

13 hours ago

Last modified

Share

Scrapes product listings, specifications, and current pricing from three direct-to-consumer bicycle brand websites: Canyon, Trek, and Felt. Returns a unified dataset of bike models with prices, stock status, frame material, drivetrain, and available size/color options.

What it does

The scraper visits the official brand stores and extracts current catalog data per bike model:

  • Canyon (Salesforce Commerce Cloud) — category listing pages feed product detail URLs; per-product data is extracted from ProductGroup JSON-LD on the detail pages
  • Trek (SAP Hybris with Vue SSR) — category listing pages carry complete product data in Vue component attributes; no detail-page hop required
  • Felt (Shopify) — collection listing pages route to product detail pages where Shopify's ProductGroup JSON-LD is parsed

Output fields

FieldTypeDescription
brandstringSource brand: canyon, trek, or felt
model_namestringFull model name (e.g. "Aeroad CFR Di2")
model_yearnumberModel year extracted from name/tags
categorystringroad, gravel, mtb, ebike, or urban
sub_categorystringSub-category slug from URL path
skustringProduct SKU or handle
frame_materialstringcarbon, aluminum, steel, or titanium
groupsetstringDrivetrain groupset inferred from specs/name
wheelsetstringWheelset specification (when available)
weight_kgnumberBike weight in kg (when declared in specs)
frame_size_optionsstringAvailable frame sizes, comma-separated
color_optionsstringAvailable colors, comma-separated
price_usdnumberCurrent retail price in USD
price_msrp_usdnumberMSRP/original price when different from sale price
in_stockbooleanCurrent stock status
discontinuedbooleanWhether the model is discontinued
product_urlstringCanonical product page URL
image_urlstringPrimary product image URL
descriptionstringProduct description (up to 500 characters)
spec_sheetstringJSON string of key component specs (Canyon only)

Input

FieldTypeDefaultDescription
maxItemsinteger10Maximum total records to return
brandsarray["canyon", "trek", "felt"]Which brands to include
categoriesarray[]Filter by category slug (empty = all)

Notes

  • Canyon products include a spec_sheet JSON field with detailed component specs from their ProductGroup JSON-LD.
  • Trek product detail pages are JavaScript-rendered (SPA). All available data — name, price, category, stock status — is extracted from server-side-rendered listing page attributes, so Trek records do not include spec sheets or weight.
  • Felt product pages are Shopify-hosted and return a full ProductGroup JSON-LD; spec extraction is limited to what Shopify exposes in structured data.
  • Pricing data reflects the public retail price at the time of scraping. Sale prices are captured in price_usd; if a strike-through MSRP is present, it appears in price_msrp_usd.