Discover/Terra Caribbean API
live

Terra Caribbean APIterracaribbean.com

Access Terra Caribbean real estate listings, parish filters, amenities, mortgage estimates, and blog content across Barbados, Grenada, St. Lucia, and Trinidad & Tobago.

Endpoint health
verified 3d ago
get_blog_posts
get_parishes
get_amenities
calculate_mortgage
get_locations
7/7 passing latest checkself-healing
Endpoints
7
Updated
26d ago

What is the Terra Caribbean API?

The Terra Caribbean API exposes 7 endpoints covering property listings, location metadata, and mortgage calculations across four Caribbean territories. Use search_properties to filter listings by parish, zoning, bedroom count, and amenities, then call get_property_details with a listing URL to retrieve the full description, photo gallery, reference number, and office contact. All four countries — Barbados, Grenada, Saint Lucia, and Trinidad & Tobago — are covered.

Try it
Number of results per page.
Result offset for pagination.
Property category filter.
Free-text search against property titles and descriptions.
Comma-separated list of parishes or regions to filter by (e.g. 'St. James,Christ Church'). Values from get_parishes endpoint.
Minimum number of bedrooms.
Comma-separated list of amenities to filter by (e.g. 'Beachfront,Pool'). Values from get_amenities endpoint.
Minimum number of bathrooms.
Maximum price in USD.
Minimum price in USD.
Country code for the search territory.
Whether to search properties for sale or rent.
api.parse.bot/scraper/a3468f98-1cc1-4f7c-955d-0ef4ece21074/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X POST 'https://api.parse.bot/scraper/a3468f98-1cc1-4f7c-955d-0ef4ece21074/search_properties' \
  -H 'X-API-Key: $PARSE_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{
  "limit": "5",
  "offset": "0",
  "keyword": "land",
  "beds_min": "2",
  "baths_min": "1",
  "price_max": "500000",
  "price_min": "10000",
  "country_code": "bb",
  "listing_type": "sale"
}'
Python SDK · recommended

Typed, relational, agent-ready

A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.

  • Fully typed · autocompletes
  • Objects link to objects
  • Typed errors & pagination

Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:

uv add parse-sdk
uv run parse init
uv run parse add --marketplace terracaribbean-com-api

uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.

"""Walkthrough: Terra Caribbean SDK — search Caribbean properties, drill into details, estimate mortgages."""
from parse_apis.terra_caribbean_api import (
    TerraCaribbean, CountryCode, ListingType, Zoning, Country, PropertyNotFound
)

client = TerraCaribbean()

# List available locations
for loc in client.locations.list(limit=4):
    print(loc.name, loc.id)

# Search residential properties for sale in Barbados
listing = client.propertysummaries.search(
    country_code=CountryCode.BARBADOS,
    listing_type=ListingType.SALE,
    zoning=Zoning.RESIDENTIAL,
    limit=1,
).first()

# Drill into full property details from the summary
if listing:
    detail = listing.details()
    print(detail.title, detail.price, detail.reference_number)
    print(f"Photos: {len(detail.photos)}, Office: {detail.office_info.phone}")

# Calculate mortgage on a property
estimate = client.mortgageestimates.calculate(amount=200000, rate=5.5, years=20)
print(estimate.monthly_payment, estimate.total_payment, estimate.total_interest)

# Browse blog posts for Barbados using the Country enum
for post in client.blogposts.list(country=Country.BARBADOS, limit=3):
    print(post.title, post.date)

# List amenities available for filtering
for amenity in client.amenities.list(limit=5):
    print(amenity.name)

# Access parishes via location sub-resource
barbados = client.locations.list(limit=4).first()
if barbados:
    for parish in barbados.parishes.list(limit=5):
        print(parish.name)

# Typed error handling for missing property
try:
    client.properties.get(url="https://terracaribbean.com/INVALID/barbados/residential-sale/land/nonexistent/")
except PropertyNotFound as exc:
    print(f"Property not found: {exc.url}")

print("exercised: locations.list / propertysummaries.search / details / properties.get / mortgageestimates.calculate / blogposts.list / amenities.list / parishes.list")
All endpoints · 7 totalmissing one? ·

Full-text and filtered search across Caribbean property listings. Returns paginated summaries sorted by price ascending. Each result includes listing_id, price, location, and property attributes. Pagination is manual via offset; each page returns up to `limit` items. Note: combining regions and amenities filters in one call may cause upstream server errors due to a known site limitation; use them separately for reliable results.

Input
ParamTypeDescription
limitintegerNumber of results per page.
offsetintegerResult offset for pagination.
zoningstringProperty category filter.
keywordstringFree-text search against property titles and descriptions.
regionsstringComma-separated list of parishes or regions to filter by (e.g. 'St. James,Christ Church'). Values from get_parishes endpoint.
beds_minstringMinimum number of bedrooms.
amenitiesstringComma-separated list of amenities to filter by (e.g. 'Beachfront,Pool'). Values from get_amenities endpoint.
baths_minstringMinimum number of bathrooms.
price_maxstringMaximum price in USD.
price_minstringMinimum price in USD.
country_codestringCountry code for the search territory.
listing_typestringWhether to search properties for sale or rent.
Response
{
  "type": "object",
  "fields": {
    "limit": "integer, page size used",
    "total": "integer, total number of matching listings",
    "offset": "integer, offset used",
    "listings": "array of property listing summary objects"
  },
  "sample": {
    "data": {
      "limit": 5,
      "total": 502,
      "offset": 0,
      "listings": [
        {
          "url": "https://terracaribbean.com/BB41022/barbados/residential-sale/land/thorpes-land-113/",
          "price": "USD $20,000",
          "title": "Thorpes Land 113",
          "region": "St. James",
          "zoning": [
            "Residential"
          ],
          "address": "Thorpes Land, Haynesville",
          "bedrooms": 0,
          "bathrooms": 0,
          "listing_id": "BB41022",
          "description": "This 2,000 sq.ft. lot is located at Thorpes Land, St. James.",
          "display_tag": "Under Offer",
          "listing_type": "Sale",
          "land_area_sqft": "2,043"
        }
      ]
    },
    "status": "success"
  }
}

About the Terra Caribbean API

Property Search and Listing Detail

The search_properties endpoint accepts filters including zoning, keyword, regions (comma-separated parish names), beds_min, baths_min, and amenities. Results are paginated via limit and offset and sorted by price ascending. Each listing summary includes a listing_id, price, location, and key property attributes. To get the full record, pass the listing URL to get_property_details, which returns the title, formatted price (e.g. USD $20,000), description, photos array, reference_number (e.g. BB41022), and an office_info object containing a contact phone number.

Location Metadata and Filter Helpers

Three helper endpoints provide the valid values needed to drive search filters. get_locations returns the four supported territories with their id (country code), name, and slug. get_parishes accepts a country_code and returns the administrative regions for that country — these names feed directly into the regions parameter of search_properties. get_amenities returns the full list of amenity names (e.g. Beachfront, Pool) that can be passed as a comma-separated amenities filter.

Mortgage Calculator

calculate_mortgage takes a loan amount, annual interest rate (as a percentage), and term in years, then applies a standard amortization formula to return monthly_payment, total_payment, and total_interest. This is useful for building affordability tools alongside listing data without requiring a separate financial service.

Blog Content

get_blog_posts returns blog articles for a given location slug. Each post includes title, url, date, and an excerpt. Verified working slugs are barbados and grenada; other location slugs may not have associated blog categories.

Reliability & maintenanceVerified

The Terra Caribbean API is a managed, monitored endpoint for terracaribbean.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when terracaribbean.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official terracaribbean.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Last verified
3d ago
Latest check
7/7 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Build a Caribbean property search interface filtered by parish, bedrooms, and amenities using search_properties.
  • Display full listing pages with photo galleries and office contact details via get_property_details.
  • Generate mortgage affordability estimates alongside listing prices using calculate_mortgage.
  • Populate dynamic dropdowns for region and amenity filters from get_parishes and get_amenities.
  • Aggregate Terra Caribbean blog content for Barbados and Grenada real estate market coverage via get_blog_posts.
  • Map all supported territories and their country codes using get_locations as a reference table.
  • Compare properties across Barbados, Grenada, Saint Lucia, and Trinidad & Tobago in a single multi-market search.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min

One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does Terra Caribbean offer an official developer API?+
Terra Caribbean does not publish a documented public developer API. This Parse API provides structured programmatic access to listing, location, and blog data from terracaribbean.com.
What does search_properties return and how do I paginate through results?+
It returns a listings array of property summaries along with total, limit, and offset fields. Pagination is manual: increment offset by your limit value on each subsequent call. There is no cursor or next-page token.
Are listing prices and photos available without fetching each listing individually?+
search_properties returns a price and key attributes per listing, but the full photos array and complete description are only available from get_property_details, which requires the listing URL returned in the search results.
Does the blog endpoint work for Saint Lucia and Trinidad & Tobago?+
Verified working slugs for get_blog_posts are barbados and grenada. Saint Lucia and Trinidad & Tobago slugs may not have associated blog categories and are not confirmed to return results. You can fork this API on Parse and revise it to add dedicated endpoints for those locations if blog content becomes available.
Does the API expose sold or off-market property history?+
Not currently. The API covers active listings returned by search_properties and full details via get_property_details. Historical sales data, price change history, and off-market records are not included. You can fork this API on Parse and revise it to add an endpoint targeting any such data if it becomes publicly accessible on the site.
Page content last updated . Spec covers 7 endpoints from terracaribbean.com.
Related APIs in Real EstateSee all →
realtor.com API
Search millions of real estate listings on Realtor.com, view detailed property information, find qualified agents in your area, and access market analytics to understand pricing trends. Get location suggestions and property insights all in one place to help you make informed decisions about buying, selling, or investing in real estate.
propertypal.com API
Search and browse thousands of properties across Northern Ireland including rentals, sales, and commercial listings while accessing agent details, price trends, and market news. Get comprehensive property information, open viewing schedules, and real estate insights all in one place.
trulia.com API
Search real estate listings for properties available for sale, rent, or recently sold, and access detailed information like property photos, price history, nearby schools, and local amenities. Compare similar homes, calculate mortgage estimates, and make informed decisions with comprehensive property data all in one place.
rew.ca API
Search rental and for-sale properties across Canada, get detailed listing information, explore neighbourhoods, and find real estate agents in your area. Access property details, agent profiles, and neighbourhood data all in one place.
ddproperty.com API
Search and browse property listings across Thailand for both sale and rent, view detailed property information, explore locations, and calculate mortgage payments to help with your real estate decisions.
pararius.com API
Search and browse rental property listings on Pararius.com. Filter by city, price, size, and furnishing; retrieve full property details; look up listings by estate agent; and autocomplete location queries.
privateproperty.co.za API
Search and browse property listings for sale and rent across South Africa by location, price, features, and size, then view detailed information about specific properties. Get location suggestions to help narrow down your search area.
encuentra24.com API
Browse Encuentra24 real estate listings by region and property category, and retrieve full details for individual listings including price, attributes, description, photos, and seller contact info.