Azure DevOps · Arazzo Workflow

Azure DevOps Provision and Inspect a Git Repository

Version 1.0.0

Create a Git repository, confirm it, and list its branches.

1 workflow 2 source APIs 1 provider
View Spec View on GitHub AgileCI/CDDevOpsProject ManagementVersion ControlArazzoWorkflows

Provider

microsoft-azure-devops

Workflows

provision-and-inspect-repository
Create a repository, confirm it, and list its branches.
Creates a Git repository in a project, retrieves it to confirm creation, and lists its branch refs.
3 steps inputs: accessToken, apiVersion, projectId, repositoryName outputs: branchCount, defaultBranch, repositoryId
1
createRepository
Create the Git repository in the target project. The response carries the new repository ID used by later steps.
2
confirmRepository
Fetch the repository by ID to confirm it exists and capture its default branch and web URL.
3
listBranches
List the repository refs filtered to heads/ so the initial branches are visible after provisioning.

Source API Descriptions

Arazzo Workflow Specification

Raw ↑
arazzo: 1.0.1
info:
  title: Azure DevOps Provision and Inspect a Git Repository
  summary: Create a Git repository, confirm it, and list its branches.
  description: >-
    Provisions a new Azure Repos Git repository inside a project and verifies the
    result. The workflow creates the repository under the supplied project ID,
    fetches the repository by its returned ID to confirm the default branch and
    clone URLs, and then lists the branch refs under heads/ so callers can see
    the initial branch layout. Every step spells out its request inline so the
    flow can be read and executed without opening the underlying OpenAPI
    description.
  version: 1.0.0
  x-realizes-capability-ids:
  - BC-4200.40
  x-capability-derivation:
    method: 'deterministic join: sourceDescriptions -> per-tag OpenAPI -> tag/capability edge. No classification at this step.'
    min_confidence: 0.7
    sources:
    - capability_id: BC-4200.40
      capability_name: Software Construction Management
      spec: microsoft-azure-devops-repositories-api-openapi.yml
      confidence: 0.85
    model: Turbo EA Capabilities by Vincent Verdet — Turbo EA, https://github.com/vincentmakes/turbo-ea-capabilities, CC BY 4.0
sourceDescriptions:
- name: refsApi
  url: ../openapi/microsoft-azure-devops-refs-api-openapi.yml
  type: openapi
- name: repositoriesApi
  url: ../openapi/microsoft-azure-devops-repositories-api-openapi.yml
  type: openapi
workflows:
- workflowId: provision-and-inspect-repository
  summary: Create a repository, confirm it, and list its branches.
  description: >-
    Creates a Git repository in a project, retrieves it to confirm creation, and
    lists its branch refs.
  inputs:
    type: object
    required:
    - apiVersion
    - repositoryName
    - projectId
    properties:
      apiVersion:
        type: string
        description: Azure DevOps REST API version (e.g. 7.1).
      repositoryName:
        type: string
        description: Name for the new Git repository.
      projectId:
        type: string
        description: GUID of the project to create the repository in.
      accessToken:
        type: string
        description: Azure DevOps bearer (OAuth 2.0) access token.
  steps:
  - stepId: createRepository
    description: >-
      Create the Git repository in the target project. The response carries the
      new repository ID used by later steps.
    operationId: repositories_create
    parameters:
    - name: api-version
      in: query
      value: $inputs.apiVersion
    requestBody:
      contentType: application/json
      payload:
        name: $inputs.repositoryName
        project:
          id: $inputs.projectId
    successCriteria:
    - condition: $statusCode == 201
    outputs:
      repositoryId: $response.body#/id
      remoteUrl: $response.body#/remoteUrl
  - stepId: confirmRepository
    description: >-
      Fetch the repository by ID to confirm it exists and capture its default
      branch and web URL.
    operationId: repositories_get
    parameters:
    - name: api-version
      in: query
      value: $inputs.apiVersion
    - name: repositoryId
      in: path
      value: $steps.createRepository.outputs.repositoryId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      defaultBranch: $response.body#/defaultBranch
      webUrl: $response.body#/webUrl
  - stepId: listBranches
    description: >-
      List the repository refs filtered to heads/ so the initial branches are
      visible after provisioning.
    operationId: refs_list
    parameters:
    - name: api-version
      in: query
      value: $inputs.apiVersion
    - name: repositoryId
      in: path
      value: $steps.createRepository.outputs.repositoryId
    - name: filter
      in: query
      value: heads/
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      branchCount: $response.body#/count
      firstBranchName: $response.body#/value/0/name
  outputs:
    repositoryId: $steps.createRepository.outputs.repositoryId
    defaultBranch: $steps.confirmRepository.outputs.defaultBranch
    branchCount: $steps.listBranches.outputs.branchCount

Work with this as data

Every workflow here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for arazzo workflows

4 MCP tools reach this
  • find_arazzoBrowse and filter every workflow in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This workflow
curl "https://apis.io/api/v1/arazzo/microsoft-azure-devops-repository-provision-init-workflow"
All arazzo workflows
curl "https://apis.io/api/v1/arazzo?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.