Google Document AI HTTP Request Node schlägt mit Base64-Decodierungsfehler bei Form Binary Output fehl

Hallo Community, ich verwende einen HTTP Request-Node, um ein Base64-codiertes Dokument an Google Document AI (Endpunkt process) zu senden, das von einem n8n Form Trigger kommt.

Input Binary Key: Upload_Identity_Document__CNIE__Residence_Permit__or_Passport_

Payload-Format, das im HTTP Request Node verwendet wird (JSON):

JSON

{
  "rawDocument": {
    "mimeType": "={{ $binary['Upload_Identity_Document__CNIE__Residence_Permit__or_Passport_'].mimeType }}",
    "content": "={{ $binary['Upload_Identity_Document__CNIE__Residence_Permit__or_Passport_'].data }}"
  }
}

Erhaltener Fehler: Bad request - please check your parameters: Invalid value at 'raw_document.content' {TYPE_BYTES}, Base64 decoding failed for "={{ $binary... }}"

Wie kann ich die Base64-Binärzeichenfolge von einem Form Trigger ordnungsgemäß direkt in den Raw-JSON-Body übergeben, ohne dass n8n den Ausdruck als literalen String behandelt oder undefined zurückgibt?

Hey @Samir_Dioua, während du auf eine Antwort wartest, sind hier einige Dinge, die dir helfen könnten:

Empfohlene Ressourcen

Automatisch auf deine Frage abgestimmt.

Dokumentation:

Forum:

@achamm, @Pedro_Souss, @Sudhanshu_Sharma - ihr habt bei ähnlichen Problemen schon geholfen, könnt ihr mal einen Blick drauf werfen?

Automatisch vorgeschlagen vom Community-Bot von n8n. Das ist ein Pilotprojekt – gib bitte hier Feedback.

Hallo @Samir_Dioua Willkommen!
Der Fehler gibt dein Ausdruck wörtlich zurück, also ist das JSON-Body-Feld noch im Fixed-Modus und die =-Präfixe werden als literaler Text ausgegeben. Das = ist der Marker, den n8n intern schreibt, sobald ein Feld in den Expression-Modus umgeschaltet wird. Es in ein Fixed-Feld einzutippen schaltet es nicht um.
Die Binary-Datei braucht auch ihren eigenen Schritt. In n8n 2.x leben Binary-Daten im Dateisystem oder in der Datenbank statt im Item, daher ist $binary.<key>.data eine Referenz statt der Base64-Zeichenkette. Füge zwischen dem Form-Trigger und dem HTTP Request einen Extract from File Node ein, stelle Operation auf „Move File to Base64 String