Filtering Listings by Date and Timestamps
Overview
When building real estate applications on top of the Repliers API, one of the most common requirements is narrowing results by time — whether you want listings added in the last 30 days, sold within a specific window, or recently changed so you can bring your website back in sync after your webhook endpoints experienced downtime. This guide walks through every date and timestamp parameter available on the POST /listings endpoint, explains what each one targets, and shows you how to combine them effectively.
Date Format
All date parameters accept values in ISO 8601 date format: YYYY-MM-DD
2024-11-01
Parameter Groups
Date filters on the listings endpoint fall into eight logical groups based on what they target in the listing lifecycle.
1. Listing Date (When a Listing Hit the MLS)
These parameters filter by the date a listing was originally added to the MLS.
Parameter | Description |
|---|---|
| Match listings added to the MLS on this exact date. |
| Returns listings added to the MLS on or after this date. |
| Returns listings added to the MLS on or before this date. |
Example — listings added to the MLS in November 2024:
POST /listings?minListDate=2024-11-01&maxListDate=2024-11-30
Tip: UseminListDateandmaxListDatetogether to define a range. UsinglistDatealone matches only a single day.
2. Updated On (Last MLS Update)
These parameters filter by the date a listing was last updated on the MLS side.
Parameter | Description |
|---|---|
| Match listings last updated on this exact date. |
| Returns listings last updated on or after this date. |
| Returns listings last updated on or before this date. |
Example — listings that received any MLS update this week:
POST /listings?minUpdatedOn=2024-11-18
Note:updatedOnreflects MLS-side updates — price changes, status changes, remarks edits, and so on. It does not capture Repliers-internal updates (seerepliersUpdatedOnbelow).
3. Repliers Updated On (Internal Timestamp)
repliersUpdatedOn is a Repliers-internal timestamp that gets updated when Repliers recalculates data that isn't sourced directly from the MLS — for example, when a property estimate is refreshed or when Repliers-specific enrichments change.
Parameter | Description |
|---|---|
| Match listings whose |
| Returns listings whose |
| Returns listings whose |
A practical use case for minRepliersUpdatedOn is recovering from webhook delivery failures. If your webhook endpoint experienced downtime and you missed a batch of events, you can use this parameter to fetch all listings that changed during that window and reconcile your local state.
Example — fetch listings updated by Repliers since a specific date:
POST /listings?minRepliersUpdatedOn=2024-11-19
Note: UseminRepliersUpdatedOn(rather thanminUpdatedOn) when you need to catch changes to Repliers-enriched fields such as estimates, which are not reflected in the MLSupdatedOntimestamp.
4. Sold / Leased Date
These parameters apply to sold and leased listings and filter by when the transaction closed.
Parameter | Description |
|---|---|
| Returns sold/leased listings with a sold date on or after this value. |
| Returns sold/leased listings with a sold date on or before this value. |
Example — sold listings in Q3 2024:
POST /listings?lastStatus=Sld&minSoldDate=2024-07-01&maxSoldDate=2024-09-30
Note: Combine withlastStatus=SldorlastStatus=Lsdfor sold and leased listings respectively. See lastStatus Definitions for the full list of status values.
5. Closed Date
Close Date refers to the formal closing or completion date of a transaction — distinct from the sold date on some MLSes.
Parameter | Description |
|---|---|
| Returns listings with a close date on or after this value. |
| Returns listings with a close date on or before this value. |
Example — transactions closed in the past 90 days:
POST /listings?minClosedDate=2024-08-21&maxClosedDate=2024-11-19
6. Unavailable Date
These parameters filter by the date a listing transitioned out of active status — that is, when it became unavailable. This applies to listings that ended their active period for any reason, including sold transactions as well as non-sold outcomes such as terminations, suspensions, expirations, and defaults (lastStatus values of Sus, Exp, Ter, Dft).
The key distinction from minSoldDate / maxSoldDate is that unavailableDate is set for all inactive outcomes, not just sold ones. It is most useful when you want to track when a listing left the market regardless of how it did so.
Parameter | Description |
|---|---|
| Returns listings that became unavailable on or after this date. |
| Returns listings that became unavailable on or before this date. |
Example — listings that left the market this month, regardless of outcome:
POST /listings?status=U&minUnavailableDate=2024-11-01
Heads up: Not all MLSes provide unavailable date data. If your board doesn't support it, these parameters will have no effect. For a full breakdown of status values, see lastStatus Definitions.
7. Price Change Date
These parameters allow you to find listings based on when their price was last changed — useful for building "price reduced" features.
Parameter | Description |
|---|---|
| Returns listings that had a price change on or after this date. |
| Returns listings that had a price change on or before this date. |
Example — listings with a price change in the last 7 days:
POST /listings?status=A&minPriceChangeDateTime=2024-11-12
Tip: Pair with lastPriceChangeType=decrease to show only price reductions — a popular feature for deal-hunting interfaces.8. Open House Date
These parameters filter for listings that have an open house scheduled within a date range.
Parameter | Description |
|---|---|
| Returns listings with an open house on or after this date. |
| Returns listings with an open house on or before this date. |
Example — listings with an open house this weekend:
POST /listings?minOpenHouseDate=2024-11-23&maxOpenHouseDate=2024-11-24
The timestamps Object in Responses
When fetching listing data, you'll find a timestamps object nested inside each listing. This object exposes a full set of granular sub-timestamps that go beyond the top-level date filter fields:
"timestamps": {
"idxUpdated": "2026-04-16T11:59:16.000Z",
"listingUpdated": "2026-04-16T11:59:16.000Z",
"photosUpdated": null,
"conditionalExpiryDate": null,
"terminatedDate": null,
"suspendedDate": null,
"listingEntryDate": "2026-04-16T15:59:16.000Z",
"closedDate": null,
"unavailableDate": null,
"expiryDate": "2027-04-15T00:00:00.000Z",
"extensionEntryDate": null,
"possessionDate": "2026-09-01T00:00:00.000Z",
"repliersUpdatedOn": "2026-04-16T16:59:11.030Z",
"imageInsightsUpdatedOn": null
}
These are response-only fields — they cannot all be used as filter parameters directly, but they're useful for display logic and understanding the full lifecycle of a listing in your application.
Sorting by Date
In addition to filtering, you can sort results by date-related fields using the sortBy parameter:
Value | Behavior |
|---|---|
| Most recently updated first |
| Oldest update first |
| Most recently created first |
| Oldest creation first |
| Most recently sold first |
| Oldest sold first |
| Most recently updated by Repliers first |
| Oldest Repliers update first |
Example — most recently updated active listings:
POST /listings?status=A&sortBy=updatedOnDesc
Common Use Cases
Show newly listed properties (last 7 days)
POST /listings?status=A&minListDate=2024-11-12
Build a "recently sold" market page
POST /listings?lastStatus=Sld&minSoldDate=2024-10-01&maxSoldDate=2024-10-31&sortBy=soldDateDesc
Catch up on missed updates after webhook downtime
POST /listings?minUpdatedOn=2024-11-19
For changes to Repliers-enriched fields (e.g. estimates) that aren't tracked by the MLS, use minRepliersUpdatedOn instead.
Find listings with recent price reductions
POST /listings?status=A&minPriceChangeDateTime=2024-11-12&lastPriceChangeType=decrease
Upcoming open houses this week
POST /listings?minOpenHouseDate=2024-11-20&maxOpenHouseDate=2024-11-26
All listings that left the market this month (any reason)
POST /listings?status=U&minUnavailableDate=2024-11-01
Summary Reference Table
Parameter | Targets | Supports Range |
|---|---|---|
| Date listed on MLS | Exact only |
| Date listed on MLS | ✅ |
| Last MLS update date | Exact only |
| Last MLS update date | ✅ |
| Internal Repliers update | Exact only |
| Internal Repliers update | ✅ |
| Sold/leased date | ✅ |
| Formal closing date | ✅ |
| Date became unavailable (all inactive outcomes) | ✅ |
| Last price change date | ✅ |
| Open house date | ✅ |
Related Articles
- Searching, Filtering and Paginating Listings Guide
- lastStatus Definitions
- Using Aggregates To Determine Acceptable Values For Filters
Updated on: 16/04/2026
Thank you!
