@horizon-integrations/jetimob-crm
Version:
Integração da Imobland Horizon com a Jetimob CRM
1,400 lines (1,394 loc) • 198 kB
JavaScript
"use strict";
"use strict";
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __export = (target, all) => {
for (var name in all)
__defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
for (let key of __getOwnPropNames(from))
if (!__hasOwnProp.call(to, key) && key !== except)
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
}
return to;
};
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
// src/index.ts
var index_exports = {};
__export(index_exports, {
HorizonPropertySchemaByJetimob: () => HorizonPropertySchemaByJetimob,
HorizonPropertySchemaByJetimobZod: () => HorizonPropertySchemaByJetimobZod,
JetimobDownloader: () => PropertyDownloader,
PropertyDownloader: () => PropertyDownloader,
convertJetimobPropertyToHorizon: () => convertJetimobPropertyToHorizon,
fakeData: () => jetimobFakeData
});
module.exports = __toCommonJS(index_exports);
// src/services/PropertyConverter/convertBaseFields.ts
function convertBaseFields(imovel) {
const result = {};
result.reference = imovel.codigo;
if (imovel.titulo_anuncio) result.title = imovel.titulo_anuncio;
if (imovel.observacoes) result.description = imovel.observacoes;
result.updated_at = imovel.updated_at || (/* @__PURE__ */ new Date()).toISOString();
if (imovel.titulo_anuncio) result.seo_title = imovel.titulo_anuncio.substring(0, 60);
if (imovel.meta_description) result.seo_description = imovel.meta_description;
result.currency = "BRL";
result.unit_area = imovel.medida === "m\xB2" || imovel.medida === "m2" ? "m2" : "m2";
result.unit_distance = "meters";
result.map_show_proximity = false;
if (imovel.contrato) {
const contratoLower = imovel.contrato.toLowerCase();
if (contratoLower === "compra") {
result.operacao = ["venda"];
} else if (contratoLower === "loca\xE7\xE3o" || contratoLower === "aluguel") {
result.operacao = ["locacao"];
} else if (contratoLower === "temporada") {
result.operacao = ["temporada"];
} else {
result.operacao = [imovel.contrato];
}
}
if (imovel.valor_venda) {
const valor = Number(imovel.valor_venda);
if (!isNaN(valor) && valor > 0) result.valor_venda = valor;
}
if (imovel.valor_locacao && imovel.valor_locacao_visivel) {
const valor = Number(imovel.valor_locacao);
if (!isNaN(valor) && valor > 0) result.valor_locacao = valor;
}
if (imovel.valor_temporada && imovel.valor_temporada_visivel) {
const valor = Number(imovel.valor_temporada);
if (!isNaN(valor) && valor > 0) result.valor_diaria = valor;
}
if (imovel.valor_condominio && imovel.valor_condominio_visivel) {
const valor = Number(imovel.valor_condominio);
if (!isNaN(valor) && valor >= 0) result.valor_condominio = valor;
}
if (imovel.valor_iptu && imovel.valor_iptu_visivel) {
const valor = Number(imovel.valor_iptu);
if (!isNaN(valor) && valor >= 0) result.valor_iptu = valor;
}
if (imovel.area_total) {
const area = Number(imovel.area_total);
if (!isNaN(area) && area > 0) result.area_total = area;
}
if (imovel.area_privativa) {
const area = Number(imovel.area_privativa);
if (!isNaN(area) && area > 0) result.area_privativa = area;
}
if (imovel.area_util) {
const area = Number(imovel.area_util);
if (!isNaN(area) && area > 0) result.area_util = area;
}
if (imovel.dormitorios) result.dormitorios = Number(imovel.dormitorios);
if (imovel.suites) result.suites = Number(imovel.suites);
if (imovel.banheiros) result.banheiros = Number(imovel.banheiros);
if (imovel.garagens) result.vagas_garagem = Number(imovel.garagens);
if (imovel.tipo) result.finalidade = imovel.tipo;
if (imovel.subtipo) result.tipo = imovel.subtipo;
if (imovel.endereco_cep) {
const cepLimpo = imovel.endereco_cep.replace(/\D/g, "");
if (cepLimpo.length === 8) {
result.endereco_cep = `${cepLimpo.slice(0, 5)}-${cepLimpo.slice(5)}`;
} else {
result.endereco_cep = imovel.endereco_cep;
}
}
if (imovel.endereco_estado) result.endereco_estado = imovel.endereco_estado;
if (imovel.endereco_cidade) result.endereco_cidade = imovel.endereco_cidade;
if (imovel.endereco_bairro) result.endereco_bairro = imovel.endereco_bairro;
if (imovel.endereco_logradouro) result.endereco_logradouro = imovel.endereco_logradouro;
if (imovel.endereco_numero) result.endereco_numero = imovel.endereco_numero;
if (imovel.endereco_complemento) result.endereco_complemento = imovel.endereco_complemento;
if (imovel.endereco_referencia) result.endereco_referencia = imovel.endereco_referencia;
if (imovel.endereco_zona) result.endereco_zona = imovel.endereco_zona;
const geoValue = imovel.geoposicionamento_visivel ? Number(imovel.geoposicionamento_visivel) : 0;
if (imovel.latitude && imovel.longitude && geoValue !== 0) {
const lat = Number(imovel.latitude);
const lng = Number(imovel.longitude);
if (!isNaN(lat) && !isNaN(lng) && lat !== 0 && lng !== 0) {
result.latitude = lat;
result.longitude = lng;
}
}
if (String(imovel.mobiliado) === "1" || String(imovel.mobiliado) === "true") {
result.mobiliado = true;
}
if (imovel.imovel_comodidades) {
const comodidadesArray = String(imovel.imovel_comodidades).split(",").map((c) => c.trim()).filter((c) => c.length > 0);
if (comodidadesArray.length > 0) {
result.caracteristicas = comodidadesArray;
}
}
if (imovel.destaque && imovel.destaque !== "Sem destaque") {
if (imovel.destaque === "Destaque" || imovel.destaque === "true" || String(imovel.destaque) === "true") {
result.destaque = true;
}
}
if (imovel.id_corretor) {
result.corretor_key = String(imovel.id_corretor);
}
if (imovel.id_condominio) {
result.condominio_key = String(imovel.id_condominio);
}
if (imovel.condominio_nome) {
result.condominio_nome = imovel.condominio_nome;
}
if (imovel.tags) {
result.tags = imovel.tags.split(",").map((tag) => tag.trim()).filter((tag) => tag.length > 0);
}
if (imovel.numero_pessoas) {
const pessoas = Number(imovel.numero_pessoas);
if (!isNaN(pessoas) && pessoas > 0) result.numero_pessoas = pessoas;
}
if (imovel.imagens && imovel.imagens.length > 0) {
result.images = imovel.imagens.map((imagem, index) => ({
full: imagem.link,
md: imagem.link_thumb || imagem.link,
sm: imagem.link_thumb || imagem.link,
cover: index === 0
// primeira imagem como cover
}));
const imagemPrincipal = imovel.imagens[0];
if (imagemPrincipal) {
result.main_image = {
full: imagemPrincipal.link,
md: imagemPrincipal.link_thumb || imagemPrincipal.link,
sm: imagemPrincipal.link_thumb || imagemPrincipal.link
};
}
}
if (imovel.videos && imovel.videos.length > 0) {
result.videos = imovel.videos.map((url) => generateVideo(url));
}
if (imovel.tour360 && imovel.tour360.length > 0) {
result.virtual_tours = imovel.tour360.map((tour) => ({ embed_url: tour }));
}
if (imovel.plantas && imovel.plantas.length > 0) {
result.documents = imovel.plantas.map((plantaUrl, index) => ({
name: `Planta ${index + 1}`,
url: plantaUrl
}));
}
return result;
}
function generateVideo(url) {
try {
const parsed = new URL(url);
const host = parsed.hostname;
if (host.includes("youtube.com") || host.includes("youtu.be")) {
const id = parsed.searchParams.get("v") || parsed.pathname.split("/").pop();
return {
provider: "youtube",
id: id || void 0,
embed_url: `https://www.youtube.com/embed/${id}`
};
}
return {
embed_url: url
};
} catch (e) {
return {
embed_url: url
};
}
}
// src/services/PropertyConverter/convertExtendedFields.ts
function convertExtendedFields(imovel) {
const result = {};
if (imovel.valor_seguro_incendio) {
const valor = Number(imovel.valor_seguro_incendio);
if (!isNaN(valor) && valor >= 0) result.valor_seguro_incendio = valor;
}
if (imovel.valor_taxa_limpeza) {
const valor = Number(imovel.valor_taxa_limpeza);
if (!isNaN(valor) && valor >= 0) result.valor_taxa_limpeza = valor;
}
if (imovel.andar) result.andar = Number(imovel.andar);
if (String(imovel.financiavel) === "1" || String(imovel.financiavel) === "true") {
result.financiavel = true;
}
if (String(imovel.exclusividade) === "true" || String(imovel.exclusividade) === "1") {
result.exclusividade = true;
}
if (String(imovel.permuta) === "true" || String(imovel.permuta) === "1") {
result.permuta = true;
}
if (String(imovel.seguro_fianca) === "true" || String(imovel.seguro_fianca) === "1") {
result.seguro_fianca = true;
}
if (imovel.situacao) result.situacao = imovel.situacao;
if (imovel.distancia_mar) result.distancia_mar = Number(imovel.distancia_mar);
if (imovel.posicao_solar) result.posicao_solar = imovel.posicao_solar;
if (imovel.status) result.status = imovel.status;
if (imovel.posicao) result.posicao = imovel.posicao;
if (imovel.calendario_temporada) {
result.calendario_temporada = Array.isArray(imovel.calendario_temporada) ? imovel.calendario_temporada : [imovel.calendario_temporada];
}
if (imovel.condominio_comodidades) {
result.condominio_comodidades = Array.isArray(imovel.condominio_comodidades) ? imovel.condominio_comodidades : [imovel.condominio_comodidades];
}
if (imovel.condominio_tipo) result.condominio_tipo = imovel.condominio_tipo;
if (imovel.id_subcondominio) result.subcondominio_id = String(imovel.id_subcondominio);
if (String(imovel.condominio_fechado) === "1" || String(imovel.condominio_fechado) === "true") {
result.condominio_fechado = true;
}
if (imovel.entrega_ano) {
const ano = Number(imovel.entrega_ano);
if (!isNaN(ano) && ano > 0) result.entrega_ano = ano;
}
if (imovel.entrega_mes) {
const mes = Number(imovel.entrega_mes);
if (!isNaN(mes) && mes > 0 && mes <= 12) result.entrega_mes = mes;
}
if (imovel.tipo_construcao) result.tipo_construcao = imovel.tipo_construcao;
if (imovel.tipo_piso) result.tipo_piso = imovel.tipo_piso;
if (imovel.periodicidade_iptu) result.periodicidade_iptu = imovel.periodicidade_iptu;
if (imovel.terreno_frente) {
const medida = Number(imovel.terreno_frente);
if (!isNaN(medida) && medida > 0) result.terreno_frente = medida;
}
if (imovel.terreno_fundos) {
const medida = Number(imovel.terreno_fundos);
if (!isNaN(medida) && medida > 0) result.terreno_fundos = medida;
}
if (imovel.terreno_esquerdo) {
const medida = Number(imovel.terreno_esquerdo);
if (!isNaN(medida) && medida > 0) result.terreno_esquerdo = medida;
}
if (imovel.terreno_direita) {
const medida = Number(imovel.terreno_direita);
if (!isNaN(medida) && medida > 0) result.terreno_direita = medida;
}
if (imovel.terreno_total) {
const area = Number(imovel.terreno_total);
if (!isNaN(area) && area > 0) result.terreno_area_total = area;
}
if (imovel.rural?.rural_area_aravel) {
const area = Number(imovel.rural.rural_area_aravel);
if (!isNaN(area) && area > 0) result.rural_area_aravel = area;
}
if (imovel.rural?.rural_sedes) {
const sedes = Number(imovel.rural.rural_sedes);
if (!isNaN(sedes) && sedes > 0) result.rural_sedes = sedes;
}
if (imovel.rural?.atividade_rural) result.rural_atividade = imovel.rural.atividade_rural;
return result;
}
// src/services/PropertyConverter/index.ts
function convertJetimobPropertyToHorizon(imovel) {
const baseFields = convertBaseFields(imovel);
const extendedFields = convertExtendedFields(imovel);
const result = {
...baseFields,
...extendedFields
};
return result;
}
// src/services/PropertyDownloader.ts
var import_fs = require("fs");
var import_path = require("path");
var PropertyDownloader = class {
constructor(config) {
this.webserviceKey = config.webserviceKey;
this.baseUrl = config.baseUrl || "https://api.jetimob.com";
this.outputDir = config.outputDir;
}
async getProperties(page = 1, pageSize = 50) {
const url = `${this.baseUrl}/webservice/${this.webserviceKey}/imoveis?v=4&page=${page}&pageSize=${pageSize}`;
console.log(`\u{1F517} Requisi\xE7\xE3o: ${url}`);
const response = await fetch(url);
if (!response.ok) {
const errorText = await response.text();
throw new Error(
`Erro ${response.status}: ${errorText}`
);
}
return response.json();
}
async ensureOutputDir() {
try {
await import_fs.promises.access(this.outputDir);
} catch {
await import_fs.promises.mkdir(this.outputDir, {
recursive: true
});
}
}
async savePageData(page, data) {
const properties = data?.data || data;
if (!Array.isArray(properties) || properties.length === 0) {
console.log(
` \u{1F4C4} P\xE1gina ${page} vazia, n\xE3o salvando arquivo`
);
return false;
}
const fileName = `page-${page}.json`;
const filePath = (0, import_path.join)(
this.outputDir,
fileName
);
await import_fs.promises.writeFile(
filePath,
JSON.stringify(properties, null, 2),
"utf8"
);
return true;
}
async downloadAll(pageSize = 100) {
await this.ensureOutputDir();
const errors = [];
let totalPages = 0;
let downloadedItems = 0;
let currentPage = 1;
console.log(
`\u{1F680} Iniciando download completo da API...`
);
console.log(
`\u{1F4C4} Tamanho da p\xE1gina: ${pageSize} propriedades`
);
try {
while (true) {
console.log(
`
\u{1F4C4} Baixando p\xE1gina ${currentPage}...`
);
const response = await this.getProperties(
currentPage,
pageSize
);
const properties = response?.data || response;
if (!Array.isArray(properties) || properties.length === 0) {
console.log(
`\u2705 P\xE1gina ${currentPage} vazia - download completo!`
);
break;
}
const saved = await this.savePageData(
currentPage,
response
);
if (saved) {
downloadedItems += properties.length;
console.log(
`\u2705 P\xE1gina ${currentPage}: ${properties.length} propriedades salvas`
);
}
if (response?.totalPages) {
console.log(
`\u{1F4CA} Progresso: ${currentPage}/${response.totalPages} p\xE1ginas`
);
}
currentPage++;
totalPages = currentPage - 1;
await new Promise(
(resolve) => setTimeout(resolve, 500)
);
}
} catch (error) {
const errorMsg = `Erro no download: ${error instanceof Error ? error.message : String(error)}`;
errors.push(errorMsg);
console.error(`\u274C ${errorMsg}`);
}
console.log(`
\u{1F4CA} RESUMO DO DOWNLOAD:`);
console.log(
`\u{1F4C4} Total de p\xE1ginas: ${totalPages}`
);
console.log(
`\u2705 Propriedades baixadas: ${downloadedItems}`
);
if (errors.length > 0) {
console.log(
`\u274C Erros: ${errors.length}`
);
errors.forEach(
(err) => console.log(` - ${err}`)
);
}
return {
totalPages,
totalItems: downloadedItems,
downloadedItems,
errors
};
}
};
// src/data/fake-data/apartamentos.json
var apartamentos_default = [
{
codigo: "FAKE_APARTAMENTOS_001",
titulo_anuncio: "Apartamento Centro - 2 dorm, 2 su\xEDtes, 165m\xB2, 1 vaga",
observacoes: "Apartamento com vista para o mar em Torres, a praia mais linda do RS.",
contrato: "Compra",
tipo: "Residencial",
subtipo: "Apartamento",
mobiliado: 0,
financiavel: 0,
exclusividade: false,
medida: "m\xB2",
endereco_estado: "Rio Grande do Sul",
endereco_cidade: "Torres",
data_cadastro: "2024-01-06 13:26:01",
data_update: "2025-03-03 00:46:23",
data_atualizacao: "2025-03-16 10:42:00",
updated_at: "2025-03-19 08:18:57",
dormitorios: 2,
suites: 2,
banheiros: 3,
garagens: 1,
area_total: 150,
area_privativa: 165,
andar: 1,
valor_venda: 28e4,
endereco_bairro: "Vila S\xE3o Jo\xE3o",
endereco_logradouro: "Rua J\xFAlio de Castilhos",
endereco_numero: "491",
endereco_cep: "95560-070",
endereco_complemento: "Apto 1",
latitude: -29.342936776054497,
longitude: -49.72035923955464,
imovel_comodidades: "Sacada,Pr\xF3ximo \xE0 praia,\xC1rea de servi\xE7o,Churrasqueira,Lavabo",
imagens: [
{
link: "https://images.unsplash.com/photo-1565183997392-2f6f122e5912?w=800&q=80",
titulo: "1.jpg",
link_thumb: "https://images.unsplash.com/photo-1565183997392-2f6f122e5912?w=400&q=80"
},
{
link: "https://images.unsplash.com/photo-1545324418-cc1a3fa10c00?w=800&q=80",
titulo: "2.jpg",
link_thumb: "https://images.unsplash.com/photo-1545324418-cc1a3fa10c00?w=400&q=80"
},
{
link: "https://images.unsplash.com/photo-1568605117036-5fe5e7bab0b7?w=800&q=80",
titulo: "3.jpg",
link_thumb: "https://images.unsplash.com/photo-1568605117036-5fe5e7bab0b7?w=400&q=80"
}
],
videos: [],
tour360: [],
plantas: [],
valor_venda_visivel: true,
valor_locacao_visivel: false,
valor_temporada_visivel: false,
valor_condominio_visivel: false,
valor_iptu_visivel: false,
endereco_estado_visivel: true,
endereco_cidade_visivel: false,
endereco_bairro_visivel: false,
endereco_logradouro_visivel: false,
endereco_numero_visivel: false,
endereco_complemento_visivel: false
},
{
codigo: "FAKE_APARTAMENTOS_002",
titulo_anuncio: "Apartamento Centro - 4 dorm, 3 su\xEDtes, 165m\xB2, 3 vagas",
observacoes: "Unidade moderna pr\xF3xima ao Centro Hist\xF3rico e ao Farol de Torres.",
contrato: "Compra",
tipo: "Residencial",
subtipo: "Apartamento",
mobiliado: 0,
financiavel: 0,
exclusividade: false,
medida: "m\xB2",
endereco_estado: "Rio Grande do Sul",
endereco_cidade: "Torres",
data_cadastro: "2024-03-10 02:20:33",
data_update: "2025-05-18 22:01:44",
data_atualizacao: "2025-04-13 15:23:31",
updated_at: "2025-01-14 22:31:12",
dormitorios: 4,
suites: 3,
banheiros: 3,
garagens: 3,
area_total: 105,
area_privativa: 165,
andar: 10,
valor_venda: 85e4,
endereco_bairro: "Vila S\xE3o Jo\xE3o",
endereco_logradouro: "Rua Jo\xE3o Neves da Fontoura",
endereco_numero: "882",
endereco_cep: "95560-020",
endereco_complemento: "",
latitude: -29.326109044782587,
longitude: -49.72886046595862,
imovel_comodidades: "\xC1rea gourmet,\xC1rea de servi\xE7o,Lavabo,Hidromassagem",
imagens: [
{
link: "https://images.unsplash.com/photo-1493663284031-b7e3aefcae8e?w=800&q=80",
titulo: "1.jpg",
link_thumb: "https://images.unsplash.com/photo-1493663284031-b7e3aefcae8e?w=400&q=80"
},
{
link: "https://images.unsplash.com/photo-1493663284031-b7e3aefcae8e?w=800&q=80",
titulo: "2.jpg",
link_thumb: "https://images.unsplash.com/photo-1493663284031-b7e3aefcae8e?w=400&q=80"
},
{
link: "https://images.unsplash.com/photo-1560185127-6ed189bf02f4?w=800&q=80",
titulo: "3.jpg",
link_thumb: "https://images.unsplash.com/photo-1560185127-6ed189bf02f4?w=400&q=80"
},
{
link: "https://images.unsplash.com/photo-1560185127-6ed189bf02f4?w=800&q=80",
titulo: "4.jpg",
link_thumb: "https://images.unsplash.com/photo-1560185127-6ed189bf02f4?w=400&q=80"
},
{
link: "https://images.unsplash.com/photo-1545324418-cc1a3fa10c00?w=800&q=80",
titulo: "5.jpg",
link_thumb: "https://images.unsplash.com/photo-1545324418-cc1a3fa10c00?w=400&q=80"
}
],
videos: [],
tour360: [],
plantas: [],
valor_venda_visivel: true,
valor_locacao_visivel: false,
valor_temporada_visivel: false,
valor_condominio_visivel: false,
valor_iptu_visivel: false,
endereco_estado_visivel: true,
endereco_cidade_visivel: false,
endereco_bairro_visivel: false,
endereco_logradouro_visivel: false,
endereco_numero_visivel: false,
endereco_complemento_visivel: false
},
{
codigo: "FAKE_APARTAMENTOS_003",
titulo_anuncio: "Apartamento Centro - 3 dorm, 115m\xB2, 3 vagas",
observacoes: "Im\xF3vel com excelente localiza\xE7\xE3o e acabamentos de primeira linha.",
contrato: "Compra",
tipo: "Residencial",
subtipo: "Apartamento",
mobiliado: 0,
financiavel: 0,
exclusividade: false,
medida: "m\xB2",
endereco_estado: "Rio Grande do Sul",
endereco_cidade: "Torres",
data_cadastro: "2025-07-23 02:33:46",
data_update: "2024-06-18 14:20:49",
data_atualizacao: "2025-05-26 22:11:42",
updated_at: "2025-07-18 14:46:17",
dormitorios: 3,
suites: 0,
banheiros: 3,
garagens: 3,
area_total: 45,
area_privativa: 115,
andar: 15,
valor_venda: 85e4,
endereco_bairro: "Praia Grande",
endereco_logradouro: "Rua Senador Pinheiro Machado",
endereco_numero: "430",
endereco_cep: "95560-060",
endereco_complemento: "Apto 2",
latitude: -29.336375878338483,
longitude: -49.72503985134924,
imovel_comodidades: "Ar condicionado,Varanda,\xC1rea gourmet,\xC1rea de servi\xE7o",
imagens: [
{
link: "https://images.unsplash.com/photo-1502672260266-1c1ef2d93688?w=800&q=80",
titulo: "1.jpg",
link_thumb: "https://images.unsplash.com/photo-1502672260266-1c1ef2d93688?w=400&q=80"
},
{
link: "https://images.unsplash.com/photo-1493663284031-b7e3aefcae8e?w=800&q=80",
titulo: "2.jpg",
link_thumb: "https://images.unsplash.com/photo-1493663284031-b7e3aefcae8e?w=400&q=80"
},
{
link: "https://images.unsplash.com/photo-1522708323590-d24dbb6b0267?w=800&q=80",
titulo: "3.jpg",
link_thumb: "https://images.unsplash.com/photo-1522708323590-d24dbb6b0267?w=400&q=80"
},
{
link: "https://images.unsplash.com/photo-1560185127-6ed189bf02f4?w=800&q=80",
titulo: "4.jpg",
link_thumb: "https://images.unsplash.com/photo-1560185127-6ed189bf02f4?w=400&q=80"
},
{
link: "https://images.unsplash.com/photo-1586023492125-27b2c045efd7?w=800&q=80",
titulo: "5.jpg",
link_thumb: "https://images.unsplash.com/photo-1586023492125-27b2c045efd7?w=400&q=80"
}
],
videos: [],
tour360: [],
plantas: [],
valor_venda_visivel: true,
valor_locacao_visivel: false,
valor_temporada_visivel: false,
valor_condominio_visivel: false,
valor_iptu_visivel: false,
endereco_estado_visivel: true,
endereco_cidade_visivel: false,
endereco_bairro_visivel: false,
endereco_logradouro_visivel: false,
endereco_numero_visivel: false,
endereco_complemento_visivel: false
},
{
codigo: "FAKE_APARTAMENTOS_004",
titulo_anuncio: "Apartamento Centro - 3 dorm, 2 su\xEDtes, 140m\xB2, 1 vaga",
observacoes: "Im\xF3vel com excelente localiza\xE7\xE3o e acabamentos de primeira linha.",
contrato: "Compra",
tipo: "Residencial",
subtipo: "Apartamento",
mobiliado: 0,
financiavel: 0,
exclusividade: false,
medida: "m\xB2",
endereco_estado: "Rio Grande do Sul",
endereco_cidade: "Torres",
data_cadastro: "2025-01-12 05:21:57",
data_update: "2025-07-10 14:50:25",
data_atualizacao: "2024-10-07 07:40:13",
updated_at: "2025-05-05 10:51:02",
dormitorios: 3,
suites: 2,
banheiros: 1,
garagens: 1,
area_total: 65,
area_privativa: 140,
andar: 12,
valor_venda: 85e4,
endereco_bairro: "Jardim Ubatuba",
endereco_logradouro: "Rua Senador Pinheiro Machado",
endereco_numero: "427",
endereco_cep: "95560-020",
endereco_complemento: "Apto 6",
latitude: -29.339157171441027,
longitude: -49.72632203630522,
imovel_comodidades: "Ar condicionado,Jardim,Garagem coberta,Terra\xE7o,Sacada,Pr\xF3ximo \xE0 praia",
imagens: [
{
link: "https://images.unsplash.com/photo-1560448204-e02f11c3d0e2?w=800&q=80",
titulo: "1.jpg",
link_thumb: "https://images.unsplash.com/photo-1560448204-e02f11c3d0e2?w=400&q=80"
},
{
link: "https://images.unsplash.com/photo-1522708323590-d24dbb6b0267?w=800&q=80",
titulo: "2.jpg",
link_thumb: "https://images.unsplash.com/photo-1522708323590-d24dbb6b0267?w=400&q=80"
},
{
link: "https://images.unsplash.com/photo-1568605117036-5fe5e7bab0b7?w=800&q=80",
titulo: "3.jpg",
link_thumb: "https://images.unsplash.com/photo-1568605117036-5fe5e7bab0b7?w=400&q=80"
},
{
link: "https://images.unsplash.com/photo-1556909114-f6e7ad7d3136?w=800&q=80",
titulo: "4.jpg",
link_thumb: "https://images.unsplash.com/photo-1556909114-f6e7ad7d3136?w=400&q=80"
}
],
videos: [],
tour360: [],
plantas: [],
valor_venda_visivel: true,
valor_locacao_visivel: false,
valor_temporada_visivel: false,
valor_condominio_visivel: false,
valor_iptu_visivel: false,
endereco_estado_visivel: true,
endereco_cidade_visivel: false,
endereco_bairro_visivel: false,
endereco_logradouro_visivel: false,
endereco_numero_visivel: false,
endereco_complemento_visivel: false
},
{
codigo: "FAKE_APARTAMENTOS_005",
titulo_anuncio: "Apartamento Centro - 3 dorm, 3 su\xEDtes, 55m\xB2, 2 vagas",
observacoes: "Apartamento com sacada, a poucos metros da Praia Grande.",
contrato: "Compra",
tipo: "Residencial",
subtipo: "Apartamento",
mobiliado: 0,
financiavel: 0,
exclusividade: false,
medida: "m\xB2",
endereco_estado: "Rio Grande do Sul",
endereco_cidade: "Torres",
data_cadastro: "2024-05-08 10:23:39",
data_update: "2024-09-18 14:42:42",
data_atualizacao: "2024-01-07 03:13:44",
updated_at: "2025-02-09 06:49:29",
dormitorios: 3,
suites: 3,
banheiros: 4,
garagens: 2,
area_total: 180,
area_privativa: 55,
andar: 12,
valor_venda: 18e4,
endereco_bairro: "Prainha",
endereco_logradouro: "Rua Bar\xE3o do Rio Branco",
endereco_numero: "526",
endereco_cep: "95560-060",
endereco_complemento: "",
latitude: -29.33708529462322,
longitude: -49.73430782637095,
imovel_comodidades: "Lareira,Varanda",
imagens: [
{
link: "https://images.unsplash.com/photo-1522708323590-d24dbb6b0267?w=800&q=80",
titulo: "1.jpg",
link_thumb: "https://images.unsplash.com/photo-1522708323590-d24dbb6b0267?w=400&q=80"
},
{
link: "https://images.unsplash.com/photo-1502672260266-1c1ef2d93688?w=800&q=80",
titulo: "2.jpg",
link_thumb: "https://images.unsplash.com/photo-1502672260266-1c1ef2d93688?w=400&q=80"
},
{
link: "https://images.unsplash.com/photo-1493663284031-b7e3aefcae8e?w=800&q=80",
titulo: "3.jpg",
link_thumb: "https://images.unsplash.com/photo-1493663284031-b7e3aefcae8e?w=400&q=80"
},
{
link: "https://images.unsplash.com/photo-1581858726788-75bc0f6a952d?w=800&q=80",
titulo: "4.jpg",
link_thumb: "https://images.unsplash.com/photo-1581858726788-75bc0f6a952d?w=400&q=80"
}
],
videos: [],
tour360: [],
plantas: [],
valor_venda_visivel: true,
valor_locacao_visivel: false,
valor_temporada_visivel: false,
valor_condominio_visivel: false,
valor_iptu_visivel: false,
endereco_estado_visivel: true,
endereco_cidade_visivel: false,
endereco_bairro_visivel: false,
endereco_logradouro_visivel: false,
endereco_numero_visivel: false,
endereco_complemento_visivel: false
},
{
codigo: "FAKE_APARTAMENTOS_006",
titulo_anuncio: "Apartamento Centro - 4 dorm, 2 su\xEDtes, 55m\xB2, 3 vagas",
observacoes: "Apartamento com vista para o mar em Torres, a praia mais linda do RS.",
contrato: "Compra",
tipo: "Residencial",
subtipo: "Apartamento",
mobiliado: 0,
financiavel: 0,
exclusividade: false,
medida: "m\xB2",
endereco_estado: "Rio Grande do Sul",
endereco_cidade: "Torres",
data_cadastro: "2025-06-12 10:45:18",
data_update: "2024-09-07 03:24:40",
data_atualizacao: "2024-12-04 16:01:29",
updated_at: "2024-07-27 13:34:42",
dormitorios: 4,
suites: 2,
banheiros: 4,
garagens: 3,
area_total: 105,
area_privativa: 55,
andar: 12,
valor_venda: 62e4,
endereco_bairro: "Residencial Quinta da Colina",
endereco_logradouro: "Rua Crist\xF3v\xE3o Colombo",
endereco_numero: "52",
endereco_cep: "95560-010",
endereco_complemento: "",
latitude: -29.3424800569058,
longitude: -49.71831372337415,
imovel_comodidades: "Churrasqueira,Vista para o mar,Garagem coberta,Ar condicionado",
imagens: [
{
link: "https://images.unsplash.com/photo-1574362848149-11496d93a7c7?w=800&q=80",
titulo: "1.jpg",
link_thumb: "https://images.unsplash.com/photo-1574362848149-11496d93a7c7?w=400&q=80"
},
{
link: "https://images.unsplash.com/photo-1565183997392-2f6f122e5912?w=800&q=80",
titulo: "2.jpg",
link_thumb: "https://images.unsplash.com/photo-1565183997392-2f6f122e5912?w=400&q=80"
},
{
link: "https://images.unsplash.com/photo-1581858726788-75bc0f6a952d?w=800&q=80",
titulo: "3.jpg",
link_thumb: "https://images.unsplash.com/photo-1581858726788-75bc0f6a952d?w=400&q=80"
},
{
link: "https://images.unsplash.com/photo-1560185127-6ed189bf02f4?w=800&q=80",
titulo: "4.jpg",
link_thumb: "https://images.unsplash.com/photo-1560185127-6ed189bf02f4?w=400&q=80"
}
],
videos: [],
tour360: [],
plantas: [],
valor_venda_visivel: true,
valor_locacao_visivel: false,
valor_temporada_visivel: false,
valor_condominio_visivel: false,
valor_iptu_visivel: false,
endereco_estado_visivel: true,
endereco_cidade_visivel: false,
endereco_bairro_visivel: false,
endereco_logradouro_visivel: false,
endereco_numero_visivel: false,
endereco_complemento_visivel: false
},
{
codigo: "FAKE_APARTAMENTOS_007",
titulo_anuncio: "Apartamento Centro - 2 dorm, 3 su\xEDtes, 35m\xB2, 2 vagas",
observacoes: "Apartamento com sacada, a poucos metros da Praia Grande.",
contrato: "Compra",
tipo: "Residencial",
subtipo: "Apartamento",
mobiliado: 0,
financiavel: 0,
exclusividade: false,
medida: "m\xB2",
endereco_estado: "Rio Grande do Sul",
endereco_cidade: "Torres",
data_cadastro: "2024-10-27 12:03:54",
data_update: "2025-03-07 19:18:00",
data_atualizacao: "2024-07-30 07:14:20",
updated_at: "2024-08-20 11:51:48",
dormitorios: 2,
suites: 3,
banheiros: 3,
garagens: 2,
area_total: 180,
area_privativa: 35,
andar: 15,
valor_venda: 18e4,
endereco_bairro: "Vila Aparecida",
endereco_logradouro: "Avenida Paraguassu",
endereco_numero: "501",
endereco_cep: "95560-001",
endereco_complemento: "",
latitude: -29.32939553045724,
longitude: -49.72914491690439,
imovel_comodidades: "Hidromassagem,Garagem coberta,\xC1rea de servi\xE7o",
imagens: [
{
link: "https://images.unsplash.com/photo-1545324418-cc1a3fa10c00?w=800&q=80",
titulo: "1.jpg",
link_thumb: "https://images.unsplash.com/photo-1545324418-cc1a3fa10c00?w=400&q=80"
},
{
link: "https://images.unsplash.com/photo-1545324418-cc1a3fa10c00?w=800&q=80",
titulo: "2.jpg",
link_thumb: "https://images.unsplash.com/photo-1545324418-cc1a3fa10c00?w=400&q=80"
},
{
link: "https://images.unsplash.com/photo-1502672260266-1c1ef2d93688?w=800&q=80",
titulo: "3.jpg",
link_thumb: "https://images.unsplash.com/photo-1502672260266-1c1ef2d93688?w=400&q=80"
},
{
link: "https://images.unsplash.com/photo-1586023492125-27b2c045efd7?w=800&q=80",
titulo: "4.jpg",
link_thumb: "https://images.unsplash.com/photo-1586023492125-27b2c045efd7?w=400&q=80"
},
{
link: "https://images.unsplash.com/photo-1556909114-f6e7ad7d3136?w=800&q=80",
titulo: "5.jpg",
link_thumb: "https://images.unsplash.com/photo-1556909114-f6e7ad7d3136?w=400&q=80"
}
],
videos: [],
tour360: [],
plantas: [],
valor_venda_visivel: true,
valor_locacao_visivel: false,
valor_temporada_visivel: false,
valor_condominio_visivel: false,
valor_iptu_visivel: false,
endereco_estado_visivel: true,
endereco_cidade_visivel: false,
endereco_bairro_visivel: false,
endereco_logradouro_visivel: false,
endereco_numero_visivel: false,
endereco_complemento_visivel: false
},
{
codigo: "FAKE_APARTAMENTOS_008",
titulo_anuncio: "Apartamento Centro - 4 dorm, 3 su\xEDtes, 75m\xB2, 3 vagas",
observacoes: "Apartamento com sacada, a poucos metros da Praia Grande.",
contrato: "Compra",
tipo: "Residencial",
subtipo: "Apartamento",
mobiliado: 0,
financiavel: 0,
exclusividade: false,
medida: "m\xB2",
endereco_estado: "Rio Grande do Sul",
endereco_cidade: "Torres",
data_cadastro: "2024-08-09 15:10:05",
data_update: "2024-11-13 10:58:00",
data_atualizacao: "2024-06-27 21:22:25",
updated_at: "2024-04-26 14:12:51",
dormitorios: 4,
suites: 3,
banheiros: 4,
garagens: 3,
area_total: 105,
area_privativa: 75,
andar: 12,
valor_venda: 18e4,
endereco_bairro: "Prainha",
endereco_logradouro: "Avenida Beira Mar",
endereco_numero: "573",
endereco_cep: "95560-010",
endereco_complemento: "Apto 13",
latitude: -29.33017236005315,
longitude: -49.7229083304007,
imovel_comodidades: "Churrasqueira,\xC1rea gourmet,Terra\xE7o,Vista para o mar",
imagens: [
{
link: "https://images.unsplash.com/photo-1560448204-e02f11c3d0e2?w=800&q=80",
titulo: "1.jpg",
link_thumb: "https://images.unsplash.com/photo-1560448204-e02f11c3d0e2?w=400&q=80"
},
{
link: "https://images.unsplash.com/photo-1545324418-cc1a3fa10c00?w=800&q=80",
titulo: "2.jpg",
link_thumb: "https://images.unsplash.com/photo-1545324418-cc1a3fa10c00?w=400&q=80"
},
{
link: "https://images.unsplash.com/photo-1560185127-6ed189bf02f4?w=800&q=80",
titulo: "3.jpg",
link_thumb: "https://images.unsplash.com/photo-1560185127-6ed189bf02f4?w=400&q=80"
}
],
videos: [],
tour360: [],
plantas: [],
valor_venda_visivel: true,
valor_locacao_visivel: false,
valor_temporada_visivel: false,
valor_condominio_visivel: false,
valor_iptu_visivel: false,
endereco_estado_visivel: true,
endereco_cidade_visivel: false,
endereco_bairro_visivel: false,
endereco_logradouro_visivel: false,
endereco_numero_visivel: false,
endereco_complemento_visivel: false
},
{
codigo: "FAKE_APARTAMENTOS_009",
titulo_anuncio: "Apartamento Centro - 4 dorm, 95m\xB2, 1 vaga",
observacoes: "Im\xF3vel com excelente localiza\xE7\xE3o e acabamentos de primeira linha.",
contrato: "Compra",
tipo: "Residencial",
subtipo: "Apartamento",
mobiliado: 0,
financiavel: 0,
exclusividade: false,
medida: "m\xB2",
endereco_estado: "Rio Grande do Sul",
endereco_cidade: "Torres",
data_cadastro: "2025-02-11 23:09:26",
data_update: "2024-06-21 03:00:28",
data_atualizacao: "2024-02-08 04:56:29",
updated_at: "2024-07-04 12:24:44",
dormitorios: 4,
suites: 0,
banheiros: 4,
garagens: 1,
area_total: 150,
area_privativa: 95,
andar: 8,
valor_venda: 28e4,
endereco_bairro: "Vila S\xE3o Jo\xE3o",
endereco_logradouro: "Rua Benjamin Constant",
endereco_numero: "967",
endereco_cep: "95560-020",
endereco_complemento: "",
latitude: -29.338789575624848,
longitude: -49.736857533133374,
imovel_comodidades: "Garagem coberta,Ar condicionado,Lareira,Churrasqueira",
imagens: [
{
link: "https://images.unsplash.com/photo-1493663284031-b7e3aefcae8e?w=800&q=80",
titulo: "1.jpg",
link_thumb: "https://images.unsplash.com/photo-1493663284031-b7e3aefcae8e?w=400&q=80"
},
{
link: "https://images.unsplash.com/photo-1545324418-cc1a3fa10c00?w=800&q=80",
titulo: "2.jpg",
link_thumb: "https://images.unsplash.com/photo-1545324418-cc1a3fa10c00?w=400&q=80"
},
{
link: "https://images.unsplash.com/photo-1556909114-f6e7ad7d3136?w=800&q=80",
titulo: "3.jpg",
link_thumb: "https://images.unsplash.com/photo-1556909114-f6e7ad7d3136?w=400&q=80"
}
],
videos: [],
tour360: [],
plantas: [],
valor_venda_visivel: true,
valor_locacao_visivel: false,
valor_temporada_visivel: false,
valor_condominio_visivel: false,
valor_iptu_visivel: false,
endereco_estado_visivel: true,
endereco_cidade_visivel: false,
endereco_bairro_visivel: false,
endereco_logradouro_visivel: false,
endereco_numero_visivel: false,
endereco_complemento_visivel: false
},
{
codigo: "FAKE_APARTAMENTOS_010",
titulo_anuncio: "Apartamento Centro - 3 dorm, 55m\xB2, 2 vagas",
observacoes: "Im\xF3vel com excelente localiza\xE7\xE3o e acabamentos de primeira linha.",
contrato: "Compra",
tipo: "Residencial",
subtipo: "Apartamento",
mobiliado: 0,
financiavel: 0,
exclusividade: false,
medida: "m\xB2",
endereco_estado: "Rio Grande do Sul",
endereco_cidade: "Torres",
data_cadastro: "2024-03-07 04:52:16",
data_update: "2025-01-02 06:07:47",
data_atualizacao: "2024-10-27 06:54:47",
updated_at: "2024-12-01 12:54:25",
dormitorios: 3,
suites: 0,
banheiros: 2,
garagens: 2,
area_total: 150,
area_privativa: 55,
andar: 1,
valor_venda: 62e4,
endereco_bairro: "Parque Estadual",
endereco_logradouro: "Rua Benjamin Constant",
endereco_numero: "548",
endereco_cep: "95560-001",
endereco_complemento: "",
latitude: -29.33153364697405,
longitude: -49.73064631945697,
imovel_comodidades: "Hidromassagem,Terra\xE7o,Varanda",
imagens: [
{
link: "https://images.unsplash.com/photo-1545324418-cc1a3fa10c00?w=800&q=80",
titulo: "1.jpg",
link_thumb: "https://images.unsplash.com/photo-1545324418-cc1a3fa10c00?w=400&q=80"
},
{
link: "https://images.unsplash.com/photo-1522708323590-d24dbb6b0267?w=800&q=80",
titulo: "2.jpg",
link_thumb: "https://images.unsplash.com/photo-1522708323590-d24dbb6b0267?w=400&q=80"
},
{
link: "https://images.unsplash.com/photo-1560185127-6ed189bf02f4?w=800&q=80",
titulo: "3.jpg",
link_thumb: "https://images.unsplash.com/photo-1560185127-6ed189bf02f4?w=400&q=80"
},
{
link: "https://images.unsplash.com/photo-1502672260266-1c1ef2d93688?w=800&q=80",
titulo: "4.jpg",
link_thumb: "https://images.unsplash.com/photo-1502672260266-1c1ef2d93688?w=400&q=80"
},
{
link: "https://images.unsplash.com/photo-1581858726788-75bc0f6a952d?w=800&q=80",
titulo: "5.jpg",
link_thumb: "https://images.unsplash.com/photo-1581858726788-75bc0f6a952d?w=400&q=80"
}
],
videos: [],
tour360: [],
plantas: [],
valor_venda_visivel: true,
valor_locacao_visivel: false,
valor_temporada_visivel: false,
valor_condominio_visivel: false,
valor_iptu_visivel: false,
endereco_estado_visivel: true,
endereco_cidade_visivel: false,
endereco_bairro_visivel: false,
endereco_logradouro_visivel: false,
endereco_numero_visivel: false,
endereco_complemento_visivel: false
},
{
codigo: "FAKE_APARTAMENTOS_011",
titulo_anuncio: "Apartamento Centro - 1 dorm, 2 su\xEDtes, 35m\xB2, 1 vaga",
observacoes: "Apartamento com vista para o mar em Torres, a praia mais linda do RS.",
contrato: "Compra",
tipo: "Residencial",
subtipo: "Apartamento",
mobiliado: 0,
financiavel: 0,
exclusividade: false,
medida: "m\xB2",
endereco_estado: "Rio Grande do Sul",
endereco_cidade: "Torres",
data_cadastro: "2024-12-25 17:00:33",
data_update: "2025-06-11 04:22:15",
data_atualizacao: "2025-02-17 19:28:52",
updated_at: "2024-08-19 12:16:16",
dormitorios: 1,
suites: 2,
banheiros: 4,
garagens: 1,
area_total: 150,
area_privativa: 35,
andar: 10,
valor_venda: 62e4,
endereco_bairro: "Residencial Quinta da Colina",
endereco_logradouro: "Avenida Beira Mar",
endereco_numero: "522",
endereco_cep: "95560-060",
endereco_complemento: "",
latitude: -29.343600282488353,
longitude: -49.727904385297634,
imovel_comodidades: "Ar condicionado,Churrasqueira,Sacada,\xC1rea gourmet",
imagens: [
{
link: "https://images.unsplash.com/photo-1502672260266-1c1ef2d93688?w=800&q=80",
titulo: "1.jpg",
link_thumb: "https://images.unsplash.com/photo-1502672260266-1c1ef2d93688?w=400&q=80"
},
{
link: "https://images.unsplash.com/photo-1502672260266-1c1ef2d93688?w=800&q=80",
titulo: "2.jpg",
link_thumb: "https://images.unsplash.com/photo-1502672260266-1c1ef2d93688?w=400&q=80"
},
{
link: "https://images.unsplash.com/photo-1560448204-e02f11c3d0e2?w=800&q=80",
titulo: "3.jpg",
link_thumb: "https://images.unsplash.com/photo-1560448204-e02f11c3d0e2?w=400&q=80"
},
{
link: "https://images.unsplash.com/photo-1556909114-f6e7ad7d3136?w=800&q=80",
titulo: "4.jpg",
link_thumb: "https://images.unsplash.com/photo-1556909114-f6e7ad7d3136?w=400&q=80"
},
{
link: "https://images.unsplash.com/photo-1560448204-e02f11c3d0e2?w=800&q=80",
titulo: "5.jpg",
link_thumb: "https://images.unsplash.com/photo-1560448204-e02f11c3d0e2?w=400&q=80"
}
],
videos: [],
tour360: [],
plantas: [],
valor_venda_visivel: true,
valor_locacao_visivel: false,
valor_temporada_visivel: false,
valor_condominio_visivel: false,
valor_iptu_visivel: false,
endereco_estado_visivel: true,
endereco_cidade_visivel: false,
endereco_bairro_visivel: false,
endereco_logradouro_visivel: false,
endereco_numero_visivel: false,
endereco_complemento_visivel: false
},
{
codigo: "FAKE_APARTAMENTOS_012",
titulo_anuncio: "Apartamento Centro - 1 dorm, 2 su\xEDtes, 75m\xB2, 2 vagas",
observacoes: "Apartamento com vista para o mar em Torres, a praia mais linda do RS.",
contrato: "Compra",
tipo: "Residencial",
subtipo: "Apartamento",
mobiliado: 0,
financiavel: 0,
exclusividade: false,
medida: "m\xB2",
endereco_estado: "Rio Grande do Sul",
endereco_cidade: "Torres",
data_cadastro: "2025-03-06 12:31:48",
data_update: "2024-11-11 04:56:14",
data_atualizacao: "2024-08-03 04:40:21",
updated_at: "2024-05-30 04:52:50",
dormitorios: 1,
suites: 2,
banheiros: 4,
garagens: 2,
area_total: 65,
area_privativa: 75,
andar: 8,
valor_venda: 18e4,
endereco_bairro: "Costa do Sol",
endereco_logradouro: "Rua Jo\xE3o Neves da Fontoura",
endereco_numero: "739",
endereco_cep: "95560-001",
endereco_complemento: "",
latitude: -29.332345988366157,
longitude: -49.723541979463505,
imovel_comodidades: "Lareira,Churrasqueira",
imagens: [
{
link: "https://images.unsplash.com/photo-1565183997392-2f6f122e5912?w=800&q=80",
titulo: "1.jpg",
link_thumb: "https://images.unsplash.com/photo-1565183997392-2f6f122e5912?w=400&q=80"
},
{
link: "https://images.unsplash.com/photo-1565183997392-2f6f122e5912?w=800&q=80",
titulo: "2.jpg",
link_thumb: "https://images.unsplash.com/photo-1565183997392-2f6f122e5912?w=400&q=80"
},
{
link: "https://images.unsplash.com/photo-1586023492125-27b2c045efd7?w=800&q=80",
titulo: "3.jpg",
link_thumb: "https://images.unsplash.com/photo-1586023492125-27b2c045efd7?w=400&q=80"
},
{
link: "https://images.unsplash.com/photo-1545324418-cc1a3fa10c00?w=800&q=80",
titulo: "4.jpg",
link_thumb: "https://images.unsplash.com/photo-1545324418-cc1a3fa10c00?w=400&q=80"
},
{
link: "https://images.unsplash.com/photo-1586023492125-27b2c045efd7?w=800&q=80",
titulo: "5.jpg",
link_thumb: "https://images.unsplash.com/photo-1586023492125-27b2c045efd7?w=400&q=80"
}
],
videos: [],
tour360: [],
plantas: [],
valor_venda_visivel: true,
valor_locacao_visivel: false,
valor_temporada_visivel: false,
valor_condominio_visivel: false,
valor_iptu_visivel: false,
endereco_estado_visivel: true,
endereco_cidade_visivel: false,
endereco_bairro_visivel: false,
endereco_logradouro_visivel: false,
endereco_numero_visivel: false,
endereco_complemento_visivel: false
},
{
codigo: "FAKE_APARTAMENTOS_013",
titulo_anuncio: "Apartamento Centro - 4 dorm, 1 su\xEDte, 75m\xB2, 3 vagas",
observacoes: "Apartamento com vista para o mar em Torres, a praia mais linda do RS.",
contrato: "Compra",
tipo: "Residencial",
subtipo: "Apartamento",
mobiliado: 0,
financiavel: 0,
exclusividade: false,
medida: "m\xB2",
endereco_estado: "Rio Grande do Sul",
endereco_cidade: "Torres",
data_cadastro: "2025-07-22 13:52:47",
data_update: "2025-06-23 21:20:58",
data_atualizacao: "2025-04-10 13:42:15",
updated_at: "2024-09-15 12:06:04",
dormitorios: 4,
suites: 1,
banheiros: 4,
garagens: 3,
area_total: 65,
area_privativa: 75,
andar: 5,
valor_venda: 48e4,
endereco_bairro: "S\xE3o Jo\xE3o",
endereco_logradouro: "Rua Bar\xE3o do Rio Branco",
endereco_numero: "533",
endereco_cep: "95560-050",
endereco_complemento: "",
latitude: -29.329652928711102,
longitude: -49.731744851993,
imovel_comodidades: "Churrasqueira,Hidromassagem,Garagem coberta,Sacada",
imagens: [
{
link: "https://images.unsplash.com/photo-1560448204-e02f11c3d0e2?w=800&q=80",
titulo: "1.jpg",
link_thumb: "https://images.unsplash.com/photo-1560448204-e02f11c3d0e2?w=400&q=80"
},
{
link: "https://images.unsplash.com/photo-1574362848149-11496d93a7c7?w=800&q=80",
titulo: "2.jpg",
link_thumb: "https://images.unsplash.com/photo-1574362848149-11496d93a7c7?w=400&q=80"
},
{
link: "https://images.unsplash.com/photo-1545324418-cc1a3fa10c00?w=800&q=80",
titulo: "3.jpg",
link_thumb: "https://images.unsplash.com/photo-1545324418-cc1a3fa10c00?w=400&q=80"
},
{
link: "https://images.unsplash.com/photo-1560185127-6ed189bf02f4?w=800&q=80",
titulo: "4.jpg",
link_thumb: "https://images.unsplash.com/photo-1560185127-6ed189bf02f4?w=400&q=80"
},
{
link: "https://images.unsplash.com/photo-1493663284031-b7e3aefcae8e?w=800&q=80",
titulo: "5.jpg",
link_thumb: "https://images.unsplash.com/photo-1493663284031-b7e3aefcae8e?w=400&q=80"
}
],
videos: [],
tour360: [],
plantas: [],
valor_venda_visivel: true,
valor_locacao_visivel: false,
valor_temporada_visivel: false,
valor_condominio_visivel: false,
valor_iptu_visivel: false,
endereco_estado_visivel: true,
endereco_cidade_visivel: false,
endereco_bairro_visivel: false,
endereco_logradouro_visivel: false,
endereco_numero_visivel: false,
endereco_complemento_visivel: false
},
{
codigo: "FAKE_APARTAMENTOS_014",
titulo_anuncio: "Apartamento Centro - 4 dorm, 1 su\xEDte, 115m\xB2, 1 vaga",
observacoes: "Im\xF3vel com excelente localiza\xE7\xE3o e acabamentos de primeira linha.",
contrato: "Compra",
tipo: "Residencial",
subtipo: "Apartamento",
mobiliado: 0,
financiavel: 0,
exclusividade: false,
medida: "m\xB2",
endereco_estado: "Rio Grande do Sul",
endereco_cidade: "Torres",
data_cadastro: "2025-07-18 15:22:24",
data_update: "2024-07-28 06:23:31",
data_atualizacao: "2025-07-20 15:03:26",
updated_at: "2025-04-23 06:27:09",
dormitorios: 4,
suites: 1,
banheiros: 3,
garagens: 1,
area_total: 85,
area_privativa: 115,
andar: 3,
valor_venda: 28e4,
endereco_bairro: "Jardim Ubatuba",
endereco_logradouro: "Rua Silva Jardim",
endereco_numero: "706",
endereco_cep: "95560-001",
endereco_complemento: "",
latitude: -29.341136485865903,
longitude: -49.72615856416803,
imovel_comodidades: "\xC1rea gourmet,Aquecimento,Jardim,Vista para o mar",
imagens: [
{
link: "https://images.unsplash.com/photo-1522708323590-d24dbb6b0267?w=800&q=80",
titulo: "1.jpg",
link_thumb: "https://images.unsplash.com/photo-1522708323590-d24dbb6b0267?w=400&q=80"
},
{
link: "https://images.unsplash.com/pho