Azure DevOps is a comprehensive suite of development tools and services that provides end-to-end DevOps capabilities including version control, project management, continuous integration, and deployment automation for modern software development teams.
Power end-to-end data operations for your Azure DevOps API with Nexla. Our bi-directional Azure DevOps connector is purpose-built for Azure DevOps, making it simple to ingest data, sync it across systems, and deliver it anywhere — all with no coding required. Nexla turns API-sourced data into ready-to-use, reusable data products and makes it easy to send data to Azure DevOps or any other destination. With comprehensive monitoring, lineage tracking, and access controls, Nexla keeps your Azure DevOps workflows fast, secure, and fully governed.
Features
Type: API
SourceDestination
Seamless API Integration: Connect to any endpoint as source or destination without coding, with automatic data product creation
Visual Composition & Chaining: Build complex integrations using visual templates, chain API calls, and compose workflows with data validation and filtering
API Proxy: Expose curated slices of your data securely with a secure and customizable API proxy that validates and transforms data on the fly
Request optimization with intelligent batching, retry, and caching to minimize API calls and costs
Before creating an Azure DevOps credential in Nexla, you need to create a Personal Access Token (PAT) in your Azure DevOps organization. Azure DevOps uses Basic Authentication with Personal Access Tokens for secure API access.
Personal Access Tokens provide secure, token-based access to the Azure DevOps API without requiring your account password. PATs can be scoped to specific organizations, projects, and permissions, providing fine-grained access control.
Navigate to User Settings: Click on your user profile icon in the upper right corner, and select Personal access tokens from the dropdown menu.
Create a New Token: Click the + New Token button to create a new Personal Access Token.
Configure Token Settings:
Enter a descriptive name for the token in the Name field (e.g., "Nexla Integration").
Select the Organization where you want to use this token.
Set the Expiration date for the token. Tokens can be set to expire after a specific number of days or can be set to never expire (not recommended for security).
Select the Scopes (permissions) that the token should have. For full API access, select Full access, or select specific scopes based on your needs:
Work Items (Read & Write): For reading and writing work items
Code (Read & Write): For reading and writing code repositories
Build (Read & Execute): For reading and executing builds
Release (Read, Write & Execute): For reading, writing, and executing releases
Project and Team (Read): For reading project and team information
Service Connections (Read & Query): For reading and querying service connections
Create and Copy Token: Click the Create button to generate the token. Important: Copy the token immediately after creation, as it will only be displayed once. If you lose the token, you'll need to create a new one.
Personal Access Tokens provide programmatic access to your Azure DevOps organization. Keep your PAT secure and do not share it publicly or commit it to version control systems. If you suspect your token has been compromised, revoke it immediately in the Personal Access Tokens settings and create a new one. For detailed information about creating and managing Personal Access Tokens, see the Azure DevOps Personal Access Tokens documentation.
After selecting the data source/destination type, click the Add Credential tile to open the Add New Credential overlay.
New Credential Overlay – Azure DevOps
Enter a name for the credential in the Credential Name field and a short, meaningful description in the Credential Description field.
Enter your Personal Access Token in the Personal Access Token field. This should be the PAT you created in your Azure DevOps organization. The token is used together with a username for Basic Authentication to the Azure DevOps API.
The Personal Access Token provides secure, token-based access to the Azure DevOps API. The token is used for Basic Authentication, where the username is set to "Nexla" and the password is your Personal Access Token. Keep your PAT secure and do not share it publicly or commit it to version control systems. For detailed information about Azure DevOps API authentication, see the Azure DevOps REST API documentation.
Click the Save button at the bottom of the overlay to save the configured credential. The newly added credential will now appear in a tile on the Authenticate screen during data source/destination creation.
To create a new data flow, navigate to the Integrate section, and click the New Data Flow button. Select the Azure DevOps connector tile, then select the credential that will be used to connect to the Azure DevOps instance, and click Next; or, create a new Azure DevOps credential for use in this flow.
Nexla provides pre-built templates that can be used to rapidly configure data sources to ingest data from common Azure DevOps endpoints. Select the endpoint from which this source will fetch data from the Endpoint pulldown menu. Available endpoint templates are listed in the expandable boxes below.
Get Object By ID: Work Item Tracking
This endpoint retrieves the details for a specific Work Item Tracking object by its ID. Use this endpoint when you need to access detailed information about a specific work item, such as a task, bug, user story, or other work item type.
Enter the name of your Azure DevOps organization in the Organization field. This is the organization name that appears in your Azure DevOps URL (e.g., if your URL is https://dev.azure.com/MyOrg, enter MyOrg).
Enter the name of your Azure DevOps project in the Project field. This is the project name within your organization.
Select the type of Work Item Tracking object you want to retrieve from the WIT Object dropdown menu. Available options include work item types such as workitems, queries, fields, and other WIT object types.
Enter the ID of the specific object you want to retrieve in the ID field. This should be the numeric ID of the work item or object you want to access.
Enter the API version in the API Version field. This should be the Azure DevOps REST API version you want to use (e.g., 7.0, 7.1). The API version determines which features and response formats are available.
The endpoint uses GET requests to the Azure DevOps Work Item Tracking API endpoint (https://dev.azure.com/{organization}/{project}/_apis/wit/{wit_object}/{id}) with the specified API version query parameter.
The endpoint will return the complete details of the specified work item or object. The response data is returned at the root level of the JSON response ($), containing all fields and properties of the work item.
This endpoint requires a valid organization name, project name, WIT object type, and object ID. The endpoint does not use pagination and returns a single object. The endpoint requires Basic Authentication with a Personal Access Token, which is handled automatically by your credential configuration. For detailed information about the Work Item Tracking API, including available object types, API versions, and response formats, see the Azure DevOps Work Item Tracking API documentation.
WIQL - Query by Wiql
This endpoint executes a Work Item Query Language (WIQL) query to retrieve work items that match the specified query criteria. Use this endpoint when you need to retrieve multiple work items based on custom query conditions, such as filtering by status, assignee, or other work item fields.
Enter the name of your Azure DevOps organization in the Organization field. This is the organization name that appears in your Azure DevOps URL.
Enter the name of your Azure DevOps project in the Project field. This is the project name within your organization.
Enter the name of your Azure DevOps team in the Team field. This is the team name within your project.
Enter your WIQL query in the WIQL field. WIQL is a SQL-like query language for querying work items. For example, SELECT [System.Id] FROM WorkItems WHERE [System.State] = 'Active' retrieves all active work items.
Enter the API version in the API Version field. This should be the Azure DevOps REST API version you want to use (e.g., 7.0, 7.1).
The endpoint uses POST requests to the Azure DevOps WIQL API endpoint (https://dev.azure.com/{organization}/{project}/{team}/_apis/wit/wiql) with the WIQL query in the request body as JSON ({"query": "{your_wiql_query}"}).
The endpoint will return the results of the WIQL query, including work item IDs and references. The response data is returned at the root level of the JSON response ($), containing query results and work item references.
This endpoint requires a valid WIQL query string. WIQL syntax is similar to SQL and allows you to filter, sort, and select work items based on various criteria. The endpoint uses POST requests with the query in the request body. The endpoint requires Basic Authentication with a Personal Access Token, which is handled automatically by your credential configuration. For detailed information about WIQL syntax, query examples, and the WIQL API, see the Azure DevOps WIQL API documentation.
List all records : Work
This endpoint retrieves a list of all records of a selected Work object type from your Azure DevOps project. Use this endpoint when you need to access all items of a specific work type, such as all iterations, team days off, or other work-related objects.
Enter the name of your Azure DevOps organization in the Organization field. This is the organization name that appears in your Azure DevOps URL.
Enter the name of your Azure DevOps project in the Project field. This is the project name within your organization.
Enter the name of your Azure DevOps team in the Team field. This is the team name within your project.
Select the type of Work object you want to retrieve from the Work Object dropdown menu. Available options include teamsettings, iterations, teamdays off, and other work object types.
Enter the API version in the API Version field. This should be the Azure DevOps REST API version you want to use (e.g., 7.0, 7.1).
The endpoint uses GET requests to the Azure DevOps Work API endpoint (https://dev.azure.com/{organization}/{project}/{team}/_apis/work/{work_object}) with the specified API version query parameter.
The endpoint will return all records of the selected work object type. The response data is extracted from the value array in the API response ($.value[*]), with each record processed individually.
This endpoint retrieves all records of the specified work object type. The endpoint does not use pagination and returns all available records in a single request. The endpoint requires Basic Authentication with a Personal Access Token, which is handled automatically by your credential configuration. For detailed information about the Work API, including available work object types, API versions, and response formats, see the Azure DevOps Work API documentation.
Get Object By ID: Work
This endpoint retrieves the details for a specific Work object by its ID. Use this endpoint when you need to access detailed information about a specific work object, such as a team iteration or team days off entry.
Enter the name of your Azure DevOps organization in the Organization field. This is the organization name that appears in your Azure DevOps URL.
Enter the name of your Azure DevOps project in the Project field. This is the project name within your organization.
Enter the name of your Azure DevOps team in the Team field. This is the team name within your project.
Select the type of Work object you want to retrieve from the Work Object dropdown menu. Available options include teamsettings, iterations, teamdays off, and other work object types.
Enter the ID of the specific object you want to retrieve in the ID field. This should be the ID of the work object you want to access.
Enter the API version in the API Version field. This should be the Azure DevOps REST API version you want to use (e.g., 7.0, 7.1).
The endpoint uses GET requests to the Azure DevOps Work API endpoint (https://dev.azure.com/{organization}/{project}/{team}/_apis/work/{work_object}/{id}) with the specified API version query parameter.
The endpoint will return the complete details of the specified work object. The response data is extracted from the value array in the API response ($.value[*]), containing all fields and properties of the work object.
This endpoint requires a valid organization name, project name, team name, work object type, and object ID. The endpoint does not use pagination and returns a single object or array of related objects. The endpoint requires Basic Authentication with a Personal Access Token, which is handled automatically by your credential configuration. For detailed information about the Work API, including available object types, API versions, and response formats, see the Azure DevOps Work API documentation.
List all records : Core
This endpoint retrieves a list of all records of a selected Core object type from your Azure DevOps organization. Use this endpoint when you need to access organization-level data, such as all projects, teams, or other core objects.
Enter the name of your Azure DevOps organization in the Organization field. This is the organization name that appears in your Azure DevOps URL.
Select the type of Core object you want to retrieve from the Core Object dropdown menu. Available options include projects, teams, processes, and other core object types.
Enter the API version in the API Version field. This should be the Azure DevOps REST API version you want to use (e.g., 7.0, 7.1).
The endpoint uses GET requests to the Azure DevOps Core API endpoint (https://dev.azure.com/{organization}/_apis/{core_object}) with the specified API version query parameter.
The endpoint will return all records of the selected core object type. The response data is extracted from the value array in the API response ($.value[*]), with each record processed individually.
This endpoint retrieves all records of the specified core object type at the organization level. The endpoint does not use pagination and returns all available records in a single request. The endpoint requires Basic Authentication with a Personal Access Token, which is handled automatically by your credential configuration. For detailed information about the Core API, including available core object types, API versions, and response formats, see the Azure DevOps Core API documentation.
Once the selected endpoint template has been configured, click the Test button to the right of the endpoint selection menu to retrieve a sample of the data that will be fetched. Sample data will be displayed in the Endpoint Test Result panel on the right, allowing you to verify that the source is configured correctly before saving.
Azure DevOps data sources can also be manually configured to ingest data from any valid Azure DevOps REST API endpoint, including endpoints not covered by the pre-built templates, chained API calls, or custom request parameters. Select the Advanced tab at the top of the configuration screen, and follow the instructions in Connect to Any API to configure the API method, endpoint URL, path to data, metadata, and request headers.
Azure DevOps REST API endpoints follow the pattern https://dev.azure.com/{organization}/{project}/{team}/_apis/{api_path}?api-version={version}, where {project} and {team} are optional for organization-level APIs. Responses typically nest records under a value array, so set the path to data to $.value[*]. Basic Authentication with your Personal Access Token is handled automatically by your credential configuration — you do not need to add an Authorization header.
Once all of the relevant settings have been configured, click the Create button in the upper right corner of the screen to save and create the new Azure DevOps data source. Nexla will now begin ingesting data from the configured endpoint and will organize any data that it finds into one or more Nexsets.
Click the + icon on the Nexset that will be sent to the Azure DevOps destination, and select the Send to Destination option from the menu. Select the Azure DevOps connector from the list of available destination connectors, then select the credential that will be used to connect to the Azure DevOps organization, and click Next; or, create a new Azure DevOps credential for use in this flow.
Nexla provides pre-built templates that can be used to rapidly configure destinations to send data to common Azure DevOps endpoints. Select the endpoint to which data will be sent from the Endpoint pulldown menu. Then, click on the template in the list below to expand it, and follow the instructions to configure additional endpoint settings.
Create Work Item Object
This endpoint creates a new work item in Azure DevOps. Use this endpoint when you need to create work items such as tasks, bugs, user stories, or other work item types from your data.
Enter the name of your Azure DevOps organization in the Organization field. This is the organization name that appears in your Azure DevOps URL (e.g., if your URL is https://dev.azure.com/MyOrg, enter MyOrg).
Enter the name of your Azure DevOps project in the Project field. This is the project name within your organization where the work item will be created.
Select the type of work item you want to create from the Work Item Type dropdown menu. Available options include Task, Bug, User Story, Feature, Epic, and other work item types defined in your project's process template.
Enter the API version in the API Version field. This should be the Azure DevOps REST API version you want to use (e.g., 7.0, 7.1). The API version determines which features and request formats are available.
The endpoint uses POST requests to the Azure DevOps Work Item Tracking API endpoint (https://dev.azure.com/{organization}/{project}/_apis/wit/workitems/${work_item_type}) with the work item data in the request body.
The endpoint sends data from your Nexset as the request body in JSON Patch format (application/json-patch+json). Each record in your Nexset will be sent as a JSON Patch document containing the work item fields and values to create. The JSON Patch format uses operations like add, replace, and remove to specify field values.
Ensure your Nexset data includes the required fields for work item creation, such as work item title, description, and other required fields based on your project's work item type definition. The JSON Patch document should follow the Azure DevOps API specification for creating work items.
Batch mode is disabled by default for this endpoint. Each record in your Nexset will be sent as a separate API request to create a work item. If you need to create multiple work items, you can send multiple records, but each will be processed as a separate request.
The request body must be properly formatted as a JSON Patch document (application/json-patch+json) that matches the Azure DevOps API specification for creating work items. The JSON Patch format uses operations like [{"op": "add", "path": "/fields/System.Title", "value": "Work Item Title"}] to specify field values. The endpoint requires Basic Authentication with a Personal Access Token, which is handled automatically by your credential configuration. The Content-Type: application/json-patch+json header is automatically included in requests. Batch mode is disabled by default (batch.mode: false), so each record will be sent as a separate request. For detailed information about creating work items, including JSON Patch format, required fields, and API versions, see the Azure DevOps Work Items API documentation.
Update Work Item Object
This endpoint updates an existing work item in Azure DevOps. Use this endpoint when you need to modify work item fields, status, assignee, or other properties of existing work items.
Enter the name of your Azure DevOps organization in the Organization field. This is the organization name that appears in your Azure DevOps URL.
Enter the name of your Azure DevOps project in the Project field. This is the project name within your organization where the work item exists.
Enter the ID of the work item you want to update in the ID field. This should be the numeric ID of the existing work item you want to modify.
Enter the API version in the API Version field. This should be the Azure DevOps REST API version you want to use (e.g., 7.0, 7.1).
The endpoint uses PATCH requests to the Azure DevOps Work Item Tracking API endpoint (https://dev.azure.com/{organization}/{project}/_apis/wit/workitems/{id}) with the work item update data in the request body.
The endpoint sends data from your Nexset as the request body in JSON Patch format (application/json-patch+json). Each record in your Nexset will be sent as a JSON Patch document containing the work item field updates. The JSON Patch format uses operations like add, replace, and remove to specify field value changes.
Ensure your Nexset data includes the fields you want to update and their new values. The JSON Patch document should follow the Azure DevOps API specification for updating work items, including field paths (e.g., /fields/System.Title for the title field) and operation types.
Batch mode is disabled by default for this endpoint. Each record in your Nexset will be sent as a separate API request to update a work item. If you need to update multiple work items, you can send multiple records, but each will be processed as a separate request.
The request body must be properly formatted as a JSON Patch document (application/json-patch+json) that matches the Azure DevOps API specification for updating work items. The JSON Patch format uses operations like [{"op": "replace", "path": "/fields/System.Title", "value": "Updated Title"}] to specify field updates. The endpoint requires Basic Authentication with a Personal Access Token, which is handled automatically by your credential configuration. The Content-Type: application/json-patch+json header is automatically included in requests. Batch mode is disabled by default (batch.mode: false), so each record will be sent as a separate request. For detailed information about updating work items, including JSON Patch format, field paths, and API versions, see the Azure DevOps Work Items API documentation.
Azure DevOps destinations can also be manually configured to send data to any valid Azure DevOps REST API endpoint. Select the Advanced tab at the top of the configuration screen, and follow the instructions in Connect to Any API to configure the API method, endpoint URL, request headers, and request body format.
Azure DevOps REST API endpoints follow the pattern https://dev.azure.com/{organization}/{project}/{team}/_apis/{api_path}?api-version={version}. Most endpoints use JSON request bodies; work item operations require the JSON Patch format (application/json-patch+json) with operations like add, replace, and remove, along with the Content-Type: application/json-patch+json header. Basic Authentication with your Personal Access Token is handled automatically by your credential configuration.
Once all endpoint settings have been configured, click the Create button in the upper right corner of the screen to save and create the new Azure DevOps destination. Nexla will now begin sending data from the selected Nexset to the configured endpoint.