Integração DWV (1.0.1)

Introdução

Esta documentação descreve o funcionamento da API que a DWV desenvolveu para os integradores externos. Através da nossa API, os sistemas externos podem interagir com a nossa base de imóveis e demais informações disponibilizadas pela DWV.

O atual uso da API é para integração de sites e de sistemas imobiliários (CRMs), e o escopo do uso deve sempre respeitar os termos do contrato estabelecidos entre a DWV e a sua empresa.

Estrutura DWV

Nesta seção será explanado sobre a estrutura que a DWV utiliza para organizar os imóveis que se encontram em seu banco. É altamente recomendado ler essa seção, para que se possa utilizar a API sem complicações.

Propriedades

As propriedades se referem a unidades e terceiros que as imobiliárias realizaram a seleção para a integração no seu site ou sistema imobiliário (CRMs).

Lançamentos

Produto da construtora(empreendimento).

Unidades

Frações de um lançamento(Apartamentos,Terrenos,Salas comerciais entre outros), possuem informações do empreendimento e próprias como metragens, valor e condições de pagamento.

Terceiros

Imóveis usados que entraram como forma de pagamento para a construtora, também conhecidos como dação.

Authentication

Todas as rotas dessa API se utilizam da autenticação do tipo Bearer, sendo que esse tipo de autenticação necessitam de um token. Estes token são fornecidos pelas imobiliarias, onde para as mesmas conseguirem esse token, devem acessar o sistema de Integração DWV e gerar o token para o sistema de integração desejado.

Para os que ainda não estão familiarizados com este tipo de autenticação, você deve inserir no header de sua requisição um parametro chamado Authorization com o seu valor Bearer TOKEN_IMOBILIARIA. Um exemplo de como ficaria uma requi sição pode ser visualizada abaixo.

curl -H "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpbW9iaWxpYXJpYV9pZCI6IjEiLCJpbnRlZ3JhdGlvbl9pZCI6MSwiaWF0IjoxNjA3MzY3ODA2fQ.YFqnvt0Xg7MopUS-PpZYO53HF54ru6G22RshZiGjr_E" \
"https://sandbox.dwvapp.com.br"

Rate Limit

As rotas dessa API possuem o limite de 100 requests por minuto, caso este limite seja excedido, as requisições subsequentes no período de 60 segundos irão retornar status code 429.

Propriedades

Propriedades

Listar Propriedades

Lista todas as propriedades selecionadas para integração de uma imobiliaria em especifico, sendo esta definida pelo token de autenticação utilizado no header. Para aperfeiçoar os tipos de imóveis que deseja exibir, tem-se a possibilidade de aplicar alguns filtros."

Authorizations:
realEstateAgencyAuth
query Parameters
limit
integer
Default: 20

Define o máximo de propriedades que serão exibidos em cada página

page
integer
Default: 1

Seleciona a pagina para listar os items.

search
string
Example: search=Propriedade 1

Traz propriedades onde algum dos campos foi encontrado no text search. Você pode pesquisar por propriedades também baseado por informações da construtora e empreendimento.

address
string
Example: address=Rua 248, 322

Filtrar imóveis por endereço informado

city
string
Example: city=Itapema

Filtrar imóveis por uma cidade em especifíco

state
string
Example: state=SC

Filtrar imóveis por um estado em especifíco

bedrooms
string
Example: bedrooms=1,3+

Filtrar imóveis pela quantidade de quartos informado. Pode-se passar mais de um valor nesta query, sendo que os mesmos tem que estar separados entre ",".

Esta query permite utilizar o operador +, sendo que este operador pode ser traduzido como >=.

unit_suites
string
Example: unit_suites=1,3+

Filtrar imóveis pela quantidade de suites informado. Pode-se passar mais de um valor nesta query, sendo que os mesmos tem que estar separados entre ",".

Esta query permite utilizar o operador +, sendo que este operador pode ser traduzido como >=.

unit_parking_spaces
string
Example: unit_parking_spaces=1,3+

Filtrar imóveis pela quantidade de vagas de garagem disponíveis no mesmo. Pode-se passar mais de um valor nesta query, sendo que os mesmos tem que estar separados entre ",".

Esta query permite utilizar o operador +, sendo que este operador pode ser traduzido como >=.

property_condition
string
Enum: "new" "used"

Filtrar imóveis por condiçöes em que os mesmos se encontram.

types
string
Enum: "apartment" "comercialRoom" "garden" "penthouse" "differentiated" "showroom" "decorated" "roof" "furnished" "duplex" "smallFarm" "house" "hotel" "land" "warehouse"

Filtrar imóveis por um tipo específico.

last_updates
string
Example: last_updates=2020-10-25,2020-10-28

Filtrar imóveis por um range de data definido. Sendo que estas datas devem estar no seguinte formato: 22/10/2020

status
string
Enum: "active" "inactive" "auto_inactive"

Filtrar imóveis selecionados pela imobiliária através do status em que se encontram para serem integrados Obs: (auto_inactive é um status que o próprio sistema define quando o imóvel se encontra vendido ou inativado)

deleted
string
Enum: true false

Filtrar imóveis que haviam sido selecionados pela imobiliária anteriormente, mas a mesma acabou deletando para que assim não fosse integrado no sistema.

construction_stage
string
Enum: "used" "under construction" "new"

Indica o estágio de construção da propriedade.

rent
stirng
Enum: true false

Informa quando o imóvel é aluguel.

Responses

Response samples

Content type
application/json
{}

Exibir detalhes de uma propriedade

Exibe todos os detalhes de um propriedade

Authorizations:
realEstateAgencyAuth
path Parameters
propertyId
required
integer

ID da propriedade que você quer obter mais detalhes

Responses

Response samples

Content type
application/json
{}

Condições das Propriedades

Lista todas as condições de imóveis existentes que podem ser utilizados no filtro property_condition que se encontra na rota que busca as propriedades selecionadas para integração de uma certa imobiliaria

Authorizations:
realEstateAgencyAuth

Responses

Response samples

Content type
application/json
[
  • {
    },
  • {
    }
]

Tipos de Propriedades

Lista todos os tipos existentes de imóveis, os quais podem ser utilizados no filtro types na rota que busca as propriedades selecionadas por uma imobiliaria para integração

Authorizations:
realEstateAgencyAuth

Responses

Response samples

Content type
application/json
[
  • {
    },
  • {
    }
]

Cidades e Bairros Integrados

Lista todas as cidades e bairros que a imobiliária possui imóveis integrados.

Authorizations:
realEstateAgencyAuth
query Parameters
limit
integer
Default: 20

Define o máximo de items que serão exibidos em cada página

page
integer
Default: 1

Seleciona a pagina para listar os items.

Responses

Response samples

Content type
application/json
{
  • "total": 1,
  • "perPage": 20,
  • "page": 1,
  • "lastPage": 1,
  • "data": [
    ]
}

Propriedade

id
integer

ID de integração do imóvel

title
string

Título de anúncio do imóvel

description
string

Descrição do imóvel para utilizar no anúncio

advertisement_title
string
Deprecated

Título de anúncio do imóvel

advertisement_description
string
Deprecated

Descrição do imóvel para utilizar no anúncio

status
string
Enum: "active" "inactive" "auto_inactive"

Informa o estado de integração do imóvel (A imobiliaria pode ativar ou desativar a integração do imóvel, mas quando o status for auto_inactive significa que o imóvel no momento não se encontra disponivel para venda no sistema e por isso deve-se ignorar integração deste imóvel)

construction_stage
string
Enum: "used" "under_construction" "new"

Estágio da obra

rent
string
Enum: true false

Informa quando o imóvel é aluguel.

deleted
boolean

Informa se o imóvel integrado pela imobiliária, foi deletada pela mesma da integração.

address_display_type
string

Tipo de exibição que a imobiliária escolheu para exibir os endereços das propriedades

object or null

Informações da unidade selecionada para integração

object or null

Informações do empreendimento

object or null

Informações do terceiro selecionado para integração

object

Informações da Construtora

last_updated_at
string

Data da última atualização

{
  • "id": 0,
  • "title": "string",
  • "description": "string",
  • "advertisement_title": "string",
  • "advertisement_description": "string",
  • "status": "active",
  • "construction_stage": "used",
  • "rent": true,
  • "deleted": true,
  • "address_display_type": "string",
  • "unit": {
    },
  • "building": {
    },
  • "third_party_property": {
    },
  • "construction_company": {
    },
  • "last_updated_at": "string"
}