Azure Batch REST API

Azure Batch REST API provides management of large-scale parallel and high-performance computing workloads. It supports creating pools of compute nodes, submitting jobs and tasks, auto-scaling based on workload, and managing task dependencies for batch processing scenarios.

OpenAPI Specification

microsoft-azure-batch-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Azure Batch Service REST API
  description: Azure Batch is a managed service for running large-scale parallel and high-performance
    computing batch jobs. The data plane REST API manages pools, jobs, tasks, certificates, and compute
    nodes.
  version: 2024-07-01.20.0
externalDocs:
  description: Azure Batch REST API Documentation
  url: https://learn.microsoft.com/en-us/rest/api/batchservice/
servers:
- url: https://{account}.{region}.batch.azure.com
  variables:
    account:
      default: myaccount
    region:
      default: eastus
tags:
- name: Pools
- name: Jobs
- name: Tasks
- name: Compute Nodes
- name: Certificates
security:
- azure_auth:
  - user_impersonation
paths:
  /pools:
    get:
      operationId: listPools
      summary: Batch List pools
      description: Lists all pools in the account.
      tags:
      - Pools
      parameters:
      - name: api-version
        in: query
        required: true
        schema:
          type: string
      responses:
        '200':
          description: List of pools
          content:
            application/json:
              schema:
                type: object
    post:
      operationId: addPool
      summary: Batch Add pool
      description: Adds a pool to the account.
      tags:
      - Pools
      parameters:
      - name: api-version
        in: query
        required: true
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '201':
          description: Pool created
  /pools/{poolId}:
    parameters:
    - name: poolId
      in: path
      required: true
      schema:
        type: string
    - name: api-version
      in: query
      required: true
      schema:
        type: string
    get:
      operationId: getPool
      summary: Batch Get pool
      description: Gets a pool.
      tags:
      - Pools
      responses:
        '200':
          description: Pool
          content:
            application/json:
              schema:
                type: object
    delete:
      operationId: deletePool
      summary: Batch Delete pool
      description: Deletes a pool.
      tags:
      - Pools
      responses:
        '202':
          description: Deletion accepted
  /jobs:
    get:
      operationId: listJobs
      summary: Batch List jobs
      description: Lists all jobs.
      tags:
      - Jobs
      parameters:
      - name: api-version
        in: query
        required: true
        schema:
          type: string
      responses:
        '200':
          description: List of jobs
          content:
            application/json:
              schema:
                type: object
    post:
      operationId: addJob
      summary: Batch Add job
      description: Adds a job.
      tags:
      - Jobs
      parameters:
      - name: api-version
        in: query
        required: true
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '201':
          description: Job created
  /jobs/{jobId}/tasks:
    parameters:
    - name: jobId
      in: path
      required: true
      schema:
        type: string
    - name: api-version
      in: query
      required: true
      schema:
        type: string
    get:
      operationId: listTasks
      summary: Batch List tasks
      description: Lists tasks for a job.
      tags:
      - Tasks
      responses:
        '200':
          description: List of tasks
          content:
            application/json:
              schema:
                type: object
    post:
      operationId: addTask
      summary: Batch Add task
      description: Adds a task to a job.
      tags:
      - Tasks
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '201':
          description: Task created
components:
  securitySchemes:
    azure_auth:
      type: oauth2
      flows:
        implicit:
          authorizationUrl: https://login.microsoftonline.com/common/oauth2/authorize
          scopes:
            user_impersonation: Impersonate user
x-generated-from: https://learn.microsoft.com/en-us/rest/api/batchservice/
x-generated-by: claude-crawl-2026-05-08