Arduino · Schema

Arduino IoT Cloud API Schemas

JSON Schema definitions extracted from the Arduino IoT Cloud API OpenAPI specification

IoTElectronicsOpen SourceDevicesDashboardsTime SeriesCloud
View JSON Schema on GitHub

JSON Schema

arduino-iot-cloud-schemas.json Raw ↑
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "title": "Arduino IoT Cloud API Schemas",
  "description": "JSON Schema definitions extracted from the Arduino IoT Cloud API OpenAPI specification",
  "definitions": {
    "ArduinoAction": {
      "description": "ArduinoAction media type (default view)",
      "properties": {
        "created_by": {
          "description": "Id of the user who created the action",
          "format": "uuid",
          "type": "string"
        },
        "description": {
          "description": "The description of the action",
          "type": "string"
        },
        "email": {
          "$ref": "#/components/schemas/email_action"
        },
        "id": {
          "description": "The id of the action",
          "format": "uuid",
          "type": "string"
        },
        "kind": {
          "description": "The kind of the action",
          "enum": [
            "NOTIFY-EMAIL",
            "NOTIFY-PUSH"
          ],
          "example": "NOTIFY-EMAIL",
          "type": "string"
        },
        "name": {
          "description": "The name of the action",
          "type": "string"
        },
        "organization_id": {
          "description": "Id of the organization the trigger belongs to",
          "format": "uuid",
          "type": "string"
        },
        "push_notification": {
          "$ref": "#/components/schemas/push_action"
        },
        "trigger_id": {
          "description": "Id of the trigger the action is associated to",
          "format": "uuid",
          "type": "string"
        }
      },
      "title": "Mediatype identifier: application/vnd.arduino.action+json; view=default",
      "type": "object"
    },
    "ArduinoActionCollection": {
      "description": "ArduinoActionCollection is the media type for an array of ArduinoAction (default view)",
      "items": {
        "$ref": "#/components/schemas/ArduinoAction"
      },
      "title": "Mediatype identifier: application/vnd.arduino.action+json; type=collection; view=default",
      "type": "array"
    },
    "ArduinoAction_template": {
      "description": "ArduinoAction_template media type (default view)",
      "properties": {
        "description": {
          "description": "The description of the action",
          "type": "string"
        },
        "email": {
          "$ref": "#/components/schemas/email_action"
        },
        "kind": {
          "description": "The kind of the action",
          "enum": [
            "NOTIFY-EMAIL",
            "NOTIFY-PUSH"
          ],
          "example": "NOTIFY-EMAIL",
          "type": "string"
        },
        "name": {
          "description": "The name of the action",
          "type": "string"
        },
        "organization_id": {
          "description": "Id of the organization the trigger belongs to",
          "format": "uuid",
          "type": "string"
        },
        "push_notification": {
          "$ref": "#/components/schemas/push_action"
        }
      },
      "title": "Mediatype identifier: application/vnd.arduino.action_template+json; view=default",
      "type": "object"
    },
    "ArduinoArduinoconnectionsV1": {
      "description": "ArduinoArduinoconnectionsV1 media type (default view)",
      "properties": {
        "catm1": {
          "$ref": "#/components/schemas/ArduinoCredentialsv1Collection"
        },
        "cellular": {
          "$ref": "#/components/schemas/ArduinoCredentialsv1Collection"
        },
        "eth": {
          "$ref": "#/components/schemas/ArduinoCredentialsv1Collection"
        },
        "gsm": {
          "$ref": "#/components/schemas/ArduinoCredentialsv1Collection"
        },
        "lora": {
          "$ref": "#/components/schemas/ArduinoCredentialsv1Collection"
        },
        "nb": {
          "$ref": "#/components/schemas/ArduinoCredentialsv1Collection"
        },
        "wifi": {
          "$ref": "#/components/schemas/ArduinoCredentialsv1Collection"
        },
        "wifiandsecret": {
          "$ref": "#/components/schemas/ArduinoCredentialsv1Collection"
        }
      },
      "title": "Mediatype identifier: application/vnd.arduino.arduinoconnections.v1+json; view=default",
      "type": "object"
    },
    "ArduinoBinary": {
      "description": "ArduinoBinary media type (default view)",
      "properties": {
        "bin": {
          "description": "The BASE64 encoded binary file",
          "type": "string"
        },
        "filename": {
          "description": "The binary filename",
          "type": "string"
        },
        "fqbn": {
          "description": "The FQBN of the board the binary run to",
          "type": "string"
        },
        "name": {
          "description": "The sketch name",
          "type": "string"
        },
        "sha256": {
          "description": "The md5 hash of the binary file",
          "type": "string"
        }
      },
      "required": [
        "name",
        "filename",
        "bin",
        "fqbn",
        "sha256"
      ],
      "title": "Mediatype identifier: application/vnd.arduino.binary+json; view=default",
      "type": "object"
    },
    "ArduinoClient": {
      "description": "ArduinoClient media type (default view)",
      "properties": {
        "created_at": {
          "description": "Creation time",
          "format": "date-time",
          "type": "string"
        },
        "id": {
          "description": "The client_id of the client",
          "type": "string"
        },
        "name": {
          "description": "The friendly name of the client",
          "type": "string"
        },
        "secret": {
          "description": "The client_secret of the client",
          "type": "string"
        }
      },
      "required": [
        "id",
        "name",
        "secret",
        "created_at"
      ],
      "title": "Mediatype identifier: application/vnd.arduino.client+json; view=default",
      "type": "object"
    },
    "ArduinoClientCollection": {
      "description": "ArduinoClientCollection is the media type for an array of ArduinoClient (default view)",
      "items": {
        "$ref": "#/components/schemas/ArduinoClient"
      },
      "title": "Mediatype identifier: application/vnd.arduino.client+json; type=collection; view=default",
      "type": "array"
    },
    "ArduinoCompact_dashboard_v2": {
      "description": "Dashboard is a collection of widgets (default view)",
      "properties": {
        "cover_image": {
          "description": "The cover image of the dashboard",
          "maxLength": 1024,
          "type": "string"
        },
        "created_at": {
          "description": "Creation date",
          "format": "date-time",
          "type": "string"
        },
        "deleted_at": {
          "description": "Delete date",
          "format": "date-time",
          "type": "string"
        },
        "id": {
          "description": "The friendly name of the dashboard",
          "format": "uuid",
          "type": "string"
        },
        "name": {
          "description": "The friendly name of the dashboard",
          "type": "string"
        },
        "organization_id": {
          "description": "Id of the organization the dashboard belongs to",
          "format": "uuid",
          "type": "string"
        },
        "pages": {
          "$ref": "#/components/schemas/ArduinoPageCollection"
        },
        "shared_by": {
          "$ref": "#/components/schemas/ArduinoDashboardshare"
        },
        "shared_with": {
          "$ref": "#/components/schemas/ArduinoDashboardshareCollection"
        },
        "updated_at": {
          "description": "Last update date",
          "format": "date-time",
          "type": "string"
        },
        "user_id": {
          "description": "The user id of the owner",
          "format": "uuid",
          "type": "string"
        }
      },
      "required": [
        "id",
        "name",
        "user_id"
      ],
      "title": "Mediatype identifier: application/vnd.arduino.compact_dashboard_v2+json; view=default",
      "type": "object"
    },
    "ArduinoCompact_dashboard_v2Collection": {
      "description": "ArduinoCompact_dashboard_v2Collection is the media type for an array of ArduinoCompact_dashboard_v2 (default view)",
      "items": {
        "$ref": "#/components/schemas/ArduinoCompact_dashboard_v2"
      },
      "title": "Mediatype identifier: application/vnd.arduino.compact_dashboard_v2+json; type=collection; view=default",
      "type": "array"
    },
    "ArduinoCompact_device_v2": {
      "description": "ArduinoCompact_device_v2 media type (default view)",
      "properties": {
        "ble_mac": {
          "maxLength": 17,
          "minLength": 17,
          "pattern": "^(?:[0-9A-Fa-f]{2}[:]){5}(?:[0-9A-Fa-f]{2})",
          "type": "string"
        },
        "connection_type": {
          "description": "The type of the connections selected by the user when multiple connections are available",
          "enum": [
            "wifi",
            "eth",
            "wifiandsecret",
            "gsm",
            "nb",
            "lora",
            "catm1",
            "cellular"
          ],
          "type": "string"
        },
        "created_at": {
          "description": "Creation date of the device",
          "format": "date-time",
          "type": "string"
        },
        "deleted_at": {
          "description": "Deletion date of the trigger",
          "format": "date-time",
          "type": "string"
        },
        "device_status": {
          "description": "The connection status of the device",
          "enum": [
            "ONLINE",
            "OFFLINE",
            "UNKNOWN"
          ],
          "type": "string"
        },
        "fqbn": {
          "description": "The fully qualified board name",
          "type": "string"
        },
        "href": {
          "description": "The api reference of this device",
          "type": "string"
        },
        "id": {
          "description": "The arn of the device",
          "format": "uuid",
          "type": "string"
        },
        "issuer_ca": {
          "type": "string"
        },
        "label": {
          "description": "The label of the device",
          "type": "string"
        },
        "lib_version": {
          "type": "string"
        },
        "locked": {
          "description": "True if the device is locked and can't be claimed by another user",
          "type": "boolean"
        },
        "metadata": {
          "additionalProperties": true,
          "description": "The metadata of the device",
          "type": "object"
        },
        "name": {
          "description": "The friendly name of the device",
          "type": "string"
        },
        "organization_id": {
          "description": "Id of the organization the device belongs to",
          "format": "uuid",
          "type": "string"
        },
        "serial": {
          "description": "The serial uuid of the device",
          "type": "string"
        },
        "tags": {
          "additionalProperties": true,
          "description": "Tags belonging to the device",
          "type": "object"
        },
        "thing_id": {
          "description": "The id of the attached thing",
          "format": "uuid",
          "type": "string"
        },
        "type": {
          "description": "The type of the device",
          "type": "string"
        },
        "unique_hardware_id": {
          "maxLength": 64,
          "minLength": 64,
          "type": "string"
        },
        "updated_at": {
          "description": "Update date of the trigger",
          "format": "date-time",
          "type": "string"
        },
        "user_id": {
          "description": "The id of the user",
          "format": "uuid",
          "type": "string"
        },
        "wifi_fw_version": {
          "description": "The version of the NINA/WIFI101 firmware running on the device",
          "type": "string"
        }
      },
      "required": [
        "id",
        "name",
        "type",
        "label",
        "user_id",
        "href",
        "serial"
      ],
      "title": "Mediatype identifier: application/vnd.arduino.compact_device_v2+json; view=default",
      "type": "object"
    },
    "ArduinoCompact_device_v2Collection": {
      "description": "ArduinoCompact_device_v2Collection is the media type for an array of ArduinoCompact_device_v2 (default view)",
      "items": {
        "$ref": "#/components/schemas/ArduinoCompact_device_v2"
      },
      "title": "Mediatype identifier: application/vnd.arduino.compact_device_v2+json; type=collection; view=default",
      "type": "array"
    },
    "ArduinoCompact_thing": {
      "description": "ArduinoCompact_thing media type (default view)",
      "properties": {
        "assistant": {
          "description": "The kind of voice assistant the thing is connected to, it can be ALEXA | GOOGLE | NONE",
          "enum": [
            "ALEXA",
            "GOOGLE",
            "NONE"
          ],
          "type": "string"
        },
        "created_at": {
          "description": "Creation date of the thing",
          "format": "date-time",
          "type": "string"
        },
        "deleted_at": {
          "description": "Delete date of the thing",
          "format": "date-time",
          "type": "string"
        },
        "device_id": {
          "description": "The id of the device",
          "format": "uuid",
          "type": "string"
        },
        "href": {
          "description": "The api reference of this thing",
          "type": "string"
        },
        "id": {
          "description": "The id of the thing",
          "format": "uuid",
          "type": "string"
        },
        "name": {
          "description": "The friendly name of the thing",
          "type": "string"
        },
        "organization_id": {
          "description": "Id of the organization the thing belongs to",
          "format": "uuid",
          "type": "string"
        },
        "sketch_id": {
          "description": "The id of the attached sketch",
          "format": "uuid",
          "type": "string"
        },
        "tags": {
          "additionalProperties": true,
          "description": "Tags of the thing",
          "type": "object"
        },
        "timezone": {
          "description": "Time zone of the thing",
          "type": "string"
        },
        "updated_at": {
          "description": "Update date of the thing",
          "format": "date-time",
          "type": "string"
        },
        "user_id": {
          "description": "The user id of the owner",
          "format": "uuid",
          "type": "string"
        }
      },
      "required": [
        "id",
        "user_id",
        "name",
        "href",
        "timezone"
      ],
      "title": "Mediatype identifier: application/vnd.arduino.compact_thing+json; view=default",
      "type": "object"
    },
    "ArduinoCompact_thingCollection": {
      "description": "ArduinoCompact_thingCollection is the media type for an array of ArduinoCompact_thing (default view)",
      "items": {
        "$ref": "#/components/schemas/ArduinoCompact_thing"
      },
      "title": "Mediatype identifier: application/vnd.arduino.compact_thing+json; type=collection; view=default",
      "type": "array"
    },
    "ArduinoCompact_trigger": {
      "description": "ArduinoCompact_trigger media type (default view)",
      "properties": {
        "actions": {
          "description": "A list of actions associated with the trigger",
          "items": {
            "$ref": "#/components/schemas/ArduinoAction"
          },
          "type": "array"
        },
        "active": {
          "description": "Is true if the trigger is enabled",
          "type": "boolean"
        },
        "created_at": {
          "description": "Creation date of the trigger",
          "format": "date-time",
          "type": "string"
        },
        "deleted_at": {
          "description": "Deletion date of the trigger",
          "format": "date-time",
          "type": "string"
        },
        "description": {
          "description": "The description of the trigger",
          "type": "string"
        },
        "device_status_source": {
          "$ref": "#/components/schemas/device_status_source"
        },
        "id": {
          "description": "The id of the trigger",
          "format": "uuid",
          "type": "string"
        },
        "name": {
          "description": "The name of the trigger",
          "type": "string"
        },
        "organization_id": {
          "description": "Id of the organization the trigger belongs to",
          "format": "uuid",
          "type": "string"
        },
        "property_id": {
          "description": "Id of the property the trigger is associated to (mutually exclusive with 'device_status_source')",
          "format": "uuid",
          "type": "string"
        },
        "updated_at": {
          "description": "Update date of the trigger",
          "format": "date-time",
          "type": "string"
        },
        "user_id": {
          "description": "Id of the user who created the trigger",
          "format": "uuid",
          "type": "string"
        }
      },
      "required": [
        "name"
      ],
      "title": "Mediatype identifier: application/vnd.arduino.compact_trigger+json; view=default",
      "type": "object"
    },
    "ArduinoCompact_triggerCollection": {
      "description": "ArduinoCompact_triggerCollection is the media type for an array of ArduinoCompact_trigger (default view)",
      "items": {
        "$ref": "#/components/schemas/ArduinoCompact_trigger"
      },
      "title": "Mediatype identifier: application/vnd.arduino.compact_trigger+json; type=collection; view=default",
      "type": "array"
    },
    "ArduinoCompressedv2": {
      "description": "compressed contains the info from which to generate the certificate (default view)",
      "properties": {
        "authority_key_identifier": {
          "description": "The Authority Key Identifier of the certificate",
          "type": "string"
        },
        "not_after": {
          "description": "The ending date of the certificate",
          "format": "date-time",
          "type": "string"
        },
        "not_before": {
          "description": "The starting date of the certificate",
          "format": "date-time",
          "type": "string"
        },
        "serial": {
          "description": "The serial number of the certificate",
          "type": "string"
        },
        "signature": {
          "description": "The signature of the certificate",
          "type": "string"
        },
        "signature_asn1_x": {
          "description": "The ASN1 X component of certificate signature",
          "type": "string"
        },
        "signature_asn1_y": {
          "description": "The ASN1 Y component of certificate signature",
          "type": "string"
        }
      },
      "required": [
        "serial",
        "not_before",
        "not_after",
        "signature",
        "signature_asn1_x",
        "signature_asn1_y"
      ],
      "title": "Mediatype identifier: application/vnd.arduino.compressedv2; view=default",
      "type": "object"
    },
    "ArduinoCredentialsv1": {
      "description": "ArduinoCredentialsv1 media type (default view)",
      "properties": {
        "friendly_name": {
          "description": "Friendly name",
          "type": "string"
        },
        "max_length": {
          "description": "Max length of the field expressed in bytes",
          "format": "int64",
          "type": "integer"
        },
        "required": {
          "description": "Tell if the parameter is required or not",
          "type": "boolean"
        },
        "secret_name": {
          "description": "The secret parameter name",
          "type": "string"
        },
        "sensitive": {
          "description": "Tell if the field is sensitive",
          "type": "boolean"
        }
      },
      "required": [
        "secret_name",
        "required",
        "friendly_name",
        "sensitive",
        "max_length"
      ],
      "title": "Mediatype identifier: application/vnd.arduino.credentialsv1+json; view=default",
      "type": "object"
    },
    "ArduinoCredentialsv1Collection": {
      "description": "ArduinoCredentialsv1Collection is the media type for an array of ArduinoCredentialsv1 (default view)",
      "items": {
        "$ref": "#/components/schemas/ArduinoCredentialsv1"
      },
      "title": "Mediatype identifier: application/vnd.arduino.credentialsv1+json; type=collection; view=default",
      "type": "array"
    },
    "ArduinoDashboardowner": {
      "description": "ArduinoDashboardowner media type (default view)",
      "properties": {
        "user_id": {
          "description": "The userID of the user who created the dashboard",
          "format": "uuid",
          "type": "string"
        },
        "username": {
          "description": "The username of the user who created the dashboard",
          "type": "string"
        }
      },
      "required": [
        "user_id"
      ],
      "title": "Mediatype identifier: application/vnd.arduino.dashboardowner+json; view=default",
      "type": "object"
    },
    "ArduinoDashboardshare": {
      "description": "ArduinoDashboardshare media type (default view)",
      "properties": {
        "user_id": {
          "description": "The userID of the user you want to share the dashboard with",
          "format": "uuid",
          "type": "string"
        },
        "username": {
          "description": "The username of the user you want to share the dashboard with",
          "type": "string"
        }
      },
      "required": [
        "user_id"
      ],
      "title": "Mediatype identifier: application/vnd.arduino.dashboardshare+json; view=default",
      "type": "object"
    },
    "ArduinoDashboardshareCollection": {
      "description": "ArduinoDashboardshareCollection is the media type for an array of ArduinoDashboardshare (default view)",
      "items": {
        "$ref": "#/components/schemas/ArduinoDashboardshare"
      },
      "title": "Mediatype identifier: application/vnd.arduino.dashboardshare+json; type=collection; view=default",
      "type": "array"
    },
    "ArduinoDashboardv2": {
      "description": "Dashboard is a collection of widgets (default view)",
      "properties": {
        "cover_image": {
          "description": "The cover image of the dashboard",
          "maxLength": 1024,
          "type": "string"
        },
        "created_by": {
          "$ref": "#/components/schemas/ArduinoDashboardowner"
        },
        "id": {
          "description": "The friendly name of the dashboard",
          "format": "uuid",
          "type": "string"
        },
        "name": {
          "description": "The friendly name of the dashboard",
          "type": "string"
        },
        "organization_id": {
          "description": "Id of the organization the dashboard belongs to",
          "format": "uuid",
          "type": "string"
        },
        "shared_by": {
          "$ref": "#/components/schemas/ArduinoDashboardshare"
        },
        "shared_with": {
          "$ref": "#/components/schemas/ArduinoDashboardshareCollection"
        },
        "updated_at": {
          "description": "Last update date",
          "format": "date-time",
          "type": "string"
        },
        "widgets": {
          "$ref": "#/components/schemas/ArduinoWidgetv2Collection"
        }
      },
      "required": [
        "id",
        "name",
        "updated_at"
      ],
      "title": "Mediatype identifier: application/vnd.arduino.dashboardv2+json; view=default",
      "type": "object"
    },
    "ArduinoDashboardv2Collection": {
      "description": "ArduinoDashboardv2Collection is the media type for an array of ArduinoDashboardv2 (default view)",
      "items": {
        "$ref": "#/components/schemas/ArduinoDashboardv2"
      },
      "title": "Mediatype identifier: application/vnd.arduino.dashboardv2+json; type=collection; view=default",
      "type": "array"
    },
    "ArduinoDashboardv2template": {
      "description": "ArduinoDashboardv2template media type (default view)",
      "properties": {
        "cover_image": {
          "description": "The cover image of the dashboard",
          "type": "string"
        },
        "id": {
          "description": "The friendly ID of the dashboard",
          "type": "string"
        },
        "name": {
          "description": "The friendly name of the dashboard",
          "type": "string"
        },
        "widgets": {
          "$ref": "#/components/schemas/ArduinoWidgetv2templateCollection"
        }
      },
      "required": [
        "name"
      ],
      "title": "Mediatype identifier: application/vnd.arduino.dashboardv2template+json; view=default",
      "type": "object"
    },
    "ArduinoDashboardv3": {
      "description": "Dashboard is a collection of widgets (default view)",
      "properties": {
        "cover_image": {
          "description": "The cover image of the dashboard",
          "maxLength": 1024,
          "type": "string"
        },
        "created_by": {
          "$ref": "#/components/schemas/ArduinoDashboardowner"
        },
        "id": {
          "description": "The friendly name of the dashboard",
          "format": "uuid",
          "type": "string"
        },
        "name": {
          "description": "The friendly name of the dashboard",
          "type": "string"
        },
        "organization_id": {
          "description": "Id of the organization the dashboard belongs to",
          "format": "uuid",
          "type": "string"
        },
        "pages": {
          "$ref": "#/components/schemas/ArduinoPagevariableCollection"
        },
        "shared_by": {
          "$ref": "#/components/schemas/ArduinoDashboardshare"
        },
        "shared_with": {
          "$ref": "#/components/schemas/ArduinoDashboardshareCollection"
        },
        "updated_at": {
          "description": "Last update date",
          "format": "date-time",
          "type": "string"
        },
        "widgets": {
          "$ref": "#/components/schemas/ArduinoWidgetv3Collection"
        }
      },
      "required": [
        "id",
        "name",
        "updated_at"
      ],
      "title": "Mediatype identifier: application/vnd.arduino.dashboardv3+json; view=default",
      "type": "object"
    },
    "ArduinoDashboardv3Collection": {
      "description": "ArduinoDashboardv3Collection is the media type for an array of ArduinoDashboardv3 (default view)",
      "items": {
        "$ref": "#/components/schemas/ArduinoDashboardv3"
      },
      "title": "Mediatype identifier: application/vnd.arduino.dashboardv3+json; type=collection; view=default",
      "type": "array"
    },
    "ArduinoDashboardv3template": {
      "description": "ArduinoDashboardv3template media type (default view)",
      "properties": {
        "cover_image": {
          "description": "The cover image of the dashboard",
          "type": "string"
        },
        "id": {
          "description": "The friendly ID of the dashboard",
          "type": "string"
        },
        "name": {
          "description": "The friendly name of the dashboard",
          "type": "string"
        },
        "pages": {
          "$ref": "#/components/schemas/ArduinoPagevariableCollection"
        },
        "widgets": {
          "$ref": "#/components/schemas/ArduinoWidgetv3templateCollection"
        }
      },
      "required": [
        "name"
      ],
      "title": "Mediatype identifier: application/vnd.arduino.dashboardv3template+json; view=default",
      "type": "object"
    },
    "ArduinoDevicev2": {
      "description": "ArduinoDevicev2 media type (default view)",
      "properties": {
        "ble_mac": {
          "maxLength": 17,
          "minLength": 17,
          "pattern": "^(?:[0-9A-Fa-f]{2}[:]){5}(?:[0-9A-Fa-f]{2})",
          "type": "string"
        },
        "connection_type": {
          "description": "The type of the connections selected by the user when multiple connections are available",
          "enum": [
            "wifi",
            "eth",
            "wifiandsecret",
            "gsm",
            "nb",
            "lora",
            "catm1",
            "cellular"
          ],
          "type": "string"
        },
        "created_at": {
          "description": "Creation date of the device",
          "format": "date-time",
          "type": "string"
        },
        "deleted_at": {
          "description": "Deletion date of the trigger",
          "format": "date-time",
          "type": "string"
        },
        "device_status": {
          "description": "The connection status of the device",
          "enum": [
            "ONLINE",
            "OFFLINE",
            "UNKNOWN"
          ],
          "type": "string"
        },
        "events": {
          "$ref": "#/components/schemas/ArduinoDevicev2SimplePropertiesCollection"
        },
        "fqbn": {
          "description": "The fully qualified board name",
          "type": "string"
        },
        "href": {
          "description": "The api reference of this device",
          "type": "string"
        },
        "id": {
          "description": "The arn of the device",
          "format": "uuid",
          "type": "string"
        },
        "issuer_ca": {
          "type": "string"
        },
        "label": {
          "description": "The label of the device",
          "type": "string"
        },
        "last_activity_at": {
          "description": "Last activity date",
          "format": "date-time",
          "type": "string"
        },
        "latest_wifi_fw_version": {
          "description": "The latest version of the NINA/WIFI101 firmware available for this device",
          "type": "string"
        },
        "lib_version": {
          "type": "string"
        },
        "locked": {
          "description": "True if the device is locked and can't be claimed by another user",
          "type": "boolean"
        },
        "metadata": {
          "additionalProperties": true,
          "description": "The metadata of the device",
          "type": "object"
        },
        "name": {
          "description": "The friendly name of the device",
          "type": "string"
        },
        "no_sketch": {
          "description": "True if the device type can not have an associated sketch",
          "type": "boolean"
        },
        "organization_id": {
          "description": "Id of the organization the device belongs to",
          "format": "uuid",
          "type": "string"
        },
        "ota_available": {
          "description": "True if the device type is ready to receive OTA updated",
          "type": "boolean"
        },
        "ota_compatible": {
          "description": "True if the device type is OTA compatible",
          "type": "boolean"
        },
        "required_wifi_fw_version": {
          "description": "The required version of the NINA/WIFI101 firmware needed by IoT Cloud",
          "type": "string"
        },
        "serial": {
          "description": "The serial uuid of the device",
          "type": "string"
        },
        "tags": {
          "additionalProperties": true,
          "description": "Tags belonging to the device",
          "type": "object"
        },
        "thing": {
          "$ref": "#/components/schemas/ArduinoThing"
        },
        "type": {
          "description": "The type of the device",
          "type": "string"
        },
        "unique_hardware_id": {
          "description": "The unique hardware id of the device",
          "maxLength": 64,
          "minLength": 64,
          "type": "string"
        },
        "updated_at": {
          "description": "Update date of the trigger",
          "format": "date-time",
          "type": "string"
        },
        "user_id": {
          "description": "The id of the user",
          "format": "uuid",
          "type": "string"
        },
        "webhooks": {
          "$ref": "#/components/schemas/ArduinoDevicev2WebhookCollection"
        },
        "wifi_fw_version": {
          "description": "The version of the NINA/WIFI101 firmware running on the device",
          "type": "string"
        }
      },
      "required": [
        "id",
        "name",
        "type",
        "label",
        "user_id",
        "href",
        "serial"
     

# --- truncated at 32 KB (201 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/arduino/refs/heads/main/json-schema/arduino-iot-cloud-schemas.json