POST /cabaprop/connect
Este servicio conecta una cuenta Mapaprop con Cabaprop. A partir de la apiKey del cliente, autentica contra la API de integración de Cabaprop, almacena el token resultante para futuras publicaciones y notifica al cliente (Slack interno + email) que su cuenta quedó conectada.
| Información del recurso | |
|---|---|
| Autenticación | Requerida (token de servicio) |
| Método HTTP | POST |
| Respuesta | JSON |
| Versión | 1 |
Resource URL
https://api-cabaprop.mapaprop.com/property-api/cabaprop/connect
Headers
| Header | Requerido | Descripción |
|---|---|---|
authorization | sí | Token estático de servicio de Cabaprop. Si no coincide, la solicitud es rechazada. |
Content-Type | sí | application/json |
Parameters (body request)
El cuerpo es un JSON con los siguientes campos:
| Key | Type | Required | Description |
|---|---|---|---|
custId | number | sí | Identificador del cliente en Mapaprop. |
apiKey | string | sí | API key del cliente en Cabaprop. Se envía como header x-api-key a la API de Cabaprop para autenticar. |
brand | string | sí | Marca/inmobiliaria asociada a la conexión. Forma parte del nombre de la app almacenada (cabaprop___{brand}). |
name | string | sí | Nombre del cliente. Se usa en las notificaciones de Slack y email. |
email | string | sí | Email del cliente. Destino del email de confirmación de conexión. |
Sample code
POST /property-api/cabaprop/connect
Host: api-cabaprop.mapaprop.com
Content-Type: application/json
authorization: {access_token}
{
"custId": 1,
"apiKey": "tu-api-key-de-cabaprop",
"brand": "Mapaprop",
"name": "Mapaprop INC",
"email": "info@mapaprop.com"
}
Response
En caso de éxito devuelve un 200 con el cuerpo de respuesta de la API de autenticación de Cabaprop, que incluye el token de la integración.
{
"token": "{access_token}"
}
Como efecto colateral de una conexión exitosa, el servicio:
- Almacena el token y los datos de la conexión asociados al
custIdy a la marca. - Envía una notificación interna a Slack (canal de soporte).
- Envía un email de confirmación al
emailindicado.
Errores
| Status | Cuerpo | Causa |
|---|---|---|
| 500 | {"message":"Unauthorized"} | El header authorization no coincide con el token de servicio de Cabaprop. |
| 500 | "Error Post cabaprop intration auth : {error}" | Falló la autenticación contra la API de integración de Cabaprop (por ejemplo, apiKey inválida). |
| 500 | "Error DynamoDB put Item : {error}" | El token se obtuvo pero no se pudo almacenar la conexión. |
| 500 | "Error to send notification to Slack/Email : {error}" | La conexión se almacenó pero falló el envío de la notificación a Slack o del email. |