{
"id": "<string>",
"cycle_no": 0,
"first_week": "<string>",
"last_week": "<string>",
"listing_id": "<string>",
"listed_on": "<string>",
"original_price": 0,
"last_price": 0,
"min_price": 0,
"n_price_cuts": 0,
"n_price_rises": 0,
"status_path": [
"<string>"
],
"sold_price": 0,
"sold_on": "<string>",
"days_on_market": 0,
"price_path": [
{
"week": "<string>",
"price": 0,
"status": "<string>"
}
]
}The Listing cycle object
One cycle of a house on the market: when it went active, how the price moved, and how the cycle ended.
GET /v1/properties/{property_id}/listing-history returns it.
A parcel search row carries the counts history.listing_cycles_1y and
history.price_cuts_current_listing.
A cycle opens the first week the replay sees the parcel on the market. It closes when the parcel sells or comes off.
The next time the parcel goes active, a new cycle opens with cycle_no one higher. So a house listed, withdrawn and
relisted is two cycles.
Outcome
outcome | Means |
|---|---|
sold | It sold, and sold_price and sold_on are not null. |
canceled | The feed’s status read canceled. |
expired | The listing agreement expired. |
withdrawn | The feed’s status read withdrawn. |
off_market | It came off without one of the words above. |
active | Still on the market in the last week replayed. |
unknown | The last status was neither active nor terminal, so how it ended is unknown. |
The fields a reader misreads
original_priceis the first price this replay saw, not necessarily the first price the house ever asked. On a house already listed when the replay began, atmeta.coverage[].parcel.history.first_week, it is the price in that week’s file.days_on_marketis accurate to the week. It runs fromlisted_ontosold_on, or to the last event week while the cycle is open. The events behind it are weekly observations.first_weekagainstlisted_on.first_weekis when the replay saw the cycle.listed_onis the date the feed itself carried and can be earlier.n_price_cutsandn_price_risescount moves, not dollars.original_price,min_priceandlast_priceare the dollars.price_path[]is the drawable series: every listing event of the cycle in order, each with its week, price, status and event kind. A null price in it is a week whose record carried none.status_path[]is the distinct statuses in order, so a status repeated over many weeks appears once.
Contact data
This host serves neitheragent_name nor agent_license, so a cycle carries neither key. The first is the first
listing agent as the file named it. The second is the state licence number, where the 2025 files carried one. The
parcel’s listing block identifies its agent by agent_id, the key to the Listing agent object.One listing cycle: from the first active sighting to sold, off market or still active at its last week.
Cycle id (32 hex).
1 for the first cycle observed on the parcel.
-9007199254740991 <= x <= 9007199254740991The week the history lake first saw the cycle.
The week of its last event.
The feed's listing id; null when the delivery does not record it.
The original listing date the feed carried.
The first list price seen; null when no event of the cycle carried a price.
-9007199254740991 <= x <= 9007199254740991The last list price seen; null when no event of the cycle carried a price.
-9007199254740991 <= x <= 9007199254740991The lowest list price seen; null when no event of the cycle carried a price.
-9007199254740991 <= x <= 9007199254740991Price cuts in the cycle.
-9007199254740991 <= x <= 9007199254740991Price rises in the cycle.
-9007199254740991 <= x <= 9007199254740991The distinct statuses in order.
How the cycle ended. The value sold means the cycle sold. The values canceled, expired, withdrawn and off_market mean the listing came off without a sale. The value active means the listing was still on the market at the last week. The value unknown means the last status was neither active nor terminal.
sold, canceled, expired, withdrawn, off_market, active, unknown The sold price; null unless the cycle sold with a price.
-9007199254740991 <= x <= 9007199254740991The sold date.
Days from listed_on to sold_on. Without sold_on, days from listed_on to the last event week; null without listed_on.
-9007199254740991 <= x <= 9007199254740991Every listing event of the cycle in order.
Show child attributes
Show child attributes
Was this page helpful?