← All articlesPower Platform

Autonomous Agents in Practice: A Customer Service & Order Triage Agent with Copilot Studio

Ishfaq Nazir · Microsoft & Azure Cloud Security Architect 10/14/2026 11 min read

What makes an agent "autonomous"

A conversational agent waits for someone to type. An autonomous agent is started by an event — a new email, a new record, a schedule — and then decides which steps to take using the tools you allow it to use. Copilot Studio supports this through event triggers and generative orchestration.

Business scenario

A mid-sized distributor receives 400 customer emails a day to support@contoso.com. Most ask:

  • Where is my order?
  • Can I get a copy of my invoice?
  • I want to return an item.

Staff spend hours copying order numbers between Outlook and the ERP. The agent will triage every email, answer routine requests, and pass anything unusual to a person.

Architecture

  • Trigger: "When a new email arrives in a shared mailbox (V3)" (Office 365 Outlook connector).
  • Agent: Copilot Studio with generative orchestration turned on.
  • Tools: Power Automate flows and connectors for Dynamics 365 / Dataverse (orders, invoices, returns).
  • Knowledge: returns policy and shipping FAQs in SharePoint.
  • Human review: a Teams approval or a queue in Dynamics 365 Customer Service.

Prerequisites

  1. Copilot Studio capacity and a production Power Platform environment.
  2. A shared mailbox and a service account or managed connection for it.
  3. Order data in Dynamics 365, Dataverse, or a system reachable through a connector (SQL Server, Business Central, SAP).
  4. A written policy that states what the agent may do on its own and what needs approval.

Step 1 — Define the agent's job description

Write instructions that describe the outcome and the boundaries:

You are the Contoso order support agent.
For every incoming email:
1. Identify the intent: order status, invoice copy, return request, or other.
2. Extract the order number and customer email.
3. Use the tools to look up the order.
4. Draft a polite reply with the facts you found.
Rules:
- Never promise refunds. Return requests above 500 USD must go to a human.
- If the sender's email does not match the order's customer, escalate.
- If intent is "other" or you are unsure, escalate.

Step 2 — Turn on generative orchestration

In the agent's Settings, enable generative orchestration. This lets the agent choose among tools based on their names and descriptions, instead of only following fixed topics. Give every tool a clear description — this is what the agent reads when deciding.

Step 3 — Add the tools

Create these tools (actions) from Power Automate flows or connectors:

  1. Get order by number — inputs: order number; outputs: status, carrier, tracking link, customer email.
  2. Get invoice PDF — inputs: order number; outputs: file link.
  3. Create return request — inputs: order number, items, reason; outputs: return ID.
  4. Send email reply — inputs: recipient, subject, body.
  5. Escalate to human — creates a case in Dynamics 365 Customer Service or posts to a Teams channel.

Step 4 — Add the event trigger

  1. In the agent, open Overview and select Add trigger.
  2. Choose "When a new email arrives in a shared mailbox".
  3. Pass the subject, body, and sender into the agent as the trigger payload.
  4. Use the payload instruction: "Process this customer email according to your instructions."

Step 5 — Add human-in-the-loop approvals

For higher-risk actions, use the Approvals connector:

  1. Before "Create return request" runs for values above your threshold, send an approval to the returns team in Teams.
  2. Only continue when approved; otherwise reply that a specialist will follow up.

Start with every outgoing email requiring approval for the first two weeks. Remove approval for categories that reach 95%+ accuracy.

Step 6 — Test with real (anonymized) emails

  1. Export 200 past emails, remove personal data, and replay them in a test mailbox.
  2. Compare the agent's classification and draft reply to what your staff actually sent.
  3. Use the activity map in Copilot Studio to see which tools the agent chose and why.

Step 7 — Monitor in production

  • Review the Activity and Analytics pages weekly.
  • Track: percentage handled automatically, average handling time, escalation reasons.
  • Set alerts in Power Automate for failed runs.

Security and governance

  • Use least-privilege connections — the order lookup account should be read-only.
  • Apply DLP policies so business data connectors cannot be combined with consumer connectors.
  • Enable auditing in Microsoft Purview to record agent activity.
  • Protect against prompt injection in emails: instruct the agent to treat email content as data, never as instructions, and keep risky actions behind approvals.

Expected results

Organizations typically automate a large share of routine order emails within the first quarter, while response time drops from hours to minutes.

Learn more

  • Microsoft Learn: Event triggers for autonomous agents — https://learn.microsoft.com/microsoft-copilot-studio/authoring-triggers-about
  • Microsoft Learn: Generative orchestration — https://learn.microsoft.com/microsoft-copilot-studio/advanced-generative-actions
#Copilot Studio#AI Agents#Dynamics 365#Automation

Related articles