> ## Documentation Index
> Fetch the complete documentation index at: https://help.dsalta.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Azure DevOps

> How DSALTA integrates with Azure DevOps — data collected, setup guide, and automated compliance checks.

## Overview

DSALTA connects to Azure DevOps using read-only API access to collect compliance evidence automatically. Data syncs every 24 hours and feeds into your Data Library modules.

<Info>
  **Read-only access.** DSALTA never modifies, creates, or deletes resources in your Azure DevOps environment.
</Info>

## How to Connect

1. Go to **Integrations** in the DSALTA sidebar.
2. Find **Azure DevOps** and click **Connect**.
3. Authenticate with admin-level access.
4. Select the scope (accounts, projects, or resources to monitor).
5. DSALTA performs an initial sync (5-15 minutes). Checks activate after sync completes.

## Automated Compliance Checks

Each check below runs automatically every 24 hours. Click any check for step-by-step remediation guidance.

| Check                                                                                                                                               | Description                                                                                    |
| --------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- |
| [Code repositories should be classified](/integrations/azure-devops/code-repositories-should-be-classified)                                         | Checks that all Azure DevOps code repositories are classified by criticality.                  |
| [Peer review should be enforced for code changes](/integrations/azure-devops/peer-review-should-be-enforced-for-code-changes)                       | Checks that peer review is required before code changes can be merged in Azure DevOps.         |
| [Merging code changes should require passing status checks](/integrations/azure-devops/merging-code-changes-should-require-passing-status-checks)   | Checks that passing status checks are required before merging in Azure DevOps.                 |
| [Branch protection rules should be enforced for admins](/integrations/azure-devops/branch-protection-rules-should-be-enforced-for-admins)           | Checks that branch protection rules apply to admin users in Azure DevOps.                      |
| [Code changes should be reviewed by peers before merging](/integrations/azure-devops/code-changes-should-be-reviewed-by-peers-before-merging)       | Checks that all code changes are reviewed by at least one peer before merging in Azure DevOps. |
| [Azure DevOps access should be removed for offboarded users](/integrations/azure-devops/azure-devops-access-should-be-removed-for-offboarded-users) | Checks that Azure DevOps access is revoked for offboarded users.                               |

## Troubleshooting

<AccordionGroup>
  <Accordion title="Integration shows Disconnected">
    Re-authenticate from **Integrations → Azure DevOps → Reconnect**. This usually happens when API tokens expire.
  </Accordion>

  <Accordion title="Data is not syncing">
    Verify the connected account has admin permissions. Try a manual sync from the integration settings.
  </Accordion>
</AccordionGroup>
