Azure DevOps
Azure DevOps provides services for teams to share code, track work, and ship software - for any language, all in a single package. It's the perfect complement to your IDE.
This connector is available in the following products and regions:
| Service | Class | Regions |
|---|---|---|
| Copilot Studio | Premium | All Power Automate regions except the following: - US Government (GCC High) - China Cloud operated by 21Vianet - US Department of Defense (DoD) |
| Logic Apps | Standard | All Logic Apps regions except the following: - Azure China regions - US Department of Defense (DoD) |
| Power Apps | Premium | All Power Apps regions except the following: - US Government (GCC High) - China Cloud operated by 21Vianet - US Department of Defense (DoD) |
| Power Automate | Premium | All Power Automate regions except the following: - US Government (GCC High) - China Cloud operated by 21Vianet - US Department of Defense (DoD) |
| Contact | |
|---|---|
| Name | Microsoft |
| URL | https://azure.microsoft.com/en-us/support/?icid=devops |
| Connector Metadata | |
|---|---|
| Publisher | Microsoft |
| Website | https://learn.microsoft.com/en-us/azure/devops/?view=azure-devops |
| Privacy policy | https://privacy.microsoft.com |
| Categories | IT Operations |
To use this integration, you'll need access to an Azure DevOps account with API access enabled. To make a connection, select Sign In. You are then prompted to provide your Azure DevOps Services account. Follow the remainder of the screens to create a connection.
When using the connection, if you're not seeing the list of projects you're expecting please check the account you created the connection with and try again. More details can be found on the Visual Studio Marketplace.
You're now ready to start using this integration.
Sending attachments
You can create file attachments using Send an HTTP request to Azure DevOps action, and then following these steps:
- Convert file content to a Base64 string and put it in "Body" parameter.
- Set "Body is Base64" parameter to Yes.
Creating test plans
Before creating a Test Plan using Create a work item action you must first create a Test Suite. You can use the same Create a work item action for creating Test Suites and then create a Test Plan with a link to the Test Suite.
Your simplest option is to invoke Test Plans - Create API directly using Send an HTTP request to Azure DevOps action. The API automatically creates the associated Test Suite.
Other Fields parameter
Create a work item and Update a work item actions have support of Other Fields parameter. These fields give additional flexibility when updating work items. Key-value pairs are transformed to the following JSON:
{
"op": "add",
"path": "/fields/<key>",
"value": <value>
}
Note that op is a constant, and <key> is expected to be a valid field name under DevOps /fields enumeration.
Here are a few usage examples. You can fine more examples in Work Items - Update REST API.
- History update
key= System.Historyvalue= Moving to the right area path` - Move work items:
key= System.TeamProjectvalue= Fabrikam-Scrum
Known Issues and Limitations
The following list provides known limitations of using the Azure DevOps connector.
Trigger When a work item is updated will be skipped when new/existing links were added/deleted to work item.
Action Get work item details and work item based triggers can miss some fields (like System.AttachedFileCount) in a response since this is a limitation of Azure DevOps REST API. To workaround this issue, you can do either of the following:
- Use Send an HTTP request to Azure DevOps with Get Work Item endpoint to get specific fields
- Use Get query results with a query that returns the required fields
Action Send an HTTP request to Azure DevOps has a limited set of scopes which control what resources can be accessed by the action and what operations the action is allowed to perform on those resources.
Scopes:
- vso.agentpools_manage
- vso.build_execute
- vso.chat_manage
- vso.code_manage
- vso.code_status
- vso.connected_server
- vso.dashboards_manage
- vso.entitlements
- vso.extension.data_write
- vso.extension_manage
- vso.identity
- vso.loadtest_write
- vso.packaging_manage
- vso.project_manage
- vso.release_manage
- vso.test_write
- vso.work_write
Azure DevOps connector is designed to work on behalf of current user credentials only. There is no possibility to change the connection or to switch between accounts.
Please note that password changes under the Azure DevOps account will not affect the existing connection.
Azure DevOps Personal Access Tokens are not supported for authentication with the connector.
Action Create a work item has limitation for Repro Steps parameter - an image larger than 30 KB could be displayed incorrectly in the created item. Image larger than 500Kb could be removed from request. The recommended image size should be less than 30 KB.
Action Create a work item very rarely could return the 404 response code. Most often this happens for the following reason: immediately after an item is created all its fields are being requested. The request can be sent to the copied database. The changes synchronized almost real-time, but sometimes it takes a few seconds. Because of this, the GET request may return an empty result which represents as a 404 status code in a response. To avoid this exception, you can use the "Return all fields" flag and set it to the 'No' value.
When working across multiple directories, only organizations from the home tenant of the signed-in account are returned. Switching directories from the Azure DevOps profile page does not affect the organizations available. To access organizations in another tenant, create the connection using credentials for an account that belongs to that tenant.
Note
In the Action Create a work item
- The field name must meet the criteria mentioned in Azure DevOps documentation.
Creating a connection
The connector supports the following authentication types:
| Client Certificate Auth | Provide Microsoft Entra ID credentials using PFX certificate and password | All regions | Shareable |
| Log in with Azure DevOps Credentials | Log in with Azure DevOps Credentials | Azure Government and US Government (GCC) only | Not shareable |
| Log in with Microsoft Entra ID | Log in with Microsoft Entra ID | PRODUCTION only | Not shareable |
| Service principal authentication | Use your Microsoft Entra ID application for service principal authentication | All regions | Shareable |
| Default [DEPRECATED] | This option is only for older connections without an explicit authentication type, and is only provided for backward compatibility. | All regions | Not shareable |
Client Certificate Auth
Auth ID: CertOauth
Applicable: All regions
Provide Microsoft Entra ID credentials using PFX certificate and password
This is shareable connection. If the power app is shared with another user, connection is shared as well. For more information, please see the Connectors overview for canvas apps - Power Apps | Microsoft Docs
| Name | Type | Description | Required |
|---|---|---|---|
| Tenant | string | True | |
| Client ID | string | The client ID of for the Microsoft Entra ID application | True |
| Client certificate secret | clientCertificate | The client certificate secret allowed by this application | True |
Log in with Azure DevOps Credentials
Auth ID: ADO3pAuthForGCC
Applicable: Azure Government and US Government (GCC) only
Log in with Azure DevOps Credentials
This is not shareable connection. If the power app is shared with another user, another user will be prompted to create new connection explicitly.
Log in with Microsoft Entra ID
Auth ID: EntraOAuth
Applicable: PRODUCTION only
Log in with Microsoft Entra ID
This is not shareable connection. If the power app is shared with another user, another user will be prompted to create new connection explicitly.
Service principal authentication
Auth ID: OauthSP
Applicable: All regions
Use your Microsoft Entra ID application for service principal authentication
This is shareable connection. If the power app is shared with another user, connection is shared as well. For more information, please see the Connectors overview for canvas apps - Power Apps | Microsoft Docs
| Name | Type | Description | Required |
|---|---|---|---|
| Tenant | string | True | |
| Client ID | string | The client ID of for the Microsoft Entra ID application | True |
| Client secret | securestring | True |
Default [DEPRECATED]
Applicable: All regions
This option is only for older connections without an explicit authentication type, and is only provided for backward compatibility.
This is not shareable connection. If the power app is shared with another user, another user will be prompted to create new connection explicitly.
Throttling Limits
| Name | Calls | Renewal Period |
|---|---|---|
| API calls per connection | 300 | 60 seconds |
Actions
| Add work item link (Preview) |
Adds a link to a work item. |
| Create a new release |
Create a release, based on an existing release definition. |
| Create a work item |
Create a new work item with the provided attributes. |
| Create work item comment (Preview) |
Adds a comment to a work item. |
| Delete work item comment (Preview) |
Deletes a comment on a work item. |
| Delete work item link (Preview) |
Deletes a link from a work item. |
| Get a User Profile |
Gets a user profile. |
| Get build (Preview) |
Retrieves a build by its identifier. |
| Get build timeline (Preview) |
Retrieves the timeline for a specific build. |
| Get query results |
Retrieves the result of a work item query. |
| Get query results [DEPRECATED] |
This action has been deprecated. Please use Get query results instead.
|
| Get work item attachment (Preview) |
Downloads the content of a work item attachment. |
| Get work item children |
Get a list of children (max size 1000) of a single work item. |
| Get work item comments (Preview) |
Retrieves comments for a work item. |
| Get work item details |
Get the details of a single work item. |
| Get work item details (V2) (Preview) |
Get the details of a single work item with optional field selection and expand options. |
| List build requesters (Preview) |
Retrieves unique project members who can be used to filter builds by the requested for identity. |
| List builds (Preview) |
Retrieves builds for the specified project with optional filters. |
| List Git branches (Preview) |
Retrieves the list of Git branches available within the project's repositories. |
| List Git repositories |
Retrieves the list of Git repositories in a project. |
| List iterations |
Retrieves the list of iterations for a project. |
| List Organizations |
Retrieves the list of Organizations the user is a member of. |
| List pipeline runs |
Gets top 10000 runs for a particular pipeline |
| List pipelines |
Retrieves the list of pipelines in a project. |
| List projects |
Retrieves the list of projects in an Organization. |
| List queries within folder |
Retrieves the list of work item queries within a folder for a given project. |
| List release definitions |
Retrieves the list of release definitions associated with a project. |
| List root level queries |
Retrieves the list of root-level work item queries in a project. |
| List work item fields (Preview) |
Retrieves the work item fields available within the specified Azure DevOps Organization or project. |
| List work item types |
Retrieves the list of Work Item Types accessible in a given Azure DevOps project. |
| List work items |
Returns a list of work items. |
| Queue a new build |
Create a build, based on an existing build definition, and add it to the build queue. |
| Search for work items |
Provides a set of results for the search text. |
|
Send an HTTP request to Azure Dev |
Construct an Azure DevOps REST API request to invoke. Please refer to the following link for all available endpoints: https://docs.microsoft.com/rest/api/azure/devops |
| Update a work item |
Update an existing work item by id. |
| Update work item comment (Preview) |
Updates a comment on a work item. |
Add work item link (Preview)
Adds a link to a work item.
Parameters
| Name | Key | Required | Type | Description |
|---|---|---|---|---|
|
Organization Name
|
account | True | string |
The name of the Organization. This can be found in the instance URL i.e. {Organization}.visualstudio.com. The Organization should have "Third-party application access via OAuth" enabled to prevent errors in the operation. |
|
Project Name
|
project | True | string |
Project ID or project name |
|
Work Item Type
|
type | True | string |
The work item type of the work item. |
|
Work Item Id
|
workItemId | True | integer |
Id of a work item. |
|
Link Type
|
linkType | True | string |
Relation type for the link. Defaults to 'System.LinkTypes.Related' when omitted. |
|
Target URL
|
targetUrl | True | string |
Absolute URL of the link target. Must be an absolute URI and match the expectations for the selected Link Type. |
|
Comment
|
comment | string |
Optional comment stored alongside the link. |
Returns
Create a new release
Create a release, based on an existing release definition.
Parameters
| Name | Key | Required | Type | Description |
|---|---|---|---|---|
|
Organization Name
|
account | True | string |
The name of the Organization. This can be found in the instance URL i.e. {Organization}.visualstudio.com. The Organization should have "Third-party application access via OAuth" enabled to prevent errors in the operation. |
|
Project Name
|
project | True | string |
The name of the project within the specified Organization. |
|
Release Definition Id
|
releaseDefId | True | string |
The identifier of the release definition to use. |
|
Description
|
Description | string |
The description of the release start metadata. |
|
|
Is Draft
|
IsDraft | boolean |
Specifies whether the release is a draft. |
|
|
Reason
|
Reason | string |
The reason for the release start metadata. |
|
|
Name
|
Name | True | string |
The name of the configuration variable. |
|
Value
|
Value | string |
The value of the configuration variable. |
Returns
Release
- Body
- Release
Create a work item
Create a new work item with the provided attributes.
Parameters
| Name | Key | Required | Type | Description |
|---|---|---|---|---|
|
Organization Name
|
account | True | string |
The name of the Organization. This can be found in the instance URL i.e. {Organization}.visualstudio.com. The Organization should have "Third-party application access via OAuth" enabled to prevent errors in the operation. |
|
Project Name
|
project | True | string |
The name of the project within the specified Organization. |
|
Work Item Type
|
type | True | string |
Type of this work item |
|
Return all fields
|
shouldReturnAllFields | boolean |
When setting the value to 'No', only the work item ID will be returned. If the value is 'Yes', all fields of the created Item along with the ID will be returned. The default value is 'Yes' |
|
|
Work Item Details
|
workItem | True | dynamic |
Information to include in the new work item |
Returns
Create work item comment (Preview)
Adds a comment to a work item.
Parameters
| Name | Key | Required | Type | Description |
|---|---|---|---|---|
|
Organization Name
|
account | True | string |
The name of the Organization. This can be found in the instance URL i.e. {Organization}.visualstudio.com. The Organization should have "Third-party application access via OAuth" enabled to prevent errors in the operation. |
|
Project Name
|
project | True | string |
Project ID or project name |
|
Work Item Type
|
type | string |
The work item type to generate schema for. |
|
|
Work Item Id
|
workItemId | True | integer |
Id of a work item. |
|
Comment Format
|
format | string |
Format of a work item comment (Markdown or Html). |
|