On this pagetap to expand

Tu Lugar API

Public REST API for real estate listings, projects, agents, companies, and market data in Paraguay and South America. Free read access, no API key required.

Base URLhttps://tulugar.com/api/v1
AuthPublic reads · OAuth 2.1 for writes
Rate limit60 req/min per IP
FormatJSON

Write access

Any Tu Lugar account can create, update, and publish listings via the API or an AI assistant — no application needed. Connect once with OAuth 2.1 (PKCE); publishing requires a verified WhatsApp number (which you can do from chat too), and every listing passes automated review before going public. Limits start small and grow automatically with your track record — see Limits & fair use above.

Connect an AI assistant →

Quick Start

No API key needed. Try it right now:

# Search apartments for sale in Asunción
curl "https://tulugar.com/api/v1/listings?city=Asunci%C3%B3n&listing_type=sale&property_type=apartment&limit=3"

# Get market summary
curl "https://tulugar.com/api/v1/market/summary?city=Asunci%C3%B3n"

# List all countries
curl "https://tulugar.com/api/v1/locations/countries"

Common Workflows

Chain API calls to accomplish typical tasks. This example finds apartments for sale in a specific neighborhood.

1

See available countries

GET /api/v1/locations/countries

Lists all countries with listing counts.

curl "https://tulugar.com/api/v1/locations/countries"
# Response: [{ "name": "Paraguay", "listing_count": 2500 }, ...]
2

Get cities in Paraguay

GET /api/v1/locations/cities?country=Paraguay

Pass the country name to see its cities.

curl "https://tulugar.com/api/v1/locations/cities?country=Paraguay"
# Response: [{ "name": "Asunción", "listing_count": 1200 }, ...]
3

List neighborhoods in Asunción

GET /api/v1/locations/neighborhoods?city=Asunci%C3%B3n

Pass the city name to browse its neighborhoods.

curl "https://tulugar.com/api/v1/locations/neighborhoods?city=Asunci%C3%B3n"
# Response: [{ "name": "Villa Morra", "listing_count": 245 }, ...]
4

Search listings in Villa Morra

GET /api/v1/listings?city=Asunci%C3%B3n&neighborhood=Villa+Morra&listing_type=sale

Search using city and neighborhood names as filters.

curl "https://tulugar.com/api/v1/listings?city=Asunci%C3%B3n&neighborhood=Villa+Morra&listing_type=sale&property_type=apartment&limit=10"

Response Format

List response

{
  "data": [ ... ],
  "pagination": {
    "total": 150,
    "limit": 20,
    "offset": 0
  },
  "meta": {
    "request_id": "req_abc123",
    "timestamp": "2026-04-10T..."
  }
}

Error response

{
  "error": {
    "code": "VALIDATION_ERROR",
    "message": "city is required",
    "status": 400
  },
  "meta": {
    "request_id": "req_abc123"
  }
}

Pagination: Use limit (max 100) and offset on all list endpoints.

Locale: Pass ?locale=en to get translated titles and descriptions (en, es, pt).

Caching: Responses include Cache-Control headers. Listings cache for 2 minutes, locations and market data for 1 hour.

Authentication

Read endpoints are public — no key required. The Agent API (write) endpoints require an OAuth 2.1 access token (authorization code + PKCE). The simplest way to get one is to add the Tu Lugar connector in Claude or another MCP client — it runs the entire flow for you. Direct integrations use the standard flow described below. Send the token as a bearer header:

Authorization: Bearer YOUR_ACCESS_TOKEN

Scopes

ScopeGrants
listings:readRead your own listings and inquiries (incl. drafts)
listings:writeCreate, edit, and publish listings; upload images
listings:deleteArchive your listings
profile:readRead your account profile and status
profile:writeUpdate your account profile

Authorization flow (direct integrations)

  1. Fetch discovery metadata from the .well-known endpoints below.
  2. Register a client via Dynamic Client Registration (RFC 7591) at POST /api/oauth/register.
  3. Send the user to /api/oauth/authorize with a PKCE S256 challenge; they sign in and consent.
  4. Exchange the returned code at POST /api/oauth/token for an access + refresh token.
  5. Call the API with Authorization: Bearer. Refresh tokens rotate on use.

Discovery endpoints

/.well-known/oauth-protected-resourceProtected Resource Metadata (RFC 9728)
/.well-known/oauth-authorization-serverAuthorization Server Metadata (RFC 8414)
POST /api/oauth/registerDynamic Client Registration (RFC 7591)
GET /api/oauth/authorizeAuthorization endpoint (PKCE S256)
POST /api/oauth/tokenToken endpoint (authorization_code, refresh_token)

Listings

Search, filter, and retrieve real estate listings.

Projects

Development projects (residential towers, gated communities, etc.). By default, only projects with available units are returned, sorted by verified first.

Companies

Real estate agencies and developers.

Agents

Real estate agents and professionals.

Locations

Countries, cities, and neighborhoods with listing counts.

Market Data

Aggregated market statistics and short-term rental data.

Calculators

Real-estate finance calculators — currency-agnostic and Paraguay-aware. Built for AI tool use; no auth required.

Agent API (write)

Authenticated endpoints for agents to create and manage their own listings. All write endpoints require an OAuth 2.1 bearer token with the scope shown on each row (see Authentication). Listing writes go through automated moderation before going public.

OpenAPI Specification

Two OpenAPI 3.1 documents are published. Use them with Swagger UI, Redoc, Postman, or to configure ChatGPT Actions.

/api/v1/openapi.json — the public read API (listings, projects, companies, agents, locations, market data, calculators).

/api/v1/openapi.yaml — the full spec including the Agent (write) endpoints and OAuth 2.1 security schemes (request/response schemas for create/update/publish, image upload, and leads).

Use Tu Lugar in your AI assistant (MCP)

Tu Lugar runs a Model Context Protocol (MCP) server so AI assistants can search listings and take action — list a property, manage your listings, or contact an agent — right inside the chat. Works with Claude, ChatGPT, Cursor, Windsurf, VS Code, and any MCP-compatible client. For a step-by-step, per-client guide, see the dedicated connect page.

Claude.ai (web) and Claude Desktop — full read + write via one-tap OAuth.

1

Copy the connector URL

https://tulugar.com/api/mcp
2

Add a custom connector

In Claude: Settings → Connectors → Add custom connector. Name it “Tu Lugar” and paste the URL.

3

Connect and go

Reads work right away. The first time you create or manage a listing, Claude shows a one-tap consent to connect your Tu Lugar account.

Available MCP Tools

ToolAccessDescription
search_listingsPublicSearch listings by city, price, bedrooms, property type
get_listingPublicFull listing detail by ID or slug
search_projectsPublicDevelopment projects (verified first, available units)
get_projectPublicProject detail with units, prices, developer
search_companiesPublicAgencies and developers
get_companyPublicOne agency/developer: profile, rating, specialties, contact
get_agentPublicOne agent: profile, rating, reviews, specialties, contact
list_locationsPublicCountries, cities, neighborhoods with counts
get_market_summaryPublicAvg price, median, price/m² (USD-normalized)
get_str_dataPublicAirbnb nightly rates, occupancy, superhosts
mortgage_calculatorPublicMonthly payment, total interest, debt-to-income
create_leadPublicContact a listing’s agent (no account needed)
account_statusPublicCheck whether your account is connected and can publish
connect_accountPublicGet a one-tap link to connect your Tu Lugar account
create_listingAgent (OAuth)Create a draft listing
upload_listing_imageAgent (OAuth)Add a listing photo by URL
edit_listingAgent (OAuth)Update one of your listings
publish_listingAgent (OAuth)Submit a draft for review
close_listingAgent (OAuth)Close a sold/rented listing (removes it from results)
promote_listingAgent (OAuth)Feature a listing for ~14 days by spending one promotional credit
buy_promotional_creditsAgent (OAuth)Get a Stripe checkout link to buy a promotional-credit pack
my_listingsAgent (OAuth)List your listings and their status
my_inquiriesAgent (OAuth)Buyer inquiries on your listings
reply_to_inquiryAgent (OAuth)Draft a reply to a lead + one-tap WhatsApp link to send it
share_listing_whatsappAgent (OAuth)Ready-to-send WhatsApp message + branded image for your listing
send_whatsapp_verificationAgent (OAuth)Send a WhatsApp code to verify your number (required to publish)
verify_whatsapp_codeAgent (OAuth)Submit the 6-digit code to finish WhatsApp verification
save_searchAccount (OAuth)Save a search and get alerts when new matches appear
my_saved_searchesAccount (OAuth)List your saved searches and alert settings
delete_saved_searchAccount (OAuth)Delete a saved search (stops its alerts)

OpenAPI Spec

The full API spec is also available at /api/v1/openapi.json for ChatGPT Actions and other OpenAPI-based integrations.

CRM & listing feeds

Agencies don't need to re-enter listings: Tu Lugar syncs inventory directly from real estate CRMs — Tokko Broker (API key), Wasi (API credentials), Adinco, and any CRM that emits the VRSync XML standard (Jetimob, Vista, Kenlo). New listings, removals, and price changes flow through automatically. Publishing is free, with no exclusivity, and leads go directly to the agency.

Per-CRM instructions for agencies, and integration details for CRM vendors who want to offer Tu Lugar as a publishing destination: connect your CRM.

Limits & fair use

Request rate: read endpoints allow 60 requests per minute; over that you get a 429 Too Many Requests.

Listing limits grow with your track record. There is no approval form to publish — new accounts start small and rise automatically as listings are approved. The same limits apply whether you publish from the website, the API, or an AI assistant.

LevelHow you reach itActiveIn reviewNew / dayEdits / day
NewVerified WhatsApp531050
Established1+ approved, 7+ days251030300
Proven5+ approved, 30+ days100301001,000
Verified companyMember of a verified company2,000 pooled502005,000

“In review” is how many listings can await moderation at once — a slot frees the moment one is approved (usually within minutes), so a clean account can publish a large portfolio in one sitting. Editing a listing's title, description, or images re-triggers review and counts as an edit; price and availability changes are unlimited.

Need more?If you hit a limit you'll see a “Request a higher limit” option in the app — tell us how many you need and we'll review it. Verified companies above 2,000 and high-volume partners are handled this way.