> For the complete documentation index, see [llms.txt](https://docs.logilica.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.logilica.com/integration/connecting-tools/azure-devops-boards.md).

# Azure DevOps Boards

This guide covers how Logilica imports work items, iterations, and history from Azure DevOps Boards, and how work item states and types are categorised. It applies to the Boards (work tracking) side of Azure DevOps; pull requests and commits are handled by the separate Azure DevOps code connector.

## Authentication

Logilica connects to Azure DevOps Boards using **OAuth** — you authorise Logilica from Azure DevOps rather than supplying a token. Make sure your organisation allows third-party application access via OAuth (**Organization Settings > Policies > Application connection policies**). Logilica reads only the data it needs and never gains write access. See [Connecting Tools](/integration/connecting-tools.md) for the installation flow.

## What's Imported

For each Azure DevOps project you connect, Logilica imports:

* **Work items** — title, description, state, type, priority, tags, target/due date, created/changed/closed dates, and the close reason
* **Parent and child links** — work items linked by `Parent` and `Child` relationships
* **Iterations** — name, time frame (past / current / future), start and finish dates, mapped to Logilica sprints
* **Work item history** — state changes and assignment changes
* **Story point estimates** — taken from the work item **Effort** field
* **Custom fields** — every custom field defined on the project is imported alongside the built-in fields
* **Work item type icons**
* **Tags** — imported as labels
* **Assignees, creators, and resolvers** — user identity, display name, and email (the creator and reporter are the same person for Azure DevOps work items)

{% hint style="info" %}
If your work item descriptions contain sensitive content, you can exclude them after installation with the **Ignore Ticket Description** toggle under **Import Configuration** on the connector page.
{% endhint %}

## Issue State Mapping

Logilica categorises every work item into **To Do**, **In Progress**, or **Done** based on its **State** field. The match is **case-insensitive**:

| Work Item State | Logilica Category |
| --------------- | ----------------- |
| `Done`          | **Done**          |
| `To Do`         | **To Do**         |
| `New`           | **To Do**         |
| `In Progress`   | **In Progress**   |
| `Doing`         | **In Progress**   |
| Any other state | **In Progress**   |

{% hint style="warning" %}
Only `Done`, `To Do`, and `New` map to a non-default category. Every other state — including custom states such as `Approved`, `Committed`, `Resolved`, `Closed`, or `Removed` — falls through to **In Progress**. If your process template uses states beyond the values above and you need them categorised as Done or To Do, contact your Logilica administrator.
{% endhint %}

A work item's resolution detail is taken from its close reason, and is captured only when the state is exactly `Done`.

## Field & Type Configuration

Logilica reads the following built-in Azure DevOps work item fields automatically. These are standard system fields and require no configuration:

| Work Item Field                 | Used For                                     |
| ------------------------------- | -------------------------------------------- |
| **State**                       | Status category (To Do / In Progress / Done) |
| **Work Item Type**              | Issue type and hierarchy                     |
| **Effort**                      | Story point estimate                         |
| **Priority**                    | Issue priority                               |
| **Tags**                        | Labels                                       |
| **Target Date**                 | Due date                                     |
| **Assigned To**                 | Current assignee                             |
| **Closed By** / **Closed Date** | Resolver and resolution time                 |

### Story points

Story points are read from the **Effort** field. If your team records estimates in a different field (such as Story Points on an Agile process template), those values will not be imported as story points — move your estimates to **Effort**, or contact your Logilica administrator.

### Issue-type hierarchy

Logilica organises work items into a hierarchy from the **Work Item Type** name:

* Types named for a **feature** or **initiative** are treated as initiatives at the top of the hierarchy.
* **Epic** types are grouped as epics.
* **Subtask** types are treated as subtasks.
* Standard types such as `Task`, `Bug`, and `User Story` are treated as regular issues.

If you use custom types that should sit at the epic or initiative level, contact your Logilica administrator to have them mapped — this is not something you can change from the connector page.

## Good to Know

* **Kept in sync automatically.** After the initial import, Logilica refreshes this connection on a regular schedule — you don't need to re-trigger imports.
* **First import covers the last 6 months.** Only work items changed within the last 6 months are imported on the first scan. Older work items that haven't been touched won't appear. Importing data older than 6 months requires a configuration change by Logilica — contact support.
* **If no work items are found in the window, the import stops.** A project with no recently changed work items will be skipped.
* **No time estimates are imported.** Azure DevOps Boards work items do not carry the original/remaining estimate fields Logilica tracks for other tools, so these are recorded as zero.
* **Unrecognised states default to In Progress.** This is the single most common source of mis-categorised work items — see the State Mapping warning above.
