---
title: "Overview"
description: "Property Management is the system of record for every listed property. Every listing, every match, and every valuation reads from this data."
url: "https://real-estate-agency.apim.eu/apis/property-management/docs/overview"
image: "https://real-estate-agency.apim.eu/_og/d/c_Ocean.takumi,title_Overview,description_~UHJvcGVydHkgTWFuYWdlbWVudCBpcyB0aGUgc3lzdGVtIG9mIHJlY29yZCBmb3IgZXZlcnkgbGlzdGVkIHByb3BlcnR5LiBFdmVyeSBsaXN0aW5nLCBldmVyeSBtYXRjaCwgYW5kIGV2ZXJ5IHZhbHVhdGlvbiByZWFkcyBmcm9tIHRoaXMgZGF0YS4,props_eyJ0aGVtZSI6eyJtb2RlIjoiZGFyayIsImNvbG9ycyI6eyJwcmltYXJ5IjoiI0IwMjZGRiJ9fX0,p_Ii9hcGlzL3Byb3BlcnR5LW1hbmFnZW1lbnQvZG9jcy9vdmVydmlldyI,s_dEOdU1mc2Mjg05L9.png"
---

# Overview

Property Management is the system of record for every listed property. Every listing, every match, and every valuation reads from this data.

## [Data model](#data-model)

A property combines master data (type, title, address), key figures (areas, rooms, year built), commercial details (purchase price or rent, commission), and energy-certificate figures. Media - photos, floor plans, documents - attach to the property, not to a listing, and are therefore available to every document generated later.

## [Lifecycle](#lifecycle)

`draft` → `active` → `reserved` → `sold` or `rented` → `archived`

Archived properties remain readable. There's no true deletion, because settlements and disclosures reference them.

## [Property data feed](#property-data-feed)

`POST /import/feed` accepts XML or a ZIP. In `merge` mode, only the properties in the file are created or updated; `replace` additionally archives anything not in the file. For a nightly sync from an existing agency system, `replace` is the right mode - but only once the export is verifiably complete.

## [Common Mistakes](#common-mistakes)

-   **Postal code as a number.** `postal_code` is a string; leading zeros are otherwise lost.
-   **Energy certificate added later.** Optional at creation, but publishing any listing fails without it.
-   **Missing cover photo.** Without `category: "cover_photo"`, the template falls back to a placeholder graphic.