New Feature
Query Builder: Rent Roll Columns
Added a new Rent Roll column category for Query Builder. New columns:
rent_roll_floorplan_namerent_roll_bedrent_roll_bathrent_roll_partial_bathrent_roll_asking_rentrent_roll_in_place_rentrent_roll_estimated_units
rent_roll_in_place_rent maps to rent_roll.effective_price.
Improvement
Query Validation: Rent Roll Compatibility Guardrails
Query Builder now rejects incompatible mixed selections with HTTP 422 across dataset validation endpoints.
Incompatible mix:
- Any
Rent Rollcolumn - With any
Unit,Price, orLeasing Activity(occupancy) column
This rule applies to both selected scope columns and filter columns.
Improvement
Query Builder: Rent Roll Aggregation Selectors
Added 3 mutually exclusive Rent Roll aggregation selector columns:
rent_roll_aggregation_bed_bathrent_roll_aggregation_bed_bath_sqftrent_roll_aggregation_floorplan
Only one selector can be used in a query.
Rent Roll metrics now require one selector:
rent_roll_asking_rentrent_roll_in_place_rentrent_roll_estimated_units
If Rent Roll metrics are used without one of the selectors, dataset endpoints return HTTP 422 with a validation message.
Improvements
Property
- New query parameter
use_all_in_rentcan be passed in to adjust property prices to use the All-in Rent value (also known as Total Monthly Leasing Price).
Improvement
Relative Date Filters in Query Builder
Date filters in the Query Builder now support relative time ranges (in addition to selecting specific calendar dates). This is especially useful for scheduled dataset exports, so each run automatically targets the most relevant time window.
Supported relative options include:
- Last N Days
- Last Week
- Last Month
- Last Quarter
- Last Year
The backend resolves relative date selections into concrete dates at execution time, ensuring scheduled exports stay up-to-date.
New Feature
Date Filtering for Property Details
We’ve added optional date filtering to the GET /property/{id} endpoint, allowing you to filter units, history, availability periods, and concessions based on a date range.
New Query Parameters:
from(optional): Filter results to include only data that overlaps with dates on or after this date (ISO 8601 format, e.g., “2024-01-01”)to(optional): Filter results to include only data that overlaps with dates on or before this date (ISO 8601 format, e.g., “2024-12-31”)
What Gets Filtered:
- Units: Filtered based on
enter_marketandexit_marketdates - History: Filtered based on
from_dateandto_dateof each history entry - Availability Periods: Filtered based on
enter_marketandexit_marketdates - Concessions: Filtered based on
from_dateandto_dateof each concession
Usage: You can provide either date, both dates, or neither. When dates are provided, only data that overlaps with the specified date range will be included in the response.
Example Requests:
This feature is particularly useful when you need to analyze property data for a specific time period or when generating reports for a particular date range.
New Feature
Effective Rent Filtering in Unit Mix
We’ve added support for filtering by effective rent (after concessions) in addition to asking rent. You can now filter properties by effective rent and effective rent per square foot for all unit types.
New Filter Fields:
effective_rent: Filter by average effective rent (net rent after concessions)effective_rent_per_sqft: Filter by average effective rent per square foot
These filters are available for:
- Overall property metrics
- Individual unit types (studio, 1BR, 2BR, 3BR, 4BR)
Example Payloads:
You can combine effective rent filters with asking rent filters to compare properties:
Effective rent filters work the same way as asking rent filters, supporting minimum/maximum values and optional inclusion of properties with null values via the allow_null parameter.
Improvement
Rate Limiter: Updated headers
We’ve updated our rate limit headers from IETF draft v7 to the latest v10 format. The headers now use structured header syntax with quoted policy names for better standardization and compatibility.
Header Format Changes:
- RateLimit-Policy: Now uses structured header format with quoted policy name
- Format:
"policy-name";q=quota;w=window - Example:
"default";q=500;w=60(500 requests per 60 seconds)
- Format:
- RateLimit: Updated to use structured header format with quoted policy name
- Format:
"policy-name";r=remaining;t=reset - Example:
"default";r=499;t=59(499 requests remaining, 59 seconds until reset)
- Format:
The header values are now fully compliant with the latest IETF draft standard, making it easier for clients to parse and handle rate limit information programmatically.
New Feature
Comparables: Student Assets & Distance to Universities
We added support to POST /property/comparables for more student housing scenarios. Use isStudent=true to indicate the subject is student housing and optionally pass maxMilesToUniversity (in miles) to prioritize proximity to universities when ranking comps. These query params are optional and fully backward compatible.
The algorithm now prioritizes comps with a similar distance to universities as the subject property.
New Feature
Property Search: created_on
We added a new field created_on to the GET /property/search endpoint so you know when the data was last updated. This field will be populated 2025-10-25.
New Feature
Market: Shape Search endpoint
We added a GET /market/shape_search endpoint to search for markets by name, city, state, or tags. Provide the q query string to receive up to 7 matches, including market names and GeoJSON shapes of the market boundaries. This endpoint is free to use and can be enabled on demand.
New Feature
Property
To support greater fee transparency and help clients make fair comparisons, our system will now always display the base rent. In addition, we’ve introduced a new building-level attribute, fees, which includes all required and non-refundable charges. This allows clients to compare both base rent and all-in rent across buildings more accurately.