Roku · Schema

DeviceInstanceInfo

DeviceInstanceInfo schema from Roku Nabu Cloud

StreamingTelevisionMediaEntertainmentConnected TVConsumer Electronics

Properties

Name Type Description
id integer
creator_id string The ID of the user who started the device.
created_at string
started_at string
snapshot_id integer The ID of the snapshot to use for the device.
snapshot_name string Name of the snapshot.
region_id integer The ID of the region where the device will run.
region_name string Name of the region.
stream_option_id integer The ID of the stream option to use for the device.
stream_option_name string Name of the stream option.
max_runtime integer The maximum runtime of the device in seconds, 0 for project max runtime.
rootfs_artifactory_path string The path of the rootfs image in artifactory.
reboot integer Device reboot behaviour.-1 for no reboots, including requested reboot; 0 for no device crash reboots; and >0 for n number of device crash reboots.A device crash is determined by restart_reason in the
ip_address object IP address of the running device Instance.
janus_id object ID of the Janus WebRTC stream.
janus_pin object Pin to access the Janus WebRTC stream.
janus_token object Janus API Token.
janus_websocket_url object
janus_ice_servers object
instance_api_url object
instance_uuid string
View JSON Schema on GitHub

JSON Schema

nabu-cloud-device-instance-info-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/roku/refs/heads/main/json-schema/nabu-cloud-device-instance-info-schema.json",
  "title": "DeviceInstanceInfo",
  "description": "DeviceInstanceInfo schema from Roku Nabu Cloud",
  "type": "object",
  "properties": {
    "id": {
      "type": "integer",
      "minimum": 0,
      "title": "Id"
    },
    "creator_id": {
      "type": "string",
      "format": "uuid",
      "title": "Creator Id",
      "description": "The ID of the user who started the device."
    },
    "created_at": {
      "type": "string",
      "format": "date-time",
      "title": "Created At"
    },
    "started_at": {
      "type": "string",
      "format": "date-time",
      "title": "Started At"
    },
    "snapshot_id": {
      "type": "integer",
      "minimum": 0,
      "title": "Snapshot Id",
      "description": "The ID of the snapshot to use for the device."
    },
    "snapshot_name": {
      "type": "string",
      "maxLength": 255,
      "minLength": 3,
      "title": "Snapshot Name",
      "description": "Name of the snapshot."
    },
    "region_id": {
      "type": "integer",
      "minimum": 0,
      "title": "Region Id",
      "description": "The ID of the region where the device will run."
    },
    "region_name": {
      "type": "string",
      "maxLength": 255,
      "minLength": 3,
      "title": "Region Name",
      "description": "Name of the region."
    },
    "stream_option_id": {
      "type": "integer",
      "minimum": 0,
      "title": "Stream Option Id",
      "description": "The ID of the stream option to use for the device."
    },
    "stream_option_name": {
      "type": "string",
      "maxLength": 255,
      "minLength": 3,
      "title": "Stream Option Name",
      "description": "Name of the stream option. "
    },
    "max_runtime": {
      "type": "integer",
      "minimum": 0,
      "title": "Max Runtime",
      "description": "The maximum runtime of the device in seconds, 0 for project max runtime."
    },
    "rootfs_artifactory_path": {
      "type": "string",
      "maxLength": 255,
      "minLength": 3,
      "pattern": "^[a-zA-Z0-9_-]*(\\/[a-zA-Z0-9._-]+)*(\\:[a-zA-Z0-9._-]+)?$",
      "title": "Rootfs Artifactory Path",
      "description": "The path of the rootfs image in artifactory.",
      "examples": [
        "official/release/2024-h2/r14.0.4.122xx-rta/native_tv:latest",
        "premergeci/native_tv:4838657"
      ]
    },
    "reboot": {
      "type": "integer",
      "maximum": 150,
      "minimum": -1,
      "title": "Reboot",
      "description": "Device reboot behaviour.-1 for no reboots, including requested reboot; 0 for no device crash reboots; and >0 for n number of device crash reboots.A device crash is determined by restart_reason in the device nvram. A device shutdown will act like a reboot."
    },
    "ip_address": {
      "anyOf": [
        {
          "type": "string",
          "format": "ipvanyaddress"
        },
        {
          "type": "null"
        }
      ],
      "title": "Ip Address",
      "description": "IP address of the running device Instance."
    },
    "janus_id": {
      "anyOf": [
        {
          "type": "integer",
          "minimum": 0
        },
        {
          "type": "null"
        }
      ],
      "title": "Janus Id",
      "description": "ID of the Janus WebRTC stream."
    },
    "janus_pin": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Janus Pin",
      "description": "Pin to access the Janus WebRTC stream."
    },
    "janus_token": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Janus Token",
      "description": "Janus API Token."
    },
    "janus_websocket_url": {
      "anyOf": [
        {
          "type": "string",
          "description": "\n            WebSocket URL to connect to the Janus WebRTC gateway. Includes the\n            ws:// prefix and the path to the instance.\n        "
        },
        {
          "type": "null"
        }
      ],
      "title": "Janus Websocket Url"
    },
    "janus_ice_servers": {
      "anyOf": [
        {
          "items": {
            "$ref": "#/components/schemas/IceServer"
          },
          "type": "array",
          "description": "List of ICE servers to use for WebRTC connections."
        },
        {
          "type": "null"
        }
      ],
      "title": "Janus Ice Servers"
    },
    "instance_api_url": {
      "anyOf": [
        {
          "type": "string",
          "description": "\n            Url prefix for the instance api. Does not contain the protocol\n            prefix since the instance api contains both ws and http endpoints.\n        "
        },
        {
          "type": "null"
        }
      ],
      "title": "Instance Api Url"
    },
    "instance_uuid": {
      "type": "string",
      "format": "uuid",
      "title": "Instance Uuid"
    }
  },
  "required": [
    "id",
    "creator_id",
    "created_at",
    "snapshot_id",
    "region_id",
    "stream_option_id",
    "max_runtime",
    "rootfs_artifactory_path",
    "reboot",
    "instance_uuid"
  ]
}