8. Integración de sólo lectura
4. Estructura para emprendimientos
6. ¿Cómo leer el XML de resultado?
En esta guía intentaremos mostrar de forma sencilla la manera de asociar avisos a una determinada integración de solo lectura o ReadOnly. Además, explicaremos cómo configurar correctamente los callbacks para recibir notificaciones sobre las distintas acciones que se pueden realizar con los avisos en el portal.
Para la guía utilizaremos dos interfaces pertenecientes a un integrador, una de lectura (LEC) y otra de lectura y escritura (LES). La de lectura y escritura ya posee avisos creados y asociados para algunas de sus empresas asociadas.
Al consultar las inmobiliarias con la interfaz de LEC se obtiene:
{
“number”: 0,
“size”: 4,
“total”: 4,
“content”: [
{
“codigoInmobiliaria”: “Prueba_guia_2_e1”,
“idNavplat”: 30345987,
“nombre”: “Inmobiliaria de Prueba Prueba_guia_2_e1”,
“habilitadoDesde”: 1575547036000
},
{
“codigoInmobiliaria”: “Prueba_guia_2_e2”,
“idNavplat”: 30345989,
“nombre”: “Inmobiliaria de Prueba Prueba_guia_2_e2”,
“habilitadoDesde”: 1575547037000
},
{
“codigoInmobiliaria”: “Prueba_guia_2_e3”,
“idNavplat”: 30345991,
“nombre”: “Inmobiliaria de Prueba Prueba_guia_2_e3”,
“habilitadoDesde”: 1575547039000
},
{
“codigoInmobiliaria”: “Prueba_guia_2_e4”,
“idNavplat”: 30345993,
“nombre”: “Inmobiliaria de Prueba Prueba_guia_2_e4”,
“habilitadoDesde”: 1575547040000
}
]
}
Al realizar la misma acción con la interfaz de LES, se obtiene el mismo resultado.
A continuación, buscaremos el resumen de los avisos de una inmobiliaria específica. Como ejemplo, utilizaremos la empresa “Prueba_guia_2_e2”, que tiene dos avisos.
Al consultar por el resumen de los avisos de la inmobiliaria con la interfaz de LES se obtiene:
{
“number”: 0,
“size”: 2,
“total”: 2,
“content”: [
{
“idAvisoNavplat”: 45491025,
“codigoAviso”: “15A2D2C2C069BFB3A318FB841FD8FC25_e2_a1”,
“idDesarrolloNavplat”: null,
“codigoDesarrollo”: null,
“tipoDeAviso”: “AVISO_CLASIFICADO”,
“titulo”: “Prueba_guia_2 – Casa En Venta”,
“fechaModificado”: “2019-12-05 06:57:18.0”,
“fechaModificacion”: 1575547038000,
“publicacion”: “SIMPLE”,
“claveInterna”: null,
“dataModificacao”: 1575547038000,
“publicação”: “SIMPLE”
},
{
“idAvisoNavplat”: 45491027,
“codigoAviso”: “15A2D2C2C069BFB3A318FB841FD8FC25_e2_a3”,
“idDesarrolloNavplat”: null,
“codigoDesarrollo”: null,
“tipoDeAviso”: “AVISO_CLASIFICADO”,
“titulo”: “Prueba_guia_2 – Edificio En Venta”,
“fechaModificado”: “2019-12-05 06:57:18.0”,
“fechaModificacion”: 1575547038000,
“publicacion”: “SIMPLE”,
“claveInterna”: null,
“dataModificacao”: 1575547038000,
“publicação”: “SIMPLE”
}
]
}
Al realizar la misma consulta con la interfaz de LEC, se obtiene el mismo resultado, pero con los códigos de avisos distintos:
{
“number”: 0,
“size”: 2,
“total”: 2,
“content”: [
{
“idAvisoNavplat”: 45491025,
“codigoAviso”: null,
“idDesarrolloNavplat”: null,
“codigoDesarrollo”: null,
“tipoDeAviso”: “AVISO_CLASIFICADO”,
“titulo”: “Prueba_guia_2 – Casa En Venta”,
“fechaModificado”: “2019-12-05 06:57:18.0”,
“fechaModificacion”: 1575547038000,
“publicacion”: “SIMPLE”,
“claveInterna”: null,
“dataModificacao”: 1575547038000,
“publicação”: “SIMPLE”
},
{
“idAvisoNavplat”: 45491027,
“codigoAviso”: null,
“idDesarrolloNavplat”: null,
“codigoDesarrollo”: null,
“tipoDeAviso”: “AVISO_CLASIFICADO”,
“titulo”: “Prueba_guia_2 – Edificio En Venta”,
“fechaModificado”: “2019-12-05 06:57:18.0”,
“fechaModificacion”: 1575547038000,
“publicacion”: “SIMPLE”,
“claveInterna”: null,
“dataModificacao”: 1575547038000,
“publicação”: “SIMPLE”
}
]
}
<aside> ⚠️
Importante: aquí comienzan las diferencias entre las interfaces. Aunque ambas tienen asociadas las mismas empresas, la interfaz de LEC no tiene sus propios avisos asociados. Esto significa que no recibirá notificaciones sobre acciones realizadas en los avisos o consultas sobre ellos en el portal. Para solucionar esto y asociar el aviso a la interfaz, debemos utilizar el endpoint:
PUT /v1/inmobiliarias/{codigoInmobiliaria}/avisos/{codigoAviso}/asociar/{idAviso}
</aside>
Al realizar esta acción también dejamos asociado el aviso a la interfaz de LEC.
Como ejemplo utilizaremos la inmobiliaria “Prueba_Guia_2_e2” y asociaremos el aviso con idAviso = 45491025 con el código “CodigoPersonalizadoGuia”.
La URL solicitada es: http://api-zp.sandbox.open.navent.com/v1/inmobiliarias/Prueba_guia_2_e2/avisos/CodigoPersonalizadoGuia/asociar/45491025?access_token=*******
Y la respuesta:
{
“code”: “ok”,
“respuesta”: “El aviso con id 45491025 de la inmobiliaria Prueba_guia_2_e2 se asocio al codigoAviso CodigoPersonalizadoGuia.”,
“resposta”: “El aviso con id 45491025 de la inmobiliaria Prueba_guia_2_e2 se asocio al codigoAviso CodigoPersonalizadoGuia.”
}
El aviso ya quedó asociado y con el código personalizado por el integrador. Al volver a consultar el resumen de avisos, ahora obtenemos la siguiente respuesta:
{
“number”: 0,
“size”: 2,
“total”: 2,
“content”: [
{
“idAvisoNavplat”: 45491025,
“codigoAviso”: “CodigoPersonalizadoGuia”,
“idDesarrolloNavplat”: null,
“codigoDesarrollo”: null,
“tipoDeAviso”: “AVISO_CLASIFICADO”,
“titulo”: “Prueba_guia_2 – Casa En Venta”,
“fechaModificado”: “2019-12-05 06:57:18.0”,
“fechaModificacion”: 1575547038000,
“publicacion”: “SIMPLE”,
“claveInterna”: null,
“dataModificacao”: 1575547038000,
“publicação”: “SIMPLE”
},
{
“idAvisoNavplat”: 45491027,
“codigoAviso”: null,
“idDesarrolloNavplat”: null,
“codigoDesarrollo”: null,
“tipoDeAviso”: “AVISO_CLASIFICADO”,
“titulo”: “Prueba_guia_2 – Edificio En Venta”,
“fechaModificado”: “2019-12-05 06:57:18.0”,
“fechaModificacion”: 1575547038000,
“publicacion”: “SIMPLE”,
“claveInterna”: null,
“dataModificacao”: 1575547038000,
“publicação”: “SIMPLE”
}
]
}
La interfaz de LEC difiere de la de LES en que no permite realizar acciones que modifiquen o cambien el estado de los avisos. Por el contrario, la interfaz de LES sí posee esta capacidad, y cualquier cambio realizado a través de ella se verá reflejado en la interfaz de LEC. Si se intenta ejecutar una acción indebida con la interfaz de LEC, se generará un error con el mensaje correspondiente:
{
“code”: “error_inesperado”,
“message”: “Access is denied”
}
Es importante tener en cuenta el endpoint "Resumen de Desarrollos", que proporciona información sobre todos los desarrollos inmobiliarios en línea y sus unidades:
GET /v1/inmobiliarias/{codigoInmobiliaria}/desarrollos/online/resumen
Una vez asociado el aviso podemos proceder a configurar los callbacks. Esta funcionalidad permite recibir notificaciones sobre distintas acciones que son realizadas sobre los avisos. Por ejemplo, una consulta por el teen el portal.
Para configurarlo se debe utilizar el endpoint:
PUT /v1/configuracion/callbacks
Este endpoint recibe un objeto con la siguiente información:
Para configurar callbacks para la interfaz de LEC se utiliza la siguiente información: