If you're looking to harness the power of Microsoft Copilot to interact with data from Forward Networks, this step-by-step guide is for you. In this tutorial, we’ll walk you through creating a custom chatbot using Copilot Studio that can query your Forward platform based on user input. By leveraging Power Automate and Forward’s API, you’ll build a conversational agent capable of returning real-time network data—right inside Microsoft Teams. Whether you're a seasoned automation pro or just getting started with Copilot, this guide will help you create a practical and interactive tool in just a few steps.
Here’s what it looks like.
Interested in making one yourself? Follow the steps below!

Have questions? Ask below!
Caveats:
-
This is a simple example to get you started with agent automation
-
This example does not perform input validation, error checking, or data normalization
-
This example is specific to Microsoft Copilot and Teams, but similar solutions can be created using other platforms
- Open Copilot Studio - copilotstudio.microsoft.com
- Click Create.
- Click New Agent.
- Click Skip to configure
- Give the agent a name and description:
- Give your agent a few starter prompts:
- Click Create.
- Click Topics.
- You will find a canvas with a trigger on it. Give the trigger a name and enter a few starter prompts:
- Click to add a question. We are expecting a one-word response from the user, and we will store it in a variable called hostname.
- Now add a condition to make sure hostname is not blank:
- Click to add an action of type Power Automate Flow:
- In Power Automate, open the ‘run a flow from Copilot’ and enter the variable ‘hostname’
- Click the + to insert a new step in the automation. Choose HTTP.
- In the top half of the panel put the API endpoint, set it to be a GET and enter an Authorization header containing your API key for the request.
- in the bottom half put then authentication type to Basic and enter the key id and password.
- Add a Parse JSON step on the canvas. Choose the output of the HTTP step’s Body as the content to parse.
- The schema should be this, but as you can see in the screenshot above, you can use some sample data and it will derive the schema from that if you want:
{
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"type": {
"type": "string"
},
"platform": {
"type": "string"
},
"model": {
"type": "string"
},
"osVersion": {
"type": "string"
},
"vendor": {
"type": "string"
},
"managementIps": {
"type": "array",
"items": {
"type": "string"
}
},
"collectionError": {
"type": "string"
}
},
"required":
"name",
"type",
"platform",
"vendor"
]
}
}
- We need to filter out the device we want information on. So add a Filter Array step next.
- Click Respond to Copilot
- Add an output and call it output.
- Return the Body of the filter stage:
It now looks like this:
- Publish it and hit the test button. Enter a hostname from your network in Forward:
- Click on the Flow Runs page, and choose the ‘respond to Copilot’ element. You should see that a value was returned.
-
Back in Copilot Studio, add an action:
-
Now the copilot canvas should have an action attached like this:
-
Click the test button and ask a question!
-
Ok so that isn’t very interesting. Lets add another data element from the JSON array.
-
Save that and go back to the copilot:
-
Aha - we need to print it to the chat window! Lets add a message with the value of ‘output’ in it.
-
Now we’re cooking:
-
Add the agent to a channel - in this case Teams
- Now open Teams and start a chat like this:
By following these steps, you’ve successfully created a functional Copilot chatbot that connects to Forward Networks and delivers actionable network insights on demand. With just a hostname, your chatbot can query Forward’s API, parse the results, and return relevant device details—all within a Teams conversation. This is just the beginning; you can continue enhancing the experience by adding more prompts, refining responses, or integrating additional data sources. With Copilot Studio and Power Automate, building intelligent, network-aware bots has never been easier.
How would you extend this bot to do more?