DataSets Schema for Guest Access
This section shows JSON schema for the Datasets interfaces. For each DataSets command, input and output schema appear, followed by possible errors.
datasets-list – Return summary data about any DataSets, such as name and description.
no input schema
{ "$schema": "http://json-schema.org/draft-04/schema#", "type": "object", "properties": { "result": { "type": "boolean", "description" : "A boolean specifying whether the RPC was successful." }, "error-id": { "type": "string", "description": "If set, an error identifier for why the RPC failed." }, "error-message": { "type": "string", "description": "If set, a usage message and error details for why the RPC failed." }, "datasets": { "type": "array", "description": "The list of datasets and descriptions.", "examples": [ { "name": "dataset1", "description": "Description of dataset1" }, { "name": "dataset2", "description": "Description of dataset2" } ], "items": { "type": "object", "properties": { "name": { "type": "string" }, "description": { "type": "string" } }, "required": [ "name", "description" ] }, } }, "required": [ "result", "datasets" ] }
Possible error returned:
-
invalid-argument
if there are any extraneous parameters.
datasets-query – Return a DataSet's attributes (description, usage, access).
Input schema:
{ "$schema": "http://json-schema.org/draft-04/schema#", "type": "object", "properties": { "context": { "type": "string", "description": "The context value from a previous RPC with the same arguments to get the next page of output." }, "dataset": { "type": "string", "description": "The name of the dataset from which to list the keys." } }, "required": [ "dataset" ] }
{ "$schema": "http://json-schema.org/draft-04/schema#", "type": "object", "properties": { "result": { "type": "boolean", "description" : "A boolean specifying whether the RPC was successful." }, "error-id": { "type": "string", "description": "If set, an error identifier for why the RPC failed." }, "error-message": { "type": "string", "description": "If set, a human-readable usage message and error details for why the RPC failed." }, "info": { "type": "object", "description": "The attributes of the DataSet.", "examples": [ { "name": "dsname1", "description" : "dsname1 description", "size": 12345, "used" : 2345, "hostAccess" : "READ_WRITE", "guestAccess" : "READ_ONLY", "omitFromSnapshotAndClone" : false } ], "items": [ { "type": "object", "properties": { "name": { "type": "string", "description": "The name of the DataSet." }, "description": { "type": "string", "description" : "The description of the DataSet." }, "used": { "type": "number", "description": "The number of bytes in use by the DataSet." }, "hostAccess" : { "type": "string", "description" : "The access from the host." }, "guestAccess" : { "type": "string", "description" : "The access from the guest." } "omitFromSnapshotAndClone": { "type": "boolean", "description": "If true, the data set is considered a property of the virtual machine, and is not included in a snapshot operation or when the virtual machine is cloned." } }, "required": [ "name", "description", "used", "hostAccess", "guestAccess", "omitFromSnapshotAndClone" ] }, ], }, }, "required": [ "result", "info" ] }
Possible errors returned:
-
invalid-argument
if the specified JSON is invalid or arguments are missing or malformed. -
dataset-not-found
if the supplied dataset does not exist.
datasets-get-entry – Get the value of one or more keys in a DataSet.
Input schema:
{ "$schema": "http://json-schema.org/draft-04/schema#", "type": "object", "properties": { "dataset": { "type": "string", "description": "DataSet from which to get entries." }, "context": { "type": "string", "description": "The context value from a previous RPC with the same arguments to get the next page of output." }, "keys": { "type": "array", "description": "Entries to get.", "items": [ { "type": "string" "description": "The key being requested." }, ] } }, "required": [ "dataset", "keys" ] }
{ "$schema": "http://json-schema.org/draft-04/schema#", "type": "object", "properties": { "result": { "type": "string" }, "error-id": { "type": "string", "description": "If set, an error identifier for why the RPC failed." }, "error-message": { "type": "string", "description": "If set, a human-readable usage message and error details for why the RPC failed." }, "context": { "type": "string", "description": "If set, a value that can be passed in to the RPC with the same arguments to get the next page of output." }, "entries": { "type": "array", "items": [ { "type": "object", "properties": { "key": { "type": "string", "description": "The queried key and value." }, }, "required": [ "key" ] }, ] } }, "required": [ "result", "entries" ] }
Possible errors returned:
-
invalid-argument
if the specified JSON is invalid or arguments are missing or malformed. -
dataset-not-found
if the specified dataset does not exist. -
invalid-context
if the specified context is invalid.
datasets-set-entry – Set the value of one or more keys in a DataSet.
{ "$schema": "http://json-schema.org/draft-04/schema#", "type": "object", "properties": { "dataset": { "type": "string", "description": "DataSet in which to set the entries." }, "entries": { "type": "array", "items": [ { "type": "object", "properties": { "key": { "type": "string", "description": "The key being set." }, "value": { "type": "string", "description": "The new value for the key." }, "append": { "type": "boolean", "description": "If set, the value is appended to any current value, or set if this is a new key." }, }, "required": [ "key", "value", ] }, ], }, }, "required": [ "dataset", "entries" ] }
Output schema:
{ "$schema": "http://json-schema.org/draft-04/schema#", "type": "object", "properties": { "result": { "type": "boolean", "description" : "A boolean specifying whether the RPC was successful." }, "error-id": { "type": "string", "description": "If set, an error identifier for why the RPC failed." }, "error-message": { "type": "string", "description": "If set, a human-readable usage message and error details for why the RPC failed." }, }, "required": [ "result" ] }
Possible errors returned:
-
invalid-argument
if the specified JSON is invalid or arguments are missing or malformed. -
dataset-not-found
if the specified dataset does not exist. -
out-of-space
if the total data exceeds the maximum allowed.
datasets-list-keys – Enumerate the keys in a DataSet.
{ "$schema": "http://json-schema.org/draft-04/schema#", "type": "object", "properties": { "context": { "type": "string", "description": "The context value from a previous RPC with the same arguments to get the next page of output." }, "dataset": { "type": "string", "description": "The name of the dataset from which to list the keys." } }, "required": [ "dataset" ] }
{ "$schema": "http://json-schema.org/draft-04/schema#", "type": "object", "properties": { "result": { "type": "boolean", "description" : "A boolean specifying whether the RPC was successful." }, "error-id": { "type": "string", "description": "If set, an error identifier for why the RPC failed." }, "error-message": { "type": "string", "description": "If set, a human-readable usage message and error details for why the RPC failed." }, "context": { "type": "string", "description": "If set, a value that can be passed in to the RPC with the same arguments to get the next page of output." }, "keys": { "type": "array", "description": "The list of keys in the dataset.", "examples": [ "key1", "key2", "key3" ] } }, "required": [ "result", "keys" ] }
Possible errors returned:
-
invalid-argument
if the specified JSON is invalid or arguments are missing or malformed. -
dataset-not-found
if the specified dataset does not exist. -
invalid-context
if the specified context is invalid.
datasets-delete-entry – deletes one or more entries in a DataSet.
{ "$schema": "http://json-schema.org/draft-04/schema#", "type": "object", "properties": { "dataset": { "type": "string", "description": "DataSet from which to delete entries." }, "keys": { "type": "array", "description": "Entries to delete.", "items": [ { "type": "string" }, ] } }, "required": [ "dataset", "keys" ] }
{ "$schema": "http://json-schema.org/draft-04/schema#", "type": "object", "properties": { "result": { "type": "boolean", "description" : "A boolean specifying whether the RPC was successful." }, "error-id": { "type": "string", "description": "If set, an error identifier for why the RPC failed." }, "error-message": { "type": "string", "description": "If set, a human-readable usage message and error details for why the RPC failed." }, }, "required": [ "result" ] }
Possible errors returned:
-
invalid-argument
if the specified JSON is invalid or arguments are missing or malformed. - dataset-not-found if the specified dataset does not exist.
-
key-not-found
if the specified key does not exist.
Table of Error Codes
Typedef enumeration | Generic error message | Description |
---|---|---|
ERROR_SUCCESS |
JSON response returned. | Not an error. |
ERROR_DATASET_NOT_FOUND |
DataSet ds-name not found. | DataSet not yet created. |
ERROR_KEY_NOT_FOUND |
Key k-name not found. |
Attribute key not yet created. |
ERROR_INVALID_ARGUMENT |
Invalid argument: arg. | Malformed JSON or arguments. |
ERROR_INVALID_CONTEXT |
Invalid context: context. | Probably key does not exist in DataSet. |
ERROR_ACCESS_DENIED |
Access denied to DataSet ds-name. | Not authorized for this operation. |
ERROR_OUT_OF_SPACE |
Insufficient resources: datum. | Message passed was too large. |
ERROR_GENERIC |
Error: error-message. | Some other error. |