View Categories

Update Real Estate

5 min read

The chat.smarterbot.ai API provides functionality to update an existing real estate listing by sending a POST request to the /chat/Chatbot/RealEstateUpdate endpoint.

Endpoint #

Request URL: https://chat.smarterbot.ai/chat/Chatbot/RealEstateUpdate

Method: POST

Request Headers #

The API request must include the following headers:

  • Authorization: <Your-Secret-Key> – string, required – The secret key for authenticating the API request
  • Content-Type: application/json – string, required – The content type of the request payload (must be application/json)

Request Body #

The request body should contain the following parameters:

{
// string, required - The ID of the chatbot (found on the chatbot settings -> general -> chatbot ID)
"SerialNumber": "3254a9d0424c4806b9ea3d0763xxxxxx",
// string, required - The value of the primary key used for the update
"Key": "PROP123456",
// string, required - Must be one of: [NewOaks, MLSNumber, URL]
"KeyType": "NewOaks",
// string, required - Must be one of: [for_sale, for_rent]
"SaleType": "for_sale",
// string, required - Must be one of: [Active, PreOnMarket, Sold]
"Status": "Active",
// string, required - Currency symbol (e.g., $)
"CurrencySymbol": "$",
// string, required - Type of property (e.g., Single Family Residential)
"PropertyType": "Single Family Residential",
// number, required - Number of bedrooms
"Bedrooms": 3,
// number, required - Number of bathrooms
"Bathrooms": 2.5,
// string, required - Property listing URL
"Url": "https://example.com/property/123",
// string, required - MLS number
"MLSNumber": "MLS123456",
// number, required - Year the property was built
"YearBuilt": 1998,
// number, required - Number of days on market
"DaysOnMarket": 2,
// number, required - Lot area size
"LotArea": 800,
// number, required - Building area size
"BuildingArea": 2500,
// string, required - Must be one of: [Square Feet, Square Meters]
"AreaUnit": "Square Feet",
// array - Array of image URLs
"Images": [
"https://example.com/img1.jpg",
"https://example.com/img2.jpg"
],
// string - Must be one of: [OpenHouse, 3D]
"Tours": "OpenHouse",
// number, required - Number of parking spots
"ParkingSpots": 8,
// string - Property description
"Description": "Beautiful family home with modern amenities",
// array - Additional property information in format [{'Key': 'xx', 'value': 'xx'}]
"ExtensionColumn": [
{
// string, required - The value of the primary key used for the update
"Key": "Pool",
"value": "Yes"
},
{
// string, required - The value of the primary key used for the update
"Key": "Garage",
"value": "2 cars"
}
],
// string - Property location description
"Location": "Residential Area",
// string - Street address
"Address": "123 Main St",
// string - City name
"City": "Los Angeles",
// string - State name
"State": "CA",
// string - ZIP code
"ZIP": "90001",
// number - Property latitude
"Latitude": 30.96,
// number - Property longitude
"Longitude": -78.93,
// number - Sale price
"SalePrice": 100000,
// number - Price per unit area
"UnitAreaPrice": 100,
// number - Monthly HOA fee
"HOAMonth": 500,
// number - Zestimate price
"ZestimatePrice": 100000,
// number - Monthly rent price
"RentPrice": 2500,
// string - Must be one of: [Entire place, Room]
"SpaceType": "Entire place",
// number - Required deposit amount
"DepositFee": 5000
}
  • SerialNumber – string, required – The ID of the chatbot (found on the chatbot settings -> general -> chatbot ID)
  • Key – string, required – The value of the primary key used for the update
  • KeyType – string, required – Must be one of: [NewOaks, MLSNumber, URL]
  • SaleType – string, required – Must be one of: [for_sale, for_rent]
  • Status – string, required – Must be one of: [Active, PreOnMarket, Sold]
  • CurrencySymbol – string, required – Currency symbol (e.g., $)
  • PropertyType – string, required – Type of property (e.g., Single Family Residential)
  • Bedrooms – number, required – Number of bedrooms
  • Bathrooms – number, required – Number of bathrooms
  • Url – string, required – Property listing URL
  • MLSNumber – string, required – MLS number
  • YearBuilt – number, required – Year the property was built
  • DaysOnMarket – number, required – Number of days on market
  • LotArea – number, required – Lot area size
  • BuildingArea – number, required – Building area size
  • AreaUnit – string, required – Must be one of: [Square Feet, Square Meters]
  • Images – array – Array of image URLs
  • Tours – string – Must be one of: [OpenHouse, 3D]
  • ParkingSpots – number, required – Number of parking spots
  • Description – string – Property description
  • ExtensionColumn – array – Additional property information in format [{‘Key’: ‘xx’, ‘value’: ‘xx’}]
  • Location – string – Property location description
  • Address – string – Street address
  • City – string – City name
  • State – string – State name
  • ZIP – string – ZIP code
  • Latitude – number – Property latitude
  • Longitude – number – Property longitude
  • SalePrice – number – Sale price
  • UnitAreaPrice – number – Price per unit area
  • HOAMonth – number – Monthly HOA fee
  • ZestimatePrice – number – Zestimate price
  • RentPrice – number – Monthly rent price
  • SpaceType – string – Must be one of: [Entire place, Room]
  • DepositFee – number – Required deposit amount

Example Request #

JavaScript (Fetch API) #

const res = await fetch('https://chat.smarterbot.ai/chat/Chatbot/RealEstateUpdate', {
method: 'POST',
headers: {
"chatrobot-sessionkey": "<Your-Session-Key>"
},
body: JSON.stringify({
"SerialNumber": "3254a9d0424c4806b9ea3d0763xxxxxx",
"Key": "PROP123456",
"KeyType": "NewOaks",
"SaleType": "for_sale",
"Status": "Active",
"PropertyType": "Single Family Residential",
"Bedrooms": 3,
"Bathrooms": 2.5,
"MLSNumber": "MLS123456",
"SalePrice": 100000
})
});

const data = await res.json();
console.log(data);

Python (Requests Library) #

import requests
import json

url = 'https://chat.smarterbot.ai/chat/Chatbot/RealEstateUpdate'
headers = {
"chatrobot-sessionkey": "<Your-Session-Key>"
}
data = {
"SerialNumber": "3254a9d0424c4806b9ea3d0763xxxxxx",
"Key": "PROP123456",
"KeyType": "NewOaks",
"SaleType": "for_sale",
"Status": "Active",
"PropertyType": "Single Family Residential",
"Bedrooms": 3,
"Bathrooms": 2.5,
"MLSNumber": "MLS123456",
"SalePrice": 100000
}

response = requests.post(url, headers=headers, json=data)
data = response.json()
print(data)

cURL #

curl 'https://chat.smarterbot.ai/chat/Chatbot/RealEstateUpdate' \
-X POST \
-H 'chatrobot-sessionkey: <Your-Session-Key>' \
-d '{"SerialNumber":"3254a9d0424c4806b9ea3d0763xxxxxx","Key":"PROP123456","KeyType":"NewOaks","SaleType":"for_sale","Status":"Active","PropertyType":"Single Family Residential","Bedrooms":3,"Bathrooms":2.5,"MLSNumber":"MLS123456","SalePrice":100000}'

HTTP Request #

POST /chat/Chatbot/RealEstateUpdate HTTP/1.1
Host: chat.smarterbot.ai
chatrobot-sessionkey: <Your-Session-Key>

{
"SerialNumber": "3254a9d0424c4806b9ea3d0763xxxxxx",
"Key": "PROP123456",
"KeyType": "NewOaks",
"SaleType": "for_sale",
"Status": "Active",
"PropertyType": "Single Family Residential",
"Bedrooms": 3,
"Bathrooms": 2.5,
"MLSNumber": "MLS123456",
"SalePrice": 100000
}

Response #

The API response will be a JSON object with the following structure:

{
// integer - Number of records updated (1 indicates success)
"Data": 1,
// string - API version
"Version": "1.0.0",
// boolean - Operation success status
"Success": true,
// integer - HTTP status code
"Code": 200,
// string - Error message if any
"Message": ""
}

Error Handling #

If the request fails, you should: 1. Check the HTTP status code for network-level errors 2. Examine the `Code` and `Message` fields in the response for business-level errors 3. The `Message` field will contain detailed error information

Leave a Reply

Your email address will not be published. Required fields are marked *