Problem
To reduce manual data entry time for inspectors, we need to implement a feature that fetches basic property details (sqft, bedrooms, bathrooms, year built) automatically once a property address is provided. This will improve workflow efficiency and data accuracy.
Proposed solution
Proposed Workflow
- Address Input: Inspector enters or selects an address (via Google Places Autocomplete).
- Trigger: A new "Fetch Property Details" button appears next to the address field.
- API Integration: Upon clicking, the system calls a property data provider (e.g., RealEstateAPI.com).
- Auto-population: The relevant fields in the project form (e.g., Living Sqft, Bedrooms, Bathrooms, Year Built) are automatically populated.
- Manual Override: The user retains the ability to edit any pre-filled fields if the data is outdated or incorrect.
Override Logic & Data Protection
Technical Requirements
To prevent accidental data loss when an inspector has already started filling out the form manually, the following state machine should be implemented upon receiving the API response:
-
Scenario A (Empty Fields): If all target property fields are currently empty, auto-fill the data immediately without prompting.
-
Scenario B (Existing Data): If one or more target fields already contain user-inputted values, intercept the auto-fill and trigger a Confirmation Modal:
-
Modal Title: Overwrite Existing Data?
-
Modal Body: "We found official tax records for this property. Would you like to overwrite your current inputs with the fetched data?"
-
Actions: [Cancel] (Dismisses modal, keeps current inputs) / [Confirm Overwrite] (Replaces inputs with API data).
Field Mapping Table
| RealEstateAPI Key (Source) |
Internal DB Field |
Data Type |
Implementation Notes |
| bedrooms |
bedroom_count |
Integer |
Standard integer count |
| bathrooms |
bathroom_count |
Float |
Support half-baths (e.g., 2.5) |
| square_footage |
living_sqft |
Integer |
Total interior living area |
| year_built |
year_built |
Integer |
YYYY format |
| property_type |
property_type |
String |
Standardize to internal enums (e.g., "SFR", "Condo") |
| address.formatted |
normalized_address |
String |
Used to match and verify cache hits |
Acceptance Criteria
Notes
- We should prioritize accuracy for common residential property types.
- Ensure the API key is handled securely in the backend environment variables.
- The default UI should allow inspectors to override any fetched data, as tax records may occasionally be outdated.
- Ensure the UI clearly communicates that these are "official tax record suggestions" so inspectors know they can (and should) verify them on-site.
Alternatives considered
No response
Who would benefit?
Solo inspector, Self-hoster / IT admin
Code of conduct
Problem
To reduce manual data entry time for inspectors, we need to implement a feature that fetches basic property details (sqft, bedrooms, bathrooms, year built) automatically once a property address is provided. This will improve workflow efficiency and data accuracy.
Proposed solution
Proposed Workflow
Override Logic & Data Protection
Propertyschema (e.g.,living_sqft,bedrooms,bathrooms,year_built).Technical Requirements
To prevent accidental data loss when an inspector has already started filling out the form manually, the following state machine should be implemented upon receiving the API response:
Scenario A (Empty Fields): If all target property fields are currently empty, auto-fill the data immediately without prompting.
Scenario B (Existing Data): If one or more target fields already contain user-inputted values, intercept the auto-fill and trigger a Confirmation Modal:
Modal Title: Overwrite Existing Data?
Modal Body: "We found official tax records for this property. Would you like to overwrite your current inputs with the fetched data?"
Actions: [Cancel] (Dismisses modal, keeps current inputs) / [Confirm Overwrite] (Replaces inputs with API data).
Field Mapping Table
Acceptance Criteria
Notes
Alternatives considered
No response
Who would benefit?
Solo inspector, Self-hoster / IT admin
Code of conduct