Propiedades
Alta y gestión de alojamientos: el vínculo entre los listings de tu PMS, el código de establecimiento SES y los datos del contrato.
El objeto propiedad
Objeto
{
"id": "b8f3a2c1-…",
"nickname": "Apartamento Sol 3B",
"listingId": "38291",
"channelListingIds": ["airbnb-99812", "booking-4471"],
"address": { "street": "Calle del Sol 3", "city": "Tarifa", "province": "Cádiz", "postalCode": "11380" },
"touristLicense": "VFT/CA/12345",
"ses": { "codigoEstablecimiento": "0000012345", "tipoPago": "PLATF" },
"owner": { "legalName": "Gestora Costa SL", "nif": "B12345678", "fiscalAddress": "…" },
"active": true,
"createdAt": "2026-07-01T09:00:00.000Z",
"updatedAt": "2026-07-19T10:00:00.000Z"
}Los check-ins referencian la propiedad por listingId (o cualquiera de sus channelListingIds — útil cuando Airbnb/Booking envían la reserva con el id del clon de canal en vez del maestro).
Crear una propiedad
POST
/propertiesBody
| Campo | Tipo | Descripción |
|---|---|---|
nicknamerequerido | string | Nombre interno del alojamiento. |
listingIdrequerido | string | Id del listing en tu PMS o sistema. |
channelListingIds | string[] | Ids de clones de canal que resuelven a esta propiedad. |
address | objeto | { street, city, province, postalCode }. Aparece en el contrato. |
touristLicense | string | Nº de licencia turística (p. ej. VFT/CA/12345). |
ses.codigoEstablecimiento | string | Código de establecimiento en SES Hospedajes. Sin él, el parte no puede enviarse. |
ses.tipoPago | string | Código del catálogo TIPO_PAGO de SES (p. ej. PLATF). |
owner | objeto | { legalName, nif, fiscalAddress } del arrendador — se muestra en el contrato. |
id | string | Si se envía y existe, la llamada actualiza en vez de crear. |
curl
curl -X POST https://api.kinapi.es/api/v1/properties \
-H "ocp-apim-subscription-key: TU_API_KEY" \
-H "content-type: application/json" \
-d '{
"nickname": "Apartamento Sol 3B",
"listingId": "38291",
"ses": { "codigoEstablecimiento": "0000012345" },
"owner": { "legalName": "Gestora Costa SL", "nif": "B12345678" }
}'Listar propiedades
GET
/propertiesQuery
| Campo | Tipo | Descripción |
|---|---|---|
includeInactive | boolean | true para incluir también las dadas de baja. |
curl
curl https://api.kinapi.es/api/v1/properties \ -H "ocp-apim-subscription-key: TU_API_KEY"
Consultar una propiedad
GET
/properties/{propertyId}Devuelve la ficha completa, con los datos del propietario vinculado.
Actualizar una propiedad
PATCH
/properties/{propertyId}Actualización parcial: envía solo los campos que cambian. El objeto ses se fusiona con el existente y el owner inline actualiza el propietario vinculado.
curl
curl -X PATCH https://api.kinapi.es/api/v1/properties/b8f3a2c1-… \
-H "ocp-apim-subscription-key: TU_API_KEY" \
-H "content-type: application/json" \
-d '{ "ses": { "codigoEstablecimiento": "0000098765" } }'Dar de baja una propiedad
DELETE
/properties/{propertyId}Baja lógica: la propiedad deja de listarse y de aceptar check-ins nuevos, pero su histórico (reservas, contratos, partes SES) se conserva íntegro para auditoría.