Atlas — Repull's market data partner — tracks 8.4 million live short-term-rental listings across every city. ADR, occupancy, demand curves, events, comp set. Refreshed nightly. Exposed through the same API you use for everything else.
What you build with this
Pull comp data nightly, run your own model, push optimized rates back through Repull to every connected channel — same API both ways. The Atlas dataset gives you the input; the channel manager gives you the apply call.
Surface the listings you're competing with. Filter by bedroom count, layout, amenities, distance, ADR band. Score them against yours. Build the dashboard your operators have been keeping in a spreadsheet.
Ranked search across cities by yield, supply growth, occupancy floor, and event calendar density. Tell an operator where the next investment property should go, with the data behind every line.
Worked example
Pull tonight's comp data for a listing's market, weight it against your own occupancy curve, and push the resulting rates to every channel. The same SDK does both reads and writes — there's no second integration.
One read returns ADR percentiles, demand index, and the comp set behind those numbers. Filtered to the same bedroom count, layout, and amenity profile as your listing.
Atlas hands you the inputs in a clean shape. Your model decides the rate. Whether that is a regression, a calendar-aware boost on event days, or just "match the median minus 3%" — it stays in your code.
One write fans out to Airbnb, Booking.com, VRBO, and Plumguide. The audit trail records what was applied, when, and why — surfaced in the dashboard for the operator to see.
import { Repull } from '@repull/sdk'
const repull = new Repull({
apiKey: process.env.REPULL_API_KEY!,
workspaceId: process.env.REPULL_WORKSPACE_ID!,
})
// 1) Pull market data for this listing's city + comp set
const market = await repull.markets.get('austin-tx', {
matches: { listingId: 'l_4118' }, // bed/bath/amenity match
range: { from: '2026-06-01', to: '2026-07-31' },
})
// 2) Run your model
const rates = market.days.map(day => {
const base = day.compSet.adrP50
const eventBoost = day.events.length > 0 ? 1.15 : 1
const occupancyAdjust = day.demandIndex > 0.7 ? 1.08 : 0.97
return {
date: day.date,
rate: Math.round(base * eventBoost * occupancyAdjust),
}
})
// 3) Push back to every connected channel — one call
await repull.pricing.apply('l_4118', {
rates,
source: 'my-engine@v3',
})That's the whole engine. Read, model, write — same SDK, same auth, same workspace. The audit trail (what rates went where, driven by which signal) lives in the dashboard under Pricing → Audit.
The dataset
Atlas is a market-intelligence fleet that scrapes and indexes short-term-rental data across the public web. Repull exposes it as a first-class part of the API.
8.4 million live listings across every short-term-rental market we've seen demand for. ADR p25 / p50 / p75, occupancy, RevPAN, supply trend, demand index — per city, per neighborhood, refreshed nightly.
365-day demand curve per market, overlaid with concerts, sports, conferences, and holidays. The kind of thing that lifts rates 30% on a Tuesday in March if you saw it coming — and Atlas saw it coming.
Per-listing comp set drawn from the same market, matched on bedroom count, layout, amenity overlap, and walk-time radius. Not a manual list — a recomputed set every night.
Multi-year backfill on the major markets. Run a backtest before you deploy a model. See where the floor was the last time the market softened.
Atlas opens its own public beta in May 2026.
If you want raw access at scale — large portfolios, specialized comp queries, custom market builds — the Atlas team is available directly.
Connect a property and you'll see comp data and recommendations on day one — for the markets that listing lives in.