{ "updatedAt": "2026-04-11T10:18:14.686Z", "createdAt": "2026-03-09T07:21:50.076Z", "id": "mXYla2g5o8kLumAJ", "name": "Recipe", "description": null, "active": true, "isArchived": false, "nodes": [ { "parameters": { "httpMethod": "POST", "path": "recipe-import", "options": {} }, "name": "Webhook", "type": "n8n-nodes-base.webhook", "typeVersion": 1, "position": [ 0, 0 ], "id": "77aa56a0-bb5c-4a0d-877e-940dc46a1169", "webhookId": "ed5885d6-7a81-4a35-8998-8e540991ff21" }, { "parameters": { "url": "={{$node[\"Webhook\"].json[\"body\"][\"url\"]}}", "options": {} }, "name": "Fetch HTML", "type": "n8n-nodes-base.httpRequest", "typeVersion": 4.1, "position": [ 224, 0 ], "id": "9f8833dd-be35-4d09-bbc0-53ac053ea3f2", "retryOnFail": true, "notesInFlow": false }, { "parameters": { "method": "POST", "url": "https://nc.nuclide.systems/index.php/apps/cookbook/api/v1/recipes", "authentication": "genericCredentialType", "genericAuthType": "httpBasicAuth", "sendBody": true, "specifyBody": "json", "jsonBody": "={{ $json.output }}", "options": {} }, "name": "Post to Cookbook", "type": "n8n-nodes-base.httpRequest", "typeVersion": 4.1, "position": [ 1088, 0 ], "id": "478bdf04-c93e-4e81-ad81-7584ee5e2c62", "credentials": { "httpBasicAuth": { "id": "LIjnFZEJ6LNkhOAR", "name": "Nextcloud" } } }, { "parameters": { "text": "={{ $json.data }}", "schemaType": "manual", "inputSchema": "{\n \"$schema\": \"http://json-schema.org/draft-07/schema#\",\n \"title\": \"Recipe (schema.org)\",\n \"description\": \"Ein Kochrezept basierend auf schema.org/Recipe\",\n \"type\": \"object\",\n \"required\": [\"@context\", \"@type\", \"name\", \"recipeIngredient\", \"recipeInstructions\"],\n \"properties\": {\n \"@context\": {\n \"type\": \"string\",\n \"const\": \"https://schema.org\"\n },\n \"@type\": {\n \"type\": \"string\",\n \"const\": \"Recipe\"\n },\n \"name\": {\n \"type\": \"string\",\n \"description\": \"Der Name des Gerichts.\"\n },\n \"image\": {\n \"oneOf\": [\n { \"type\": \"string\", \"format\": \"uri\" },\n { \"type\": \"array\", \"items\": { \"type\": \"string\", \"format\": \"uri\" } }\n ],\n \"description\": \"URL zu einem Bild des fertigen Gerichts.\"\n },\n \"author\": {\n \"type\": \"object\",\n \"properties\": {\n \"@type\": { \"type\": \"string\", \"enum\": [\"Person\", \"Organization\"] },\n \"name\": { \"type\": \"string\" }\n }\n },\n \"datePublished\": {\n \"type\": \"string\",\n \"format\": \"date\"\n },\n \"description\": {\n \"type\": \"string\",\n \"description\": \"Kurze Zusammenfassung des Rezepts.\"\n },\n \"prepTime\": {\n \"type\": \"string\",\n \"pattern\": \"^P([0-9]+Y)?([0-9]+M)?([0-9]+D)?T?([0-9]+H)?([0-9]+M)?([0-9]+S)?$\",\n \"description\": \"Vorbereitungszeit im ISO 8601 Format (z.B. PT15M).\"\n },\n \"cookTime\": {\n \"type\": \"string\",\n \"pattern\": \"^P([0-9]+Y)?([0-9]+M)?([0-9]+D)?T?([0-9]+H)?([0-9]+M)?([0-9]+S)?$\",\n \"description\": \"Kochzeit im ISO 8601 Format.\"\n },\n \"totalTime\": {\n \"type\": \"string\",\n \"pattern\": \"^P([0-9]+Y)?([0-9]+M)?([0-9]+D)?T?([0-9]+H)?([0-9]+M)?([0-9]+S)?$\",\n \"description\": \"Gesamtzeit im ISO 8601 Format.\"\n },\n \"recipeCategory\": {\n \"type\": \"string\",\n \"description\": \"z.B. 'Vorspeise' oder 'Dessert'.\"\n },\n \"recipeCuisine\": {\n \"type\": \"string\",\n \"description\": \"z.B. 'Italienisch' oder 'Franz\u00f6sisch'.\"\n },\n \"recipeYield\": {\n \"oneOf\": [\n { \"type\": \"string\" },\n { \"type\": \"number\" }\n ],\n \"description\": \"Menge, die das Rezept ergibt (z.B. '4 Portionen').\"\n },\n \"nutrition\": {\n \"type\": \"object\",\n \"properties\": {\n \"@type\": { \"type\": \"string\", \"const\": \"NutritionInformation\" },\n \"calories\": { \"type\": \"string\", \"description\": \"z.B. '240 calories'\" },\n \"fatContent\": { \"type\": \"string\" },\n \"proteinContent\": { \"type\": \"string\" },\n \"carbohydrateContent\": { \"type\": \"string\" }\n }\n },\n \"recipeIngredient\": {\n \"type\": \"array\",\n \"items\": { \"@type\": \"PropertyValue\", \"value\": 1, \"name\": \"egg\" },\n \"description\": \"Liste der ben\u00f6tigten Zutaten.\"\n },\n \"recipeInstructions\": {\n \"type\": \"array\",\n \"items\": {\n \"oneOf\": [\n { \"type\": \"string\" },\n {\n \"type\": \"object\",\n \"properties\": {\n \"@type\": { \"type\": \"string\", \"const\": \"HowToStep\" },\n \"text\": { \"type\": \"string\" },\n \"name\": { \"type\": \"string\" },\n \"url\": { \"type\": \"string\", \"format\": \"uri\" },\n \"image\": { \"type\": \"string\", \"format\": \"uri\" }\n },\n \"required\": [\"text\"]\n }\n ]\n },\n \"description\": \"Schritt-f\u00fcr-Schritt-Anleitung.\"\n },\n \"aggregateRating\": {\n \"type\": \"object\",\n \"properties\": {\n \"@type\": { \"type\": \"string\", \"const\": \"AggregateRating\" },\n \"ratingValue\": { \"type\": \"number\" },\n \"reviewCount\": { \"type\": \"number\" }\n }\n }\n }\n}", "options": {} }, "type": "@n8n/n8n-nodes-langchain.informationExtractor", "typeVersion": 1.2, "position": [ 688, 0 ], "id": "5f9d6b78-9430-4008-85bb-7633568e6311", "name": "Information Extractor" }, { "parameters": { "html": "={{ $json.data }}", "options": { "useLinkReferenceDefinitions": true } }, "type": "n8n-nodes-base.markdown", "typeVersion": 1, "position": [ 432, 0 ], "id": "b363c14e-2ee8-4608-a8ff-e567583e8097", "name": "Markdown" }, { "parameters": { "model": { "__rl": true, "value": "SAIA/llama-3.1-sauerkrautlm-70b-instruct", "mode": "list", "cachedResultName": "SAIA/llama-3.1-sauerkrautlm-70b-instruct" }, "responsesApiEnabled": false, "options": {} }, "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi", "typeVersion": 1.3, "position": [ 688, 192 ], "id": "c7012e63-c468-45d4-bcb5-ca1b1d9e2180", "name": "OpenAI Chat Model", "credentials": { "openAiApi": { "id": "5sHTE0Wl8Qi6twzX", "name": "nuclide.systems" } } } ], "connections": { "Webhook": { "main": [ [ { "node": "Fetch HTML", "type": "main", "index": 0 } ] ] }, "Fetch HTML": { "main": [ [ { "node": "Markdown", "type": "main", "index": 0 } ] ] }, "Information Extractor": { "main": [ [ { "node": "Post to Cookbook", "type": "main", "index": 0 } ] ] }, "Markdown": { "main": [ [ { "node": "Information Extractor", "type": "main", "index": 0 } ] ] }, "OpenAI Chat Model": { "ai_languageModel": [ [ { "node": "Information Extractor", "type": "ai_languageModel", "index": 0 } ] ] } }, "settings": { "executionOrder": "v1", "binaryMode": "separate", "availableInMCP": false, "timeSavedMode": "fixed", "timezone": "Europe/Berlin", "callerPolicy": "workflowsFromSameOwner", "saveDataSuccessExecution": "none", "redactionPolicy": "none" }, "staticData": null, "meta": { "templateCredsSetupCompleted": true }, "pinData": {}, "versionId": "de91ceef-da7e-4bbc-9d91-a2ea04763d6f", "activeVersionId": "de91ceef-da7e-4bbc-9d91-a2ea04763d6f", "versionCounter": 394, "triggerCount": 1, "tags": [], "shared": [ { "updatedAt": "2026-03-09T07:21:50.078Z", "createdAt": "2026-03-09T07:21:50.078Z", "role": "workflow:owner", "workflowId": "mXYla2g5o8kLumAJ", "projectId": "hkIaTyp1CKVS8ywT", "project": { "updatedAt": "2026-03-09T07:21:36.510Z", "createdAt": "2026-03-09T07:20:59.502Z", "id": "hkIaTyp1CKVS8ywT", "name": "Florian Krebs ", "type": "personal", "icon": null, "description": null, "creatorId": "8af5c813-f89c-4b83-bcf8-5d59864a038a" } } ], "versionMetadata": { "name": "Version de91ceef", "description": "" } }