Golioth · Schema

Golioth Device

Schema for a Golioth Device resource returned by the Management API. A Device is the canonical record of an embedded thing connected to Golioth, scoped to a project.

IoTDevice ManagementFirmwareZephyrOTAEmbeddedConnectivity

Properties

Name Type Description
id string Unique device identifier assigned by Golioth (MongoDB-style ObjectId).
projectId string Identifier of the parent Golioth project.
name string Human-readable device name. Unique within a project.
hardwareIds array Hardware identifiers (e.g. MAC, IMEI, serial) registered for the device.
tagIds array List of tag identifiers attached to the device.
blueprintId stringnull Identifier of the blueprint (hardware/software profile) the device is associated with, if any.
enabled boolean Whether the device is allowed to connect to Golioth.
lastReport stringnull Timestamp of the device's last data report or connection.
metadata object Free-form metadata attached to the device by API consumers.
createdAt string RFC 3339 timestamp of device creation.
updatedAt string RFC 3339 timestamp of the last update.
View JSON Schema on GitHub

JSON Schema

golioth-device-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://api-evangelist.com/schemas/golioth/golioth-device-schema.json",
  "title": "Golioth Device",
  "description": "Schema for a Golioth Device resource returned by the Management API. A Device is the canonical record of an embedded thing connected to Golioth, scoped to a project.",
  "type": "object",
  "required": ["id", "projectId", "name", "enabled", "createdAt"],
  "properties": {
    "id": {
      "type": "string",
      "description": "Unique device identifier assigned by Golioth (MongoDB-style ObjectId)."
    },
    "projectId": {
      "type": "string",
      "description": "Identifier of the parent Golioth project."
    },
    "name": {
      "type": "string",
      "description": "Human-readable device name. Unique within a project."
    },
    "hardwareIds": {
      "type": "array",
      "description": "Hardware identifiers (e.g. MAC, IMEI, serial) registered for the device.",
      "items": { "type": "string" }
    },
    "tagIds": {
      "type": "array",
      "description": "List of tag identifiers attached to the device.",
      "items": { "type": "string" }
    },
    "blueprintId": {
      "type": ["string", "null"],
      "description": "Identifier of the blueprint (hardware/software profile) the device is associated with, if any."
    },
    "enabled": {
      "type": "boolean",
      "description": "Whether the device is allowed to connect to Golioth."
    },
    "lastReport": {
      "type": ["string", "null"],
      "format": "date-time",
      "description": "Timestamp of the device's last data report or connection."
    },
    "metadata": {
      "type": "object",
      "description": "Free-form metadata attached to the device by API consumers.",
      "additionalProperties": true
    },
    "createdAt": {
      "type": "string",
      "format": "date-time",
      "description": "RFC 3339 timestamp of device creation."
    },
    "updatedAt": {
      "type": "string",
      "format": "date-time",
      "description": "RFC 3339 timestamp of the last update."
    }
  },
  "additionalProperties": true
}