POST /property/post
Este endpoint está EN PAUSA. No lo implementes todavía: el comportamiento descripto acá (creación en Mapaprop, procesamiento de imágenes, rollback) está en revisión y puede cambiar.
Los campos del objeto propiedad ya no se documentan acá: viven en El objeto JSON de la propiedad, que es la referencia vigente. Y el modelo conceptual, en El modelo de propiedad.
General Rules
A traves de un json estructurado, se puede importar una propiedad a Mapapaprop
- Debe tener una cuenta Mapaprop.
- Debe tener al menos 1 imagen
- Las imagenes deben estar en una url
- Existen ciertos campos obligatorios
- Ante ciertas fallas, la importacion se retrotrae.
- Sobre las imagenes
- Si es mas de una imagen, se van procesando en lista ordenada.
- Si al menos una imagen logra ser obtenida, la importacion se procesa.
- Si fallan todas, la importacion se cancela.
- La primer imagen del listado siempre sera la
mainImage
- se puede establecer si la prop se publica a traves del campo
published = true - Ud debe conocer el
branchId. ElcustomerIdse deriva automaticamente del token de autenticacion (el valor enviado en el body se ignora por seguridad).
This service will import property json to Mapaprop
El procesamiento es asincronico. El endpoint responde de inmediato con un executionArn que identifica la ejecucion. La creacion de la propiedad, la descarga/procesamiento de imagenes y la indexacion ocurren en segundo plano. El estado de avance se consulta con GET /property/get/status/machine/{executionArn}.
| Resource information | |
|---|---|
| Authentication | Required (JWT) |
| HTTP Method | POST |
| Response | JSON |
| Version | 1 |
Resource URL
https://property-api.mapaprop.com/property/post
Sample code
POST /property/post
Host: property-api.mapaprop.com
Content-Type: application/json
Authorization: Bearer {access_token}
El cuerpo de la peticion es el JSON de la propiedad (ver "Complete JSON model"). El customerId se deriva del token de autenticacion: si se incluye en el body, se ignora y se reemplaza por el del token.
El objeto que se manda
Los campos obligatorios, el modelo JSON completo y los internos de location, images y
attributes están en El objeto JSON de la propiedad.
Se documentan una sola vez, ahí.
Response
La importacion es asincronica. El endpoint inicia el procesamiento en segundo plano y responde de inmediato con el identificador de la ejecucion (executionArn), que luego se usa para consultar el estado en GET /property/get/status/machine/{executionArn}.
| Field | Type | Description |
|---|---|---|
message | string | Confirmacion de que el procesamiento comenzo (Property creation started). |
executionArn | string | Identificador de la ejecucion para consultar el estado del avance. |
Sample response
{
"message": "Property creation started",
"executionArn": "arn:aws:states:us-east-1:000000000000:execution:PropertyWorkflow:Property-1717500000000"
}
Errores
| Status | Cuerpo | Causa |
|---|---|---|
| 401 | { "error": "Unauthorized: missing auth context" } | El token no resolvio un customerId valido. |
| 401 | { "error": "Unauthorized: missing Bearer token" } | Falta el header Authorization: Bearer {access_token}. |
| 500 | { "error": "..." } | Error al iniciar el procesamiento. |
Los errores de validacion de campos obligatorios (Missing required field: {campo}, Invalid type for {campo}: expected {tipo}) ocurren durante el procesamiento asincronico y se reportan al consultar el estado de la ejecucion.