
Ask a UK surveyor where their time goes and much of the answer comes before any writing starts: looking up the EPC certificate, checking Environment Agency flood data, searching for conservation areas and listed buildings, then copying it all into a template. AI property survey report software can take most of that collation off their hands. This post explains how we built SurvaIQ, a platform that pulls live UK government data and assembles valuation reports automatically, using Next.js, Node.js and a FastAPI AI service.
We will cover the data sources, the split between the main application and the AI service, how RAG lets teams ask questions of a report, the team workflow, and what to consider if you are building in PropTech.
The problem: manual data collation in UK property surveys
UK surveyors and valuation firms were spending hours on every report collating EPC certificates, Environment Agency flood data and planning constraints from separate government sources. Firms also needed team roles, a review workflow and client files handled in one place, rather than spread across email, shared drives and spreadsheets.
That gave the product two jobs. First, automate the research: given an address, fetch everything public records can say about the property. Second, run the firm's workflow: who is working on which project, what stage it is at, and who signs it off.
In SurvaIQ, admins and senior surveyors create a property project with the address, geocoordinates, client details and supporting documents, then trigger AI report generation. Projects move through four workflow stages from In Progress to Completed, with status visible to everyone in real time.
Integrating UK EPC, Environment Agency flood and planning data APIs
The platform pulls from three UK government data sources automatically:
- UK EPC API — energy performance certificates for any UK property, domestic or non-domestic.
- Environment Agency Flood API — flood risk warnings with severity levels, mapped onto Mapbox flood composites.
- UK Planning Data API — planning constraints including conservation areas, listed buildings, green belt, AONB and brownfield land.
Mapbox handles mapping and Geoapify supports geolocation work. Geocoordinates on each project are what tie these sources together, because flood and planning checks are fundamentally spatial queries.
Practical lessons from working with public data APIs
- Address matching is the hard part. The same property can be written several ways. Resolve the address and coordinates once, carefully, then use them consistently for every lookup.
- Expect gaps. Not every property has an EPC on record, and some sources will be slow or unavailable at times. A report generator should state clearly what was not found rather than silently leaving sections blank.
- Record the source and retrieval time. Surveyors need to know where a fact came from and when it was fetched, especially for data that changes, such as flood warnings.
Data integrations like these are a big part of our API development and integrations work.
Architecture: Next.js, Node.js and a separate FastAPI AI service
SurvaIQ is split into three main parts:
- A Next.js front end for the team-facing application, deployed on Vercel.
- A Node.js, Express.js and TypeScript back end with MongoDB Atlas via Mongoose, run with PM2 in production. It owns users, projects, files, roles and workflow, and documents its endpoints with Swagger/OpenAPI.
- An external FastAPI AI report service that generates reports and returns them as structured HTML sections with vector embeddings.
Why keep the AI in a separate Python service?
Python has the strongest ecosystem for AI work, and FastAPI is a fast, typed way to expose it over HTTP. Keeping report generation in its own service means the core application stays in one language, the AI layer can be changed or scaled independently, and long-running generation jobs never tie up the main API. The Node.js back end calls the service, stores the returned sections and notifies the team when the report is ready.
Structured sections, not one big document
Reports come back as configurable, structured sections rather than one block of text. That lets firms shape reports to their own templates, lets surveyors review and edit section by section, and makes the next feature possible.
RAG-based Q&A: letting surveyors ask questions of a report
Each report section is stored with vector embeddings, which enables retrieval-augmented generation (RAG) over the report. A surveyor or reviewer can ask a question, such as what the flood risk position is or whether any planning constraints apply, and the system retrieves the relevant sections and answers from them.
The value of RAG here is grounding. Rather than answering from general knowledge, the model answers from the content of that specific report. In practice that means:
- Answers can be traced back to the sections they came from.
- Reviewers can check a long report quickly without reading every section in order.
- Embedding per section, rather than per report, keeps retrieval precise.
For professional reports, the AI's job is to save time on collation and navigation. The surveyor's judgement on value and condition stays with the surveyor.
The platform also includes comparable property analysis with price-per-unit calculation, which gives the valuation a structured starting point. If you are exploring similar retrieval patterns, our guide on building an AI chatbot for your website covers RAG fundamentals.
Team roles, real-time status and secure file handling
Surveying firms have clear hierarchies, and the platform reflects them with six roles: Admin, Senior Surveyor, Surveyor, Junior Surveyor, Report Writer and Viewer. Each sees and does what fits their job, which is what makes a review workflow enforceable rather than informal.
Supporting infrastructure includes:
- Real-time updates over Socket.io using JWT-authenticated rooms, so project and report status changes appear for the whole team immediately.
- Secure file management on AWS S3 with presigned URL uploads, plus file type and size validation.
- Authentication with JWT, Passport.js and Google OAuth 2.0.
- Notifications through Gmail SMTP via Nodemailer with per-user preferences, and Firebase Cloud Messaging for push.
- Security and operations with Helmet, rate limiting, Joi validation and Winston logging.
What to consider when building AI report software for property
If you are planning a PropTech product along these lines, here is our advice:
- Automate the research, not the professional judgement. Users trust a tool that does the tedious collation and leaves valuation decisions to them.
- Show your sources. Every automated fact should be traceable to where and when it was retrieved.
- Design report structure first. Agree section templates with real surveyors before tuning any prompts.
- Isolate the AI service. A separate service makes it far easier to change models or providers later.
- Check data licensing. Public data APIs have terms of use. Confirm your intended commercial use is allowed before building on them.
SurvaIQ is part of our AI integration and automation work. For more on the platform, see the SurvaIQ case study.
Frequently Asked Questions
Can AI write property survey reports?
AI can assemble large parts of a report automatically, especially sections built from public data such as EPC ratings, flood risk and planning constraints. A qualified surveyor should still review the report and own the valuation and condition judgements.
Is there an API for UK EPC certificates?
Yes. EPC data for domestic and non-domestic properties in England and Wales is available through an official API, which SurvaIQ uses to pull certificates automatically for each property project.
How do you check flood risk for a UK property programmatically?
The Environment Agency provides flood monitoring data through public APIs. Using the property's coordinates, a platform can retrieve current warnings and severity levels and display them on a map, as SurvaIQ does with Mapbox.
Why use FastAPI for an AI report service?
FastAPI gives Python AI code a fast, typed HTTP interface with automatic documentation. Running it as a separate service keeps AI workloads independent of the main application and easy to scale or replace.
Building software for surveyors, valuers or property teams? Talk to us — we will help you work out which parts of the workflow are worth automating first.
