Skip to content
Scrappa Get API key
Loft Brazil API 1 credit/request

Loft Brazil Agency API Documentation

GET https://scrappa.co/api/loft-br/agency

Loft Brazil Agency API returns the agency id, name and listing count for a listing type, plus one page of the agency's listings. Loft publishes no contact details, address, logo or reviews for agencies, so none are returned. An agency with no listing of the chosen listing_type answers 404 and is not billed; try the other type.

Loft Brazil Agency API Documentation 1 credit/request

Endpoint

Request preview
GET
https://scrappa.co/api/loft-br/agency
Auth header
x-api-key
Cost
1 credit/request
id = 1234567890
Response preview
200 OK
{
    "data": {
        "items": [
            {
                "id": "xwdamk14",
                "url": "https://loft.com.br/imovel/xwdamk14",
                "area": 112,
                "tags": [],
                "floor": null,
                "image": "https://content.loft.com.br/homes/xwdamk14/desktop_banner.jpg",
                "price": 10001,
                "agency": {
                    "id": "bce29ecd-3a66-4b08-a6d4-76acf0e2effd",
                    "name": "AUTHENTIQUE IM\u00d3VEIS SP"
...

Parameters

Start with the required fields, then add optional filters only when your use case needs them.

Runnable path

1 required parameter needed before sending a request.

6 optional filters available.

id string Required

Agency id (a UUID) from a listing, field agency.id.

Example value 1234567890
listing_type string Optional

sale (default) or rent. Rent searches filter price_min and price_max on the monthly rent.

Example value example
city string Optional

City value from the autocomplete route, for example São Paulo, SP.

Example value example
property_type string Optional

One or more of apartment, house, land, farm, studio, penthouse, duplex, triplex, garden_apartment, conjugate, standard_apartment, standard_house, condominium_house, commercial_building, commercial_property, commercial_business, commercial_hotel, commercial_industrial, commercial_land. Repeat the parameter or separate values with commas.

Example value example
sort string Optional

relevance (default), price_asc, price_desc, newest or updated. Price sorts use the sale price for sale and the monthly rent for rent.

Example value relevance
per_page integer Optional

1 to 500, default 20.

Example value 10
page integer Optional

One-based page number. page x per_page must stay within 10000, otherwise the answer is 422 and not billed.

Example value 1

Response Schema

Example response fields are illustrative; inspect the JSON before integrating.

Example response fields

Scan these fields before integrating.

data meta success
JSON Response
200 OK
{
    "data": {
        "items": [
            {
                "id": "xwdamk14",
                "url": "https://loft.com.br/imovel/xwdamk14",
                "area": 112,
                "tags": [],
                "floor": null,
                "image": "https://content.loft.com.br/homes/xwdamk14/desktop_banner.jpg",
                "price": 10001,
                "agency": {
                    "id": "bce29ecd-3a66-4b08-a6d4-76acf0e2effd",
                    "name": "AUTHENTIQUE IM\u00d3VEIS SP"
                },
                "photos": [
                    "https://content.loft.com.br/homes/xwdamk14/desktop_facade01.jpg",
                    "https://content.loft.com.br/homes/xwdamk14/desktop_facade02.jpg"
                ],
                "status": "FOR_SALE",
                "suites": 3,
                "address": {
                    "city": "S\u00e3o Paulo",
                    "state": "SP",
                    "facets": {
                        "city": "S\u00e3o Paulo, SP",
                        "neighborhood": "Itaim Bibi, S\u00e3o Paulo, SP"
                    },
                    "number": null,
                    "street": "Rua Leopoldo Couto Magalh\u00e3es J\u00fanior",
                    "country": "BR",
                    "latitude": -23.5898555,
                    "longitude": -46.6865229,
                    "postal_code": null,
                    "complex_name": null,
                    "neighborhood": "Itaim Bibi",
                    "neighborhood_slug": "itaim-bibi_sao-paulo_sp"
                },
                "bedrooms": 3,
                "currency": "BRL",
                "amenities": [],
                "bathrooms": 3,
                "condo_fee": null,
                "home_type": "apartment",
                "thumbnail": "https://content.loft.com.br/homes/xwdamk14/banner_thumbnail.jpg",
                "created_at": "2026-09-10T15:37:23.479Z",
                "updated_at": "2026-10-25T22:45:09.093Z",
                "usage_type": "residential",
                "description": "Um empreendimento completo com toda seguran\u00e7a, conforto e lazer que voc\u00ea merece. \n\nAptos no Itaim Bibi \u00e0 Venda! \nLocalizado na Rua Leopoldo Couto Magalh\u00e3es J\u00fani...",
                "has_balcony": false,
                "listing_type": "sale",
                "product_type": "market",
                "property_tax": null,
                "rental_price": null,
                "contract_type": "non_exclusive",
                "parking_spots": 2,
                "property_type": "default",
                "can_redecorate": false,
                "grouped_listings": [],
                "has_virtual_tour": true,
                "monthly_expenses": null,
                "number_of_floors": null,
                "property_subtypes": [
                    "home_apartment",
                    "apartment_default"
                ],
                "condominium_leisure": [
                    "TOWER_NO_HAS_ELEVATOR"
                ],
                "has_decorated_photos": false,
                "grouped_listings_count": 1,
                "condominium_infrastructure": []
            }
        ],
        "agency": {
            "id": "bce29ecd-3a66-4b08-a6d4-76acf0e2effd",
            "name": "AUTHENTIQUE IM\u00d3VEIS SP",
            "listing_type": "sale",
            "listing_count": 9671
        },
        "pagination": {
            "page": 1,
            "total": 9671,
            "window": 10000,
            "per_page": 1,
            "returned": 1,
            "total_pages": 9671,
            "has_next_page": true,
            "total_listings": 9676
        }
    },
    "meta": {
        "attempts": 1,
        "billable": true,
        "endpoint_family": "agency"
    },
    "success": true
}

Errors

Handle these documented responses before retrying or showing customer-facing failures.

404

Not Found

No listings of this agency match. This response is not billed.

{
    "meta": {
        "billable": false,
        "retryable": false,
        "endpoint_family": "agency"
    },
    "error": {
        "code": "not_found",
        "message": "No listings of this agency match."
    },
    "success": false
}
422

Rejected Request

A parameter is missing, unknown or out of range. This response is not billed.

{
    "errors": {
        "bedrooms": [
            "The bedrooms field must be at least 1."
        ]
    },
    "message": "The request validation failed"
}
503

Upstream Unavailable

Loft could not be reached or returned data that did not match the filters. Retry shortly. This response is not billed.

{
    "meta": {
        "billable": false,
        "retryable": true,
        "endpoint_family": "agency"
    },
    "error": {
        "code": "upstream_unavailable",
        "message": "Loft is temporarily unavailable. Please retry."
    },
    "success": false
}

Generate Code with AI

Copy a ready-made prompt with all the endpoint details, parameters, and example responses. Paste it into ChatGPT, Claude, or any AI assistant to instantly generate working code.

Try It Live

Test this endpoint in our interactive playground with real data.