ChatMaxima Docs
Studio

Webhook బ్లాక్ - మీ చాట్‌బాట్ ఫ్లోలో ఇన్‌బౌండ్ HTTP కాల్‌లను స్వీకరించండి

మీ ChatMaxima చాట్‌బాట్ ఫ్లోను పాజ్ చేసి బాహ్య HTTP కాల్ కోసం వేచి ఉండండి. పేలోడ్‌లను స్వీకరించండి, ఫ్లోను పునఃప్రారంభించండి మరియు కాలర్‌కు కస్టమ్ HTTP ప్రతిస్పందనలను తిరిగి పంపండి.

అవలోకనం

Webhook బ్లాక్ ఒక బాహ్య సిస్టమ్ HTTP ద్వారా మీ చాట్‌బాట్‌ను కాల్ చేయడానికి అనుమతిస్తుంది. దీన్ని రెండు విధాలుగా ఉపయోగించవచ్చు: ఫ్లోయొక్క మొదటి బ్లాక్గా (webhook స్వయంగా కన్వర్సేషన్‌ను ప్రారంభిస్తుంది), లేదా కన్వర్సేషన్‌ను పాజ్ చేసి దాన్ని పునఃప్రారంభించడానికి బాహ్య callback కోసం వేచి ఉండే mid-flow బ్లాక్గా. రెండు సందర్భాల్లో, ఇన్‌కమింగ్ పేలోడ్ పార్స్ చేయబడి తదుపరి బ్లాక్‌లకు వేరియబుల్స్‌గా అందుబాటులో ఉంచబడుతుంది. మీరు ఐచ్ఛికంగా Webhook Response Blockను ఉపయోగించి కాలర్‌కు కస్టమ్ HTTP ప్రతిస్పందనను తిరిగి పంపవచ్చు.

ఇది API Blockకు విలోమం. API Block అవుట్‌బౌండ్ అభ్యర్థనలను పంపుతుంది. Webhook Block ఇన్‌బౌండ్ అభ్యర్థనల కోసం వింటుంది. సాధారణ వినియోగ సందర్భాలలో బాహ్య ఈవెంట్ నుండి కొత్త కన్వర్సేషన్‌ను ప్రారంభించడం (ఫారమ్ సబ్‌మిషన్, CRM రికార్డ్ సృష్టి, n8n లేదా Zapier వంటి iPaaS ట్రిగర్), పేమెంట్ గేట్‌వే callback కోసం వేచి ఉండడం, థర్డ్-పార్టీ SMS ప్రొవైడర్ నుండి OTP డెలివరీ నిర్ధారణను స్వీకరించడం, దీర్ఘకాలిక బ్యాకెండ్ జాబ్ పూర్తయినప్పుడు తెలియజేయడం, లేదా బాహ్య యాప్ నుండి అసమకాలిక అప్‌డేట్‌లను అంగీకరించడం ఉన్నాయి.

Webhook బ్లాక్ vs API బ్లాక్

అంశంAPI బ్లాక్Webhook బ్లాక్
దిశఅవుట్‌బౌండ్ (బాట్ APIని కాల్ చేస్తుంది)ఇన్‌బౌండ్ (బాహ్య సిస్టమ్ బాట్‌ను కాల్ చేస్తుంది)
ట్రిగర్ఫ్లో బ్లాక్‌ను చేరుకున్నప్పుడు ఆటోమేటిక్బాహ్య HTTP POST ఫ్లోను ప్రారంభిస్తుంది లేదా పునఃప్రారంభిస్తుంది
ప్లేస్‌మెంట్Mid-flow మాత్రమేమొదటి బ్లాక్ లేదా mid-flow
వెయిట్ ప్రవర్తనసింక్రోనస్, 30 సెకన్ల టైమ్‌అవుట్రాకపై ఫ్లోను ప్రారంభిస్తుంది, లేదా కాల్ వచ్చేవరకు ఫ్లోను పాజ్ చేస్తుంది
సాధారణ వినియోగండేటాను చూడటం, అప్‌డేట్‌లను పుష్ చేయడంబాహ్య ఈవెంట్‌ల నుండి కన్వర్సేషన్‌లను ప్రారంభించడం, అసమకాలిక callbacks కోసం వేచి ఉండడం
ప్రతిస్పందన నిర్వహణప్రతిస్పందన బాడీని వేరియబుల్స్‌లోకి పార్స్ చేస్తుందిఇన్‌కమింగ్ పేలోడ్ వేరియబుల్స్ అవుతుంది

దీన్ని ఎక్కడ కనుగొనాలి

  1. Studioలో మీ చాట్‌బాట్‌ను తెరవండి
  2. ఎడమ సైడ్‌బార్ నుండి Webhook బ్లాక్‌ను క్యాన్వాస్‌పైకి డ్రాగ్ చేయండి
  3. దాన్ని మీ ఫ్లోయొక్క మొదటి బ్లాక్గా ఉంచండి (బాహ్య ఈవెంట్ నుండి కన్వర్సేషన్‌ను ప్రారంభించడానికి) లేదా ఏదైనా మునుపటి బ్లాక్ తర్వాత కనెక్ట్ చేయండి (mid-flow పాజ్ చేసి callback కోసం వేచి ఉండటానికి)
  4. దాన్ని కాన్ఫిగర్ చేయడానికి బ్లాక్‌ను డబుల్-క్లిక్ చేయండి

కాలర్‌కు కస్టమ్ HTTP ప్రతిస్పందనను తిరిగి పంపడానికి, Webhook బ్లాక్ తర్వాత వెంటనే Webhook Response బ్లాక్‌ను జోడించండి.

Webhook మొదటి బ్లాక్‌గా

Webhook బ్లాక్ ఫ్లోయొక్క మొదటి బ్లాక్ అయినప్పుడు, ఇంకా యాక్టివ్ కన్వర్సేషన్ లేదు. బాహ్య POST కన్వర్సేషన్‌ను సృష్టించి, పేలోడ్‌ను వేరియబుల్స్‌లోకి పార్స్ చేసి, ఫ్లోను మొదటి నుండి ప్రారంభిస్తుంది. ఈ నమూనాను ఉపయోగించాల్సిన సందర్భాలు:

  • మీ CRMలో కొత్త లీడ్ సృష్టించబడింది మరియు బాట్ చేరుకోవాలని మీరు కోరుకుంటారు
  • మీ వెబ్‌సైట్‌లో ఫారమ్ సబ్‌మిట్ చేయబడింది మరియు బాట్ ఫాలో అప్ చేయాలని మీరు కోరుకుంటారు
  • n8n, Zapier, లేదా Make వర్క్‌ఫ్లో కొత్త చాట్ సెషన్‌ను ట్రిగర్ చేస్తుంది
  • ఒక బ్యాకెండ్ ఈవెంట్ (ఆర్డర్ ప్లేస్ చేయబడింది, సపోర్ట్ టికెట్ తెరవబడింది) బాట్ కన్వర్సేషన్‌ను ప్రారంభించాలి

Webhook Mid-Flow

Webhook బ్లాక్ మరొక బ్లాక్ తర్వాత ఉంచబడినప్పుడు, బాహ్య POST వచ్చేవరకు ఆ పాయింట్ వద్ద ఫ్లో పాజ్ అవుతుంది. మీరు బాహ్య సిస్టమ్‌కు అప్పగించి, దాని అసమకాలిక ప్రతిస్పందన కోసం వేచి ఉండి, ఆపై అది తిరిగి ఇచ్చిన దాని ఆధారంగా ఫ్లోను కొనసాగించాల్సిన అవసరం వచ్చినప్పుడు ఈ నమూనాను ఉపయోగించండి.

ఇది ఎలా పనిచేస్తుంది

మొదటి-బ్లాక్ మోడ్

External system POSTs to webhook URL


   New conversation is created


   Payload parsed into variables


   Flow starts from the next block


   Webhook Response sent (optional)

Mid-Flow మోడ్

Bot flow runs ──▶ Reaches Webhook Block ──▶ Flow pauses

                             External system POSTs to webhook URL


                            Payload parsed into variables


                     Webhook Response sent (optional)


                     Flow continues to next block

mid-flow మోడ్‌లో, బాట్ పాజ్ అయినప్పుడు ప్రస్తుత బ్లాక్ స్థానాన్ని నిల్వ చేస్తుంది. బాహ్య POST webhook URLకు వచ్చినప్పుడు, సిస్టమ్ దాన్ని పాజ్ చేయబడిన కన్వర్సేషన్‌తో సరిపోల్చి, ఆ బ్లాక్ నుండి పునఃప్రారంభించి, తదుపరి కొనసాగుతుంది.

కాన్ఫిగరేషన్

స్టెప్ 1: Webhook బ్లాక్‌ను ఫ్లోలో ఉంచండి

ఫ్లో ప్రారంభించాల్సిన లేదా బాహ్య ఈవెంట్ కోసం వేచి ఉండాల్సిన పాయింట్ వద్ద బ్లాక్‌ను క్యాన్వాస్‌పైకి డ్రాగ్ చేయండి. ఉదాహరణకు:

  • CRM, ఫారమ్, లేదా iPaaS సాధనం కొత్త చాట్ కన్వర్సేషన్‌ను ప్రారంభించడానికి మొదటి బ్లాక్గా
  • పేమెంట్ వివరాలను క్యాప్చర్ చేసిన తర్వాత, పేమెంట్ గేట్‌వే నిర్ధారణ కోసం వేచి ఉండటానికి
  • API బ్లాక్ ద్వారా బ్యాకెండ్ జాబ్‌ను ట్రిగర్ చేసిన తర్వాత, job-complete నోటిఫికేషన్ కోసం వేచి ఉండటానికి

స్టెప్ 2: Webhook URLను కాపీ చేయండి

ప్రతి Webhook బ్లాక్ బ్లాక్ కాన్ఫిగరేషన్‌లో చూపబడిన ప్రత్యేక URLను బహిర్గతం చేస్తుంది. ఫార్మాట్:

https://chatmaxima.com/webhooks/chatbot/<bot_token>/<block_id>/

ఈ URLను బాహ్య సిస్టమ్‌కు దాని POST అభ్యర్థన గమ్యస్థానంగా పాస్ చేయండి. iPaaS సాధనాల కోసం (n8n, Zapier, Make) మీరు దాన్ని HTTP స్టెప్‌లో అతికిస్తారు. CRMలు మరియు ఫారమ్ బిల్డర్‌ల కోసం, దాన్ని వారి డ్యాష్‌బోర్డ్‌లో అవుట్‌గోయింగ్ webhookగా కాన్ఫిగర్ చేయండి. పేమెంట్ గేట్‌వేలు మరియు అసమకాలిక బ్యాకెండ్‌ల కోసం, మీరు పని ప్రారంభించినప్పుడు దాన్ని callback URLగా సెట్ చేయండి.

స్టెప్ 3: కాలర్‌ను అథెంటికేట్ చేయండి

webhook URL Authorization హెడర్‌లో Bearer టోకెన్‌ను అంగీకరిస్తుంది. webhook మీరు నమ్మే సిస్టమ్‌ల నుండి మాత్రమే కాల్‌లను అంగీకరించేలా బ్లాక్ కాన్ఫిగరేషన్‌లో చూపబడిన టోకెన్‌ను ఉపయోగించండి.

curl -X POST https://chatmaxima.com/webhooks/chatbot/<bot_token>/<block_id>/ \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer <your_token>' \
  --data '{
    "type": "Conversation",
    "channel": "",
    "account_alias": "",
    "reference_id": "",
    "data": {
      "name": ""
    }
  }'

పేలోడ్ ఆకారం

ఫీల్డ్ప్రయోజనం
typeఈవెంట్ రకం, సాధారణంగా చాట్‌ను ప్రారంభించడానికి లేదా పునఃప్రారంభించడానికి Conversation
channelకన్వర్సేషన్ ఉపయోగించాల్సిన ఛానెల్ (ఉదా. whatsapp, website). డిఫాల్ట్‌ను ఉపయోగించడానికి ఖాళీగా వదిలేయండి
account_aliasబాట్ అనేక అకౌంట్‌ల అంతటా షేర్ చేయబడినప్పుడు టీమ్ alias
reference_idమీ సిస్టమ్‌లోని రికార్డ్‌కు కన్వర్సేషన్‌ను తిరిగి కట్టడానికి మీరు ఉపయోగించగల బాహ్య ఐడెంటిఫైయర్
dataమీరు వేరియబుల్స్‌గా పాస్ చేయాలనుకునే ఏ ఫీల్డ్‌లనైనా కలిగి ఉన్న ఆబ్జెక్ట్ (ఉదా. name, email, phone, కస్టమ్ ఫీల్డ్‌లు)

స్టెప్ 4: ఇన్‌కమింగ్ పేలోడ్ ఫీల్డ్‌లను సూచించండి

POST వచ్చినప్పుడు, data ఆబ్జెక్ట్ పార్స్ చేయబడుతుంది మరియు ప్రతి ఫీల్డ్ అన్ని తదుపరి బ్లాక్‌లకు అందుబాటులో ఉన్న వేరియబుల్ అవుతుంది.

ఇలాంటి పేలోడ్ కోసం:

{
  "type": "Conversation",
  "channel": "whatsapp",
  "reference_id": "ORDER-9981",
  "data": {
    "name": "Priya",
    "phone": "+919000000000",
    "order_id": "ORDER-9981",
    "customer": {
      "email": "priya@example.com"
    }
  }
}

మీరు సూచించవచ్చు:

  • Priya కోసం {name}
  • +919000000000 కోసం {phone}
  • ORDER-9981 కోసం {order_id}
  • నెస్టెడ్ ఫీల్డ్‌ల కోసం {customer.email}
  • టాప్-లెవల్ మెటాడేటా కోసం {reference_id}

స్టెప్ 5: సబ్‌మిట్ చేసి సేవ్ చేయండి

బ్లాక్ మోడల్‌లో Submitపై క్లిక్ చేసి, ఆపై టాప్ బార్‌లో Save Changes ఉపయోగించి ఫ్లోను సేవ్ చేయండి.

Webhook Response బ్లాక్

కాలర్ నిర్దిష్ట HTTP ప్రతిస్పందనను ఆశించినప్పుడు Webhook బ్లాక్‌ను **Webhook Response Block**తో జతచేయండి. response బ్లాక్ లేకుండా, బాట్ {"status":"success"}తో డిఫాల్ట్ 200 OKను తిరిగి ఇస్తుంది.

Webhook Response Block మీరు కాలర్‌కు తిరిగి పంపే స్టేటస్ కోడ్ (ఉదా. 201, 400, 500), content type (application/json, application/xml, text/plain, text/html), మరియు ప్రతిస్పందన బాడీని కస్టమైజ్ చేయడానికి అనుమతిస్తుంది. మీరు {variable_name} సింటాక్స్‌తో ఫ్లో వేరియబుల్స్‌ను చొప్పించవచ్చు.

సాధారణ నమూనాలు:

  • iPaaS సాధనాల కోసం కొత్త {conversation_id}తో 201 Createdను తిరిగి ఇవ్వండి
  • పేలోడ్ చెల్లనిది అయినప్పుడు లోప ఫీల్డ్‌తో 400ను తిరిగి ఇవ్వండి
  • SMS డెలివరీ callbacks కోసం text/plain OKను తిరిగి ఇవ్వండి
  • లెగసీ SOAP ఇంటిగ్రేషన్‌ల కోసం XMLను తిరిగి ఇవ్వండి

కాన్ఫిగరేషన్ ఎంపికలు, ఉదాహరణలు మరియు ట్రబుల్‌షూటింగ్ కోసం పూర్తి Webhook Response Block డాక్యుమెంటేషన్ను చూడండి.

ఉత్తమ పద్ధతులు

  • ఇన్‌కమింగ్ పేలోడ్‌లను ఎల్లప్పుడూ ధృవీకరించండి. ముందుకు సాగడానికి ముందు status == "success" వంటి ఫీల్డ్‌లను వెరిఫై చేయడానికి Webhook బ్లాక్ తర్వాత Condition బ్లాక్‌ను ఉపయోగించండి
  • కాలర్ (పేమెంట్ గేట్‌వే, SMS ప్రొవైడర్, మొదలైనవి) నిర్దిష్ట acknowledgement ఫార్మాట్‌ను ఆశించినప్పుడు Webhook Response బ్లాక్‌ను ఉపయోగించండి. దాని లేకుండా, కాలర్‌కు సాధారణ 200 OK వస్తుంది
  • వేరే చోట అర్థవంతమైన టైమ్‌అవుట్‌ను సెట్ చేయండి. Webhook బ్లాక్ స్వయంగా టైమ్‌అవుట్ అవ్వదు, కాబట్టి అనిశ్చితంగా పాజ్‌లో ఉండే ఫ్లోలను నివారించడానికి దాన్ని Inactivity Timeoutతో కలపండి
  • webhook URLను సురక్షితం చేయండి. URLలోని టోకెన్ ప్రతి కన్వర్సేషన్‌కు ప్రత్యేకం. URLను బహిరంగంగా బహిర్గతం చేయకండి లేదా యూజర్ చదవగల సిస్టమ్‌లలో దాన్ని లాగ్ చేయకండి
  • వైఫల్య సందర్భాన్ని నిర్వహించండి. ఇన్‌కమింగ్ పేలోడ్ ఆధారంగా ఫ్లోను శాఖలుగా విభజించండి. బాహ్య ఈవెంట్ వైఫల్యాన్ని సూచిస్తే, రికవరీ సందేశాన్ని పంపండి లేదా ఏజెంట్‌కు రూట్ చేయండి

సాధారణ వినియోగ సందర్భాలు

CRM లీడ్ కన్వర్సేషన్‌ను సృష్టిస్తుంది (మొదటి-బ్లాక్)

మీ CRMలో కొత్త లీడ్ జోడించబడింది, మరియు బాట్ వారిని క్వాలిఫై చేయడానికి WhatsApp కన్వర్సేషన్‌ను తెరుస్తుంది.

  1. Webhook Block (మొదటి బ్లాక్): CRM phone, name, sourceతో లీడ్ పేలోడ్‌ను POST చేస్తుంది
  2. Message Block: Hi {name}, thanks for your interest!
  3. Question Block: క్వాలిఫైయింగ్ ప్రశ్నలను అడగండి
  4. API Block: క్వాలిఫైడ్ డేటాను తిరిగి CRMకు పుష్ చేయండి

n8n లేదా Zapier ట్రిగర్ (మొదటి-బ్లాక్)

ఒక నిర్దిష్ట ఈవెంట్ జరిగినప్పుడు (కొత్త Shopify ఆర్డర్, Typeform సబ్‌మిషన్, మొదలైనవి) ఒక ఆటోమేషన్ సాధనం webhookను ఫైర్ చేస్తుంది, మరియు బాట్ కస్టమర్‌తో ఫాలో అప్ చేస్తుంది.

  1. Webhook Block (మొదటి బ్లాక్): n8n {"phone":"...", "order_id":"..."}ను POST చేస్తుంది
  2. Message Block: Your order {order_id} has shipped!

పేమెంట్ గేట్‌వే Callback

యూజర్ పేమెంట్‌ను ప్రారంభిస్తారు, బాట్ వారిని పేమెంట్ పేజీకి పంపి, ఆపై గేట్‌వే ఫలితాన్ని POST చేయడానికి వేచి ఉంటుంది.

  1. API Block: పేమెంట్ సెషన్‌ను సృష్టించండి, payment_urlను నిల్వ చేయండి
  2. Message Block: యూజర్‌కు payment_urlను పంపండి
  3. Webhook Block: ఫ్లోను పాజ్ చేయండి, webhook URLను callbackగా గేట్‌వేకు పాస్ చేయండి
  4. Condition Block: {status} == "success"పై శాఖలుగా విభజించండి
  5. Webhook Response Block: గేట్‌వేకు {"received":true}ను తిరిగి ఇవ్వండి

అసమకాలిక జాబ్ నోటిఫికేషన్

బాట్ ఒక దీర్ఘకాలిక రిపోర్ట్ జనరేషన్ జాబ్‌ను ట్రిగర్ చేసి, పూర్తి కోసం వేచి ఉండి, ఆపై యూజర్‌కు రిపోర్ట్ లింక్‌ను పంపుతుంది.

  1. API Block: జాబ్‌ను సబ్‌మిట్ చేయండి, job_idను నిల్వ చేయండి, callbackగా webhook URLను చేర్చండి
  2. Message Block: "Generating your report, this may take a minute..."
  3. Webhook Block: job-done callback కోసం వేచి ఉండండి
  4. Message Block: Your report is ready: {report_url}

థర్డ్-పార్టీ OTP డెలివరీ స్థితి

బాట్ డెలివరీని నిర్ధారించడానికి webhooks ఉపయోగించే బాహ్య SMS ప్రొవైడర్ ద్వారా OTPను పంపుతుంది.

  1. API Block: OTP సెండ్‌ను ట్రిగర్ చేయండి, webhook URLను పాస్ చేయండి
  2. Webhook Block: డెలివరీ స్థితి కోసం వేచి ఉండండి
  3. Condition Block: {delivery_status}పై శాఖలుగా విభజించండి
  4. Message Block: OTP కోడ్‌ను అడగండి లేదా డెలివరీ వైఫల్యానికి క్షమాపణ చెప్పండి

బాహ్య ఫారమ్ సబ్‌మిషన్

ఒక ప్రత్యేక వెబ్ యాప్ అదనపు సమాచారాన్ని సేకరించి యూజర్ పూర్తి చేసినప్పుడు దాన్ని బాట్‌కు POST చేస్తుంది.

  1. Message Block: యూజర్‌కు ఫారమ్ URLను పంపండి
  2. Webhook Block: ఫారమ్ సబ్‌మిషన్ కోసం వేచి ఉండండి
  3. Message Block: Thanks, we received your {form_field}

ట్రబుల్‌షూటింగ్

ఫ్లో Webhook బ్లాక్‌పై ఇరుక్కుపోయింది (mid-flow)

  1. బాహ్య సిస్టమ్ వాస్తవంగా webhook URLకు POST చేసిందని నిర్ధారించండి. వారి డెలివరీ లాగ్‌లను తనిఖీ చేయండి
  2. URL బాహ్య సిస్టమ్ నుండి చేరుకోగలదని ధృవీకరించండి (ఫైర్‌వాల్ లేదా IP allowlist ద్వారా బ్లాక్ చేయబడలేదు)
  3. URL పూర్తి పాత్ మరియు ట్రెయిలింగ్ టోకెన్‌ను కలిగి ఉందని నిర్ధారించండి
  4. ఎప్పుడూ callback స్వీకరించని కన్వర్సేషన్‌లను ఆటో-క్లోజ్ చేయడానికి Inactivity Timeoutతో కలపండి

మొదటి-బ్లాక్ webhook కన్వర్సేషన్‌ను ప్రారంభించడం లేదు

  1. Webhook బ్లాక్ ఫ్లోలో మొట్టమొదటి బ్లాక్ అని నిర్ధారించండి (ఏ ఇతర బ్లాక్ దానిలోకి కనెక్ట్ అవ్వదు)
  2. బాట్ కన్వర్సేషన్‌ను సృష్టించడానికి ఉపయోగించగల గ్రహీత ఐడెంటిఫైయర్ (phone, email, లేదా visitor ID)ను పేలోడ్ కలిగి ఉందని ధృవీకరించండి
  3. బాట్ పబ్లిష్ చేయబడిందని మరియు ఛానెల్ (WhatsApp, website widget, మొదలైనవి) కనెక్ట్ చేయబడిందని తనిఖీ చేయండి
  4. కాలర్‌కు తిరిగి ఇవ్వబడిన ప్రతిస్పందన స్థితిని తనిఖీ చేయండి. 4xx పేలోడ్ తిరస్కరించబడిందని సూచిస్తుంది

ఇన్‌కమింగ్ పేలోడ్ ఫీల్డ్‌లు తదుపరి బ్లాక్‌లలో ఖాళీగా ఉన్నాయి

  1. ఇన్‌కమింగ్ POSTయొక్క Content-Type application/json లేదా మద్దతిచ్చే ఫారమ్ రకం అని నిర్ధారించండి
  2. పేలోడ్‌లోని ఖచ్చితమైన ఫీల్డ్ పేర్లను తనిఖీ చేయండి. వేరియబుల్ పేర్లు case-sensitive
  3. నెస్టెడ్ ఫీల్డ్‌ల కోసం, డాట్ నొటేషన్‌ను ఉపయోగించండి: {customer.email}, {customer_email} కాదు
  4. వాస్తవంగా ఏమి స్వీకరించబడిందో చూడటానికి conversation logలో రా ఇన్‌కమింగ్ పేలోడ్‌ను తనిఖీ చేయండి

కాలర్‌కు నా కస్టమ్ ప్రతిస్పందనకు బదులుగా సాధారణ 200 OK వస్తుంది

  1. Webhook బ్లాక్ తర్వాత మీరు Webhook Response బ్లాక్‌ను జోడించారని నిర్ధారించండి
  2. ఫ్లో గ్రాఫ్‌లో response బ్లాక్ చేరుకోగలదని ధృవీకరించండి. Condition బ్లాక్ దాని చుట్టూ రూట్ చేస్తుండవచ్చు
  3. Submit బటన్ క్లిక్ చేయబడిందని మరియు ఫ్లో సేవ్ చేయబడిందని రెండుసార్లు తనిఖీ చేయండి

బాహ్య సిస్టమ్ webhook ప్రతిస్పందనను తిరస్కరిస్తుంది

  1. Content-Type కాలర్ ఆశించే దానితో సరిపోతుందని నిర్ధారించండి (ఉదాహరణకు, application/json vs text/plain)
  2. ప్రతిస్పందన బాడీ well-formed అని ధృవీకరించండి. మూసివేయని JSON ఆబ్జెక్ట్ కఠినమైన కాలర్‌లను రీట్రై చేసేలా చేస్తుంది
  3. HTTP స్థితి కోడ్‌ను తనిఖీ చేయండి. కొన్ని కాలర్‌లు 201 లేదా 202 కాకుండా 200ను మాత్రమే అంగీకరిస్తాయి

అదే కన్వర్సేషన్ కోసం అనేక POSTలు వస్తాయి

కొన్ని బాహ్య సిస్టమ్‌లు మొదటి డెలివరీ విఫలమైందని భావిస్తే webhooksను రీట్రై చేస్తాయి. webhook URL ప్రతి కన్వర్సేషన్‌కు idempotent, కాబట్టి మొదటి చెల్లుబాటు అయ్యే POST మాత్రమే ఫ్లోను పునఃప్రారంభిస్తుంది. తదుపరి POSTలు ఫ్లోను మళ్లీ ముందుకు తీసుకెళ్లకుండా కాన్ఫిగర్ చేయబడిన ప్రతిస్పందనను స్వీకరిస్తాయి.

తదుపరి స్టెప్‌లు

  • Webhook Response బ్లాక్ - కాలర్‌కు కస్టమ్ HTTP ప్రతిస్పందనలను తిరిగి పంపండి
  • API బ్లాక్ - ఫ్లో నుండి బాహ్య APIలను కాల్ చేయండి
  • Inactivity Timeout - చాలా కాలం పాజ్‌లో ఉండే కన్వర్సేషన్‌లను ఆటో-క్లోజ్ చేయండి
  • Conversation End బ్లాక్ - రీస్టార్ట్ బటన్‌తో కన్వర్సేషన్‌లను మాన్యువల్‌గా ముగించండి
  • Studio అవలోకనం - అన్ని బ్లాక్ రకాలు మరియు ఫ్లో బిల్డర్ ఫీచర్‌లను అన్వేషించండి

ఈ పేజీలో

అవలోకనంWebhook బ్లాక్ vs API బ్లాక్దీన్ని ఎక్కడ కనుగొనాలిWebhook మొదటి బ్లాక్‌గాWebhook Mid-Flowఇది ఎలా పనిచేస్తుందిమొదటి-బ్లాక్ మోడ్Mid-Flow మోడ్కాన్ఫిగరేషన్స్టెప్ 1: Webhook బ్లాక్‌ను ఫ్లోలో ఉంచండిస్టెప్ 2: Webhook URLను కాపీ చేయండిస్టెప్ 3: కాలర్‌ను అథెంటికేట్ చేయండిపేలోడ్ ఆకారంస్టెప్ 4: ఇన్‌కమింగ్ పేలోడ్ ఫీల్డ్‌లను సూచించండిస్టెప్ 5: సబ్‌మిట్ చేసి సేవ్ చేయండిWebhook Response బ్లాక్ఉత్తమ పద్ధతులుసాధారణ వినియోగ సందర్భాలుCRM లీడ్ కన్వర్సేషన్‌ను సృష్టిస్తుంది (మొదటి-బ్లాక్)n8n లేదా Zapier ట్రిగర్ (మొదటి-బ్లాక్)పేమెంట్ గేట్‌వే Callbackఅసమకాలిక జాబ్ నోటిఫికేషన్థర్డ్-పార్టీ OTP డెలివరీ స్థితిబాహ్య ఫారమ్ సబ్‌మిషన్ట్రబుల్‌షూటింగ్ఫ్లో Webhook బ్లాక్‌పై ఇరుక్కుపోయింది (mid-flow)మొదటి-బ్లాక్ webhook కన్వర్సేషన్‌ను ప్రారంభించడం లేదుఇన్‌కమింగ్ పేలోడ్ ఫీల్డ్‌లు తదుపరి బ్లాక్‌లలో ఖాళీగా ఉన్నాయికాలర్‌కు నా కస్టమ్ ప్రతిస్పందనకు బదులుగా సాధారణ 200 OK వస్తుందిబాహ్య సిస్టమ్ webhook ప్రతిస్పందనను తిరస్కరిస్తుందిఅదే కన్వర్సేషన్ కోసం అనేక POSTలు వస్తాయితదుపరి స్టెప్‌లు