---
title: "Get device"
method: GET
path: "/device/{deviceId}"
tags: ["Device"]
---

# Get device

`GET /device/{deviceId}`

## Headers

- `X-Fields` string, mask

## Response `200`

Success

- DeviceDump
  - `billingCancelDate` integer — Device's service expected cancel date.
  - `billingInfo` object — If set, detailed info on this device's billing method. Otherwise null. When null the accounts default billing info is used for payments.
  - `billingStatus` string — Device's service billing status.
  - `clientId` integer — The unique ID of the associated client.
  - `createdDate` string — Date of service creation.
  - `currentApp` AppResponse
    - `admin_id` integer, required — ID of the admin that created the application
    - `admin_name` string, required — Name admin that created the application
    - `app_form` AppForm
      - `form_builder` FormBuilderLayout, required
        - `definitions` object, required
        - `main` object, required
      - `json_schema` JSONSchemaLayout
        - `definitions` object, required — Definitions used to validate an App's form data
        - `schema` object, required — Schema used to validate an App's form data
      - `test_data` object — Test data used to validate the form
    - `categories` string[], required — Names of the categories this app belongs to (resolved from category_ids)
    - `category_ids` integer[] — IDs of the app categories (see /apps/categories) this app belongs to
    - `changed` string, date-time, required — Date and time the application was last changed
    - `changed_ts` integer, required
    - `cloud_init_template` string — Cloud init template for the application, this is used to provide the cloud init configuration for the application. The templating syntax is Jinja2
    - `created` string, date-time, required — Date and time the application was created
    - `created_ts` integer, required
    - `description` string — Description of the application, this is used to provide context to the user
    - `help_text_template` string — Markdown help doc for the application, this is used to provide documentation to the application and its form requirements
    - `id` integer, required — ID of the application
    - `image_url` string — URL of the image for the app option to display in store
    - `included_features` string[] — Marketed bullet points / features for this app
    - `name` string, required — Name of the application, this is used as a verbatim key in configuration data
    - `set_no_app_form` boolean — Set this to true to disable the form for this application, this is used to disable the form for applications that do not require user input. App form most NOT be supplied when this is true for updating apps. This was is a workaround for swagger typescript generation not supporting nullable fields.
    - `sps_app_option_id` integer — ID of the SPS app-option to link to this app
    - `sps_app_option_name` string — Name of the SPS App option linked to
    - `sps_base_os_option_id` integer, required — ID of the base SPS OS option to link to this app
    - `sps_base_os_option_name` string, required — Name of the base SPS OS option linked to this app
    - `tag_ids` integer[] — IDs of the app tags (see /apps/tags) applied to this app
    - `tags` string[], required — Names of the tags applied to this app (resolved from tag_ids)
    - `title` string, required — Title of the application, this is used to provide context to the user
    - `vps_app_option_id` integer — ID of the VPS app-option to link to this app
    - `vps_app_option_name` string — Name of the VPS App option linked to
    - `vps_base_os_option_id` integer, required — ID of the base VPS OS option to link to this app
    - `vps_base_os_option_name` string, required — Name of the base VPS OS option linked to this app
  - `currentAppOption` OptionDump
    - `currency` string — USD|other
    - `expressions` string[] — Used with `tags` to determine option compatibility. See product docs.
    - `id` integer — Unique ID of the option. Stays the same across products.
    - `monthlyPrice` number — Monthly price of the option.
    - `name` string, required — Unique option name.
    - `operatingSystemFeatures` OperatingSystem
      - `cloudInit` boolean
      - `postInstall` boolean
      - `sshKey` boolean
    - `tags` string[] — Used with `expressions` to determine option compatibility. See product docs.
    - `upgradeName` string — Name of the upgrade this option belongs to; used to label required-style group selectors (e.g. the reload license picker).
  - `deviceId` integer — The unique ID of the device.
  - `deviceType` string — Generic description of device. Usually type and rack unit size.
  - `deviceTypeGroup` string — Generic group
  - `displayedTags` object[] — List containing key/values of device info based on tag order.
  - `enterpriseCloud` PrivateCloudDevice
    - `vdcDetails` string — Details of the VDC.
    - `vdcID` string — The unique ID of the VDC.
  - `hardwareUpgradeCancelled` boolean — Whether the hardware upgrade request has been cancelled.
  - `hardwareUpgradeTicketId` integer — Zendesk ticket ID for a pending hardware upgrade request, if any.
  - `hasCancellation` boolean — True if device has active cancellation request.
  - `hostname` string — a fqdn for the device. for example: `example.hivelocity.net`.
  - `ipmiAddress` object — IP address for IPMI connection. Requires you to whitelist your current IP or be on IPMI VPN.
  - `ipmiEnabled` boolean — True if device is accessible over IPMI by customer.
  - `isManaged` boolean — True if device enrolled in managed services.
  - `isReload` boolean — True if device currently reloading.
  - `lastInvoiceId` integer — The unique ID of the last invoice for this device.
  - `location` object — Detailed information on the device location.
  - `managedAlertsTotal` integer — # of managed service alerts.
  - `metadata` object — Additional metadata.
  - `monitorsTotal` integer — Total # device monitors
  - `monitorsUp` integer — # of passing device monitors
  - `name` string, required — User given custom name.
  - `networkAutomation` object — Network Automation status for device.
  - `nextBillingDate` integer — Date of next invoice determined by associated service.
  - `nextBillingValue` number — Price of device to be paid at `nextBillingDate` determined by associated service.
  - `ports` object[] — Device Ports (Network Interfaces).
  - `powerStatus` object — ON|OFF
  - `primaryIp` string — The first assigned public IP for accessing this device.
  - `productId` integer — The product ID for the device.
  - `selfProvisioning` boolean — True if instant server.
  - `serviceMonitors` string[]
  - `servicePlan` integer — The unique ID of the associated service.
  - `sharedHosting` ShareHostingDeviceDetails
    - `hostingType` string, required
    - `hostname` string, required
    - `username` string
  - `spsStatus` string — BUILDING|IPMI_READY|PROVISIONABLE|RESERVED|WAIT_FOR_PXE|PROVISION_STARTED|PROVISION_WAIT_FOR_ADDONS|PROVISION_FINISHED|WAIT_TO_COMPLETE_ORDER|WAIT_TO_ASSIGN_SERVICE|WAIT_FOR_HARDWARE_SCAN|IN_USE|RELOADING|DEVICE_READY_TO_TEST|DEVICE_READY_TO_WIPE|DEVICE_READY_TO_UPGRADE_FIRMWARE|FAILED|CLEANUP_MOVE_TO_FAILED|IN_REVIEW|READY_FOR_MIGRATION
  - `status` string — active|inactive
  - `tags` string[] — List of all user set device tags.

## Other responses

- `403` — You have not been granted permission to complete this action. Please contact your account manager to grant the proper permission.

---

[API](https://skmtc.net/hivelocity/apis/hivelocity-api.md) · [All operations](https://skmtc.net/hivelocity/apis/hivelocity-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/hivelocity/hivelocity-api/revisions/ee6b717b5015/schema)
