Skip to content

Azure DevOps

Bring your Azure DevOps projects and work items into Flowstate so effort tracking, cost capitalisation, and R&D reporting work automatically — no manual data entry.

What syncs

From Azure DevOpsInto FlowstateUsed for
Projects or EpicsPMS ProjectsLinking to roadmap projects, effort attribution
Work items (Tasks, Bugs, User Stories)PMS TasksEffort calculation, CapEx attribution
Work item status changesTask activityEffort tracking based on status movement
Assignees and reportersEmployee mappingsAttributing effort to the right people

Flowstate reads from Azure DevOps — it never writes back or modifies your boards.

How data stays in sync

Flowstate uses two methods to keep data current:

Webhooks (real-time): When someone creates, updates, or moves a work item in Azure DevOps, a webhook fires and Flowstate updates within seconds. This is the primary sync method.

Scheduled sync (catch-up): A full sync runs on a configurable schedule (daily by default) to catch anything webhooks might have missed — bulk imports, API changes, or webhook delivery failures.

Both methods are idempotent. Running a sync twice won't create duplicates.

Getting started

1. Connect Azure DevOps

  1. Go to Settings → Data Integrations → Azure DevOps
  2. Enter your Azure DevOps organisation URL (e.g., https://dev.azure.com/your-org)
  3. Choose your authentication method:
    • Personal Access Token (PAT) — simplest setup, good for getting started
    • Service Principal — recommended for production, uses Azure AD app registration
  4. Click Connect & Test

2. Choose what to sync

After connecting, choose what Flowstate treats as a "project":

  • Azure DevOps Projects — Each ADO project becomes a Flowstate PMS project. Best if your ADO projects map 1:1 to your roadmap.
  • Epics (or other work item type) — Each Epic becomes a Flowstate PMS project. Best if you use a single ADO project with Epics representing different initiatives.

You can also exclude specific projects you don't want to track.

3. Set up webhooks

Flowstate provides a webhook URL during setup. Add it to your Azure DevOps project:

  1. In Azure DevOps, go to Project Settings → Service Hooks
  2. Create a new subscription for Web Hooks
  3. Set the trigger to Work item created and Work item updated
  4. Paste the Flowstate webhook URL
  5. Repeat for each project you want real-time sync on

Alternatively, Flowstate can operate on scheduled sync only — webhooks are recommended but not required.

4. Map your people

Flowstate automatically matches Azure DevOps users to your employees and contractors by email address. If someone's ADO email differs from their Flowstate email, you can add manual mappings in Settings → Data Integrations → Employee Mappings.

Custom field mapping

If you use custom fields in Azure DevOps to track things like cost centres or CapEx eligibility, you can map them to Flowstate:

CapEx classification

Map a boolean custom field (e.g., IsCapex) to automatically flag work items for cost capitalisation. When a work item has this field set to true, Flowstate attributes its effort to the configured CapEx cost centre.

Project name mapping

Map a custom field that contains a project name (e.g., a reference field on Epics) to control which Flowstate roadmap project a work item is linked to. This is useful when your ADO structure doesn't map directly to your roadmap.

To configure custom field mappings:

  1. Go to Settings → Data Integrations → Azure DevOps
  2. Open Custom Field Mappings
  3. Select the field type and the ADO field name
  4. Choose the Flowstate behaviour (cost centre assignment, project linking)

Sync schedule

Configure when the full catch-up sync runs:

  1. Go to Settings → Data Integrations → Azure DevOps
  2. Under Sync Schedule, toggle on scheduled sync
  3. Choose the hour of day (in your organisation's timezone)

You can also trigger a manual sync at any time from the integration settings.

Linking PMS projects to your roadmap

After sync, your Azure DevOps projects appear on the PMS Projects page. From there:

  • Auto-link by name — Flowstate automatically creates or matches roadmap projects by name
  • Manual linking — Use the dropdown on each PMS project to choose the correct roadmap project
  • AI recommendations — Flowstate can suggest links using AI pattern matching

Unlinked projects are flagged in Flowstate and (if Slack is connected) managers are notified to link them.

Troubleshooting

Projects aren't appearing

  • Check that the PAT or Service Principal has read access to the projects
  • Verify the organisation URL is correct
  • Try a manual sync from the integration settings

Work items are missing

  • Check that the work item types you're tracking are included (Settings → Effort Tracking → Task Types)
  • Verify webhooks are configured for the correct project

People aren't matched

  • Check employee email mappings in Settings → Data Integrations → Employee Mappings
  • Azure DevOps and Flowstate emails must match (case-insensitive)

Flowstate Documentation