Adding On-Premises Actions to Copilot

June 6, 2025

This blog post briefly describes, how to create a new issue within Jira Data Center, right from a Copilot flow.

We were approached by a customer who was in need of easily usable and secure Copilot knowledge connectors for his on-premises sources, Jira and Confluence. Therefore, they started using our enterprise search connectors. In the course of the discussion, the requirement came up that besides showing tailored knowledge, also issues should be created directly from Copilot.

Extending Copilot to Create Issues in Jira Data Center

The approach to create new tickets from Copilot leverages an on-premises data gateway and the Jira REST API. Integrating it through Copliot Studio and Flows in there is straight-forward. Only, you create issues always using the same technical account, as the approach uses Basic authentication.

In order to configure the integration proceed as follows.

On-Premises Data Gateway

Download and setup Microsoft’s on-on-premise Data Gateway for PowerAutomate. You can find the instructions and download link at https://learn.microsoft.com/en-us/power-automate/gateway-reference.

After installing proceed to Copilot Studio.

Copilot Studio

Create a New Flow

  1. Open Flows

  2. Click on New agent flow

  3. Generate the following flow

    image-20250606-081320.png
  4. In “When Copilot Studio calls a flow” add two fields “title” and “description”

  5. Add an “Invoke an HTTP request (preauthorized)” action

    Screenshot of the action, you need to add
    1. Dialog 1 (Configuring the connection and gateway)

      1. Add a Connection name

      2. Add Resource URI (your Jira URL, <Jira Server>)

      3. Add Base Resource URL (your Jira URL, <Jira Server>)

      4. As authentication type choose “Login using a Basic Gateway”

      5. Add a username and password which is proven to work with Jira.
        Please make sure that you do not misspell both, as changing both need to recreate the whole action.

      6. Choose the on-premises Gateway you created above

    2. Dialog 2 (Configuring the POST parameters):

      2.png
      1. As method choose POST

      2. URL is <Jira Server>/rest/api/2/issue

      3. Headers should be

        1. Accept:application/json

        2. Content-Type:application/json

      4. Body should be something like
        {"fields":{"description":"@{triggerBody()?['text_1']}","summary":"@{triggerBody()?['text']}","issuetype":{"subtask":false,"id":"10002","_links":{},"_expandable":{},"startAt":0,"maxResults":0,"total":0},"project":{"id":"10001","_links":{},"startAt":0,"maxResults":0,"total":0}}}
        where

        1. issuetype.id must be the right id of an issue type in your Jira

        2. project.id must be the id of the project, where you like to see the tickets created

        3. triggerBody[text_1] is the reference to the description from Step 4 above

        4. triggerBody[text] is the reference to the title from Step 4 above

  6. Now, please try your flow with manual parameters and fix any issues

  7. Publish the flow

Create the Agent

Now you can create your knowledge agent.

  1. Open agents

  2. Click on new agent

  3. Within the agent, add a meaningful title, description, and instructions.
    The title will be visible later on to all users

  4. Click on or browse to knowledge

    1. Click on Add knowledge

      1. Add your Graph connectors (for instance our RheinInsights Jira and Confluence connectors)

  5. Click on or browse to tools

    1. Click on Add a tool

    2. Choose flow

    3. Choose your flow from above

  6. Click on save

  7. Test your agent

  8. Afterwards publish the agent to your Copilot

    1. Click on Publish / Publish your agent

    2. Choose Teams and Microsoft 365 Copilot

    3. Click on Save

Escalation

The bot will now surface your Jira and Confluence knowledge. However, it does not yet automatically create tickets unless someone asks (“create a ticket”).

In order to create tickets when no good answer is provided from the knowledge, you can add your Flow to the escalation process. Then, the bot will propose creating a new ticket if it does not offer a good answer.

Copliot Esclation Topic with our Flow as Action

More insights
Adding On-Premises Actions to Copilot > The June Release of the RheinInsights Retrieval Suite