Proxy OpenAI-style chat completions to Gemini with async webhooks
Ready for 3.0What this workflow does
This workflow has 13 nodes and runs when an HTTP POST request hits its webhook URL. It uses only n8n's built-in nodes.
How it runs
Trigger: When an HTTP POST request hits its webhook URL.
- Process Attachments (Code): runs custom JavaScript code
- Set Request Parameters (Edit Fields (Set)): sets 4 fields: original_body, callback_config, provider_config…
- If: checks a condition and branches into true / false
- Send 202 Response (Respond to Webhook): sends the response back to the webhook caller
- Strip Callback Data (Sync) (Code): runs custom JavaScript code
- Strip Callback Data (Code): runs custom JavaScript code
- Sync Post to LLM Provider (HTTP Request): calls an HTTP API (POST)
- Post to LLM Provider (HTTP Request): calls an HTTP API (POST)
- Set Sync Response Fields (Edit Fields (Set)): sets 2 fields: response_body, response_code
- Enrich Provider Response (Edit Fields (Set)): sets 4 fields: completion, status_code, callback_config…
…plus 2 more steps. See the full node list below.
Before you upgrade to n8n 3.0
Nothing in this workflow is removed in n8n 3.0, so it should import and run after the upgrade.
Nodes used (6)
- Webhook
n8n-nodes-base.webhook - Edit Fields (Set)
n8n-nodes-base.set - If
n8n-nodes-base.if - Respond to Webhook
n8n-nodes-base.respondToWebhook - Code
n8n-nodes-base.code - HTTP Request
n8n-nodes-base.httpRequest
From the author
Quick overview This workflow exposes an OpenAI-compatible /v1/chat/completions endpoint in n8n that forwards requests (including optional file attachments) to a configurable LLM HTTP provider, supporting both synchronous replies and asynchronous processing…