Dell iDRAC Redfish REST API

Integrated Dell Remote Access Controller REST API for server management, monitoring, and configuration. The iDRAC RESTful API builds upon the DMTF Redfish standard to provide a comprehensive interface for out-of-band server lifecycle management of Dell PowerEdge servers, including inventory, health monitoring, power control, BIOS configuration, virtual media, firmware updates, event subscriptions, and telemetry.

OpenAPI Specification

dell-servers-idrac-redfish-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Dell Servers Dell iDRAC Redfish REST API
  description: >-
    Integrated Dell Remote Access Controller (iDRAC) RESTful API built upon the
    DMTF Redfish standard for out-of-band server lifecycle management of Dell
    PowerEdge servers. Provides programmatic access to server inventory, health
    monitoring, configuration, firmware updates, power control, virtual media,
    and BIOS management through a standards-based REST interface.
  version: '5.0'
  contact:
    name: Dell Technologies Support
    url: https://www.dell.com/support
  termsOfService: https://i.dell.com/sites/csdocuments/Legal_Docs/en/us/api-terms-of-use_en.pdf
externalDocs:
  description: iDRAC Redfish API Documentation
  url: https://developer.dell.com/apis/2978/versions/5.xx/docs/1.0Intro.md
servers:
  - url: https://{idrac-ip}/redfish/v1
    description: iDRAC Redfish Service Root
    variables:
      idrac-ip:
        description: IP address or hostname of the iDRAC interface
        default: 192.168.1.100
tags:
  - name: Accounts
    description: User account management and role-based access control
  - name: Chassis
    description: >-
      Physical enclosure resources including power supplies, thermal sensors,
      and physical component inventory
  - name: Event Service
    description: Event subscriptions and server-sent events configuration
  - name: Managers
    description: >-
      Management controller resources for iDRAC configuration, networking,
      and remote services
  - name: Service Root
    description: Redfish service root and metadata
  - name: Sessions
    description: Authentication session creation and management
  - name: Systems
    description: >-
      Computer system resources including hardware inventory, health status,
      power state, and BIOS configuration
  - name: Task Service
    description: Asynchronous task tracking and lifecycle job management
  - name: Telemetry Service
    description: Telemetry metric definitions and metric report management
  - name: Update Service
    description: Firmware update operations and firmware inventory
security:
  - basicAuth: []
paths:
  /:
    get:
      operationId: getServiceRoot
      summary: Dell Servers Get Redfish service root
      description: >-
        Retrieves the Redfish service root resource which provides links to all
        top-level resource collections and service metadata including the Redfish
        protocol version and available services.
      tags:
        - Service Root
      responses:
        '200':
          description: Service root resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceRoot'
        '401':
          description: Unauthorized - invalid or missing credentials
  /Systems:
    get:
      operationId: listSystems
      summary: Dell Servers List computer systems
      description: >-
        Retrieves the collection of computer system resources managed by this
        iDRAC instance. Each system resource represents a Dell PowerEdge server
        with its hardware inventory, health status, and configuration.
      tags:
        - Systems
      responses:
        '200':
          description: Collection of computer system resources
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ComputerSystemCollection'
        '401':
          description: Unauthorized - invalid or missing credentials
  /Systems/{SystemId}:
    get:
      operationId: getSystem
      summary: Dell Servers Get a computer system
      description: >-
        Retrieves a specific computer system resource including detailed hardware
        inventory, health status, power state, boot configuration, processor and
        memory summary, and links to subordinate resources like storage, network
        interfaces, and BIOS settings.
      tags:
        - Systems
      parameters:
        - $ref: '#/components/parameters/SystemId'
      responses:
        '200':
          description: Computer system resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ComputerSystem'
        '401':
          description: Unauthorized - invalid or missing credentials
        '404':
          description: System resource not found
  /Systems/{SystemId}/Actions/ComputerSystem.Reset:
    post:
      operationId: resetSystem
      summary: Dell Servers Reset a computer system
      description: >-
        Performs a power action on the computer system such as power on, power
        off, graceful shutdown, force restart, or power cycle. The available
        reset types depend on the current power state of the system.
      tags:
        - Systems
      parameters:
        - $ref: '#/components/parameters/SystemId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ResetAction'
      responses:
        '204':
          description: Reset action initiated successfully
        '400':
          description: Invalid reset type for current system state
        '401':
          description: Unauthorized - invalid or missing credentials
        '404':
          description: System resource not found
  /Systems/{SystemId}/Bios:
    get:
      operationId: getSystemBios
      summary: Dell Servers Get BIOS attributes
      description: >-
        Retrieves the current BIOS attribute values for the specified computer
        system. BIOS attributes control hardware-level settings including boot
        order, processor configuration, memory settings, and security features.
      tags:
        - Systems
      parameters:
        - $ref: '#/components/parameters/SystemId'
      responses:
        '200':
          description: BIOS attributes resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Bios'
        '401':
          description: Unauthorized - invalid or missing credentials
        '404':
          description: System resource not found
  /Systems/{SystemId}/Bios/Settings:
    patch:
      operationId: updateBiosSettings
      summary: Dell Servers Update pending BIOS attributes
      description: >-
        Sets pending BIOS attribute values that will be applied on the next
        system reboot. Only attributes that differ from current values need to
        be specified. Changes require a system reboot to take effect.
      tags:
        - Systems
      parameters:
        - $ref: '#/components/parameters/SystemId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                Attributes:
                  type: object
                  description: BIOS attribute name-value pairs to set as pending
                  additionalProperties: true
      responses:
        '200':
          description: Pending BIOS attributes updated
        '400':
          description: Invalid attribute name or value
        '401':
          description: Unauthorized - invalid or missing credentials
  /Systems/{SystemId}/Storage:
    get:
      operationId: listStorageControllers
      summary: Dell Servers List storage controllers
      description: >-
        Retrieves the collection of storage controller resources for the
        specified system, including RAID controllers, BOSS controllers, and
        direct-attached storage interfaces.
      tags:
        - Systems
      parameters:
        - $ref: '#/components/parameters/SystemId'
      responses:
        '200':
          description: Collection of storage controllers
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceCollection'
        '401':
          description: Unauthorized - invalid or missing credentials
  /Systems/{SystemId}/EthernetInterfaces:
    get:
      operationId: listEthernetInterfaces
      summary: Dell Servers List Ethernet interfaces
      description: >-
        Retrieves the collection of Ethernet interface resources for the
        specified system, including network adapters, their MAC addresses,
        link status, and IP configuration.
      tags:
        - Systems
      parameters:
        - $ref: '#/components/parameters/SystemId'
      responses:
        '200':
          description: Collection of Ethernet interfaces
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceCollection'
        '401':
          description: Unauthorized - invalid or missing credentials
  /Chassis:
    get:
      operationId: listChassis
      summary: Dell Servers List chassis resources
      description: >-
        Retrieves the collection of chassis resources representing the physical
        enclosure of the server including power supplies, fans, thermal sensors,
        and physical component inventory.
      tags:
        - Chassis
      responses:
        '200':
          description: Collection of chassis resources
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceCollection'
        '401':
          description: Unauthorized - invalid or missing credentials
  /Chassis/{ChassisId}:
    get:
      operationId: getChassis
      summary: Dell Servers Get a chassis resource
      description: >-
        Retrieves a specific chassis resource with detailed information about the
        physical enclosure, including model, serial number, part number, asset
        tag, indicator LED state, and links to power and thermal resources.
      tags:
        - Chassis
      parameters:
        - $ref: '#/components/parameters/ChassisId'
      responses:
        '200':
          description: Chassis resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Chassis'
        '401':
          description: Unauthorized - invalid or missing credentials
        '404':
          description: Chassis resource not found
  /Chassis/{ChassisId}/Power:
    get:
      operationId: getChassisPower
      summary: Dell Servers Get chassis power information
      description: >-
        Retrieves power supply information, power consumption metrics, and power
        control settings for the specified chassis including current wattage,
        power capacity, and power supply redundancy status.
      tags:
        - Chassis
      parameters:
        - $ref: '#/components/parameters/ChassisId'
      responses:
        '200':
          description: Chassis power resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Power'
        '401':
          description: Unauthorized - invalid or missing credentials
  /Chassis/{ChassisId}/Thermal:
    get:
      operationId: getChassisThermal
      summary: Dell Servers Get chassis thermal information
      description: >-
        Retrieves thermal sensor readings, fan speeds, and temperature thresholds
        for the specified chassis. Includes inlet and exhaust temperatures, CPU
        temperatures, and fan status with redundancy information.
      tags:
        - Chassis
      parameters:
        - $ref: '#/components/parameters/ChassisId'
      responses:
        '200':
          description: Chassis thermal resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Thermal'
        '401':
          description: Unauthorized - invalid or missing credentials
  /Managers:
    get:
      operationId: listManagers
      summary: Dell Servers List manager resources
      description: >-
        Retrieves the collection of manager resources representing the iDRAC
        management controller including its firmware version, network
        configuration, and available management services.
      tags:
        - Managers
      responses:
        '200':
          description: Collection of manager resources
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceCollection'
        '401':
          description: Unauthorized - invalid or missing credentials
  /Managers/{ManagerId}:
    get:
      operationId: getManager
      summary: Dell Servers Get a manager resource
      description: >-
        Retrieves a specific manager resource representing the iDRAC controller
        with its firmware version, model, network interfaces, virtual media
        capabilities, and links to log services.
      tags:
        - Managers
      parameters:
        - $ref: '#/components/parameters/ManagerId'
      responses:
        '200':
          description: Manager resource
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Manager'
        '401':
          description: Unauthorized - invalid or missing credentials
        '404':
          description: Manager resource not found
  /Managers/{ManagerId}/LogServices:
    get:
      operationId: listLogServices
      summary: Dell Servers List log services
      description: >-
        Retrieves the collection of log services available on the iDRAC manager
        including the Lifecycle Controller log and the System Event Log (SEL).
      tags:
        - Managers
      parameters:
        - $ref: '#/components/parameters/ManagerId'
      responses:
        '200':
          description: Collection of log services
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceCollection'
        '401':
          description: Unauthorized - invalid or missing credentials
  /Managers/{ManagerId}/VirtualMedia:
    get:
      operationId: listVirtualMedia
      summary: Dell Servers List virtual media devices
      description: >-
        Retrieves the collection of virtual media devices that can be used to
        mount remote ISO images or floppy images for operating system deployment
        and server configuration.
      tags:
        - Managers
      parameters:
        - $ref: '#/components/parameters/ManagerId'
      responses:
        '200':
          description: Collection of virtual media resources
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceCollection'
        '401':
          description: Unauthorized - invalid or missing credentials
  /AccountService:
    get:
      operationId: getAccountService
      summary: Dell Servers Get account service
      description: >-
        Retrieves the account service resource which provides the configuration
        for user account management including password policies, lockout
        settings, and links to the accounts collection.
      tags:
        - Accounts
      responses:
        '200':
          description: Account service resource
          content:
            application/json:
              schema:
                type: object
                description: Account service configuration
        '401':
          description: Unauthorized - invalid or missing credentials
  /AccountService/Accounts:
    get:
      operationId: listAccounts
      summary: Dell Servers List user accounts
      description: >-
        Retrieves the collection of user accounts configured on the iDRAC
        including local users with their roles and privileges.
      tags:
        - Accounts
      responses:
        '200':
          description: Collection of user accounts
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceCollection'
        '401':
          description: Unauthorized - invalid or missing credentials
  /SessionService/Sessions:
    get:
      operationId: listSessions
      summary: Dell Servers List active sessions
      description: >-
        Retrieves the collection of active sessions on the iDRAC including
        web UI sessions, Redfish API sessions, and SSH sessions.
      tags:
        - Sessions
      responses:
        '200':
          description: Collection of active sessions
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceCollection'
        '401':
          description: Unauthorized - invalid or missing credentials
    post:
      operationId: createSession
      summary: Dell Servers Create a new session
      description: >-
        Creates a new Redfish session by authenticating with username and
        password. Returns a session token in the X-Auth-Token response header
        that can be used for subsequent requests instead of basic authentication.
      tags:
        - Sessions
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - UserName
                - Password
              properties:
                UserName:
                  type: string
                  description: iDRAC username
                Password:
                  type: string
                  description: iDRAC password
      responses:
        '201':
          description: Session created successfully
          headers:
            X-Auth-Token:
              description: Session authentication token
              schema:
                type: string
            Location:
              description: URI of the created session resource
              schema:
                type: string
        '401':
          description: Authentication failed - invalid credentials
  /UpdateService:
    get:
      operationId: getUpdateService
      summary: Dell Servers Get update service
      description: >-
        Retrieves the update service resource which provides firmware update
        capabilities and links to the firmware inventory collection.
      tags:
        - Update Service
      responses:
        '200':
          description: Update service resource
          content:
            application/json:
              schema:
                type: object
                description: Update service configuration and capabilities
        '401':
          description: Unauthorized - invalid or missing credentials
  /UpdateService/FirmwareInventory:
    get:
      operationId: listFirmwareInventory
      summary: Dell Servers List firmware inventory
      description: >-
        Retrieves the collection of firmware inventory items for all components
        in the server including iDRAC, BIOS, storage controllers, network
        adapters, power supplies, and CPLD firmware versions.
      tags:
        - Update Service
      responses:
        '200':
          description: Collection of firmware inventory items
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceCollection'
        '401':
          description: Unauthorized - invalid or missing credentials
  /TaskService/Tasks:
    get:
      operationId: listTasks
      summary: Dell Servers List tasks
      description: >-
        Retrieves the collection of tasks representing asynchronous operations
        and lifecycle controller jobs including firmware updates, configuration
        changes, and RAID creation operations.
      tags:
        - Task Service
      responses:
        '200':
          description: Collection of task resources
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceCollection'
        '401':
          description: Unauthorized - invalid or missing credentials
  /EventService:
    get:
      operationId: getEventService
      summary: Dell Servers Get event service
      description: >-
        Retrieves the event service resource which provides configuration for
        event subscriptions and server-sent events. The event service enables
        clients to subscribe to alerts and lifecycle events from the iDRAC.
      tags:
        - Event Service
      responses:
        '200':
          description: Event service resource
          content:
            application/json:
              schema:
                type: object
                description: Event service configuration
        '401':
          description: Unauthorized - invalid or missing credentials
  /EventService/Subscriptions:
    get:
      operationId: listEventSubscriptions
      summary: Dell Servers List event subscriptions
      description: >-
        Retrieves the collection of event subscriptions configured on the iDRAC.
        Each subscription defines a destination URL and event types to which the
        client has subscribed for receiving push notifications.
      tags:
        - Event Service
      responses:
        '200':
          description: Collection of event subscriptions
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceCollection'
        '401':
          description: Unauthorized - invalid or missing credentials
    post:
      operationId: createEventSubscription
      summary: Dell Servers Create an event subscription
      description: >-
        Creates a new event subscription that configures the iDRAC to push event
        notifications to a specified destination URL when events matching the
        subscription criteria occur. iDRAC supports up to eight concurrent
        subscriptions.
      tags:
        - Event Service
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EventSubscription'
      responses:
        '201':
          description: Event subscription created
        '400':
          description: Invalid subscription parameters
        '401':
          description: Unauthorized - invalid or missing credentials
  /TelemetryService:
    get:
      operationId: getTelemetryService
      summary: Dell Servers Get telemetry service
      description: >-
        Retrieves the telemetry service resource which provides access to metric
        definitions and metric report definitions for server telemetry data
        including power, thermal, CPU, memory, and NIC statistics.
      tags:
        - Telemetry Service
      responses:
        '200':
          description: Telemetry service resource
          content:
            application/json:
              schema:
                type: object
                description: Telemetry service configuration and links
        '401':
          description: Unauthorized - invalid or missing credentials
  /TelemetryService/MetricReports:
    get:
      operationId: listMetricReports
      summary: Dell Servers List metric reports
      description: >-
        Retrieves the collection of metric reports available from the telemetry
        service. Each report contains a set of related metrics that can be
        streamed via SSE or polled directly.
      tags:
        - Telemetry Service
      responses:
        '200':
          description: Collection of metric report resources
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceCollection'
        '401':
          description: Unauthorized - invalid or missing credentials
components:
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic
      description: >-
        HTTP Basic Authentication using iDRAC username and password credentials.
        All API requests require authentication except for the Redfish service
        root at /redfish/v1.
    sessionAuth:
      type: apiKey
      in: header
      name: X-Auth-Token
      description: >-
        Session-based authentication using a token obtained from the Sessions
        resource POST operation. The token is passed in the X-Auth-Token header.
  parameters:
    SystemId:
      name: SystemId
      in: path
      required: true
      description: >-
        Identifier for the computer system resource, typically System.Embedded.1
        for Dell PowerEdge servers
      schema:
        type: string
        default: System.Embedded.1
    ChassisId:
      name: ChassisId
      in: path
      required: true
      description: >-
        Identifier for the chassis resource, typically System.Embedded.1 for
        Dell PowerEdge servers
      schema:
        type: string
        default: System.Embedded.1
    ManagerId:
      name: ManagerId
      in: path
      required: true
      description: >-
        Identifier for the manager resource, typically iDRAC.Embedded.1 for
        Dell PowerEdge servers
      schema:
        type: string
        default: iDRAC.Embedded.1
  schemas:
    ServiceRoot:
      type: object
      description: Redfish service root resource providing links to top-level collections
      properties:
        '@odata.id':
          type: string
          description: OData resource identifier
        '@odata.type':
          type: string
          description: OData resource type
        Id:
          type: string
          description: Resource identifier
        Name:
          type: string
          description: Resource name
        RedfishVersion:
          type: string
          description: Redfish protocol version supported
        Systems:
          $ref: '#/components/schemas/ResourceLink'
        Chassis:
          $ref: '#/components/schemas/ResourceLink'
        Managers:
          $ref: '#/components/schemas/ResourceLink'
        AccountService:
          $ref: '#/components/schemas/ResourceLink'
        SessionService:
          $ref: '#/components/schemas/ResourceLink'
        UpdateService:
          $ref: '#/components/schemas/ResourceLink'
        EventService:
          $ref: '#/components/schemas/ResourceLink'
        TaskService:
          $ref: '#/components/schemas/ResourceLink'
        TelemetryService:
          $ref: '#/components/schemas/ResourceLink'
    ResourceLink:
      type: object
      description: Link to a Redfish resource
      properties:
        '@odata.id':
          type: string
          description: OData resource URI
    ResourceCollection:
      type: object
      description: Redfish resource collection
      properties:
        '@odata.id':
          type: string
          description: OData resource identifier
        '@odata.type':
          type: string
          description: OData resource type
        Name:
          type: string
          description: Collection name
        [email protected]:
          type: integer
          description: Number of members in the collection
        Members:
          type: array
          description: Array of resource links
          items:
            $ref: '#/components/schemas/ResourceLink'
    ComputerSystemCollection:
      type: object
      description: Collection of computer system resources
      properties:
        '@odata.id':
          type: string
          description: OData resource identifier
        '@odata.type':
          type: string
          description: OData resource type
        Name:
          type: string
          description: Collection name
        [email protected]:
          type: integer
          description: Number of systems in the collection
        Members:
          type: array
          description: Array of computer system resource links
          items:
            $ref: '#/components/schemas/ResourceLink'
    ComputerSystem:
      type: object
      description: >-
        Computer system resource representing a Dell PowerEdge server with
        hardware inventory, health status, and configuration
      properties:
        '@odata.id':
          type: string
          description: OData resource identifier
        '@odata.type':
          type: string
          description: OData resource type
        Id:
          type: string
          description: System resource identifier
        Name:
          type: string
          description: System name
        Manufacturer:
          type: string
          description: Server manufacturer
        Model:
          type: string
          description: Server model name
        SerialNumber:
          type: string
          description: Server serial number
        SKU:
          type: string
          description: Server SKU or service tag
        PartNumber:
          type: string
          description: Server part number
        SystemType:
          type: string
          description: Type of computer system
          enum:
            - Physical
            - Virtual
            - OS
            - PhysicallyPartitioned
            - VirtuallyPartitioned
        AssetTag:
          type: string
          description: User-assigned asset tag
        BiosVersion:
          type: string
          description: Current BIOS firmware version
        PowerState:
          type: string
          description: Current power state of the system
          enum:
            - 'On'
            - 'Off'
            - PoweringOn
            - PoweringOff
        Status:
          $ref: '#/components/schemas/Status'
        HostName:
          type: string
          description: Hostname of the operating system
        IndicatorLED:
          type: string
          description: State of the system indicator LED
          enum:
            - Lit
            - Blinking
            - 'Off'
        ProcessorSummary:
          type: object
          description: Summary of processor inventory
          properties:
            Count:
              type: integer
              description: Number of processors installed
            Model:
              type: string
              description: Processor model name
            Status:
              $ref: '#/components/schemas/Status'
        MemorySummary:
          type: object
          description: Summary of memory inventory
          properties:
            TotalSystemMemoryGiB:
              type: number
              description: Total system memory in GiB
            Status:
              $ref: '#/components/schemas/Status'
        Boot:
          type: object
          description: Boot configuration
          properties:
            BootSourceOverrideEnabled:
              type: string
              description: Boot source override state
              enum:
                - Disabled
                - Once
                - Continuous
            BootSourceOverrideTarget:
              type: string
              description: Boot source override target device
            BootSourceOverrideMode:
              type: string
              description: BIOS boot mode
              enum:
                - Legacy
                - UEFI
    Chassis:
      type: object
      description: >-
        Chassis resource representing the physical enclosure of a Dell PowerEdge
        server including power, thermal, and physical component information
      properties:
        '@odata.id':
          type: string
          description: OData resource identifier
        Id:
          type: string
          description: Chassis resource identifier
        Name:
          type: string
          description: Chassis name
        ChassisType:
          type: string
          description: Type of physical form factor
          enum:
            - Rack
            - Blade
            - Enclosure
            - StandAlone
            - RackMount
            - Card
            - Cartridge
            - Row
            - Pod
            - Expansion
            - Sidecar
        Manufacturer:
          type: string
          description: Chassis manufacturer
        Model:
          type: string
          description: Chassis model
        SerialNumber:
          type: string
          description: Chassis serial number
        PartNumber:
          type: string
          description: Chassis part number
        SKU:
          type: string
          description: Chassis SKU or service tag
        AssetTag:
          type: string
          description: User-assigned asset tag
        IndicatorLED:
          type: string
          description: State of the chassis indicator LED
          enum:
            - Lit
            - Blinking
            - 'Off'
        Status:
          $ref: '#/components/schemas/Status'
        PowerState:
          type: string
          description: Current power sta

# --- truncated at 32 KB (39 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/dell-servers/refs/heads/main/openapi/dell-servers-idrac-redfish-openapi.yml