Provision SharePoint agents using Power Automate
Mar 3, 2025 • 4 • 670
Table of contents
Scenario
On a SharePoint front page or document library you can create a SharePoint agent. Totally fine for just creating a couple, but what if the scenario requires the same SharePoint agent setup on a lot of sites. In that case you would automatically want to provision those agents. This way you can immediately impact the behavior, change the default of the welcome message, starter prompts and instructions for the agent. This blog describes how this can be achieved using Power Automate Flow.
Step by step
The steps on high level that needs to be done to provision a SharePoint agent:
All this can be done using the action ‘Send an HTTP request to SharePoint’, no premium license needed.
1. Get site ID
Retrieve the site id of the site for which you want to create an agent. This value is needed in the last step.
2. Get site title
Retrieve the site title of the site for which you want to create an agent. This value is needed in the last step.
3. Check Site Asset Library
Parameter | Value |
---|---|
URL | «the site url» |
TYPE: | POST |
URI: | _api/web/lists/EnsureSiteAssetsLibrary() |
4. Create folder for Copilot
By default the folder is SiteAssets%2FCopilots
.
Parameter | Value |
---|---|
URL | «the site url» |
TYPE: | POST |
URI: | /_api/web/folders/Add(@a1)?@a1=‘SiteAssets%2FCopilots’ |
5. Create agent
Parameter | Value |
---|---|
URL | «the site url» |
TYPE: | POST |
URI: | /_api/web/GetFolderByServerRelativePath(DecodedUrl=’@{substring(variables(‘SiteURL’), indexOf(variables(‘SiteURL’), ‘/sites’))}’)/Files/AddUsingPath(DecodedUrl=‘Name.agent’,EnsureUniqueFileName=true,AutoCheckoutOnInvalidData=true)?&$Select=ServerRelativeUrl,UniqueId,Name,VroomItemID,VroomDriveID,ServerRedirectedUrl&$Expand=ListItemAllFields |
The body is in JSON format which contains the configuration of the SharePoint agent. You can change the defaults conversation starters, define the welcome message and define the description and behavior of the agent.
{
"schemaVersion": "0.2.0",
"customCopilotConfig": {
"conversationStarters": {
"conversationStarterList": [
{
"text": "Summarize any key highlights"
},
{
"text": "Create an FAQ based on these resources"
},
{
"text": "How can I use these resources?"
}
],
"welcomeMessage": {
"text": "Welcome! Enhance your productivity with this agent. Start a conversation by asking a question or selecting one of the suggested prompts."
}
},
"gptDefinition": {
"name": "@{variables('Title')} agent",
"description": "This is an agent curated based on the content from the site.",
"instructions": "Provide helpful, accurate, and relevant information while maintaining a professional and courteous tone.",
"capabilities": [
{
"name": "OneDriveAndSharePoint",
"items_by_sharepoint_ids": [],
"items_by_url": [
{
"url": "@{variables('SiteURL')}",
"name": "@{variables('Title')}",
"site_id": "@{variables('siteid')}",
"web_id": "@{variables('webid')}",
"list_id": "00000000-0000-0000-0000-000000000000",
"unique_id": "00000000-0000-0000-0000-000000000000",
"type": "Site"
}
]
}
]
},
"icon": "@{variables('icon')}"
}
}
The icon in a variable
The default icon is the Copilot logo in base64 format. To have a cleaner view of the body in JSON format I placed the icon in a separate variable.data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABAAAAAQACAYAAAB/HSuDAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAACUJSURBVHhe7dhNbuVomqTRHvf+91Qb6P1UI5AIhMLTXK4fysj72THgjDLT+V5SNajn//y///s//wsAAACcTQAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAA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05duBoBXJgAAAI/wlKXbAOAEAgAA8Eg/tfQsAFggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAAYIAAAAAAAAMEAAAAABggAAAAAMAAAQAAAAAGCAAAAAAwQAAAAACAAQIAAAAADBAAAAAA4Hj/87//H858st1c+wJvAAAAAElFTkSuQmCC
The body for a document library is a little bit different:
The “items_by_url” node differs from a SharePoint Agent that is created on site level.
You can get the list id by using api call: GET https://{site_url}/_api/web/lists/GetByTitle('List Title')
{
"schemaVersion": "0.2.0",
"customCopilotConfig": {
"conversationStarters": {
"conversationStarterList": [
{
"text": "Summarize any key highlights"
},
{
"text": "Create an FAQ based on these resources"
},
{
"text": "How can I use these resources?"
}
],
"welcomeMessage": {
"text": "Welcome! Enhance your productivity with this agent. Start a conversation by asking a question or selecting one of the suggested prompts."
}
},
"gptDefinition": {
"name": "@{variables('Title')} agent",
"description": "This is an agent curated based on the content from the selected file sources.",
"instructions": "Provide accurate information about the content in the selected files and reply in a formal tone.",
"capabilities": [
{
"name": "OneDriveAndSharePoint",
"items_by_sharepoint_ids": [],
"items_by_url": [
{
"url": "@{variables('SiteURL')}",
"name": "@{variables('Title')}",
"site_id": "@{variables('siteid')}",
"web_id": "@{variables('webid')}",
"list_id": "@{variables('listid')}",
"unique_id": "00000000-0000-0000-0000-000000000000",
"type": "Folder"
}
]
}
]
},
"icon": "@{variables('icon')}"
}
}
Quick link to the agent
The provisioned agent exists in de Site Asset Library and can be accessed over there. You can create a quick link to the agent with the following setup: https://«tenantname».sharepoint.com/sites/«sitename»/SiteAssets/Forms/AllItems.aspx?id=/sites/«sitename»/SiteAssets/Copilots/«agentname».agent&parent=/sites/«sitename»/SiteAssets/Copilots
Conclusion
In this blog, I used a few variables to technically enable the provisioning of the SharePoint agent. Please consider personalizing the welcome message, conversation starter questions, and agent instructions.