Developer_release_1.4.0
Class lua-repl.lib.rest.nmos.registration.api
Registration REST API wrapper.
Overview
The Registration API is exposed by NMOS discovery Nodes. It is used to publish data to the distributed registry, which can then be queried via the Query API. In smaller deployments where no distributed registry is available, the Registration API is not used and discovery responsibilities fall to individual Nodes which implement the peer-to-peer specification. The Registration API is a write-only API.Further Documentation
Further normative documentation covering the behaviour of this API is contained in the [docs](../docs) folder of this repository.Methods
api.health.nodes[nodeId]:get () | Show a Node's health (for debug use only). |
api.health.nodes[nodeId]:options () | A pre-flight check generally used for Cross-Origin Resource Sharing (CORS) purposes. |
api.health.nodes[nodeId]:post () | Update Node health. |
api.resource[resourceType][resourceId]:delete () | Delete a registered resource. |
api.resource[resourceType][resourceId]:get () | Show a registered resource (for debug use only). |
api.resource[resourceType][resourceId]:options () | A pre-flight check generally used for Cross-Origin Resource Sharing (CORS) purposes. |
api.resource:options () | A pre-flight check generally used for Cross-Origin Resource Sharing (CORS) purposes. |
api.resource:post (payload) | Create or update a registered resource. |
lua-repl.lib.rest.nmos.registration.api:get () | List of paths available from this API. |
lua-repl.lib.rest.nmos.registration.api:options_resource () | A pre-flight check generally used for Cross-Origin Resource Sharing (CORS) purposes. |
lua-repl.lib.rest.nmos.registration.api:resource (payload) | Create or update a registered resource. |
Methods
- api.health.nodes[nodeId]:get ()
-
Show a Node's health (for debug use only).
nodeId
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.Returns:
-
table/registrationapi_health_response
(status 200)
+
result.health
: (string) Timestamp indicating the time in seconds at which the server recorded the heartbeat. Must match the pattern:/^[0-9]+$/
.
{ health = "1441974485" }
Or
-
table/Error
(status 404) Returned when the requested Node does not exist or has been garbage collected
+
result.code
: (number/integer) HTTP error code. Minimum:400
. Maximum:599
.result.debug
: (nil | string) Debug information which may assist a programmer working with the API.result.error
: (string) Human readable message which is suitable for user interface display, and helpful to the user.
Or
-
table/Error
(status 409) Returned when the requested Node exists in the registry but at a different API version. The correct API version is identified via the Location header.
+
result.code
: (number/integer) HTTP error code. Minimum:400
. Maximum:599
.result.debug
: (nil | string) Debug information which may assist a programmer working with the API.result.error
: (string) Human readable message which is suitable for user interface display, and helpful to the user.
- api.health.nodes[nodeId]:options ()
-
A pre-flight check generally used for Cross-Origin Resource Sharing (CORS) purposes.
nodeId
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.Returns:
Or
- api.health.nodes[nodeId]:post ()
-
Update Node health.
nodeId
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.Returns:
-
table/registrationapi_health_response
(status 200)
+
result.health
: (string) Timestamp indicating the time in seconds at which the server recorded the heartbeat. Must match the pattern:/^[0-9]+$/
.
{ health = "1441974485" }
Or
-
table/Error
(status 404) Returned when the requested Node does not exist or has been garbage collected
+
result.code
: (number/integer) HTTP error code. Minimum:400
. Maximum:599
.result.debug
: (nil | string) Debug information which may assist a programmer working with the API.result.error
: (string) Human readable message which is suitable for user interface display, and helpful to the user.
Or
-
table/Error
(status 409) Returned when the requested Node exists in the registry but at a different API version. The correct API version is identified via the Location header.
+
result.code
: (number/integer) HTTP error code. Minimum:400
. Maximum:599
.result.debug
: (nil | string) Debug information which may assist a programmer working with the API.result.error
: (string) Human readable message which is suitable for user interface display, and helpful to the user.
- api.resource[resourceType][resourceId]:delete ()
-
Delete a registered resource.
resourceId
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.resourceType
: (string) Possible values:{"nodes","devices","sources","flows","senders","receivers"}
.Returns:
-
table
(status 204)
result.body
: (string) Empty string.result.status
: (number) 204.
result
The expected response, indicating 'No Content' following the DELETE +Or
-
table/Error
(status 404) Returned when the requested resource does not exist
+
result.code
: (number/integer) HTTP error code. Minimum:400
. Maximum:599
.result.debug
: (nil | string) Debug information which may assist a programmer working with the API.result.error
: (string) Human readable message which is suitable for user interface display, and helpful to the user.
Or
-
table/Error
(status 409) Returned when the resource exists in the registry at a different API version. The correct API version is identified via the Location header.
+
result.code
: (number/integer) HTTP error code. Minimum:400
. Maximum:599
.result.debug
: (nil | string) Debug information which may assist a programmer working with the API.result.error
: (string) Human readable message which is suitable for user interface display, and helpful to the user.
- api.resource[resourceType][resourceId]:get ()
-
Show a registered resource (for debug use only).
resourceId
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.resourceType
: (string) Possible values:{"nodes","devices","sources","flows","senders","receivers"}
.Returns:
-
table/registrationapi_resource_response
(status 200)
- Returning a registered resource from the Registration API. Possible content:
node
: Describes the Node and the services which run on it. +node.description
: (string) Detailed description of the resource.node.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.node.label
: (string) Freeform string label for the resource.node.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.node.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.node.api
: (table/node) URL fragments required to connect to the Node API. +node.api.endpoints
: (array of items) Host, port and protocol details required to connect to the API. +item
: (table/node) +item.authorization
: (boolean) This endpoint requires authorization.item.host
: IP address or hostname which the Node API is running on. Possible content: +- (string/hostname) or
- (string/ipv4) or
- (string/ipv6)
item.port
: (number/integer) Port number which the Node API is running on. Minimum:1
. Maximum:65535
.item.protocol
: (string) Protocol supported by this instance of the Node API. Possible values:{"http","https"}
.
node.api.versions
: (array of items) Supported API versions running on this Node. +item
: (string) Must match the pattern:/^v[0-9]+\.[0-9]+$/
.
node.caps
: (table/node) Capabilities (not yet defined).node.clocks
: (array of items) Clocks made available to Devices owned by this Node. +item
: Possible content: +- (table/clock_internal) Describes a clock with no external reference. +
- (string) Name of this refclock (unique for this set of clocks). Must match the pattern:
/^clk[0-9]+$/
. - (string) Type of external reference used by this clock. Possible values:
{"internal"}
. - (table/clock_ptp) Describes a clock referenced to PTP. +
- (string) ID of the PTP reference used by this clock. Must match the pattern:
/^[0-9a-f]{2}-[0-9a-f]{2}-[0-9a-f]{2}-[0-9a-f]{2}-[0-9a-f]{2}-[0-9a-f]{2}-[0-9a-f]{2}-[0-9a-f]{2}$/
. - (boolean) Lock state of this clock to the external reference. If true, this device follows the external reference, otherwise it has no defined relationship to the external reference.
- (string) Name of this refclock (unique for this set of clocks). Must match the pattern:
/^clk[0-9]+$/
. - (string) Type of external reference used by this clock. Possible values:
{"ptp"}
. - (boolean) External refclock is synchronised to International Atomic Time (TAI).
- (string) Version of PTP reference used by this clock. Possible values:
{"IEEE1588-2008"}
.
- (table/clock_internal) Describes a clock with no external reference. +
node.hostname
: (string/hostname) Node hostname (optional, deprecated).node.href
: (string/uri) HTTP access href for the Node's API (deprecated).node.interfaces
: (array of items) Network interfaces made available to devices owned by this Node. Port IDs and Chassis IDs are used to inform topology discovery via IS-06, and require that interfaces implement ARP at a minimum, and ideally LLDP.. +item
: (table/node) +item.attached_network_device
: (table/node) +item.attached_network_device.chassis_id
: Chassis ID of the attached network device, as signalled in LLDP received by this Node. Possible content: +- (string) When the Chassis ID is a MAC address, use this format. Must match the pattern:
/^([0-9a-f]{2}-){5}([0-9a-f]{2})$/
.
or
- (string) When the Chassis ID is anything other than a MAC address, a freeform string may be used. Must match the pattern:
/^.+$/
.
- (string) When the Chassis ID is a MAC address, use this format. Must match the pattern:
item.attached_network_device.port_id
: Port ID of the attached network device, as signalled in LLDP received by this Node. Possible content: +- (string) When the Port ID is a MAC address, use this format. Must match the pattern:
/^([0-9a-f]{2}-){5}([0-9a-f]{2})$/
.
or
- (string) When the Port ID is anything other than a MAC address, a freeform string may be used. Must match the pattern:
/^.+$/
.
- (string) When the Port ID is a MAC address, use this format. Must match the pattern:
item.chassis_id
: Chassis ID of the interface, as signalled in LLDP from this node. Set to null where LLDP is unsuitable for use (ie. virtualised environments). Possible content: +- (string) When the Chassis ID is a MAC address, use this format. Must match the pattern:
/^([0-9a-f]{2}-){5}([0-9a-f]{2})$/
.
or
- (string) When the Chassis ID is anything other than a MAC address, a freeform string may be used. Must match the pattern:
/^.+$/
.
or
- (nil) When the Chassis ID is unavailable it should be set to null.
- (string) When the Chassis ID is a MAC address, use this format. Must match the pattern:
item.name
: (string) Name of the interface (unique in scope of this node). This attribute is used by sub-resources of this node such as senders and receivers to refer to interfaces to which they are bound.item.port_id
: (string) Port ID of the interface, as signalled in LLDP or via ARP responses from this node. Must be a MAC address. Must match the pattern:/^([0-9a-f]{2}-){5}([0-9a-f]{2})$/
.
node.services
: (array of items) Array of objects containing a URN format type and href. +item
: (table/node) +item.authorization
: (boolean) This endpoint requires authorization.item.href
: (string/uri) URL to reach a service running on the Node.item.type
: (string/uri) URN identifying the type of service.
device
: Describes a Device. +device.description
: (string) Detailed description of the resource.device.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.device.label
: (string) Freeform string label for the resource.device.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.device.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.device.controls
: (array of items) Control endpoints exposed for the Device. +item
: (table/device) +item.authorization
: (boolean) This endpoint requires authorization.item.href
: (string/uri) URL to reach a control endpoint, whether http or otherwise.item.type
: (string/uri) URN identifying the control format.
device.node_id
: (string) Globally unique identifier for the Node which initially created the Device. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.device.receivers
: (array of items) UUIDs of Receivers attached to the Device (deprecated). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
device.senders
: (array of items) UUIDs of Senders attached to the Device (deprecated). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
device.type
: Device type URN. Possible content:- (string) Must match the pattern:
/^urn:x-nmos:device:/
.
or
- (any)
- (string) Must match the pattern:
source
: Describes a Source. Possible content:source_generic
: Describes a generic Source. +source_generic.description
: (string) Detailed description of the resource.source_generic.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.source_generic.label
: (string) Freeform string label for the resource.source_generic.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.source_generic.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.source_generic.caps
: (table/source_generic) Capabilities (not yet defined).source_generic.clock_name
: (string | nil) Reference to clock in the originating Node. Must match the pattern:/^clk[0-9]+$/
.source_generic.device_id
: (string) Globally unique identifier for the Device which initially created the Source. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.source_generic.grain_rate
: (table/source_generic) Maximum number of Grains per second for Flows derived from this Source. Corresponding Flow Grain rates may override this attribute. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Sources only. +source_generic.grain_rate.denominator
: (number/integer) Denominator.source_generic.grain_rate.numerator
: (number/integer) Numerator.source_generic.parents
: (array of items) Array of UUIDs representing the Source IDs of Grains which came together at the input to this Source (may change over the lifetime of this Source). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
source_generic.format
: (string/uri) Format of the data coming from the Source as a URN. Possible values:{"urn:x-nmos:format:video","urn:x-nmos:format:mux"}
.source_audio
: Describes an audio Source. +source_audio.description
: (string) Detailed description of the resource.source_audio.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.source_audio.label
: (string) Freeform string label for the resource.source_audio.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.source_audio.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.source_audio.caps
: (table/source_audio) Capabilities (not yet defined).source_audio.clock_name
: (string | nil) Reference to clock in the originating Node. Must match the pattern:/^clk[0-9]+$/
.source_audio.device_id
: (string) Globally unique identifier for the Device which initially created the Source. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.source_audio.grain_rate
: (table/source_audio) Maximum number of Grains per second for Flows derived from this Source. Corresponding Flow Grain rates may override this attribute. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Sources only. +source_audio.grain_rate.denominator
: (number/integer) Denominator.source_audio.grain_rate.numerator
: (number/integer) Numerator.source_audio.parents
: (array of items) Array of UUIDs representing the Source IDs of Grains which came together at the input to this Source (may change over the lifetime of this Source). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
source_audio.channels
: (array of items) Array of objects describing the audio channels. +item
: (table/source_audio) +item.label
: (string) Label for this channel (free text).item.symbol
: Symbol for this channel (from VSF TR-03 Appendix A). Possible content:- (string) Possible values:
{"L","R","C","LFE","Ls","Rs","Lss","Rss","Lrs","Rrs","Lc","Rc","Cs","HI","VIN","M1","M2","Lt","Rt","Lst","Rst","S"}
.
or
- (string) Numbered Source Channel. Must match the pattern:
/^NSC(0[0-9][0-9]|1[0-1][0-9]|12[0-8])$/
.
or
- (string) Undefined channel. Must match the pattern:
/^U(0[1-9]|[1-5][0-9]|6[0-4])$/
.
- (string) Possible values:
source_audio.format
: (string/uri) Format of the data coming from the Source as a URN. Possible values:{"urn:x-nmos:format:audio"}
.source_data
: Describes a data Source. +source_data.description
: (string) Detailed description of the resource.source_data.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.source_data.label
: (string) Freeform string label for the resource.source_data.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.source_data.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.source_data.caps
: (table/source_data) Capabilities (not yet defined).source_data.clock_name
: (string | nil) Reference to clock in the originating Node. Must match the pattern:/^clk[0-9]+$/
.source_data.device_id
: (string) Globally unique identifier for the Device which initially created the Source. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.source_data.grain_rate
: (table/source_data) Maximum number of Grains per second for Flows derived from this Source. Corresponding Flow Grain rates may override this attribute. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Sources only. +source_data.grain_rate.denominator
: (number/integer) Denominator.source_data.grain_rate.numerator
: (number/integer) Numerator.source_data.parents
: (array of items) Array of UUIDs representing the Source IDs of Grains which came together at the input to this Source (may change over the lifetime of this Source). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
source_data.event_type
: (string) Event type generated by this Source, if applicable.source_data.format
: (string/uri) Format of the data coming from the Source as a URN. Possible values:{"urn:x-nmos:format:data"}
.
or
flow
: Describes a Flow. Possible content: +flow
: Describes a raw Video Flow. +flow.description
: (string) Detailed description of the resource.flow.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.label
: (string) Freeform string label for the resource.flow.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.flow.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.flow.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.grain_rate
: (table/flow_video_raw) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +flow.grain_rate.denominator
: (number/integer) Denominator.flow.grain_rate.numerator
: (number/integer) Numerator.flow.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
flow.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.colorspace
: Colorspace used for the video. Any values not defined in the enum should be defined in the NMOS Parameter Registers. Possible content: +- (string) Possible values:
{"BT601","BT709","BT2020","BT2100"}
.
or
- (string) Must match the pattern:
/^\S+$/
.
- (string) Possible values:
flow.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:video"}
.flow.frame_height
: (number/integer) Height of the picture in pixels.flow.frame_width
: (number/integer) Width of the picture in pixels.flow.interlace_mode
: (string) Interlaced video mode for frames in this Flow. Possible values:{"progressive","interlaced_tff","interlaced_bff","interlaced_psf"}
.flow.transfer_characteristic
: Transfer characteristic. Any values not defined in the enum should be defined in the NMOS Parameter Registers. Possible content: +- (string) Possible values:
{"SDR","HLG","PQ"}
.
or
- (string) Must match the pattern:
/^\S+$/
.
- (string) Possible values:
flow.components
: (array of items) Array of objects describing the components. +item
: (table/flow_video_raw) +item.bit_depth
: (number/integer) Number of bits used to describe each sample.item.height
: (number/integer) Height of this component in pixels.item.name
: (string) Name of this component. Possible values:{"Y","Cb","Cr","I","Ct","Cp","A","R","G","B","DepthMap"}
.item.width
: (number/integer) Width of this component in pixels.
flow.media_type
: (string) Subclassification of the format using IANA assigned media types. Possible values:{"video/raw"}
.flow
: Describes a coded Video Flow. +flow.description
: (string) Detailed description of the resource.flow.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.label
: (string) Freeform string label for the resource.flow.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.flow.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.flow.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.grain_rate
: (table/flow_video_coded) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +flow.grain_rate.denominator
: (number/integer) Denominator.flow.grain_rate.numerator
: (number/integer) Numerator.flow.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
flow.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.colorspace
: Colorspace used for the video. Any values not defined in the enum should be defined in the NMOS Parameter Registers. Possible content: +- (string) Possible values:
{"BT601","BT709","BT2020","BT2100"}
.
or
- (string) Must match the pattern:
/^\S+$/
.
- (string) Possible values:
flow.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:video"}
.flow.frame_height
: (number/integer) Height of the picture in pixels.flow.frame_width
: (number/integer) Width of the picture in pixels.flow.interlace_mode
: (string) Interlaced video mode for frames in this Flow. Possible values:{"progressive","interlaced_tff","interlaced_bff","interlaced_psf"}
.flow.transfer_characteristic
: Transfer characteristic. Any values not defined in the enum should be defined in the NMOS Parameter Registers. Possible content: +- (string) Possible values:
{"SDR","HLG","PQ"}
.
or
- (string) Must match the pattern:
/^\S+$/
.
- (string) Possible values:
flow.media_type
: Subclassification of the format using IANA assigned media types. Possible content: +- (string) Possible values:
{"video/H264","video/vc2"}
.
or
- (string) Must match the pattern:
/^video\/[^\s\/]+$/
.
- (string) Possible values:
flow
: Describes a raw audio Flow. +flow.description
: (string) Detailed description of the resource.flow.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.label
: (string) Freeform string label for the resource.flow.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.flow.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.flow.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.grain_rate
: (table/flow_audio_raw) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +flow.grain_rate.denominator
: (number/integer) Denominator.flow.grain_rate.numerator
: (number/integer) Numerator.flow.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
flow.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:audio"}
.flow.sample_rate
: (table/flow_audio_raw) Number of audio samples per second for this Flow. +flow.sample_rate.denominator
: (number/integer) Denominator.flow.sample_rate.numerator
: (number/integer) Numerator.flow.bit_depth
: (number/integer) Bit depth of the audio samples.flow.media_type
: Subclassification of the format using IANA assigned media types. Possible content: +- (string) Possible values:
{"audio/L24","audio/L20","audio/L16","audio/L8"}
.
or
- (string) Must match the pattern:
/^audio\/[^\s\/]+$/
.
- (string) Possible values:
flow
: Describes a coded audio Flow. +flow.description
: (string) Detailed description of the resource.flow.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.label
: (string) Freeform string label for the resource.flow.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.flow.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.flow.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.grain_rate
: (table/flow_audio_coded) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +flow.grain_rate.denominator
: (number/integer) Denominator.flow.grain_rate.numerator
: (number/integer) Numerator.flow.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
flow.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:audio"}
.flow.sample_rate
: (table/flow_audio_coded) Number of audio samples per second for this Flow. +flow.sample_rate.denominator
: (number/integer) Denominator.flow.sample_rate.numerator
: (number/integer) Numerator.flow.media_type
: (string) Subclassification of the format using IANA assigned media types. Must match the pattern:/^audio\/[^\s\/]+$/
.flow
: Describes a generic data Flow. +flow.description
: (string) Detailed description of the resource.flow.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.label
: (string) Freeform string label for the resource.flow.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.flow.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.flow.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.grain_rate
: (table/flow_data) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +flow.grain_rate.denominator
: (number/integer) Denominator.flow.grain_rate.numerator
: (number/integer) Numerator.flow.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
flow.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:data"}
.flow.media_type
: (string) Subclassification of the format using IANA assigned media types. Must match the pattern:/^[^\s\/]+\/[^\s\/]+$/
.flow
: Describes an SDI ancillary Flow. +flow.description
: (string) Detailed description of the resource.flow.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.label
: (string) Freeform string label for the resource.flow.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.flow.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.flow.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.grain_rate
: (table/flow_sdianc_data) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +flow.grain_rate.denominator
: (number/integer) Denominator.flow.grain_rate.numerator
: (number/integer) Numerator.flow.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
flow.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.DID_SDID
: (array of items) List of Data identification and Secondary data identification words. +item
: (table/flow_sdianc_data) +item.DID
: (string) Data identification word. Must match the pattern:/^0x[0-9a-fA-F]{2}$/
.item.SDID
: (string) Secondary data identification word. Must match the pattern:/^0x[0-9a-fA-F]{2}$/
.
flow.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:data"}
.flow.media_type
: (string) Subclassification of the format using IANA assigned media types. Possible values:{"video/smpte291"}
.flow
: Describes a JSON based Flow. +flow.description
: (string) Detailed description of the resource.flow.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.label
: (string) Freeform string label for the resource.flow.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.flow.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.flow.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.grain_rate
: (table/flow_json_data) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +flow.grain_rate.denominator
: (number/integer) Denominator.flow.grain_rate.numerator
: (number/integer) Numerator.flow.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
flow.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.event_type
: (string) Event type generated by this Flow, if applicable.flow.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:data"}
.flow.media_type
: (string) Subclassification of the format using IANA assigned media types. Possible values:{"application/json"}
.flow
: Describes a mux Flow. +flow.description
: (string) Detailed description of the resource.flow.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.label
: (string) Freeform string label for the resource.flow.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.flow.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.flow.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.grain_rate
: (table/flow_mux) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +flow.grain_rate.denominator
: (number/integer) Denominator.flow.grain_rate.numerator
: (number/integer) Numerator.flow.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
flow.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:mux"}
.flow.media_type
: Subclassification of the format using IANA assigned media types. Possible content: +- (string) Possible values:
{"video/SMPTE2022-6"}
.
or
- (string) Must match the pattern:
/^[^\s\/]+\/[^\s\/]+$/
.
- (string) Possible values:
or
sender
: Describes a sender. +sender.description
: (string) Detailed description of the resource.sender.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.sender.label
: (string) Freeform string label for the resource.sender.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.sender.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.sender.caps
: (table/sender) Capabilities of this sender. +sender.device_id
: (string) Device ID which this Sender forms part of. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.sender.flow_id
: (string | nil) ID of the Flow currently passing via this Sender. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.sender.interface_bindings
: (array of items) Binding of Sender egress ports to interfaces on the parent Node.. +item
: (string)
sender.manifest_href
: (string | nil/uri) HTTP(S) accessible URL to a file describing how to connect to the Sender.sender.subscription
: (table/sender) Object indicating how this Sender is currently configured to send data. +sender.subscription.active
: (boolean) Sender is enabled and configured to send data.sender.subscription.receiver_id
: (string | nil) UUID of the Receiver to which this Sender is currently configured to send data. Only set if it is active, uses a unicast push-based transport and is sending to an NMOS Receiver; otherwise null. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.sender.transport
: Transport type used by the Sender in URN format. Possible content:- (string) Must match the pattern:
/^urn:x-nmos:transport:/
.
or
- (any)
- (string) Must match the pattern:
receiver
: Describes a Receiver. Possible content:receiver_video
: Describes a video Receiver. +receiver_video.description
: (string) Detailed description of the resource.receiver_video.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_video.label
: (string) Freeform string label for the resource.receiver_video.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.receiver_video.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.receiver_video.device_id
: (string) Device ID which this Receiver forms part of. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_video.interface_bindings
: (array of items) Binding of Receiver ingress ports to interfaces on the parent Node.. +item
: (string)
receiver_video.subscription
: (table/receiver_video) Object indicating how this Receiver is currently configured to receive data. +receiver_video.subscription.active
: (boolean) Receiver is enabled and configured to receive data.receiver_video.subscription.sender_id
: (string | nil) UUID of the Sender from which this Receiver is currently configured to receive data. Only set if it is active and receiving from an NMOS Sender; otherwise null. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_video.transport
: Transport type accepted by the Receiver in URN format. Possible content:- (string) Must match the pattern:
/^urn:x-nmos:transport:/
.
or
- (any)
- (string) Must match the pattern:
receiver_video.caps
: (table/receiver_video) Capabilities. +receiver_video.caps.media_types
: (array of items) Subclassification of the formats accepted using IANA assigned media types. +item
: Possible content: +- (string) Possible values:
{"video/raw","video/H264","video/vc2"}
.
or
- (string) Must match the pattern:
/^video\/[^\s\/]+$/
.
- (string) Possible values:
receiver_video.format
: (string/uri) Type of Flow accepted by the Receiver as a URN. Possible values:{"urn:x-nmos:format:video"}
.receiver_audio
: Describes an audio Receiver. +receiver_audio.description
: (string) Detailed description of the resource.receiver_audio.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_audio.label
: (string) Freeform string label for the resource.receiver_audio.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.receiver_audio.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.receiver_audio.device_id
: (string) Device ID which this Receiver forms part of. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_audio.interface_bindings
: (array of items) Binding of Receiver ingress ports to interfaces on the parent Node.. +item
: (string)
receiver_audio.subscription
: (table/receiver_audio) Object indicating how this Receiver is currently configured to receive data. +receiver_audio.subscription.active
: (boolean) Receiver is enabled and configured to receive data.receiver_audio.subscription.sender_id
: (string | nil) UUID of the Sender from which this Receiver is currently configured to receive data. Only set if it is active and receiving from an NMOS Sender; otherwise null. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_audio.transport
: Transport type accepted by the Receiver in URN format. Possible content:- (string) Must match the pattern:
/^urn:x-nmos:transport:/
.
or
- (any)
- (string) Must match the pattern:
receiver_audio.caps
: (table/receiver_audio) Capabilities. +receiver_audio.caps.media_types
: (array of items) Subclassification of the formats accepted using IANA assigned media types. +item
: Possible content: +- (string) Possible values:
{"audio/L24","audio/L20","audio/L16","audio/L8"}
.
or
- (string) Must match the pattern:
/^audio\/[^\s\/]+$/
.
- (string) Possible values:
receiver_audio.format
: (string/uri) Type of Flow accepted by the Receiver as a URN. Possible values:{"urn:x-nmos:format:audio"}
.receiver_data
: Describes a data Receiver. +receiver_data.description
: (string) Detailed description of the resource.receiver_data.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_data.label
: (string) Freeform string label for the resource.receiver_data.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.receiver_data.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.receiver_data.device_id
: (string) Device ID which this Receiver forms part of. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_data.interface_bindings
: (array of items) Binding of Receiver ingress ports to interfaces on the parent Node.. +item
: (string)
receiver_data.subscription
: (table/receiver_data) Object indicating how this Receiver is currently configured to receive data. +receiver_data.subscription.active
: (boolean) Receiver is enabled and configured to receive data.receiver_data.subscription.sender_id
: (string | nil) UUID of the Sender from which this Receiver is currently configured to receive data. Only set if it is active and receiving from an NMOS Sender; otherwise null. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_data.transport
: Transport type accepted by the Receiver in URN format. Possible content:- (string) Must match the pattern:
/^urn:x-nmos:transport:/
.
or
- (any)
- (string) Must match the pattern:
receiver_data.caps
: (table/receiver_data) Capabilities. +receiver_data.caps.event_types
: (array of items) Subclassification of the event types accepted defined by the AMWA IS-07 specification. +item
: (string)
receiver_data.caps.media_types
: (array of items) Subclassification of the formats accepted using IANA assigned media types. +item
: Possible content: +- (string) Possible values:
{"video/smpte291","application/json"}
.
or
- (string) Must match the pattern:
/^[^\s\/]+\/[^\s\/]+$/
.
- (string) Possible values:
receiver_data.format
: (string/uri) Type of Flow accepted by the Receiver as a URN. Possible values:{"urn:x-nmos:format:data"}
.receiver_mux
: Describes a mux Receiver. +receiver_mux.description
: (string) Detailed description of the resource.receiver_mux.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_mux.label
: (string) Freeform string label for the resource.receiver_mux.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.receiver_mux.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.receiver_mux.device_id
: (string) Device ID which this Receiver forms part of. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_mux.interface_bindings
: (array of items) Binding of Receiver ingress ports to interfaces on the parent Node.. +item
: (string)
receiver_mux.subscription
: (table/receiver_mux) Object indicating how this Receiver is currently configured to receive data. +receiver_mux.subscription.active
: (boolean) Receiver is enabled and configured to receive data.receiver_mux.subscription.sender_id
: (string | nil) UUID of the Sender from which this Receiver is currently configured to receive data. Only set if it is active and receiving from an NMOS Sender; otherwise null. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_mux.transport
: Transport type accepted by the Receiver in URN format. Possible content:- (string) Must match the pattern:
/^urn:x-nmos:transport:/
.
or
- (any)
- (string) Must match the pattern:
receiver_mux.caps
: (table/receiver_mux) Capabilities. +receiver_mux.caps.media_types
: (array of items) Subclassification of the formats accepted using IANA assigned media types. +item
: Possible content: +- (string) Possible values:
{"video/SMPTE2022-6"}
.
or
- (string) Must match the pattern:
/^[^\s\/]+\/[^\s\/]+$/
.
- (string) Possible values:
receiver_mux.format
: (string/uri) Type of Flow accepted by the Receiver as a URN. Possible values:{"urn:x-nmos:format:mux"}
.
Example:
{ api = { endpoints = { { host = "172.29.80.65", port = 12345, protocol = "http" }; { authorization = false; host = "172.29.80.65"; port = 443; protocol = "https"; }; }; versions = { "v1.0", "v1.1", "v1.2", "v1.3" }; }; caps = { }; clocks = { { name = "clk0", ref_type = "internal" }; { gmid = "08-00-11-ff-fe-21-e1-b0"; locked = true; name = "clk1"; ref_type = "ptp"; traceable = true; version = "IEEE1588-2008"; }; }; description = "host1"; hostname = "host1"; href = "http://172.29.80.65:12345/"; id = "3b8be755-08ff-452b-b217-c9151eb21193"; interfaces = { { attached_network_device = { chassis_id = "2f-8c-af-a8-11-74", port_id = "Ethernet 1/3" }; chassis_id = "b3-cd-09-bb-9b-d8"; name = "eth0"; port_id = "b3-cd-09-bb-9b-d8"; }; { attached_network_device = { chassis_id = "2d-51-2b-de-4a-32", port_id = "Ethernet 1/2" }; chassis_id = "b3-cd-09-bb-9b-d8"; name = "eth1"; port_id = "b3-cd-09-bb-9b-d9"; }; }; label = "host1"; services = { { authorization = false; href = "https://172.29.80.65:443/x-manufacturer/pipelinemanager/"; type = "urn:x-manufacturer:service:pipelinemanager"; }; { authorization = false; href = "https://172.29.80.65:443/x-manufacturer/status/"; type = "urn:x-manufacturer:service:status"; }; { authorization = false; href = "https://172.29.80.65:443/x-manufacturer/tally/"; type = "urn:x-manufacturer:service:tally"; }; { authorization = false; href = "https://172.29.80.65:443/x-manufacturer/mdnsbridge/"; type = "urn:x-manufacturer:service:mdnsbridge"; }; { authorization = false; href = "https://172.29.80.65:443/x-manufacturer/storequery/"; type = "urn:x-manufacturer:service:storequery"; }; }; tags = { }; version = "1441973902:879053935"; }
Or
-
table/Error
(status 404) Returned when the requested resource does not exist
+
result.code
: (number/integer) HTTP error code. Minimum:400
. Maximum:599
.result.debug
: (nil | string) Debug information which may assist a programmer working with the API.result.error
: (string) Human readable message which is suitable for user interface display, and helpful to the user.
Or
-
table/Error
(status 409) Returned when the resource exists in the registry at a different API version. The correct API version is identified via the Location header.
+
result.code
: (number/integer) HTTP error code. Minimum:400
. Maximum:599
.result.debug
: (nil | string) Debug information which may assist a programmer working with the API.result.error
: (string) Human readable message which is suitable for user interface display, and helpful to the user.
- api.resource[resourceType][resourceId]:options ()
-
A pre-flight check generally used for Cross-Origin Resource Sharing (CORS) purposes.
resourceId
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.resourceType
: (string) Possible values:{"nodes","devices","sources","flows","senders","receivers"}
.Returns:
Or
- api.resource:options ()
-
A pre-flight check generally used for Cross-Origin Resource Sharing (CORS) purposes.
Returns:
Or
- api.resource:post (payload)
-
Create or update a registered resource.
Parameters:
- payload (table) nil
args.payload
: Register a new resource or update an existing resource. Possible content:- (any) +
alt1.data
: Describes the Node and the services which run on it. +alt1.data.description
: (string) Detailed description of the resource.alt1.data.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt1.data.label
: (string) Freeform string label for the resource.alt1.data.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.alt1.data.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.alt1.data.api
: (table/node) URL fragments required to connect to the Node API. +alt1.data.api.endpoints
: (array of items) Host, port and protocol details required to connect to the API. +item
: (table/node) +item.authorization
: (boolean) This endpoint requires authorization.item.host
: IP address or hostname which the Node API is running on. Possible content: +- (string/hostname) or
- (string/ipv4) or
- (string/ipv6)
item.port
: (number/integer) Port number which the Node API is running on. Minimum:1
. Maximum:65535
.item.protocol
: (string) Protocol supported by this instance of the Node API. Possible values:{"http","https"}
.
alt1.data.api.versions
: (array of items) Supported API versions running on this Node. +item
: (string) Must match the pattern:/^v[0-9]+\.[0-9]+$/
.
alt1.data.caps
: (table/node) Capabilities (not yet defined).alt1.data.clocks
: (array of items) Clocks made available to Devices owned by this Node. +item
: Possible content: +- (table/clock_internal) Describes a clock with no external reference. +
- (string) Name of this refclock (unique for this set of clocks). Must match the pattern:
/^clk[0-9]+$/
. - (string) Type of external reference used by this clock. Possible values:
{"internal"}
. - (table/clock_ptp) Describes a clock referenced to PTP. +
- (string) ID of the PTP reference used by this clock. Must match the pattern:
/^[0-9a-f]{2}-[0-9a-f]{2}-[0-9a-f]{2}-[0-9a-f]{2}-[0-9a-f]{2}-[0-9a-f]{2}-[0-9a-f]{2}-[0-9a-f]{2}$/
. - (boolean) Lock state of this clock to the external reference. If true, this device follows the external reference, otherwise it has no defined relationship to the external reference.
- (string) Name of this refclock (unique for this set of clocks). Must match the pattern:
/^clk[0-9]+$/
. - (string) Type of external reference used by this clock. Possible values:
{"ptp"}
. - (boolean) External refclock is synchronised to International Atomic Time (TAI).
- (string) Version of PTP reference used by this clock. Possible values:
{"IEEE1588-2008"}
.
- (table/clock_internal) Describes a clock with no external reference. +
alt1.data.hostname
: (string/hostname) Node hostname (optional, deprecated).alt1.data.href
: (string/uri) HTTP access href for the Node's API (deprecated).alt1.data.interfaces
: (array of items) Network interfaces made available to devices owned by this Node. Port IDs and Chassis IDs are used to inform topology discovery via IS-06, and require that interfaces implement ARP at a minimum, and ideally LLDP.. +item
: (table/node) +item.attached_network_device
: (table/node) +item.attached_network_device.chassis_id
: Chassis ID of the attached network device, as signalled in LLDP received by this Node. Possible content: +- (string) When the Chassis ID is a MAC address, use this format. Must match the pattern:
/^([0-9a-f]{2}-){5}([0-9a-f]{2})$/
.
or
- (string) When the Chassis ID is anything other than a MAC address, a freeform string may be used. Must match the pattern:
/^.+$/
.
- (string) When the Chassis ID is a MAC address, use this format. Must match the pattern:
item.attached_network_device.port_id
: Port ID of the attached network device, as signalled in LLDP received by this Node. Possible content: +- (string) When the Port ID is a MAC address, use this format. Must match the pattern:
/^([0-9a-f]{2}-){5}([0-9a-f]{2})$/
.
or
- (string) When the Port ID is anything other than a MAC address, a freeform string may be used. Must match the pattern:
/^.+$/
.
- (string) When the Port ID is a MAC address, use this format. Must match the pattern:
item.chassis_id
: Chassis ID of the interface, as signalled in LLDP from this node. Set to null where LLDP is unsuitable for use (ie. virtualised environments). Possible content: +- (string) When the Chassis ID is a MAC address, use this format. Must match the pattern:
/^([0-9a-f]{2}-){5}([0-9a-f]{2})$/
.
or
- (string) When the Chassis ID is anything other than a MAC address, a freeform string may be used. Must match the pattern:
/^.+$/
.
or
- (nil) When the Chassis ID is unavailable it should be set to null.
- (string) When the Chassis ID is a MAC address, use this format. Must match the pattern:
item.name
: (string) Name of the interface (unique in scope of this node). This attribute is used by sub-resources of this node such as senders and receivers to refer to interfaces to which they are bound.item.port_id
: (string) Port ID of the interface, as signalled in LLDP or via ARP responses from this node. Must be a MAC address. Must match the pattern:/^([0-9a-f]{2}-){5}([0-9a-f]{2})$/
.
alt1.data.services
: (array of items) Array of objects containing a URN format type and href. +item
: (table/node) +item.authorization
: (boolean) This endpoint requires authorization.item.href
: (string/uri) URL to reach a service running on the Node.item.type
: (string/uri) URN identifying the type of service.
- (string) Singular form of the resource type to be registered. Possible values:
{"node"}
. - (any) +
alt2.data
: Describes a Device. +alt2.data.description
: (string) Detailed description of the resource.alt2.data.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt2.data.label
: (string) Freeform string label for the resource.alt2.data.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.alt2.data.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.alt2.data.controls
: (array of items) Control endpoints exposed for the Device. +item
: (table/device) +item.authorization
: (boolean) This endpoint requires authorization.item.href
: (string/uri) URL to reach a control endpoint, whether http or otherwise.item.type
: (string/uri) URN identifying the control format.
alt2.data.node_id
: (string) Globally unique identifier for the Node which initially created the Device. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt2.data.receivers
: (array of items) UUIDs of Receivers attached to the Device (deprecated). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
alt2.data.senders
: (array of items) UUIDs of Senders attached to the Device (deprecated). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
alt2.data.type
: Device type URN. Possible content:- (string) Must match the pattern:
/^urn:x-nmos:device:/
.
or
- (any)
- (string) Must match the pattern:
- (string) Singular form of the resource type to be registered. Possible values:
{"device"}
. - (any) +
alt3.data
: Describes a sender. +alt3.data.description
: (string) Detailed description of the resource.alt3.data.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt3.data.label
: (string) Freeform string label for the resource.alt3.data.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.alt3.data.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.alt3.data.caps
: (table/sender) Capabilities of this sender. +alt3.data.device_id
: (string) Device ID which this Sender forms part of. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt3.data.flow_id
: (string | nil) ID of the Flow currently passing via this Sender. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt3.data.interface_bindings
: (array of items) Binding of Sender egress ports to interfaces on the parent Node.. +item
: (string)
alt3.data.manifest_href
: (string | nil/uri) HTTP(S) accessible URL to a file describing how to connect to the Sender.alt3.data.subscription
: (table/sender) Object indicating how this Sender is currently configured to send data. +alt3.data.subscription.active
: (boolean) Sender is enabled and configured to send data.alt3.data.subscription.receiver_id
: (string | nil) UUID of the Receiver to which this Sender is currently configured to send data. Only set if it is active, uses a unicast push-based transport and is sending to an NMOS Receiver; otherwise null. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt3.data.transport
: Transport type used by the Sender in URN format. Possible content:- (string) Must match the pattern:
/^urn:x-nmos:transport:/
.
or
- (any)
- (string) Must match the pattern:
- (string) Singular form of the resource type to be registered. Possible values:
{"sender"}
. - (any) +
alt4.data
: Describes a Receiver. Possible content:receiver_video
: Describes a video Receiver. +receiver_video.description
: (string) Detailed description of the resource.receiver_video.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_video.label
: (string) Freeform string label for the resource.receiver_video.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.receiver_video.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.receiver_video.device_id
: (string) Device ID which this Receiver forms part of. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_video.interface_bindings
: (array of items) Binding of Receiver ingress ports to interfaces on the parent Node.. +item
: (string)
receiver_video.subscription
: (table/receiver_video) Object indicating how this Receiver is currently configured to receive data. +receiver_video.subscription.active
: (boolean) Receiver is enabled and configured to receive data.receiver_video.subscription.sender_id
: (string | nil) UUID of the Sender from which this Receiver is currently configured to receive data. Only set if it is active and receiving from an NMOS Sender; otherwise null. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_video.transport
: Transport type accepted by the Receiver in URN format. Possible content:- (string) Must match the pattern:
/^urn:x-nmos:transport:/
.
or
- (any)
- (string) Must match the pattern:
receiver_video.caps
: (table/receiver_video) Capabilities. +receiver_video.caps.media_types
: (array of items) Subclassification of the formats accepted using IANA assigned media types. +item
: Possible content: +- (string) Possible values:
{"video/raw","video/H264","video/vc2"}
.
or
- (string) Must match the pattern:
/^video\/[^\s\/]+$/
.
- (string) Possible values:
receiver_video.format
: (string/uri) Type of Flow accepted by the Receiver as a URN. Possible values:{"urn:x-nmos:format:video"}
.receiver_audio
: Describes an audio Receiver. +receiver_audio.description
: (string) Detailed description of the resource.receiver_audio.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_audio.label
: (string) Freeform string label for the resource.receiver_audio.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.receiver_audio.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.receiver_audio.device_id
: (string) Device ID which this Receiver forms part of. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_audio.interface_bindings
: (array of items) Binding of Receiver ingress ports to interfaces on the parent Node.. +item
: (string)
receiver_audio.subscription
: (table/receiver_audio) Object indicating how this Receiver is currently configured to receive data. +receiver_audio.subscription.active
: (boolean) Receiver is enabled and configured to receive data.receiver_audio.subscription.sender_id
: (string | nil) UUID of the Sender from which this Receiver is currently configured to receive data. Only set if it is active and receiving from an NMOS Sender; otherwise null. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_audio.transport
: Transport type accepted by the Receiver in URN format. Possible content:- (string) Must match the pattern:
/^urn:x-nmos:transport:/
.
or
- (any)
- (string) Must match the pattern:
receiver_audio.caps
: (table/receiver_audio) Capabilities. +receiver_audio.caps.media_types
: (array of items) Subclassification of the formats accepted using IANA assigned media types. +item
: Possible content: +- (string) Possible values:
{"audio/L24","audio/L20","audio/L16","audio/L8"}
.
or
- (string) Must match the pattern:
/^audio\/[^\s\/]+$/
.
- (string) Possible values:
receiver_audio.format
: (string/uri) Type of Flow accepted by the Receiver as a URN. Possible values:{"urn:x-nmos:format:audio"}
.receiver_data
: Describes a data Receiver. +receiver_data.description
: (string) Detailed description of the resource.receiver_data.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_data.label
: (string) Freeform string label for the resource.receiver_data.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.receiver_data.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.receiver_data.device_id
: (string) Device ID which this Receiver forms part of. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_data.interface_bindings
: (array of items) Binding of Receiver ingress ports to interfaces on the parent Node.. +item
: (string)
receiver_data.subscription
: (table/receiver_data) Object indicating how this Receiver is currently configured to receive data. +receiver_data.subscription.active
: (boolean) Receiver is enabled and configured to receive data.receiver_data.subscription.sender_id
: (string | nil) UUID of the Sender from which this Receiver is currently configured to receive data. Only set if it is active and receiving from an NMOS Sender; otherwise null. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_data.transport
: Transport type accepted by the Receiver in URN format. Possible content:- (string) Must match the pattern:
/^urn:x-nmos:transport:/
.
or
- (any)
- (string) Must match the pattern:
receiver_data.caps
: (table/receiver_data) Capabilities. +receiver_data.caps.event_types
: (array of items) Subclassification of the event types accepted defined by the AMWA IS-07 specification. +item
: (string)
receiver_data.caps.media_types
: (array of items) Subclassification of the formats accepted using IANA assigned media types. +item
: Possible content: +- (string) Possible values:
{"video/smpte291","application/json"}
.
or
- (string) Must match the pattern:
/^[^\s\/]+\/[^\s\/]+$/
.
- (string) Possible values:
receiver_data.format
: (string/uri) Type of Flow accepted by the Receiver as a URN. Possible values:{"urn:x-nmos:format:data"}
.receiver_mux
: Describes a mux Receiver. +receiver_mux.description
: (string) Detailed description of the resource.receiver_mux.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_mux.label
: (string) Freeform string label for the resource.receiver_mux.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.receiver_mux.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.receiver_mux.device_id
: (string) Device ID which this Receiver forms part of. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_mux.interface_bindings
: (array of items) Binding of Receiver ingress ports to interfaces on the parent Node.. +item
: (string)
receiver_mux.subscription
: (table/receiver_mux) Object indicating how this Receiver is currently configured to receive data. +receiver_mux.subscription.active
: (boolean) Receiver is enabled and configured to receive data.receiver_mux.subscription.sender_id
: (string | nil) UUID of the Sender from which this Receiver is currently configured to receive data. Only set if it is active and receiving from an NMOS Sender; otherwise null. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_mux.transport
: Transport type accepted by the Receiver in URN format. Possible content:- (string) Must match the pattern:
/^urn:x-nmos:transport:/
.
or
- (any)
- (string) Must match the pattern:
receiver_mux.caps
: (table/receiver_mux) Capabilities. +receiver_mux.caps.media_types
: (array of items) Subclassification of the formats accepted using IANA assigned media types. +item
: Possible content: +- (string) Possible values:
{"video/SMPTE2022-6"}
.
or
- (string) Must match the pattern:
/^[^\s\/]+\/[^\s\/]+$/
.
- (string) Possible values:
receiver_mux.format
: (string/uri) Type of Flow accepted by the Receiver as a URN. Possible values:{"urn:x-nmos:format:mux"}
.
- (string) Singular form of the resource type to be registered. Possible values:
{"receiver"}
. - (any) +
alt5.data
: Describes a Source. Possible content:source_generic
: Describes a generic Source. +source_generic.description
: (string) Detailed description of the resource.source_generic.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.source_generic.label
: (string) Freeform string label for the resource.source_generic.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.source_generic.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.source_generic.caps
: (table/source_generic) Capabilities (not yet defined).source_generic.clock_name
: (string | nil) Reference to clock in the originating Node. Must match the pattern:/^clk[0-9]+$/
.source_generic.device_id
: (string) Globally unique identifier for the Device which initially created the Source. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.source_generic.grain_rate
: (table/source_generic) Maximum number of Grains per second for Flows derived from this Source. Corresponding Flow Grain rates may override this attribute. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Sources only. +source_generic.grain_rate.denominator
: (number/integer) Denominator.source_generic.grain_rate.numerator
: (number/integer) Numerator.source_generic.parents
: (array of items) Array of UUIDs representing the Source IDs of Grains which came together at the input to this Source (may change over the lifetime of this Source). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
source_generic.format
: (string/uri) Format of the data coming from the Source as a URN. Possible values:{"urn:x-nmos:format:video","urn:x-nmos:format:mux"}
.source_audio
: Describes an audio Source. +source_audio.description
: (string) Detailed description of the resource.source_audio.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.source_audio.label
: (string) Freeform string label for the resource.source_audio.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.source_audio.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.source_audio.caps
: (table/source_audio) Capabilities (not yet defined).source_audio.clock_name
: (string | nil) Reference to clock in the originating Node. Must match the pattern:/^clk[0-9]+$/
.source_audio.device_id
: (string) Globally unique identifier for the Device which initially created the Source. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.source_audio.grain_rate
: (table/source_audio) Maximum number of Grains per second for Flows derived from this Source. Corresponding Flow Grain rates may override this attribute. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Sources only. +source_audio.grain_rate.denominator
: (number/integer) Denominator.source_audio.grain_rate.numerator
: (number/integer) Numerator.source_audio.parents
: (array of items) Array of UUIDs representing the Source IDs of Grains which came together at the input to this Source (may change over the lifetime of this Source). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
source_audio.channels
: (array of items) Array of objects describing the audio channels. +item
: (table/source_audio) +item.label
: (string) Label for this channel (free text).item.symbol
: Symbol for this channel (from VSF TR-03 Appendix A). Possible content:- (string) Possible values:
{"L","R","C","LFE","Ls","Rs","Lss","Rss","Lrs","Rrs","Lc","Rc","Cs","HI","VIN","M1","M2","Lt","Rt","Lst","Rst","S"}
.
or
- (string) Numbered Source Channel. Must match the pattern:
/^NSC(0[0-9][0-9]|1[0-1][0-9]|12[0-8])$/
.
or
- (string) Undefined channel. Must match the pattern:
/^U(0[1-9]|[1-5][0-9]|6[0-4])$/
.
- (string) Possible values:
source_audio.format
: (string/uri) Format of the data coming from the Source as a URN. Possible values:{"urn:x-nmos:format:audio"}
.source_data
: Describes a data Source. +source_data.description
: (string) Detailed description of the resource.source_data.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.source_data.label
: (string) Freeform string label for the resource.source_data.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.source_data.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.source_data.caps
: (table/source_data) Capabilities (not yet defined).source_data.clock_name
: (string | nil) Reference to clock in the originating Node. Must match the pattern:/^clk[0-9]+$/
.source_data.device_id
: (string) Globally unique identifier for the Device which initially created the Source. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.source_data.grain_rate
: (table/source_data) Maximum number of Grains per second for Flows derived from this Source. Corresponding Flow Grain rates may override this attribute. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Sources only. +source_data.grain_rate.denominator
: (number/integer) Denominator.source_data.grain_rate.numerator
: (number/integer) Numerator.source_data.parents
: (array of items) Array of UUIDs representing the Source IDs of Grains which came together at the input to this Source (may change over the lifetime of this Source). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
source_data.event_type
: (string) Event type generated by this Source, if applicable.source_data.format
: (string/uri) Format of the data coming from the Source as a URN. Possible values:{"urn:x-nmos:format:data"}
.
- (string) Singular form of the resource type to be registered. Possible values:
{"source"}
. - (any) +
alt6.data
: Describes a Flow. Possible content: +alt6.data
: Describes a raw Video Flow. +alt6.data.description
: (string) Detailed description of the resource.alt6.data.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.label
: (string) Freeform string label for the resource.alt6.data.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.alt6.data.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.alt6.data.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.grain_rate
: (table/flow_video_raw) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +alt6.data.grain_rate.denominator
: (number/integer) Denominator.alt6.data.grain_rate.numerator
: (number/integer) Numerator.alt6.data.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
alt6.data.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.colorspace
: Colorspace used for the video. Any values not defined in the enum should be defined in the NMOS Parameter Registers. Possible content: +- (string) Possible values:
{"BT601","BT709","BT2020","BT2100"}
.
or
- (string) Must match the pattern:
/^\S+$/
.
- (string) Possible values:
alt6.data.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:video"}
.alt6.data.frame_height
: (number/integer) Height of the picture in pixels.alt6.data.frame_width
: (number/integer) Width of the picture in pixels.alt6.data.interlace_mode
: (string) Interlaced video mode for frames in this Flow. Possible values:{"progressive","interlaced_tff","interlaced_bff","interlaced_psf"}
.alt6.data.transfer_characteristic
: Transfer characteristic. Any values not defined in the enum should be defined in the NMOS Parameter Registers. Possible content: +- (string) Possible values:
{"SDR","HLG","PQ"}
.
or
- (string) Must match the pattern:
/^\S+$/
.
- (string) Possible values:
alt6.data.components
: (array of items) Array of objects describing the components. +item
: (table/flow_video_raw) +item.bit_depth
: (number/integer) Number of bits used to describe each sample.item.height
: (number/integer) Height of this component in pixels.item.name
: (string) Name of this component. Possible values:{"Y","Cb","Cr","I","Ct","Cp","A","R","G","B","DepthMap"}
.item.width
: (number/integer) Width of this component in pixels.
alt6.data.media_type
: (string) Subclassification of the format using IANA assigned media types. Possible values:{"video/raw"}
.alt6.data
: Describes a coded Video Flow. +alt6.data.description
: (string) Detailed description of the resource.alt6.data.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.label
: (string) Freeform string label for the resource.alt6.data.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.alt6.data.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.alt6.data.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.grain_rate
: (table/flow_video_coded) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +alt6.data.grain_rate.denominator
: (number/integer) Denominator.alt6.data.grain_rate.numerator
: (number/integer) Numerator.alt6.data.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
alt6.data.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.colorspace
: Colorspace used for the video. Any values not defined in the enum should be defined in the NMOS Parameter Registers. Possible content: +- (string) Possible values:
{"BT601","BT709","BT2020","BT2100"}
.
or
- (string) Must match the pattern:
/^\S+$/
.
- (string) Possible values:
alt6.data.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:video"}
.alt6.data.frame_height
: (number/integer) Height of the picture in pixels.alt6.data.frame_width
: (number/integer) Width of the picture in pixels.alt6.data.interlace_mode
: (string) Interlaced video mode for frames in this Flow. Possible values:{"progressive","interlaced_tff","interlaced_bff","interlaced_psf"}
.alt6.data.transfer_characteristic
: Transfer characteristic. Any values not defined in the enum should be defined in the NMOS Parameter Registers. Possible content: +- (string) Possible values:
{"SDR","HLG","PQ"}
.
or
- (string) Must match the pattern:
/^\S+$/
.
- (string) Possible values:
alt6.data.media_type
: Subclassification of the format using IANA assigned media types. Possible content: +- (string) Possible values:
{"video/H264","video/vc2"}
.
or
- (string) Must match the pattern:
/^video\/[^\s\/]+$/
.
- (string) Possible values:
alt6.data
: Describes a raw audio Flow. +alt6.data.description
: (string) Detailed description of the resource.alt6.data.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.label
: (string) Freeform string label for the resource.alt6.data.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.alt6.data.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.alt6.data.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.grain_rate
: (table/flow_audio_raw) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +alt6.data.grain_rate.denominator
: (number/integer) Denominator.alt6.data.grain_rate.numerator
: (number/integer) Numerator.alt6.data.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
alt6.data.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:audio"}
.alt6.data.sample_rate
: (table/flow_audio_raw) Number of audio samples per second for this Flow. +alt6.data.sample_rate.denominator
: (number/integer) Denominator.alt6.data.sample_rate.numerator
: (number/integer) Numerator.alt6.data.bit_depth
: (number/integer) Bit depth of the audio samples.alt6.data.media_type
: Subclassification of the format using IANA assigned media types. Possible content: +- (string) Possible values:
{"audio/L24","audio/L20","audio/L16","audio/L8"}
.
or
- (string) Must match the pattern:
/^audio\/[^\s\/]+$/
.
- (string) Possible values:
alt6.data
: Describes a coded audio Flow. +alt6.data.description
: (string) Detailed description of the resource.alt6.data.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.label
: (string) Freeform string label for the resource.alt6.data.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.alt6.data.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.alt6.data.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.grain_rate
: (table/flow_audio_coded) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +alt6.data.grain_rate.denominator
: (number/integer) Denominator.alt6.data.grain_rate.numerator
: (number/integer) Numerator.alt6.data.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
alt6.data.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:audio"}
.alt6.data.sample_rate
: (table/flow_audio_coded) Number of audio samples per second for this Flow. +alt6.data.sample_rate.denominator
: (number/integer) Denominator.alt6.data.sample_rate.numerator
: (number/integer) Numerator.alt6.data.media_type
: (string) Subclassification of the format using IANA assigned media types. Must match the pattern:/^audio\/[^\s\/]+$/
.alt6.data
: Describes a generic data Flow. +alt6.data.description
: (string) Detailed description of the resource.alt6.data.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.label
: (string) Freeform string label for the resource.alt6.data.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.alt6.data.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.alt6.data.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.grain_rate
: (table/flow_data) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +alt6.data.grain_rate.denominator
: (number/integer) Denominator.alt6.data.grain_rate.numerator
: (number/integer) Numerator.alt6.data.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
alt6.data.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:data"}
.alt6.data.media_type
: (string) Subclassification of the format using IANA assigned media types. Must match the pattern:/^[^\s\/]+\/[^\s\/]+$/
.alt6.data
: Describes an SDI ancillary Flow. +alt6.data.description
: (string) Detailed description of the resource.alt6.data.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.label
: (string) Freeform string label for the resource.alt6.data.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.alt6.data.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.alt6.data.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.grain_rate
: (table/flow_sdianc_data) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +alt6.data.grain_rate.denominator
: (number/integer) Denominator.alt6.data.grain_rate.numerator
: (number/integer) Numerator.alt6.data.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
alt6.data.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.DID_SDID
: (array of items) List of Data identification and Secondary data identification words. +item
: (table/flow_sdianc_data) +item.DID
: (string) Data identification word. Must match the pattern:/^0x[0-9a-fA-F]{2}$/
.item.SDID
: (string) Secondary data identification word. Must match the pattern:/^0x[0-9a-fA-F]{2}$/
.
alt6.data.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:data"}
.alt6.data.media_type
: (string) Subclassification of the format using IANA assigned media types. Possible values:{"video/smpte291"}
.alt6.data
: Describes a JSON based Flow. +alt6.data.description
: (string) Detailed description of the resource.alt6.data.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.label
: (string) Freeform string label for the resource.alt6.data.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.alt6.data.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.alt6.data.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.grain_rate
: (table/flow_json_data) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +alt6.data.grain_rate.denominator
: (number/integer) Denominator.alt6.data.grain_rate.numerator
: (number/integer) Numerator.alt6.data.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
alt6.data.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.event_type
: (string) Event type generated by this Flow, if applicable.alt6.data.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:data"}
.alt6.data.media_type
: (string) Subclassification of the format using IANA assigned media types. Possible values:{"application/json"}
.alt6.data
: Describes a mux Flow. +alt6.data.description
: (string) Detailed description of the resource.alt6.data.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.label
: (string) Freeform string label for the resource.alt6.data.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.alt6.data.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.alt6.data.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.grain_rate
: (table/flow_mux) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +alt6.data.grain_rate.denominator
: (number/integer) Denominator.alt6.data.grain_rate.numerator
: (number/integer) Numerator.alt6.data.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
alt6.data.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:mux"}
.alt6.data.media_type
: Subclassification of the format using IANA assigned media types. Possible content: +- (string) Possible values:
{"video/SMPTE2022-6"}
.
or
- (string) Must match the pattern:
/^[^\s\/]+\/[^\s\/]+$/
.
- (string) Possible values:
- (string) Singular form of the resource type to be registered. Possible values:
{"flow"}
.
- (any) +
Returns:
-
table/registrationapi_resource_response
(status 200) The expected response for an update operation on an existing registered resource
- Returning a registered resource from the Registration API. Possible content:
node
: Describes the Node and the services which run on it. +node.description
: (string) Detailed description of the resource.node.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.node.label
: (string) Freeform string label for the resource.node.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.node.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.node.api
: (table/node) URL fragments required to connect to the Node API. +node.api.endpoints
: (array of items) Host, port and protocol details required to connect to the API. +item
: (table/node) +item.authorization
: (boolean) This endpoint requires authorization.item.host
: IP address or hostname which the Node API is running on. Possible content: +- (string/hostname) or
- (string/ipv4) or
- (string/ipv6)
item.port
: (number/integer) Port number which the Node API is running on. Minimum:1
. Maximum:65535
.item.protocol
: (string) Protocol supported by this instance of the Node API. Possible values:{"http","https"}
.
node.api.versions
: (array of items) Supported API versions running on this Node. +item
: (string) Must match the pattern:/^v[0-9]+\.[0-9]+$/
.
node.caps
: (table/node) Capabilities (not yet defined).node.clocks
: (array of items) Clocks made available to Devices owned by this Node. +item
: Possible content: +- (table/clock_internal) Describes a clock with no external reference. +
- (string) Name of this refclock (unique for this set of clocks). Must match the pattern:
/^clk[0-9]+$/
. - (string) Type of external reference used by this clock. Possible values:
{"internal"}
. - (table/clock_ptp) Describes a clock referenced to PTP. +
- (string) ID of the PTP reference used by this clock. Must match the pattern:
/^[0-9a-f]{2}-[0-9a-f]{2}-[0-9a-f]{2}-[0-9a-f]{2}-[0-9a-f]{2}-[0-9a-f]{2}-[0-9a-f]{2}-[0-9a-f]{2}$/
. - (boolean) Lock state of this clock to the external reference. If true, this device follows the external reference, otherwise it has no defined relationship to the external reference.
- (string) Name of this refclock (unique for this set of clocks). Must match the pattern:
/^clk[0-9]+$/
. - (string) Type of external reference used by this clock. Possible values:
{"ptp"}
. - (boolean) External refclock is synchronised to International Atomic Time (TAI).
- (string) Version of PTP reference used by this clock. Possible values:
{"IEEE1588-2008"}
.
- (table/clock_internal) Describes a clock with no external reference. +
node.hostname
: (string/hostname) Node hostname (optional, deprecated).node.href
: (string/uri) HTTP access href for the Node's API (deprecated).node.interfaces
: (array of items) Network interfaces made available to devices owned by this Node. Port IDs and Chassis IDs are used to inform topology discovery via IS-06, and require that interfaces implement ARP at a minimum, and ideally LLDP.. +item
: (table/node) +item.attached_network_device
: (table/node) +item.attached_network_device.chassis_id
: Chassis ID of the attached network device, as signalled in LLDP received by this Node. Possible content: +- (string) When the Chassis ID is a MAC address, use this format. Must match the pattern:
/^([0-9a-f]{2}-){5}([0-9a-f]{2})$/
.
or
- (string) When the Chassis ID is anything other than a MAC address, a freeform string may be used. Must match the pattern:
/^.+$/
.
- (string) When the Chassis ID is a MAC address, use this format. Must match the pattern:
item.attached_network_device.port_id
: Port ID of the attached network device, as signalled in LLDP received by this Node. Possible content: +- (string) When the Port ID is a MAC address, use this format. Must match the pattern:
/^([0-9a-f]{2}-){5}([0-9a-f]{2})$/
.
or
- (string) When the Port ID is anything other than a MAC address, a freeform string may be used. Must match the pattern:
/^.+$/
.
- (string) When the Port ID is a MAC address, use this format. Must match the pattern:
item.chassis_id
: Chassis ID of the interface, as signalled in LLDP from this node. Set to null where LLDP is unsuitable for use (ie. virtualised environments). Possible content: +- (string) When the Chassis ID is a MAC address, use this format. Must match the pattern:
/^([0-9a-f]{2}-){5}([0-9a-f]{2})$/
.
or
- (string) When the Chassis ID is anything other than a MAC address, a freeform string may be used. Must match the pattern:
/^.+$/
.
or
- (nil) When the Chassis ID is unavailable it should be set to null.
- (string) When the Chassis ID is a MAC address, use this format. Must match the pattern:
item.name
: (string) Name of the interface (unique in scope of this node). This attribute is used by sub-resources of this node such as senders and receivers to refer to interfaces to which they are bound.item.port_id
: (string) Port ID of the interface, as signalled in LLDP or via ARP responses from this node. Must be a MAC address. Must match the pattern:/^([0-9a-f]{2}-){5}([0-9a-f]{2})$/
.
node.services
: (array of items) Array of objects containing a URN format type and href. +item
: (table/node) +item.authorization
: (boolean) This endpoint requires authorization.item.href
: (string/uri) URL to reach a service running on the Node.item.type
: (string/uri) URN identifying the type of service.
device
: Describes a Device. +device.description
: (string) Detailed description of the resource.device.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.device.label
: (string) Freeform string label for the resource.device.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.device.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.device.controls
: (array of items) Control endpoints exposed for the Device. +item
: (table/device) +item.authorization
: (boolean) This endpoint requires authorization.item.href
: (string/uri) URL to reach a control endpoint, whether http or otherwise.item.type
: (string/uri) URN identifying the control format.
device.node_id
: (string) Globally unique identifier for the Node which initially created the Device. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.device.receivers
: (array of items) UUIDs of Receivers attached to the Device (deprecated). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
device.senders
: (array of items) UUIDs of Senders attached to the Device (deprecated). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
device.type
: Device type URN. Possible content:- (string) Must match the pattern:
/^urn:x-nmos:device:/
.
or
- (any)
- (string) Must match the pattern:
source
: Describes a Source. Possible content:source_generic
: Describes a generic Source. +source_generic.description
: (string) Detailed description of the resource.source_generic.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.source_generic.label
: (string) Freeform string label for the resource.source_generic.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.source_generic.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.source_generic.caps
: (table/source_generic) Capabilities (not yet defined).source_generic.clock_name
: (string | nil) Reference to clock in the originating Node. Must match the pattern:/^clk[0-9]+$/
.source_generic.device_id
: (string) Globally unique identifier for the Device which initially created the Source. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.source_generic.grain_rate
: (table/source_generic) Maximum number of Grains per second for Flows derived from this Source. Corresponding Flow Grain rates may override this attribute. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Sources only. +source_generic.grain_rate.denominator
: (number/integer) Denominator.source_generic.grain_rate.numerator
: (number/integer) Numerator.source_generic.parents
: (array of items) Array of UUIDs representing the Source IDs of Grains which came together at the input to this Source (may change over the lifetime of this Source). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
source_generic.format
: (string/uri) Format of the data coming from the Source as a URN. Possible values:{"urn:x-nmos:format:video","urn:x-nmos:format:mux"}
.source_audio
: Describes an audio Source. +source_audio.description
: (string) Detailed description of the resource.source_audio.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.source_audio.label
: (string) Freeform string label for the resource.source_audio.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.source_audio.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.source_audio.caps
: (table/source_audio) Capabilities (not yet defined).source_audio.clock_name
: (string | nil) Reference to clock in the originating Node. Must match the pattern:/^clk[0-9]+$/
.source_audio.device_id
: (string) Globally unique identifier for the Device which initially created the Source. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.source_audio.grain_rate
: (table/source_audio) Maximum number of Grains per second for Flows derived from this Source. Corresponding Flow Grain rates may override this attribute. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Sources only. +source_audio.grain_rate.denominator
: (number/integer) Denominator.source_audio.grain_rate.numerator
: (number/integer) Numerator.source_audio.parents
: (array of items) Array of UUIDs representing the Source IDs of Grains which came together at the input to this Source (may change over the lifetime of this Source). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
source_audio.channels
: (array of items) Array of objects describing the audio channels. +item
: (table/source_audio) +item.label
: (string) Label for this channel (free text).item.symbol
: Symbol for this channel (from VSF TR-03 Appendix A). Possible content:- (string) Possible values:
{"L","R","C","LFE","Ls","Rs","Lss","Rss","Lrs","Rrs","Lc","Rc","Cs","HI","VIN","M1","M2","Lt","Rt","Lst","Rst","S"}
.
or
- (string) Numbered Source Channel. Must match the pattern:
/^NSC(0[0-9][0-9]|1[0-1][0-9]|12[0-8])$/
.
or
- (string) Undefined channel. Must match the pattern:
/^U(0[1-9]|[1-5][0-9]|6[0-4])$/
.
- (string) Possible values:
source_audio.format
: (string/uri) Format of the data coming from the Source as a URN. Possible values:{"urn:x-nmos:format:audio"}
.source_data
: Describes a data Source. +source_data.description
: (string) Detailed description of the resource.source_data.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.source_data.label
: (string) Freeform string label for the resource.source_data.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.source_data.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.source_data.caps
: (table/source_data) Capabilities (not yet defined).source_data.clock_name
: (string | nil) Reference to clock in the originating Node. Must match the pattern:/^clk[0-9]+$/
.source_data.device_id
: (string) Globally unique identifier for the Device which initially created the Source. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.source_data.grain_rate
: (table/source_data) Maximum number of Grains per second for Flows derived from this Source. Corresponding Flow Grain rates may override this attribute. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Sources only. +source_data.grain_rate.denominator
: (number/integer) Denominator.source_data.grain_rate.numerator
: (number/integer) Numerator.source_data.parents
: (array of items) Array of UUIDs representing the Source IDs of Grains which came together at the input to this Source (may change over the lifetime of this Source). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
source_data.event_type
: (string) Event type generated by this Source, if applicable.source_data.format
: (string/uri) Format of the data coming from the Source as a URN. Possible values:{"urn:x-nmos:format:data"}
.
or
flow
: Describes a Flow. Possible content: +flow
: Describes a raw Video Flow. +flow.description
: (string) Detailed description of the resource.flow.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.label
: (string) Freeform string label for the resource.flow.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.flow.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.flow.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.grain_rate
: (table/flow_video_raw) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +flow.grain_rate.denominator
: (number/integer) Denominator.flow.grain_rate.numerator
: (number/integer) Numerator.flow.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
flow.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.colorspace
: Colorspace used for the video. Any values not defined in the enum should be defined in the NMOS Parameter Registers. Possible content: +- (string) Possible values:
{"BT601","BT709","BT2020","BT2100"}
.
or
- (string) Must match the pattern:
/^\S+$/
.
- (string) Possible values:
flow.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:video"}
.flow.frame_height
: (number/integer) Height of the picture in pixels.flow.frame_width
: (number/integer) Width of the picture in pixels.flow.interlace_mode
: (string) Interlaced video mode for frames in this Flow. Possible values:{"progressive","interlaced_tff","interlaced_bff","interlaced_psf"}
.flow.transfer_characteristic
: Transfer characteristic. Any values not defined in the enum should be defined in the NMOS Parameter Registers. Possible content: +- (string) Possible values:
{"SDR","HLG","PQ"}
.
or
- (string) Must match the pattern:
/^\S+$/
.
- (string) Possible values:
flow.components
: (array of items) Array of objects describing the components. +item
: (table/flow_video_raw) +item.bit_depth
: (number/integer) Number of bits used to describe each sample.item.height
: (number/integer) Height of this component in pixels.item.name
: (string) Name of this component. Possible values:{"Y","Cb","Cr","I","Ct","Cp","A","R","G","B","DepthMap"}
.item.width
: (number/integer) Width of this component in pixels.
flow.media_type
: (string) Subclassification of the format using IANA assigned media types. Possible values:{"video/raw"}
.flow
: Describes a coded Video Flow. +flow.description
: (string) Detailed description of the resource.flow.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.label
: (string) Freeform string label for the resource.flow.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.flow.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.flow.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.grain_rate
: (table/flow_video_coded) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +flow.grain_rate.denominator
: (number/integer) Denominator.flow.grain_rate.numerator
: (number/integer) Numerator.flow.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
flow.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.colorspace
: Colorspace used for the video. Any values not defined in the enum should be defined in the NMOS Parameter Registers. Possible content: +- (string) Possible values:
{"BT601","BT709","BT2020","BT2100"}
.
or
- (string) Must match the pattern:
/^\S+$/
.
- (string) Possible values:
flow.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:video"}
.flow.frame_height
: (number/integer) Height of the picture in pixels.flow.frame_width
: (number/integer) Width of the picture in pixels.flow.interlace_mode
: (string) Interlaced video mode for frames in this Flow. Possible values:{"progressive","interlaced_tff","interlaced_bff","interlaced_psf"}
.flow.transfer_characteristic
: Transfer characteristic. Any values not defined in the enum should be defined in the NMOS Parameter Registers. Possible content: +- (string) Possible values:
{"SDR","HLG","PQ"}
.
or
- (string) Must match the pattern:
/^\S+$/
.
- (string) Possible values:
flow.media_type
: Subclassification of the format using IANA assigned media types. Possible content: +- (string) Possible values:
{"video/H264","video/vc2"}
.
or
- (string) Must match the pattern:
/^video\/[^\s\/]+$/
.
- (string) Possible values:
flow
: Describes a raw audio Flow. +flow.description
: (string) Detailed description of the resource.flow.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.label
: (string) Freeform string label for the resource.flow.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.flow.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.flow.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.grain_rate
: (table/flow_audio_raw) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +flow.grain_rate.denominator
: (number/integer) Denominator.flow.grain_rate.numerator
: (number/integer) Numerator.flow.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
flow.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:audio"}
.flow.sample_rate
: (table/flow_audio_raw) Number of audio samples per second for this Flow. +flow.sample_rate.denominator
: (number/integer) Denominator.flow.sample_rate.numerator
: (number/integer) Numerator.flow.bit_depth
: (number/integer) Bit depth of the audio samples.flow.media_type
: Subclassification of the format using IANA assigned media types. Possible content: +- (string) Possible values:
{"audio/L24","audio/L20","audio/L16","audio/L8"}
.
or
- (string) Must match the pattern:
/^audio\/[^\s\/]+$/
.
- (string) Possible values:
flow
: Describes a coded audio Flow. +flow.description
: (string) Detailed description of the resource.flow.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.label
: (string) Freeform string label for the resource.flow.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.flow.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.flow.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.grain_rate
: (table/flow_audio_coded) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +flow.grain_rate.denominator
: (number/integer) Denominator.flow.grain_rate.numerator
: (number/integer) Numerator.flow.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
flow.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:audio"}
.flow.sample_rate
: (table/flow_audio_coded) Number of audio samples per second for this Flow. +flow.sample_rate.denominator
: (number/integer) Denominator.flow.sample_rate.numerator
: (number/integer) Numerator.flow.media_type
: (string) Subclassification of the format using IANA assigned media types. Must match the pattern:/^audio\/[^\s\/]+$/
.flow
: Describes a generic data Flow. +flow.description
: (string) Detailed description of the resource.flow.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.label
: (string) Freeform string label for the resource.flow.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.flow.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.flow.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.grain_rate
: (table/flow_data) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +flow.grain_rate.denominator
: (number/integer) Denominator.flow.grain_rate.numerator
: (number/integer) Numerator.flow.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
flow.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:data"}
.flow.media_type
: (string) Subclassification of the format using IANA assigned media types. Must match the pattern:/^[^\s\/]+\/[^\s\/]+$/
.flow
: Describes an SDI ancillary Flow. +flow.description
: (string) Detailed description of the resource.flow.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.label
: (string) Freeform string label for the resource.flow.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.flow.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.flow.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.grain_rate
: (table/flow_sdianc_data) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +flow.grain_rate.denominator
: (number/integer) Denominator.flow.grain_rate.numerator
: (number/integer) Numerator.flow.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
flow.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.DID_SDID
: (array of items) List of Data identification and Secondary data identification words. +item
: (table/flow_sdianc_data) +item.DID
: (string) Data identification word. Must match the pattern:/^0x[0-9a-fA-F]{2}$/
.item.SDID
: (string) Secondary data identification word. Must match the pattern:/^0x[0-9a-fA-F]{2}$/
.
flow.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:data"}
.flow.media_type
: (string) Subclassification of the format using IANA assigned media types. Possible values:{"video/smpte291"}
.flow
: Describes a JSON based Flow. +flow.description
: (string) Detailed description of the resource.flow.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.label
: (string) Freeform string label for the resource.flow.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.flow.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.flow.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.grain_rate
: (table/flow_json_data) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +flow.grain_rate.denominator
: (number/integer) Denominator.flow.grain_rate.numerator
: (number/integer) Numerator.flow.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
flow.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.event_type
: (string) Event type generated by this Flow, if applicable.flow.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:data"}
.flow.media_type
: (string) Subclassification of the format using IANA assigned media types. Possible values:{"application/json"}
.flow
: Describes a mux Flow. +flow.description
: (string) Detailed description of the resource.flow.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.label
: (string) Freeform string label for the resource.flow.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.flow.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.flow.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.grain_rate
: (table/flow_mux) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +flow.grain_rate.denominator
: (number/integer) Denominator.flow.grain_rate.numerator
: (number/integer) Numerator.flow.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
flow.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:mux"}
.flow.media_type
: Subclassification of the format using IANA assigned media types. Possible content: +- (string) Possible values:
{"video/SMPTE2022-6"}
.
or
- (string) Must match the pattern:
/^[^\s\/]+\/[^\s\/]+$/
.
- (string) Possible values:
or
sender
: Describes a sender. +sender.description
: (string) Detailed description of the resource.sender.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.sender.label
: (string) Freeform string label for the resource.sender.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.sender.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.sender.caps
: (table/sender) Capabilities of this sender. +sender.device_id
: (string) Device ID which this Sender forms part of. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.sender.flow_id
: (string | nil) ID of the Flow currently passing via this Sender. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.sender.interface_bindings
: (array of items) Binding of Sender egress ports to interfaces on the parent Node.. +item
: (string)
sender.manifest_href
: (string | nil/uri) HTTP(S) accessible URL to a file describing how to connect to the Sender.sender.subscription
: (table/sender) Object indicating how this Sender is currently configured to send data. +sender.subscription.active
: (boolean) Sender is enabled and configured to send data.sender.subscription.receiver_id
: (string | nil) UUID of the Receiver to which this Sender is currently configured to send data. Only set if it is active, uses a unicast push-based transport and is sending to an NMOS Receiver; otherwise null. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.sender.transport
: Transport type used by the Sender in URN format. Possible content:- (string) Must match the pattern:
/^urn:x-nmos:transport:/
.
or
- (any)
- (string) Must match the pattern:
receiver
: Describes a Receiver. Possible content:receiver_video
: Describes a video Receiver. +receiver_video.description
: (string) Detailed description of the resource.receiver_video.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_video.label
: (string) Freeform string label for the resource.receiver_video.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.receiver_video.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.receiver_video.device_id
: (string) Device ID which this Receiver forms part of. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_video.interface_bindings
: (array of items) Binding of Receiver ingress ports to interfaces on the parent Node.. +item
: (string)
receiver_video.subscription
: (table/receiver_video) Object indicating how this Receiver is currently configured to receive data. +receiver_video.subscription.active
: (boolean) Receiver is enabled and configured to receive data.receiver_video.subscription.sender_id
: (string | nil) UUID of the Sender from which this Receiver is currently configured to receive data. Only set if it is active and receiving from an NMOS Sender; otherwise null. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_video.transport
: Transport type accepted by the Receiver in URN format. Possible content:- (string) Must match the pattern:
/^urn:x-nmos:transport:/
.
or
- (any)
- (string) Must match the pattern:
receiver_video.caps
: (table/receiver_video) Capabilities. +receiver_video.caps.media_types
: (array of items) Subclassification of the formats accepted using IANA assigned media types. +item
: Possible content: +- (string) Possible values:
{"video/raw","video/H264","video/vc2"}
.
or
- (string) Must match the pattern:
/^video\/[^\s\/]+$/
.
- (string) Possible values:
receiver_video.format
: (string/uri) Type of Flow accepted by the Receiver as a URN. Possible values:{"urn:x-nmos:format:video"}
.receiver_audio
: Describes an audio Receiver. +receiver_audio.description
: (string) Detailed description of the resource.receiver_audio.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_audio.label
: (string) Freeform string label for the resource.receiver_audio.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.receiver_audio.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.receiver_audio.device_id
: (string) Device ID which this Receiver forms part of. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_audio.interface_bindings
: (array of items) Binding of Receiver ingress ports to interfaces on the parent Node.. +item
: (string)
receiver_audio.subscription
: (table/receiver_audio) Object indicating how this Receiver is currently configured to receive data. +receiver_audio.subscription.active
: (boolean) Receiver is enabled and configured to receive data.receiver_audio.subscription.sender_id
: (string | nil) UUID of the Sender from which this Receiver is currently configured to receive data. Only set if it is active and receiving from an NMOS Sender; otherwise null. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_audio.transport
: Transport type accepted by the Receiver in URN format. Possible content:- (string) Must match the pattern:
/^urn:x-nmos:transport:/
.
or
- (any)
- (string) Must match the pattern:
receiver_audio.caps
: (table/receiver_audio) Capabilities. +receiver_audio.caps.media_types
: (array of items) Subclassification of the formats accepted using IANA assigned media types. +item
: Possible content: +- (string) Possible values:
{"audio/L24","audio/L20","audio/L16","audio/L8"}
.
or
- (string) Must match the pattern:
/^audio\/[^\s\/]+$/
.
- (string) Possible values:
receiver_audio.format
: (string/uri) Type of Flow accepted by the Receiver as a URN. Possible values:{"urn:x-nmos:format:audio"}
.receiver_data
: Describes a data Receiver. +receiver_data.description
: (string) Detailed description of the resource.receiver_data.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_data.label
: (string) Freeform string label for the resource.receiver_data.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.receiver_data.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.receiver_data.device_id
: (string) Device ID which this Receiver forms part of. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_data.interface_bindings
: (array of items) Binding of Receiver ingress ports to interfaces on the parent Node.. +item
: (string)
receiver_data.subscription
: (table/receiver_data) Object indicating how this Receiver is currently configured to receive data. +receiver_data.subscription.active
: (boolean) Receiver is enabled and configured to receive data.receiver_data.subscription.sender_id
: (string | nil) UUID of the Sender from which this Receiver is currently configured to receive data. Only set if it is active and receiving from an NMOS Sender; otherwise null. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_data.transport
: Transport type accepted by the Receiver in URN format. Possible content:- (string) Must match the pattern:
/^urn:x-nmos:transport:/
.
or
- (any)
- (string) Must match the pattern:
receiver_data.caps
: (table/receiver_data) Capabilities. +receiver_data.caps.event_types
: (array of items) Subclassification of the event types accepted defined by the AMWA IS-07 specification. +item
: (string)
receiver_data.caps.media_types
: (array of items) Subclassification of the formats accepted using IANA assigned media types. +item
: Possible content: +- (string) Possible values:
{"video/smpte291","application/json"}
.
or
- (string) Must match the pattern:
/^[^\s\/]+\/[^\s\/]+$/
.
- (string) Possible values:
receiver_data.format
: (string/uri) Type of Flow accepted by the Receiver as a URN. Possible values:{"urn:x-nmos:format:data"}
.receiver_mux
: Describes a mux Receiver. +receiver_mux.description
: (string) Detailed description of the resource.receiver_mux.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_mux.label
: (string) Freeform string label for the resource.receiver_mux.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.receiver_mux.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.receiver_mux.device_id
: (string) Device ID which this Receiver forms part of. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_mux.interface_bindings
: (array of items) Binding of Receiver ingress ports to interfaces on the parent Node.. +item
: (string)
receiver_mux.subscription
: (table/receiver_mux) Object indicating how this Receiver is currently configured to receive data. +receiver_mux.subscription.active
: (boolean) Receiver is enabled and configured to receive data.receiver_mux.subscription.sender_id
: (string | nil) UUID of the Sender from which this Receiver is currently configured to receive data. Only set if it is active and receiving from an NMOS Sender; otherwise null. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_mux.transport
: Transport type accepted by the Receiver in URN format. Possible content:- (string) Must match the pattern:
/^urn:x-nmos:transport:/
.
or
- (any)
- (string) Must match the pattern:
receiver_mux.caps
: (table/receiver_mux) Capabilities. +receiver_mux.caps.media_types
: (array of items) Subclassification of the formats accepted using IANA assigned media types. +item
: Possible content: +- (string) Possible values:
{"video/SMPTE2022-6"}
.
or
- (string) Must match the pattern:
/^[^\s\/]+\/[^\s\/]+$/
.
- (string) Possible values:
receiver_mux.format
: (string/uri) Type of Flow accepted by the Receiver as a URN. Possible values:{"urn:x-nmos:format:mux"}
.
Example:
{ api = { endpoints = { { host = "172.29.80.65", port = 12345, protocol = "http" }; { authorization = false; host = "172.29.80.65"; port = 443; protocol = "https"; }; }; versions = { "v1.0", "v1.1", "v1.2", "v1.3" }; }; caps = { }; clocks = { { name = "clk0", ref_type = "internal" }; { gmid = "08-00-11-ff-fe-21-e1-b0"; locked = true; name = "clk1"; ref_type = "ptp"; traceable = true; version = "IEEE1588-2008"; }; }; description = "host1"; hostname = "host1"; href = "http://172.29.80.65:12345/"; id = "3b8be755-08ff-452b-b217-c9151eb21193"; interfaces = { { attached_network_device = { chassis_id = "2f-8c-af-a8-11-74", port_id = "Ethernet 1/3" }; chassis_id = "b3-cd-09-bb-9b-d8"; name = "eth0"; port_id = "b3-cd-09-bb-9b-d8"; }; { attached_network_device = { chassis_id = "2d-51-2b-de-4a-32", port_id = "Ethernet 1/2" }; chassis_id = "b3-cd-09-bb-9b-d8"; name = "eth1"; port_id = "b3-cd-09-bb-9b-d9"; }; }; label = "host1"; services = { { authorization = false; href = "https://172.29.80.65:443/x-manufacturer/pipelinemanager/"; type = "urn:x-manufacturer:service:pipelinemanager"; }; { authorization = false; href = "https://172.29.80.65:443/x-manufacturer/status/"; type = "urn:x-manufacturer:service:status"; }; { authorization = false; href = "https://172.29.80.65:443/x-manufacturer/tally/"; type = "urn:x-manufacturer:service:tally"; }; { authorization = false; href = "https://172.29.80.65:443/x-manufacturer/mdnsbridge/"; type = "urn:x-manufacturer:service:mdnsbridge"; }; { authorization = false; href = "https://172.29.80.65:443/x-manufacturer/storequery/"; type = "urn:x-manufacturer:service:storequery"; }; }; tags = { }; version = "1441973902:879053935"; }
Or
-
table/registrationapi_resource_response
(status 201) The expected response for a create operation performed for a previously unregistered resource
- Returning a registered resource from the Registration API. Possible content:
node
: Describes the Node and the services which run on it. +node.description
: (string) Detailed description of the resource.node.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.node.label
: (string) Freeform string label for the resource.node.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.node.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.node.api
: (table/node) URL fragments required to connect to the Node API. +node.api.endpoints
: (array of items) Host, port and protocol details required to connect to the API. +item
: (table/node) +item.authorization
: (boolean) This endpoint requires authorization.item.host
: IP address or hostname which the Node API is running on. Possible content: +- (string/hostname) or
- (string/ipv4) or
- (string/ipv6)
item.port
: (number/integer) Port number which the Node API is running on. Minimum:1
. Maximum:65535
.item.protocol
: (string) Protocol supported by this instance of the Node API. Possible values:{"http","https"}
.
node.api.versions
: (array of items) Supported API versions running on this Node. +item
: (string) Must match the pattern:/^v[0-9]+\.[0-9]+$/
.
node.caps
: (table/node) Capabilities (not yet defined).node.clocks
: (array of items) Clocks made available to Devices owned by this Node. +item
: Possible content: +- (table/clock_internal) Describes a clock with no external reference. +
- (string) Name of this refclock (unique for this set of clocks). Must match the pattern:
/^clk[0-9]+$/
. - (string) Type of external reference used by this clock. Possible values:
{"internal"}
. - (table/clock_ptp) Describes a clock referenced to PTP. +
- (string) ID of the PTP reference used by this clock. Must match the pattern:
/^[0-9a-f]{2}-[0-9a-f]{2}-[0-9a-f]{2}-[0-9a-f]{2}-[0-9a-f]{2}-[0-9a-f]{2}-[0-9a-f]{2}-[0-9a-f]{2}$/
. - (boolean) Lock state of this clock to the external reference. If true, this device follows the external reference, otherwise it has no defined relationship to the external reference.
- (string) Name of this refclock (unique for this set of clocks). Must match the pattern:
/^clk[0-9]+$/
. - (string) Type of external reference used by this clock. Possible values:
{"ptp"}
. - (boolean) External refclock is synchronised to International Atomic Time (TAI).
- (string) Version of PTP reference used by this clock. Possible values:
{"IEEE1588-2008"}
.
- (table/clock_internal) Describes a clock with no external reference. +
node.hostname
: (string/hostname) Node hostname (optional, deprecated).node.href
: (string/uri) HTTP access href for the Node's API (deprecated).node.interfaces
: (array of items) Network interfaces made available to devices owned by this Node. Port IDs and Chassis IDs are used to inform topology discovery via IS-06, and require that interfaces implement ARP at a minimum, and ideally LLDP.. +item
: (table/node) +item.attached_network_device
: (table/node) +item.attached_network_device.chassis_id
: Chassis ID of the attached network device, as signalled in LLDP received by this Node. Possible content: +- (string) When the Chassis ID is a MAC address, use this format. Must match the pattern:
/^([0-9a-f]{2}-){5}([0-9a-f]{2})$/
.
or
- (string) When the Chassis ID is anything other than a MAC address, a freeform string may be used. Must match the pattern:
/^.+$/
.
- (string) When the Chassis ID is a MAC address, use this format. Must match the pattern:
item.attached_network_device.port_id
: Port ID of the attached network device, as signalled in LLDP received by this Node. Possible content: +- (string) When the Port ID is a MAC address, use this format. Must match the pattern:
/^([0-9a-f]{2}-){5}([0-9a-f]{2})$/
.
or
- (string) When the Port ID is anything other than a MAC address, a freeform string may be used. Must match the pattern:
/^.+$/
.
- (string) When the Port ID is a MAC address, use this format. Must match the pattern:
item.chassis_id
: Chassis ID of the interface, as signalled in LLDP from this node. Set to null where LLDP is unsuitable for use (ie. virtualised environments). Possible content: +- (string) When the Chassis ID is a MAC address, use this format. Must match the pattern:
/^([0-9a-f]{2}-){5}([0-9a-f]{2})$/
.
or
- (string) When the Chassis ID is anything other than a MAC address, a freeform string may be used. Must match the pattern:
/^.+$/
.
or
- (nil) When the Chassis ID is unavailable it should be set to null.
- (string) When the Chassis ID is a MAC address, use this format. Must match the pattern:
item.name
: (string) Name of the interface (unique in scope of this node). This attribute is used by sub-resources of this node such as senders and receivers to refer to interfaces to which they are bound.item.port_id
: (string) Port ID of the interface, as signalled in LLDP or via ARP responses from this node. Must be a MAC address. Must match the pattern:/^([0-9a-f]{2}-){5}([0-9a-f]{2})$/
.
node.services
: (array of items) Array of objects containing a URN format type and href. +item
: (table/node) +item.authorization
: (boolean) This endpoint requires authorization.item.href
: (string/uri) URL to reach a service running on the Node.item.type
: (string/uri) URN identifying the type of service.
device
: Describes a Device. +device.description
: (string) Detailed description of the resource.device.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.device.label
: (string) Freeform string label for the resource.device.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.device.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.device.controls
: (array of items) Control endpoints exposed for the Device. +item
: (table/device) +item.authorization
: (boolean) This endpoint requires authorization.item.href
: (string/uri) URL to reach a control endpoint, whether http or otherwise.item.type
: (string/uri) URN identifying the control format.
device.node_id
: (string) Globally unique identifier for the Node which initially created the Device. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.device.receivers
: (array of items) UUIDs of Receivers attached to the Device (deprecated). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
device.senders
: (array of items) UUIDs of Senders attached to the Device (deprecated). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
device.type
: Device type URN. Possible content:- (string) Must match the pattern:
/^urn:x-nmos:device:/
.
or
- (any)
- (string) Must match the pattern:
source
: Describes a Source. Possible content:source_generic
: Describes a generic Source. +source_generic.description
: (string) Detailed description of the resource.source_generic.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.source_generic.label
: (string) Freeform string label for the resource.source_generic.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.source_generic.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.source_generic.caps
: (table/source_generic) Capabilities (not yet defined).source_generic.clock_name
: (string | nil) Reference to clock in the originating Node. Must match the pattern:/^clk[0-9]+$/
.source_generic.device_id
: (string) Globally unique identifier for the Device which initially created the Source. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.source_generic.grain_rate
: (table/source_generic) Maximum number of Grains per second for Flows derived from this Source. Corresponding Flow Grain rates may override this attribute. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Sources only. +source_generic.grain_rate.denominator
: (number/integer) Denominator.source_generic.grain_rate.numerator
: (number/integer) Numerator.source_generic.parents
: (array of items) Array of UUIDs representing the Source IDs of Grains which came together at the input to this Source (may change over the lifetime of this Source). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
source_generic.format
: (string/uri) Format of the data coming from the Source as a URN. Possible values:{"urn:x-nmos:format:video","urn:x-nmos:format:mux"}
.source_audio
: Describes an audio Source. +source_audio.description
: (string) Detailed description of the resource.source_audio.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.source_audio.label
: (string) Freeform string label for the resource.source_audio.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.source_audio.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.source_audio.caps
: (table/source_audio) Capabilities (not yet defined).source_audio.clock_name
: (string | nil) Reference to clock in the originating Node. Must match the pattern:/^clk[0-9]+$/
.source_audio.device_id
: (string) Globally unique identifier for the Device which initially created the Source. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.source_audio.grain_rate
: (table/source_audio) Maximum number of Grains per second for Flows derived from this Source. Corresponding Flow Grain rates may override this attribute. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Sources only. +source_audio.grain_rate.denominator
: (number/integer) Denominator.source_audio.grain_rate.numerator
: (number/integer) Numerator.source_audio.parents
: (array of items) Array of UUIDs representing the Source IDs of Grains which came together at the input to this Source (may change over the lifetime of this Source). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
source_audio.channels
: (array of items) Array of objects describing the audio channels. +item
: (table/source_audio) +item.label
: (string) Label for this channel (free text).item.symbol
: Symbol for this channel (from VSF TR-03 Appendix A). Possible content:- (string) Possible values:
{"L","R","C","LFE","Ls","Rs","Lss","Rss","Lrs","Rrs","Lc","Rc","Cs","HI","VIN","M1","M2","Lt","Rt","Lst","Rst","S"}
.
or
- (string) Numbered Source Channel. Must match the pattern:
/^NSC(0[0-9][0-9]|1[0-1][0-9]|12[0-8])$/
.
or
- (string) Undefined channel. Must match the pattern:
/^U(0[1-9]|[1-5][0-9]|6[0-4])$/
.
- (string) Possible values:
source_audio.format
: (string/uri) Format of the data coming from the Source as a URN. Possible values:{"urn:x-nmos:format:audio"}
.source_data
: Describes a data Source. +source_data.description
: (string) Detailed description of the resource.source_data.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.source_data.label
: (string) Freeform string label for the resource.source_data.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.source_data.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.source_data.caps
: (table/source_data) Capabilities (not yet defined).source_data.clock_name
: (string | nil) Reference to clock in the originating Node. Must match the pattern:/^clk[0-9]+$/
.source_data.device_id
: (string) Globally unique identifier for the Device which initially created the Source. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.source_data.grain_rate
: (table/source_data) Maximum number of Grains per second for Flows derived from this Source. Corresponding Flow Grain rates may override this attribute. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Sources only. +source_data.grain_rate.denominator
: (number/integer) Denominator.source_data.grain_rate.numerator
: (number/integer) Numerator.source_data.parents
: (array of items) Array of UUIDs representing the Source IDs of Grains which came together at the input to this Source (may change over the lifetime of this Source). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
source_data.event_type
: (string) Event type generated by this Source, if applicable.source_data.format
: (string/uri) Format of the data coming from the Source as a URN. Possible values:{"urn:x-nmos:format:data"}
.
or
flow
: Describes a Flow. Possible content: +flow
: Describes a raw Video Flow. +flow.description
: (string) Detailed description of the resource.flow.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.label
: (string) Freeform string label for the resource.flow.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.flow.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.flow.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.grain_rate
: (table/flow_video_raw) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +flow.grain_rate.denominator
: (number/integer) Denominator.flow.grain_rate.numerator
: (number/integer) Numerator.flow.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
flow.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.colorspace
: Colorspace used for the video. Any values not defined in the enum should be defined in the NMOS Parameter Registers. Possible content: +- (string) Possible values:
{"BT601","BT709","BT2020","BT2100"}
.
or
- (string) Must match the pattern:
/^\S+$/
.
- (string) Possible values:
flow.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:video"}
.flow.frame_height
: (number/integer) Height of the picture in pixels.flow.frame_width
: (number/integer) Width of the picture in pixels.flow.interlace_mode
: (string) Interlaced video mode for frames in this Flow. Possible values:{"progressive","interlaced_tff","interlaced_bff","interlaced_psf"}
.flow.transfer_characteristic
: Transfer characteristic. Any values not defined in the enum should be defined in the NMOS Parameter Registers. Possible content: +- (string) Possible values:
{"SDR","HLG","PQ"}
.
or
- (string) Must match the pattern:
/^\S+$/
.
- (string) Possible values:
flow.components
: (array of items) Array of objects describing the components. +item
: (table/flow_video_raw) +item.bit_depth
: (number/integer) Number of bits used to describe each sample.item.height
: (number/integer) Height of this component in pixels.item.name
: (string) Name of this component. Possible values:{"Y","Cb","Cr","I","Ct","Cp","A","R","G","B","DepthMap"}
.item.width
: (number/integer) Width of this component in pixels.
flow.media_type
: (string) Subclassification of the format using IANA assigned media types. Possible values:{"video/raw"}
.flow
: Describes a coded Video Flow. +flow.description
: (string) Detailed description of the resource.flow.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.label
: (string) Freeform string label for the resource.flow.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.flow.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.flow.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.grain_rate
: (table/flow_video_coded) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +flow.grain_rate.denominator
: (number/integer) Denominator.flow.grain_rate.numerator
: (number/integer) Numerator.flow.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
flow.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.colorspace
: Colorspace used for the video. Any values not defined in the enum should be defined in the NMOS Parameter Registers. Possible content: +- (string) Possible values:
{"BT601","BT709","BT2020","BT2100"}
.
or
- (string) Must match the pattern:
/^\S+$/
.
- (string) Possible values:
flow.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:video"}
.flow.frame_height
: (number/integer) Height of the picture in pixels.flow.frame_width
: (number/integer) Width of the picture in pixels.flow.interlace_mode
: (string) Interlaced video mode for frames in this Flow. Possible values:{"progressive","interlaced_tff","interlaced_bff","interlaced_psf"}
.flow.transfer_characteristic
: Transfer characteristic. Any values not defined in the enum should be defined in the NMOS Parameter Registers. Possible content: +- (string) Possible values:
{"SDR","HLG","PQ"}
.
or
- (string) Must match the pattern:
/^\S+$/
.
- (string) Possible values:
flow.media_type
: Subclassification of the format using IANA assigned media types. Possible content: +- (string) Possible values:
{"video/H264","video/vc2"}
.
or
- (string) Must match the pattern:
/^video\/[^\s\/]+$/
.
- (string) Possible values:
flow
: Describes a raw audio Flow. +flow.description
: (string) Detailed description of the resource.flow.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.label
: (string) Freeform string label for the resource.flow.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.flow.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.flow.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.grain_rate
: (table/flow_audio_raw) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +flow.grain_rate.denominator
: (number/integer) Denominator.flow.grain_rate.numerator
: (number/integer) Numerator.flow.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
flow.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:audio"}
.flow.sample_rate
: (table/flow_audio_raw) Number of audio samples per second for this Flow. +flow.sample_rate.denominator
: (number/integer) Denominator.flow.sample_rate.numerator
: (number/integer) Numerator.flow.bit_depth
: (number/integer) Bit depth of the audio samples.flow.media_type
: Subclassification of the format using IANA assigned media types. Possible content: +- (string) Possible values:
{"audio/L24","audio/L20","audio/L16","audio/L8"}
.
or
- (string) Must match the pattern:
/^audio\/[^\s\/]+$/
.
- (string) Possible values:
flow
: Describes a coded audio Flow. +flow.description
: (string) Detailed description of the resource.flow.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.label
: (string) Freeform string label for the resource.flow.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.flow.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.flow.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.grain_rate
: (table/flow_audio_coded) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +flow.grain_rate.denominator
: (number/integer) Denominator.flow.grain_rate.numerator
: (number/integer) Numerator.flow.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
flow.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:audio"}
.flow.sample_rate
: (table/flow_audio_coded) Number of audio samples per second for this Flow. +flow.sample_rate.denominator
: (number/integer) Denominator.flow.sample_rate.numerator
: (number/integer) Numerator.flow.media_type
: (string) Subclassification of the format using IANA assigned media types. Must match the pattern:/^audio\/[^\s\/]+$/
.flow
: Describes a generic data Flow. +flow.description
: (string) Detailed description of the resource.flow.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.label
: (string) Freeform string label for the resource.flow.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.flow.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.flow.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.grain_rate
: (table/flow_data) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +flow.grain_rate.denominator
: (number/integer) Denominator.flow.grain_rate.numerator
: (number/integer) Numerator.flow.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
flow.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:data"}
.flow.media_type
: (string) Subclassification of the format using IANA assigned media types. Must match the pattern:/^[^\s\/]+\/[^\s\/]+$/
.flow
: Describes an SDI ancillary Flow. +flow.description
: (string) Detailed description of the resource.flow.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.label
: (string) Freeform string label for the resource.flow.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.flow.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.flow.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.grain_rate
: (table/flow_sdianc_data) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +flow.grain_rate.denominator
: (number/integer) Denominator.flow.grain_rate.numerator
: (number/integer) Numerator.flow.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
flow.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.DID_SDID
: (array of items) List of Data identification and Secondary data identification words. +item
: (table/flow_sdianc_data) +item.DID
: (string) Data identification word. Must match the pattern:/^0x[0-9a-fA-F]{2}$/
.item.SDID
: (string) Secondary data identification word. Must match the pattern:/^0x[0-9a-fA-F]{2}$/
.
flow.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:data"}
.flow.media_type
: (string) Subclassification of the format using IANA assigned media types. Possible values:{"video/smpte291"}
.flow
: Describes a JSON based Flow. +flow.description
: (string) Detailed description of the resource.flow.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.label
: (string) Freeform string label for the resource.flow.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.flow.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.flow.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.grain_rate
: (table/flow_json_data) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +flow.grain_rate.denominator
: (number/integer) Denominator.flow.grain_rate.numerator
: (number/integer) Numerator.flow.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
flow.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.event_type
: (string) Event type generated by this Flow, if applicable.flow.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:data"}
.flow.media_type
: (string) Subclassification of the format using IANA assigned media types. Possible values:{"application/json"}
.flow
: Describes a mux Flow. +flow.description
: (string) Detailed description of the resource.flow.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.label
: (string) Freeform string label for the resource.flow.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.flow.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.flow.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.grain_rate
: (table/flow_mux) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +flow.grain_rate.denominator
: (number/integer) Denominator.flow.grain_rate.numerator
: (number/integer) Numerator.flow.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
flow.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:mux"}
.flow.media_type
: Subclassification of the format using IANA assigned media types. Possible content: +- (string) Possible values:
{"video/SMPTE2022-6"}
.
or
- (string) Must match the pattern:
/^[^\s\/]+\/[^\s\/]+$/
.
- (string) Possible values:
or
sender
: Describes a sender. +sender.description
: (string) Detailed description of the resource.sender.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.sender.label
: (string) Freeform string label for the resource.sender.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.sender.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.sender.caps
: (table/sender) Capabilities of this sender. +sender.device_id
: (string) Device ID which this Sender forms part of. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.sender.flow_id
: (string | nil) ID of the Flow currently passing via this Sender. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.sender.interface_bindings
: (array of items) Binding of Sender egress ports to interfaces on the parent Node.. +item
: (string)
sender.manifest_href
: (string | nil/uri) HTTP(S) accessible URL to a file describing how to connect to the Sender.sender.subscription
: (table/sender) Object indicating how this Sender is currently configured to send data. +sender.subscription.active
: (boolean) Sender is enabled and configured to send data.sender.subscription.receiver_id
: (string | nil) UUID of the Receiver to which this Sender is currently configured to send data. Only set if it is active, uses a unicast push-based transport and is sending to an NMOS Receiver; otherwise null. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.sender.transport
: Transport type used by the Sender in URN format. Possible content:- (string) Must match the pattern:
/^urn:x-nmos:transport:/
.
or
- (any)
- (string) Must match the pattern:
receiver
: Describes a Receiver. Possible content:receiver_video
: Describes a video Receiver. +receiver_video.description
: (string) Detailed description of the resource.receiver_video.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_video.label
: (string) Freeform string label for the resource.receiver_video.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.receiver_video.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.receiver_video.device_id
: (string) Device ID which this Receiver forms part of. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_video.interface_bindings
: (array of items) Binding of Receiver ingress ports to interfaces on the parent Node.. +item
: (string)
receiver_video.subscription
: (table/receiver_video) Object indicating how this Receiver is currently configured to receive data. +receiver_video.subscription.active
: (boolean) Receiver is enabled and configured to receive data.receiver_video.subscription.sender_id
: (string | nil) UUID of the Sender from which this Receiver is currently configured to receive data. Only set if it is active and receiving from an NMOS Sender; otherwise null. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_video.transport
: Transport type accepted by the Receiver in URN format. Possible content:- (string) Must match the pattern:
/^urn:x-nmos:transport:/
.
or
- (any)
- (string) Must match the pattern:
receiver_video.caps
: (table/receiver_video) Capabilities. +receiver_video.caps.media_types
: (array of items) Subclassification of the formats accepted using IANA assigned media types. +item
: Possible content: +- (string) Possible values:
{"video/raw","video/H264","video/vc2"}
.
or
- (string) Must match the pattern:
/^video\/[^\s\/]+$/
.
- (string) Possible values:
receiver_video.format
: (string/uri) Type of Flow accepted by the Receiver as a URN. Possible values:{"urn:x-nmos:format:video"}
.receiver_audio
: Describes an audio Receiver. +receiver_audio.description
: (string) Detailed description of the resource.receiver_audio.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_audio.label
: (string) Freeform string label for the resource.receiver_audio.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.receiver_audio.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.receiver_audio.device_id
: (string) Device ID which this Receiver forms part of. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_audio.interface_bindings
: (array of items) Binding of Receiver ingress ports to interfaces on the parent Node.. +item
: (string)
receiver_audio.subscription
: (table/receiver_audio) Object indicating how this Receiver is currently configured to receive data. +receiver_audio.subscription.active
: (boolean) Receiver is enabled and configured to receive data.receiver_audio.subscription.sender_id
: (string | nil) UUID of the Sender from which this Receiver is currently configured to receive data. Only set if it is active and receiving from an NMOS Sender; otherwise null. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_audio.transport
: Transport type accepted by the Receiver in URN format. Possible content:- (string) Must match the pattern:
/^urn:x-nmos:transport:/
.
or
- (any)
- (string) Must match the pattern:
receiver_audio.caps
: (table/receiver_audio) Capabilities. +receiver_audio.caps.media_types
: (array of items) Subclassification of the formats accepted using IANA assigned media types. +item
: Possible content: +- (string) Possible values:
{"audio/L24","audio/L20","audio/L16","audio/L8"}
.
or
- (string) Must match the pattern:
/^audio\/[^\s\/]+$/
.
- (string) Possible values:
receiver_audio.format
: (string/uri) Type of Flow accepted by the Receiver as a URN. Possible values:{"urn:x-nmos:format:audio"}
.receiver_data
: Describes a data Receiver. +receiver_data.description
: (string) Detailed description of the resource.receiver_data.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_data.label
: (string) Freeform string label for the resource.receiver_data.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.receiver_data.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.receiver_data.device_id
: (string) Device ID which this Receiver forms part of. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_data.interface_bindings
: (array of items) Binding of Receiver ingress ports to interfaces on the parent Node.. +item
: (string)
receiver_data.subscription
: (table/receiver_data) Object indicating how this Receiver is currently configured to receive data. +receiver_data.subscription.active
: (boolean) Receiver is enabled and configured to receive data.receiver_data.subscription.sender_id
: (string | nil) UUID of the Sender from which this Receiver is currently configured to receive data. Only set if it is active and receiving from an NMOS Sender; otherwise null. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_data.transport
: Transport type accepted by the Receiver in URN format. Possible content:- (string) Must match the pattern:
/^urn:x-nmos:transport:/
.
or
- (any)
- (string) Must match the pattern:
receiver_data.caps
: (table/receiver_data) Capabilities. +receiver_data.caps.event_types
: (array of items) Subclassification of the event types accepted defined by the AMWA IS-07 specification. +item
: (string)
receiver_data.caps.media_types
: (array of items) Subclassification of the formats accepted using IANA assigned media types. +item
: Possible content: +- (string) Possible values:
{"video/smpte291","application/json"}
.
or
- (string) Must match the pattern:
/^[^\s\/]+\/[^\s\/]+$/
.
- (string) Possible values:
receiver_data.format
: (string/uri) Type of Flow accepted by the Receiver as a URN. Possible values:{"urn:x-nmos:format:data"}
.receiver_mux
: Describes a mux Receiver. +receiver_mux.description
: (string) Detailed description of the resource.receiver_mux.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_mux.label
: (string) Freeform string label for the resource.receiver_mux.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.receiver_mux.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.receiver_mux.device_id
: (string) Device ID which this Receiver forms part of. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_mux.interface_bindings
: (array of items) Binding of Receiver ingress ports to interfaces on the parent Node.. +item
: (string)
receiver_mux.subscription
: (table/receiver_mux) Object indicating how this Receiver is currently configured to receive data. +receiver_mux.subscription.active
: (boolean) Receiver is enabled and configured to receive data.receiver_mux.subscription.sender_id
: (string | nil) UUID of the Sender from which this Receiver is currently configured to receive data. Only set if it is active and receiving from an NMOS Sender; otherwise null. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_mux.transport
: Transport type accepted by the Receiver in URN format. Possible content:- (string) Must match the pattern:
/^urn:x-nmos:transport:/
.
or
- (any)
- (string) Must match the pattern:
receiver_mux.caps
: (table/receiver_mux) Capabilities. +receiver_mux.caps.media_types
: (array of items) Subclassification of the formats accepted using IANA assigned media types. +item
: Possible content: +- (string) Possible values:
{"video/SMPTE2022-6"}
.
or
- (string) Must match the pattern:
/^[^\s\/]+\/[^\s\/]+$/
.
- (string) Possible values:
receiver_mux.format
: (string/uri) Type of Flow accepted by the Receiver as a URN. Possible values:{"urn:x-nmos:format:mux"}
.
Example:
{ api = { endpoints = { { host = "172.29.80.65", port = 12345, protocol = "http" }; { authorization = false; host = "172.29.80.65"; port = 443; protocol = "https"; }; }; versions = { "v1.0", "v1.1", "v1.2", "v1.3" }; }; caps = { }; clocks = { { name = "clk0", ref_type = "internal" }; { gmid = "08-00-11-ff-fe-21-e1-b0"; locked = true; name = "clk1"; ref_type = "ptp"; traceable = true; version = "IEEE1588-2008"; }; }; description = "host1"; hostname = "host1"; href = "http://172.29.80.65:12345/"; id = "3b8be755-08ff-452b-b217-c9151eb21193"; interfaces = { { attached_network_device = { chassis_id = "2f-8c-af-a8-11-74", port_id = "Ethernet 1/3" }; chassis_id = "b3-cd-09-bb-9b-d8"; name = "eth0"; port_id = "b3-cd-09-bb-9b-d8"; }; { attached_network_device = { chassis_id = "2d-51-2b-de-4a-32", port_id = "Ethernet 1/2" }; chassis_id = "b3-cd-09-bb-9b-d8"; name = "eth1"; port_id = "b3-cd-09-bb-9b-d9"; }; }; label = "host1"; services = { { authorization = false; href = "https://172.29.80.65:443/x-manufacturer/pipelinemanager/"; type = "urn:x-manufacturer:service:pipelinemanager"; }; { authorization = false; href = "https://172.29.80.65:443/x-manufacturer/status/"; type = "urn:x-manufacturer:service:status"; }; { authorization = false; href = "https://172.29.80.65:443/x-manufacturer/tally/"; type = "urn:x-manufacturer:service:tally"; }; { authorization = false; href = "https://172.29.80.65:443/x-manufacturer/mdnsbridge/"; type = "urn:x-manufacturer:service:mdnsbridge"; }; { authorization = false; href = "https://172.29.80.65:443/x-manufacturer/storequery/"; type = "urn:x-manufacturer:service:storequery"; }; }; tags = { }; version = "1441973902:879053935"; }
Or
-
table/Error
(status 400) Returned when the POST request is incorrectly formatted, missing mandatory attributes or breaches another condition which a Node is unlikely to be able to automatically correct.
+
result.code
: (number/integer) HTTP error code. Minimum:400
. Maximum:599
.result.debug
: (nil | string) Debug information which may assist a programmer working with the API.result.error
: (string) Human readable message which is suitable for user interface display, and helpful to the user.
Or
-
table/Error
(status 409) Returned when the resource already exists in the registry at a different API version. The correct API version is identified via the Location header.
+
result.code
: (number/integer) HTTP error code. Minimum:400
. Maximum:599
.result.debug
: (nil | string) Debug information which may assist a programmer working with the API.result.error
: (string) Human readable message which is suitable for user interface display, and helpful to the user.
Usage:
registration = require "lua-repl.lib.rest.nmos.registration" api = registration:create_api("http://registration.nmos.acme.example.com") payload = { data = { api = { endpoints = { { host = "172.29.80.65", port = 12345, protocol = "http" }; { authorization = false; host = "172.29.80.65"; port = 443; protocol = "https"; }; }; versions = { "v1.0", "v1.1", "v1.2", "v1.3" }; }; caps = { }; clocks = { { name = "clk0", ref_type = "internal" }; { gmid = "08-00-11-ff-fe-21-e1-b0"; locked = true; name = "clk1"; ref_type = "ptp"; traceable = true; version = "IEEE1588-2008"; }; }; description = "host1"; hostname = "host1"; href = "http://172.29.80.65:12345/"; id = "3b8be755-08ff-452b-b217-c9151eb21193"; interfaces = { { attached_network_device = { chassis_id = "2f-8c-af-a8-11-74", port_id = "Ethernet 1/3" }; chassis_id = "b3-cd-09-bb-9b-d8"; name = "eth0"; port_id = "b3-cd-09-bb-9b-d8"; }; { attached_network_device = { chassis_id = "2d-51-2b-de-4a-32", port_id = "Ethernet 1/2" }; chassis_id = "b3-cd-09-bb-9b-d8"; name = "eth1"; port_id = "b3-cd-09-bb-9b-d9"; }; }; label = "host1"; services = { { authorization = false; href = "https://172.29.80.65:443/x-manufacturer/pipelinemanager/"; type = "urn:x-manufacturer:service:pipelinemanager"; }; { authorization = false; href = "https://172.29.80.65:443/x-manufacturer/status/"; type = "urn:x-manufacturer:service:status"; }; { authorization = false; href = "https://172.29.80.65:443/x-manufacturer/tally/"; type = "urn:x-manufacturer:service:tally"; }; { authorization = false; href = "https://172.29.80.65:443/x-manufacturer/mdnsbridge/"; type = "urn:x-manufacturer:service:mdnsbridge"; }; { authorization = false; href = "https://172.29.80.65:443/x-manufacturer/storequery/"; type = "urn:x-manufacturer:service:storequery"; }; }; tags = { }; version = "1441973902:879053935"; }; type = "node"; } result = api.resource:post(payload)
- lua-repl.lib.rest.nmos.registration.api:get ()
-
List of paths available from this API.
Returns:
-
table/registrationapi_base[]
(status 200)
result.nil
: (array of items) Registration API base resource. Describes the Registration API base resource. +item
: (string) Possible values:{"resource/","health/"}
.
Example:
{ "resource/", "health/" }
- lua-repl.lib.rest.nmos.registration.api:options_resource ()
-
A pre-flight check generally used for Cross-Origin Resource Sharing (CORS) purposes.
This function is alias for
api.resource:options()
.Returns:
Or
- lua-repl.lib.rest.nmos.registration.api:resource (payload)
-
Create or update a registered resource.
This function is alias for
api.resource:post(payload)
.Parameters:
- payload (table) nil
args.payload
: Register a new resource or update an existing resource. Possible content:- (any) +
alt1.data
: Describes the Node and the services which run on it. +alt1.data.description
: (string) Detailed description of the resource.alt1.data.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt1.data.label
: (string) Freeform string label for the resource.alt1.data.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.alt1.data.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.alt1.data.api
: (table/node) URL fragments required to connect to the Node API. +alt1.data.api.endpoints
: (array of items) Host, port and protocol details required to connect to the API. +item
: (table/node) +item.authorization
: (boolean) This endpoint requires authorization.item.host
: IP address or hostname which the Node API is running on. Possible content: +- (string/hostname) or
- (string/ipv4) or
- (string/ipv6)
item.port
: (number/integer) Port number which the Node API is running on. Minimum:1
. Maximum:65535
.item.protocol
: (string) Protocol supported by this instance of the Node API. Possible values:{"http","https"}
.
alt1.data.api.versions
: (array of items) Supported API versions running on this Node. +item
: (string) Must match the pattern:/^v[0-9]+\.[0-9]+$/
.
alt1.data.caps
: (table/node) Capabilities (not yet defined).alt1.data.clocks
: (array of items) Clocks made available to Devices owned by this Node. +item
: Possible content: +- (table/clock_internal) Describes a clock with no external reference. +
- (string) Name of this refclock (unique for this set of clocks). Must match the pattern:
/^clk[0-9]+$/
. - (string) Type of external reference used by this clock. Possible values:
{"internal"}
. - (table/clock_ptp) Describes a clock referenced to PTP. +
- (string) ID of the PTP reference used by this clock. Must match the pattern:
/^[0-9a-f]{2}-[0-9a-f]{2}-[0-9a-f]{2}-[0-9a-f]{2}-[0-9a-f]{2}-[0-9a-f]{2}-[0-9a-f]{2}-[0-9a-f]{2}$/
. - (boolean) Lock state of this clock to the external reference. If true, this device follows the external reference, otherwise it has no defined relationship to the external reference.
- (string) Name of this refclock (unique for this set of clocks). Must match the pattern:
/^clk[0-9]+$/
. - (string) Type of external reference used by this clock. Possible values:
{"ptp"}
. - (boolean) External refclock is synchronised to International Atomic Time (TAI).
- (string) Version of PTP reference used by this clock. Possible values:
{"IEEE1588-2008"}
.
- (table/clock_internal) Describes a clock with no external reference. +
alt1.data.hostname
: (string/hostname) Node hostname (optional, deprecated).alt1.data.href
: (string/uri) HTTP access href for the Node's API (deprecated).alt1.data.interfaces
: (array of items) Network interfaces made available to devices owned by this Node. Port IDs and Chassis IDs are used to inform topology discovery via IS-06, and require that interfaces implement ARP at a minimum, and ideally LLDP.. +item
: (table/node) +item.attached_network_device
: (table/node) +item.attached_network_device.chassis_id
: Chassis ID of the attached network device, as signalled in LLDP received by this Node. Possible content: +- (string) When the Chassis ID is a MAC address, use this format. Must match the pattern:
/^([0-9a-f]{2}-){5}([0-9a-f]{2})$/
.
or
- (string) When the Chassis ID is anything other than a MAC address, a freeform string may be used. Must match the pattern:
/^.+$/
.
- (string) When the Chassis ID is a MAC address, use this format. Must match the pattern:
item.attached_network_device.port_id
: Port ID of the attached network device, as signalled in LLDP received by this Node. Possible content: +- (string) When the Port ID is a MAC address, use this format. Must match the pattern:
/^([0-9a-f]{2}-){5}([0-9a-f]{2})$/
.
or
- (string) When the Port ID is anything other than a MAC address, a freeform string may be used. Must match the pattern:
/^.+$/
.
- (string) When the Port ID is a MAC address, use this format. Must match the pattern:
item.chassis_id
: Chassis ID of the interface, as signalled in LLDP from this node. Set to null where LLDP is unsuitable for use (ie. virtualised environments). Possible content: +- (string) When the Chassis ID is a MAC address, use this format. Must match the pattern:
/^([0-9a-f]{2}-){5}([0-9a-f]{2})$/
.
or
- (string) When the Chassis ID is anything other than a MAC address, a freeform string may be used. Must match the pattern:
/^.+$/
.
or
- (nil) When the Chassis ID is unavailable it should be set to null.
- (string) When the Chassis ID is a MAC address, use this format. Must match the pattern:
item.name
: (string) Name of the interface (unique in scope of this node). This attribute is used by sub-resources of this node such as senders and receivers to refer to interfaces to which they are bound.item.port_id
: (string) Port ID of the interface, as signalled in LLDP or via ARP responses from this node. Must be a MAC address. Must match the pattern:/^([0-9a-f]{2}-){5}([0-9a-f]{2})$/
.
alt1.data.services
: (array of items) Array of objects containing a URN format type and href. +item
: (table/node) +item.authorization
: (boolean) This endpoint requires authorization.item.href
: (string/uri) URL to reach a service running on the Node.item.type
: (string/uri) URN identifying the type of service.
- (string) Singular form of the resource type to be registered. Possible values:
{"node"}
. - (any) +
alt2.data
: Describes a Device. +alt2.data.description
: (string) Detailed description of the resource.alt2.data.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt2.data.label
: (string) Freeform string label for the resource.alt2.data.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.alt2.data.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.alt2.data.controls
: (array of items) Control endpoints exposed for the Device. +item
: (table/device) +item.authorization
: (boolean) This endpoint requires authorization.item.href
: (string/uri) URL to reach a control endpoint, whether http or otherwise.item.type
: (string/uri) URN identifying the control format.
alt2.data.node_id
: (string) Globally unique identifier for the Node which initially created the Device. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt2.data.receivers
: (array of items) UUIDs of Receivers attached to the Device (deprecated). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
alt2.data.senders
: (array of items) UUIDs of Senders attached to the Device (deprecated). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
alt2.data.type
: Device type URN. Possible content:- (string) Must match the pattern:
/^urn:x-nmos:device:/
.
or
- (any)
- (string) Must match the pattern:
- (string) Singular form of the resource type to be registered. Possible values:
{"device"}
. - (any) +
alt3.data
: Describes a sender. +alt3.data.description
: (string) Detailed description of the resource.alt3.data.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt3.data.label
: (string) Freeform string label for the resource.alt3.data.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.alt3.data.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.alt3.data.caps
: (table/sender) Capabilities of this sender. +alt3.data.device_id
: (string) Device ID which this Sender forms part of. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt3.data.flow_id
: (string | nil) ID of the Flow currently passing via this Sender. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt3.data.interface_bindings
: (array of items) Binding of Sender egress ports to interfaces on the parent Node.. +item
: (string)
alt3.data.manifest_href
: (string | nil/uri) HTTP(S) accessible URL to a file describing how to connect to the Sender.alt3.data.subscription
: (table/sender) Object indicating how this Sender is currently configured to send data. +alt3.data.subscription.active
: (boolean) Sender is enabled and configured to send data.alt3.data.subscription.receiver_id
: (string | nil) UUID of the Receiver to which this Sender is currently configured to send data. Only set if it is active, uses a unicast push-based transport and is sending to an NMOS Receiver; otherwise null. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt3.data.transport
: Transport type used by the Sender in URN format. Possible content:- (string) Must match the pattern:
/^urn:x-nmos:transport:/
.
or
- (any)
- (string) Must match the pattern:
- (string) Singular form of the resource type to be registered. Possible values:
{"sender"}
. - (any) +
alt4.data
: Describes a Receiver. Possible content:receiver_video
: Describes a video Receiver. +receiver_video.description
: (string) Detailed description of the resource.receiver_video.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_video.label
: (string) Freeform string label for the resource.receiver_video.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.receiver_video.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.receiver_video.device_id
: (string) Device ID which this Receiver forms part of. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_video.interface_bindings
: (array of items) Binding of Receiver ingress ports to interfaces on the parent Node.. +item
: (string)
receiver_video.subscription
: (table/receiver_video) Object indicating how this Receiver is currently configured to receive data. +receiver_video.subscription.active
: (boolean) Receiver is enabled and configured to receive data.receiver_video.subscription.sender_id
: (string | nil) UUID of the Sender from which this Receiver is currently configured to receive data. Only set if it is active and receiving from an NMOS Sender; otherwise null. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_video.transport
: Transport type accepted by the Receiver in URN format. Possible content:- (string) Must match the pattern:
/^urn:x-nmos:transport:/
.
or
- (any)
- (string) Must match the pattern:
receiver_video.caps
: (table/receiver_video) Capabilities. +receiver_video.caps.media_types
: (array of items) Subclassification of the formats accepted using IANA assigned media types. +item
: Possible content: +- (string) Possible values:
{"video/raw","video/H264","video/vc2"}
.
or
- (string) Must match the pattern:
/^video\/[^\s\/]+$/
.
- (string) Possible values:
receiver_video.format
: (string/uri) Type of Flow accepted by the Receiver as a URN. Possible values:{"urn:x-nmos:format:video"}
.receiver_audio
: Describes an audio Receiver. +receiver_audio.description
: (string) Detailed description of the resource.receiver_audio.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_audio.label
: (string) Freeform string label for the resource.receiver_audio.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.receiver_audio.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.receiver_audio.device_id
: (string) Device ID which this Receiver forms part of. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_audio.interface_bindings
: (array of items) Binding of Receiver ingress ports to interfaces on the parent Node.. +item
: (string)
receiver_audio.subscription
: (table/receiver_audio) Object indicating how this Receiver is currently configured to receive data. +receiver_audio.subscription.active
: (boolean) Receiver is enabled and configured to receive data.receiver_audio.subscription.sender_id
: (string | nil) UUID of the Sender from which this Receiver is currently configured to receive data. Only set if it is active and receiving from an NMOS Sender; otherwise null. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_audio.transport
: Transport type accepted by the Receiver in URN format. Possible content:- (string) Must match the pattern:
/^urn:x-nmos:transport:/
.
or
- (any)
- (string) Must match the pattern:
receiver_audio.caps
: (table/receiver_audio) Capabilities. +receiver_audio.caps.media_types
: (array of items) Subclassification of the formats accepted using IANA assigned media types. +item
: Possible content: +- (string) Possible values:
{"audio/L24","audio/L20","audio/L16","audio/L8"}
.
or
- (string) Must match the pattern:
/^audio\/[^\s\/]+$/
.
- (string) Possible values:
receiver_audio.format
: (string/uri) Type of Flow accepted by the Receiver as a URN. Possible values:{"urn:x-nmos:format:audio"}
.receiver_data
: Describes a data Receiver. +receiver_data.description
: (string) Detailed description of the resource.receiver_data.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_data.label
: (string) Freeform string label for the resource.receiver_data.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.receiver_data.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.receiver_data.device_id
: (string) Device ID which this Receiver forms part of. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_data.interface_bindings
: (array of items) Binding of Receiver ingress ports to interfaces on the parent Node.. +item
: (string)
receiver_data.subscription
: (table/receiver_data) Object indicating how this Receiver is currently configured to receive data. +receiver_data.subscription.active
: (boolean) Receiver is enabled and configured to receive data.receiver_data.subscription.sender_id
: (string | nil) UUID of the Sender from which this Receiver is currently configured to receive data. Only set if it is active and receiving from an NMOS Sender; otherwise null. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_data.transport
: Transport type accepted by the Receiver in URN format. Possible content:- (string) Must match the pattern:
/^urn:x-nmos:transport:/
.
or
- (any)
- (string) Must match the pattern:
receiver_data.caps
: (table/receiver_data) Capabilities. +receiver_data.caps.event_types
: (array of items) Subclassification of the event types accepted defined by the AMWA IS-07 specification. +item
: (string)
receiver_data.caps.media_types
: (array of items) Subclassification of the formats accepted using IANA assigned media types. +item
: Possible content: +- (string) Possible values:
{"video/smpte291","application/json"}
.
or
- (string) Must match the pattern:
/^[^\s\/]+\/[^\s\/]+$/
.
- (string) Possible values:
receiver_data.format
: (string/uri) Type of Flow accepted by the Receiver as a URN. Possible values:{"urn:x-nmos:format:data"}
.receiver_mux
: Describes a mux Receiver. +receiver_mux.description
: (string) Detailed description of the resource.receiver_mux.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_mux.label
: (string) Freeform string label for the resource.receiver_mux.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.receiver_mux.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.receiver_mux.device_id
: (string) Device ID which this Receiver forms part of. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_mux.interface_bindings
: (array of items) Binding of Receiver ingress ports to interfaces on the parent Node.. +item
: (string)
receiver_mux.subscription
: (table/receiver_mux) Object indicating how this Receiver is currently configured to receive data. +receiver_mux.subscription.active
: (boolean) Receiver is enabled and configured to receive data.receiver_mux.subscription.sender_id
: (string | nil) UUID of the Sender from which this Receiver is currently configured to receive data. Only set if it is active and receiving from an NMOS Sender; otherwise null. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_mux.transport
: Transport type accepted by the Receiver in URN format. Possible content:- (string) Must match the pattern:
/^urn:x-nmos:transport:/
.
or
- (any)
- (string) Must match the pattern:
receiver_mux.caps
: (table/receiver_mux) Capabilities. +receiver_mux.caps.media_types
: (array of items) Subclassification of the formats accepted using IANA assigned media types. +item
: Possible content: +- (string) Possible values:
{"video/SMPTE2022-6"}
.
or
- (string) Must match the pattern:
/^[^\s\/]+\/[^\s\/]+$/
.
- (string) Possible values:
receiver_mux.format
: (string/uri) Type of Flow accepted by the Receiver as a URN. Possible values:{"urn:x-nmos:format:mux"}
.
- (string) Singular form of the resource type to be registered. Possible values:
{"receiver"}
. - (any) +
alt5.data
: Describes a Source. Possible content:source_generic
: Describes a generic Source. +source_generic.description
: (string) Detailed description of the resource.source_generic.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.source_generic.label
: (string) Freeform string label for the resource.source_generic.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.source_generic.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.source_generic.caps
: (table/source_generic) Capabilities (not yet defined).source_generic.clock_name
: (string | nil) Reference to clock in the originating Node. Must match the pattern:/^clk[0-9]+$/
.source_generic.device_id
: (string) Globally unique identifier for the Device which initially created the Source. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.source_generic.grain_rate
: (table/source_generic) Maximum number of Grains per second for Flows derived from this Source. Corresponding Flow Grain rates may override this attribute. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Sources only. +source_generic.grain_rate.denominator
: (number/integer) Denominator.source_generic.grain_rate.numerator
: (number/integer) Numerator.source_generic.parents
: (array of items) Array of UUIDs representing the Source IDs of Grains which came together at the input to this Source (may change over the lifetime of this Source). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
source_generic.format
: (string/uri) Format of the data coming from the Source as a URN. Possible values:{"urn:x-nmos:format:video","urn:x-nmos:format:mux"}
.source_audio
: Describes an audio Source. +source_audio.description
: (string) Detailed description of the resource.source_audio.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.source_audio.label
: (string) Freeform string label for the resource.source_audio.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.source_audio.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.source_audio.caps
: (table/source_audio) Capabilities (not yet defined).source_audio.clock_name
: (string | nil) Reference to clock in the originating Node. Must match the pattern:/^clk[0-9]+$/
.source_audio.device_id
: (string) Globally unique identifier for the Device which initially created the Source. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.source_audio.grain_rate
: (table/source_audio) Maximum number of Grains per second for Flows derived from this Source. Corresponding Flow Grain rates may override this attribute. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Sources only. +source_audio.grain_rate.denominator
: (number/integer) Denominator.source_audio.grain_rate.numerator
: (number/integer) Numerator.source_audio.parents
: (array of items) Array of UUIDs representing the Source IDs of Grains which came together at the input to this Source (may change over the lifetime of this Source). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
source_audio.channels
: (array of items) Array of objects describing the audio channels. +item
: (table/source_audio) +item.label
: (string) Label for this channel (free text).item.symbol
: Symbol for this channel (from VSF TR-03 Appendix A). Possible content:- (string) Possible values:
{"L","R","C","LFE","Ls","Rs","Lss","Rss","Lrs","Rrs","Lc","Rc","Cs","HI","VIN","M1","M2","Lt","Rt","Lst","Rst","S"}
.
or
- (string) Numbered Source Channel. Must match the pattern:
/^NSC(0[0-9][0-9]|1[0-1][0-9]|12[0-8])$/
.
or
- (string) Undefined channel. Must match the pattern:
/^U(0[1-9]|[1-5][0-9]|6[0-4])$/
.
- (string) Possible values:
source_audio.format
: (string/uri) Format of the data coming from the Source as a URN. Possible values:{"urn:x-nmos:format:audio"}
.source_data
: Describes a data Source. +source_data.description
: (string) Detailed description of the resource.source_data.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.source_data.label
: (string) Freeform string label for the resource.source_data.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.source_data.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.source_data.caps
: (table/source_data) Capabilities (not yet defined).source_data.clock_name
: (string | nil) Reference to clock in the originating Node. Must match the pattern:/^clk[0-9]+$/
.source_data.device_id
: (string) Globally unique identifier for the Device which initially created the Source. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.source_data.grain_rate
: (table/source_data) Maximum number of Grains per second for Flows derived from this Source. Corresponding Flow Grain rates may override this attribute. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Sources only. +source_data.grain_rate.denominator
: (number/integer) Denominator.source_data.grain_rate.numerator
: (number/integer) Numerator.source_data.parents
: (array of items) Array of UUIDs representing the Source IDs of Grains which came together at the input to this Source (may change over the lifetime of this Source). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
source_data.event_type
: (string) Event type generated by this Source, if applicable.source_data.format
: (string/uri) Format of the data coming from the Source as a URN. Possible values:{"urn:x-nmos:format:data"}
.
- (string) Singular form of the resource type to be registered. Possible values:
{"source"}
. - (any) +
alt6.data
: Describes a Flow. Possible content: +alt6.data
: Describes a raw Video Flow. +alt6.data.description
: (string) Detailed description of the resource.alt6.data.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.label
: (string) Freeform string label for the resource.alt6.data.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.alt6.data.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.alt6.data.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.grain_rate
: (table/flow_video_raw) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +alt6.data.grain_rate.denominator
: (number/integer) Denominator.alt6.data.grain_rate.numerator
: (number/integer) Numerator.alt6.data.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
alt6.data.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.colorspace
: Colorspace used for the video. Any values not defined in the enum should be defined in the NMOS Parameter Registers. Possible content: +- (string) Possible values:
{"BT601","BT709","BT2020","BT2100"}
.
or
- (string) Must match the pattern:
/^\S+$/
.
- (string) Possible values:
alt6.data.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:video"}
.alt6.data.frame_height
: (number/integer) Height of the picture in pixels.alt6.data.frame_width
: (number/integer) Width of the picture in pixels.alt6.data.interlace_mode
: (string) Interlaced video mode for frames in this Flow. Possible values:{"progressive","interlaced_tff","interlaced_bff","interlaced_psf"}
.alt6.data.transfer_characteristic
: Transfer characteristic. Any values not defined in the enum should be defined in the NMOS Parameter Registers. Possible content: +- (string) Possible values:
{"SDR","HLG","PQ"}
.
or
- (string) Must match the pattern:
/^\S+$/
.
- (string) Possible values:
alt6.data.components
: (array of items) Array of objects describing the components. +item
: (table/flow_video_raw) +item.bit_depth
: (number/integer) Number of bits used to describe each sample.item.height
: (number/integer) Height of this component in pixels.item.name
: (string) Name of this component. Possible values:{"Y","Cb","Cr","I","Ct","Cp","A","R","G","B","DepthMap"}
.item.width
: (number/integer) Width of this component in pixels.
alt6.data.media_type
: (string) Subclassification of the format using IANA assigned media types. Possible values:{"video/raw"}
.alt6.data
: Describes a coded Video Flow. +alt6.data.description
: (string) Detailed description of the resource.alt6.data.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.label
: (string) Freeform string label for the resource.alt6.data.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.alt6.data.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.alt6.data.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.grain_rate
: (table/flow_video_coded) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +alt6.data.grain_rate.denominator
: (number/integer) Denominator.alt6.data.grain_rate.numerator
: (number/integer) Numerator.alt6.data.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
alt6.data.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.colorspace
: Colorspace used for the video. Any values not defined in the enum should be defined in the NMOS Parameter Registers. Possible content: +- (string) Possible values:
{"BT601","BT709","BT2020","BT2100"}
.
or
- (string) Must match the pattern:
/^\S+$/
.
- (string) Possible values:
alt6.data.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:video"}
.alt6.data.frame_height
: (number/integer) Height of the picture in pixels.alt6.data.frame_width
: (number/integer) Width of the picture in pixels.alt6.data.interlace_mode
: (string) Interlaced video mode for frames in this Flow. Possible values:{"progressive","interlaced_tff","interlaced_bff","interlaced_psf"}
.alt6.data.transfer_characteristic
: Transfer characteristic. Any values not defined in the enum should be defined in the NMOS Parameter Registers. Possible content: +- (string) Possible values:
{"SDR","HLG","PQ"}
.
or
- (string) Must match the pattern:
/^\S+$/
.
- (string) Possible values:
alt6.data.media_type
: Subclassification of the format using IANA assigned media types. Possible content: +- (string) Possible values:
{"video/H264","video/vc2"}
.
or
- (string) Must match the pattern:
/^video\/[^\s\/]+$/
.
- (string) Possible values:
alt6.data
: Describes a raw audio Flow. +alt6.data.description
: (string) Detailed description of the resource.alt6.data.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.label
: (string) Freeform string label for the resource.alt6.data.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.alt6.data.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.alt6.data.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.grain_rate
: (table/flow_audio_raw) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +alt6.data.grain_rate.denominator
: (number/integer) Denominator.alt6.data.grain_rate.numerator
: (number/integer) Numerator.alt6.data.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
alt6.data.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:audio"}
.alt6.data.sample_rate
: (table/flow_audio_raw) Number of audio samples per second for this Flow. +alt6.data.sample_rate.denominator
: (number/integer) Denominator.alt6.data.sample_rate.numerator
: (number/integer) Numerator.alt6.data.bit_depth
: (number/integer) Bit depth of the audio samples.alt6.data.media_type
: Subclassification of the format using IANA assigned media types. Possible content: +- (string) Possible values:
{"audio/L24","audio/L20","audio/L16","audio/L8"}
.
or
- (string) Must match the pattern:
/^audio\/[^\s\/]+$/
.
- (string) Possible values:
alt6.data
: Describes a coded audio Flow. +alt6.data.description
: (string) Detailed description of the resource.alt6.data.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.label
: (string) Freeform string label for the resource.alt6.data.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.alt6.data.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.alt6.data.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.grain_rate
: (table/flow_audio_coded) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +alt6.data.grain_rate.denominator
: (number/integer) Denominator.alt6.data.grain_rate.numerator
: (number/integer) Numerator.alt6.data.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
alt6.data.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:audio"}
.alt6.data.sample_rate
: (table/flow_audio_coded) Number of audio samples per second for this Flow. +alt6.data.sample_rate.denominator
: (number/integer) Denominator.alt6.data.sample_rate.numerator
: (number/integer) Numerator.alt6.data.media_type
: (string) Subclassification of the format using IANA assigned media types. Must match the pattern:/^audio\/[^\s\/]+$/
.alt6.data
: Describes a generic data Flow. +alt6.data.description
: (string) Detailed description of the resource.alt6.data.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.label
: (string) Freeform string label for the resource.alt6.data.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.alt6.data.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.alt6.data.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.grain_rate
: (table/flow_data) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +alt6.data.grain_rate.denominator
: (number/integer) Denominator.alt6.data.grain_rate.numerator
: (number/integer) Numerator.alt6.data.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
alt6.data.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:data"}
.alt6.data.media_type
: (string) Subclassification of the format using IANA assigned media types. Must match the pattern:/^[^\s\/]+\/[^\s\/]+$/
.alt6.data
: Describes an SDI ancillary Flow. +alt6.data.description
: (string) Detailed description of the resource.alt6.data.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.label
: (string) Freeform string label for the resource.alt6.data.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.alt6.data.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.alt6.data.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.grain_rate
: (table/flow_sdianc_data) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +alt6.data.grain_rate.denominator
: (number/integer) Denominator.alt6.data.grain_rate.numerator
: (number/integer) Numerator.alt6.data.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
alt6.data.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.DID_SDID
: (array of items) List of Data identification and Secondary data identification words. +item
: (table/flow_sdianc_data) +item.DID
: (string) Data identification word. Must match the pattern:/^0x[0-9a-fA-F]{2}$/
.item.SDID
: (string) Secondary data identification word. Must match the pattern:/^0x[0-9a-fA-F]{2}$/
.
alt6.data.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:data"}
.alt6.data.media_type
: (string) Subclassification of the format using IANA assigned media types. Possible values:{"video/smpte291"}
.alt6.data
: Describes a JSON based Flow. +alt6.data.description
: (string) Detailed description of the resource.alt6.data.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.label
: (string) Freeform string label for the resource.alt6.data.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.alt6.data.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.alt6.data.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.grain_rate
: (table/flow_json_data) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +alt6.data.grain_rate.denominator
: (number/integer) Denominator.alt6.data.grain_rate.numerator
: (number/integer) Numerator.alt6.data.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
alt6.data.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.event_type
: (string) Event type generated by this Flow, if applicable.alt6.data.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:data"}
.alt6.data.media_type
: (string) Subclassification of the format using IANA assigned media types. Possible values:{"application/json"}
.alt6.data
: Describes a mux Flow. +alt6.data.description
: (string) Detailed description of the resource.alt6.data.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.label
: (string) Freeform string label for the resource.alt6.data.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.alt6.data.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.alt6.data.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.grain_rate
: (table/flow_mux) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +alt6.data.grain_rate.denominator
: (number/integer) Denominator.alt6.data.grain_rate.numerator
: (number/integer) Numerator.alt6.data.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
alt6.data.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.alt6.data.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:mux"}
.alt6.data.media_type
: Subclassification of the format using IANA assigned media types. Possible content: +- (string) Possible values:
{"video/SMPTE2022-6"}
.
or
- (string) Must match the pattern:
/^[^\s\/]+\/[^\s\/]+$/
.
- (string) Possible values:
- (string) Singular form of the resource type to be registered. Possible values:
{"flow"}
.
- (any) +
Returns:
-
table/registrationapi_resource_response
(status 200) The expected response for an update operation on an existing registered resource
- Returning a registered resource from the Registration API. Possible content:
node
: Describes the Node and the services which run on it. +node.description
: (string) Detailed description of the resource.node.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.node.label
: (string) Freeform string label for the resource.node.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.node.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.node.api
: (table/node) URL fragments required to connect to the Node API. +node.api.endpoints
: (array of items) Host, port and protocol details required to connect to the API. +item
: (table/node) +item.authorization
: (boolean) This endpoint requires authorization.item.host
: IP address or hostname which the Node API is running on. Possible content: +- (string/hostname) or
- (string/ipv4) or
- (string/ipv6)
item.port
: (number/integer) Port number which the Node API is running on. Minimum:1
. Maximum:65535
.item.protocol
: (string) Protocol supported by this instance of the Node API. Possible values:{"http","https"}
.
node.api.versions
: (array of items) Supported API versions running on this Node. +item
: (string) Must match the pattern:/^v[0-9]+\.[0-9]+$/
.
node.caps
: (table/node) Capabilities (not yet defined).node.clocks
: (array of items) Clocks made available to Devices owned by this Node. +item
: Possible content: +- (table/clock_internal) Describes a clock with no external reference. +
- (string) Name of this refclock (unique for this set of clocks). Must match the pattern:
/^clk[0-9]+$/
. - (string) Type of external reference used by this clock. Possible values:
{"internal"}
. - (table/clock_ptp) Describes a clock referenced to PTP. +
- (string) ID of the PTP reference used by this clock. Must match the pattern:
/^[0-9a-f]{2}-[0-9a-f]{2}-[0-9a-f]{2}-[0-9a-f]{2}-[0-9a-f]{2}-[0-9a-f]{2}-[0-9a-f]{2}-[0-9a-f]{2}$/
. - (boolean) Lock state of this clock to the external reference. If true, this device follows the external reference, otherwise it has no defined relationship to the external reference.
- (string) Name of this refclock (unique for this set of clocks). Must match the pattern:
/^clk[0-9]+$/
. - (string) Type of external reference used by this clock. Possible values:
{"ptp"}
. - (boolean) External refclock is synchronised to International Atomic Time (TAI).
- (string) Version of PTP reference used by this clock. Possible values:
{"IEEE1588-2008"}
.
- (table/clock_internal) Describes a clock with no external reference. +
node.hostname
: (string/hostname) Node hostname (optional, deprecated).node.href
: (string/uri) HTTP access href for the Node's API (deprecated).node.interfaces
: (array of items) Network interfaces made available to devices owned by this Node. Port IDs and Chassis IDs are used to inform topology discovery via IS-06, and require that interfaces implement ARP at a minimum, and ideally LLDP.. +item
: (table/node) +item.attached_network_device
: (table/node) +item.attached_network_device.chassis_id
: Chassis ID of the attached network device, as signalled in LLDP received by this Node. Possible content: +- (string) When the Chassis ID is a MAC address, use this format. Must match the pattern:
/^([0-9a-f]{2}-){5}([0-9a-f]{2})$/
.
or
- (string) When the Chassis ID is anything other than a MAC address, a freeform string may be used. Must match the pattern:
/^.+$/
.
- (string) When the Chassis ID is a MAC address, use this format. Must match the pattern:
item.attached_network_device.port_id
: Port ID of the attached network device, as signalled in LLDP received by this Node. Possible content: +- (string) When the Port ID is a MAC address, use this format. Must match the pattern:
/^([0-9a-f]{2}-){5}([0-9a-f]{2})$/
.
or
- (string) When the Port ID is anything other than a MAC address, a freeform string may be used. Must match the pattern:
/^.+$/
.
- (string) When the Port ID is a MAC address, use this format. Must match the pattern:
item.chassis_id
: Chassis ID of the interface, as signalled in LLDP from this node. Set to null where LLDP is unsuitable for use (ie. virtualised environments). Possible content: +- (string) When the Chassis ID is a MAC address, use this format. Must match the pattern:
/^([0-9a-f]{2}-){5}([0-9a-f]{2})$/
.
or
- (string) When the Chassis ID is anything other than a MAC address, a freeform string may be used. Must match the pattern:
/^.+$/
.
or
- (nil) When the Chassis ID is unavailable it should be set to null.
- (string) When the Chassis ID is a MAC address, use this format. Must match the pattern:
item.name
: (string) Name of the interface (unique in scope of this node). This attribute is used by sub-resources of this node such as senders and receivers to refer to interfaces to which they are bound.item.port_id
: (string) Port ID of the interface, as signalled in LLDP or via ARP responses from this node. Must be a MAC address. Must match the pattern:/^([0-9a-f]{2}-){5}([0-9a-f]{2})$/
.
node.services
: (array of items) Array of objects containing a URN format type and href. +item
: (table/node) +item.authorization
: (boolean) This endpoint requires authorization.item.href
: (string/uri) URL to reach a service running on the Node.item.type
: (string/uri) URN identifying the type of service.
device
: Describes a Device. +device.description
: (string) Detailed description of the resource.device.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.device.label
: (string) Freeform string label for the resource.device.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.device.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.device.controls
: (array of items) Control endpoints exposed for the Device. +item
: (table/device) +item.authorization
: (boolean) This endpoint requires authorization.item.href
: (string/uri) URL to reach a control endpoint, whether http or otherwise.item.type
: (string/uri) URN identifying the control format.
device.node_id
: (string) Globally unique identifier for the Node which initially created the Device. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.device.receivers
: (array of items) UUIDs of Receivers attached to the Device (deprecated). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
device.senders
: (array of items) UUIDs of Senders attached to the Device (deprecated). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
device.type
: Device type URN. Possible content:- (string) Must match the pattern:
/^urn:x-nmos:device:/
.
or
- (any)
- (string) Must match the pattern:
source
: Describes a Source. Possible content:source_generic
: Describes a generic Source. +source_generic.description
: (string) Detailed description of the resource.source_generic.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.source_generic.label
: (string) Freeform string label for the resource.source_generic.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.source_generic.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.source_generic.caps
: (table/source_generic) Capabilities (not yet defined).source_generic.clock_name
: (string | nil) Reference to clock in the originating Node. Must match the pattern:/^clk[0-9]+$/
.source_generic.device_id
: (string) Globally unique identifier for the Device which initially created the Source. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.source_generic.grain_rate
: (table/source_generic) Maximum number of Grains per second for Flows derived from this Source. Corresponding Flow Grain rates may override this attribute. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Sources only. +source_generic.grain_rate.denominator
: (number/integer) Denominator.source_generic.grain_rate.numerator
: (number/integer) Numerator.source_generic.parents
: (array of items) Array of UUIDs representing the Source IDs of Grains which came together at the input to this Source (may change over the lifetime of this Source). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
source_generic.format
: (string/uri) Format of the data coming from the Source as a URN. Possible values:{"urn:x-nmos:format:video","urn:x-nmos:format:mux"}
.source_audio
: Describes an audio Source. +source_audio.description
: (string) Detailed description of the resource.source_audio.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.source_audio.label
: (string) Freeform string label for the resource.source_audio.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.source_audio.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.source_audio.caps
: (table/source_audio) Capabilities (not yet defined).source_audio.clock_name
: (string | nil) Reference to clock in the originating Node. Must match the pattern:/^clk[0-9]+$/
.source_audio.device_id
: (string) Globally unique identifier for the Device which initially created the Source. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.source_audio.grain_rate
: (table/source_audio) Maximum number of Grains per second for Flows derived from this Source. Corresponding Flow Grain rates may override this attribute. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Sources only. +source_audio.grain_rate.denominator
: (number/integer) Denominator.source_audio.grain_rate.numerator
: (number/integer) Numerator.source_audio.parents
: (array of items) Array of UUIDs representing the Source IDs of Grains which came together at the input to this Source (may change over the lifetime of this Source). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
source_audio.channels
: (array of items) Array of objects describing the audio channels. +item
: (table/source_audio) +item.label
: (string) Label for this channel (free text).item.symbol
: Symbol for this channel (from VSF TR-03 Appendix A). Possible content:- (string) Possible values:
{"L","R","C","LFE","Ls","Rs","Lss","Rss","Lrs","Rrs","Lc","Rc","Cs","HI","VIN","M1","M2","Lt","Rt","Lst","Rst","S"}
.
or
- (string) Numbered Source Channel. Must match the pattern:
/^NSC(0[0-9][0-9]|1[0-1][0-9]|12[0-8])$/
.
or
- (string) Undefined channel. Must match the pattern:
/^U(0[1-9]|[1-5][0-9]|6[0-4])$/
.
- (string) Possible values:
source_audio.format
: (string/uri) Format of the data coming from the Source as a URN. Possible values:{"urn:x-nmos:format:audio"}
.source_data
: Describes a data Source. +source_data.description
: (string) Detailed description of the resource.source_data.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.source_data.label
: (string) Freeform string label for the resource.source_data.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.source_data.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.source_data.caps
: (table/source_data) Capabilities (not yet defined).source_data.clock_name
: (string | nil) Reference to clock in the originating Node. Must match the pattern:/^clk[0-9]+$/
.source_data.device_id
: (string) Globally unique identifier for the Device which initially created the Source. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.source_data.grain_rate
: (table/source_data) Maximum number of Grains per second for Flows derived from this Source. Corresponding Flow Grain rates may override this attribute. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Sources only. +source_data.grain_rate.denominator
: (number/integer) Denominator.source_data.grain_rate.numerator
: (number/integer) Numerator.source_data.parents
: (array of items) Array of UUIDs representing the Source IDs of Grains which came together at the input to this Source (may change over the lifetime of this Source). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
source_data.event_type
: (string) Event type generated by this Source, if applicable.source_data.format
: (string/uri) Format of the data coming from the Source as a URN. Possible values:{"urn:x-nmos:format:data"}
.
or
flow
: Describes a Flow. Possible content: +flow
: Describes a raw Video Flow. +flow.description
: (string) Detailed description of the resource.flow.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.label
: (string) Freeform string label for the resource.flow.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.flow.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.flow.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.grain_rate
: (table/flow_video_raw) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +flow.grain_rate.denominator
: (number/integer) Denominator.flow.grain_rate.numerator
: (number/integer) Numerator.flow.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
flow.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.colorspace
: Colorspace used for the video. Any values not defined in the enum should be defined in the NMOS Parameter Registers. Possible content: +- (string) Possible values:
{"BT601","BT709","BT2020","BT2100"}
.
or
- (string) Must match the pattern:
/^\S+$/
.
- (string) Possible values:
flow.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:video"}
.flow.frame_height
: (number/integer) Height of the picture in pixels.flow.frame_width
: (number/integer) Width of the picture in pixels.flow.interlace_mode
: (string) Interlaced video mode for frames in this Flow. Possible values:{"progressive","interlaced_tff","interlaced_bff","interlaced_psf"}
.flow.transfer_characteristic
: Transfer characteristic. Any values not defined in the enum should be defined in the NMOS Parameter Registers. Possible content: +- (string) Possible values:
{"SDR","HLG","PQ"}
.
or
- (string) Must match the pattern:
/^\S+$/
.
- (string) Possible values:
flow.components
: (array of items) Array of objects describing the components. +item
: (table/flow_video_raw) +item.bit_depth
: (number/integer) Number of bits used to describe each sample.item.height
: (number/integer) Height of this component in pixels.item.name
: (string) Name of this component. Possible values:{"Y","Cb","Cr","I","Ct","Cp","A","R","G","B","DepthMap"}
.item.width
: (number/integer) Width of this component in pixels.
flow.media_type
: (string) Subclassification of the format using IANA assigned media types. Possible values:{"video/raw"}
.flow
: Describes a coded Video Flow. +flow.description
: (string) Detailed description of the resource.flow.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.label
: (string) Freeform string label for the resource.flow.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.flow.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.flow.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.grain_rate
: (table/flow_video_coded) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +flow.grain_rate.denominator
: (number/integer) Denominator.flow.grain_rate.numerator
: (number/integer) Numerator.flow.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
flow.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.colorspace
: Colorspace used for the video. Any values not defined in the enum should be defined in the NMOS Parameter Registers. Possible content: +- (string) Possible values:
{"BT601","BT709","BT2020","BT2100"}
.
or
- (string) Must match the pattern:
/^\S+$/
.
- (string) Possible values:
flow.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:video"}
.flow.frame_height
: (number/integer) Height of the picture in pixels.flow.frame_width
: (number/integer) Width of the picture in pixels.flow.interlace_mode
: (string) Interlaced video mode for frames in this Flow. Possible values:{"progressive","interlaced_tff","interlaced_bff","interlaced_psf"}
.flow.transfer_characteristic
: Transfer characteristic. Any values not defined in the enum should be defined in the NMOS Parameter Registers. Possible content: +- (string) Possible values:
{"SDR","HLG","PQ"}
.
or
- (string) Must match the pattern:
/^\S+$/
.
- (string) Possible values:
flow.media_type
: Subclassification of the format using IANA assigned media types. Possible content: +- (string) Possible values:
{"video/H264","video/vc2"}
.
or
- (string) Must match the pattern:
/^video\/[^\s\/]+$/
.
- (string) Possible values:
flow
: Describes a raw audio Flow. +flow.description
: (string) Detailed description of the resource.flow.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.label
: (string) Freeform string label for the resource.flow.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.flow.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.flow.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.grain_rate
: (table/flow_audio_raw) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +flow.grain_rate.denominator
: (number/integer) Denominator.flow.grain_rate.numerator
: (number/integer) Numerator.flow.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
flow.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:audio"}
.flow.sample_rate
: (table/flow_audio_raw) Number of audio samples per second for this Flow. +flow.sample_rate.denominator
: (number/integer) Denominator.flow.sample_rate.numerator
: (number/integer) Numerator.flow.bit_depth
: (number/integer) Bit depth of the audio samples.flow.media_type
: Subclassification of the format using IANA assigned media types. Possible content: +- (string) Possible values:
{"audio/L24","audio/L20","audio/L16","audio/L8"}
.
or
- (string) Must match the pattern:
/^audio\/[^\s\/]+$/
.
- (string) Possible values:
flow
: Describes a coded audio Flow. +flow.description
: (string) Detailed description of the resource.flow.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.label
: (string) Freeform string label for the resource.flow.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.flow.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.flow.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.grain_rate
: (table/flow_audio_coded) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +flow.grain_rate.denominator
: (number/integer) Denominator.flow.grain_rate.numerator
: (number/integer) Numerator.flow.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
flow.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:audio"}
.flow.sample_rate
: (table/flow_audio_coded) Number of audio samples per second for this Flow. +flow.sample_rate.denominator
: (number/integer) Denominator.flow.sample_rate.numerator
: (number/integer) Numerator.flow.media_type
: (string) Subclassification of the format using IANA assigned media types. Must match the pattern:/^audio\/[^\s\/]+$/
.flow
: Describes a generic data Flow. +flow.description
: (string) Detailed description of the resource.flow.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.label
: (string) Freeform string label for the resource.flow.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.flow.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.flow.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.grain_rate
: (table/flow_data) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +flow.grain_rate.denominator
: (number/integer) Denominator.flow.grain_rate.numerator
: (number/integer) Numerator.flow.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
flow.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:data"}
.flow.media_type
: (string) Subclassification of the format using IANA assigned media types. Must match the pattern:/^[^\s\/]+\/[^\s\/]+$/
.flow
: Describes an SDI ancillary Flow. +flow.description
: (string) Detailed description of the resource.flow.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.label
: (string) Freeform string label for the resource.flow.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.flow.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.flow.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.grain_rate
: (table/flow_sdianc_data) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +flow.grain_rate.denominator
: (number/integer) Denominator.flow.grain_rate.numerator
: (number/integer) Numerator.flow.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
flow.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.DID_SDID
: (array of items) List of Data identification and Secondary data identification words. +item
: (table/flow_sdianc_data) +item.DID
: (string) Data identification word. Must match the pattern:/^0x[0-9a-fA-F]{2}$/
.item.SDID
: (string) Secondary data identification word. Must match the pattern:/^0x[0-9a-fA-F]{2}$/
.
flow.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:data"}
.flow.media_type
: (string) Subclassification of the format using IANA assigned media types. Possible values:{"video/smpte291"}
.flow
: Describes a JSON based Flow. +flow.description
: (string) Detailed description of the resource.flow.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.label
: (string) Freeform string label for the resource.flow.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.flow.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.flow.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.grain_rate
: (table/flow_json_data) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +flow.grain_rate.denominator
: (number/integer) Denominator.flow.grain_rate.numerator
: (number/integer) Numerator.flow.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
flow.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.event_type
: (string) Event type generated by this Flow, if applicable.flow.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:data"}
.flow.media_type
: (string) Subclassification of the format using IANA assigned media types. Possible values:{"application/json"}
.flow
: Describes a mux Flow. +flow.description
: (string) Detailed description of the resource.flow.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.label
: (string) Freeform string label for the resource.flow.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.flow.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.flow.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.grain_rate
: (table/flow_mux) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +flow.grain_rate.denominator
: (number/integer) Denominator.flow.grain_rate.numerator
: (number/integer) Numerator.flow.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
flow.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:mux"}
.flow.media_type
: Subclassification of the format using IANA assigned media types. Possible content: +- (string) Possible values:
{"video/SMPTE2022-6"}
.
or
- (string) Must match the pattern:
/^[^\s\/]+\/[^\s\/]+$/
.
- (string) Possible values:
or
sender
: Describes a sender. +sender.description
: (string) Detailed description of the resource.sender.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.sender.label
: (string) Freeform string label for the resource.sender.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.sender.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.sender.caps
: (table/sender) Capabilities of this sender. +sender.device_id
: (string) Device ID which this Sender forms part of. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.sender.flow_id
: (string | nil) ID of the Flow currently passing via this Sender. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.sender.interface_bindings
: (array of items) Binding of Sender egress ports to interfaces on the parent Node.. +item
: (string)
sender.manifest_href
: (string | nil/uri) HTTP(S) accessible URL to a file describing how to connect to the Sender.sender.subscription
: (table/sender) Object indicating how this Sender is currently configured to send data. +sender.subscription.active
: (boolean) Sender is enabled and configured to send data.sender.subscription.receiver_id
: (string | nil) UUID of the Receiver to which this Sender is currently configured to send data. Only set if it is active, uses a unicast push-based transport and is sending to an NMOS Receiver; otherwise null. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.sender.transport
: Transport type used by the Sender in URN format. Possible content:- (string) Must match the pattern:
/^urn:x-nmos:transport:/
.
or
- (any)
- (string) Must match the pattern:
receiver
: Describes a Receiver. Possible content:receiver_video
: Describes a video Receiver. +receiver_video.description
: (string) Detailed description of the resource.receiver_video.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_video.label
: (string) Freeform string label for the resource.receiver_video.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.receiver_video.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.receiver_video.device_id
: (string) Device ID which this Receiver forms part of. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_video.interface_bindings
: (array of items) Binding of Receiver ingress ports to interfaces on the parent Node.. +item
: (string)
receiver_video.subscription
: (table/receiver_video) Object indicating how this Receiver is currently configured to receive data. +receiver_video.subscription.active
: (boolean) Receiver is enabled and configured to receive data.receiver_video.subscription.sender_id
: (string | nil) UUID of the Sender from which this Receiver is currently configured to receive data. Only set if it is active and receiving from an NMOS Sender; otherwise null. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_video.transport
: Transport type accepted by the Receiver in URN format. Possible content:- (string) Must match the pattern:
/^urn:x-nmos:transport:/
.
or
- (any)
- (string) Must match the pattern:
receiver_video.caps
: (table/receiver_video) Capabilities. +receiver_video.caps.media_types
: (array of items) Subclassification of the formats accepted using IANA assigned media types. +item
: Possible content: +- (string) Possible values:
{"video/raw","video/H264","video/vc2"}
.
or
- (string) Must match the pattern:
/^video\/[^\s\/]+$/
.
- (string) Possible values:
receiver_video.format
: (string/uri) Type of Flow accepted by the Receiver as a URN. Possible values:{"urn:x-nmos:format:video"}
.receiver_audio
: Describes an audio Receiver. +receiver_audio.description
: (string) Detailed description of the resource.receiver_audio.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_audio.label
: (string) Freeform string label for the resource.receiver_audio.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.receiver_audio.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.receiver_audio.device_id
: (string) Device ID which this Receiver forms part of. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_audio.interface_bindings
: (array of items) Binding of Receiver ingress ports to interfaces on the parent Node.. +item
: (string)
receiver_audio.subscription
: (table/receiver_audio) Object indicating how this Receiver is currently configured to receive data. +receiver_audio.subscription.active
: (boolean) Receiver is enabled and configured to receive data.receiver_audio.subscription.sender_id
: (string | nil) UUID of the Sender from which this Receiver is currently configured to receive data. Only set if it is active and receiving from an NMOS Sender; otherwise null. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_audio.transport
: Transport type accepted by the Receiver in URN format. Possible content:- (string) Must match the pattern:
/^urn:x-nmos:transport:/
.
or
- (any)
- (string) Must match the pattern:
receiver_audio.caps
: (table/receiver_audio) Capabilities. +receiver_audio.caps.media_types
: (array of items) Subclassification of the formats accepted using IANA assigned media types. +item
: Possible content: +- (string) Possible values:
{"audio/L24","audio/L20","audio/L16","audio/L8"}
.
or
- (string) Must match the pattern:
/^audio\/[^\s\/]+$/
.
- (string) Possible values:
receiver_audio.format
: (string/uri) Type of Flow accepted by the Receiver as a URN. Possible values:{"urn:x-nmos:format:audio"}
.receiver_data
: Describes a data Receiver. +receiver_data.description
: (string) Detailed description of the resource.receiver_data.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_data.label
: (string) Freeform string label for the resource.receiver_data.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.receiver_data.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.receiver_data.device_id
: (string) Device ID which this Receiver forms part of. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_data.interface_bindings
: (array of items) Binding of Receiver ingress ports to interfaces on the parent Node.. +item
: (string)
receiver_data.subscription
: (table/receiver_data) Object indicating how this Receiver is currently configured to receive data. +receiver_data.subscription.active
: (boolean) Receiver is enabled and configured to receive data.receiver_data.subscription.sender_id
: (string | nil) UUID of the Sender from which this Receiver is currently configured to receive data. Only set if it is active and receiving from an NMOS Sender; otherwise null. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_data.transport
: Transport type accepted by the Receiver in URN format. Possible content:- (string) Must match the pattern:
/^urn:x-nmos:transport:/
.
or
- (any)
- (string) Must match the pattern:
receiver_data.caps
: (table/receiver_data) Capabilities. +receiver_data.caps.event_types
: (array of items) Subclassification of the event types accepted defined by the AMWA IS-07 specification. +item
: (string)
receiver_data.caps.media_types
: (array of items) Subclassification of the formats accepted using IANA assigned media types. +item
: Possible content: +- (string) Possible values:
{"video/smpte291","application/json"}
.
or
- (string) Must match the pattern:
/^[^\s\/]+\/[^\s\/]+$/
.
- (string) Possible values:
receiver_data.format
: (string/uri) Type of Flow accepted by the Receiver as a URN. Possible values:{"urn:x-nmos:format:data"}
.receiver_mux
: Describes a mux Receiver. +receiver_mux.description
: (string) Detailed description of the resource.receiver_mux.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_mux.label
: (string) Freeform string label for the resource.receiver_mux.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.receiver_mux.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.receiver_mux.device_id
: (string) Device ID which this Receiver forms part of. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_mux.interface_bindings
: (array of items) Binding of Receiver ingress ports to interfaces on the parent Node.. +item
: (string)
receiver_mux.subscription
: (table/receiver_mux) Object indicating how this Receiver is currently configured to receive data. +receiver_mux.subscription.active
: (boolean) Receiver is enabled and configured to receive data.receiver_mux.subscription.sender_id
: (string | nil) UUID of the Sender from which this Receiver is currently configured to receive data. Only set if it is active and receiving from an NMOS Sender; otherwise null. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_mux.transport
: Transport type accepted by the Receiver in URN format. Possible content:- (string) Must match the pattern:
/^urn:x-nmos:transport:/
.
or
- (any)
- (string) Must match the pattern:
receiver_mux.caps
: (table/receiver_mux) Capabilities. +receiver_mux.caps.media_types
: (array of items) Subclassification of the formats accepted using IANA assigned media types. +item
: Possible content: +- (string) Possible values:
{"video/SMPTE2022-6"}
.
or
- (string) Must match the pattern:
/^[^\s\/]+\/[^\s\/]+$/
.
- (string) Possible values:
receiver_mux.format
: (string/uri) Type of Flow accepted by the Receiver as a URN. Possible values:{"urn:x-nmos:format:mux"}
.
Example:
{ api = { endpoints = { { host = "172.29.80.65", port = 12345, protocol = "http" }; { authorization = false; host = "172.29.80.65"; port = 443; protocol = "https"; }; }; versions = { "v1.0", "v1.1", "v1.2", "v1.3" }; }; caps = { }; clocks = { { name = "clk0", ref_type = "internal" }; { gmid = "08-00-11-ff-fe-21-e1-b0"; locked = true; name = "clk1"; ref_type = "ptp"; traceable = true; version = "IEEE1588-2008"; }; }; description = "host1"; hostname = "host1"; href = "http://172.29.80.65:12345/"; id = "3b8be755-08ff-452b-b217-c9151eb21193"; interfaces = { { attached_network_device = { chassis_id = "2f-8c-af-a8-11-74", port_id = "Ethernet 1/3" }; chassis_id = "b3-cd-09-bb-9b-d8"; name = "eth0"; port_id = "b3-cd-09-bb-9b-d8"; }; { attached_network_device = { chassis_id = "2d-51-2b-de-4a-32", port_id = "Ethernet 1/2" }; chassis_id = "b3-cd-09-bb-9b-d8"; name = "eth1"; port_id = "b3-cd-09-bb-9b-d9"; }; }; label = "host1"; services = { { authorization = false; href = "https://172.29.80.65:443/x-manufacturer/pipelinemanager/"; type = "urn:x-manufacturer:service:pipelinemanager"; }; { authorization = false; href = "https://172.29.80.65:443/x-manufacturer/status/"; type = "urn:x-manufacturer:service:status"; }; { authorization = false; href = "https://172.29.80.65:443/x-manufacturer/tally/"; type = "urn:x-manufacturer:service:tally"; }; { authorization = false; href = "https://172.29.80.65:443/x-manufacturer/mdnsbridge/"; type = "urn:x-manufacturer:service:mdnsbridge"; }; { authorization = false; href = "https://172.29.80.65:443/x-manufacturer/storequery/"; type = "urn:x-manufacturer:service:storequery"; }; }; tags = { }; version = "1441973902:879053935"; }
Or
-
table/registrationapi_resource_response
(status 201) The expected response for a create operation performed for a previously unregistered resource
- Returning a registered resource from the Registration API. Possible content:
node
: Describes the Node and the services which run on it. +node.description
: (string) Detailed description of the resource.node.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.node.label
: (string) Freeform string label for the resource.node.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.node.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.node.api
: (table/node) URL fragments required to connect to the Node API. +node.api.endpoints
: (array of items) Host, port and protocol details required to connect to the API. +item
: (table/node) +item.authorization
: (boolean) This endpoint requires authorization.item.host
: IP address or hostname which the Node API is running on. Possible content: +- (string/hostname) or
- (string/ipv4) or
- (string/ipv6)
item.port
: (number/integer) Port number which the Node API is running on. Minimum:1
. Maximum:65535
.item.protocol
: (string) Protocol supported by this instance of the Node API. Possible values:{"http","https"}
.
node.api.versions
: (array of items) Supported API versions running on this Node. +item
: (string) Must match the pattern:/^v[0-9]+\.[0-9]+$/
.
node.caps
: (table/node) Capabilities (not yet defined).node.clocks
: (array of items) Clocks made available to Devices owned by this Node. +item
: Possible content: +- (table/clock_internal) Describes a clock with no external reference. +
- (string) Name of this refclock (unique for this set of clocks). Must match the pattern:
/^clk[0-9]+$/
. - (string) Type of external reference used by this clock. Possible values:
{"internal"}
. - (table/clock_ptp) Describes a clock referenced to PTP. +
- (string) ID of the PTP reference used by this clock. Must match the pattern:
/^[0-9a-f]{2}-[0-9a-f]{2}-[0-9a-f]{2}-[0-9a-f]{2}-[0-9a-f]{2}-[0-9a-f]{2}-[0-9a-f]{2}-[0-9a-f]{2}$/
. - (boolean) Lock state of this clock to the external reference. If true, this device follows the external reference, otherwise it has no defined relationship to the external reference.
- (string) Name of this refclock (unique for this set of clocks). Must match the pattern:
/^clk[0-9]+$/
. - (string) Type of external reference used by this clock. Possible values:
{"ptp"}
. - (boolean) External refclock is synchronised to International Atomic Time (TAI).
- (string) Version of PTP reference used by this clock. Possible values:
{"IEEE1588-2008"}
.
- (table/clock_internal) Describes a clock with no external reference. +
node.hostname
: (string/hostname) Node hostname (optional, deprecated).node.href
: (string/uri) HTTP access href for the Node's API (deprecated).node.interfaces
: (array of items) Network interfaces made available to devices owned by this Node. Port IDs and Chassis IDs are used to inform topology discovery via IS-06, and require that interfaces implement ARP at a minimum, and ideally LLDP.. +item
: (table/node) +item.attached_network_device
: (table/node) +item.attached_network_device.chassis_id
: Chassis ID of the attached network device, as signalled in LLDP received by this Node. Possible content: +- (string) When the Chassis ID is a MAC address, use this format. Must match the pattern:
/^([0-9a-f]{2}-){5}([0-9a-f]{2})$/
.
or
- (string) When the Chassis ID is anything other than a MAC address, a freeform string may be used. Must match the pattern:
/^.+$/
.
- (string) When the Chassis ID is a MAC address, use this format. Must match the pattern:
item.attached_network_device.port_id
: Port ID of the attached network device, as signalled in LLDP received by this Node. Possible content: +- (string) When the Port ID is a MAC address, use this format. Must match the pattern:
/^([0-9a-f]{2}-){5}([0-9a-f]{2})$/
.
or
- (string) When the Port ID is anything other than a MAC address, a freeform string may be used. Must match the pattern:
/^.+$/
.
- (string) When the Port ID is a MAC address, use this format. Must match the pattern:
item.chassis_id
: Chassis ID of the interface, as signalled in LLDP from this node. Set to null where LLDP is unsuitable for use (ie. virtualised environments). Possible content: +- (string) When the Chassis ID is a MAC address, use this format. Must match the pattern:
/^([0-9a-f]{2}-){5}([0-9a-f]{2})$/
.
or
- (string) When the Chassis ID is anything other than a MAC address, a freeform string may be used. Must match the pattern:
/^.+$/
.
or
- (nil) When the Chassis ID is unavailable it should be set to null.
- (string) When the Chassis ID is a MAC address, use this format. Must match the pattern:
item.name
: (string) Name of the interface (unique in scope of this node). This attribute is used by sub-resources of this node such as senders and receivers to refer to interfaces to which they are bound.item.port_id
: (string) Port ID of the interface, as signalled in LLDP or via ARP responses from this node. Must be a MAC address. Must match the pattern:/^([0-9a-f]{2}-){5}([0-9a-f]{2})$/
.
node.services
: (array of items) Array of objects containing a URN format type and href. +item
: (table/node) +item.authorization
: (boolean) This endpoint requires authorization.item.href
: (string/uri) URL to reach a service running on the Node.item.type
: (string/uri) URN identifying the type of service.
device
: Describes a Device. +device.description
: (string) Detailed description of the resource.device.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.device.label
: (string) Freeform string label for the resource.device.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.device.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.device.controls
: (array of items) Control endpoints exposed for the Device. +item
: (table/device) +item.authorization
: (boolean) This endpoint requires authorization.item.href
: (string/uri) URL to reach a control endpoint, whether http or otherwise.item.type
: (string/uri) URN identifying the control format.
device.node_id
: (string) Globally unique identifier for the Node which initially created the Device. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.device.receivers
: (array of items) UUIDs of Receivers attached to the Device (deprecated). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
device.senders
: (array of items) UUIDs of Senders attached to the Device (deprecated). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
device.type
: Device type URN. Possible content:- (string) Must match the pattern:
/^urn:x-nmos:device:/
.
or
- (any)
- (string) Must match the pattern:
source
: Describes a Source. Possible content:source_generic
: Describes a generic Source. +source_generic.description
: (string) Detailed description of the resource.source_generic.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.source_generic.label
: (string) Freeform string label for the resource.source_generic.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.source_generic.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.source_generic.caps
: (table/source_generic) Capabilities (not yet defined).source_generic.clock_name
: (string | nil) Reference to clock in the originating Node. Must match the pattern:/^clk[0-9]+$/
.source_generic.device_id
: (string) Globally unique identifier for the Device which initially created the Source. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.source_generic.grain_rate
: (table/source_generic) Maximum number of Grains per second for Flows derived from this Source. Corresponding Flow Grain rates may override this attribute. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Sources only. +source_generic.grain_rate.denominator
: (number/integer) Denominator.source_generic.grain_rate.numerator
: (number/integer) Numerator.source_generic.parents
: (array of items) Array of UUIDs representing the Source IDs of Grains which came together at the input to this Source (may change over the lifetime of this Source). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
source_generic.format
: (string/uri) Format of the data coming from the Source as a URN. Possible values:{"urn:x-nmos:format:video","urn:x-nmos:format:mux"}
.source_audio
: Describes an audio Source. +source_audio.description
: (string) Detailed description of the resource.source_audio.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.source_audio.label
: (string) Freeform string label for the resource.source_audio.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.source_audio.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.source_audio.caps
: (table/source_audio) Capabilities (not yet defined).source_audio.clock_name
: (string | nil) Reference to clock in the originating Node. Must match the pattern:/^clk[0-9]+$/
.source_audio.device_id
: (string) Globally unique identifier for the Device which initially created the Source. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.source_audio.grain_rate
: (table/source_audio) Maximum number of Grains per second for Flows derived from this Source. Corresponding Flow Grain rates may override this attribute. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Sources only. +source_audio.grain_rate.denominator
: (number/integer) Denominator.source_audio.grain_rate.numerator
: (number/integer) Numerator.source_audio.parents
: (array of items) Array of UUIDs representing the Source IDs of Grains which came together at the input to this Source (may change over the lifetime of this Source). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
source_audio.channels
: (array of items) Array of objects describing the audio channels. +item
: (table/source_audio) +item.label
: (string) Label for this channel (free text).item.symbol
: Symbol for this channel (from VSF TR-03 Appendix A). Possible content:- (string) Possible values:
{"L","R","C","LFE","Ls","Rs","Lss","Rss","Lrs","Rrs","Lc","Rc","Cs","HI","VIN","M1","M2","Lt","Rt","Lst","Rst","S"}
.
or
- (string) Numbered Source Channel. Must match the pattern:
/^NSC(0[0-9][0-9]|1[0-1][0-9]|12[0-8])$/
.
or
- (string) Undefined channel. Must match the pattern:
/^U(0[1-9]|[1-5][0-9]|6[0-4])$/
.
- (string) Possible values:
source_audio.format
: (string/uri) Format of the data coming from the Source as a URN. Possible values:{"urn:x-nmos:format:audio"}
.source_data
: Describes a data Source. +source_data.description
: (string) Detailed description of the resource.source_data.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.source_data.label
: (string) Freeform string label for the resource.source_data.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.source_data.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.source_data.caps
: (table/source_data) Capabilities (not yet defined).source_data.clock_name
: (string | nil) Reference to clock in the originating Node. Must match the pattern:/^clk[0-9]+$/
.source_data.device_id
: (string) Globally unique identifier for the Device which initially created the Source. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.source_data.grain_rate
: (table/source_data) Maximum number of Grains per second for Flows derived from this Source. Corresponding Flow Grain rates may override this attribute. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Sources only. +source_data.grain_rate.denominator
: (number/integer) Denominator.source_data.grain_rate.numerator
: (number/integer) Numerator.source_data.parents
: (array of items) Array of UUIDs representing the Source IDs of Grains which came together at the input to this Source (may change over the lifetime of this Source). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
source_data.event_type
: (string) Event type generated by this Source, if applicable.source_data.format
: (string/uri) Format of the data coming from the Source as a URN. Possible values:{"urn:x-nmos:format:data"}
.
or
flow
: Describes a Flow. Possible content: +flow
: Describes a raw Video Flow. +flow.description
: (string) Detailed description of the resource.flow.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.label
: (string) Freeform string label for the resource.flow.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.flow.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.flow.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.grain_rate
: (table/flow_video_raw) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +flow.grain_rate.denominator
: (number/integer) Denominator.flow.grain_rate.numerator
: (number/integer) Numerator.flow.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
flow.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.colorspace
: Colorspace used for the video. Any values not defined in the enum should be defined in the NMOS Parameter Registers. Possible content: +- (string) Possible values:
{"BT601","BT709","BT2020","BT2100"}
.
or
- (string) Must match the pattern:
/^\S+$/
.
- (string) Possible values:
flow.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:video"}
.flow.frame_height
: (number/integer) Height of the picture in pixels.flow.frame_width
: (number/integer) Width of the picture in pixels.flow.interlace_mode
: (string) Interlaced video mode for frames in this Flow. Possible values:{"progressive","interlaced_tff","interlaced_bff","interlaced_psf"}
.flow.transfer_characteristic
: Transfer characteristic. Any values not defined in the enum should be defined in the NMOS Parameter Registers. Possible content: +- (string) Possible values:
{"SDR","HLG","PQ"}
.
or
- (string) Must match the pattern:
/^\S+$/
.
- (string) Possible values:
flow.components
: (array of items) Array of objects describing the components. +item
: (table/flow_video_raw) +item.bit_depth
: (number/integer) Number of bits used to describe each sample.item.height
: (number/integer) Height of this component in pixels.item.name
: (string) Name of this component. Possible values:{"Y","Cb","Cr","I","Ct","Cp","A","R","G","B","DepthMap"}
.item.width
: (number/integer) Width of this component in pixels.
flow.media_type
: (string) Subclassification of the format using IANA assigned media types. Possible values:{"video/raw"}
.flow
: Describes a coded Video Flow. +flow.description
: (string) Detailed description of the resource.flow.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.label
: (string) Freeform string label for the resource.flow.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.flow.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.flow.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.grain_rate
: (table/flow_video_coded) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +flow.grain_rate.denominator
: (number/integer) Denominator.flow.grain_rate.numerator
: (number/integer) Numerator.flow.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
flow.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.colorspace
: Colorspace used for the video. Any values not defined in the enum should be defined in the NMOS Parameter Registers. Possible content: +- (string) Possible values:
{"BT601","BT709","BT2020","BT2100"}
.
or
- (string) Must match the pattern:
/^\S+$/
.
- (string) Possible values:
flow.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:video"}
.flow.frame_height
: (number/integer) Height of the picture in pixels.flow.frame_width
: (number/integer) Width of the picture in pixels.flow.interlace_mode
: (string) Interlaced video mode for frames in this Flow. Possible values:{"progressive","interlaced_tff","interlaced_bff","interlaced_psf"}
.flow.transfer_characteristic
: Transfer characteristic. Any values not defined in the enum should be defined in the NMOS Parameter Registers. Possible content: +- (string) Possible values:
{"SDR","HLG","PQ"}
.
or
- (string) Must match the pattern:
/^\S+$/
.
- (string) Possible values:
flow.media_type
: Subclassification of the format using IANA assigned media types. Possible content: +- (string) Possible values:
{"video/H264","video/vc2"}
.
or
- (string) Must match the pattern:
/^video\/[^\s\/]+$/
.
- (string) Possible values:
flow
: Describes a raw audio Flow. +flow.description
: (string) Detailed description of the resource.flow.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.label
: (string) Freeform string label for the resource.flow.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.flow.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.flow.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.grain_rate
: (table/flow_audio_raw) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +flow.grain_rate.denominator
: (number/integer) Denominator.flow.grain_rate.numerator
: (number/integer) Numerator.flow.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
flow.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:audio"}
.flow.sample_rate
: (table/flow_audio_raw) Number of audio samples per second for this Flow. +flow.sample_rate.denominator
: (number/integer) Denominator.flow.sample_rate.numerator
: (number/integer) Numerator.flow.bit_depth
: (number/integer) Bit depth of the audio samples.flow.media_type
: Subclassification of the format using IANA assigned media types. Possible content: +- (string) Possible values:
{"audio/L24","audio/L20","audio/L16","audio/L8"}
.
or
- (string) Must match the pattern:
/^audio\/[^\s\/]+$/
.
- (string) Possible values:
flow
: Describes a coded audio Flow. +flow.description
: (string) Detailed description of the resource.flow.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.label
: (string) Freeform string label for the resource.flow.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.flow.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.flow.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.grain_rate
: (table/flow_audio_coded) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +flow.grain_rate.denominator
: (number/integer) Denominator.flow.grain_rate.numerator
: (number/integer) Numerator.flow.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
flow.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:audio"}
.flow.sample_rate
: (table/flow_audio_coded) Number of audio samples per second for this Flow. +flow.sample_rate.denominator
: (number/integer) Denominator.flow.sample_rate.numerator
: (number/integer) Numerator.flow.media_type
: (string) Subclassification of the format using IANA assigned media types. Must match the pattern:/^audio\/[^\s\/]+$/
.flow
: Describes a generic data Flow. +flow.description
: (string) Detailed description of the resource.flow.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.label
: (string) Freeform string label for the resource.flow.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.flow.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.flow.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.grain_rate
: (table/flow_data) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +flow.grain_rate.denominator
: (number/integer) Denominator.flow.grain_rate.numerator
: (number/integer) Numerator.flow.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
flow.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:data"}
.flow.media_type
: (string) Subclassification of the format using IANA assigned media types. Must match the pattern:/^[^\s\/]+\/[^\s\/]+$/
.flow
: Describes an SDI ancillary Flow. +flow.description
: (string) Detailed description of the resource.flow.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.label
: (string) Freeform string label for the resource.flow.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.flow.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.flow.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.grain_rate
: (table/flow_sdianc_data) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +flow.grain_rate.denominator
: (number/integer) Denominator.flow.grain_rate.numerator
: (number/integer) Numerator.flow.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
flow.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.DID_SDID
: (array of items) List of Data identification and Secondary data identification words. +item
: (table/flow_sdianc_data) +item.DID
: (string) Data identification word. Must match the pattern:/^0x[0-9a-fA-F]{2}$/
.item.SDID
: (string) Secondary data identification word. Must match the pattern:/^0x[0-9a-fA-F]{2}$/
.
flow.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:data"}
.flow.media_type
: (string) Subclassification of the format using IANA assigned media types. Possible values:{"video/smpte291"}
.flow
: Describes a JSON based Flow. +flow.description
: (string) Detailed description of the resource.flow.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.label
: (string) Freeform string label for the resource.flow.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.flow.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.flow.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.grain_rate
: (table/flow_json_data) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +flow.grain_rate.denominator
: (number/integer) Denominator.flow.grain_rate.numerator
: (number/integer) Numerator.flow.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
flow.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.event_type
: (string) Event type generated by this Flow, if applicable.flow.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:data"}
.flow.media_type
: (string) Subclassification of the format using IANA assigned media types. Possible values:{"application/json"}
.flow
: Describes a mux Flow. +flow.description
: (string) Detailed description of the resource.flow.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.label
: (string) Freeform string label for the resource.flow.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.flow.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.flow.device_id
: (string) Globally unique identifier for the Device which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.1 onwards). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.grain_rate
: (table/flow_mux) Number of Grains per second for this Flow. Must be an integer division of, or equal to the Grain rate specified by the parent Source. Grain rate matches the frame rate for video (see NMOS Content Model). Specified for periodic Flows only. +flow.grain_rate.denominator
: (number/integer) Denominator.flow.grain_rate.numerator
: (number/integer) Numerator.flow.parents
: (array of items) Array of UUIDs representing the Flow IDs of Grains which came together to generate this Flow (may change over the lifetime of this Flow). +item
: (string) Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.
flow.source_id
: (string) Globally unique identifier for the Source which initially created the Flow. This attribute is used to ensure referential integrity by registry implementations (v1.0 only). Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.flow.format
: (string/uri) Format of the data coming from the Flow as a URN. Possible values:{"urn:x-nmos:format:mux"}
.flow.media_type
: Subclassification of the format using IANA assigned media types. Possible content: +- (string) Possible values:
{"video/SMPTE2022-6"}
.
or
- (string) Must match the pattern:
/^[^\s\/]+\/[^\s\/]+$/
.
- (string) Possible values:
or
sender
: Describes a sender. +sender.description
: (string) Detailed description of the resource.sender.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.sender.label
: (string) Freeform string label for the resource.sender.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.sender.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.sender.caps
: (table/sender) Capabilities of this sender. +sender.device_id
: (string) Device ID which this Sender forms part of. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.sender.flow_id
: (string | nil) ID of the Flow currently passing via this Sender. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.sender.interface_bindings
: (array of items) Binding of Sender egress ports to interfaces on the parent Node.. +item
: (string)
sender.manifest_href
: (string | nil/uri) HTTP(S) accessible URL to a file describing how to connect to the Sender.sender.subscription
: (table/sender) Object indicating how this Sender is currently configured to send data. +sender.subscription.active
: (boolean) Sender is enabled and configured to send data.sender.subscription.receiver_id
: (string | nil) UUID of the Receiver to which this Sender is currently configured to send data. Only set if it is active, uses a unicast push-based transport and is sending to an NMOS Receiver; otherwise null. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.sender.transport
: Transport type used by the Sender in URN format. Possible content:- (string) Must match the pattern:
/^urn:x-nmos:transport:/
.
or
- (any)
- (string) Must match the pattern:
receiver
: Describes a Receiver. Possible content:receiver_video
: Describes a video Receiver. +receiver_video.description
: (string) Detailed description of the resource.receiver_video.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_video.label
: (string) Freeform string label for the resource.receiver_video.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.receiver_video.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.receiver_video.device_id
: (string) Device ID which this Receiver forms part of. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_video.interface_bindings
: (array of items) Binding of Receiver ingress ports to interfaces on the parent Node.. +item
: (string)
receiver_video.subscription
: (table/receiver_video) Object indicating how this Receiver is currently configured to receive data. +receiver_video.subscription.active
: (boolean) Receiver is enabled and configured to receive data.receiver_video.subscription.sender_id
: (string | nil) UUID of the Sender from which this Receiver is currently configured to receive data. Only set if it is active and receiving from an NMOS Sender; otherwise null. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_video.transport
: Transport type accepted by the Receiver in URN format. Possible content:- (string) Must match the pattern:
/^urn:x-nmos:transport:/
.
or
- (any)
- (string) Must match the pattern:
receiver_video.caps
: (table/receiver_video) Capabilities. +receiver_video.caps.media_types
: (array of items) Subclassification of the formats accepted using IANA assigned media types. +item
: Possible content: +- (string) Possible values:
{"video/raw","video/H264","video/vc2"}
.
or
- (string) Must match the pattern:
/^video\/[^\s\/]+$/
.
- (string) Possible values:
receiver_video.format
: (string/uri) Type of Flow accepted by the Receiver as a URN. Possible values:{"urn:x-nmos:format:video"}
.receiver_audio
: Describes an audio Receiver. +receiver_audio.description
: (string) Detailed description of the resource.receiver_audio.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_audio.label
: (string) Freeform string label for the resource.receiver_audio.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.receiver_audio.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.receiver_audio.device_id
: (string) Device ID which this Receiver forms part of. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_audio.interface_bindings
: (array of items) Binding of Receiver ingress ports to interfaces on the parent Node.. +item
: (string)
receiver_audio.subscription
: (table/receiver_audio) Object indicating how this Receiver is currently configured to receive data. +receiver_audio.subscription.active
: (boolean) Receiver is enabled and configured to receive data.receiver_audio.subscription.sender_id
: (string | nil) UUID of the Sender from which this Receiver is currently configured to receive data. Only set if it is active and receiving from an NMOS Sender; otherwise null. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_audio.transport
: Transport type accepted by the Receiver in URN format. Possible content:- (string) Must match the pattern:
/^urn:x-nmos:transport:/
.
or
- (any)
- (string) Must match the pattern:
receiver_audio.caps
: (table/receiver_audio) Capabilities. +receiver_audio.caps.media_types
: (array of items) Subclassification of the formats accepted using IANA assigned media types. +item
: Possible content: +- (string) Possible values:
{"audio/L24","audio/L20","audio/L16","audio/L8"}
.
or
- (string) Must match the pattern:
/^audio\/[^\s\/]+$/
.
- (string) Possible values:
receiver_audio.format
: (string/uri) Type of Flow accepted by the Receiver as a URN. Possible values:{"urn:x-nmos:format:audio"}
.receiver_data
: Describes a data Receiver. +receiver_data.description
: (string) Detailed description of the resource.receiver_data.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_data.label
: (string) Freeform string label for the resource.receiver_data.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.receiver_data.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.receiver_data.device_id
: (string) Device ID which this Receiver forms part of. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_data.interface_bindings
: (array of items) Binding of Receiver ingress ports to interfaces on the parent Node.. +item
: (string)
receiver_data.subscription
: (table/receiver_data) Object indicating how this Receiver is currently configured to receive data. +receiver_data.subscription.active
: (boolean) Receiver is enabled and configured to receive data.receiver_data.subscription.sender_id
: (string | nil) UUID of the Sender from which this Receiver is currently configured to receive data. Only set if it is active and receiving from an NMOS Sender; otherwise null. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_data.transport
: Transport type accepted by the Receiver in URN format. Possible content:- (string) Must match the pattern:
/^urn:x-nmos:transport:/
.
or
- (any)
- (string) Must match the pattern:
receiver_data.caps
: (table/receiver_data) Capabilities. +receiver_data.caps.event_types
: (array of items) Subclassification of the event types accepted defined by the AMWA IS-07 specification. +item
: (string)
receiver_data.caps.media_types
: (array of items) Subclassification of the formats accepted using IANA assigned media types. +item
: Possible content: +- (string) Possible values:
{"video/smpte291","application/json"}
.
or
- (string) Must match the pattern:
/^[^\s\/]+\/[^\s\/]+$/
.
- (string) Possible values:
receiver_data.format
: (string/uri) Type of Flow accepted by the Receiver as a URN. Possible values:{"urn:x-nmos:format:data"}
.receiver_mux
: Describes a mux Receiver. +receiver_mux.description
: (string) Detailed description of the resource.receiver_mux.id
: (string) Globally unique identifier for the resource. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_mux.label
: (string) Freeform string label for the resource.receiver_mux.tags
: (table/resource_core) Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.receiver_mux.version
: (string) String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed. Must match the pattern:/^[0-9]+:[0-9]+$/
.receiver_mux.device_id
: (string) Device ID which this Receiver forms part of. This attribute is used to ensure referential integrity by registry implementations. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_mux.interface_bindings
: (array of items) Binding of Receiver ingress ports to interfaces on the parent Node.. +item
: (string)
receiver_mux.subscription
: (table/receiver_mux) Object indicating how this Receiver is currently configured to receive data. +receiver_mux.subscription.active
: (boolean) Receiver is enabled and configured to receive data.receiver_mux.subscription.sender_id
: (string | nil) UUID of the Sender from which this Receiver is currently configured to receive data. Only set if it is active and receiving from an NMOS Sender; otherwise null. Must match the pattern:/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/
.receiver_mux.transport
: Transport type accepted by the Receiver in URN format. Possible content:- (string) Must match the pattern:
/^urn:x-nmos:transport:/
.
or
- (any)
- (string) Must match the pattern:
receiver_mux.caps
: (table/receiver_mux) Capabilities. +receiver_mux.caps.media_types
: (array of items) Subclassification of the formats accepted using IANA assigned media types. +item
: Possible content: +- (string) Possible values:
{"video/SMPTE2022-6"}
.
or
- (string) Must match the pattern:
/^[^\s\/]+\/[^\s\/]+$/
.
- (string) Possible values:
receiver_mux.format
: (string/uri) Type of Flow accepted by the Receiver as a URN. Possible values:{"urn:x-nmos:format:mux"}
.
Example:
{ api = { endpoints = { { host = "172.29.80.65", port = 12345, protocol = "http" }; { authorization = false; host = "172.29.80.65"; port = 443; protocol = "https"; }; }; versions = { "v1.0", "v1.1", "v1.2", "v1.3" }; }; caps = { }; clocks = { { name = "clk0", ref_type = "internal" }; { gmid = "08-00-11-ff-fe-21-e1-b0"; locked = true; name = "clk1"; ref_type = "ptp"; traceable = true; version = "IEEE1588-2008"; }; }; description = "host1"; hostname = "host1"; href = "http://172.29.80.65:12345/"; id = "3b8be755-08ff-452b-b217-c9151eb21193"; interfaces = { { attached_network_device = { chassis_id = "2f-8c-af-a8-11-74", port_id = "Ethernet 1/3" }; chassis_id = "b3-cd-09-bb-9b-d8"; name = "eth0"; port_id = "b3-cd-09-bb-9b-d8"; }; { attached_network_device = { chassis_id = "2d-51-2b-de-4a-32", port_id = "Ethernet 1/2" }; chassis_id = "b3-cd-09-bb-9b-d8"; name = "eth1"; port_id = "b3-cd-09-bb-9b-d9"; }; }; label = "host1"; services = { { authorization = false; href = "https://172.29.80.65:443/x-manufacturer/pipelinemanager/"; type = "urn:x-manufacturer:service:pipelinemanager"; }; { authorization = false; href = "https://172.29.80.65:443/x-manufacturer/status/"; type = "urn:x-manufacturer:service:status"; }; { authorization = false; href = "https://172.29.80.65:443/x-manufacturer/tally/"; type = "urn:x-manufacturer:service:tally"; }; { authorization = false; href = "https://172.29.80.65:443/x-manufacturer/mdnsbridge/"; type = "urn:x-manufacturer:service:mdnsbridge"; }; { authorization = false; href = "https://172.29.80.65:443/x-manufacturer/storequery/"; type = "urn:x-manufacturer:service:storequery"; }; }; tags = { }; version = "1441973902:879053935"; }
Or
-
table/Error
(status 400) Returned when the POST request is incorrectly formatted, missing mandatory attributes or breaches another condition which a Node is unlikely to be able to automatically correct.
+
result.code
: (number/integer) HTTP error code. Minimum:400
. Maximum:599
.result.debug
: (nil | string) Debug information which may assist a programmer working with the API.result.error
: (string) Human readable message which is suitable for user interface display, and helpful to the user.
Or
-
table/Error
(status 409) Returned when the resource already exists in the registry at a different API version. The correct API version is identified via the Location header.
+
result.code
: (number/integer) HTTP error code. Minimum:400
. Maximum:599
.result.debug
: (nil | string) Debug information which may assist a programmer working with the API.result.error
: (string) Human readable message which is suitable for user interface display, and helpful to the user.
Usage:
registration = require "lua-repl.lib.rest.nmos.registration" api = registration:create_api("http://registration.nmos.acme.example.com") payload = { data = { api = { endpoints = { { host = "172.29.80.65", port = 12345, protocol = "http" }; { authorization = false; host = "172.29.80.65"; port = 443; protocol = "https"; }; }; versions = { "v1.0", "v1.1", "v1.2", "v1.3" }; }; caps = { }; clocks = { { name = "clk0", ref_type = "internal" }; { gmid = "08-00-11-ff-fe-21-e1-b0"; locked = true; name = "clk1"; ref_type = "ptp"; traceable = true; version = "IEEE1588-2008"; }; }; description = "host1"; hostname = "host1"; href = "http://172.29.80.65:12345/"; id = "3b8be755-08ff-452b-b217-c9151eb21193"; interfaces = { { attached_network_device = { chassis_id = "2f-8c-af-a8-11-74", port_id = "Ethernet 1/3" }; chassis_id = "b3-cd-09-bb-9b-d8"; name = "eth0"; port_id = "b3-cd-09-bb-9b-d8"; }; { attached_network_device = { chassis_id = "2d-51-2b-de-4a-32", port_id = "Ethernet 1/2" }; chassis_id = "b3-cd-09-bb-9b-d8"; name = "eth1"; port_id = "b3-cd-09-bb-9b-d9"; }; }; label = "host1"; services = { { authorization = false; href = "https://172.29.80.65:443/x-manufacturer/pipelinemanager/"; type = "urn:x-manufacturer:service:pipelinemanager"; }; { authorization = false; href = "https://172.29.80.65:443/x-manufacturer/status/"; type = "urn:x-manufacturer:service:status"; }; { authorization = false; href = "https://172.29.80.65:443/x-manufacturer/tally/"; type = "urn:x-manufacturer:service:tally"; }; { authorization = false; href = "https://172.29.80.65:443/x-manufacturer/mdnsbridge/"; type = "urn:x-manufacturer:service:mdnsbridge"; }; { authorization = false; href = "https://172.29.80.65:443/x-manufacturer/storequery/"; type = "urn:x-manufacturer:service:storequery"; }; }; tags = { }; version = "1441973902:879053935"; }; type = "node"; } result = api:resource(payload)