Skip to content

// docs

Zapimoveis: Get listing details

Extracts detailed data from a ZAP listing, including native property rating and floor/total square footage when published by the source.

zapimoveis.com.br:pdp · 1 credit per request

Standard credit cost. Your account pricing is shown in the sandbox.

Try this operation in the sandbox

HTTP request

cURL
curl -X POST https://api.geckoapi.com.br/v1/extract \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "target": "zapimoveis.com.br",
  "type": "pdp",
  "url": "https://www.zapimoveis.com.br/imovel/aluguel-apartamento-4-quartos-com-piscina-agua-verde-curitiba-pr-158m2-id-2795564422/"
}'

Keep your API key on your server. See the quickstart for authentication and response handling.

MCP request

The hosted MCP tool fixes target and type for this operation. Its remaining arguments use the same input rules as Extract.

POST /v1/mcp · Bearer or X-API-Key authentication

zapimoveis_com_br_pdp · tools/call
{
  "jsonrpc": "2.0",
  "id": 3,
  "method": "tools/call",
  "params": {
    "name": "zapimoveis_com_br_pdp",
    "arguments": {
      "url": "https://www.zapimoveis.com.br/imovel/aluguel-apartamento-4-quartos-com-piscina-agua-verde-curitiba-pr-158m2-id-2795564422/",
      "executionId": "exec_example_123"
    }
  }
}

Supported inputs

Conditional fields depend on the alternatives and constraints in the rule column. Fields marked unsupported are omitted.

FieldTypeRequirementRuleDefaultExample
url
URL extraction target. For some PLPs it can be omitted when API assembles URL from other fields.
string (URL) Required URL from the ad in the domain zapimoveis.com.br. - https://www.zapimoveis.com.br/imovel/aluguel-apartamento-4-quartos-com-piscina-agua-verde-curitiba-pr-158m2-id-2795564422/
target
Target source for extraction.
enum Required Always mandatory and must be zapimoveis.com.br. - zapimoveis.com.br
type
Extraction type: pdp, idp, plp, ilp, quote, review or places.
enum Required Always mandatory and must be pdp. - pdp

Request examples

PDP by URL

Send the public URL of the advertisement in Zapimoveis. The worker validates the domain and extracts listingId from URL.

PDP by URL
{
  "target": "zapimoveis.com.br",
  "type": "pdp",
  "url": "https://www.zapimoveis.com.br/imovel/aluguel-apartamento-4-quartos-com-piscina-agua-verde-curitiba-pr-158m2-id-2795564422/"
}

Response schema

Leaf paths and expected types. Field names and enum values are part of the API contract.

responseSchema
{
  "requestId": "string (uuid)",
  "executionId": "string (uuid)",
  "notFound": "boolean (optional; true when the upstream entity was not found and data is null)",
  "data.source": "string",
  "data.type": "string",
  "data.parser": "\"1.0.0\"",
  "data.requestUrl": "string",
  "data.extractedAt": "string (iso datetime)",
  "data.data.url": "string",
  "data.data.listingId": "string",
  "data.data.listingExternalId": "string",
  "data.data.businessType": "string",
  "data.data.listingType": "string",
  "data.data.unitTypes[]": "string",
  "data.data.attributes": "object | null",
  "data.data.attributes.usableAreas": "number[]",
  "data.data.attributes.totalAreas": "number[]",
  "data.data.attributes.bedrooms": "number[]",
  "data.data.attributes.bathrooms": "number[]",
  "data.data.attributes.suites": "number[]",
  "data.data.attributes.parkingSpaces": "number[]",
  "data.data.attributes.floors": "number[]",
  "data.data.attributes.unitFloor": "number | null",
  "data.data.title": "string",
  "data.data.metaTitle": "string",
  "data.data.description": "string",
  "data.data.formattedAddress": "string",
  "data.data.publicationType": "string",
  "data.data.virtualTourUrl": "string",
  "data.data.createdAt": "string",
  "data.data.updatedAt": "string",
  "data.data.prices.price": "number",
  "data.data.prices.monthlyCondoFee": "number",
  "data.data.prices.iptu": "number",
  "data.data.prices.rentalPeriod": "string",
  "data.data.prices.rentalWarranties[]": "string",
  "data.data.address.street": "string",
  "data.data.address.neighborhood": "string",
  "data.data.address.city": "string",
  "data.data.address.stateAcronym": "string",
  "data.data.address.zipCode": "string",
  "data.data.address.latitude": "number",
  "data.data.address.longitude": "number",
  "data.data.advertiser.id": "string",
  "data.data.advertiser.name": "string",
  "data.data.advertiser.mainPhone": "string",
  "data.data.advertiser.phoneNumbers[]": "string",
  "data.data.advertiser.whatsAppNumber": "string | null",
  "data.data.advertiser.creci": "string",
  "data.data.advertiser.createdDate": "string | null",
  "data.data.advertiser.listingsCount": "number | null",
  "data.data.advertiser.filteredListingsCount": "number | null",
  "data.data.advertiser.imobiUrl": "string | null",
  "data.data.advertiser.profilePageId": "string | null",
  "data.data.advertiser.tier": "string | null",
  "data.data.advertiser.logoUrl": "string | null",
  "data.data.advertiser.coverUrl": "string | null",
  "data.data.advertiser.coverMobileUrl": "string | null",
  "data.data.advertiser.isVerified": "boolean",
  "data.data.advertiser.hasVirtualAssistant": "boolean | null",
  "data.data.advertiser.hasOfficialStore": "boolean | null",
  "data.data.advertiser.description": "string | null",
  "data.data.advertiser.address.street": "string | null",
  "data.data.advertiser.address.streetNumber": "string | null",
  "data.data.advertiser.address.neighborhood": "string | null",
  "data.data.advertiser.address.city": "string | null",
  "data.data.advertiser.address.state": "string | null",
  "data.data.advertiser.address.stateAcronym": "string | null",
  "data.data.advertiser.address.zipCode": "string | null",
  "data.data.advertiser.address.country": "string | null",
  "data.data.advertiser.address.formattedAddress": "string | null",
  "data.data.advertiser.rating.score": "number | null",
  "data.data.advertiser.rating.totalRatings": "number | null",
  "data.data.advertiser.rating.totalFeedbacks": "number | null",
  "data.data.advertiser.rating.isVisible": "boolean | null",
  "data.data.advertiser.socialLinks.facebook": "string | null",
  "data.data.advertiser.socialLinks.instagram": "string | null",
  "data.data.advertiser.stamps[]": "string",
  "data.data.amenities[]": "string",
  "data.data.mainAmenities[]": "string",
  "data.data.infoTags[]": "string",
  "data.data.images[].url": "string"
}

Example response

Illustrative response. Product names, reviews and other source content retain their original language. Missing and null values do not imply zero stock, free shipping or zero reviews.

responseExample
{
  "requestId": "b2f9c6b6-56da-4be1-b2f2-4ed0f3b2f001",
  "executionId": "b2f9c6b6-56da-4be1-b2f2-4ed0f3b2f002",
  "data": {
    "source": "zapimoveis.com.br",
    "type": "pdp",
    "parser": "1.0.0",
    "requestUrl": "https://www.zapimoveis.com.br/imovel/aluguel-apartamento-4-quartos-com-piscina-agua-verde-curitiba-pr-158m2-id-2795564422/",
    "extractedAt": "2026-02-19T13:10:00.000Z",
    "data": {
      "url": "https://www.zapimoveis.com.br/imovel/aluguel-apartamento-4-quartos-com-piscina-agua-verde-curitiba-pr-158m2-id-2795564422/",
      "listingId": "2795564422",
      "listingExternalId": "2795564422",
      "businessType": "RENTAL",
      "listingType": "USED",
      "title": "Apartamento com 2 quartos e sacada no Centro",
      "metaTitle": "Apartamento a venda no Centro, Curitiba - PR",
      "description": "Imóvel reformado, próximo ao shopping e com vaga coberta.",
      "formattedAddress": "Rua Marechal Deodoro, Centro, Curitiba - PR",
      "publicationType": "PREMIUM",
      "virtualTourUrl": "https://tour.exemplo.com/imovel/2670123456",
      "createdAt": "2026-01-14T10:30:00.000Z",
      "updatedAt": "2026-02-18T18:42:00.000Z",
      "prices": {
        "price": 549000,
        "monthlyCondoFee": 580,
        "iptu": 190,
        "rentalPeriod": "MONTHLY",
        "rentalWarranties": [
          "fiador"
        ]
      },
      "address": {
        "street": "Rua Marechal Deodoro",
        "neighborhood": "Centro",
        "city": "Curitiba",
        "stateAcronym": "PR",
        "zipCode": "80020000",
        "latitude": -25.4296,
        "longitude": -49.2713
      },
      "advertiser": {
        "id": "55123",
        "name": "Imobiliaria Exemplo",
        "mainPhone": "4130001000",
        "phoneNumbers": [
          "4130001000"
        ],
        "whatsAppNumber": "41987654321",
        "creci": "J-12345-PR",
        "createdDate": "2020-02-10T18:15:57Z",
        "listingsCount": 169,
        "filteredListingsCount": 169,
        "imobiUrl": "https://www.zapimoveis.com.br/imobiliaria/179386/",
        "profilePageId": "179386",
        "tier": "standard",
        "logoUrl": "https://resizedimgs.zapimoveis.com.br/img/os/logo/imagem.webp?action=fit-in&dimension=900x900",
        "coverUrl": "https://resizedimgs.zapimoveis.com.br/img/os/cover/imagem.webp?action=fit-in&dimension=900x900",
        "coverMobileUrl": "https://resizedimgs.zapimoveis.com.br/img/os/cover-mobile/imagem.webp?action=fit-in&dimension=900x900",
        "isVerified": true,
        "hasVirtualAssistant": false,
        "hasOfficialStore": true,
        "description": "Atendimento especializado em compra, venda e locacao de imoveis residenciais em Jaguariuna e regiao.",
        "address": {
          "street": "Rua Oito",
          "streetNumber": "30",
          "neighborhood": "Jardim Europa",
          "city": "Jaguariuna",
          "state": "SP",
          "stateAcronym": "SP",
          "zipCode": "13912426",
          "country": "Brasil",
          "formattedAddress": "Rua Oito, 30, Jardim Europa, Jaguariuna, SP, 13912426"
        },
        "rating": {
          "score": 4.5,
          "totalRatings": 2,
          "totalFeedbacks": 3,
          "isVisible": true
        },
        "socialLinks": {
          "facebook": "https://www.facebook.com/docelarjaguariuna",
          "instagram": "https://www.instagram.com/docelarjaguariuna"
        },
        "stamps": [
          "quality",
          "premium"
        ]
      },
      "amenities": [
        "Elevador"
      ],
      "mainAmenities": [
        "Sacada"
      ],
      "infoTags": [
        "Aceita financiamento"
      ],
      "images": [
        {
          "url": "https://resizedimgs.vivareal.com/{action}/{width}x{height}/vr.images.sp/e7d3cb8f500f42f4b95f316643e2b235.webp"
        }
      ],
      "unitTypes": [
        "APARTMENT"
      ],
      "attributes": {
        "usableAreas": [
          158
        ],
        "totalAreas": [],
        "bedrooms": [
          4
        ],
        "bathrooms": [],
        "suites": [],
        "parkingSpaces": [],
        "floors": [],
        "unitFloor": null
      }
    }
  }
}

Complete field reference

PathTypeDescriptionExample
data.data.address.city string City of property. Curitiba
data.data.address.latitude number Latitude of the property. -25.4296
data.data.address.longitude number Length of the property. -49.2713
data.data.address.neighborhood string Neighborhood of the property. Centro
data.data.address.stateAcronym string UF of the property. PR
data.data.address.street string Street of the property. Rua Marechal Deodoro
data.data.address.zipCode string CEP of the property. 80020000
data.data.advertiser.address.city string | null City of the real estate company's headquarters/business. Jaguariuna
data.data.advertiser.address.country string | null Country of the real estate company's headquarters/commercial office. Brasil
data.data.advertiser.address.formattedAddress string | null Formatted address of the property. Rua Oito, 30, Jardim Europa, Jaguariuna, SP, 13912426
data.data.advertiser.address.neighborhood string | null Real estate headquarters/commercial neighborhood. Jardim Europa
data.data.advertiser.address.state string | null State/UF of the real estate headquarters/commercial. SP
data.data.advertiser.address.stateAcronym string | null UF standardized from the real estate headquarters/commercial office. SP
data.data.advertiser.address.street string | null Street of the real estate company's headquarters/commercial office. Rua Oito
data.data.advertiser.address.streetNumber string | null Number of the real estate company's headquarters/business. 30
data.data.advertiser.address.zipCode string | null CEP from the real estate headquarters/commercial office. 13912426
data.data.advertiser.coverMobileUrl string | null Mobile cover image of the real estate page. https://resizedimgs.zapimoveis.com.br/img/os/cover-mobile/imagem.webp?action=fit-in&dimension=900x900
data.data.advertiser.coverUrl string | null Desktop cover image of the real estate page. https://resizedimgs.zapimoveis.com.br/img/os/cover/imagem.webp?action=fit-in&dimension=900x900
data.data.advertiser.createdDate string | null Real estate registration date in Zapimoveis. 2020-02-10T18:15:57Z
data.data.advertiser.creci string Advertiser record CRECI. J-12345-PR
data.data.advertiser.description string | null Institutional description published on the real estate page. Atendimento especializado em compra, venda e locacao de imoveis residenciais em Jaguariuna e regiao.
data.data.advertiser.filteredListingsCount number | null Number of advertisements returned in the current section of the real estate page, when informed. 169
data.data.advertiser.hasOfficialStore boolean | null Indicates whether the real estate company has an official page/official store on Zapimoveis. true
data.data.advertiser.hasVirtualAssistant boolean | null Indicates whether the real estate agency uses a virtual assistant in the contact flow. false
data.data.advertiser.id string Advertiser identifier. 55123
data.data.advertiser.imobiUrl string | null URL absolute value of the real estate page in Zapimoveis. https://www.zapimoveis.com.br/imobiliaria/179386/
data.data.advertiser.isVerified boolean Advertiser verification flag. true
data.data.advertiser.listingsCount number | null Total number of advertisements published by the real estate agency. 169
data.data.advertiser.logoUrl string | null Main real estate logo. https://resizedimgs.zapimoveis.com.br/img/os/logo/imagem.webp?action=fit-in&dimension=900x900
data.data.advertiser.mainPhone string Main telephone number of the advertiser. 4130001000
data.data.advertiser.name string Advertiser name. Imobiliaria Exemplo
data.data.advertiser.phoneNumbers[] string Advertiser's phone list. 4130001000
data.data.advertiser.profilePageId string | null Numeric identifier present in URL on the real estate page. 179386
data.data.advertiser.rating.isVisible boolean | null Visibility flag for the aggregated note in the Zapimoveis payload. true
data.data.advertiser.rating.score number | null Aggregated real estate note, when available. 4.5
data.data.advertiser.rating.totalFeedbacks number | null Total number of feedbacks/evaluations reported on the real estate page. 3
data.data.advertiser.rating.totalRatings number | null Number of ratings received by the real estate agency. 2
data.data.advertiser.socialLinks.facebook string | null URL from the real estate company's Facebook page, when available. https://www.facebook.com/docelarjaguariuna
data.data.advertiser.socialLinks.instagram string | null URL from the real estate agency's Instagram, when available. https://www.instagram.com/docelarjaguariuna
data.data.advertiser.stamps[] string Seals/stamps displayed in the official real estate store. quality
data.data.advertiser.tier string | null Real estate tier returned by the real estate page payload. standard
data.data.advertiser.whatsAppNumber string | null WhatsApp real estate commercial, when published on the real estate page. 41987654321
data.data.amenities[] string Property amenities. Elevador
data.data.attributes object | null Numerical characteristics published by the source; null when missing. List fields with no value are returned as []. {"usableAreas":[158],"totalAreas":[],"bedrooms":[4],"bathrooms":[],"suites":[],"parkingSpaces":[],"floors":[],"unitFloor":null}
data.data.attributes.bathrooms number[] Number of bathrooms. []
data.data.attributes.bedrooms number[] Number of rooms. [4]
data.data.attributes.floors number[] Number of floors. []
data.data.attributes.parkingSpaces number[] Number of vacancies. []
data.data.attributes.suites number[] Number of suites. []
data.data.attributes.totalAreas number[] Total areas in m², only when explicitly published by the source. [] when absent; never copied from usableAreas or inferred from the description. []
data.data.attributes.unitFloor number | null Floor of the unit when informed; null when missing. null
data.data.attributes.usableAreas number[] Useful areas in m² reported by ZAP. For land, the source can publish the footage in this field. [158]
data.data.businessType string Business type of the ad. RENTAL
data.data.createdAt string Ad creation date. 2026-01-14T10:30:00.000Z
data.data.description string Textual description of the property. Imóvel reformado, próximo ao shopping e com vaga coberta.
data.data.formattedAddress string Formatted address displayed on the page. Rua Marechal Deodoro, Centro, Curitiba - PR
data.data.images[].url string URL from the ad images. https://resizedimgs.vivareal.com/{action}/{width}x{height}/vr.images.sp/e7d3cb8f500f42f4b95f316643e2b235.webp
data.data.infoTags[] string Informational ad tags. Aceita financiamento
data.data.listingExternalId string External identifier for the ad. 2795564422
data.data.listingId string Ad identifier. 2795564422
data.data.listingType string Source publication category (e.g.: USED); the physical classification of the property is unitTypes. USED
data.data.mainAmenities[] string Featured amenities. Sacada
data.data.metaTitle string Title SEO of the page. Apartamento a venda no Centro, Curitiba - PR
data.data.prices.iptu number IPTU value entered. 190
data.data.prices.monthlyCondoFee number Monthly condominium fee. 580
data.data.prices.price number Main listing price. 549000
data.data.prices.rentalPeriod string Frequency of rental. MONTHLY
data.data.prices.rentalWarranties[] string Rental guarantees accepted. fiador
data.data.publicationType string Ad publication type. PREMIUM
data.data.title string Main ad title. Apartamento com 2 quartos e sacada no Centro
data.data.unitTypes[] string Native classification of the property, such as APARTMENT, HOME, ALLOTMENT_LAND or RESIDENTIAL_ALLOTMENT_LAND. Preserves the source values, without inferring from keyword, title or description. Empty list when unavailable. APARTMENT
data.data.updatedAt string Ad update date. 2026-02-18T18:42:00.000Z
data.data.url string URL ad public. https://www.zapimoveis.com.br/imovel/aluguel-apartamento-4-quartos-com-piscina-agua-verde-curitiba-pr-158m2-id-2795564422/
data.data.virtualTourUrl string Virtual tour link, when available. https://tour.exemplo.com/imovel/2670123456
data.extractedAt string (iso datetime) Extraction Timestamp UTC. 2026-02-19T13:10:00.000Z
data.parser "1.0.0" Stable version of the API response format. 1.0.0
data.requestUrl string Same value as `data.data.url`; never exposes the queried internal endpoint. https://www.zapimoveis.com.br/imovel/aluguel-apartamento-4-quartos-com-piscina-agua-verde-curitiba-pr-158m2-id-2795564422/
data.source string Extraction source. zapimoveis.com.br
data.type string Extraction type. pdp
executionId string (uuid) Field executionId returned in the response payload. b2f9c6b6-56da-4be1-b2f2-4ed0f3b2f002
notFound boolean (optional; true when the upstream entity was not found and data is null) Present and true when the upstream entity was not found. In this case data is null and the request still completes successfully. N/A
requestId string (uuid) Field requestId returned in the response payload. b2f9c6b6-56da-4be1-b2f2-4ed0f3b2f001

Errors and missing data

When supported by this operation, an entity not found upstream can return HTTP 200 with data: null and notFound: true. Check the documented response fields before interpreting an empty result. Source-specific behavior and exceptions are described above.

HTTP statusError codeMeaning
400INVALID_PAYLOADInvalid JSON or a request that violates the documented validation rules.
401UNAUTHORIZEDMissing authorization or an invalid API key or token.
402INSUFFICIENT_CREDITSThe account has insufficient credits for this operation.
403FORBIDDENThe account does not have access, or the API is temporarily disabled.
409EXECUTION_CONFLICTThe execution identifier conflicts with an incompatible execution state.
429RATE_LIMIT_EXCEEDED / TOO_MANY_INFLIGHT_REQUESTSA rate limit or simultaneous request limit was exceeded.
5xxUPSTREAM_TIMEOUT / UPSTREAM_HTTP_ERROR / WORKER_FUNCTION_ERRORAn upstream, worker or gateway failure. Failed requests follow the platform refund policy.

Other Zapimoveis operations