Ist es möglich, dass AI Produktbilder an Benutzer sendet

Describe the problem/error/question

I have a workflow in n8n where the first AI agent handles user questions like product price inquiries.
Now I want to make it smarter:
If the user asks for a product picture after getting the price,
a second AI agent should automatically send the product image to the Facebook Messenger user.
Is this possible to implement in n8n?
If yes, what would be the best approach for handling this flow between two agents and sending the image through Facebook Messenger API? and I am using Airtable for product information.
Thanks in advance!

What is the error message (if any)?

Please share your workflow

Share the output returned by the last node

  • n8n version:
  • Database (default: SQLite):
  • n8n EXECUTIONS_PROCESS setting (default: own, main):
  • Running n8n via (Docker, npm, n8n cloud, desktop app):
  • Operating system:

@Abidul_Haque_Shohel auf jeden Fall möglich, aber die Two-Agent-Aufteilung ist eigentlich nicht das richtige Pattern dafür — erzeugt Latenz und gibt dir zwei Fehlerpunkte statt einem. Das saubere Setup ist ein einzelner AI-Agent, der strukturiertes JSON ausgibt, und dann routest du im Workflow basierend auf dem, was das Modell sagt, das es tun will. Der Flow endet bei Messenger Webhook → AI Agent → Switch on intent → Airtable lookup → Messenger Send API.

Gib für den Agent etwas wie folgendes aus:

{
  "intent": "image_request",
  "product_id": "rec123abc",
  "message_text": "hier ist das Foto des Black Cycle Pro, das du angefordert hast"
}

dann Switch on intent, mache ein Airtable lookup nach product_id, um die Bild-URL zu bekommen, sende an Messenger.

ein großes Gotcha — Airtable Attachment-URLs sind SIGNIERT und verfallen nach etwa 2 Stunden seit ihrer Sicherheitsänderung vor einer Weile. Wenn du die Raw Airtable-URL direkt an Messenger weiterleitest, funktioniert das bei sofortigen Sends, bricht aber zeitweilig ab, wenn Messenger das Bild lazy-loaded und die Signatur bereits ungültig ist. Die saubere Lösung ist das Uploaden auf Mesengers attachment_upload Endpoint, danach bekommst du eine permanente attachment_id zurück, dann referenzierst du diese id bei nachfolgenden Sends. Eine schnellere Alternative ist das Neuhosten auf stabilem Storage (s3, cloudflare r2, supabase storage) und das Einfügen dieser stabilen URL in Airtable statt des nativen Attachment-Felds.

der Messenger Send API Aufruf für ein Bild sieht wie folgt aus:

{
  "recipient": {"id": "<user_psid>"},
  "message": {
    "attachment": {
      "type": "image",
      "payload": {
        "url": "https://your-cdn/product-123.jpg",
        "is_reusable": true
      }
    }
  }
}

wenn du is_reusable auf true setzt, cached FB es server-seitig, sodass wiederholte Sends desselben Produktbildes nicht jedes Mal neu heruntergeladen werden, großer Latenzgewinn, wenn dein Katalog aufgebaut ist.

Hallo, ich bin Jay, ein verifizierter n8n Creator aus Vietnam.

Ich habe tatsächlich einen kostenlosen Workflow erstellt und geteilt, der genau diesen Anwendungsfall abdeckt:

Build a Facebook Messenger customer service AI chatbot with Google Gemini

Es ist einer der grundlegenderen Messenger + KI-Workflows, die ich veröffentlicht habe, und er hat in nur 2 Monaten etwa 2.600 Nutzungen erreicht. Das zeigt mir, dass viele Builder versuchen, das gleiche Problem zu lösen.

In meinem Fall habe ich es mit einer einfacheren Architektur gelöst. Anstatt die Logik auf mehrere KI-Agenten zu verteilen, habe ich einen einzelnen KI-Agenten gezwungen, strukturiertes JSON mit drei Feldern zurückzugeben: text, image und video.

{

“text”: “Hello!”

“image”: “https://nguyenthieutoan.com/image.png

“video”: “https://nguyenthieutoan.com/video.mp4

}

Bei diesem Setup muss die KI, wenn sie eine Antwort mit Produktbildern oder -videos senden muss, nur die relevanten Felder in einer Antwort ausfüllen. Das bedeutet, dass ein einzelner Agent Text und mehrere Medien-Assets in der gleichen Ausführung senden kann, was hilft, die Latenz zu reduzieren, den Workflow sauberer zu halten und es einfacher macht, die vollständige Interaktion im Gesprächsverlauf zu speichern.

Dieser Ansatz könnte für deinen Anwendungsfall hilfreich sein.