What is place matching?
Reprompt’s place matching conflates an input place against one or more sources (e.g., Reprompt, Overture, Foursquare, or your own data). The engine combines traditional similarity (name, location, category) with LLM verification to produce high-confidence matches.- Output format: GeoJSON
FeatureCollection - Each
Feature.propertiesincludes:source: where the match came fromconfidence_score: overall confidence (0–1)is_match: boolean match flagmatch_explanation: optional human-readable explanation- Optional per-dimension scores/weights (name/location/category)
Input modes and constraints
-
Coordinates-only
- Provide
latitudeandlongitude. - Best when device or map interactions are available.
- The engine applies geographic proximity and contextual cues.
- Provide
-
Name + Address (+ optional coordinates)
- Provide
nameandaddress; coordinates improve precision. - Address should include postal code when possible for maximal accuracy.
- Provide
-
Name-only
- Not supported without either coordinates or a full address; such requests will return
501 Not Implemented.
- Not supported without either coordinates or a full address; such requests will return
- Provide at least a name OR coordinates.
- If
addressis provided,nameis required. - Provide both
latitudeandlongitudetogether (no partial coordinates). - BYOD candidates (below) are only valid when
match_sourcesincludesbyod.
Sources and configuration
match_sources: choose one or more ofreprompt,overture,foursquare,byod.max_matches: maximum results per source (maps to the engine’sk).radius: search radius in meters. Returned in metadata; the engine may use its own internal heuristics.
Per-source results are not merged (
merge_matches = false). Evaluate per-feature source when reconciling across providers.Bring Your Own Data (BYOD)
Include your own candidate places to match against.- Enable by adding
"byod"tomatch_sources. - Provide up to 50
match_byod_candidateswith any combination of:name(recommended),address,latitude+longitude(preferred for strong results).
- Output features will include
source: "byod"when your candidates match.
Error handling and resiliency
You may encounter:- Validation errors (400/422): input shape issues (e.g., partial coordinates, address without name).
- Not implemented (501): name-only without either coordinates or a full address/postal code.
- Upstream/network errors (502): external matching service unavailable.
- Internal errors (500): unexpected server conditions.
- Treat 4xx as fixable input errors; surface to calling service with actionable messages.
- Backoff and retry 5xx with jitter. Log correlation IDs if available.
- On empty
features, avoid repeated immediate retries; enqueue for alternate workflows or human review.
Example requests
Coordinates-only (Foursquare + Overture):Using results effectively
- Prefer the top feature by
confidence_scoreacross all returned features. - Auto-link to the top feature when
confidence_score >= 0.90. - For
0.80–0.90, auto-link when corroborated by external signals (e.g., category agreement) or send to a light-weight review queue. - Keep a review queue for
0.60–0.80. - Track result distributions by source to calibrate thresholds.
Because responses only include matches, “no match” is represented as an empty
features array.