FlowRunner
PricingContact
Theme
Start Free

Connect AI agents to Melo, an aggregated and deduplicated French real estate listings API. Agents search properties across sources, read market insights by location, and maintain saved searches whose match webhook can start a flow in realtime.

1 trigger 12 actions API key available
Melo website ↗ Platform Documentation ↗ Capability data verified 2026-08-04
On New Property Match fires when a listing meeting the saved criteria appears
Get Property returns the full document for the matched listing
Get Price Per Meter returns the average and median for that market segment
Get Points Of Interest confirms what is actually near the address, not just the postcode
Get Similar Properties returns comparable listings so the price sits in context
The acquisitions analyst receives the listing, the market benchmark, and the comparables
Analyst approves any change to the search criteria before it goes live and starts firing

What This Integration Enables

Melo, which serves the Stream Estate API, does the boring and genuinely hard part of French property data: it collects adverts from listing portals and agencies across the country and deduplicates them, so one property that appears under four agencies arrives as one property. That is the entire reason to build on it rather than on individual portals. An acquisitions pipeline that counts adverts instead of properties inflates its own numbers and wastes an analyst's morning on the same flat three times. FlowRunner agents search properties with filters on transaction type, property type, price, surface, room count, location, and energy rating, retrieve a single property document by UUID, and pull properties similar to a given one; read market indicators including average, median, and time-series price per square metre for a market segment, and points of interest such as schools, hospitals, and restaurants near a coordinate; resolve locations through an autocomplete that returns city and department IRIs and list French cities with their INSEE codes, postcodes, and grouping data; and list, retrieve, create, update, and delete saved searches, which are persisted search criteria with optional webhook delivery.

Unlike most connectors in this part of the catalog, this one does have a trigger, and it is worth understanding how it is put together because that shapes what an approval should cover. On New Property Match is realtime and single-app: turning it on creates a saved search whose match webhook is the trigger callback, and turning it off deletes that search. The trigger and the saved search are therefore the same object seen from two directions, which means editing criteria through Update Saved Search is editing what fires, and Delete Saved Search on the wrong record removes what a live flow depends on. One operational note carried straight from the vendor: webhook match and event deliveries are unauthenticated POSTs with no signature, and Melo recommends restricting your endpoint to its published IP addresses. There is no scheduled execution operation here, so a saved search either has webhook delivery configured or it is a stored set of criteria you read back with Get Saved Search and re-run yourself through Search Properties. The connector is built and verified against Melo's official API.

Without FlowRunner

Portals checked by hand each morning Someone opens several listing sites and re-runs the same filters looking for what is new
Duplicates counted as separate finds The same property appears under three agencies and looks like three opportunities
Price judged without a benchmark An asking price is assessed on instinct because the local average is not to hand

With FlowRunner

New matches arrive as they are published A listing that meets the criteria reaches the analyst without anyone refreshing anything
One property, one record Melo's aggregation and deduplication mean a match is a property rather than an advert
Every match carries its market context Price per square metre, comparables, and nearby amenities travel with the listing

Use Case Scenarios

Acquisition Criteria That Watch Themselves

An investment team is buying two-bedroom flats in a defined set of arrondissements under a price ceiling. The trigger fires when a listing matching those criteria appears. The agent calls Get Property for the full document, Get Price Per Meter for the segment to see whether the asking price sits above or below the market median, and Get Similar Properties to attach three comparables. It posts the result to the acquisitions channel in Slack with the price delta stated plainly, and appends the row to the pipeline tracker in Google Sheets. The team reviews properties rather than portals.

A Location Brief Built From Coordinates

A property clears the first filter and needs a location assessment before anyone books a viewing. The agent calls Get Points Of Interest for the coordinates to pull schools, hospitals, transport, and restaurants within range, calls List Cities to attach the INSEE code and grouping data for the commune, and calls Get Price Per Meter with a tighter segment to see how the immediate area prices against the wider one. It assembles a one-page brief and files it in Notion against the property record. The analyst arrives at the viewing having already read what is around the address rather than what is in the advert.

Criteria Maintained as a Mandate Changes

An investment mandate shifts, perhaps a ceiling rises or a district is added. Rather than someone editing filters in a UI and hoping, the agent calls List Saved Searches to enumerate what is currently live, calls Get Saved Search on the one that backs the running trigger, and calls Autocomplete Location to resolve the new districts to their IRIs so the criteria use identifiers rather than free text. It then calls Search Properties with the proposed criteria against the current market to count what would match today. Only after that count is reviewed does it call Update Saved Search.

Human-in-Loop Highlight

The saved search is the trigger. On New Property Match creates a saved search whose match webhook is the callback, so Update Saved Search is not a settings change, it is a change to what fires and how often, applied to a national listings aggregate. A ceiling raised by fifty thousand euros or a department added instead of a commune does not produce an error, it produces volume, and every match downstream of that trigger runs a flow that may notify an analyst, create a record, or begin outreach to an agency about a property nobody has looked at. Once those have fired they cannot be recalled. The connector happens to ship its own dry run for exactly this, because Search Properties accepts the same filters a saved search holds. So the agent measures before it commits. It calls Get Saved Search to read the current criteria, calls Search Properties with the proposed criteria to count what is on the market today under the new rule, and posts to the mandate owner: "Proposed change to saved search [name], which backs the live On New Property Match trigger. Current criteria: [summary]. Proposed criteria: [summary]. Search Properties returns [n] currently listed matches under the proposed rule versus [n] under the current one. Downstream actions per match: [list]. Apply, adjust, or cancel?" The owner decides, and only then does Update Saved Search run. Delete Saved Search gets the same treatment, because deleting the wrong record silently ends a live watch. Reading properties, pulling market indicators, and building location briefs all run unattended, because reading changes nothing. Changing what a live trigger fires on is human-in-the-loop work, and the count from Search Properties is what turns the approval into a real decision rather than a rubber stamp.

Agent processes routinely
Detects exception requiring judgment
Clear match Continues automatically
Ambiguous Routes to human via preferred channel
Human decides
Agent resumes with decision

Agent Capabilities

12 actions

Properties

3
  • Search Properties Searches the aggregated, deduplicated listing set with filters on transaction, type, price, surface, rooms, location, energy, and more. Also serves as the dry run for a proposed saved search, because it accepts the same filters.
  • Get Property Retrieves a single property document by UUID, with its full detail.
  • Get Similar Properties Returns properties similar to a given one. Used to attach comparables so an asking price can be read in context.

Market Insights

2
  • Get Price Per Meter Returns average, median, and time-series price per square metre for a market segment. Used to state whether a listing is above or below its market rather than asserting it.
  • Get Points Of Interest Returns points of interest near a coordinate, including schools, hospitals, and restaurants. Used to assess a location from the address rather than from the advert copy.

Locations

2
  • Autocomplete Location Returns city and department suggestions with their IRIs. Used to resolve free-text place names into the identifiers a saved search should be built on.
  • List Cities Returns French cities with INSEE codes, postcodes, and grouping data. Used to attach official identifiers to a property's commune for reporting and joining.

Saved Searches

5
  • List Saved Searches Returns the saved searches on the account. Used to enumerate what is currently live before anything is changed.
  • Get Saved Search Retrieves a single saved search and its criteria. Used to read the current rule before proposing a new one.
  • Create Saved Search Creates a persisted set of search criteria, with optional webhook delivery. Note that turning the trigger on creates a saved search of its own, so a manually created one is a separate object.
  • Update Saved Search Updates a saved search's criteria. Where that search backs a live trigger, this changes what fires and how often.
  • Delete Saved Search Deletes a saved search. Deleting the one that backs a running trigger ends that watch, and the deletion returns no error to any downstream consumer.

Triggers

1 triggers

Event Triggers

1
  • On New Property Match Fires in realtime when a newly published listing meets the configured criteria. Turning the trigger on creates a saved search whose match webhook is the trigger callback, and turning it off deletes that search, so the criteria and the trigger are one object. Melo's match and event deliveries are unauthenticated POSTs with no signature, and the vendor recommends restricting the receiving endpoint to its published IP addresses.

Frequently Asked Questions

What can FlowRunner do with Melo?

FlowRunner agents can run Search Properties, Get Property, and Get Similar Properties in Melo, plus 9 more actions.

Does connecting Melo to FlowRunner require OAuth?

No. Melo connects to FlowRunner with an API key, no OAuth flow required.

Can Melo trigger a FlowRunner workflow automatically?

Yes. Melo supports 1 trigger that can start a FlowRunner workflow automatically.

Start building with Melo

$100 in credits. No card required. Connect in minutes.