Feed immobili (JSON)
Elenco di tutti gli immobili in vendita o in locazione dell'agenzia, con i link alle foto pubblicate. È pensato per alimentare siti e gestionali esterni.
GET https://api.namai.it/cus/property
Authorization: Bearer <API_KEY>
- Autenticazione: API key.
- Parametri: nessuno. Non c'è filtro né paginazione: arriva sempre l'elenco completo.
- Cosa include: immobili con tipo annuncio Locazione o Vendita (
adType1 o 2), attivi (gli archiviati sono esclusi). - Cosa non include: gli id interni, le note, i proprietari, gli onorari, le date di inserimento e modifica, l'utente di riferimento, la valuta, i riferimenti interni dei portali.
- Traccia: ogni chiamata viene registrata nel Registro sicurezza.
Esempio
I valori dell'esempio sono inventati e abbreviati; il dominio delle foto dipende dall'installazione (<DOMINIO_FILE> indica il dominio pubblico dello storage).
curl -s https://api.namai.it/cus/property \
-H "Authorization: Bearer $NAMAI_API_KEY"
[
{
"code": "VE-0041",
"agencyLocationId": 3,
"propertyCategoryId": 1,
"propertyStateId": 2,
"propertyTypeId": 11,
"propertyAvailabilityId": 1,
"adType": 2,
"address": "Via Roma 12",
"fullAddress": "Via Roma 12, Roma",
"city": "058091",
"dscity": "Roma",
"district": "RM",
"zipcode": "00100",
"price": 245000,
"priceHide": false,
"squareMeters": 96,
"showaddress": true,
"buildState": 2,
"information": { "floor": "3", "local": 3, "level": 5, "garden": 0, "ape": "", "apeLetter": "C", "elevator": 1, "condition": 2, "orientation": 3 },
"heating": { "type": 1, "system": [2], "supply": [1] },
"parts": [{ "id": 1, "description": "Appartamento", "commercialPercent": 100, "squareMeters": 96, "unitPrice": 2500, "reductionCoefficient": 1 }],
"ads": [{ "lang": "it", "title": "Luminoso trilocale", "description": "…" }],
"areaServices": [1, 4],
"active": true,
"sold": false,
"img": [
"https://<DOMINIO_FILE>/upload/demo/9a1b2c3d.jpg",
"https://<DOMINIO_FILE>/upload/demo/4e5f6a7b.jpg"
]
}
]
La risposta è un array JSON. Le chiavi sono quelle del modello immobile di namai; i campi senza valore arrivano come null.
Campi principali
| Campo | Tipo | Significato |
|---|---|---|
code |
string | Riferimento dell'immobile, unico per agenzia |
adType |
number | 1 = Locazione, 2 = Vendita |
propertyCategoryId, propertyTypeId, propertyStateId, propertyAvailabilityId |
number | null | Codici di categoria, tipologia, stato e disponibilità (tabelle di decodifica di namai) |
address, fullAddress, city, dscity, district, zipcode |
string | null | Indirizzo. city è il codice ISTAT, dscity il nome del comune |
showaddress |
boolean | Se l'agenzia vuole mostrare l'indirizzo. Se è false, fullAddress arriva vuoto, ma address e zipcode vengono comunque inviati: non pubblicarli quando showaddress è false |
price |
number | Prezzo in euro (importo di vendita o canone) |
priceHide |
boolean | Se true, l'agenzia non vuole mostrare il prezzo: il feed lo manda comunque; spetta a chi consuma il feed nasconderlo |
squareMeters |
number | null | Superficie in mq |
information |
object | null | Piano, locali, livelli, giardino, classe energetica, ascensore, condizione, orientamento |
heating |
object | null | Tipo, sistema e alimentazione del riscaldamento |
parts |
array | null | Parti dell'immobile con superficie, percentuale commerciale e prezzo unitario |
ads |
array | null | Annunci per lingua: { lang, title, description } |
areaServices |
number[] | null | Servizi nelle vicinanze (codici) |
active |
boolean | Sempre true in questo feed |
sold |
boolean | true se l'immobile risulta venduto o affittato |
img |
string[] | URL assoluti delle foto che l'agenzia ha scelto di pubblicare |
Attenzione ai campi riservati
Oltre ai campi qui sopra la risposta contiene alcuni campi che l'app tratta come riservati (ad esempio prezzo minimo, prezzo di vendita, dati del mandato e dati catastali). Non farci affidamento e non pubblicarli: il loro contenuto può cambiare quando verrà ristretto l'elenco.
Errori
| Stato | Quando |
|---|---|
401 |
API key assente o non valida |
500 |
Errore interno |