Support and scheduling
Approved FAQ chatbot
Answer a visitor from reviewed FAQ text, or explain how to reach a person.
- Input
- A question and an optional request for a person.
- Checks
- Validate the request and model-selected article IDs.
- Result
- Exact approved answer text with sources, or a clear human handoff.
- n8n
- Anthropic API
- Authenticated backend
Inspect a fictional run
Code-node demoThe model can select an approved answer. It cannot supply new answer prose.
Read the actual example output
[
{
"case": "Unconfigured export",
"route": "respond",
"httpStatus": 503,
"result": {
"status": "setup_required"
}
},
{
"case": "Fictional model selects approved hours",
"route": "respond",
"httpStatus": 200,
"result": {
"requestId": "demo-faq-001",
"status": "answered_from_approved_faq",
"answer": "Our fictional demonstration support team is available Monday through Friday, 09:00 to 17:00 UTC.",
"sources": [
{
"id": "hours",
"title": "Support hours",
"url": "https://example.com/support"
}
],
"contactCreated": false
}
},
{
"case": "Visitor asks for a person; model is bypassed",
"route": "respond",
"httpStatus": 200,
"result": {
"requestId": "demo-faq-001",
"status": "human_handoff",
"answer": "This needs a person to review it. Please use the support contact shown on the website. This chat has not created a support request.",
"sources": [],
"contactCreated": false
}
},
{
"case": "Fictional model invents an article ID",
"route": "respond",
"httpStatus": 502,
"result": {
"status": "unavailable",
"message": "The provider response could not be verified. No external action was taken."
}
}
]node walkthroughs/run-workflow-demo.cjs faqRun from the downloaded library folder. Node.js 22 or later. Actual exported Code in a local harness with fictional provider responses or a fixed clock; not the full n8n graph. No provider calls or customer data.
Before you connect real data
A valid FAQ can still be irrelevant. Test answer selection with your own questions. A handoff does not create a support ticket.