AI-Powered Property Search and Analysis
Use natural language queries to search for properties and get AI-powered insights and analysis. Leverages GPT models to understand complex search requirements and provide intelligent results.
Headers
-
API key for authentication
-
Optional user identifier for tracking and analytics
-
OpenAI API key for GPT processing (optional if configured server-side)
Body
Required
PropGPT natural language query
-
Number of results to return (maximum of 250).
Maximum value is
250
. -
Natural language query that references data points in the Property Search API in order to retrieve a list of properties.
Minimum length is
3
. -
GPT model to use for processing
Values are
gpt-4
,gpt-4o
,gpt-4o-mini
,gpt-4-turbo
, orgpt-3.5-turbo
.
POST
/v2/PropGPT
curl \
--request POST 'https://api.realestateapi.com/v2/PropGPT' \
--header "Content-Type: application/json" \
--header "x-api-key: string" \
--header "x-user-id: string" \
--header "X-OpenAI-Key: string" \
--data '{"size":5,"model":"gpt-4o-mini","query":"Properties in Forsyth County Georgia"}'
Request examples
Basic natural language query
{
"size": 5,
"model": "gpt-4o-mini",
"query": "Properties in Forsyth County Georgia"
}
{
"size": 10,
"model": "gpt-4o",
"query": "Find high equity single family homes in Atlanta with 3+ bedrooms under $400k"
}
{
"size": 5,
"model": "gpt-4o",
"query": "What are the trends in the Buckhead neighborhood?"
}
Response examples (200)
{
"input": {},
"data": [
{
"id": "string",
"address": {},
"confidence": 42.0
}
],
"gpt_response": {
"analysis": "string",
"reasoning": "string",
"suggestions": [
"string"
]
},
"totalResults": 42,
"returnedResults": 42,
"statusCode": 42,
"live": true,
"usage": {
"prompt_tokens": 42,
"completion_tokens": 42,
"total_tokens": 42
}
}
Response examples (400)
{
"error": "Bad Request",
"message": "Invalid input parameters",
"statusCode": 400,
"details": {}
}
Response examples (401)
{
"error": "Unauthorized",
"message": "Invalid or missing API key",
"statusCode": 401
}
Response examples (500)
{
"error": "Internal Server Error",
"message": "An unexpected error occurred",
"statusCode": 500
}