AI Email Router with Bedrock Flows
Build a visual AI workflow that classifies and responds to customer emails.
Introduction
โก๏ธ 30 Second Summary
Every customer-facing business receives emails that need different responses depending on intent, but manually sorting and replying to each one is slow and error-prone.
In this project, you will build a visual AI workflow using Amazon Bedrock Flows and Prompt Management that automatically classifies customer emails by intent and generates tailored responses, all without writing a single line of code.
What You'll Build
A complete email routing pipeline in Amazon Bedrock Flows that takes a raw customer email, classifies it as a complaint, question, or refund request using a prompt template, then routes it through a condition node to generate the appropriate tailored response.
By the end of this project, you'll have:
- ๐ A classifier prompt template in Bedrock Prompt Management that categorizes customer emails by intent.
- ๐ฌ Three response prompt templates in Bedrock Prompt Management, each tailored to a specific email intent.
- ๐ A visual AI workflow in Amazon Bedrock Flows that chains prompts together with conditional routing.
- ๐งช A tested, working flow that takes a raw customer email and produces the correct tailored response.
- ๐ Secret Mission: Add Bedrock Guardrails to filter out harmful or off-topic emails before classification.
Want a complete demo of how to do this project, from start to finish? Check out our ๐ฌ walkthrough with Amber
Are there any prerequisites?
This is Part 3 of the Generative AI Developer series. Part 1 (Build an AI Chatbot with Amazon Bedrock) and Part 2 (AI Finance Agent with Amazon Bedrock) are recommended but not required. You will need an AWS account with access to Amazon Bedrock.
Not sure if this project is right for you? Check if it matches your goals
If you're up for a bit of a challenge, quiz yourself on the key concepts up ahead in this project.
Get Your Tools Ready
To build your AI email router, you need Amazon Bedrock to provide the AI brains and Amazon Bedrock Flows to wire everything together visually. But first, you need to make sure you have access to the right AI model.
In this step, you will sign in to AWS and confirm your model is ready to go.
In this step, get ready to:
- Sign into your AWS account and set your region.
- Navigate to Amazon Bedrock and confirm Amazon Nova 2 Lite is available.
Sign In and Set Your Region
- Navigate to the AWS Management Console in your browser.
What do you see?
โ๏ธ I see the AWS Console dashboard
You're already signed in. Continue on to the next instruction.
โ I see a sign-in page
That's great! Let's enter your account details.
- Enter your Account ID (or alias), IAM username, and password, then click Sign in.
Need help finding your credentials?
If you completed the Set Up An AWS Account for Free project, your credentials are in the .csv file you downloaded when you created your IAM user. If you set up AWS on your own, sign in with whichever credentials you normally use. If you're unsure, try signing in as a Root user with the email address you used to create your AWS account.
โง I don't have an account
This project requires an AWS account. Complete the Set Up An AWS Account for Free project first, then come back here. It takes about 10 minutes.
- Look at the region selector in the top-right corner of the console.
- Select US East (N. Virginia) (us-east-1).
Why us-east-1?
This region has the widest availability of Bedrock models and features. Using us-east-1 ensures you have access to everything this project needs. Why is us-east-1 so popular?
Navigate to Amazon Bedrock
- Type Bedrock in the search bar at the top of the console.
- Select Amazon Bedrock from the search results.
What is Amazon Bedrock?
Amazon Bedrock is a fully managed service that gives you access to foundation models from Amazon and other providers through a single API. You can use it to build generative AI applications without managing any infrastructure.
Confirm Amazon Nova 2 Lite Is Available
- In the left sidebar, click Model catalog (under Discover).
- Search for Nova 2 Lite in the model catalog.
- Confirm you can see Amazon Nova 2 Lite listed and available.
What is Amazon Nova 2 Lite?
Amazon Nova 2 Lite is a fast, cost-effective multimodal model from Amazon. It handles text, image, and video inputs, making it a great choice for classification and routing tasks like your email router. As of September 2025, Amazon serverless models are automatically available in all AWS accounts with no manual enablement needed.
โ๏ธ I can see Nova 2 Lite
You're all set. Amazon Nova 2 Lite is ready for you to use.
โง I can't find Nova 2 Lite
Let's troubleshoot:
- Check that your region is set to US East (N. Virginia) (us-east-1) in the top-right corner.
- Check that your IAM user has appropriate Bedrock permissions, or that you are using an admin-level IAM user.
- Try refreshing the page.
Still stuck?
Get help with your error or share your error with the NextWork community!
You're signed in and your model is ready. Next, you will use Prompt Management to create the AI instructions that power your email router.
Create Your Classifier Prompt
Your tools are ready. Now it is time to create the AI instructions that will power your email router. You will use Prompt Management to build a reusable prompt template that classifies customer emails by intent.
But what exactly should this prompt say? And how do you make it reusable so the same template works for any customer email?
In this step, get ready to:
- Create a classifier prompt in Prompt Management that categorizes emails by intent.
- Test the classifier with sample emails.
- Create a version of your prompt.
Create the Classifier Prompt
The first prompt you need is a classifier. When a customer email arrives, this prompt tells the AI to read it and decide: is this a complaint, a question, or a refund request? Getting this classification right is critical because the rest of your flow depends on it.
- Navigate to Prompt Management in the Bedrock console's left sidebar.
- Click Create prompt.
- Enter nextwork-email-classifier as the prompt name.
- Optionally, add a description like Classifies customer emails as complaint, question, or refund.
- Click Create.
What is KMS key selection?
KMS (Key Management Service) controls how your data is encrypted at rest. The default AWS-managed key is fine for this project. You only need to customize this if your organization requires specific encryption keys.
The prompt editor opens. You will now configure which AI model this prompt uses.
- In the Configurations section, click Select model.
- Select Amazon in the categories, then choose Nova 2 Lite.
- Click Apply.
Why Amazon Nova 2 Lite?
Amazon Nova 2 Lite is a fast, cost-effective model that handles text classification well. For a task like sorting emails into categories, you do not need a larger model.
- Look for the prompt template text box (under System instructions - Optional)
- Paste the following prompt template into the editor, replacing any default text that is already there.
You are an email classifier. Read the following customer email and classify it as exactly one of: complaint, question, or refund. Respond with only the classification label in lowercase, nothing else.
Customer email: {{email}}
What is the {{email}} syntax?
The double curly braces create a variable that Bedrock substitutes with actual input at runtime. When your flow sends an email to this prompt, Bedrock replaces {{email}} with the real customer message.
๐ก Read your prompt before moving on.
Before you test, take a moment to understand what this prompt does. Can you see the three instructions?
- The prompt tells the AI to act as an email classifier
- Pick exactly one category from complaint, question, or refund
- Respond with only that one word in lowercase.
- Find the Test variables section. (Hint: You might need to scroll down!)
- In the email variable field, paste the following sample complaint email:
I am extremely frustrated with my recent order. The product arrived damaged and customer service has been unhelpful.
- Pause for a moment - this is a complaint email, so we're expecting some sort of complaint categorization.
- Scroll back up to the top of the page.
- Click Test to open the test panel.
The model should identify your email as a complaint.
- Scroll back down to your email variable field.
- Clear the email variable field of your complaint test.
- Paste in this new sample email:
Can you tell me if your product is compatible with macOS?
- Pause! Can you guess how this will be categorized, based on your prompt instructions?
- Scroll back up to the top of the page.
- Click Test.
The model should output question.
Why does the classifier always output in lowercase? Is that on purpose?
Actually yes!
In the next step, you will build a flow that routes emails using a case-sensitive exact match (==). If the classifier outputs Complaint instead of complaint, the routing will break because Complaint does not equal complaint. That is why your prompt says "Respond with only the classification label in lowercase, nothing else." If your test results show uppercase or extra words, update your prompt before moving on.
Your classifier prompt is working. Woohoo! Let's save it.
Before you move on, we'll lock it so that future edits to the draft do not accidentally break what you've already built.
What is a prompt version?
A version is a locked snapshot of your prompt at a specific point in time. Bedrock Flows reference specific versions, not the live draft. This means you can keep improving your prompt without breaking a running flow.
- Click Create version.
- Confirm the success banner: "Successfully published version 1".
- Click View prompt details to see your prompt summary and version history.
Your classifier prompt is built, tested, and versioned. Next, you will create the response prompts that generate tailored replies for different email types.
Create Your Response Prompts
Your classifier can sort emails by intent. But sorting alone is not useful - you need prompts that generate the right response for each category.
In this step, you will create two response prompts: one specialized for complaints, and one general-purpose prompt for everything else.
In this step, get ready to:
- Create a complaint response prompt with an empathetic tone.
- Create a general-purpose response prompt.
- Review your complete prompt library.
Create the Complaint Response Prompt
Complaints need a specific tone: empathy, acknowledgment, and a resolution. A specialized prompt handles this better than a generic one.
- In the Bedrock console's left sidebar, click Prompt Management.
- If you see a dialog asking you to leave, click Leave to exit the current page.
- Click Create prompt.
- Enter nextwork-complaint-response as the prompt name.
- Add a description that explains what we're doing: Generates empathetic responses to customer complaints.
- Click Create.
- In the Prompt Editor:
- Scroll to the Configurations section, click Select model.
- Select Amazon in the categories, then choose Nova 2 Lite.
- Click Apply.
- Find the prompt instructions text field - exactly where we pasted our prompt instructions last time.
- Paste the following template:
You are a customer service agent. Read the following customer complaint and write a brief, empathetic response (3-4 sentences) that acknowledges the issue and offers a resolution.
Customer email: {{email}}
- Read through the prompt and adjust anything you'd like! Think how you would like to be responded to by customer support.
- Once you're happy with it, we can save our progress using versions.
- Click Create version.
Nice! Our Complaint-Response prompt is ready. Onto the next one.
Create the General-Purpose Response Prompt
The general-purpose prompt covers questions, refunds, and anything else with a professional, all-purpose tone.
- In the left sidebar, click Prompt Management.
- Click Create prompt.
- Enter nextwork-general-response as the prompt name.
- Add a description to describe your prompt: Generates professional responses to general customer emails.
- Click Create.
The prompt editor opens.
- In the Prompt Editor:
- Scroll to the Configurations section, click Select model.
- Select Amazon in the categories, then choose Nova 2 Lite.
- Click Apply.
- Back to our prompt instructions! Remember, this is for our generic response.
- Paste the following template:
You are a helpful customer service agent. Read the following customer email and write a brief, professional response (3-4 sentences).
Customer email: {{email}}
- Read through the prompt and adjust as you like. It's your chance to craft the perfect customer service agent.
- Once you're happy with it, we'll save our progress using versions.
- Click Create version.
Why aren't we testing these response prompts?
You tested the classifier prompt that categorized emails because getting the exact output format right is critical for routing. The response prompts are more flexible - there is no single correct output. Don't worry, you will see them in action when you test the complete flow in Step 5.
๐ก Why two prompts instead of one?
Complaints need a specific tone: empathy, acknowledgment, and a resolution. A specialized complaint prompt handles this better than a generic one. The general prompt covers questions, refunds, and anything else with a professional, all-purpose tone.
Review Your Prompt Library
- Navigate back to the Prompt Management list view using the left sidebar.
- Confirm you see all three prompts: nextwork-email-classifier, nextwork-complaint-response, and nextwork-general-response.
How do I check the version for each prompt?
- Click on any prompt in the list to open its details page.
- Scroll down to the Prompt versions section. You should see Version 1 listed here.
Check this for all three prompts before moving on.
Your prompt templates are built and tested. Next, you will wire them together into a visual flow that automatically classifies and responds to customer emails.
Build Your Email Router Flow
Your three prompt templates are ready in Prompt Management. Now comes the exciting part: connecting them into an automated workflow. You will use the Bedrock Flows visual builder to create a pipeline that takes in a customer email, classifies it, and routes it to the right response.
But how does the flow know which response to use? That is where condition nodes come in.
In this step, get ready to:
- Create a Bedrock Flow with the email classifier prompt.
- Add a condition node to route emails by classification.
- Connect two response prompts and save the flow.
Create the Flow and Add the Classifier
- In the left sidebar, click Flows (under Build).
- Click Create flow.
- Enter nextwork-email-router as the flow name.
- Enter Routes customer emails to the appropriate response prompt based on classification as the description.
- Leave the Service role name as the default ("Create and use a new service role").
- Click Create flow.
What is a service role?
A service role is an IAM role that gives your flow permission to call other AWS services on your behalf, like invoking Bedrock models. The default option creates a new role with the minimum permissions your flow needs. You do not need to change this.
Welcome to Bedrock Flow!
The visual builder opens with three default nodes already on the canvas:
- A Flow input node (where data enters)
- A Prompt_1 node (a starter prompt node that Bedrock adds automatically)
- A Flow output node (where results exit).
These three nodes are already connected in a chain. Feel free to drag things around on the canvas to get the feel of things.
What are Flow input and Flow output nodes?
Every Bedrock Flow starts with an input node and ends with an output node.
The input node receives the data you send to the flow (in your case, a customer email). The output node returns the final result (the tailored response).
Everything in between is the processing pipeline you design. Bedrock also adds a default Prompt_1 node to get you started.
You will repurpose the default Prompt_1 node as your routing node to categorise incoming emails.
- Click on the default connection line between the Prompt_1 node and Flow output nodes.
- Press Delete on your keyboard (or click the trash icon).
The connection is removed, allowing you to build your custom workflow.
- Click the Prompt_1 node on the canvas.
- In the Flow Builder panel on the left, click the Configure tab.
- Under the node name, select Use a prompt from Prompt Management.
- In the Prompt dropdown, choose your nextwork-email-classifier prompt.
- In the Version dropdown, select the version you created.
- Under Node name, rename your prompt to be EmailClassifier
Your canvas should now look like this:
- Flow input connected to Prompt_1 (your classifier)
- The Flow output node disconnected.
What does the EmailClassifier node do?
This node takes in a customer email and figures out what kind of email it is โ a complaint, question, or refund. It outputs just that one lowercase word, and the nodes you build next will use it to decide what happens from there.
- Scroll down in your Configure tab until you see Output.
- Notice the output name is modelCompletion and the type is string
- This output is what will be passed from your EmailClassifier prompt to the next one!
Okay...so what is modelCompletion?
When your classifier prompt runs, Bedrock returns the result in a field called modelCompletion. This field contains whatever the AI model outputs - in your case, the classification label (complaint, question, or refund). You will see this field name appear when connecting nodes and configuring conditions in the next steps.
Add the Condition Node for Routing
- In the Flow Builder panel on the left, click the Nodes tab.
- Drag a Condition node onto the canvas.
What is a condition node?
A condition node is like a traffic controller for your flow. It evaluates the data it receives and routes it down different paths based on rules you define. Conditions are evaluated in order, and the first match wins. If nothing matches, the default path catches everything else.
We will be using a condition node to create different paths depending on the email classification result.
- On the canvas, position your new Condition Node to be after your EmailClassifier node.
- You might have to move your Flow Output node to make space!
- Click and drag a connection from the EmailClassifier to the input of the condition node.
- Click the condition node on the canvas.
- In the Flow Builder panel on the left, click the Configure tab.
- Update the Node name to be ComplaintChecker
We'll use this to check whether an email has been categorised as a complaint.
- Scroll down until you see Conditions.
This is where we'll define our different paths for each email category!
Let's start with routing our complaint emails.
- In the Name field, enter is_complaint.
- For the condition expression, set it to (conditionInput == "complaint")
What is conditionInput?
conditionInput refers to the data the condition node receives from the previous node. In your flow, this is the modelCompletion output from the classifier - the lowercase category label like complaint, question, or refund. The condition checks if this value equals complaint to decide which branch to take.
Your canvas should now look like this:
- Flow input to EmailClassifier Prompt
- EmailClassifier Prompt to ComplaintChecker condition
- The ComplaintChecker condition node shows two output handles on its right side: the first one is for is_complaint and the second is for "If all conditions are false".
Add Response Prompt Nodes and Connect
- In the Flow Builder panel on the left, click the Nodes tab.
- Drag a Prompt node from the sidebar onto the canvas.
This prompt will be where we handle our complaint emails and call our specially crafted complaint response.
- Since this new prompt node is handling compaint emails, it needs to go after our ComplaintChecker condition node.
- Shuffle around the nodes to place our new prompt after the ComplaintChecker node.
Connect them up!
- On the ComplaintChecker node, find the output handle by is_complaint (the small circle on the right side of the condition, labeled with your condition name).
- Click and drag from the is_complaint output handle to the input of Prompt_2.
Made a wrong connection?
Click the connection line you want to remove, then press Delete on your keyboard - the same way you removed the default connection earlier.
Time to complete the chain!
- From the end of our new Prompt 2, click and drag the output handle to the Flow output node to connect them.
Great - you should now have a full complete chain of nodes:
Now let's configure our Prompt 2 node.
- Click on Prompt 2 node.
- In the Flow Builder panel on the left, click the Configure tab.
- Update the name of the node to be ComplaintResponsePrompt
- Under the node name, select Use a prompt from Prompt Management.
- In the Prompt dropdown, choose nextwork-complaint-response.
- In the Version dropdown, select the version you created: Version 1.
Awesome work. We can handle complaint emails. But what about an email that's not a complaint?
Time for another prompt!
- In the Flow Builder panel, click the Nodes tab again.
- Drag another Prompt node onto the canvas.
This new prompt will handle anything coming out of out ComplaintChecker condition node that is not a complaint.
- Shuffle around the nodes to place the new prompt node directly under our ComplaintResponsePrompt node.
- On the condition node, find the Default output handle (labeled "If all conditions are false").
- Click and drag from this output handle to the input of Prompt_3.
You know the drill - time to configure our general response prompt.
- Click on the Prompt 3 node.
- In the Flow Builder panel on the left, click the Configure tab.
- Change the name of your Prompt 3 node to GeneralResponsePrompt
- Under the node name, select Use a prompt from Prompt Management.
- In the Prompt dropdown, choose nextwork-general-response.
- In the Version dropdown, select the version you created: Version 1.
Cool - now we have a prompt for general emails. But we still need an output node to finish off this pathway.
- In the Flow Builder panel, click the Nodes tab.
- Drag a Flow output node onto the canvas.
- Shuffle around the nodes so that the new output node is positioned after our GeneralResponsePrompt.
- Select your new Flow Output node.
- In the Configure panel, update the name to be GeneralResponseOutput
- Connect them all up!
- On the canvas, click and drag from GeneralResponsePrompt to this GeneralResponseOutput node to connect them.
- Double check your canvas looks like this:
We're not quite done yet!
Right now our PromptNodes (the purple ones for complaints and general responses) are being passed our categories like complaint or general. These categories come from our ComplaintChecker condition.
For our prompts to actually generate a reply, they need more!
Pass the actual emails to our PromptResponse
- Find the very first node on your canvas: the grey Flow Input node.
- Drag the output from the first node, all the way to your ComplaintResponsePrompt node.
- Check it looks like this (you may need to shuffle around your nodes on the canvas):
- Repeat this connection from Flow Input for our GeneralResponsePrompt.
Now both our response nodes can see the original emails! This helps them to craft much better responses.
- Reshuffle your nodes around until your happy with the visual layout. Here's something that worked for us!
- Click Save in the top right corner.
What happens when you save?
Saving your flow stores the configuration in Bedrock. The flow is now ready to test with real data by creating executions.
Your email router flow is built and saved. Now it is time to put it to the test with real customer emails.
Test Your Flow
Your email router is fully wired up. The classifier, condition routing, and two response branches are all connected. Time to see it in action.
But will it actually route emails correctly? And what if something goes wrong -- how do you debug a visual flow?
In this step, get ready to:
- Run a test email through your flow.
- Verify that different email types route correctly.
- Use the trace viewer to debug your flow.
Test with a Complaint Email
- In the flow builder (where you can see your canvas), look for the Open panel icon at the top right of your Flow Builder.
- This opens your Test Flow side panel.
- In the message field, paste the following JSON:
{"email": "I am extremely disappointed with my recent purchase. The product arrived broken and nobody has responded to my support tickets for a week. This is unacceptable."}
What's in this JSON?
This JSON simulates a customer email being sent into your flow. The email field contains a complaint message that the flow will process โ classifying its sentiment and generating an appropriate response.
- Click Run.
Why is it taking so long?
The flow may take a couple of minutes to process your input. This is normal because Bedrock is invoking your prompts, classifying the email, and generating a response behind the scenes. Hang tight!
โ๏ธ I see a response
The flow should process the email and returns an empathetic response tailored to a customer complaint.
โง I see an error
That's okay! Let's troubleshoot:
- Check that all nodes are connected. Your flow should have these connections: Flow input โ EmailClassifier โ ComplaintChecker โ ComplaintResponsePrompt and GeneralResponsePrompt โ Flow output nodes. Flow input should also connect to the email input on both ComplaintResponsePrompt and GeneralResponsePrompt.
- Check that each prompt node is configured with the correct prompt from Prompt Management and has a version selected.
- Check that your condition is set to (conditionInput == "complaint") (with lowercase complaint).
- Go back to the flow canvas, click Save, then try Create execution again.
Still stuck?
Get help with your error or share your error with the NextWork community!
- Click Show Trace underneath your test message.
- This breakdown shows how your test message when through your every node.
- Can you spot the trace for ComplaintResponsePrompt? That means it's worked as expected!
- Open the EmailClassifier (Prompt node) drop-down.
- Expand the Output trace.
- Can you see where the content classification flagged the message as "complaint"?
What is the trace viewer?
The trace viewer shows the input and output at every single node in your flow. It is invaluable for debugging. You can see exactly what data each node received, what it produced, and which path the flow took through your conditions.
Walk through the trace to see what happened at each node. The Flow input node received the raw email JSON. The Classifier prompt node took the email text and output complaint. The Condition node evaluated is_complaint = true and routed to the complaint branch. The Complaint response prompt node generated an empathetic response. Finally, the Flow output node returned the final response.
Test with a Question Email
Our complaints email works!
Now let's test it works for non-complaint emails.
- Scroll to the top of your page and select the broom icon.
- This ends the current testing session.
- In the left Test flow pannel , enter the following test email into the chat:
{"email": "Hi, I was wondering if your product is compatible with macOS. Also, do you offer a student discount?"}
- Click Run.
- Click Show Trace, this time on the GeneralResponseOutput message to your flow works how you expect.
- Under GeneralResponsePrompt (Prompt node), look at the Output trace dropdown to view the generated response.
Why does the question go through the general response condition?
In the previous step, you set up one explicit condition for complaint. Everything else, questions, refunds, and anything unexpected, falls through to the default path, which routes to the general-purpose response prompt.
Both emails received different, contextually appropriate responses. Your Bedrock Flows email router detects complaints and responds with empathy, while routing everything else to a professional general-purpose response.
- To navigate back to your Flow Builder canvas, toggle the Details switch at the top right of your screen
What about cost?
Each test run uses around 5-6 node transitions. Amazon Bedrock Flows charges about $0.035 per 1,000 transitions, so each test costs a fraction of a cent.
Secret mission
Your email router classifies and responds to emails, but what happens when someone sends something harmful or completely off-topic?
In this secret mission, you will create a Bedrock Guardrail and attach it to your classifier prompt node. This adds a safety layer that filters out harmful or inappropriate content before classification even begins.
In this secret mission, get ready to:
- Create a guardrail with content filters in Amazon Bedrock.
- Attach the guardrail to your classifier prompt node.
- Test the guardrail with both normal and harmful emails.
Add Guardrails to Your Flow
Clean Up Your Resources
Clean Up Your Resources
Decide whether to keep your resources running, pause them to come back later, or delete them entirely. Bedrock Flows and Prompt Management have no ongoing costs when not in use. You are only charged when the flow is invoked.
Will I be charged?
Bedrock Flows and Prompt Management have no storage costs. You are only charged when the flow is invoked ($0.035 per 1,000 node transitions plus model inference costs). If you do not run any executions, your bill stays at zero.
Resources you used:
- Bedrock Flow (nextwork-email-router)
- Prompt Management prompts (3 prompts: nextwork-email-classifier, nextwork-complaint-response, nextwork-general-response)
- Bedrock Guardrail (nextwork-email-router-guardrail, Secret Mission only)
โ๏ธ Keep everything running
No action needed. Choose this if you are still actively building or want to keep testing right away.
Your flow and prompts are free to store. You are only charged if someone invokes the flow ($0.035 per 1,000 node transitions plus model inference costs).
โ Pause - I'll come back to this later
There are no running services to pause. Your Bedrock Flow only executes when explicitly invoked, so leaving your setup as-is costs nothing.
Your prompts in Prompt Management are also free to store. Everything will be ready when you come back.
โง Delete - I don't want to use this again
Remove all project resources and start fresh if you ever want to rebuild.
Delete your flow:
- In the AWS Console, search for Bedrock and select Amazon Bedrock.
- Select Flows from the left sidebar.
- Select your nextwork-email-router flow.
- Select Delete, then confirm.
Delete your prompts:
- Select Prompt management from the left sidebar.
- Select nextwork-email-classifier, then select Delete. Confirm the deletion.
- Repeat for nextwork-complaint-response and nextwork-general-response.
Delete your guardrail (Secret Mission only):
- Select Guardrails from the left sidebar.
- Select nextwork-email-router-guardrail.
- Select Delete, then confirm.
That's a Wrap!
That's a Wrap!
Nice work! ๐ You just built a fully automated AI email router using Amazon Bedrock Flows -- with zero code.
You've learned how to:
- ๐ Create and version prompt templates in Bedrock Prompt Management.
- ๐ Use prompt variables ({{email}}) to make prompts reusable and dynamic.
- ๐งฉ Build a visual AI workflow in Bedrock Flows with input, prompt, condition, and output nodes.
- ๐ Set up conditional routing based on AI classification results.
- ๐งช Test and debug your flow with the trace viewer.
- ๐ Add Bedrock Guardrails to a flow for content safety (Secret Mission).
Ready to quiz yourself? ๐ช
p.s. Does it say "Still tasks to complete!" at the bottom of the screen?
This means you still have screenshots left to upload, or questions left to answer!
- Press Ctrl+F (Windows) or Command+F (Mac) on your keyboard.
- Search for the text Return to later.
- Jump straight to your incomplete tasks!
- ๐โโ๏ธ Still stuck? Ask the community!