मुख्य सामग्री पर जाएं

n8n वर्कफ़्लोज़

AI-Corporate, उत्पादन वेबहुक के माध्यम से n8n वर्कफ़्लोज़ शुरू कर सकता है। यह तब उपयोगी है जब आप AI-Corporate के बाहर कोई स्वचालित प्रक्रिया शुरू करना चाहते हैं, जैसे कोई कार्य बनाना, CRM रिकॉर्ड अपडेट करना, रिपोर्टिंग फ़्लो शुरू करना, या फ़ॉर्म डेटा को किसी अन्य सिस्टम में भेजना।

उदाहरण: कंपनी वेबसाइट पर समाचार लेख​

मान लें कि संगठन ने एक n8n वर्कफ़्लो बनाया है जो कंपनी की WordPress वेबसाइट पर एक समाचार लेख प्रकाशित करता है। AI-Corporate में आप केवल एक छोटा सा टेक्स्ट भरते हैं, जैसे किसी ग्राहक केस, इवेंट या आंतरिक उपलब्धि पर कुछ वाक्य। उसी टेक्स्ट से आप n8n में वर्कफ़्लो शुरू करते हैं।

इसके बाद n8n वर्कफ़्लो उदाहरण के लिए यह कर सकता है:

  1. छोटे टेक्स्ट को LLM node और संगठन के टोन के अनुसार उपयुक्त प्रॉम्प्ट की मदद से एक साफ़ ड्राफ़्ट टेक्स्ट में बदलना।
  2. दूसरे LLM node से एक उपयुक्त चित्र बनवाना, उदाहरण के लिए ब्रांड रंगों में और पहचानी जा सकने वाली चित्रात्मक शैली में।
  3. टेक्स्ट और चित्र को WordPress वेबसाइट पर ब्लॉग पोस्ट के रूप में तैयार करना या प्रकाशित करना।

इस तरह AI-Corporate और n8n साथ काम करते हैं: AI-Corporate में उपयोगकर्ता वर्कफ़्लो चुनता है और आवश्यक जानकारी भरता है। इसके बाद n8n स्वचालित चरणों को चलाता है और सुनिश्चित करता है कि समाचार लेख ठीक से वेबसाइट पर पहुँच जाए।

यह एकीकरण क्या करता है?​

आप वर्कफ़्लो अवलोकन से n8n वर्कफ़्लो शुरू करते हैं। केवल प्रोडक्शन वेबहुक, POST और Header Auth अनिवार्य हैं। n8n से आने वाले फ़ील्ड और callback वैकल्पिक हैं और इन्हें एक-दूसरे से स्वतंत्र रूप से सेट किया जा सकता है।

  • यदि वर्कफ़्लो में कोई फ़ील्ड नहीं है, तो वेबहुक तुरंत कॉल हो जाता है।
  • यदि वर्कफ़्लो में फ़ील्ड हैं, तो पहले एक फ़ॉर्म खुलता है। उपयोगकर्ता फ़ील्ड भरता है और फिर बटन से वर्कफ़्लो शुरू करता है।
  • भरे गए मान JSON के रूप में n8n वेबहुक को POST-request में भेजे जाते हैं।
  • बिना callback के, AI-Corporate केवल यह पुष्टि करता है कि वर्कफ़्लो शुरू हो गया है और बाकी n8n में चलता रहता है। विंडो में कोई स्पिनर नहीं दिखता और इसे तुरंत बंद किया जा सकता है।
  • यदि पंजीकरण के समय यह चालू किया गया हो, तो वर्कफ़्लो बीच के चरण या अंत AI-Corporate को वापस भेज सकता है।
  • यदि पंजीकरण के समय approval चालू किया गया हो, तो उपयोगकर्ता सीधे AI-Corporate में कोई विकल्प चुन सकता है। इसके बाद n8n प्रतीक्षा कर रहे चरण से आगे बढ़ता है।

AI-Corporate में n8n वर्कफ़्लो बनाना​

एक प्रशासक वर्कफ़्लो को इस तरह पंजीकृत करता है:

  1. Assistenten पर जाएँ।
  2. Workflow assistenten टैब खोलें।
  3. ऊपर वाले कार्ड में Nieuwe workflow पर क्लिक करें और n8n workflow चुनें।
  4. वर्कफ़्लो का नाम और n8n प्रोडक्शन-url भरें।
  5. Header authentication को header name और secret header value के साथ सेट करें।
  6. Terugmeldingen uit n8n के तहत केवल वही भाग चुनें जो वास्तव में इस n8n-workflow में बनाए गए हैं: progress, approval और/या workflow का अंत।
  7. आवश्यकता होने पर वे फ़ील्ड जोड़ें जिन्हें POST-request में भेजना है।
  8. वर्कफ़्लो सहेजें।

तीनों callback विकल्प डिफ़ॉल्ट रूप से बंद रहते हैं। यदि बाद में आप n8n में callbacks या approval चरण जोड़ते हैं, तो AI-Corporate में पंजीकरण भी अपडेट करें। इससे dialog को पता रहता है कि उसे सिर्फ़ शुरुआत की पुष्टि दिखानी है या आगे के संकेतों की प्रतीक्षा करनी है।

फ़ील्ड्स​

  • फ़ील्ड्स वैकल्पिक हैं।
  • हर फ़ील्ड में एक फ़ील्ड नाम और एक type होता है।
  • समर्थित फ़ील्ड types हैं: छोटा टेक्स्ट, लंबा टेक्स्ट, संख्या, हाँ/नहीं, तारीख, एक विकल्प और कई विकल्प।
  • एक विकल्प और कई विकल्प में उपलब्ध विकल्प जोड़ें। एक विकल्प एक कॉम्पैक्ट ड्रॉपडाउन के रूप में दिखता है; कई विकल्प चेकबॉक्स दिखाता है। चुना गया मान या मान JSON body में भेजे जाते हैं।
  • अनिवार्य फ़ील्ड्स को भरना ज़रूरी है, तभी वर्कफ़्लो शुरू किया जा सकता है।
  • फ़ील्ड नाम JSON body में key बन जाता है, जिसे n8n को भेजा जाता है।

n8n में संगत वर्कफ़्लो बनाना​

  1. n8n में एक नया वर्कफ़्लो बनाएं।
  2. सबसे पहले एक Webhook node जोड़ें।
  3. इस node का नाम ठीक Start workflow रखें। नीचे दिए गए उदाहरण expressions इसी नाम का उपयोग करते हैं।
  4. HTTP Method को POST पर सेट करें।
  5. Authentication: Header Auth चुनें और वही header name और secret value उपयोग करें जो AI-Corporate में है।
  6. Respond या Response Mode को Immediately पर सेट करें।
  7. Production URL को AI-Corporate के n8n productie-url फ़ील्ड में कॉपी करें। /webhook-test/ वाली test-url का उपयोग न करें।
  8. वर्कफ़्लो सक्रिय करें।

प्राप्त डेटा body के अंतर्गत होता है; तकनीकी integration जानकारी body.integration के अंतर्गत होती है। इसे Edit Fields-, Set- या Code-node में हटाएँ नहीं।

JSON body का उदाहरण​

यदि आप prompt, klantnaam, doelgroepen और datum नाम के फ़ील्ड परिभाषित करते हैं, तो n8n को उदाहरण के लिए यह JSON body प्राप्त होगी। AI-Corporate integration object अपने आप जोड़ता है।

{
"prompt": "अनुरोध का एक छोटा सारांश बनाइए।",
"klantnaam": "उदाहरण संगठन",
"doelgroepen": ["कर्मचारी", "ग्राहक"],
"datum": "2026-09-22",
"integration": {
"runId": "chat-document-id",
"tenant": "default",
"callbackUrl": "https://europe-west1-ai-corporate.cloudfunctions.net/n8nWorkflowCallback",
"callbackToken": "इस निष्पादन के लिए अस्थायी-टोकन"
}
}

callback token एक ही execution से संबंधित होता है। इसे logs, स्थायी configuration या अन्य सिस्टम में सहेजें नहीं।

वैकल्पिक: progress और completion वापस भेजना​

AI-Corporate केवल वही दिखा सकता है जो n8n वापस भेजता है। इन callbacks का उपयोग केवल तब करें जब आपने पंजीकरण में Tussentijdse voortgang melden और/या Het einde van de workflow melden चालू किया हो।

हर callback node को इस तरह सेट करें:

  1. Method: POST चुनें।

  2. URL के पास Expression पर क्लिक करें और यह पेस्ट करें:

    {{ $('Start workflow').first().json.body.integration.callbackUrl }}
  3. Authentication: None चुनें।

  4. Send Headers चालू करें और नीचे दिए गए headers जोड़ें।

  5. Send Body चालू करें और Body Content Type: JSON तथा Specify Body: Using JSON चुनें।

इन headers का उपयोग करें:

Authorization: Bearer {{ $('Start workflow').first().json.body.integration.callbackToken }}
Content-Type: application/json

उदाहरण के लिए, जब कोई चरण शुरू हो तो यह संदेश भेजें:

{
"tenant": "{{ $('Start workflow').first().json.body.integration.tenant }}",
"runId": "{{ $('Start workflow').first().json.body.integration.runId }}",
"eventId": "document-maken-gestart",
"type": "progress",
"executionId": "{{ $execution.id }}",
"step": {
"id": "document_maken",
"label": "Document बनाना"
},
"message": "Document बनाया जा रहा है।"
}
  • एक ही execution के भीतर हर घटना के लिए एक unique eventId उपयोग करें।
  • स्पष्ट हिंदी step.label उपयोग करें; यह टेक्स्ट ऐप में दिखाया जाएगा।
  • यदि आपने Het einde van de workflow melden चालू किया है, तो अंत में हमेशा type: "completed", type: "failed" या type: "rejected" भेजें।
  • completed में आवश्यकता होने पर परिणाम के साथ एक output object जोड़ें।
  • failed के साथ एक समझने योग्य error message भेजें। तब execution ऐप में भी रुक जाएगा।

वैकल्पिक: ऐप में approval माँगना​

जब workflow किसी विकल्प के बाद ही आगे बढ़ना चाहिए, तब n8n Wait node को On Webhook Call के साथ उपयोग करें। Wait node से पहले type: "approval_required" के साथ callback भेजें:

Wait node को Resume: On Webhook Call, HTTP Method: POST और Authentication: Header Auth पर सेट करें। Start workflow के समान Header Auth credential चुनें। Wait node के बाद एक Switch node जोड़ें और उसमें {{ $json.body.decision }} जाँचें।

{
"tenant": "{{ $('Start workflow').first().json.body.integration.tenant }}",
"runId": "{{ $('Start workflow').first().json.body.integration.runId }}",
"eventId": "controle-document",
"type": "approval_required",
"executionId": "{{ $execution.id }}",
"step": {
"id": "controle_document",
"label": "Document नियंत्रित करना"
},
"approval": {
"question": "क्या workflow आगे बढ़ सकता है?",
"context": "पहले तैयार किए गए document की जाँच करें।",
"resumeUrl": "{{ $execution.resumeUrl }}",
"choices": [
{ "value": "approve", "label": "स्वीकृत करें" },
{ "value": "reject", "label": "अस्वीकार करें" }
]
}
}

उपयोगकर्ता को execution विंडो में विकल्प दिखाई देते हैं। विकल्प चुनने के बाद Wait node अन्य बातों के साथ decision प्राप्त करता है। इसके बाद सही अगला चरण तय करने के लिए उदाहरण के तौर पर Switch node का उपयोग करें।

एक choice value में केवल अक्षर, अंक, _ और - हो सकते हैं। label में सामान्य पढ़ने योग्य टेक्स्ट हो सकता है।

प्रोडक्शन callback-url सेट करना​

AI-Corporate के लिए production callback-url है:

https://europe-west1-ai-corporate.cloudfunctions.net/n8nWorkflowCallback

इस URL को हर callback node में स्थायी टेक्स्ट के रूप में न चिपकाएँ। HTTP Request node के URL फ़ील्ड में Expression चुनें और यह उपयोग करें:

{{ $('Start workflow').first().json.body.integration.callbackUrl }}

इस तरह AI-Corporate हर शुरुआत पर अपने आप सही production-url देता है। ऊपर दिया गया स्थायी URL आप परीक्षण के दौरान जाँचने के लिए उपयोग करते हैं कि expression AI-Corporate की ओर इशारा कर रहा है, AI-School या AI-Public की ओर नहीं।

triggerCustomN8nWorkflow, triggerN8nWorkflow और resumeN8nWorkflow callables को ऐप स्वयं कॉल करता है। इन URLs को n8n में सेट करने की आवश्यकता नहीं है।

त्रुटियों को संभालना​

अपेक्षित errors को failed type वाले callback से वापस भेजें। अप्रत्याशित node errors के लिए एक केंद्रीय Error Workflow भी बनाएं:

  1. Error Trigger node के साथ एक नया workflow बनाएं।

  2. फिर Method: POST के साथ एक HTTP Request node जोड़ें।

  3. URL में यह स्थायी production-url भरें:

    https://europe-west1-ai-corporate.cloudfunctions.net/n8nWorkflowExecutionFailed
  4. Authentication: None चुनें और n8n-handihow-name header को platform administrator की secret default value के साथ जोड़ें।

  5. JSON body चुनें और यह पेस्ट करें:

{
"executionId": "{{ $json.execution.id }}",
"workflowId": "{{ $json.workflow.id }}",
"workflowName": "{{ $json.workflow.name }}",
"lastNode": "{{ $json.execution.lastNodeExecuted }}",
"message": "{{ $json.execution.error.message }}"
}
  1. Error Workflow सक्रिय करें।
  2. सामान्य workflow की settings खोलें और Error Workflow में इसे चुनें।

Start workflow के तुरंत बाद कम से कम एक callback executionId: "{{ $execution.id }}" के साथ भेजें। तभी AI-Corporate किसी अप्रत्याशित error को सही execution से जोड़ सकता है।

महत्वपूर्ण सीमाएँ​

  • केवल webhook triggers समर्थित हैं।
  • केवल production webhook URLs समर्थित हैं।
  • /webhook-test/ वाले test-webhook URLs अस्वीकार किए जाते हैं।
  • केवल POST समर्थित है।
  • केवल generic header authentication समर्थित है।
  • app में header value को secret माना जाता है।
  • callback tokens और resume URLs केवल server-side संसाधित होते हैं और उपयोगकर्ताओं के लिए सीधे उपलब्ध नहीं होते।
  • tenant server-side पर logged-in user से निर्धारित होता है, browser से भेजे गए value से नहीं।

समस्याओं का समाधान​

  • 404 या webhook registered नहीं: n8n में workflow सक्रिय करें और production-url उपयोग करें।
  • authentication error: जाँचें कि दोनों systems में header name और value बिल्कुल समान हैं।
  • missing data: जाँचें कि app में field names वही हैं जो n8n अपेक्षा करता है।
  • n8n में request नहीं: जाँचें कि workflow webhook trigger से शुरू होता है और POST उपयोग करता है।
  • execution विंडो चलती रहती है: यदि आपने Het einde van de workflow melden चालू किया है, तो जाँचें कि n8n अंतिम completed, failed या rejected callback भेज रहा है या नहीं। यदि आपको कोई callback अपेक्षित नहीं है, तो registration में तीनों विकल्प बंद कर दें।
  • progress दिखाई नहीं दे रहा: जाँचें कि Tussentijdse voortgang melden registration में चालू है या नहीं, integration object बना रहता है या नहीं, और हर callback का एक unique eventId है या नहीं।
  • approval buttons काम नहीं करते: Wait node, resumeUrl, header authentication और choices[].value में अनुमत characters जाँचें।