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/properties
Body
CampoTipoDescripción
nicknamerequeridostringNombre interno del alojamiento.
listingIdrequeridostringId del listing en tu PMS o sistema.
channelListingIdsstring[]Ids de clones de canal que resuelven a esta propiedad.
addressobjeto{ street, city, province, postalCode }. Aparece en el contrato.
touristLicensestringNº de licencia turística (p. ej. VFT/CA/12345).
ses.codigoEstablecimientostringCódigo de establecimiento en SES Hospedajes. Sin él, el parte no puede enviarse.
ses.tipoPagostringCódigo del catálogo TIPO_PAGO de SES (p. ej. PLATF).
ownerobjeto{ legalName, nif, fiscalAddress } del arrendador — se muestra en el contrato.
idstringSi 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/properties
Query
CampoTipoDescripción
includeInactivebooleantrue 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.