Metadata

Type: object

Metadata is a description about the device: a specification about how the device should be configured and expectations about what the device should be doing. Defined by metadata.json

No Additional Properties

Type: string

RFC 3339 timestamp UTC the data was generated


Example:

"2019-01-17T14:02:29.364Z"

Type: string

Version of the UDMI schema for this file

Type: string

Original version of the UDMI schema for this file

Type: string

Automatically generated field that contains the hash of file contents.

Must match regular expression: ^[0-9a-z]{8}$

Type: object

Information specific to how the device communicates with the cloud.

No Additional Properties

Type: enum (of string)

Connection type for connecting to cloud

Must be one of:

  • "GATEWAY"
  • "DIRECT"
  • "PROXIED"

Type: enum (of string)

The key type used for cloud communication.

Must be one of:

  • "ES256"
  • "ES256_X509"
  • "RS256"
  • "RS256_X509"

Type: boolean

Indicates if the device private key is provided in the site model.

Type: enum (of string)

The resource type of this model

Must be one of:

  • "DEVICE"
  • "GATEWAY"
  • "REGISTRY"

Type: object

Information specific to how the device communicates with the cloud.

No Additional Properties

Type: string

Config file to use. Within the config directory in the device's metadata directory

Type: boolean

Type: string

Type: string

Type: string

Type: string

Type: string

Type: string

Type: enum (of string)

Must be one of:

  • "ERROR"
  • "CREATE"
  • "READ"
  • "UPDATE"
  • "DELETE"
  • "MODIFY"
  • "PREVIEW"
  • "BIND"
  • "ALLOW"
  • "BLOCK"

Type: string

Strigified version of the metadata object, used for internal backend processing

Type: object

If operating on the entire registry, then this manifests as a map of devices not just one device.

All property whose name matches the following regular expression must respect the following conditions

Property name regular expression: ^[-_a-zA-Z0-9]+$
Type: object

Type: object

High-level system information about the device. System Model Documentation

No Additional Properties

Type: string

Friendly name describing this device

Type: string

Generic human-readable text describing the device

Type: string

Version of schema supported by the device


Example:

"1.5.0"

Type: string

Aggregation of spaces, partial spaces or other zones that the device is serving

Must match regular expression: ^[-_a-zA-Z0-9]+$
Examples:

"Zone1"
"Kitchen_101"

Type: array

Tags associated with the device

All items must be unique

Each item of this array must be:

Type: object
Must match regular expression: ^[a-z0-9]+$

Examples:

[
    "lighting"
]
[
    "energy",
    "building"
]

Type: object

Properties of the expected physical location of the device

No Additional Properties

Type: string

The site name according to the site model in which the device is installed in

Must match regular expression: ^[A-Z]{2}-[A-Z]{3,4}-[A-Z0-9]{2,9}$
Example:

"US-SFO-XYY"

Type: string

The reference of the panel where the device is installed in

Must match regular expression: ^[-_a-zA-Z0-9]+$
Examples:

"Panel123"
"CTRP-567"

Type: string
Must match regular expression: ^[A-Z0-9-]+$

Type: string
Must match regular expression: ^[-_a-zA-Z0-9]+$

Type: string

Name of floor level

Must match regular expression: ^[A-Z0-9-]+$
Examples:

"1"
"1A"
"G"
"B1M"
"RF"

Type: integer

Sequential integer representation for a floor, primarily for comparisons when non integer floors are used, e.g. 1 and 1M

Type: object
No Additional Properties

Type: number

The x coordinate of the device location in a project specific coordinate system

Type: number

The y coordinate of the device location in a project specific coordinate system

Type: number

The z (height) coordinate of the device location in a project specific coordinate system

Type: object
No Additional Properties

Type: number

The latitude coordinate of the device in the WGS84 coordinate system

Type: number

The longitude coordinate of the device in the WGS84 coordinate system

Type: number

The altitude coordinate of the device in meters

Type: string

The serial number of the physical device


Examples:

"A1B2C3D4"
"00001"

Type: object

A collection of fields which describe the physical hardware of the device.

No Additional Properties

Type: string

The manufacturer of the device


Example:

"Google"

Type: string

The model of the device


Examples:

"Pixel 5"
"Pixel 6"
"Pixel 6 Pro"

Type: string

A stock keeping unit which identifies the unique composition of a device, for example those with different hardware configurations


Examples:

"GF5KQ"
"4215612"

Type: string

Hardware revision of the device


Examples:

"A"
"B"
"1"

Type: object

A collection of items which can be used to describe version of software running on a device

No Additional Properties
Examples:

"firmware"
"os"
"driver"

All property whose name matches the following regular expression must respect the following conditions

Property name regular expression: ^[a-z_]+$
Type: string

Type: object

Information used to print a physical QR code label.

No Additional Properties

Type: object
No Additional Properties

Type: string
Must match regular expression: ^[a-z]+://[-0-9a-zA-Z_$]+$

Type: string
Must match regular expression: ^[A-Z]{2}-[A-Z]{3,4}-[A-Z0-9]{2,9}$

Type: string
Must match regular expression: ^[A-Z]{2,6}-[1-9][0-9]*$

Type: object
No Additional Properties

Type: string
Must match regular expression: ^[a-zA-Z0-9-]+$

Type: integer Default: 300

The minimum loglevel for reporting log messages below which log entries should not be sent. Default to 300.

Value must be greater or equal to 100 and lesser or equal to 800

Type: integer

The rate at which the system should send system event updates. 0 indicates no updates.

Value must be greater or equal to 0 and lesser or equal to 86400

Type: object

Gateway Documentation

No Additional Properties

Type: string

The device ID of the gateway the device is bound to

Must match regular expression: ^[A-Z]{2,6}-[1-9][0-9]*$
Example:

"GAT-100"

Type: object

The type of network

No Additional Properties

Type: string

The address of a device on the fieldbus/local network


Example:

"0x414889"

Type: string

Type: array of string

An array of all the device IDs which are bound to the device

Each item of this array must be:

Type: string
Must match regular expression: ^[A-Z]{2,6}-[1-9][0-9]*$

Example:

[
    "AHU-22"
]

Type: object

Discovery target parameters

No Additional Properties

Type: object

All property whose name matches the following regular expression must respect the following conditions

Property name regular expression: ^[a-z][a-z0-9]*(_[a-z0-9]+)*$
Type: object
No Additional Properties

Type: string

Generational marker for controlling discovery


Example:

"2018-08-26T21:00:13Z"

Type: integer

Period, in seconds, for automatic scanning

Value must be greater or equal to 0

Type: integer

Scan duration, in seconds

Value must be greater or equal to 0

Type: object

Used to describe device local network parameters

No Additional Properties

Type: object

Parent device to which the device is physically connected

No Additional Properties

Type: string

ID of the parent device to which the device is physically connected

Must match regular expression: ^[A-Z]{2,6}-[1-9][0-9]*$
Examples:

"DDC-1"
"CGW-2"

Type: string

Connection family/protocol of the parent device to which the device is physically connected


Examples:

"bacnet_mstp"
"modbus_tcp"
"mqtt"

Type: object
No Additional Properties
Examples:

"bacnet"
"modbus"
"ether"
"ipv4"
"iot"

All property whose name matches the following regular expression must respect the following conditions

Property name regular expression: ^[a-z0-9-]+$
Type: object

The type of network

No Additional Properties

Type: string

The address of a device on the fieldbus/local network


Example:

"0x414889"

Type: object

Testing target parameters

No Additional Properties

Type: boolean

Type: object
No Additional Properties

All property whose name matches the following regular expression must respect the following conditions

Property name regular expression: ^[a-z][a-z0-9]*(_[a-z0-9]+)*$
Type: object
No Additional Properties

Type: string

Point name used for testing

Type: object

Value used for testing

Type: object

Model of supported features

No Additional Properties

All property whose name matches the following regular expression must respect the following conditions

Property name regular expression: ^[._a-zA-Z]+$
Type: object

Object representation for for a single feature

No Additional Properties

Type: enum (of string)

Stage of a feature implemenation

Must be one of:

  • "disabled"
  • "alpha"
  • "preview"
  • "beta"
  • "stable"

Type: object

Pointset representing the abstract system expectation for what the device should be doing, and how it should be configured and operated. This block specifies the expected points that a device holds

No Additional Properties

Type: object

Information about a specific point name of the device.

No Additional Properties

All property whose name matches the following regular expression must respect the following conditions

Property name regular expression: ^[a-z][a-z0-9]*(_[a-z0-9]+)*$
Type: object

Information about a specific point name of the device.

No Additional Properties

Type: string

Expected unit configuration for the point

Type: boolean

Indicates if this point is writable (else read-only)

Type: object

Represents the expected baseline value of the point


Example:

22

Type: number

Maximum deviation from baseline_value


Example:

2

Type: enum (of string)

Expected state when baseline_value is set as the set_value for this point the config message

Must be one of:

  • "applied"
  • "updating"
  • "overridden"
  • "invalid"
  • "failure"

Type: number

Represents the lower bound of the error threshold for a point


Example:

0

Type: number

Represents the upper bound of the error threshold for a point


Example:

100

Type: number

Triggering threshold for partial cov update publishing


Example:

1

Type: string

Mapping for the point to an internal resource (e.g. BACnet object reference)


Examples:

"AI3"
"400070"

Type: array

Tags assosciated with the point

All items must be unique

Each item of this array must be:

Type: object
Must match regular expression: ^[a-z0-9]+$

Examples:

[
    "lighting"
]
[
    "energy",
    "hvac"
]

Type: integer

Minimum time between sample updates for the device (including complete and COV updates). Updates more frequent than this should be coalesced into one update.

Value must be greater or equal to 0 and lesser or equal to 86400

Type: integer

Maximum time between samples for the device to send out a complete update. It can send out updates more frequently than this. Default to 600.

Value must be greater or equal to 1 and lesser or equal to 86400

Type: object

All property whose name matches the following regular expression must respect the following conditions

Property name regular expression: ^[a-z][a-z0-9]*(_[a-z0-9]+)*$
Type: object

Discovery result with implicit discovery

No Additional Properties

Type: string

RFC 3339 UTC timestamp the discover telemetry event was generated


Example:

"2019-01-17T14:02:29.364Z"

Type: string

Version of the UDMI schema

Type: string

The event's discovery scan trigger's generation timestamp


Example:

"2019-01-17T14:02:29.364Z"

Type: object
No Additional Properties

Type: string

A human-readable one-line description of the entry


Example:

"Point is not writable"

Type: string

An optional extensive entry which can include more detail, e.g. a complete program stack-trace

Type: string

Type: object
Must match regular expression: ^system\.base\.start$
Type: object
Must match regular expression: ^system\.base\.shutdown$
Type: object
Must match regular expression: ^system\.base\.ready$
Type: object
Must match regular expression: ^system\.config\.receive$
Type: object
Must match regular expression: ^system\.config\.parse$
Type: object
Must match regular expression: ^system\.config\.apply$
Type: object
Must match regular expression: ^system\.auth\.login$
Type: object
Must match regular expression: ^system\.auth\.logout$
Type: object
Must match regular expression: ^system\.auth\.fail$
Type: object
Must match regular expression: ^pointset\.point\.nominal$
Type: object
Must match regular expression: ^pointset\.point\.applied$
Type: object
Must match regular expression: ^pointset\.point\.updating$
Type: object
Must match regular expression: ^pointset\.point\.overridden$
Type: object
Must match regular expression: ^pointset\.point\.failure$
Type: object
Must match regular expression: ^pointset\.point\.invalid$
Type: object
Must match regular expression: ^localnet\.network$
Type: object
Must match regular expression: ^localnet\.network\.connect$
Type: object
Must match regular expression: ^gateway\.setup\.attach$
Type: object
Must match regular expression: ^gateway\.proxy\.target$
Type: object
Must match regular expression: ^gateway\.proxy\.connect$
Type: object
Must match regular expression: ^discovery\.family\.scan$
Type: object
Must match regular expression: ^discovery\.device\.enumerate$
Type: object
Must match regular expression: ^discovery\.point\.describe$
Type: object
Must match regular expression: ^mapping\.device\.apply$
Type: object
Must match regular expression: ^blobset\.blob\.receive$
Type: object
Must match regular expression: ^blobset\.blob\.fetch$
Type: object
Must match regular expression: ^blobset\.blob\.apply$
Type: object
Must match regular expression: ^validation\.device\.receive$
Type: object
Must match regular expression: ^validation\.device\.schema$
Type: object
Must match regular expression: ^validation\.device\.content$
Type: object
Must match regular expression: ^validation\.device\.multiple$
Type: object
Must match regular expression: ^validation\.device\.extra$
Type: object
Must match regular expression: ^validation\.summary\.report$
Type: object
Must match regular expression: ^validation\.feature\.sequence$
Type: object
Must match regular expression: ^validation\.feature\.schema$
Type: object
Must match regular expression: ^validation\.feature\.capability$
Type: object
Must match regular expression: ^device(\.[a-z]+((_[a-z]+))*)+$

Type: string

FC 3339 UTC timestamp the condition was triggered, or most recently updated


Example:

"2018-08-26T21:39:28.364Z"

Type: integer

The status level should conform to the numerical Stackdriver LogEntry levels. The DEFAULT value of 0 is not allowed (lowest value is 100, maximum 800).

Value must be greater or equal to 100 and lesser or equal to 800 and a multiple of 1


Example:

600

Type: string

The primary address of the device (for scan_family)

Type: integer

The active or passive series number of this result (matches reported state values)

Type: object

Links to other address families (family and id)

No Additional Properties

All property whose name matches the following regular expression must respect the following conditions

Property name regular expression: ^[a-z][a-z0-9]*(_[a-z0-9]+)*$
Type: object

Discovery information for a protocol family.

No Additional Properties

Type: string

Device addr in the namespace of the given family

Must match regular expression: ^[-_.:0-9A-Z]+$

Type: object

Registry discovery results.

No Additional Properties

All property whose name matches the following regular expression must respect the following conditions

Property name regular expression: ^[A-Z]{2,6}-[1-9][0-9]*$
Type: object

Information specific to how the device communicates with the cloud.

No Additional Properties

Type: enum (of string)

Connection type for connecting to cloud

Must be one of:

  • "GATEWAY"
  • "DIRECT"
  • "PROXIED"

Type: enum (of string)

The key type used for cloud communication.

Must be one of:

  • "ES256"
  • "ES256_X509"
  • "RS256"
  • "RS256_X509"

Type: boolean

Indicates if the device private key is provided in the site model.

Type: enum (of string)

The resource type of this model

Must be one of:

  • "DEVICE"
  • "GATEWAY"
  • "REGISTRY"

Type: object

Information specific to how the device communicates with the cloud.

No Additional Properties

Type: string

Config file to use. Within the config directory in the device's metadata directory

Type: enum (of string)

Must be one of:

  • "ERROR"
  • "CREATE"
  • "READ"
  • "UPDATE"
  • "DELETE"
  • "MODIFY"
  • "PREVIEW"
  • "BIND"
  • "ALLOW"
  • "BLOCK"

Type: string

Strigified version of the metadata object, used for internal backend processing

Type: object

If operating on the entire registry, then this manifests as a map of devices not just one device.

All property whose name matches the following regular expression must respect the following conditions

Property name regular expression: ^[-_a-zA-Z0-9]+$
Type: object

Type: object

Device iot discovery scan results.

No Additional Properties

All property whose name matches the following regular expression must respect the following conditions

Property name regular expression: ^[A-Z]{2,6}-[1-9][0-9]*$
Type: object

Information specific to how the device communicates with the cloud.

No Additional Properties

Type: enum (of string)

Connection type for connecting to cloud

Must be one of:

  • "GATEWAY"
  • "DIRECT"
  • "PROXIED"

Type: enum (of string)

The key type used for cloud communication.

Must be one of:

  • "ES256"
  • "ES256_X509"
  • "RS256"
  • "RS256_X509"

Type: boolean

Indicates if the device private key is provided in the site model.

Type: enum (of string)

The resource type of this model

Must be one of:

  • "DEVICE"
  • "GATEWAY"
  • "REGISTRY"

Type: object

Information specific to how the device communicates with the cloud.

No Additional Properties

Type: string

Config file to use. Within the config directory in the device's metadata directory

Type: enum (of string)

Must be one of:

  • "ERROR"
  • "CREATE"
  • "READ"
  • "UPDATE"
  • "DELETE"
  • "MODIFY"
  • "PREVIEW"
  • "BIND"
  • "ALLOW"
  • "BLOCK"

Type: string

Strigified version of the metadata object, used for internal backend processing

Type: object

If operating on the entire registry, then this manifests as a map of devices not just one device.

All property whose name matches the following regular expression must respect the following conditions

Property name regular expression: ^[-_a-zA-Z0-9]+$
Type: object

Type: object

Information about a specific point name of the device.

No Additional Properties

All property whose name matches the following regular expression must respect the following conditions

Property name regular expression: ^[a-z][a-z0-9]*(_[a-z0-9]+)*$
Type: object

Information about a specific point name of the device.

No Additional Properties

Type: string

Expected unit configuration for the point

Type: boolean

Indicates if this point is writable (else read-only)

Type: object

Represents the expected baseline value of the point


Example:

22

Type: number

Maximum deviation from baseline_value


Example:

2

Type: enum (of string)

Expected state when baseline_value is set as the set_value for this point the config message

Must be one of:

  • "applied"
  • "updating"
  • "overridden"
  • "invalid"
  • "failure"

Type: number

Represents the lower bound of the error threshold for a point


Example:

0

Type: number

Represents the upper bound of the error threshold for a point


Example:

100

Type: number

Triggering threshold for partial cov update publishing


Example:

1

Type: string

Mapping for the point to an internal resource (e.g. BACnet object reference)


Examples:

"AI3"
"400070"

Type: array

Tags assosciated with the point

All items must be unique

Each item of this array must be:

Type: object
Must match regular expression: ^[a-z0-9]+$

Examples:

[
    "lighting"
]
[
    "energy",
    "hvac"
]

Type: object

Collection of point references discovered

No Additional Properties

All property whose name matches the following regular expression must respect the following conditions

Property name regular expression: ^[-_.:/a-zA-Z0-9]+$
Type: object

Object representation for for a single point reference discovery

No Additional Properties

Type: string

Point descriptor for this point

Must match regular expression: ^[a-z][a-z0-9]*(_[a-z0-9]+)*$

Type: string

Friendly name for the reference, if known

Type: array of string

List of possible enumerated values for the point

Each item of this array must be:

Type: string

Current or default unit for this point

Type: string

Current or default type for this point

Type: boolean

Indicates if this point is writable or not

Type: string

Human-readable description of this point

Type: object
No Additional Properties

Type: string

A human-readable one-line description of the entry


Example:

"Point is not writable"

Type: string

An optional extensive entry which can include more detail, e.g. a complete program stack-trace

Type: string

Type: object
Must match regular expression: ^system\.base\.start$
Type: object
Must match regular expression: ^system\.base\.shutdown$
Type: object
Must match regular expression: ^system\.base\.ready$
Type: object
Must match regular expression: ^system\.config\.receive$
Type: object
Must match regular expression: ^system\.config\.parse$
Type: object
Must match regular expression: ^system\.config\.apply$
Type: object
Must match regular expression: ^system\.auth\.login$
Type: object
Must match regular expression: ^system\.auth\.logout$
Type: object
Must match regular expression: ^system\.auth\.fail$
Type: object
Must match regular expression: ^pointset\.point\.nominal$
Type: object
Must match regular expression: ^pointset\.point\.applied$
Type: object
Must match regular expression: ^pointset\.point\.updating$
Type: object
Must match regular expression: ^pointset\.point\.overridden$
Type: object
Must match regular expression: ^pointset\.point\.failure$
Type: object
Must match regular expression: ^pointset\.point\.invalid$
Type: object
Must match regular expression: ^localnet\.network$
Type: object
Must match regular expression: ^localnet\.network\.connect$
Type: object
Must match regular expression: ^gateway\.setup\.attach$
Type: object
Must match regular expression: ^gateway\.proxy\.target$
Type: object
Must match regular expression: ^gateway\.proxy\.connect$
Type: object
Must match regular expression: ^discovery\.family\.scan$
Type: object
Must match regular expression: ^discovery\.device\.enumerate$
Type: object
Must match regular expression: ^discovery\.point\.describe$
Type: object
Must match regular expression: ^mapping\.device\.apply$
Type: object
Must match regular expression: ^blobset\.blob\.receive$
Type: object
Must match regular expression: ^blobset\.blob\.fetch$
Type: object
Must match regular expression: ^blobset\.blob\.apply$
Type: object
Must match regular expression: ^validation\.device\.receive$
Type: object
Must match regular expression: ^validation\.device\.schema$
Type: object
Must match regular expression: ^validation\.device\.content$
Type: object
Must match regular expression: ^validation\.device\.multiple$
Type: object
Must match regular expression: ^validation\.device\.extra$
Type: object
Must match regular expression: ^validation\.summary\.report$
Type: object
Must match regular expression: ^validation\.feature\.sequence$
Type: object
Must match regular expression: ^validation\.feature\.schema$
Type: object
Must match regular expression: ^validation\.feature\.capability$
Type: object
Must match regular expression: ^device(\.[a-z]+((_[a-z]+))*)+$

Type: string

FC 3339 UTC timestamp the condition was triggered, or most recently updated


Example:

"2018-08-26T21:39:28.364Z"

Type: integer

The status level should conform to the numerical Stackdriver LogEntry levels. The DEFAULT value of 0 is not allowed (lowest value is 100, maximum 800).

Value must be greater or equal to 100 and lesser or equal to 800 and a multiple of 1


Example:

600

Type: object

Arbitrary blob of json associated with this point

Type: object

Discovery of features supported by this device.

No Additional Properties

All property whose name matches the following regular expression must respect the following conditions

Property name regular expression: ^[._a-zA-Z]+$
Type: object

Object representation for for a single feature

No Additional Properties

Type: enum (of string)

Stage of a feature implemenation

Must be one of:

  • "disabled"
  • "alpha"
  • "preview"
  • "beta"
  • "stable"

Type: object

Information specific to how the device communicates with the cloud.

No Additional Properties

Type: enum (of string)

Connection type for connecting to cloud

Must be one of:

  • "GATEWAY"
  • "DIRECT"
  • "PROXIED"

Type: enum (of string)

The key type used for cloud communication.

Must be one of:

  • "ES256"
  • "ES256_X509"
  • "RS256"
  • "RS256_X509"

Type: boolean

Indicates if the device private key is provided in the site model.

Type: enum (of string)

The resource type of this model

Must be one of:

  • "DEVICE"
  • "GATEWAY"
  • "REGISTRY"

Type: object

Information specific to how the device communicates with the cloud.

No Additional Properties

Type: string

Config file to use. Within the config directory in the device's metadata directory

Type: enum (of string)

Must be one of:

  • "ERROR"
  • "CREATE"
  • "READ"
  • "UPDATE"
  • "DELETE"
  • "MODIFY"
  • "PREVIEW"
  • "BIND"
  • "ALLOW"
  • "BLOCK"

Type: string

Strigified version of the metadata object, used for internal backend processing

Type: object

If operating on the entire registry, then this manifests as a map of devices not just one device.

All property whose name matches the following regular expression must respect the following conditions

Property name regular expression: ^[-_a-zA-Z0-9]+$
Type: object

Type: object
No Additional Properties

Type: string

Full textual desctiiption of this device

Type: string

Friendly name of this device

Type: string

The serial number of the physical device

Type: object

Arbitrary blob of json associated with this point

Type: object

A collection of fields which describe the physical hardware of the device.

No Additional Properties

Type: string

The manufacturer of the device


Example:

"Google"

Type: string

The model of the device


Examples:

"Pixel 5"
"Pixel 6"
"Pixel 6 Pro"

Type: string

A stock keeping unit which identifies the unique composition of a device, for example those with different hardware configurations


Examples:

"GF5KQ"
"4215612"

Type: string

Hardware revision of the device


Examples:

"A"
"B"
"1"