Create Many new alert for Property search
curl --request PUT \
--url https://api.fluximmo.io/v2/protected/properties/search/alerts/many \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"alerts": [
{
"search_query": {
"filterProperty": {
"adverts": [],
"habitation": {
"bathroomCount": {
"max": 123,
"min": 123
},
"bedroomCount": {
"max": 123,
"min": 123
},
"characteristics": {
"hasAlarm": true,
"hasBalcony": true,
"hasCellar": true,
"hasConcierge": true,
"hasDigicode": true,
"hasFireplace": true,
"hasGarage": true,
"hasGarden": true,
"hasGrenier": true,
"hasInterphone": true,
"hasJacuzzi": true,
"hasLand": true,
"hasLift": true,
"hasMezzanine": true,
"hasParking": true,
"hasPool": true,
"hasTerrace": true,
"hasVisAVis": true,
"isPeaceful": true
},
"climate": {
"epcClimate": [],
"epcClimateScore": {
"max": 123,
"min": 123
},
"epcEnergy": [],
"epcEnergyScore": {
"max": 123,
"min": 123
},
"epcClimateDate": {
"max": "2022-10-21T11:31:33.593Z",
"min": "2022-10-21T11:31:33.593Z"
},
"epcEnergyDate": {
"max": "2022-10-21T11:31:33.593Z",
"min": "2022-10-21T11:31:33.593Z"
}
},
"features": {
"exposure": [],
"furniture": [],
"propertyFloor": {
"max": 123,
"min": 123
},
"propertyTotalFloor": {
"max": 123,
"min": 123
},
"constructionMaterials": [],
"glazingTypes": [],
"hasThroughExposure": true,
"viewOns": [],
"viewTypes": []
},
"heatTypes": [],
"heatTypeDetails": [],
"heatings": [],
"propertyCondition": [
{
"constructionYear": 123,
"interiorCondition": null,
"renovationYear": 123,
"generalConditions": []
}
],
"roomCount": {
"max": 123,
"min": 123
},
"surface": {
"balconies": {
"max": 123,
"min": 123
},
"floorSpace": {
"max": 123,
"min": 123
},
"gardens": {
"max": 123,
"min": 123
},
"groundFloor": {
"max": 123,
"min": 123
},
"kitchen": {
"max": 123,
"min": 123
},
"livingSpace": {
"max": 123,
"min": 123
},
"livingroom": {
"max": 123,
"min": 123
},
"terraces": {
"max": 123,
"min": 123
},
"total": {
"max": 123,
"min": 123
}
},
"type": "PROPERTY_TYPE_T1_T2",
"wcCount": {
"max": 123,
"min": 123
}
},
"isUrgent": true,
"land": {
"canConstruct": true,
"isServiced": true,
"surface": {
"max": 123,
"min": 123
},
"surfaceConstructable": {
"max": 123,
"min": 123
},
"type": [],
"haveBuildingPermit": true,
"haveElectricity": true,
"haveTelecom": true,
"haveWater": true
},
"location": [],
"meta": {
"firstSeenAt": {
"max": "2022-10-21T11:31:33.593Z",
"min": "2022-10-21T11:31:33.593Z"
},
"isTotallyOffline": true,
"lastPublishedAt": {
"max": "2022-10-21T11:31:33.593Z",
"min": "2022-10-21T11:31:33.593Z"
},
"lastSeenAt": {
"max": "2022-10-21T11:31:33.593Z",
"min": "2022-10-21T11:31:33.593Z"
},
"lastUpdatedAt": {
"max": "2022-10-21T11:31:33.593Z",
"min": "2022-10-21T11:31:33.593Z"
}
},
"parking": {
"count": {
"max": 123,
"min": 123
},
"numberOfCars": {
"max": 123,
"min": 123
},
"surface": {
"max": 123,
"min": 123
},
"type": []
},
"price": {
"currency": [],
"initial": {
"source": {
"flxId": "<string>",
"url": "<string>",
"website": "<string>"
},
"value": {
"max": 123,
"min": 123
},
"valuePerArea": {
"max": 123,
"min": 123
}
},
"isAuction": true,
"latest": {
"source": {
"flxId": "<string>",
"url": "<string>",
"website": "<string>"
},
"value": {
"max": 123,
"min": 123
},
"valuePerArea": {
"max": 123,
"min": 123
}
},
"scope": [],
"warrantyDeposit": {
"max": 123,
"min": 123
},
"variation": []
},
"process": [],
"tags": [
"<string>"
],
"type": [
"CLASS_HOUSE"
],
"hasAnomaly": true,
"offer": []
},
"fullTexts": [
"<string>"
],
"keywords": [
"<string>"
]
},
"webhook_url": "<string>",
"search_name": "<string>",
"match": [
"ALERT_MATCH_CREATED"
],
"context": {
"metadata": {}
}
}
]
}
'{
"data": {
"alerts": [
{
"success": "<string>",
"failed": {
"code": 123,
"message": "<string>"
}
}
]
}
}Créer plusieurs alertes properties
Création bulk d’alertes properties (multi-territoires).
Create Many new alert for Property search
curl --request PUT \
--url https://api.fluximmo.io/v2/protected/properties/search/alerts/many \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"alerts": [
{
"search_query": {
"filterProperty": {
"adverts": [],
"habitation": {
"bathroomCount": {
"max": 123,
"min": 123
},
"bedroomCount": {
"max": 123,
"min": 123
},
"characteristics": {
"hasAlarm": true,
"hasBalcony": true,
"hasCellar": true,
"hasConcierge": true,
"hasDigicode": true,
"hasFireplace": true,
"hasGarage": true,
"hasGarden": true,
"hasGrenier": true,
"hasInterphone": true,
"hasJacuzzi": true,
"hasLand": true,
"hasLift": true,
"hasMezzanine": true,
"hasParking": true,
"hasPool": true,
"hasTerrace": true,
"hasVisAVis": true,
"isPeaceful": true
},
"climate": {
"epcClimate": [],
"epcClimateScore": {
"max": 123,
"min": 123
},
"epcEnergy": [],
"epcEnergyScore": {
"max": 123,
"min": 123
},
"epcClimateDate": {
"max": "2022-10-21T11:31:33.593Z",
"min": "2022-10-21T11:31:33.593Z"
},
"epcEnergyDate": {
"max": "2022-10-21T11:31:33.593Z",
"min": "2022-10-21T11:31:33.593Z"
}
},
"features": {
"exposure": [],
"furniture": [],
"propertyFloor": {
"max": 123,
"min": 123
},
"propertyTotalFloor": {
"max": 123,
"min": 123
},
"constructionMaterials": [],
"glazingTypes": [],
"hasThroughExposure": true,
"viewOns": [],
"viewTypes": []
},
"heatTypes": [],
"heatTypeDetails": [],
"heatings": [],
"propertyCondition": [
{
"constructionYear": 123,
"interiorCondition": null,
"renovationYear": 123,
"generalConditions": []
}
],
"roomCount": {
"max": 123,
"min": 123
},
"surface": {
"balconies": {
"max": 123,
"min": 123
},
"floorSpace": {
"max": 123,
"min": 123
},
"gardens": {
"max": 123,
"min": 123
},
"groundFloor": {
"max": 123,
"min": 123
},
"kitchen": {
"max": 123,
"min": 123
},
"livingSpace": {
"max": 123,
"min": 123
},
"livingroom": {
"max": 123,
"min": 123
},
"terraces": {
"max": 123,
"min": 123
},
"total": {
"max": 123,
"min": 123
}
},
"type": "PROPERTY_TYPE_T1_T2",
"wcCount": {
"max": 123,
"min": 123
}
},
"isUrgent": true,
"land": {
"canConstruct": true,
"isServiced": true,
"surface": {
"max": 123,
"min": 123
},
"surfaceConstructable": {
"max": 123,
"min": 123
},
"type": [],
"haveBuildingPermit": true,
"haveElectricity": true,
"haveTelecom": true,
"haveWater": true
},
"location": [],
"meta": {
"firstSeenAt": {
"max": "2022-10-21T11:31:33.593Z",
"min": "2022-10-21T11:31:33.593Z"
},
"isTotallyOffline": true,
"lastPublishedAt": {
"max": "2022-10-21T11:31:33.593Z",
"min": "2022-10-21T11:31:33.593Z"
},
"lastSeenAt": {
"max": "2022-10-21T11:31:33.593Z",
"min": "2022-10-21T11:31:33.593Z"
},
"lastUpdatedAt": {
"max": "2022-10-21T11:31:33.593Z",
"min": "2022-10-21T11:31:33.593Z"
}
},
"parking": {
"count": {
"max": 123,
"min": 123
},
"numberOfCars": {
"max": 123,
"min": 123
},
"surface": {
"max": 123,
"min": 123
},
"type": []
},
"price": {
"currency": [],
"initial": {
"source": {
"flxId": "<string>",
"url": "<string>",
"website": "<string>"
},
"value": {
"max": 123,
"min": 123
},
"valuePerArea": {
"max": 123,
"min": 123
}
},
"isAuction": true,
"latest": {
"source": {
"flxId": "<string>",
"url": "<string>",
"website": "<string>"
},
"value": {
"max": 123,
"min": 123
},
"valuePerArea": {
"max": 123,
"min": 123
}
},
"scope": [],
"warrantyDeposit": {
"max": 123,
"min": 123
},
"variation": []
},
"process": [],
"tags": [
"<string>"
],
"type": [
"CLASS_HOUSE"
],
"hasAnomaly": true,
"offer": []
},
"fullTexts": [
"<string>"
],
"keywords": [
"<string>"
]
},
"webhook_url": "<string>",
"search_name": "<string>",
"match": [
"ALERT_MATCH_CREATED"
],
"context": {
"metadata": {}
}
}
]
}
'{
"data": {
"alerts": [
{
"success": "<string>",
"failed": {
"code": 123,
"message": "<string>"
}
}
]
}
}PUT /v2/protected/properties/search/alerts/many crée N alertes en un seul appel. Pratique pour onboarder un client avec 50 zones distinctes (un département par alerte, ou une ville par alerte) sans saturer la latence.
La limite max et le comportement exact en cas d’erreur partielle (atomicité tout-ou-rien vs best-effort) sont définis côté DTO
CreatePropertySearchAlertsManyDto. Référez-vous au schéma OpenAPI ci-dessous pour les contraintes en vigueur. En cas de doute, faites un pilote à 5 alertes avant de pousser à 50.search_query, webhook_url, match, search_name, context. Voir Créer une alerte properties pour le détail.
Cas d’usage
- Multi-territoires — un client B2B couvre 30 départements. Plutôt que 30 PUT séquentiels, un seul appel bulk.
- Onboarding template — appliquer un preset d’alertes (un par segment de portefeuille) à chaque nouveau client interne.
- Reset périodique — recréer en bulk un parc d’alertes après une migration majeure.
Recréer en bulk n’apporte pas l’historique des anciennes alertes. Si vous voulez conserver les events sur les biens déjà matchés, préférez PATCH sur les alertes existantes plutôt que delete + bulk recreate.
Cross-links
Was this page helpful?
⌘I

