Use the Azure DevOps integration when a team's work already lives in Azure DevOps Boards and you want it visible, plannable, and reportable in DevStride without re-keying it. DevStride imports the projects you choose, recreates their iterations as time boxes and boards, and then keeps the imported items current as work items change in Azure DevOps.
Setup has two stages: create a Credential that connects an Azure DevOps organization, then map that organization's projects and work item types onto your DevStride data model and import.
dev.azure.com. There is no setup path for Azure DevOps Server (on-premises).To reach the integration, open Configure Settings → Integrations → Azure DevOps. The Integrations group also lists Credentials, which is where the connection itself is made. You need Manage Integrations to see these entries.
Credentials store the authorization DevStride uses to talk to Azure DevOps. The Credentials page and its Add Credential dialog are shared with the Jira integration; the steps are the same, with the Provider set to Azure DevOps:
Use Edit on a credential to rename it or Delete it. Deleting a credential disconnects every organization installed through it (see Disconnecting).
If you open the Azure DevOps page before connecting an organization, you will see a Connect Azure DevOps prompt. Connect to get started takes you to the Credentials page.
Once an organization is connected, open Configure Settings → Integrations → Azure DevOps. Each connected organization is an expandable section headed by its base URL, with these controls:
Under Select projects to setup, every project in the organization is listed with its state and last-updated time. Toggle a project on to configure it. Turning a project on or off is saved immediately; everything else waits for Save changes.
Expanding an enabled project shows its mapping form. Set the two project-level choices first:
Under Azure DevOps Team → DevStride Team, each project team is listed. Team mapping decides which work items are imported at all, and which DevStride team they belong to: at import time DevStride reads each mapped team's area paths and imports only the work items whose Area Path is one of them, giving each item that DevStride team. Work items in areas that belong to no mapped team are not imported, and a project with no team mapped imports nothing.
Use Infer team mappings to fill this table. The per-row team picker is currently disabled in the UI, so inference is the way to populate it.
The Azure DevOps Work Types list shows the work item types from the project's process that live on a backlog: portfolio backlog types (Epic, Feature), the requirement backlog type (User Story, Product Backlog Item, or Requirement), the task backlog type, and the bug type. Other work item types are not offered and are not imported.
Select a work type, then choose the DevStride Item Type it should map to. Each work type shows how complete its mappings are as a percentage. For every mapped work type, open its sections and map:
| Section | Maps | Notes |
|---|---|---|
| Statuses | Azure DevOps Work Item State → DevStride Board Status | Statuses come from the project's Status Collection, so pick that first. States in the Removed category are not listed. |
| Tags | Azure DevOps Tag → DevStride Tag | DevStride tags come from the Item Type's tag collection. Unmapped Azure DevOps tags are dropped on import. |
| Priority Levels | Azure DevOps Priority → DevStride Priority Level | The Azure DevOps side lists the work type's allowed Priority values; the DevStride side comes from the Item Type's priority collection. |
When your mappings are ready, click Save changes. If you leave the page with unsaved edits, DevStride warns you first.
Click Initiate import on a project. The button stays disabled while you have unsaved changes or another Azure DevOps job is still running. An import needs the project's Status Collection and Workstream set; DevStride tells you which one is missing.
Imports run as jobs that you can follow on the Import Jobs tab. Each row shows the job type, when it started and last updated, who started it, the latest message, and its status; expand a row for the job's input, output, progress, and any errors. The list refreshes every 30 seconds.
An import runs these steps in order:
If you change a project's mappings after it has already been imported, DevStride offers to Re-import that project so the new mappings take effect (No, I will do it later leaves existing items as they are).
| Azure DevOps | DevStride |
|---|---|
| Work item type | Item Type (per your mapping), with the type's color |
| Title, Description | Title, Description |
| State | Board status (per your mapping) |
| Priority | Priority level (per your mapping) |
| Tags | Tags (per your mapping; unmapped tags are dropped) |
| Assigned To, Created By | Assignee, author |
| Start Date, Target Date | Start date, due date (both are cleared if the target date is before the start date) |
| Effort | Point effort |
| Parent link | Parent item, if the pair of Item Types is a permitted parent/child; otherwise the project's Workstream |
| Area | Team (via team mapping) |
| Iteration | Board or time box created from that iteration |
DevStride matches the people on a work item (creator, assignee, last changer) to DevStride users by email. Someone without a DevStride account is created as an imported user and added to your organization with the default invite role; an assignee is also added to the DevStride team mapped to the item's area. Changes are recorded in DevStride as made by that person, at the time they happened in Azure DevOps.
At the end of each import, DevStride registers service hooks on the project for work item created, updated, deleted, and restored events. From then on:
Sync is one-way, from Azure DevOps into DevStride. Nothing you change in DevStride is written back to Azure DevOps.
An item imported from Azure DevOps shows an imported badge with the Azure DevOps icon. Selecting it opens a popup with:
Imported items are read-only in DevStride: you can open them, follow relationships and board links, and read everything, but synced fields cannot be edited and relationships and blockers cannot be changed from the DevStride side.
You can disconnect at three levels. Each asks what to do with the items that came from Azure DevOps:
Both choices are irreversible; recovering the items means a full re-import.
| Scope | Where | What happens |
|---|---|---|
| One project | Toggle the project off on the Azure DevOps page | Prompts for the item behavior if the project has been imported; a disable job runs |
| One organization | Disconnect next to the organization on the Credentials page | Removes the installation and its service hooks; Installation disconnection initiated. Please refresh in a few minutes. |
| The credential | Edit → Delete on the Credentials page | Disconnects every organization installed through the credential; Credential deletion initiated. Please refresh in a few minutes. |
| Symptom | Cause and fix |
|---|---|
| Initiate import is greyed out | You have unsaved changes (click Save changes), or another Azure DevOps job is still pending or running (wait for it on Import Jobs). |
| Please select a status collection to continue / Please select a workstream to continue | Set both project-level fields, save, then import. |
| Please select a work type that supports decimal point effort | Enable point effort with the Decimal type on the Item Type under Configure Settings → Data Model → Item Types, or pick another Item Type. |
| A project's work item types are missing from the list | Only backlog-level types (portfolio, requirement, task, and bug) are offered. Check the project's process configuration in Azure DevOps. |
| The import completes but brings in few or no items | Only work items whose Area Path belongs to a mapped team are imported. Map the missing teams (Infer team mappings), save, and re-import. |
| The import fails with Organization has no default invite role configured. | People on the work items could not be added as DevStride users. Set a default invite role for the organization and run the import again. |
| Changes in Azure DevOps stop arriving | Check that the project's service hooks still exist in Azure DevOps (Project settings → Service hooks) and that your DevStride subscription is active. Re-importing the project re-registers the hooks. |
| DevStride asks you to reconnect the integration | Azure DevOps reported that the stored authorization has expired or been revoked. Re-create the credential's connection under Configure Settings → Integrations → Credentials; syncing resumes on the next event. |
list_integration_installations, create_integration_installation, and submit_integration_job work with Azure DevOps installations tooConnected Apps
See which apps you have authorized through OAuth to act on your DevStride account — AI clients such as Claude or Cursor — and revoke any you no longer use.
Subscription & Billing
See your plan and who it counts, set up monthly card payments before your free trial ends, manage cards and billing details, download receipts and invoices, and know what happens if payment lapses.