How to Use a Custom LLM Provider with Self-Hosted n8n Assistant
Connect a custom LLM provider to self-hosted n8n Assistant via an OpenAI-compatible endpoint, switch models safely, and control costs.
Connect a custom LLM provider to self-hosted n8n Assistant via an OpenAI-compatible endpoint, switch models safely, and control costs.
Learn how to add human-in-the-loop approval to n8n Agent Builder tools, test gated actions in a draft Preview run, and publish only after approvals behave.
Migrate n8n Notion workflows to the v3 node data source model: swap database IDs for data source IDs, fix every operation and the trigger, and test safely.
Upgraded to n8n 2.43.8 and lost expression.evaluate spans? Set one variable, restart every instance, and verify the spans return to your tracing backend.
Fix the n8n Wait node 401 on resume URLs: why the webhook-waiting signature is required, how to forward $execution.resumeUrl intact, and how to patch it.
Fix the n8n Slack Trigger 401 by adding your Slack app signing secret to the n8n credential before the n8n 3.0 upgrade, then re-verify the webhook.
n8n 3.0 turns off Chat Hub by default. Re-enable it with N8N_ENABLED_MODULES, verify the Chat section returns, and plan migration before n8n 4.0 removes it.
Harden a shared self-hosted n8n instance after the October 2026 advisories: patch to 2.44.1, scope credentials by project, and lock nodes, files, and API keys.
Enable native n8n OpenTelemetry tracing: set two environment variables or use Settings > OpenTelemetry, send spans to Jaeger or Grafana, and find slow nodes.
Build an n8n workflow that generates product and social images with Google Gemini Nano Banana 2.1, including cost math, retries, and Google Drive delivery.