Annotation API documentation version v1.0
http://api.example.com/x-nmos/annotation/{version}
- version: required(v1.0)
Overview
The Annotation API is exposed by NMOS Nodes that support update of resource labels, descriptions and tags.
Base
List of paths available from this API
get /
List of paths available from this API
HTTP status code 200
Body
Media type: application/json
Type:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "array",
"description": "Describes the Annotation API base resource",
"title": "Annotation API base resource",
"items": {
"type": "string",
"enum": [
"node/"
]
},
"minItems": 1,
"maxItems": 1,
"uniqueItems": true
}
Example:
[
"node/"
]
Node
List of paths available from this API
get /node
List of paths available from this API
HTTP status code 200
Body
Media type: application/json
Type:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "array",
"description": "Describes the Annotation API node resource",
"title": "Annotation API node resource",
"items": {
"type": "string",
"enum": [
"self/",
"sources/",
"flows/",
"devices/",
"senders/",
"receivers/"
]
},
"minItems": 6,
"maxItems": 6,
"uniqueItems": true
}
Example:
[
"self/",
"sources/",
"flows/",
"devices/",
"senders/",
"receivers/"
]
Get annotations of this Node
A pre-flight check generally used for Cross-Origin Resource Sharing (CORS) purposes
Update annotations of this Node
get /node/self
Get annotations of this Node
HTTP status code 200
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"description": "Describes the foundations of all NMOS resources",
"title": "Base resource",
"required": [
"id",
"version",
"label",
"description",
"tags"
],
"properties": {
"id": {
"description": "Globally unique identifier for the resource",
"type": "string",
"pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$"
},
"version": {
"description": "String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed",
"type": "string",
"pattern": "^[0-9]+:[0-9]+$"
},
"label": {
"description": "Freeform string label for the resource",
"type": "string"
},
"description": {
"description": "Detailed description of the resource",
"type": "string"
},
"tags": {
"description": "Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.",
"type": "object",
"patternProperties": {
"": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
}
}
Example:
{
"version": "1441700172:318426300",
"label": "host1",
"description": "host1",
"tags": {},
"id": "3b8be755-08ff-452b-b217-c9151eb21193"
}
patch /node/self
Update annotations of this Node
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"description": "Describes the foundations of all NMOS resources",
"title": "Base resource",
"additionalProperties": false,
"properties": {
"label": {
"description": "Freeform string label for the resource. Set to null to restore default label.",
"type": ["null", "string"]
},
"description": {
"description": "Detailed description of the resource. Set to null to restore default description.",
"type": ["null", "string"]
},
"tags": {
"description": "Key value set of freeform string tags to aid in filtering resources. Set to null to restore default tags. Values should be represented as an array of strings. Can be empty. Set to null to delete or restore default values for a tag.",
"type": ["null", "object"],
"patternProperties": {
"": {
"type": ["null", "array"],
"items": {
"type": "string"
}
}
}
}
}
}
Examples:
label-description:
{
"label": "fave node",
"description": "my favourite node"
}
tags:
{
"tags": {
"location": null,
"studio": ["HQ2"]
}
}
HTTP status code 200
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"description": "Describes the foundations of all NMOS resources",
"title": "Base resource",
"required": [
"id",
"version",
"label",
"description",
"tags"
],
"properties": {
"id": {
"description": "Globally unique identifier for the resource",
"type": "string",
"pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$"
},
"version": {
"description": "String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed",
"type": "string",
"pattern": "^[0-9]+:[0-9]+$"
},
"label": {
"description": "Freeform string label for the resource",
"type": "string"
},
"description": {
"description": "Detailed description of the resource",
"type": "string"
},
"tags": {
"description": "Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.",
"type": "object",
"patternProperties": {
"": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
}
}
Example:
{
"version": "1441700172:318426300",
"label": "host1",
"description": "host1",
"tags": {},
"id": "3b8be755-08ff-452b-b217-c9151eb21193"
}
HTTP status code 400
Returned when the request did not meet the schema
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"description": "Describes the standard error response which is returned with HTTP codes 400 and above",
"title": "Error response",
"required": [
"code",
"error",
"debug"
],
"properties": {
"code": {
"description": "HTTP error code",
"type": "integer",
"minimum": 400,
"maximum": 599
},
"error": {
"description": "Human readable message which is suitable for user interface display, and helpful to the user",
"type": "string"
},
"debug": {
"description": "Debug information which may assist a programmer working with the API",
"type": ["null", "string"]
}
}
}
HTTP status code 500
Returned when the request did not meet the API's additional constraints
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"description": "Describes the standard error response which is returned with HTTP codes 400 and above",
"title": "Error response",
"required": [
"code",
"error",
"debug"
],
"properties": {
"code": {
"description": "HTTP error code",
"type": "integer",
"minimum": 400,
"maximum": 599
},
"error": {
"description": "Human readable message which is suitable for user interface display, and helpful to the user",
"type": "string"
},
"debug": {
"description": "Debug information which may assist a programmer working with the API",
"type": ["null", "string"]
}
}
}
List Sources
get /node/sources
List Sources
HTTP status code 200
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema",
"type": "array",
"description": "List of resource ID paths",
"title": "Resources base resource",
"items": {
"type": "string",
"pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}/$"
},
"uniqueItems": true
}
Example:
[
"5fbec3b1-1b0f-417d-9059-8b94a47197ed/",
"db3bd465-2772-484f-8fac-830b0471258b/",
"4857f747-96cf-4ed7-8f4b-9497199f1f25/",
"6327c381-1239-41d1-b314-efc719600e26/",
"6327c381-1239-41d1-b315-efc719600e26/",
"fa6258b9-2826-4a0d-81d0-7da9edbc405f/"
]
Get annotations of a single Source
A pre-flight check generally used for Cross-Origin Resource Sharing (CORS) purposes
Update annotations of a single Source
get /node/sources/{sourceId}
Get annotations of a single Source
URI Parameters
- sourceId: required(string - pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$)
HTTP status code 200
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"description": "Describes the foundations of all NMOS resources",
"title": "Base resource",
"required": [
"id",
"version",
"label",
"description",
"tags"
],
"properties": {
"id": {
"description": "Globally unique identifier for the resource",
"type": "string",
"pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$"
},
"version": {
"description": "String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed",
"type": "string",
"pattern": "^[0-9]+:[0-9]+$"
},
"label": {
"description": "Freeform string label for the resource",
"type": "string"
},
"description": {
"description": "Detailed description of the resource",
"type": "string"
},
"tags": {
"description": "Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.",
"type": "object",
"patternProperties": {
"": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
}
}
Example:
{
"version": "1441700172:318426300",
"label": "host1",
"description": "host1",
"tags": {},
"id": "3b8be755-08ff-452b-b217-c9151eb21193"
}
HTTP status code 404
Returned when the requested Source ID does not exist
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"description": "Describes the standard error response which is returned with HTTP codes 400 and above",
"title": "Error response",
"required": [
"code",
"error",
"debug"
],
"properties": {
"code": {
"description": "HTTP error code",
"type": "integer",
"minimum": 400,
"maximum": 599
},
"error": {
"description": "Human readable message which is suitable for user interface display, and helpful to the user",
"type": "string"
},
"debug": {
"description": "Debug information which may assist a programmer working with the API",
"type": ["null", "string"]
}
}
}
options /node/sources/{sourceId}
patch /node/sources/{sourceId}
Update annotations of a single Source
URI Parameters
- sourceId: required(string - pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$)
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"description": "Describes the foundations of all NMOS resources",
"title": "Base resource",
"additionalProperties": false,
"properties": {
"label": {
"description": "Freeform string label for the resource. Set to null to restore default label.",
"type": ["null", "string"]
},
"description": {
"description": "Detailed description of the resource. Set to null to restore default description.",
"type": ["null", "string"]
},
"tags": {
"description": "Key value set of freeform string tags to aid in filtering resources. Set to null to restore default tags. Values should be represented as an array of strings. Can be empty. Set to null to delete or restore default values for a tag.",
"type": ["null", "object"],
"patternProperties": {
"": {
"type": ["null", "array"],
"items": {
"type": "string"
}
}
}
}
}
}
Examples:
label-description:
{
"label": "fave node",
"description": "my favourite node"
}
tags:
{
"tags": {
"location": null,
"studio": ["HQ2"]
}
}
HTTP status code 200
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"description": "Describes the foundations of all NMOS resources",
"title": "Base resource",
"required": [
"id",
"version",
"label",
"description",
"tags"
],
"properties": {
"id": {
"description": "Globally unique identifier for the resource",
"type": "string",
"pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$"
},
"version": {
"description": "String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed",
"type": "string",
"pattern": "^[0-9]+:[0-9]+$"
},
"label": {
"description": "Freeform string label for the resource",
"type": "string"
},
"description": {
"description": "Detailed description of the resource",
"type": "string"
},
"tags": {
"description": "Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.",
"type": "object",
"patternProperties": {
"": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
}
}
Example:
{
"version": "1441700172:318426300",
"label": "host1",
"description": "host1",
"tags": {},
"id": "3b8be755-08ff-452b-b217-c9151eb21193"
}
HTTP status code 400
Returned when the request did not meet the schema
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"description": "Describes the standard error response which is returned with HTTP codes 400 and above",
"title": "Error response",
"required": [
"code",
"error",
"debug"
],
"properties": {
"code": {
"description": "HTTP error code",
"type": "integer",
"minimum": 400,
"maximum": 599
},
"error": {
"description": "Human readable message which is suitable for user interface display, and helpful to the user",
"type": "string"
},
"debug": {
"description": "Debug information which may assist a programmer working with the API",
"type": ["null", "string"]
}
}
}
HTTP status code 404
Returned when the requested Source ID does not exist
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"description": "Describes the standard error response which is returned with HTTP codes 400 and above",
"title": "Error response",
"required": [
"code",
"error",
"debug"
],
"properties": {
"code": {
"description": "HTTP error code",
"type": "integer",
"minimum": 400,
"maximum": 599
},
"error": {
"description": "Human readable message which is suitable for user interface display, and helpful to the user",
"type": "string"
},
"debug": {
"description": "Debug information which may assist a programmer working with the API",
"type": ["null", "string"]
}
}
}
HTTP status code 500
Returned when the request did not meet the API's additional constraints
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"description": "Describes the standard error response which is returned with HTTP codes 400 and above",
"title": "Error response",
"required": [
"code",
"error",
"debug"
],
"properties": {
"code": {
"description": "HTTP error code",
"type": "integer",
"minimum": 400,
"maximum": 599
},
"error": {
"description": "Human readable message which is suitable for user interface display, and helpful to the user",
"type": "string"
},
"debug": {
"description": "Debug information which may assist a programmer working with the API",
"type": ["null", "string"]
}
}
}
List Flows
get /node/flows
List Flows
HTTP status code 200
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema",
"type": "array",
"description": "List of resource ID paths",
"title": "Resources base resource",
"items": {
"type": "string",
"pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}/$"
},
"uniqueItems": true
}
Example:
[
"5fbec3b1-1b0f-417d-9059-8b94a47197ed/",
"db3bd465-2772-484f-8fac-830b0471258b/",
"4857f747-96cf-4ed7-8f4b-9497199f1f25/",
"6327c381-1239-41d1-b314-efc719600e26/",
"6327c381-1239-41d1-b315-efc719600e26/",
"fa6258b9-2826-4a0d-81d0-7da9edbc405f/"
]
Get annotations of a single Flow
A pre-flight check generally used for Cross-Origin Resource Sharing (CORS) purposes
Update annotations of a single Flow
get /node/flows/{flowId}
Get annotations of a single Flow
URI Parameters
- flowId: required(string - pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$)
HTTP status code 200
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"description": "Describes the foundations of all NMOS resources",
"title": "Base resource",
"required": [
"id",
"version",
"label",
"description",
"tags"
],
"properties": {
"id": {
"description": "Globally unique identifier for the resource",
"type": "string",
"pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$"
},
"version": {
"description": "String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed",
"type": "string",
"pattern": "^[0-9]+:[0-9]+$"
},
"label": {
"description": "Freeform string label for the resource",
"type": "string"
},
"description": {
"description": "Detailed description of the resource",
"type": "string"
},
"tags": {
"description": "Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.",
"type": "object",
"patternProperties": {
"": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
}
}
Example:
{
"version": "1441700172:318426300",
"label": "host1",
"description": "host1",
"tags": {},
"id": "3b8be755-08ff-452b-b217-c9151eb21193"
}
HTTP status code 404
Returned when the requested Flow ID does not exist
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"description": "Describes the standard error response which is returned with HTTP codes 400 and above",
"title": "Error response",
"required": [
"code",
"error",
"debug"
],
"properties": {
"code": {
"description": "HTTP error code",
"type": "integer",
"minimum": 400,
"maximum": 599
},
"error": {
"description": "Human readable message which is suitable for user interface display, and helpful to the user",
"type": "string"
},
"debug": {
"description": "Debug information which may assist a programmer working with the API",
"type": ["null", "string"]
}
}
}
options /node/flows/{flowId}
patch /node/flows/{flowId}
Update annotations of a single Flow
URI Parameters
- flowId: required(string - pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$)
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"description": "Describes the foundations of all NMOS resources",
"title": "Base resource",
"additionalProperties": false,
"properties": {
"label": {
"description": "Freeform string label for the resource. Set to null to restore default label.",
"type": ["null", "string"]
},
"description": {
"description": "Detailed description of the resource. Set to null to restore default description.",
"type": ["null", "string"]
},
"tags": {
"description": "Key value set of freeform string tags to aid in filtering resources. Set to null to restore default tags. Values should be represented as an array of strings. Can be empty. Set to null to delete or restore default values for a tag.",
"type": ["null", "object"],
"patternProperties": {
"": {
"type": ["null", "array"],
"items": {
"type": "string"
}
}
}
}
}
}
Examples:
label-description:
{
"label": "fave node",
"description": "my favourite node"
}
tags:
{
"tags": {
"location": null,
"studio": ["HQ2"]
}
}
HTTP status code 200
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"description": "Describes the foundations of all NMOS resources",
"title": "Base resource",
"required": [
"id",
"version",
"label",
"description",
"tags"
],
"properties": {
"id": {
"description": "Globally unique identifier for the resource",
"type": "string",
"pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$"
},
"version": {
"description": "String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed",
"type": "string",
"pattern": "^[0-9]+:[0-9]+$"
},
"label": {
"description": "Freeform string label for the resource",
"type": "string"
},
"description": {
"description": "Detailed description of the resource",
"type": "string"
},
"tags": {
"description": "Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.",
"type": "object",
"patternProperties": {
"": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
}
}
Example:
{
"version": "1441700172:318426300",
"label": "host1",
"description": "host1",
"tags": {},
"id": "3b8be755-08ff-452b-b217-c9151eb21193"
}
HTTP status code 400
Returned when the request did not meet the schema
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"description": "Describes the standard error response which is returned with HTTP codes 400 and above",
"title": "Error response",
"required": [
"code",
"error",
"debug"
],
"properties": {
"code": {
"description": "HTTP error code",
"type": "integer",
"minimum": 400,
"maximum": 599
},
"error": {
"description": "Human readable message which is suitable for user interface display, and helpful to the user",
"type": "string"
},
"debug": {
"description": "Debug information which may assist a programmer working with the API",
"type": ["null", "string"]
}
}
}
HTTP status code 404
Returned when the requested Flow ID does not exist
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"description": "Describes the standard error response which is returned with HTTP codes 400 and above",
"title": "Error response",
"required": [
"code",
"error",
"debug"
],
"properties": {
"code": {
"description": "HTTP error code",
"type": "integer",
"minimum": 400,
"maximum": 599
},
"error": {
"description": "Human readable message which is suitable for user interface display, and helpful to the user",
"type": "string"
},
"debug": {
"description": "Debug information which may assist a programmer working with the API",
"type": ["null", "string"]
}
}
}
HTTP status code 500
Returned when the request did not meet the API's additional constraints
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"description": "Describes the standard error response which is returned with HTTP codes 400 and above",
"title": "Error response",
"required": [
"code",
"error",
"debug"
],
"properties": {
"code": {
"description": "HTTP error code",
"type": "integer",
"minimum": 400,
"maximum": 599
},
"error": {
"description": "Human readable message which is suitable for user interface display, and helpful to the user",
"type": "string"
},
"debug": {
"description": "Debug information which may assist a programmer working with the API",
"type": ["null", "string"]
}
}
}
List Devices
get /node/devices
List Devices
HTTP status code 200
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema",
"type": "array",
"description": "List of resource ID paths",
"title": "Resources base resource",
"items": {
"type": "string",
"pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}/$"
},
"uniqueItems": true
}
Example:
[
"5fbec3b1-1b0f-417d-9059-8b94a47197ed/",
"db3bd465-2772-484f-8fac-830b0471258b/",
"4857f747-96cf-4ed7-8f4b-9497199f1f25/",
"6327c381-1239-41d1-b314-efc719600e26/",
"6327c381-1239-41d1-b315-efc719600e26/",
"fa6258b9-2826-4a0d-81d0-7da9edbc405f/"
]
Get annotations of a single Device
A pre-flight check generally used for Cross-Origin Resource Sharing (CORS) purposes
Update annotations of a single Device
get /node/devices/{deviceId}
Get annotations of a single Device
URI Parameters
- deviceId: required(string - pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$)
HTTP status code 200
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"description": "Describes the foundations of all NMOS resources",
"title": "Base resource",
"required": [
"id",
"version",
"label",
"description",
"tags"
],
"properties": {
"id": {
"description": "Globally unique identifier for the resource",
"type": "string",
"pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$"
},
"version": {
"description": "String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed",
"type": "string",
"pattern": "^[0-9]+:[0-9]+$"
},
"label": {
"description": "Freeform string label for the resource",
"type": "string"
},
"description": {
"description": "Detailed description of the resource",
"type": "string"
},
"tags": {
"description": "Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.",
"type": "object",
"patternProperties": {
"": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
}
}
Example:
{
"version": "1441700172:318426300",
"label": "host1",
"description": "host1",
"tags": {},
"id": "3b8be755-08ff-452b-b217-c9151eb21193"
}
HTTP status code 404
Returned when the requested Device ID does not exist
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"description": "Describes the standard error response which is returned with HTTP codes 400 and above",
"title": "Error response",
"required": [
"code",
"error",
"debug"
],
"properties": {
"code": {
"description": "HTTP error code",
"type": "integer",
"minimum": 400,
"maximum": 599
},
"error": {
"description": "Human readable message which is suitable for user interface display, and helpful to the user",
"type": "string"
},
"debug": {
"description": "Debug information which may assist a programmer working with the API",
"type": ["null", "string"]
}
}
}
options /node/devices/{deviceId}
patch /node/devices/{deviceId}
Update annotations of a single Device
URI Parameters
- deviceId: required(string - pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$)
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"description": "Describes the foundations of all NMOS resources",
"title": "Base resource",
"additionalProperties": false,
"properties": {
"label": {
"description": "Freeform string label for the resource. Set to null to restore default label.",
"type": ["null", "string"]
},
"description": {
"description": "Detailed description of the resource. Set to null to restore default description.",
"type": ["null", "string"]
},
"tags": {
"description": "Key value set of freeform string tags to aid in filtering resources. Set to null to restore default tags. Values should be represented as an array of strings. Can be empty. Set to null to delete or restore default values for a tag.",
"type": ["null", "object"],
"patternProperties": {
"": {
"type": ["null", "array"],
"items": {
"type": "string"
}
}
}
}
}
}
Examples:
label-description:
{
"label": "fave node",
"description": "my favourite node"
}
tags:
{
"tags": {
"location": null,
"studio": ["HQ2"]
}
}
HTTP status code 200
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"description": "Describes the foundations of all NMOS resources",
"title": "Base resource",
"required": [
"id",
"version",
"label",
"description",
"tags"
],
"properties": {
"id": {
"description": "Globally unique identifier for the resource",
"type": "string",
"pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$"
},
"version": {
"description": "String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed",
"type": "string",
"pattern": "^[0-9]+:[0-9]+$"
},
"label": {
"description": "Freeform string label for the resource",
"type": "string"
},
"description": {
"description": "Detailed description of the resource",
"type": "string"
},
"tags": {
"description": "Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.",
"type": "object",
"patternProperties": {
"": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
}
}
Example:
{
"version": "1441700172:318426300",
"label": "host1",
"description": "host1",
"tags": {},
"id": "3b8be755-08ff-452b-b217-c9151eb21193"
}
HTTP status code 400
Returned when the request did not meet the schema
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"description": "Describes the standard error response which is returned with HTTP codes 400 and above",
"title": "Error response",
"required": [
"code",
"error",
"debug"
],
"properties": {
"code": {
"description": "HTTP error code",
"type": "integer",
"minimum": 400,
"maximum": 599
},
"error": {
"description": "Human readable message which is suitable for user interface display, and helpful to the user",
"type": "string"
},
"debug": {
"description": "Debug information which may assist a programmer working with the API",
"type": ["null", "string"]
}
}
}
HTTP status code 404
Returned when the requested Device ID does not exist
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"description": "Describes the standard error response which is returned with HTTP codes 400 and above",
"title": "Error response",
"required": [
"code",
"error",
"debug"
],
"properties": {
"code": {
"description": "HTTP error code",
"type": "integer",
"minimum": 400,
"maximum": 599
},
"error": {
"description": "Human readable message which is suitable for user interface display, and helpful to the user",
"type": "string"
},
"debug": {
"description": "Debug information which may assist a programmer working with the API",
"type": ["null", "string"]
}
}
}
HTTP status code 500
Returned when the request did not meet the API's additional constraints
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"description": "Describes the standard error response which is returned with HTTP codes 400 and above",
"title": "Error response",
"required": [
"code",
"error",
"debug"
],
"properties": {
"code": {
"description": "HTTP error code",
"type": "integer",
"minimum": 400,
"maximum": 599
},
"error": {
"description": "Human readable message which is suitable for user interface display, and helpful to the user",
"type": "string"
},
"debug": {
"description": "Debug information which may assist a programmer working with the API",
"type": ["null", "string"]
}
}
}
List Senders
get /node/senders
List Senders
HTTP status code 200
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema",
"type": "array",
"description": "List of resource ID paths",
"title": "Resources base resource",
"items": {
"type": "string",
"pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}/$"
},
"uniqueItems": true
}
Example:
[
"5fbec3b1-1b0f-417d-9059-8b94a47197ed/",
"db3bd465-2772-484f-8fac-830b0471258b/",
"4857f747-96cf-4ed7-8f4b-9497199f1f25/",
"6327c381-1239-41d1-b314-efc719600e26/",
"6327c381-1239-41d1-b315-efc719600e26/",
"fa6258b9-2826-4a0d-81d0-7da9edbc405f/"
]
Get annotations of a single Sender
A pre-flight check generally used for Cross-Origin Resource Sharing (CORS) purposes
Update annotations of a single Sender
get /node/senders/{senderId}
Get annotations of a single Sender
URI Parameters
- senderId: required(string - pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$)
HTTP status code 200
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"description": "Describes the foundations of all NMOS resources",
"title": "Base resource",
"required": [
"id",
"version",
"label",
"description",
"tags"
],
"properties": {
"id": {
"description": "Globally unique identifier for the resource",
"type": "string",
"pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$"
},
"version": {
"description": "String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed",
"type": "string",
"pattern": "^[0-9]+:[0-9]+$"
},
"label": {
"description": "Freeform string label for the resource",
"type": "string"
},
"description": {
"description": "Detailed description of the resource",
"type": "string"
},
"tags": {
"description": "Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.",
"type": "object",
"patternProperties": {
"": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
}
}
Example:
{
"version": "1441700172:318426300",
"label": "host1",
"description": "host1",
"tags": {},
"id": "3b8be755-08ff-452b-b217-c9151eb21193"
}
HTTP status code 404
Returned when the requested Sender ID does not exist
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"description": "Describes the standard error response which is returned with HTTP codes 400 and above",
"title": "Error response",
"required": [
"code",
"error",
"debug"
],
"properties": {
"code": {
"description": "HTTP error code",
"type": "integer",
"minimum": 400,
"maximum": 599
},
"error": {
"description": "Human readable message which is suitable for user interface display, and helpful to the user",
"type": "string"
},
"debug": {
"description": "Debug information which may assist a programmer working with the API",
"type": ["null", "string"]
}
}
}
options /node/senders/{senderId}
patch /node/senders/{senderId}
Update annotations of a single Sender
URI Parameters
- senderId: required(string - pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$)
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"description": "Describes the foundations of all NMOS resources",
"title": "Base resource",
"additionalProperties": false,
"properties": {
"label": {
"description": "Freeform string label for the resource. Set to null to restore default label.",
"type": ["null", "string"]
},
"description": {
"description": "Detailed description of the resource. Set to null to restore default description.",
"type": ["null", "string"]
},
"tags": {
"description": "Key value set of freeform string tags to aid in filtering resources. Set to null to restore default tags. Values should be represented as an array of strings. Can be empty. Set to null to delete or restore default values for a tag.",
"type": ["null", "object"],
"patternProperties": {
"": {
"type": ["null", "array"],
"items": {
"type": "string"
}
}
}
}
}
}
Examples:
label-description:
{
"label": "fave node",
"description": "my favourite node"
}
tags:
{
"tags": {
"location": null,
"studio": ["HQ2"]
}
}
HTTP status code 200
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"description": "Describes the foundations of all NMOS resources",
"title": "Base resource",
"required": [
"id",
"version",
"label",
"description",
"tags"
],
"properties": {
"id": {
"description": "Globally unique identifier for the resource",
"type": "string",
"pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$"
},
"version": {
"description": "String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed",
"type": "string",
"pattern": "^[0-9]+:[0-9]+$"
},
"label": {
"description": "Freeform string label for the resource",
"type": "string"
},
"description": {
"description": "Detailed description of the resource",
"type": "string"
},
"tags": {
"description": "Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.",
"type": "object",
"patternProperties": {
"": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
}
}
Example:
{
"version": "1441700172:318426300",
"label": "host1",
"description": "host1",
"tags": {},
"id": "3b8be755-08ff-452b-b217-c9151eb21193"
}
HTTP status code 400
Returned when the request did not meet the schema
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"description": "Describes the standard error response which is returned with HTTP codes 400 and above",
"title": "Error response",
"required": [
"code",
"error",
"debug"
],
"properties": {
"code": {
"description": "HTTP error code",
"type": "integer",
"minimum": 400,
"maximum": 599
},
"error": {
"description": "Human readable message which is suitable for user interface display, and helpful to the user",
"type": "string"
},
"debug": {
"description": "Debug information which may assist a programmer working with the API",
"type": ["null", "string"]
}
}
}
HTTP status code 404
Returned when the requested Sender ID does not exist
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"description": "Describes the standard error response which is returned with HTTP codes 400 and above",
"title": "Error response",
"required": [
"code",
"error",
"debug"
],
"properties": {
"code": {
"description": "HTTP error code",
"type": "integer",
"minimum": 400,
"maximum": 599
},
"error": {
"description": "Human readable message which is suitable for user interface display, and helpful to the user",
"type": "string"
},
"debug": {
"description": "Debug information which may assist a programmer working with the API",
"type": ["null", "string"]
}
}
}
HTTP status code 500
Returned when the request did not meet the API's additional constraints
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"description": "Describes the standard error response which is returned with HTTP codes 400 and above",
"title": "Error response",
"required": [
"code",
"error",
"debug"
],
"properties": {
"code": {
"description": "HTTP error code",
"type": "integer",
"minimum": 400,
"maximum": 599
},
"error": {
"description": "Human readable message which is suitable for user interface display, and helpful to the user",
"type": "string"
},
"debug": {
"description": "Debug information which may assist a programmer working with the API",
"type": ["null", "string"]
}
}
}
List Receivers
get /node/receivers
List Receivers
HTTP status code 200
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema",
"type": "array",
"description": "List of resource ID paths",
"title": "Resources base resource",
"items": {
"type": "string",
"pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}/$"
},
"uniqueItems": true
}
Example:
[
"5fbec3b1-1b0f-417d-9059-8b94a47197ed/",
"db3bd465-2772-484f-8fac-830b0471258b/",
"4857f747-96cf-4ed7-8f4b-9497199f1f25/",
"6327c381-1239-41d1-b314-efc719600e26/",
"6327c381-1239-41d1-b315-efc719600e26/",
"fa6258b9-2826-4a0d-81d0-7da9edbc405f/"
]
Get annotations of a single Receiver
A pre-flight check generally used for Cross-Origin Resource Sharing (CORS) purposes
Update annotations of a single Receiver
get /node/receivers/{receiverId}
Get annotations of a single Receiver
URI Parameters
- receiverId: required(string - pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$)
HTTP status code 200
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"description": "Describes the foundations of all NMOS resources",
"title": "Base resource",
"required": [
"id",
"version",
"label",
"description",
"tags"
],
"properties": {
"id": {
"description": "Globally unique identifier for the resource",
"type": "string",
"pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$"
},
"version": {
"description": "String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed",
"type": "string",
"pattern": "^[0-9]+:[0-9]+$"
},
"label": {
"description": "Freeform string label for the resource",
"type": "string"
},
"description": {
"description": "Detailed description of the resource",
"type": "string"
},
"tags": {
"description": "Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.",
"type": "object",
"patternProperties": {
"": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
}
}
Example:
{
"version": "1441700172:318426300",
"label": "host1",
"description": "host1",
"tags": {},
"id": "3b8be755-08ff-452b-b217-c9151eb21193"
}
HTTP status code 404
Returned when the requested Receiver ID does not exist
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"description": "Describes the standard error response which is returned with HTTP codes 400 and above",
"title": "Error response",
"required": [
"code",
"error",
"debug"
],
"properties": {
"code": {
"description": "HTTP error code",
"type": "integer",
"minimum": 400,
"maximum": 599
},
"error": {
"description": "Human readable message which is suitable for user interface display, and helpful to the user",
"type": "string"
},
"debug": {
"description": "Debug information which may assist a programmer working with the API",
"type": ["null", "string"]
}
}
}
options /node/receivers/{receiverId}
patch /node/receivers/{receiverId}
Update annotations of a single Receiver
URI Parameters
- receiverId: required(string - pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$)
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"description": "Describes the foundations of all NMOS resources",
"title": "Base resource",
"additionalProperties": false,
"properties": {
"label": {
"description": "Freeform string label for the resource. Set to null to restore default label.",
"type": ["null", "string"]
},
"description": {
"description": "Detailed description of the resource. Set to null to restore default description.",
"type": ["null", "string"]
},
"tags": {
"description": "Key value set of freeform string tags to aid in filtering resources. Set to null to restore default tags. Values should be represented as an array of strings. Can be empty. Set to null to delete or restore default values for a tag.",
"type": ["null", "object"],
"patternProperties": {
"": {
"type": ["null", "array"],
"items": {
"type": "string"
}
}
}
}
}
}
Examples:
label-description:
{
"label": "fave node",
"description": "my favourite node"
}
tags:
{
"tags": {
"location": null,
"studio": ["HQ2"]
}
}
HTTP status code 200
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"description": "Describes the foundations of all NMOS resources",
"title": "Base resource",
"required": [
"id",
"version",
"label",
"description",
"tags"
],
"properties": {
"id": {
"description": "Globally unique identifier for the resource",
"type": "string",
"pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$"
},
"version": {
"description": "String formatted TAI timestamp (<seconds>:<nanoseconds>) indicating precisely when an attribute of the resource last changed",
"type": "string",
"pattern": "^[0-9]+:[0-9]+$"
},
"label": {
"description": "Freeform string label for the resource",
"type": "string"
},
"description": {
"description": "Detailed description of the resource",
"type": "string"
},
"tags": {
"description": "Key value set of freeform string tags to aid in filtering resources. Values should be represented as an array of strings. Can be empty.",
"type": "object",
"patternProperties": {
"": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
}
}
Example:
{
"version": "1441700172:318426300",
"label": "host1",
"description": "host1",
"tags": {},
"id": "3b8be755-08ff-452b-b217-c9151eb21193"
}
HTTP status code 400
Returned when the request did not meet the schema
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"description": "Describes the standard error response which is returned with HTTP codes 400 and above",
"title": "Error response",
"required": [
"code",
"error",
"debug"
],
"properties": {
"code": {
"description": "HTTP error code",
"type": "integer",
"minimum": 400,
"maximum": 599
},
"error": {
"description": "Human readable message which is suitable for user interface display, and helpful to the user",
"type": "string"
},
"debug": {
"description": "Debug information which may assist a programmer working with the API",
"type": ["null", "string"]
}
}
}
HTTP status code 404
Returned when the requested Receiver ID does not exist
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"description": "Describes the standard error response which is returned with HTTP codes 400 and above",
"title": "Error response",
"required": [
"code",
"error",
"debug"
],
"properties": {
"code": {
"description": "HTTP error code",
"type": "integer",
"minimum": 400,
"maximum": 599
},
"error": {
"description": "Human readable message which is suitable for user interface display, and helpful to the user",
"type": "string"
},
"debug": {
"description": "Debug information which may assist a programmer working with the API",
"type": ["null", "string"]
}
}
}
HTTP status code 500
Returned when the request did not meet the API's additional constraints
Body
Media type: application/json
Type: json
Content:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"description": "Describes the standard error response which is returned with HTTP codes 400 and above",
"title": "Error response",
"required": [
"code",
"error",
"debug"
],
"properties": {
"code": {
"description": "HTTP error code",
"type": "integer",
"minimum": 400,
"maximum": 599
},
"error": {
"description": "Human readable message which is suitable for user interface display, and helpful to the user",
"type": "string"
},
"debug": {
"description": "Debug information which may assist a programmer working with the API",
"type": ["null", "string"]
}
}
}