Microsoft Azure · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Microsoft Azure BatchService Compute Nodes API

14 actions 14 updates phrasing extends openapi/microsoft-azure-computenodes-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for Microsoft Azure's API. It is a proposal applied on top of the contract, not a document Microsoft Azure publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 14

$.info
$.paths['/pools/{poolId}/removenodes'].post
$.paths['/pools/{poolId}/nodes/{nodeId}/users'].post
$.paths['/pools/{poolId}/nodes/{nodeId}/users/{userName}'].put
$.paths['/pools/{poolId}/nodes/{nodeId}/users/{userName}'].delete
$.paths['/pools/{poolId}/nodes/{nodeId}'].get
$.paths['/pools/{poolId}/nodes/{nodeId}/reboot'].post
$.paths['/pools/{poolId}/nodes/{nodeId}/reimage'].post
$.paths['/pools/{poolId}/nodes/{nodeId}/disablescheduling'].post
$.paths['/pools/{poolId}/nodes/{nodeId}/enablescheduling'].post
$.paths['/pools/{poolId}/nodes/{nodeId}/remoteloginsettings'].get
$.paths['/pools/{poolId}/nodes/{nodeId}/rdp'].get
$.paths['/pools/{poolId}/nodes/{nodeId}/uploadbatchservicelogs'].post
$.paths['/pools/{poolId}/nodes'].get

OpenAPI Overlay

Raw ↑
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
  title: API Evangelist conversational phrasing for Microsoft Azure BatchService Compute Nodes API
  version: 1.0.0
extends: openapi/microsoft-azure-computenodes-api-openapi.yml
actions:
- target: $.info
  update:
    x-apievangelist-phrasing:
      method: generated
      generated: '2026-09-26'
      generator: build-phrasing.py
      label: Generated by API Evangelist
      operations: 13
- target: $.paths['/pools/{poolId}/removenodes'].post
  update:
    x-apievangelist-phrasing:
      intent: Remove compute nodes from a Batch pool
      effect: destructive
      questions:
      - How do I take specific compute nodes out of an Azure Batch pool?
      - What happens to running tasks when I remove nodes from a pool, and can I choose to requeue them?
      - Does removing nodes only work when the pool's allocation state is steady?
      instructions:
      - text: Remove nodes {nodeList} from Batch pool {poolId}.
        slots:
          nodeList: requestBody.nodeList
          poolId: path.poolId
      - text: Remove nodes {nodeList} from pool {poolId} and handle running tasks with {nodeDeallocationOption}.
        slots:
          nodeList: requestBody.nodeList
          poolId: path.poolId
          nodeDeallocationOption: requestBody.nodeDeallocationOption
      method: generated
      generated: '2026-09-26'
- target: $.paths['/pools/{poolId}/nodes/{nodeId}/users'].post
  update:
    x-apievangelist-phrasing:
      intent: Add a user account to a compute node
      effect: write
      questions:
      - How do I create a login account on a Batch compute node?
      - Can I add an admin user with an SSH public key to a node that is idle or running?
      instructions:
      - text: Add user {name} to node {nodeId} in pool {poolId}.
        slots:
          name: requestBody.name
          nodeId: path.nodeId
          poolId: path.poolId
      - text: Create admin account {name} on node {nodeId} of pool {poolId} with SSH key {sshPublicKey}, expiring {expiryTime}.
        slots:
          name: requestBody.name
          nodeId: path.nodeId
          poolId: path.poolId
          sshPublicKey: requestBody.sshPublicKey
          expiryTime: requestBody.expiryTime
      method: generated
      generated: '2026-09-26'
- target: $.paths['/pools/{poolId}/nodes/{nodeId}/users/{userName}'].put
  update:
    x-apievangelist-phrasing:
      intent: Update a user account on a compute node
      effect: write
      questions:
      - How do I reset the password of an existing user on a Batch node?
      - Can I extend the expiry time on a compute node account I already created?
      instructions:
      - text: Set a new password {password} for user {userName} on node {nodeId} in pool {poolId}.
        slots:
          password: requestBody.password
          userName: path.userName
          nodeId: path.nodeId
          poolId: path.poolId
      - text: Extend the expiry of existing node account {userName} on node {nodeId} to {expiryTime}.
        slots:
          userName: path.userName
          nodeId: path.nodeId
          expiryTime: requestBody.expiryTime
      method: generated
      generated: '2026-09-26'
- target: $.paths['/pools/{poolId}/nodes/{nodeId}/users/{userName}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a user account from a compute node
      effect: destructive
      questions:
      - How do I remove a login account from a Batch compute node?
      - Can I revoke someone's access to a node by deleting their user?
      instructions:
      - text: Delete user {userName} from node {nodeId} in pool {poolId}.
        slots:
          userName: path.userName
          nodeId: path.nodeId
          poolId: path.poolId
      - text: Remove the {userName} account from compute node {nodeId}.
        slots:
          userName: path.userName
          nodeId: path.nodeId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/pools/{poolId}/nodes/{nodeId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a compute node's details
      effect: read
      questions:
      - What state is one particular Batch compute node in right now?
      - Can I fetch only selected properties of a single compute node?
      instructions:
      - text: Get compute node {nodeId} in pool {poolId}.
        slots:
          nodeId: path.nodeId
          poolId: path.poolId
      - text: Show only {select} for node {nodeId} in pool {poolId}.
        slots:
          select: query.$select
          nodeId: path.nodeId
          poolId: path.poolId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/pools/{poolId}/nodes/{nodeId}/reboot'].post
  update:
    x-apievangelist-phrasing:
      intent: Restart a compute node
      effect: write
      questions:
      - How do I reboot a stuck Batch compute node?
      - Can I choose whether running tasks are requeued or terminated when a node restarts?
      instructions:
      - text: Reboot node {nodeId} in pool {poolId}.
        slots:
          nodeId: path.nodeId
          poolId: path.poolId
      - text: Restart node {nodeId} in pool {poolId} using reboot option {nodeRebootOption}.
        slots:
          nodeId: path.nodeId
          poolId: path.poolId
          nodeRebootOption: requestBody.nodeRebootOption
      method: generated
      generated: '2026-09-26'
- target: $.paths['/pools/{poolId}/nodes/{nodeId}/reimage'].post
  update:
    x-apievangelist-phrasing:
      intent: Reinstall the OS on a compute node
      effect: destructive
      questions:
      - How do I reinstall the operating system on a Batch compute node?
      - Can I reimage a node in a pool created with the cloud service configuration?
      instructions:
      - text: Reimage node {nodeId} in pool {poolId}.
        slots:
          nodeId: path.nodeId
          poolId: path.poolId
      - text: Reinstall the OS on node {nodeId} in pool {poolId} with reimage option {nodeReimageOption}.
        slots:
          nodeId: path.nodeId
          poolId: path.poolId
          nodeReimageOption: requestBody.nodeReimageOption
      method: generated
      generated: '2026-09-26'
- target: $.paths['/pools/{poolId}/nodes/{nodeId}/disablescheduling'].post
  update:
    x-apievangelist-phrasing:
      intent: Stop scheduling tasks on a compute node
      effect: write
      questions:
      - How do I stop new Batch tasks from landing on a specific node?
      - What happens to tasks already running when I disable scheduling on a node?
      instructions:
      - text: Disable task scheduling on node {nodeId} in pool {poolId}.
        slots:
          nodeId: path.nodeId
          poolId: path.poolId
      - text: Drain node {nodeId} in pool {poolId} using option {nodeDisableSchedulingOption}.
        slots:
          nodeId: path.nodeId
          poolId: path.poolId
          nodeDisableSchedulingOption: requestBody.nodeDisableSchedulingOption
      method: generated
      generated: '2026-09-26'
- target: $.paths['/pools/{poolId}/nodes/{nodeId}/enablescheduling'].post
  update:
    x-apievangelist-phrasing:
      intent: Resume scheduling tasks on a compute node
      effect: write
      questions:
      - How do I let a node accept Batch tasks again after I disabled scheduling?
      - Can I put a drained compute node back into rotation?
      instructions:
      - text: Enable task scheduling on node {nodeId} in pool {poolId}.
        slots:
          nodeId: path.nodeId
          poolId: path.poolId
      - text: Put node {nodeId} back into service for new tasks.
        slots:
          nodeId: path.nodeId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/pools/{poolId}/nodes/{nodeId}/remoteloginsettings'].get
  update:
    x-apievangelist-phrasing:
      intent: Get remote login settings for a compute node
      effect: read
      questions:
      - What IP address and port do I use to SSH into a Batch compute node?
      - Where do I find the remote login endpoint for a node in a virtual machine configuration pool?
      instructions:
      - text: Get the remote login settings for node {nodeId} in pool {poolId}.
        slots:
          nodeId: path.nodeId
          poolId: path.poolId
      - text: Show the SSH address and port for compute node {nodeId}.
        slots:
          nodeId: path.nodeId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/pools/{poolId}/nodes/{nodeId}/rdp'].get
  update:
    x-apievangelist-phrasing:
      intent: Download the RDP file for a compute node
      effect: read
      questions:
      - How do I get a Remote Desktop file to connect to a Windows Batch node?
      - Can I download an RDP file for a node in a cloud service configuration pool?
      instructions:
      - text: Download the RDP file for node {nodeId} in pool {poolId}.
        slots:
          nodeId: path.nodeId
          poolId: path.poolId
      - text: Get a Remote Desktop connection file for compute node {nodeId}.
        slots:
          nodeId: path.nodeId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/pools/{poolId}/nodes/{nodeId}/uploadbatchservicelogs'].post
  update:
    x-apievangelist-phrasing:
      intent: Upload Batch service logs from a node to Blob storage
      effect: write
      questions:
      - How do I collect Azure Batch service log files from a node to send to support?
      - Can I upload only the node logs from a certain time window to a storage container?
      instructions:
      - text: Upload Batch service logs from node {nodeId} in pool {poolId} to container {containerUrl} starting {startTime}.
        slots:
          nodeId: path.nodeId
          poolId: path.poolId
          containerUrl: requestBody.containerUrl
          startTime: requestBody.startTime
      - text: Send node {nodeId} logs between {startTime} and {endTime} to {containerUrl}.
        slots:
          nodeId: path.nodeId
          startTime: requestBody.startTime
          endTime: requestBody.endTime
          containerUrl: requestBody.containerUrl
      method: generated
      generated: '2026-09-26'
- target: $.paths['/pools/{poolId}/nodes'].get
  update:
    x-apievangelist-phrasing:
      intent: List the compute nodes in a pool
      effect: read
      questions:
      - Which compute nodes are currently in my Batch pool?
      - Can I filter a pool's nodes by state and limit how many come back?
      instructions:
      - text: List the compute nodes in pool {poolId}.
        slots:
          poolId: path.poolId
      - text: Show up to {maxresults} nodes in pool {poolId} matching {filter}.
        slots:
          maxresults: query.maxresults
          poolId: path.poolId
          filter: query.$filter
      method: generated
      generated: '2026-09-26'

Work with this as data

Every overlay 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 openapi overlays

4 MCP tools reach this
  • find_overlaysBrowse and filter every overlay 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 overlay
curl "https://apis.io/api/v1/overlays/microsoft-azure-computenodes-api-phrasing-overlay"
All openapi overlays
curl "https://apis.io/api/v1/overlays?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.