---
title: "GET /pools/{poolId}/nodes/{nodeId}"
method: GET
path: "/pools/{poolId}/nodes/{nodeId}"
tags: ["ComputeNodes"]
---

# GET /pools/{poolId}/nodes/{nodeId}

`GET /pools/{poolId}/nodes/{nodeId}`

Gets information about the specified compute node.

## Path parameters

- `poolId` string, required
- `nodeId` string, required

## Query parameters

- `$select` string
- `timeout` integer
- `api-version` string, required

## Headers

- `client-request-id` string
- `return-client-request-id` boolean
- `ocp-date` string, date-time-rfc1123

## Response `200`

OK

- ComputeNode — A compute node in the Batch service.
  - `id` string — Gets or sets the id of the compute node.
  - `url` string — Gets or sets the URL of the compute node.
  - `state` 'idle' | 'rebooting' | 'reimaging' | 'running' | 'unusable' | 'creating' | 'starting' | 'waitingforstarttask' | 'starttaskfailed' | 'unknown' | 'leavingpool' | 'offline' — Gets or sets the current state of the compute node.
  - `schedulingState` 'enabled' | 'disabled' — Gets or sets whether the compute node should be available for task scheduling.
  - `stateTransitionTime` string, date-time — Gets or sets the time at which the compute node entered its current state.
  - `lastBootTime` string, date-time — Gets or sets the time at which the compute node was started.
  - `allocationTime` string, date-time — Gets or sets the time at which this compute node was allocated to the pool.
  - `ipAddress` string — Gets or sets the IP address that other compute nodes can use to communicate with this compute node.
  - `affinityId` string — Gets or sets an identifier which can be passed in the Add Task API to request that the task be scheduled close to this compute node.
  - `vmSize` string — Gets or sets the size of the virtual machine hosting the compute node.
  - `totalTasksRun` integer — Gets or sets the total number of job tasks completed on the compute node. This includes Job Preparation, Job Release and Job Manager tasks, but not the pool start task.
  - `recentTasks` TaskInformation[] — Gets or sets the list of tasks that are currently running on the compute node.
    - `taskUrl` string — Gets or sets the URL of the task.
    - `jobId` string — Gets or sets the id of the job to which the task belongs.
    - `taskId` string — Gets or sets the id of the task.
    - `subtaskId` integer — Gets or sets the id of the subtask if the task is a multi-instance task.
    - `taskState` 'active' | 'preparing' | 'running' | 'completed', required — Gets or sets the current state of the task.
    - `executionInfo` TaskExecutionInformation — Information about the execution of a task.
      - `startTime` string, date-time — Gets or sets the time at which the task started running. If the task has been restarted or retried, this is the most recent time at which the task started running.
      - `endTime` string, date-time — Gets or sets the time at which the task completed. This property is set only if the task is in the Completed state.
      - `exitCode` integer — Gets or sets the exit code of the task. This property is set only if the task is in completed state.
      - `schedulingError` TaskSchedulingError — Information about an error when scheduling a task.
        - `category` 'usererror' | 'servererror' | 'unmapped', required — Gets or sets the category of the task scheduling error.
        - `code` string — Gets or sets an identifier for the task scheduling error. Codes are invariant and are intended to be consumed programmatically.
        - `message` string — Gets or sets a message describing the task scheduling error, intended to be suitable for display in a user interface.
        - `details` NameValuePair[] — Gets or sets the list of additional error details related to the scheduling error.
          - `name` string — Gets or sets the name in the name-value pair.
          - `value` string — Gets or sets the value in the name-value pair.
      - `retryCount` integer, required — Gets or sets the number of times the task has been retried by the Batch service.
      - `lastRetryTime` string, date-time — Gets or sets the most recent time at which a retry of the task started running.
      - `requeueCount` integer, required — Gets or sets the number of times the task has been requeued by the Batch service as the result of a user request.
      - `lastRequeueTime` string, date-time — Gets or sets the most recent time at which the task has been requeued by the Batch service as the result of a user request.
  - `startTask` StartTask — A task defined on a pool and run by compute nodes when they join the pool.
    - `commandLine` string — Gets or sets the command line of the start task.
    - `resourceFiles` ResourceFile[] — Gets or sets a list of files that Batch will download to the compute node before running the command line.
      - `blobSource` string — Gets or sets the URL of a blob in Azure storage. The Batch service downloads the blob to the specified file path. The URL must be readable using anonymous access.
      - `filePath` string — Gets or sets the location on the compute node to which the file should be downloaded.
    - `environmentSettings` EnvironmentSetting[] — Gets or sets a list of environment variable settings for the start task.
      - `name` string — Gets or sets the name of the environment variable.
      - `value` string — Gets or sets the value of the environment variable.
    - `runElevated` boolean — Gets or sets whether to run the start task in elevated mode. The default value is false.
    - `maxTaskRetryCount` integer — Gets or sets the maximum number of times the task may be retried.
    - `waitForSuccess` boolean — Gets or sets whether the Batch Service should wait for the start task to complete successfully (that is, to exit with exit code 0) before scheduling any tasks on the compute node.
  - `startTaskInfo` StartTaskInformation — Information about a start task running on a compute node.
    - `state` 'running' | 'completed', required — Gets or sets the state of the start task on the compute node.
    - `startTime` string, date-time, required — Gets or sets the time at which the start task started running.
    - `endTime` string, date-time — Gets or sets the time at which the start task stopped running.
    - `exitCode` integer — Gets or sets the exit code of the start task.
    - `schedulingError` TaskSchedulingError — Information about an error when scheduling a task.
      - `category` 'usererror' | 'servererror' | 'unmapped', required — Gets or sets the category of the task scheduling error.
      - `code` string — Gets or sets an identifier for the task scheduling error. Codes are invariant and are intended to be consumed programmatically.
      - `message` string — Gets or sets a message describing the task scheduling error, intended to be suitable for display in a user interface.
      - `details` NameValuePair[] — Gets or sets the list of additional error details related to the scheduling error.
        - `name` string — Gets or sets the name in the name-value pair.
        - `value` string — Gets or sets the value in the name-value pair.
    - `retryCount` integer, required — Gets or sets the number of times the task has been retried by the Batch service.
    - `lastRetryTime` string, date-time — Gets or sets the most recent time at which a retry of the task started running.
  - `certificateReferences` CertificateReference[] — Gets or sets the list of certificates installed on the compute node.
    - `thumbprint` string, required — Gets or sets the thumbprint of the certificate.
    - `thumbprintAlgorithm` string, required — Gets or sets the algorithm with which the thumbprint is associated. This must be sha1.
    - `storeLocation` 'currentuser' | 'localmachine' | 'unmapped' — Gets or sets the location of the certificate store on the compute node into which to install the certificate. The default value is CurrentUser.
    - `storeName` string — Gets or sets the name of the certificate store on the compute node into which to install the certificate. The default value is My.
    - `visibility` string — Gets or sets which user accounts on the compute node should have access to the private data of the certificate. This may be any subset of the values 'starttask', 'task' and 'rdp', separated by commas. The default is all accounts, corresponding to the string 'starttask,task,rdp'.
  - `errors` ComputeNodeError[] — Gets or sets the list of errors that are currently being encountered by the compute node.
    - `code` string — Gets or sets an identifier for the compute node error. Codes are invariant and are intended to be consumed programmatically.
    - `message` string — Gets or sets a message describing the compute node error, intended to be suitable for display in a user interface.
    - `errorDetails` NameValuePair[] — Gets or sets the list of additional error details related to the compute node error.
      - `name` string — Gets or sets the name in the name-value pair.
      - `value` string — Gets or sets the value in the name-value pair.

## Other responses

- `default` — Error from the Batch service

---

[API](https://skmtc.dev/azure/apis/batch-batch.md) · [All operations](https://skmtc.dev/azure/apis/batch-batch/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/azure/batch-batch/revisions/d7960a570e92/schema)
