> For the complete documentation index, see [llms.txt](https://atlas.anywhere.now/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://atlas.anywhere.now/channels-integrations/dialogue-studio-integrations/integrate-copilot-studio-with-dialogue-studio.md).

# Integrate Copilot Studio with Dialogue Studio

Connect a Copilot Studio bot to Dialogue Studio by using the current Microsoft bot integration pattern that your environment supports.

Use this page to connect a Copilot Studio bot to Dialogue Studio when your environment uses the current Microsoft bot integration pattern that Dialogue Studio supports.

## Before you begin

* Confirm that the Copilot Studio bot is already available in the target Microsoft environment.
* Confirm that you have the access level required to retrieve the current connection values for that bot.
* Confirm that the current environment is using the supported Direct Line-backed integration pattern and that `EnableIDR` is enabled for the bot entry point.
* Confirm which IDR chat endpoint the bot should use, and confirm that no second bot is expected to share the same UCC.
* Confirm that the target Dialogue Studio flow has a clear branch where the Copilot Studio interaction starts and a safe fallback route if the bot does not return a usable reply.
* Plan to validate the integration in a non-production flow before you move it into production traffic.

{% hint style="warning" %}
Response timing, output formatting, and supported rich-content behavior can vary by Microsoft release and bot configuration. Validate the current bot behavior in your environment before you depend on this integration in production.
{% endhint %}

## Collect the required connection values

Collect the current Microsoft bot connection values that the environment requires.

For the current Direct Line-backed pattern, confirm:

* the current authentication value that Dialogue Studio uses for the bot integration
* the IDR chat endpoint that acts as the bot entry point
* who owns credential renewal or replacement for the integration

Before you configure the node:

1. Open the Copilot Studio configuration for the target bot.
2. Retrieve the current connection value that the environment uses for the bot integration.
3. Confirm the matching IDR chat endpoint for the same environment.
4. Record who owns credential renewal or replacement for this integration.

## Configure the Copilot Studio step in Dialogue Studio

Keep the Dialogue Studio side configuration focused on the minimum values the flow needs to connect and recover safely.

At minimum, confirm:

* the current authentication value is stored correctly
* the integration points to the intended bot entry point
* any wait, delay, or polling value matches the expected response time
* the flow has a fallback branch for empty, delayed, or invalid responses

### Keep the fallback route explicit

When you add the integration node:

* decide what the flow should do if the bot returns no answer
* decide what the flow should do if the authentication step fails
* decide whether the session should retry, continue on a fixed fallback branch, or hand the conversation to another route
* test the recovery branch before you expose the integration to production traffic

## Validate the returned content

Before go-live, confirm how the bot output behaves in the channels that use the flow.

Check whether:

* text output needs formatting cleanup before it is shown to the customer
* adaptive cards or other rich output still provide usable fallback text
* the integration can recover safely after a replaced or renewed authentication value
* delayed or throttled responses return to the fallback route without leaving the session stuck

## Troubleshooting focus areas

Start with these checks when the integration fails:

* invalid or replaced authentication values
* missing or incorrect IDR endpoint configuration
* unsupported rich content that does not return usable fallback text
* throttling or response delays
* empty or unusable bot output

Inspect the upstream payload and the node output before you change the fallback logic. That helps you separate authentication failures from formatting or timing failures.

## Verification

1. Confirm the current connection value and bot entry point both match the intended environment.
2. Run a controlled test conversation through the Copilot Studio branch.
3. Confirm the success path returns the expected content to the next node.
4. Force at least one timeout, authentication, or empty-response path and confirm the fallback route works as designed.
5. Confirm the integration owner has a documented process for renewing or replacing the required authentication values.

## Related topics

Go to **Configure advanced Dialogue Studio features** for the broader admin guidance on AI-driven flow behavior and fallback design.

{% content-ref url="/spaces/gIhRKIrtrwqPt8cNlAy6/pages/tVbNw2DZ0Mb6w6i0kFlM" %}
[Configure advanced Dialogue Studio features](/contact-center-configuration/building-your-callflow/via-dialogue-studio/configure-advanced-dialogue-studio-features.md)
{% endcontent-ref %}

Go to **Troubleshoot Dialogue Studio** for recurring runtime errors and payload-shape checks when a flow branch does not continue as expected.

{% content-ref url="/spaces/gIhRKIrtrwqPt8cNlAy6/pages/1DZ33M6NXFEl7w5wpxlG" %}
[Troubleshoot Dialogue Studio](/contact-center-configuration/building-your-callflow/via-dialogue-studio/troubleshoot-dialogue-studio.md)
{% endcontent-ref %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://atlas.anywhere.now/channels-integrations/dialogue-studio-integrations/integrate-copilot-studio-with-dialogue-studio.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
