API Rest PVI

API Rest PVI

A continuación se detalla cada uno de los recursos desarrollados para la implementación de una integración con PVI. Cada recurso contiene una descripción, sus parámetros de entrada y los datos de respuesta, más un ejemplo de respuesta del mismo.

 

Endpoint: https://www.pvi.cl/api/

 

 

 La URL anterior sólo podrá ser utilizada si se activa una llave de uso para el cliente (API KEY) que debe ser solicitada para cada integración. 

 

GET /client

Servicio para obtener datos generales de la inmobiliaria:

 

Datos de entrada:

Atributo

Tipo Dato

Requerido/Opcional

Descripción

Atributo

Tipo Dato

Requerido/Opcional

Descripción

key

String

Requerido

Key única inmobiliaria

 

Datos de salida 

Atributo

Tipo Dato

Descripción

Atributo

Tipo Dato

Descripción

hash

String

Key única inmobiliaria

name

String

Nombre corto inmobiliaria

hasPreEntrega

Int

Flag que indica si tiene activas las pre entregas

locale

String

Lenguaje inmobiliaria

rutInmobiliaria

String

Rut inmobiliaria

inmobiliariaName

String

Nombre completo inmobiliaria

apiPath

String

URL API

path

String

URL PVI

appPreEntregaInterna

Int

Flag que indica si tiene activas las pre entregas internas

appPreEntregaInmobiliaria

Int

Flag que indica si tiene activas las pre entregas inmobiliaria

appPreEntregaTercero

Int

Flag que indica si tiene activas las pre entregas a terceros

appEntregaPropietario

Int

Flag que indica si tiene activas las entregas a propietarios

appEntregaTercero

Int

Flag que indica si tiene activas las entregas a terceros

tieneCalificacionFalla

Int

Flag que indica si tiene activas las clasificaciones de falla

tienePruebaFuncionalidad

Int

Flag que indica si tiene activas las pruebas funcionales

appVersion

String

Versión App móvil

 

Ejemplo:

{     "hash": "cHZpX3ZlbnRhcw",     "name": "ventas",     "hasPreEntrega": "1",     "locale": "es_CL",     "rutInmobiliaria": "17031301-1",     "inmobiliariaName": "Inmobiliaria PLANOK",     "apiPath": "https://www.pvi.cl/api/v2/",     "path": "https://www.pvi.cl/ventas/img/logos_clientes/planoklogo.jpg",     "appPreEntregaInterna": "1",     "appPreEntregaInmobiliaria": "1",     "appPreEntregaTercero": "1",     "appEntregaPropietario": "1",     "appEntregaTercero": "1",     "tieneCalificacionFalla": "1",     "tienePruebaFuncionalidad": "1",     "appVersion": "1.2.3" }

 

 

POST /user/login

 

Servicio para realizar login en la api con credenciales de usuario, con este servicio se obtiene el token JWT para el consumo de los demás servicios

Datos de entrada:

Atributo

Tipo Dato

Requerido/Opcional

Descripción

Atributo

Tipo Dato

Requerido/Opcional

Descripción

usuario

String

Requerido

Nombre del usuario

password

String

Requerido

Contraseña del usuario

cliente_hash

String

Requerido

Hash del cliente entregada por el servicio GET /client

Datos de salida:

Atributo

Tipo Dato

Descripción

Atributo

Tipo Dato

Descripción

token

String

Token JWT generado para realizar las peticiones posteriores

userId

Int

Identificador único de usuario

userUsername

String

Nombre de usuario

userName

String

Nombre completo de usuario

userMail

String

Email usuario

 

Ejemplo:

{     "token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VySWQiOiIxIiwidXNlclVzZXJuYW1lIjoicGxhbm9rIiwidXNlck5hbWUiOiJQT0sgLSBFSkVDVVRJVk8gUExBTk9LIiwiY29tcGFueUhhc2giOiJjSFpwWDNabGJuUmhjdyIsInVzZXJIYXNoIjoiTjJNeU1qSm1Zakk1TWpka09ESTRZV1l5TW1ZMU9USXhNelJsT0Rrek1qUTRNRFl6TjJNd1pBIn0.rqGigqLeVm1ollRU_nBMHdHNDvWxXlo7OL6wcy8L3Zs",     "userId": "1",     "userUsername": "planok",     "userName": "POK - EJECUTIVO PLANOK",     "userMail": "gpena@planok.com" }

 

Se debe considerar que para todas las peticiones posteriores al login se debe enviar siempre el token JWT, de lo contrario la petición fallará por no autorización 

 

GET /proyectos

 

Servicio que entrega el listado de proyectos de la inmobiliaria

Datos de entrada: 

Atributo

Tipo Dato

Requerido/Opcional

Descripción

Atributo

Tipo Dato

Requerido/Opcional

Descripción

key

String

Requerido

Key única inmobiliaria

 Datos de salida:

Atributo

Tipo Dato

Descripción

Atributo

Tipo Dato

Descripción

id

Int

Identificador único de proyecto

nombre

String

Nombre proyecto

direccion

String

Dirección proyecto

comuna

String

Comuna proyecto

cantidadEtapas

Int

Cantidad de etapas del proyecto

fechaCreacion

Datetime

Fecha de creación proyecto

fechaEdicion

Datetime

Fecha de edición proyecto

 

 

Ejemplo:

{         "id": "47",         "nombre": "LOS ALERCES",         "direccion": "LA SERENA",         "comuna": "PROVIDENCIA",         "codigoProyecto": "LALERC",         "cantidadEtapas": "1",         "fechaCreacion": null,         "fechaEdicion": "2021-01-25 13:11:06" }

 

GET /etapas

 

Servicio que entrega el listado de etapas de un proyecto de la inmobiliaria

Datos de entrada:

Atributo

Tipo Dato

Requerido/Opcional

Descripción

Atributo

Tipo Dato

Requerido/Opcional

Descripción

key

String

Requerido

Key única inmobiliaria

idProyecto

Int

Requerido

Identificados único proyecto

 

  Datos de salida:

Atributo

Tipo Dato

Descripción

Atributo

Tipo Dato

Descripción

id

Int

Identificador único etapa

nombre

String

Nombre etapa

cantidadPropiedades

Int

Número de productos/propiedades etapa

fechaCreacion

Datetime

Fecha creación etapa

fechaEdicion

Datetime

Fecha modificación etapa

fechaRecepcionMunicipal

Date

Fecha recepción municipal etapa

 

 

Ejemplo:

{          "id": "34",          "nombre": "ETAPA A",          "cantidadPropiedades": "6",          "fechaCreacion": null,          "fechaEdicion": "2021-01-06 17:28:33",          "fechaRecepcionMunicipal": "2012-10-01"  }

 

/GET productos

Servicio que entrega el listado de productos/propiedades de la inmobiliaria según filtro enviado

Datos de entrada:

Atributo

Tipo Dato

Requerido/Opcional

Descripción

Atributo

Tipo Dato

Requerido/Opcional

Descripción

key

String

Requerido

Key única inmobiliaria

idProyecto

 

Opcional

Identificador único proyecto

idEtapa

 

Opcional

Identificador único etapa

idPropiedad

 

Opcional

Identificador único producto/propiedad

idPropietario

 

Opcional

Identificador único propietario

estado

 

Opcional

Estado entrega (Entregada, NoEntregada)

 

 Datos de salida:

Atributo

Tipo Dato

Descripción

Atributo

Tipo Dato

Descripción

id

Int

Identificador único producto/propiedad

idPropietario

Int

Identificador único propietario

nombre

String

Nombre producto/propiedad

tipoVivienda

String

Tipo de producto/propiedad

estacionamiento

String

Estacionamientos asociados

bodega

String

Bodegas asociadas

fechaCreacion

Datetime

Fecha de creación

fechaEdicion

Datetime

Fecha de edición

fechaEntrega

Date

Fecha de entrega

fechaConservadorBienesRaices

Date

Fecha de inscripción en conservador de bienes raíces

valorVentaUF

Float

Valor de venta producto/propiedad (Sólo si está habilitada configuración)

documentoActaEntrega

String

URL documento acta de entrega

 

Ejemplo:

{         "id": "1494",         "idPropietario": "1870",         "nombre": "LOA - DEPTO. 201",         "tipoVivienda": "DEPARTAMENTO",         "estacionamiento": "",         "bodega": "",         "fechaCreacion": null,         "fechaEdicion": null,         "fechaEntrega": "0000-00-00",         "fechaConservadorBienesRaices": "2012-10-01",         "valorVentaUF": null,         "documentoActaEntrega": ""  }

 

/GET propietarios

Servicio que entrega el listado de propietarios de la inmobiliaria según filtro enviado

Atributo

Tipo Dato

Requerido/Opcional

Descripción

Atributo

Tipo Dato

Requerido/Opcional

Descripción

key

String

Requerido

Key única inmobiliaria

idProyecto

Int

Opcional

Identificador único proyecto

idPropietario

Int

Opcional

Identificador único propietario

idEtapa

Int

Opcional

Identificador único etapa

idPropiedad

Int

Opcional

Identificador único producto/propiedad

 Datos de salida:

Atributo

Tipo Dato

Descripción

Atributo

Tipo Dato

Descripción

id

Int

Identificador único de propietario

nombre

String

Nombre completo

rut

String

Rut

celular

String

Número celular

fonoCasa

String

Número casa

fonoOficina1

String

Número oficina principal

fonoOficina2

String

Número oficina secundario

email

String

Email

fechaCreacion

Datetime

Fecha de creación

fechaEdicion

Datetime

Fecha de edición

 

Ejemplo:

{         "id": "31",         "nombre": "SILVANO EVANGELISTA",         "rut": "1",         "celular": "-",         "fonoCasa": "2725483",         "fonoOficina1": "-",         "fonoOficina2": "-",         "email": "notificaciones_pvi@planok.com",         "fechaCreacion": null,         "fechaEdicion": "2020-05-15 20:05:19"  }

 

/GET solicitudes

Servicio que entrega el listado de solicitudes de la inmobiliaria según filtro enviado

Datos de entrada: 

Atributo

Tipo Dato

Requerido/Opcional

Descripción

Atributo

Tipo Dato

Requerido/Opcional

Descripción

key

String

Requerido

Key única inmobiliaria

idSoliciud

 

Opcional

Identificador único solicitud

idPropietario

 

Opcional

Identificador único propietario

idEtapa

 

Opcional

Identificador único etapa

idPropiedad

 

Opcional

Identificador único producto/propiedad

folio

 

Opcional

Folio solicitud

fechaEdicionInicio

 

Opcional

Fecha inicio de edición

fechaEdicionFin

 

Opcional

Fecha fin de edición

estado

 

Opcional

Estado solicitud (Abierto, Cerrado o En Curso)

  Datos de salida:

Atributo

Tipo Dato

Descripción

Atributo

Tipo Dato

Descripción

id

Id

Identificador único solicitud

folio

String

Folio solicitud

idProducto

Id

Identificador único de producto/propiedad

medioIngreso

String

Medio de ingreso solicitud

tipoMedioIngreso

String

Categoría medio de ingreso

estado

String

Estado solicitud

fechaSolicitud

Date

Fecha real solicitud

fechaCierre

Date

Fecha real de cierre solicitud

fechaCreacion

Datetime

Fecha de creación

fechaEdicion

Datetime

Fecha de edición

 

Ejemplo:

{         "id": "632",         "folio": "486-000011",         "idProducto": "3300",         "medioIngreso": "TELEFONO",         "tipoMedioIngreso": "POSTVENTA",         "estado": "ABIERTO",         "fechaSolicitud": "2017-06-22",         "fechaCierre": null,         "fechaCreacion": null,         "fechaEdicion": null  }

 

/POST solicitudes

Servicio que permite crear una nueva solicitud de posventa

Datos de entrada:

Atributo

Tipo Dato

Requerido/Opcional

Descripción

Atributo

Tipo Dato

Requerido/Opcional

Descripción

key

String

Requerido

Key única inmobiliaria

folioExterno

String

Requerido

Folio o correlativo externo referente a la solicitud

idProducto

Int

Requerido

Identificador único del producto/propiedad

medioIngreso

String

Requerido

Identificador único del Medio Ingreso

fechaSolicitud

Date

Requerido

Fecha de la solicitud

 

 Datos de salida:

Atributo

Tipo Dato

Descripción

Atributo

Tipo Dato

Descripción

id

Int

Identificador único de solicitud creada

folio

String

Folio de la solicitud creada

fechaCreacion

Datetime

Fecha de creación

 

Ejemplo:

"SUCCESS": {         "id": "1433",         "folio": "486-000067",         "fechaCreacion": "2021-02-01 19:13:14"  }