# Add Azuredevops

Adds Azure DevOps connector to a Power Apps code app.

- Repository: https://github.com/microsoft/power-platform-skills (1098 stars)
- Category: DevOps
- License: MIT
- Last updated: 2026-10-31
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add microsoft/power-platform-skills --skill add-azuredevops -g -a claude-code -y`
Codex: `npx skills add microsoft/power-platform-skills --skill add-azuredevops -g -a codex -y`
Cursor: `npx skills add microsoft/power-platform-skills --skill add-azuredevops -g -a cursor -y`
Gemini CLI: `npx skills add microsoft/power-platform-skills --skill add-azuredevops -g -a gemini-cli -y`
Claude Code plugin marketplace: `/plugin marketplace add microsoft/power-platform-skills`

## Description

Adds Azure DevOps connector to a Power Apps code app. Use when querying work items, creating bugs, managing pipelines, or making ADO API calls.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

**📋 Shared Instructions: [shared-instructions.md](${PLUGIN_ROOT}/shared/shared-instructions.md)** - Cross-cutting concerns.

# Add Azure DevOps

## Workflow

1. Check Memory Bank → 2. Add Connector → 3. Apply HttpRequest Fix → 4. Configure → 5. Build → 6. Update Memory Bank

---

### Step 1: Check Memory Bank

Check for `memory-bank.md` per [shared-instructions.md](${PLUGIN_ROOT}/shared/shared-instructions.md).

### Step 2: Add Connector

**First, find the connection ID** (see [connector-reference.md](${PLUGIN_ROOT}/shared/connector-reference.md)):

Run the `/list-connections` skill. Find the Azure DevOps connection in the output. If none exists, direct the user to create one using the environment-specific Connections URL, construct it from the active environment ID in context (from `power.config.json` or a prior step): `https://make.powerapps.com/environments/<environment-id>/connections` → **+ New connection** → search for the connector → Create.

```bash
pa app add data-source --connector azuredevops -c <connection-id>
```

### Step 3: Apply HttpRequest Fix (Required)

The generated code has a known issue: the `HttpRequest` method uses `parameters` as the parameter name, but the API expects `body`. Rename `parameters` to `body` in these 3 files:

Use the `Edit` tool to rename `parameters` to `body` in each file:

**1. `src/generated/services/AzureDevOpsService.ts`:**
Find the `HttpRequest` method. Rename the parameter and its usage:

```typescript
// BEFORE (generated):
async HttpRequest(parameters: any) {
  const params = { parameters: parameters, ... };

// AFTER (fixed):
async HttpRequest(body: any) {
  const params = { body: body, ... };
```

**2. `.power/appschemas/dataSourceInfo.ts`:**
Find the `visualstudioteamservices` → `HttpRequest` → `parameters` section. Rename the property key:

```typescript
// BEFORE (generated):
HttpRequest: {
  parameters: {
    parameters: { ... }

// AFTER (fixed):
HttpRequest: {
  parameters: {
    body: { ... }
```

The rest: https://github.com/microsoft/power-platform-skills/blob/HEAD/plugins/code-apps/skills/add-azuredevops/SKILL.md
