Recherche de logements et candidatures automatiques en Allemagne (avec fonction de notes)
Ceci est unPersonal Productivity, Multimodal AIworkflow d'automatisation du domainecontenant 22 nœuds.Utilise principalement des nœuds comme Set, Cron, Function, EmailSend, GoogleDrive. Recherche et candidature automatisées pour les appartements en Allemagne, avec Immobilienscout24 et les services Google
- •Informations d'identification Google Drive API
- •Peut nécessiter les informations d'identification d'authentification de l'API cible
- •Informations d'identification Google Sheets API
Nœuds utilisés (22)
{
"name": "Germany Apartment Finder & Auto-Apply (with Sticky Notes)",
"tags": [
"apartments",
"automation",
"germany",
"immobilienscout24"
],
"nodes": [
{
"id": "1",
"name": "Déclencheur Cron",
"type": "n8n-nodes-base.cron",
"position": [
250,
300
],
"parameters": {},
"typeVersion": 1
},
{
"id": "2",
"name": "Définir la Configuration",
"type": "n8n-nodes-base.set",
"position": [
450,
300
],
"parameters": {
"values": {
"string": [
{
"name": "CITY",
"value": "Berlin"
},
{
"name": "MAX_RENT",
"value": "1200"
},
{
"name": "ROOMS",
"value": "2"
},
{
"name": "MY_EMAIL",
"value": "your.email@example.com"
},
{
"name": "MY_NAME",
"value": "Max Mustermann"
},
{
"name": "GDRIVE_SCHUFA_FILE_ID",
"value": "your-schufa-file-id"
},
{
"name": "GDRIVE_SALARY_FILE_ID",
"value": "your-salary-file-id"
},
{
"name": "GOOGLE_SHEET_ID",
"value": "your-google-sheet-id"
}
]
}
},
"typeVersion": 1
},
{
"id": "3",
"name": "Recherche d'ID Géographique",
"type": "n8n-nodes-base.function",
"position": [
650,
300
],
"parameters": {
"functionCode": "const geoidMap = { Berlin: 12770000 };\nconst city = $json[\"CITY\"] || \"Berlin\";\nreturn [{ json: { city, geoid: geoidMap[city] || geoidMap[\"Berlin\"] } }];"
},
"typeVersion": 1
},
{
"id": "4",
"name": "Récupérer les Annonces depuis Immobilienscout24",
"type": "n8n-nodes-base.httpRequest",
"position": [
850,
300
],
"parameters": {
"url": "=https://www.immobilienscout24.de/Suche/S-T/Wohnung-Miete/Berlin/umkreis- {{$json[\"geoid\"]}} ?numberofroomsfrom={{$json[\"ROOMS\"]}}&price=-{{ $json[\"MAX_RENT\"] }}&sorting=2",
"options": {
"headers": {
"Accept": "application/json"
}
},
"responseFormat": "json"
},
"typeVersion": 1
},
{
"id": "5",
"name": "Filtrer les Résultats",
"type": "n8n-nodes-base.function",
"position": [
1050,
300
],
"parameters": {
"functionCode": "return items.filter(item => item.json.type === 'apartment' &&\n parseFloat(item.json.price) <= parseFloat($json[\"MAX_RENT\"]) &&\n parseInt(item.json.rooms) >= parseInt($json[\"ROOMS\"]));"
},
"typeVersion": 1
},
{
"id": "6",
"name": "Traiter les Appartements un par un",
"type": "n8n-nodes-base.splitInBatches",
"position": [
1250,
300
],
"parameters": {
"batchSize": 1
},
"typeVersion": 1
},
{
"id": "7",
"name": "Récupérer le Schufa (Drive Google)",
"type": "n8n-nodes-base.googleDrive",
"position": [
1450,
100
],
"parameters": {
"fileId": "={{$json[\"GDRIVE_SCHUFA_FILE_ID\"]}}",
"authentication": "oAuth2"
},
"typeVersion": 1
},
{
"id": "8",
"name": "Récupérer les Bulletins de Salaire (Drive Google)",
"type": "n8n-nodes-base.googleDrive",
"position": [
1450,
500
],
"parameters": {
"fileId": "={{$json[\"GDRIVE_SALARY_FILE_ID\"]}}",
"authentication": "oAuth2"
},
"typeVersion": 1
},
{
"id": "9",
"name": "Générer la Lettre de Motivation",
"type": "n8n-nodes-base.function",
"position": [
1650,
300
],
"parameters": {
"functionCode": "return [{ json: { coverLetter: `Sehr geehrte Damen und Herren,\\n\\n Ich interessiere mich sehr für die Wohnung mit Exposé-ID ${$json[\"exposeId\"]} (${ $json[\"price\"] } EUR, ${ $json[\"rooms\"] } Zimmer).\\n\\n Im Anhang finden Sie meine Schufa-Auskunft und aktuelle Gehaltsabrechnungen.\\n\\n Vielen Dank für Ihre Zeit und ich freue mich auf Ihre Rückmeldung.\\n\\n Mit freundlichen Grüßen,\\n${$json[\"MY_NAME\"]}` } }];"
},
"typeVersion": 1
},
{
"id": "10",
"name": "Envoyer l'Email de Candidature",
"type": "n8n-nodes-base.emailSend",
"position": [
1850,
300
],
"parameters": {
"content": "={{$json[\"coverLetter\"]}}",
"subject": "Wohnungsbewerbung – Interesse an Exposé-ID {{$json[\"exposeId\"]}}",
"toEmail": "={{$json[\"contactEmail\"]}}",
"fromEmail": "={{$json[\"MY_EMAIL\"]}}",
"attachments": [
{
"binaryPropertyName": "schufa"
},
{
"binaryPropertyName": "salary"
}
]
},
"typeVersion": 1
},
{
"id": "11",
"name": "Journaliser dans la Feuille Google",
"type": "n8n-nodes-base.googleSheets",
"position": [
2050,
300
],
"parameters": {
"range": "A:E",
"values": [
[
"={{$json[\"title\"]}}",
"={{$json[\"address\"]}}",
"={{$json[\"price\"]}}",
"={{new Date().toISOString()}}",
"={{$json[\"exposeId\"]}}"
]
],
"sheetId": "={{$json[\"GOOGLE_SHEET_ID\"]}}",
"authentication": "oAuth2",
"valueInputMode": "USER_ENTERED"
},
"typeVersion": 1
},
{
"id": "sticky1",
"name": "Post-it : Déclencheur Cron",
"type": "n8n-nodes-base.stickyNote",
"position": [
250,
230
],
"parameters": {
"content": "Triggers the workflow every day at 8 AM Berlin time."
},
"typeVersion": 1
},
{
"id": "sticky2",
"name": "Post-it : Définir la Configuration",
"type": "n8n-nodes-base.stickyNote",
"position": [
450,
230
],
"parameters": {
"content": "Set your configuration: city, max rent, rooms, email, file IDs etc."
},
"typeVersion": 1
},
{
"id": "sticky3",
"name": "Post-it : Recherche d'ID Géographique",
"type": "n8n-nodes-base.stickyNote",
"position": [
650,
230
],
"parameters": {
"content": "Convert city name to GeoID needed by ImmobilienScout24 API."
},
"typeVersion": 1
},
{
"id": "sticky4",
"name": "Post-it : Récupérer les Annonces depuis Immobilienscout24",
"type": "n8n-nodes-base.stickyNote",
"position": [
850,
230
],
"parameters": {
"content": "Fetch apartment listings from ImmobilienScout24 with filters applied."
},
"typeVersion": 1
},
{
"id": "sticky5",
"name": "Post-it : Filtrer les Résultats",
"type": "n8n-nodes-base.stickyNote",
"position": [
1050,
230
],
"parameters": {
"content": "Filter listings to only include apartments matching rent and rooms criteria."
},
"typeVersion": 1
},
{
"id": "sticky6",
"name": "Post-it : Traiter les Appartements un par un",
"type": "n8n-nodes-base.stickyNote",
"position": [
1250,
230
],
"parameters": {
"content": "Process apartments one by one to send applications."
},
"typeVersion": 1
},
{
"id": "sticky7",
"name": "Post-it : Récupérer le Schufa",
"type": "n8n-nodes-base.stickyNote",
"position": [
1450,
30
],
"parameters": {
"content": "Fetch Schufa report from Google Drive to attach in application."
},
"typeVersion": 1
},
{
"id": "sticky8",
"name": "Post-it : Récupérer les Bulletins de Salaire",
"type": "n8n-nodes-base.stickyNote",
"position": [
1450,
430
],
"parameters": {
"content": "Fetch latest salary slips from Google Drive for application."
},
"typeVersion": 1
},
{
"id": "sticky9",
"name": "Post-it : Générer la Lettre de Motivation",
"type": "n8n-nodes-base.stickyNote",
"position": [
1650,
230
],
"parameters": {
"content": "Generate a personalized cover letter with expose ID and applicant name."
},
"typeVersion": 1
},
{
"id": "sticky10",
"name": "Post-it : Envoyer l'Email de Candidature",
"type": "n8n-nodes-base.stickyNote",
"position": [
1850,
230
],
"parameters": {
"content": "Send the apartment application email with attachments."
},
"typeVersion": 1
},
{
"id": "sticky11",
"name": "Post-it : Journaliser dans la Feuille Google",
"type": "n8n-nodes-base.stickyNote",
"position": [
2050,
230
],
"parameters": {
"content": "Log applied apartments in Google Sheets for tracking."
},
"typeVersion": 1
}
],
"active": true,
"settings": {
"timezone": "Europe/Berlin",
"executionOrder": "regular",
"saveDataOnSuccess": "allExecutions"
},
"connections": {
"1": {
"main": [
[
{
"node": "2",
"type": "main",
"index": 0
}
]
]
},
"2": {
"main": [
[
{
"node": "3",
"type": "main",
"index": 0
}
]
]
},
"3": {
"main": [
[
{
"node": "Fetch Listings",
"type": "main",
"index": 0
}
]
]
},
"5": {
"main": [
[
{
"node": "6",
"type": "main",
"index": 0
}
]
]
},
"6": {
"main": [
[
{
"node": "7",
"type": "main",
"index": 0
},
{
"node": "8",
"type": "main",
"index": 0
}
]
]
},
"7": {
"main": [
[
{
"node": "9",
"type": "main",
"index": 0
}
]
]
},
"8": {
"main": [
[
{
"node": "9",
"type": "main",
"index": 0
}
]
]
},
"9": {
"main": [
[
{
"node": "10",
"type": "main",
"index": 0
}
]
]
},
"10": {
"main": [
[
{
"node": "11",
"type": "main",
"index": 0
}
]
]
},
"Fetch Listings": {
"main": [
[
{
"node": "5",
"type": "main",
"index": 0
}
]
]
}
}
}Comment utiliser ce workflow ?
Copiez le code de configuration JSON ci-dessus, créez un nouveau workflow dans votre instance n8n et sélectionnez "Importer depuis le JSON", collez la configuration et modifiez les paramètres d'authentification selon vos besoins.
Dans quelles scénarios ce workflow est-il adapté ?
Avancé - Productivité personnelle, IA Multimodale
Est-ce payant ?
Ce workflow est entièrement gratuit et peut être utilisé directement. Veuillez noter que les services tiers utilisés dans le workflow (comme l'API OpenAI) peuvent nécessiter un paiement de votre part.
Workflows recommandés
Abbas Ali
@abbas12142Automation Engineer passionate about building smart, scalable workflows with n8n. I specialize in API integrations, webhook handling, and streamlining business tasks using low-code tools. From AI-powered bots to real-time data pipelines, I love solving problems with automation. Let’s turn manual processes into efficient systems!
Partager ce workflow