Webhook Integration
You have a feedback form and an n8n workflow, but they don't talk to each other yet. In this lesson you'll connect them with webhooks – your app sends feedback to n8n, n8n analyzes it and sends the enriched result back, and your app stores it in Neon. Same build loop as always: plan, build, preview, refine, ship to main.
• An outgoing webhook: your app → n8n (sends the feedback).
• An incoming webhook: n8n → your app (returns AI analysis).
• Storage of the enriched feedback in your Neon database.
1. Understanding APIs and webhooks
Two ways systems talk to each other:
- API – you ask, they answer. Like ordering at a restaurant: your app asks a service for something and gets a response. You control when it happens.
- Webhook – they notify you. Like a doorbell: a service pushes data to your app the moment something happens. The service controls when.
For your feedback system you'll use both directions: your app calls n8n (outgoing), and n8n calls your app back with the AI analysis (incoming webhook).
Outcome: You understand webhooks and why they fit this feature.
2. Plan the integration
Shape it with Claude in plan mode before building. You already have the feedback form (5.1) and the n8n AI workflow (5.2) – now plan how to wire them together.
Outcome: You have a clear plan for the bidirectional webhook flow.
3. Build the integration
Approve the plan and let Claude build it. There are two sides – your app's code and the n8n workflow.
Then update n8n itself:
- In your n8n workflow, replace the Chat Trigger with a Webhook Trigger (this gives you a URL your app posts to).
- Add a final step that calls your app's webhook endpoint with the original data plus the AI analysis.
- Copy the n8n Webhook Trigger URL and have Claude store it in the Vercel vault as your app's outgoing webhook URL.
Outcome: Both sides are wired – your app sends to n8n, and n8n sends the enriched result back into Neon.
4. Test end to end and ship
Run the whole loop, then ship it to main.
Outcome: Feedback flows from your app → n8n → back to your app → Neon, and it's live.