--- /dev/null
+[
+ {
+ "Name": "Action",
+ "Version": 2,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "Actions": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ActionResults"
+ }
+ }
+ },
+ "ApplicationsCharmsActions": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ApplicationsCharmActionsResults"
+ }
+ }
+ },
+ "Cancel": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ActionResults"
+ }
+ }
+ },
+ "Enqueue": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Actions"
+ },
+ "Result": {
+ "$ref": "#/definitions/ActionResults"
+ }
+ }
+ },
+ "FindActionTagsByPrefix": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/FindTags"
+ },
+ "Result": {
+ "$ref": "#/definitions/FindTagsResults"
+ }
+ }
+ },
+ "FindActionsByNames": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/FindActionsByNames"
+ },
+ "Result": {
+ "$ref": "#/definitions/ActionsByNames"
+ }
+ }
+ },
+ "ListAll": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ActionsByReceivers"
+ }
+ }
+ },
+ "ListCompleted": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ActionsByReceivers"
+ }
+ }
+ },
+ "ListPending": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ActionsByReceivers"
+ }
+ }
+ },
+ "ListRunning": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ActionsByReceivers"
+ }
+ }
+ },
+ "Run": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/RunParams"
+ },
+ "Result": {
+ "$ref": "#/definitions/ActionResults"
+ }
+ }
+ },
+ "RunOnAllMachines": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/RunParams"
+ },
+ "Result": {
+ "$ref": "#/definitions/ActionResults"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Action": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string"
+ },
+ "parameters": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ },
+ "receiver": {
+ "type": "string"
+ },
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag",
+ "receiver",
+ "name"
+ ]
+ },
+ "ActionResult": {
+ "type": "object",
+ "properties": {
+ "action": {
+ "$ref": "#/definitions/Action"
+ },
+ "completed": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "enqueued": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "message": {
+ "type": "string"
+ },
+ "output": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ },
+ "started": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "status": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ActionResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ActionResult"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "ActionSpec": {
+ "type": "object",
+ "properties": {
+ "description": {
+ "type": "string"
+ },
+ "params": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "description",
+ "params"
+ ]
+ },
+ "Actions": {
+ "type": "object",
+ "properties": {
+ "actions": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Action"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "ActionsByName": {
+ "type": "object",
+ "properties": {
+ "actions": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ActionResult"
+ }
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "name": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ActionsByNames": {
+ "type": "object",
+ "properties": {
+ "actions": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ActionsByName"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "ActionsByReceiver": {
+ "type": "object",
+ "properties": {
+ "actions": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ActionResult"
+ }
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "receiver": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ActionsByReceivers": {
+ "type": "object",
+ "properties": {
+ "actions": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ActionsByReceiver"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "ApplicationCharmActionsResult": {
+ "type": "object",
+ "properties": {
+ "actions": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "$ref": "#/definitions/ActionSpec"
+ }
+ }
+ },
+ "application-tag": {
+ "type": "string"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ApplicationsCharmActionsResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ApplicationCharmActionsResult"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "Entities": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "Entity": {
+ "type": "object",
+ "properties": {
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "FindActionsByNames": {
+ "type": "object",
+ "properties": {
+ "names": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "FindTags": {
+ "type": "object",
+ "properties": {
+ "prefixes": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "prefixes"
+ ]
+ },
+ "FindTagsResults": {
+ "type": "object",
+ "properties": {
+ "matches": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ }
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "matches"
+ ]
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "RunParams": {
+ "type": "object",
+ "properties": {
+ "applications": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "commands": {
+ "type": "string"
+ },
+ "machines": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "timeout": {
+ "type": "integer"
+ },
+ "units": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "commands",
+ "timeout"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "Agent",
+ "Version": 2,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "ClearReboot": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "CloudSpec": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/CloudSpecResults"
+ }
+ }
+ },
+ "ControllerConfig": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/ControllerConfigResult"
+ }
+ }
+ },
+ "GetCloudSpec": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ModelTag"
+ },
+ "Result": {
+ "$ref": "#/definitions/CloudSpecResult"
+ }
+ }
+ },
+ "GetEntities": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/AgentGetEntitiesResults"
+ }
+ }
+ },
+ "IsMaster": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/IsMasterResult"
+ }
+ }
+ },
+ "ModelConfig": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/ModelConfigResult"
+ }
+ }
+ },
+ "SetPasswords": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/EntityPasswords"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "StateServingInfo": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/StateServingInfo"
+ }
+ }
+ },
+ "WatchCredentials": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/NotifyWatchResults"
+ }
+ }
+ },
+ "WatchForModelConfigChanges": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/NotifyWatchResult"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "AgentGetEntitiesResult": {
+ "type": "object",
+ "properties": {
+ "container-type": {
+ "type": "string"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "jobs": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "life": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "life",
+ "jobs",
+ "container-type"
+ ]
+ },
+ "AgentGetEntitiesResults": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/AgentGetEntitiesResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "CloudCredential": {
+ "type": "object",
+ "properties": {
+ "attrs": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "string"
+ }
+ }
+ },
+ "auth-type": {
+ "type": "string"
+ },
+ "redacted": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "auth-type"
+ ]
+ },
+ "CloudSpec": {
+ "type": "object",
+ "properties": {
+ "credential": {
+ "$ref": "#/definitions/CloudCredential"
+ },
+ "endpoint": {
+ "type": "string"
+ },
+ "identity-endpoint": {
+ "type": "string"
+ },
+ "name": {
+ "type": "string"
+ },
+ "region": {
+ "type": "string"
+ },
+ "storage-endpoint": {
+ "type": "string"
+ },
+ "type": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "type",
+ "name"
+ ]
+ },
+ "CloudSpecResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "$ref": "#/definitions/CloudSpec"
+ }
+ },
+ "additionalProperties": false
+ },
+ "CloudSpecResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CloudSpecResult"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "ControllerConfigResult": {
+ "type": "object",
+ "properties": {
+ "config": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "config"
+ ]
+ },
+ "Entities": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "Entity": {
+ "type": "object",
+ "properties": {
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag"
+ ]
+ },
+ "EntityPassword": {
+ "type": "object",
+ "properties": {
+ "password": {
+ "type": "string"
+ },
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag",
+ "password"
+ ]
+ },
+ "EntityPasswords": {
+ "type": "object",
+ "properties": {
+ "changes": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/EntityPassword"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "changes"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ErrorResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "IsMasterResult": {
+ "type": "object",
+ "properties": {
+ "master": {
+ "type": "boolean"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "master"
+ ]
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "ModelConfigResult": {
+ "type": "object",
+ "properties": {
+ "config": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "config"
+ ]
+ },
+ "ModelTag": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "NotifyWatchResult": {
+ "type": "object",
+ "properties": {
+ "NotifyWatcherId": {
+ "type": "string"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "NotifyWatcherId"
+ ]
+ },
+ "NotifyWatchResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/NotifyWatchResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "StateServingInfo": {
+ "type": "object",
+ "properties": {
+ "api-port": {
+ "type": "integer"
+ },
+ "ca-private-key": {
+ "type": "string"
+ },
+ "cert": {
+ "type": "string"
+ },
+ "private-key": {
+ "type": "string"
+ },
+ "shared-secret": {
+ "type": "string"
+ },
+ "state-port": {
+ "type": "integer"
+ },
+ "system-identity": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "api-port",
+ "state-port",
+ "cert",
+ "private-key",
+ "ca-private-key",
+ "shared-secret",
+ "system-identity"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "AgentTools",
+ "Version": 1,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "UpdateToolsAvailable": {
+ "type": "object"
+ }
+ }
+ }
+ },
+ {
+ "Name": "AllModelWatcher",
+ "Version": 2,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "Next": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/AllWatcherNextResults"
+ }
+ }
+ },
+ "Stop": {
+ "type": "object"
+ }
+ },
+ "definitions": {
+ "AllWatcherNextResults": {
+ "type": "object",
+ "properties": {
+ "deltas": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Delta"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "deltas"
+ ]
+ },
+ "Delta": {
+ "type": "object",
+ "properties": {
+ "entity": {
+ "type": "object",
+ "additionalProperties": true
+ },
+ "removed": {
+ "type": "boolean"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "removed",
+ "entity"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "AllWatcher",
+ "Version": 1,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "Next": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/AllWatcherNextResults"
+ }
+ }
+ },
+ "Stop": {
+ "type": "object"
+ }
+ },
+ "definitions": {
+ "AllWatcherNextResults": {
+ "type": "object",
+ "properties": {
+ "deltas": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Delta"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "deltas"
+ ]
+ },
+ "Delta": {
+ "type": "object",
+ "properties": {
+ "entity": {
+ "type": "object",
+ "additionalProperties": true
+ },
+ "removed": {
+ "type": "boolean"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "removed",
+ "entity"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "Annotations",
+ "Version": 2,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "Get": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/AnnotationsGetResults"
+ }
+ }
+ },
+ "Set": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/AnnotationsSet"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "AnnotationsGetResult": {
+ "type": "object",
+ "properties": {
+ "annotations": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "string"
+ }
+ }
+ },
+ "entity": {
+ "type": "string"
+ },
+ "error": {
+ "$ref": "#/definitions/ErrorResult"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entity",
+ "annotations"
+ ]
+ },
+ "AnnotationsGetResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/AnnotationsGetResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "AnnotationsSet": {
+ "type": "object",
+ "properties": {
+ "annotations": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/EntityAnnotations"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "annotations"
+ ]
+ },
+ "Entities": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "Entity": {
+ "type": "object",
+ "properties": {
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag"
+ ]
+ },
+ "EntityAnnotations": {
+ "type": "object",
+ "properties": {
+ "annotations": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "string"
+ }
+ }
+ },
+ "entity": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entity",
+ "annotations"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ErrorResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ }
+ }
+ }
+ },
+ {
+ "Name": "Application",
+ "Version": 5,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "AddRelation": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/AddRelation"
+ },
+ "Result": {
+ "$ref": "#/definitions/AddRelationResults"
+ }
+ }
+ },
+ "AddUnits": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/AddApplicationUnits"
+ },
+ "Result": {
+ "$ref": "#/definitions/AddApplicationUnitsResults"
+ }
+ }
+ },
+ "CharmRelations": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ApplicationCharmRelations"
+ },
+ "Result": {
+ "$ref": "#/definitions/ApplicationCharmRelationsResults"
+ }
+ }
+ },
+ "Consume": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ConsumeApplicationArgs"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "Deploy": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ApplicationsDeploy"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "Destroy": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ApplicationDestroy"
+ }
+ }
+ },
+ "DestroyApplication": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/DestroyApplicationResults"
+ }
+ }
+ },
+ "DestroyRelation": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/DestroyRelation"
+ }
+ }
+ },
+ "DestroyUnit": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/DestroyUnitResults"
+ }
+ }
+ },
+ "DestroyUnits": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/DestroyApplicationUnits"
+ }
+ }
+ },
+ "Expose": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ApplicationExpose"
+ }
+ }
+ },
+ "Get": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ApplicationGet"
+ },
+ "Result": {
+ "$ref": "#/definitions/ApplicationGetResults"
+ }
+ }
+ },
+ "GetCharmURL": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ApplicationGet"
+ },
+ "Result": {
+ "$ref": "#/definitions/StringResult"
+ }
+ }
+ },
+ "GetConstraints": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/GetApplicationConstraints"
+ },
+ "Result": {
+ "$ref": "#/definitions/GetConstraintsResults"
+ }
+ }
+ },
+ "Set": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ApplicationSet"
+ }
+ }
+ },
+ "SetCharm": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ApplicationSetCharm"
+ }
+ }
+ },
+ "SetConstraints": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/SetConstraints"
+ }
+ }
+ },
+ "SetMetricCredentials": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ApplicationMetricCredentials"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "Unexpose": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ApplicationUnexpose"
+ }
+ }
+ },
+ "Unset": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ApplicationUnset"
+ }
+ }
+ },
+ "Update": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ApplicationUpdate"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "AddApplicationUnits": {
+ "type": "object",
+ "properties": {
+ "application": {
+ "type": "string"
+ },
+ "attach-storage": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "num-units": {
+ "type": "integer"
+ },
+ "placement": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Placement"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "application",
+ "num-units",
+ "placement"
+ ]
+ },
+ "AddApplicationUnitsResults": {
+ "type": "object",
+ "properties": {
+ "units": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "units"
+ ]
+ },
+ "AddRelation": {
+ "type": "object",
+ "properties": {
+ "endpoints": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "endpoints"
+ ]
+ },
+ "AddRelationResults": {
+ "type": "object",
+ "properties": {
+ "endpoints": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "$ref": "#/definitions/CharmRelation"
+ }
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "endpoints"
+ ]
+ },
+ "ApplicationCharmRelations": {
+ "type": "object",
+ "properties": {
+ "application": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "application"
+ ]
+ },
+ "ApplicationCharmRelationsResults": {
+ "type": "object",
+ "properties": {
+ "charm-relations": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "charm-relations"
+ ]
+ },
+ "ApplicationDeploy": {
+ "type": "object",
+ "properties": {
+ "application": {
+ "type": "string"
+ },
+ "attach-storage": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "channel": {
+ "type": "string"
+ },
+ "charm-url": {
+ "type": "string"
+ },
+ "config": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "string"
+ }
+ }
+ },
+ "config-yaml": {
+ "type": "string"
+ },
+ "constraints": {
+ "$ref": "#/definitions/Value"
+ },
+ "endpoint-bindings": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "string"
+ }
+ }
+ },
+ "num-units": {
+ "type": "integer"
+ },
+ "placement": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Placement"
+ }
+ },
+ "resources": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "string"
+ }
+ }
+ },
+ "series": {
+ "type": "string"
+ },
+ "storage": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "$ref": "#/definitions/Constraints"
+ }
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "application",
+ "series",
+ "charm-url",
+ "channel",
+ "num-units",
+ "config-yaml",
+ "constraints"
+ ]
+ },
+ "ApplicationDestroy": {
+ "type": "object",
+ "properties": {
+ "application": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "application"
+ ]
+ },
+ "ApplicationExpose": {
+ "type": "object",
+ "properties": {
+ "application": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "application"
+ ]
+ },
+ "ApplicationGet": {
+ "type": "object",
+ "properties": {
+ "application": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "application"
+ ]
+ },
+ "ApplicationGetResults": {
+ "type": "object",
+ "properties": {
+ "application": {
+ "type": "string"
+ },
+ "charm": {
+ "type": "string"
+ },
+ "config": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ },
+ "constraints": {
+ "$ref": "#/definitions/Value"
+ },
+ "series": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "application",
+ "charm",
+ "config",
+ "constraints",
+ "series"
+ ]
+ },
+ "ApplicationMetricCredential": {
+ "type": "object",
+ "properties": {
+ "application": {
+ "type": "string"
+ },
+ "metrics-credentials": {
+ "type": "array",
+ "items": {
+ "type": "integer"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "application",
+ "metrics-credentials"
+ ]
+ },
+ "ApplicationMetricCredentials": {
+ "type": "object",
+ "properties": {
+ "creds": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ApplicationMetricCredential"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "creds"
+ ]
+ },
+ "ApplicationOffer": {
+ "type": "object",
+ "properties": {
+ "access": {
+ "type": "string"
+ },
+ "application-description": {
+ "type": "string"
+ },
+ "bindings": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "string"
+ }
+ }
+ },
+ "endpoints": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/RemoteEndpoint"
+ }
+ },
+ "offer-name": {
+ "type": "string"
+ },
+ "offer-url": {
+ "type": "string"
+ },
+ "source-model-tag": {
+ "type": "string"
+ },
+ "spaces": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/RemoteSpace"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "source-model-tag",
+ "offer-url",
+ "offer-name",
+ "application-description",
+ "endpoints",
+ "spaces",
+ "bindings",
+ "access"
+ ]
+ },
+ "ApplicationSet": {
+ "type": "object",
+ "properties": {
+ "application": {
+ "type": "string"
+ },
+ "options": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "application",
+ "options"
+ ]
+ },
+ "ApplicationSetCharm": {
+ "type": "object",
+ "properties": {
+ "application": {
+ "type": "string"
+ },
+ "channel": {
+ "type": "string"
+ },
+ "charm-url": {
+ "type": "string"
+ },
+ "config-settings": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "string"
+ }
+ }
+ },
+ "config-settings-yaml": {
+ "type": "string"
+ },
+ "force-series": {
+ "type": "boolean"
+ },
+ "force-units": {
+ "type": "boolean"
+ },
+ "resource-ids": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "string"
+ }
+ }
+ },
+ "storage-constraints": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "$ref": "#/definitions/StorageConstraints"
+ }
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "application",
+ "charm-url",
+ "channel",
+ "force-units",
+ "force-series"
+ ]
+ },
+ "ApplicationUnexpose": {
+ "type": "object",
+ "properties": {
+ "application": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "application"
+ ]
+ },
+ "ApplicationUnset": {
+ "type": "object",
+ "properties": {
+ "application": {
+ "type": "string"
+ },
+ "options": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "application",
+ "options"
+ ]
+ },
+ "ApplicationUpdate": {
+ "type": "object",
+ "properties": {
+ "application": {
+ "type": "string"
+ },
+ "charm-url": {
+ "type": "string"
+ },
+ "constraints": {
+ "$ref": "#/definitions/Value"
+ },
+ "force-charm-url": {
+ "type": "boolean"
+ },
+ "force-series": {
+ "type": "boolean"
+ },
+ "min-units": {
+ "type": "integer"
+ },
+ "settings": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "string"
+ }
+ }
+ },
+ "settings-yaml": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "application",
+ "charm-url",
+ "force-charm-url",
+ "force-series",
+ "settings-yaml"
+ ]
+ },
+ "ApplicationsDeploy": {
+ "type": "object",
+ "properties": {
+ "applications": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ApplicationDeploy"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "applications"
+ ]
+ },
+ "CharmRelation": {
+ "type": "object",
+ "properties": {
+ "interface": {
+ "type": "string"
+ },
+ "limit": {
+ "type": "integer"
+ },
+ "name": {
+ "type": "string"
+ },
+ "optional": {
+ "type": "boolean"
+ },
+ "role": {
+ "type": "string"
+ },
+ "scope": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "name",
+ "role",
+ "interface",
+ "optional",
+ "limit",
+ "scope"
+ ]
+ },
+ "Constraints": {
+ "type": "object",
+ "properties": {
+ "Count": {
+ "type": "integer"
+ },
+ "Pool": {
+ "type": "string"
+ },
+ "Size": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "Pool",
+ "Size",
+ "Count"
+ ]
+ },
+ "ConsumeApplicationArg": {
+ "type": "object",
+ "properties": {
+ "ApplicationOffer": {
+ "$ref": "#/definitions/ApplicationOffer"
+ },
+ "application-alias": {
+ "type": "string"
+ },
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "ApplicationOffer"
+ ]
+ },
+ "ConsumeApplicationArgs": {
+ "type": "object",
+ "properties": {
+ "args": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ConsumeApplicationArg"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "DestroyApplicationInfo": {
+ "type": "object",
+ "properties": {
+ "destroyed-storage": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ },
+ "destroyed-units": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ },
+ "detached-storage": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "DestroyApplicationResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "info": {
+ "$ref": "#/definitions/DestroyApplicationInfo"
+ }
+ },
+ "additionalProperties": false
+ },
+ "DestroyApplicationResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DestroyApplicationResult"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "DestroyApplicationUnits": {
+ "type": "object",
+ "properties": {
+ "unit-names": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "unit-names"
+ ]
+ },
+ "DestroyRelation": {
+ "type": "object",
+ "properties": {
+ "endpoints": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "endpoints"
+ ]
+ },
+ "DestroyUnitInfo": {
+ "type": "object",
+ "properties": {
+ "destroyed-storage": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ },
+ "detached-storage": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "DestroyUnitResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "info": {
+ "$ref": "#/definitions/DestroyUnitInfo"
+ }
+ },
+ "additionalProperties": false
+ },
+ "DestroyUnitResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DestroyUnitResult"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "Entities": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "Entity": {
+ "type": "object",
+ "properties": {
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ErrorResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "GetApplicationConstraints": {
+ "type": "object",
+ "properties": {
+ "application": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "application"
+ ]
+ },
+ "GetConstraintsResults": {
+ "type": "object",
+ "properties": {
+ "constraints": {
+ "$ref": "#/definitions/Value"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "constraints"
+ ]
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "Placement": {
+ "type": "object",
+ "properties": {
+ "directive": {
+ "type": "string"
+ },
+ "scope": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "scope",
+ "directive"
+ ]
+ },
+ "RemoteEndpoint": {
+ "type": "object",
+ "properties": {
+ "interface": {
+ "type": "string"
+ },
+ "limit": {
+ "type": "integer"
+ },
+ "name": {
+ "type": "string"
+ },
+ "role": {
+ "type": "string"
+ },
+ "scope": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "name",
+ "role",
+ "interface",
+ "limit",
+ "scope"
+ ]
+ },
+ "RemoteSpace": {
+ "type": "object",
+ "properties": {
+ "cloud-type": {
+ "type": "string"
+ },
+ "name": {
+ "type": "string"
+ },
+ "provider-attributes": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ },
+ "provider-id": {
+ "type": "string"
+ },
+ "subnets": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Subnet"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "cloud-type",
+ "name",
+ "provider-id",
+ "provider-attributes",
+ "subnets"
+ ]
+ },
+ "SetConstraints": {
+ "type": "object",
+ "properties": {
+ "application": {
+ "type": "string"
+ },
+ "constraints": {
+ "$ref": "#/definitions/Value"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "application",
+ "constraints"
+ ]
+ },
+ "StorageConstraints": {
+ "type": "object",
+ "properties": {
+ "count": {
+ "type": "integer"
+ },
+ "pool": {
+ "type": "string"
+ },
+ "size": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false
+ },
+ "StringResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "result"
+ ]
+ },
+ "Subnet": {
+ "type": "object",
+ "properties": {
+ "cidr": {
+ "type": "string"
+ },
+ "life": {
+ "type": "string"
+ },
+ "provider-id": {
+ "type": "string"
+ },
+ "provider-network-id": {
+ "type": "string"
+ },
+ "provider-space-id": {
+ "type": "string"
+ },
+ "space-tag": {
+ "type": "string"
+ },
+ "status": {
+ "type": "string"
+ },
+ "vlan-tag": {
+ "type": "integer"
+ },
+ "zones": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "cidr",
+ "vlan-tag",
+ "life",
+ "space-tag",
+ "zones"
+ ]
+ },
+ "Value": {
+ "type": "object",
+ "properties": {
+ "arch": {
+ "type": "string"
+ },
+ "container": {
+ "type": "string"
+ },
+ "cores": {
+ "type": "integer"
+ },
+ "cpu-power": {
+ "type": "integer"
+ },
+ "instance-type": {
+ "type": "string"
+ },
+ "mem": {
+ "type": "integer"
+ },
+ "root-disk": {
+ "type": "integer"
+ },
+ "spaces": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "virt-type": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ }
+ }
+ }
+ },
+ {
+ "Name": "ApplicationScaler",
+ "Version": 1,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "Rescale": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "Watch": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/StringsWatchResult"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Entities": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "Entity": {
+ "type": "object",
+ "properties": {
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ErrorResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "StringsWatchResult": {
+ "type": "object",
+ "properties": {
+ "changes": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "watcher-id": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "watcher-id"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "Backups",
+ "Version": 1,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "Create": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/BackupsCreateArgs"
+ },
+ "Result": {
+ "$ref": "#/definitions/BackupsMetadataResult"
+ }
+ }
+ },
+ "FinishRestore": {
+ "type": "object"
+ },
+ "Info": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/BackupsInfoArgs"
+ },
+ "Result": {
+ "$ref": "#/definitions/BackupsMetadataResult"
+ }
+ }
+ },
+ "List": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/BackupsListArgs"
+ },
+ "Result": {
+ "$ref": "#/definitions/BackupsListResult"
+ }
+ }
+ },
+ "PrepareRestore": {
+ "type": "object"
+ },
+ "Remove": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/BackupsRemoveArgs"
+ }
+ }
+ },
+ "Restore": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/RestoreArgs"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "BackupsCreateArgs": {
+ "type": "object",
+ "properties": {
+ "notes": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "notes"
+ ]
+ },
+ "BackupsInfoArgs": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "id"
+ ]
+ },
+ "BackupsListArgs": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "BackupsListResult": {
+ "type": "object",
+ "properties": {
+ "list": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/BackupsMetadataResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "list"
+ ]
+ },
+ "BackupsMetadataResult": {
+ "type": "object",
+ "properties": {
+ "ca-cert": {
+ "type": "string"
+ },
+ "ca-private-key": {
+ "type": "string"
+ },
+ "checksum": {
+ "type": "string"
+ },
+ "checksum-format": {
+ "type": "string"
+ },
+ "finished": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "hostname": {
+ "type": "string"
+ },
+ "id": {
+ "type": "string"
+ },
+ "machine": {
+ "type": "string"
+ },
+ "model": {
+ "type": "string"
+ },
+ "notes": {
+ "type": "string"
+ },
+ "series": {
+ "type": "string"
+ },
+ "size": {
+ "type": "integer"
+ },
+ "started": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "stored": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "version": {
+ "$ref": "#/definitions/Number"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "id",
+ "checksum",
+ "checksum-format",
+ "size",
+ "stored",
+ "started",
+ "finished",
+ "notes",
+ "model",
+ "machine",
+ "hostname",
+ "version",
+ "series",
+ "ca-cert",
+ "ca-private-key"
+ ]
+ },
+ "BackupsRemoveArgs": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "id"
+ ]
+ },
+ "Number": {
+ "type": "object",
+ "properties": {
+ "Build": {
+ "type": "integer"
+ },
+ "Major": {
+ "type": "integer"
+ },
+ "Minor": {
+ "type": "integer"
+ },
+ "Patch": {
+ "type": "integer"
+ },
+ "Tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "Major",
+ "Minor",
+ "Tag",
+ "Patch",
+ "Build"
+ ]
+ },
+ "RestoreArgs": {
+ "type": "object",
+ "properties": {
+ "backup-id": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "backup-id"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "Block",
+ "Version": 2,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "List": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/BlockResults"
+ }
+ }
+ },
+ "SwitchBlockOff": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/BlockSwitchParams"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResult"
+ }
+ }
+ },
+ "SwitchBlockOn": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/BlockSwitchParams"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResult"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Block": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string"
+ },
+ "message": {
+ "type": "string"
+ },
+ "tag": {
+ "type": "string"
+ },
+ "type": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "id",
+ "tag",
+ "type"
+ ]
+ },
+ "BlockResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "$ref": "#/definitions/Block"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "result"
+ ]
+ },
+ "BlockResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/BlockResult"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "BlockSwitchParams": {
+ "type": "object",
+ "properties": {
+ "message": {
+ "type": "string"
+ },
+ "type": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "type"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ }
+ }
+ }
+ },
+ {
+ "Name": "Bundle",
+ "Version": 1,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "GetChanges": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/BundleChangesParams"
+ },
+ "Result": {
+ "$ref": "#/definitions/BundleChangesResults"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "BundleChange": {
+ "type": "object",
+ "properties": {
+ "args": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ },
+ "id": {
+ "type": "string"
+ },
+ "method": {
+ "type": "string"
+ },
+ "requires": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "id",
+ "method",
+ "args",
+ "requires"
+ ]
+ },
+ "BundleChangesParams": {
+ "type": "object",
+ "properties": {
+ "yaml": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "yaml"
+ ]
+ },
+ "BundleChangesResults": {
+ "type": "object",
+ "properties": {
+ "changes": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/BundleChange"
+ }
+ },
+ "errors": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false
+ }
+ }
+ }
+ },
+ {
+ "Name": "CharmRevisionUpdater",
+ "Version": 2,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "UpdateLatestRevisions": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/ErrorResult"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ }
+ }
+ }
+ },
+ {
+ "Name": "Charms",
+ "Version": 2,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "CharmInfo": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/CharmURL"
+ },
+ "Result": {
+ "$ref": "#/definitions/CharmInfo"
+ }
+ }
+ },
+ "IsMetered": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/CharmURL"
+ },
+ "Result": {
+ "$ref": "#/definitions/IsMeteredResult"
+ }
+ }
+ },
+ "List": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/CharmsList"
+ },
+ "Result": {
+ "$ref": "#/definitions/CharmsListResult"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "CharmActionSpec": {
+ "type": "object",
+ "properties": {
+ "description": {
+ "type": "string"
+ },
+ "params": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "description",
+ "params"
+ ]
+ },
+ "CharmActions": {
+ "type": "object",
+ "properties": {
+ "specs": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "$ref": "#/definitions/CharmActionSpec"
+ }
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "CharmInfo": {
+ "type": "object",
+ "properties": {
+ "actions": {
+ "$ref": "#/definitions/CharmActions"
+ },
+ "config": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "$ref": "#/definitions/CharmOption"
+ }
+ }
+ },
+ "meta": {
+ "$ref": "#/definitions/CharmMeta"
+ },
+ "metrics": {
+ "$ref": "#/definitions/CharmMetrics"
+ },
+ "revision": {
+ "type": "integer"
+ },
+ "url": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "revision",
+ "url",
+ "config"
+ ]
+ },
+ "CharmMeta": {
+ "type": "object",
+ "properties": {
+ "categories": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "description": {
+ "type": "string"
+ },
+ "extra-bindings": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "string"
+ }
+ }
+ },
+ "min-juju-version": {
+ "type": "string"
+ },
+ "name": {
+ "type": "string"
+ },
+ "payload-classes": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "$ref": "#/definitions/CharmPayloadClass"
+ }
+ }
+ },
+ "peers": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "$ref": "#/definitions/CharmRelation"
+ }
+ }
+ },
+ "provides": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "$ref": "#/definitions/CharmRelation"
+ }
+ }
+ },
+ "requires": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "$ref": "#/definitions/CharmRelation"
+ }
+ }
+ },
+ "resources": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "$ref": "#/definitions/CharmResourceMeta"
+ }
+ }
+ },
+ "series": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "storage": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "$ref": "#/definitions/CharmStorage"
+ }
+ }
+ },
+ "subordinate": {
+ "type": "boolean"
+ },
+ "summary": {
+ "type": "string"
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "terms": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "name",
+ "summary",
+ "description",
+ "subordinate"
+ ]
+ },
+ "CharmMetric": {
+ "type": "object",
+ "properties": {
+ "description": {
+ "type": "string"
+ },
+ "type": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "type",
+ "description"
+ ]
+ },
+ "CharmMetrics": {
+ "type": "object",
+ "properties": {
+ "metrics": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "$ref": "#/definitions/CharmMetric"
+ }
+ }
+ },
+ "plan": {
+ "$ref": "#/definitions/CharmPlan"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "metrics",
+ "plan"
+ ]
+ },
+ "CharmOption": {
+ "type": "object",
+ "properties": {
+ "default": {
+ "type": "object",
+ "additionalProperties": true
+ },
+ "description": {
+ "type": "string"
+ },
+ "type": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "type"
+ ]
+ },
+ "CharmPayloadClass": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string"
+ },
+ "type": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "name",
+ "type"
+ ]
+ },
+ "CharmPlan": {
+ "type": "object",
+ "properties": {
+ "required": {
+ "type": "boolean"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "required"
+ ]
+ },
+ "CharmRelation": {
+ "type": "object",
+ "properties": {
+ "interface": {
+ "type": "string"
+ },
+ "limit": {
+ "type": "integer"
+ },
+ "name": {
+ "type": "string"
+ },
+ "optional": {
+ "type": "boolean"
+ },
+ "role": {
+ "type": "string"
+ },
+ "scope": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "name",
+ "role",
+ "interface",
+ "optional",
+ "limit",
+ "scope"
+ ]
+ },
+ "CharmResourceMeta": {
+ "type": "object",
+ "properties": {
+ "description": {
+ "type": "string"
+ },
+ "name": {
+ "type": "string"
+ },
+ "path": {
+ "type": "string"
+ },
+ "type": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "name",
+ "type",
+ "path",
+ "description"
+ ]
+ },
+ "CharmStorage": {
+ "type": "object",
+ "properties": {
+ "count-max": {
+ "type": "integer"
+ },
+ "count-min": {
+ "type": "integer"
+ },
+ "description": {
+ "type": "string"
+ },
+ "location": {
+ "type": "string"
+ },
+ "minimum-size": {
+ "type": "integer"
+ },
+ "name": {
+ "type": "string"
+ },
+ "properties": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "read-only": {
+ "type": "boolean"
+ },
+ "shared": {
+ "type": "boolean"
+ },
+ "type": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "name",
+ "description",
+ "type",
+ "shared",
+ "read-only",
+ "count-min",
+ "count-max",
+ "minimum-size"
+ ]
+ },
+ "CharmURL": {
+ "type": "object",
+ "properties": {
+ "url": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "url"
+ ]
+ },
+ "CharmsList": {
+ "type": "object",
+ "properties": {
+ "names": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "names"
+ ]
+ },
+ "CharmsListResult": {
+ "type": "object",
+ "properties": {
+ "charm-urls": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "charm-urls"
+ ]
+ },
+ "IsMeteredResult": {
+ "type": "object",
+ "properties": {
+ "metered": {
+ "type": "boolean"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "metered"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "Cleaner",
+ "Version": 2,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "Cleanup": {
+ "type": "object"
+ },
+ "WatchCleanups": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/NotifyWatchResult"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "NotifyWatchResult": {
+ "type": "object",
+ "properties": {
+ "NotifyWatcherId": {
+ "type": "string"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "NotifyWatcherId"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "Client",
+ "Version": 1,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "APIHostPorts": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/APIHostPortsResult"
+ }
+ }
+ },
+ "AbortCurrentUpgrade": {
+ "type": "object"
+ },
+ "AddCharm": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/AddCharm"
+ }
+ }
+ },
+ "AddCharmWithAuthorization": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/AddCharmWithAuthorization"
+ }
+ }
+ },
+ "AddMachines": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/AddMachines"
+ },
+ "Result": {
+ "$ref": "#/definitions/AddMachinesResults"
+ }
+ }
+ },
+ "AddMachinesV2": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/AddMachines"
+ },
+ "Result": {
+ "$ref": "#/definitions/AddMachinesResults"
+ }
+ }
+ },
+ "AgentVersion": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/AgentVersionResult"
+ }
+ }
+ },
+ "CACert": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/BytesResult"
+ }
+ }
+ },
+ "DestroyMachines": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/DestroyMachines"
+ }
+ }
+ },
+ "FindTools": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/FindToolsParams"
+ },
+ "Result": {
+ "$ref": "#/definitions/FindToolsResult"
+ }
+ }
+ },
+ "FullStatus": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/StatusParams"
+ },
+ "Result": {
+ "$ref": "#/definitions/FullStatus"
+ }
+ }
+ },
+ "GetBundleChanges": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/BundleChangesParams"
+ },
+ "Result": {
+ "$ref": "#/definitions/BundleChangesResults"
+ }
+ }
+ },
+ "GetModelConstraints": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/GetConstraintsResults"
+ }
+ }
+ },
+ "InjectMachines": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/AddMachines"
+ },
+ "Result": {
+ "$ref": "#/definitions/AddMachinesResults"
+ }
+ }
+ },
+ "ModelGet": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/ModelConfigResults"
+ }
+ }
+ },
+ "ModelInfo": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/ModelInfo"
+ }
+ }
+ },
+ "ModelSet": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ModelSet"
+ }
+ }
+ },
+ "ModelUnset": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ModelUnset"
+ }
+ }
+ },
+ "ModelUserInfo": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/ModelUserInfoResults"
+ }
+ }
+ },
+ "PrivateAddress": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/PrivateAddress"
+ },
+ "Result": {
+ "$ref": "#/definitions/PrivateAddressResults"
+ }
+ }
+ },
+ "ProvisioningScript": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ProvisioningScriptParams"
+ },
+ "Result": {
+ "$ref": "#/definitions/ProvisioningScriptResult"
+ }
+ }
+ },
+ "PublicAddress": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/PublicAddress"
+ },
+ "Result": {
+ "$ref": "#/definitions/PublicAddressResults"
+ }
+ }
+ },
+ "ResolveCharms": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ResolveCharms"
+ },
+ "Result": {
+ "$ref": "#/definitions/ResolveCharmResults"
+ }
+ }
+ },
+ "Resolved": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Resolved"
+ }
+ }
+ },
+ "RetryProvisioning": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "SLALevel": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/StringResult"
+ }
+ }
+ },
+ "SetModelAgentVersion": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/SetModelAgentVersion"
+ }
+ }
+ },
+ "SetModelConstraints": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/SetConstraints"
+ }
+ }
+ },
+ "SetSLALevel": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ModelSLA"
+ }
+ }
+ },
+ "StatusHistory": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/StatusHistoryRequests"
+ },
+ "Result": {
+ "$ref": "#/definitions/StatusHistoryResults"
+ }
+ }
+ },
+ "WatchAll": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/AllWatcherId"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "APIHostPortsResult": {
+ "type": "object",
+ "properties": {
+ "servers": {
+ "type": "array",
+ "items": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/HostPort"
+ }
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "servers"
+ ]
+ },
+ "AddCharm": {
+ "type": "object",
+ "properties": {
+ "channel": {
+ "type": "string"
+ },
+ "url": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "url",
+ "channel"
+ ]
+ },
+ "AddCharmWithAuthorization": {
+ "type": "object",
+ "properties": {
+ "channel": {
+ "type": "string"
+ },
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "url": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "url",
+ "channel",
+ "macaroon"
+ ]
+ },
+ "AddMachineParams": {
+ "type": "object",
+ "properties": {
+ "addresses": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Address"
+ }
+ },
+ "constraints": {
+ "$ref": "#/definitions/Value"
+ },
+ "container-type": {
+ "type": "string"
+ },
+ "disks": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Constraints"
+ }
+ },
+ "hardware-characteristics": {
+ "$ref": "#/definitions/HardwareCharacteristics"
+ },
+ "instance-id": {
+ "type": "string"
+ },
+ "jobs": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "nonce": {
+ "type": "string"
+ },
+ "parent-id": {
+ "type": "string"
+ },
+ "placement": {
+ "$ref": "#/definitions/Placement"
+ },
+ "series": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "series",
+ "constraints",
+ "jobs",
+ "parent-id",
+ "container-type",
+ "instance-id",
+ "nonce",
+ "hardware-characteristics",
+ "addresses"
+ ]
+ },
+ "AddMachines": {
+ "type": "object",
+ "properties": {
+ "params": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/AddMachineParams"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "params"
+ ]
+ },
+ "AddMachinesResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "machine": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "machine"
+ ]
+ },
+ "AddMachinesResults": {
+ "type": "object",
+ "properties": {
+ "machines": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/AddMachinesResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "machines"
+ ]
+ },
+ "Address": {
+ "type": "object",
+ "properties": {
+ "scope": {
+ "type": "string"
+ },
+ "space-name": {
+ "type": "string"
+ },
+ "type": {
+ "type": "string"
+ },
+ "value": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "value",
+ "type",
+ "scope"
+ ]
+ },
+ "AgentVersionResult": {
+ "type": "object",
+ "properties": {
+ "version": {
+ "$ref": "#/definitions/Number"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "version"
+ ]
+ },
+ "AllWatcherId": {
+ "type": "object",
+ "properties": {
+ "watcher-id": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "watcher-id"
+ ]
+ },
+ "ApplicationStatus": {
+ "type": "object",
+ "properties": {
+ "can-upgrade-to": {
+ "type": "string"
+ },
+ "charm": {
+ "type": "string"
+ },
+ "err": {
+ "type": "object",
+ "additionalProperties": true
+ },
+ "exposed": {
+ "type": "boolean"
+ },
+ "life": {
+ "type": "string"
+ },
+ "meter-statuses": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "$ref": "#/definitions/MeterStatus"
+ }
+ }
+ },
+ "relations": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "series": {
+ "type": "string"
+ },
+ "status": {
+ "$ref": "#/definitions/DetailedStatus"
+ },
+ "subordinate-to": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "units": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "$ref": "#/definitions/UnitStatus"
+ }
+ }
+ },
+ "workload-version": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "charm",
+ "series",
+ "exposed",
+ "life",
+ "relations",
+ "can-upgrade-to",
+ "subordinate-to",
+ "units",
+ "meter-statuses",
+ "status",
+ "workload-version"
+ ]
+ },
+ "Binary": {
+ "type": "object",
+ "properties": {
+ "Arch": {
+ "type": "string"
+ },
+ "Number": {
+ "$ref": "#/definitions/Number"
+ },
+ "Series": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "Number",
+ "Series",
+ "Arch"
+ ]
+ },
+ "BundleChange": {
+ "type": "object",
+ "properties": {
+ "args": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ },
+ "id": {
+ "type": "string"
+ },
+ "method": {
+ "type": "string"
+ },
+ "requires": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "id",
+ "method",
+ "args",
+ "requires"
+ ]
+ },
+ "BundleChangesParams": {
+ "type": "object",
+ "properties": {
+ "yaml": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "yaml"
+ ]
+ },
+ "BundleChangesResults": {
+ "type": "object",
+ "properties": {
+ "changes": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/BundleChange"
+ }
+ },
+ "errors": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "BytesResult": {
+ "type": "object",
+ "properties": {
+ "result": {
+ "type": "array",
+ "items": {
+ "type": "integer"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "result"
+ ]
+ },
+ "ConfigValue": {
+ "type": "object",
+ "properties": {
+ "source": {
+ "type": "string"
+ },
+ "value": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "value",
+ "source"
+ ]
+ },
+ "Constraints": {
+ "type": "object",
+ "properties": {
+ "Count": {
+ "type": "integer"
+ },
+ "Pool": {
+ "type": "string"
+ },
+ "Size": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "Pool",
+ "Size",
+ "Count"
+ ]
+ },
+ "DestroyMachines": {
+ "type": "object",
+ "properties": {
+ "force": {
+ "type": "boolean"
+ },
+ "machine-names": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "machine-names",
+ "force"
+ ]
+ },
+ "DetailedStatus": {
+ "type": "object",
+ "properties": {
+ "data": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ },
+ "err": {
+ "type": "object",
+ "additionalProperties": true
+ },
+ "info": {
+ "type": "string"
+ },
+ "kind": {
+ "type": "string"
+ },
+ "life": {
+ "type": "string"
+ },
+ "since": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "status": {
+ "type": "string"
+ },
+ "version": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "status",
+ "info",
+ "data",
+ "since",
+ "kind",
+ "version",
+ "life"
+ ]
+ },
+ "EndpointStatus": {
+ "type": "object",
+ "properties": {
+ "application": {
+ "type": "string"
+ },
+ "name": {
+ "type": "string"
+ },
+ "role": {
+ "type": "string"
+ },
+ "subordinate": {
+ "type": "boolean"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "application",
+ "name",
+ "role",
+ "subordinate"
+ ]
+ },
+ "Entities": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "Entity": {
+ "type": "object",
+ "properties": {
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag"
+ ]
+ },
+ "EntityStatus": {
+ "type": "object",
+ "properties": {
+ "data": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ },
+ "info": {
+ "type": "string"
+ },
+ "since": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "status": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "status",
+ "info",
+ "since"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ErrorResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "FindToolsParams": {
+ "type": "object",
+ "properties": {
+ "arch": {
+ "type": "string"
+ },
+ "major": {
+ "type": "integer"
+ },
+ "minor": {
+ "type": "integer"
+ },
+ "number": {
+ "$ref": "#/definitions/Number"
+ },
+ "series": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "number",
+ "major",
+ "minor",
+ "arch",
+ "series"
+ ]
+ },
+ "FindToolsResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "list": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Tools"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "list"
+ ]
+ },
+ "FullStatus": {
+ "type": "object",
+ "properties": {
+ "applications": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "$ref": "#/definitions/ApplicationStatus"
+ }
+ }
+ },
+ "machines": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "$ref": "#/definitions/MachineStatus"
+ }
+ }
+ },
+ "model": {
+ "$ref": "#/definitions/ModelStatusInfo"
+ },
+ "relations": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/RelationStatus"
+ }
+ },
+ "remote-applications": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "$ref": "#/definitions/RemoteApplicationStatus"
+ }
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "model",
+ "machines",
+ "applications",
+ "remote-applications",
+ "relations"
+ ]
+ },
+ "GetConstraintsResults": {
+ "type": "object",
+ "properties": {
+ "constraints": {
+ "$ref": "#/definitions/Value"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "constraints"
+ ]
+ },
+ "HardwareCharacteristics": {
+ "type": "object",
+ "properties": {
+ "arch": {
+ "type": "string"
+ },
+ "availability-zone": {
+ "type": "string"
+ },
+ "cpu-cores": {
+ "type": "integer"
+ },
+ "cpu-power": {
+ "type": "integer"
+ },
+ "mem": {
+ "type": "integer"
+ },
+ "root-disk": {
+ "type": "integer"
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "History": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "statuses": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DetailedStatus"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "statuses"
+ ]
+ },
+ "HostPort": {
+ "type": "object",
+ "properties": {
+ "Address": {
+ "$ref": "#/definitions/Address"
+ },
+ "port": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "Address",
+ "port"
+ ]
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "MachineHardware": {
+ "type": "object",
+ "properties": {
+ "arch": {
+ "type": "string"
+ },
+ "availability-zone": {
+ "type": "string"
+ },
+ "cores": {
+ "type": "integer"
+ },
+ "cpu-power": {
+ "type": "integer"
+ },
+ "mem": {
+ "type": "integer"
+ },
+ "root-disk": {
+ "type": "integer"
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "MachineStatus": {
+ "type": "object",
+ "properties": {
+ "agent-status": {
+ "$ref": "#/definitions/DetailedStatus"
+ },
+ "constraints": {
+ "type": "string"
+ },
+ "containers": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "$ref": "#/definitions/MachineStatus"
+ }
+ }
+ },
+ "dns-name": {
+ "type": "string"
+ },
+ "hardware": {
+ "type": "string"
+ },
+ "has-vote": {
+ "type": "boolean"
+ },
+ "id": {
+ "type": "string"
+ },
+ "instance-id": {
+ "type": "string"
+ },
+ "instance-status": {
+ "$ref": "#/definitions/DetailedStatus"
+ },
+ "ip-addresses": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "jobs": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "network-interfaces": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "$ref": "#/definitions/NetworkInterface"
+ }
+ }
+ },
+ "series": {
+ "type": "string"
+ },
+ "wants-vote": {
+ "type": "boolean"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "agent-status",
+ "instance-status",
+ "dns-name",
+ "instance-id",
+ "series",
+ "id",
+ "containers",
+ "constraints",
+ "hardware",
+ "jobs",
+ "has-vote",
+ "wants-vote"
+ ]
+ },
+ "MeterStatus": {
+ "type": "object",
+ "properties": {
+ "color": {
+ "type": "string"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "color",
+ "message"
+ ]
+ },
+ "ModelConfigResults": {
+ "type": "object",
+ "properties": {
+ "config": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "$ref": "#/definitions/ConfigValue"
+ }
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "config"
+ ]
+ },
+ "ModelInfo": {
+ "type": "object",
+ "properties": {
+ "agent-version": {
+ "$ref": "#/definitions/Number"
+ },
+ "cloud-credential-tag": {
+ "type": "string"
+ },
+ "cloud-region": {
+ "type": "string"
+ },
+ "cloud-tag": {
+ "type": "string"
+ },
+ "controller-uuid": {
+ "type": "string"
+ },
+ "default-series": {
+ "type": "string"
+ },
+ "life": {
+ "type": "string"
+ },
+ "machines": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ModelMachineInfo"
+ }
+ },
+ "migration": {
+ "$ref": "#/definitions/ModelMigrationStatus"
+ },
+ "name": {
+ "type": "string"
+ },
+ "owner-tag": {
+ "type": "string"
+ },
+ "provider-type": {
+ "type": "string"
+ },
+ "sla": {
+ "$ref": "#/definitions/ModelSLAInfo"
+ },
+ "status": {
+ "$ref": "#/definitions/EntityStatus"
+ },
+ "users": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ModelUserInfo"
+ }
+ },
+ "uuid": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "name",
+ "uuid",
+ "controller-uuid",
+ "cloud-tag",
+ "owner-tag",
+ "life",
+ "users",
+ "machines",
+ "sla",
+ "agent-version"
+ ]
+ },
+ "ModelMachineInfo": {
+ "type": "object",
+ "properties": {
+ "hardware": {
+ "$ref": "#/definitions/MachineHardware"
+ },
+ "has-vote": {
+ "type": "boolean"
+ },
+ "id": {
+ "type": "string"
+ },
+ "instance-id": {
+ "type": "string"
+ },
+ "status": {
+ "type": "string"
+ },
+ "wants-vote": {
+ "type": "boolean"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "id"
+ ]
+ },
+ "ModelMigrationStatus": {
+ "type": "object",
+ "properties": {
+ "end": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "start": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "status": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "status",
+ "start"
+ ]
+ },
+ "ModelSLA": {
+ "type": "object",
+ "properties": {
+ "ModelSLAInfo": {
+ "$ref": "#/definitions/ModelSLAInfo"
+ },
+ "creds": {
+ "type": "array",
+ "items": {
+ "type": "integer"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "ModelSLAInfo",
+ "creds"
+ ]
+ },
+ "ModelSLAInfo": {
+ "type": "object",
+ "properties": {
+ "level": {
+ "type": "string"
+ },
+ "owner": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "level",
+ "owner"
+ ]
+ },
+ "ModelSet": {
+ "type": "object",
+ "properties": {
+ "config": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "config"
+ ]
+ },
+ "ModelStatusInfo": {
+ "type": "object",
+ "properties": {
+ "available-version": {
+ "type": "string"
+ },
+ "cloud-tag": {
+ "type": "string"
+ },
+ "meter-status": {
+ "$ref": "#/definitions/MeterStatus"
+ },
+ "model-status": {
+ "$ref": "#/definitions/DetailedStatus"
+ },
+ "name": {
+ "type": "string"
+ },
+ "region": {
+ "type": "string"
+ },
+ "sla": {
+ "type": "string"
+ },
+ "version": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "name",
+ "cloud-tag",
+ "version",
+ "available-version",
+ "model-status",
+ "meter-status",
+ "sla"
+ ]
+ },
+ "ModelUnset": {
+ "type": "object",
+ "properties": {
+ "keys": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "keys"
+ ]
+ },
+ "ModelUserInfo": {
+ "type": "object",
+ "properties": {
+ "access": {
+ "type": "string"
+ },
+ "display-name": {
+ "type": "string"
+ },
+ "last-connection": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "user": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "user",
+ "display-name",
+ "last-connection",
+ "access"
+ ]
+ },
+ "ModelUserInfoResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "$ref": "#/definitions/ModelUserInfo"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ModelUserInfoResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ModelUserInfoResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "NetworkInterface": {
+ "type": "object",
+ "properties": {
+ "dns-nameservers": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "gateway": {
+ "type": "string"
+ },
+ "ip-addresses": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "is-up": {
+ "type": "boolean"
+ },
+ "mac-address": {
+ "type": "string"
+ },
+ "space": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "ip-addresses",
+ "mac-address",
+ "is-up"
+ ]
+ },
+ "Number": {
+ "type": "object",
+ "properties": {
+ "Build": {
+ "type": "integer"
+ },
+ "Major": {
+ "type": "integer"
+ },
+ "Minor": {
+ "type": "integer"
+ },
+ "Patch": {
+ "type": "integer"
+ },
+ "Tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "Major",
+ "Minor",
+ "Tag",
+ "Patch",
+ "Build"
+ ]
+ },
+ "Placement": {
+ "type": "object",
+ "properties": {
+ "directive": {
+ "type": "string"
+ },
+ "scope": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "scope",
+ "directive"
+ ]
+ },
+ "PrivateAddress": {
+ "type": "object",
+ "properties": {
+ "target": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "target"
+ ]
+ },
+ "PrivateAddressResults": {
+ "type": "object",
+ "properties": {
+ "private-address": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "private-address"
+ ]
+ },
+ "ProvisioningScriptParams": {
+ "type": "object",
+ "properties": {
+ "data-dir": {
+ "type": "string"
+ },
+ "disable-package-commands": {
+ "type": "boolean"
+ },
+ "machine-id": {
+ "type": "string"
+ },
+ "nonce": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "machine-id",
+ "nonce",
+ "data-dir",
+ "disable-package-commands"
+ ]
+ },
+ "ProvisioningScriptResult": {
+ "type": "object",
+ "properties": {
+ "script": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "script"
+ ]
+ },
+ "PublicAddress": {
+ "type": "object",
+ "properties": {
+ "target": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "target"
+ ]
+ },
+ "PublicAddressResults": {
+ "type": "object",
+ "properties": {
+ "public-address": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "public-address"
+ ]
+ },
+ "RelationStatus": {
+ "type": "object",
+ "properties": {
+ "endpoints": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/EndpointStatus"
+ }
+ },
+ "id": {
+ "type": "integer"
+ },
+ "interface": {
+ "type": "string"
+ },
+ "key": {
+ "type": "string"
+ },
+ "scope": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "id",
+ "key",
+ "interface",
+ "scope",
+ "endpoints"
+ ]
+ },
+ "RemoteApplicationStatus": {
+ "type": "object",
+ "properties": {
+ "application-name": {
+ "type": "string"
+ },
+ "application-url": {
+ "type": "string"
+ },
+ "endpoints": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/RemoteEndpoint"
+ }
+ },
+ "err": {
+ "type": "object",
+ "additionalProperties": true
+ },
+ "life": {
+ "type": "string"
+ },
+ "relations": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "status": {
+ "$ref": "#/definitions/DetailedStatus"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "application-url",
+ "application-name",
+ "endpoints",
+ "life",
+ "relations",
+ "status"
+ ]
+ },
+ "RemoteEndpoint": {
+ "type": "object",
+ "properties": {
+ "interface": {
+ "type": "string"
+ },
+ "limit": {
+ "type": "integer"
+ },
+ "name": {
+ "type": "string"
+ },
+ "role": {
+ "type": "string"
+ },
+ "scope": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "name",
+ "role",
+ "interface",
+ "limit",
+ "scope"
+ ]
+ },
+ "ResolveCharmResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "type": "string"
+ },
+ "url": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ResolveCharmResults": {
+ "type": "object",
+ "properties": {
+ "urls": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ResolveCharmResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "urls"
+ ]
+ },
+ "ResolveCharms": {
+ "type": "object",
+ "properties": {
+ "references": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "references"
+ ]
+ },
+ "Resolved": {
+ "type": "object",
+ "properties": {
+ "retry": {
+ "type": "boolean"
+ },
+ "unit-name": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "unit-name",
+ "retry"
+ ]
+ },
+ "SetConstraints": {
+ "type": "object",
+ "properties": {
+ "application": {
+ "type": "string"
+ },
+ "constraints": {
+ "$ref": "#/definitions/Value"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "application",
+ "constraints"
+ ]
+ },
+ "SetModelAgentVersion": {
+ "type": "object",
+ "properties": {
+ "version": {
+ "$ref": "#/definitions/Number"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "version"
+ ]
+ },
+ "StatusHistoryFilter": {
+ "type": "object",
+ "properties": {
+ "date": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "delta": {
+ "type": "integer"
+ },
+ "exclude": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "size": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "size",
+ "date",
+ "delta",
+ "exclude"
+ ]
+ },
+ "StatusHistoryRequest": {
+ "type": "object",
+ "properties": {
+ "filter": {
+ "$ref": "#/definitions/StatusHistoryFilter"
+ },
+ "historyKind": {
+ "type": "string"
+ },
+ "size": {
+ "type": "integer"
+ },
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "historyKind",
+ "size",
+ "filter",
+ "tag"
+ ]
+ },
+ "StatusHistoryRequests": {
+ "type": "object",
+ "properties": {
+ "requests": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StatusHistoryRequest"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "requests"
+ ]
+ },
+ "StatusHistoryResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "history": {
+ "$ref": "#/definitions/History"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "history"
+ ]
+ },
+ "StatusHistoryResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StatusHistoryResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "StatusParams": {
+ "type": "object",
+ "properties": {
+ "patterns": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "patterns"
+ ]
+ },
+ "StringResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "result"
+ ]
+ },
+ "Tools": {
+ "type": "object",
+ "properties": {
+ "sha256": {
+ "type": "string"
+ },
+ "size": {
+ "type": "integer"
+ },
+ "url": {
+ "type": "string"
+ },
+ "version": {
+ "$ref": "#/definitions/Binary"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "version",
+ "url",
+ "size"
+ ]
+ },
+ "UnitStatus": {
+ "type": "object",
+ "properties": {
+ "agent-status": {
+ "$ref": "#/definitions/DetailedStatus"
+ },
+ "charm": {
+ "type": "string"
+ },
+ "leader": {
+ "type": "boolean"
+ },
+ "machine": {
+ "type": "string"
+ },
+ "opened-ports": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "public-address": {
+ "type": "string"
+ },
+ "subordinates": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "$ref": "#/definitions/UnitStatus"
+ }
+ }
+ },
+ "workload-status": {
+ "$ref": "#/definitions/DetailedStatus"
+ },
+ "workload-version": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "agent-status",
+ "workload-status",
+ "workload-version",
+ "machine",
+ "opened-ports",
+ "public-address",
+ "charm",
+ "subordinates"
+ ]
+ },
+ "Value": {
+ "type": "object",
+ "properties": {
+ "arch": {
+ "type": "string"
+ },
+ "container": {
+ "type": "string"
+ },
+ "cores": {
+ "type": "integer"
+ },
+ "cpu-power": {
+ "type": "integer"
+ },
+ "instance-type": {
+ "type": "string"
+ },
+ "mem": {
+ "type": "integer"
+ },
+ "root-disk": {
+ "type": "integer"
+ },
+ "spaces": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "virt-type": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ }
+ }
+ }
+ },
+ {
+ "Name": "Cloud",
+ "Version": 1,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "Cloud": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/CloudResults"
+ }
+ }
+ },
+ "Clouds": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/CloudsResult"
+ }
+ }
+ },
+ "Credential": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/CloudCredentialResults"
+ }
+ }
+ },
+ "DefaultCloud": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/StringResult"
+ }
+ }
+ },
+ "InstanceTypes": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/CloudInstanceTypesConstraints"
+ },
+ "Result": {
+ "$ref": "#/definitions/InstanceTypesResults"
+ }
+ }
+ },
+ "RevokeCredentials": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "UpdateCredentials": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/UpdateCloudCredentials"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "UserCredentials": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/UserClouds"
+ },
+ "Result": {
+ "$ref": "#/definitions/StringsResults"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Cloud": {
+ "type": "object",
+ "properties": {
+ "auth-types": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "endpoint": {
+ "type": "string"
+ },
+ "identity-endpoint": {
+ "type": "string"
+ },
+ "regions": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CloudRegion"
+ }
+ },
+ "storage-endpoint": {
+ "type": "string"
+ },
+ "type": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "type"
+ ]
+ },
+ "CloudCredential": {
+ "type": "object",
+ "properties": {
+ "attrs": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "string"
+ }
+ }
+ },
+ "auth-type": {
+ "type": "string"
+ },
+ "redacted": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "auth-type"
+ ]
+ },
+ "CloudCredentialResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "$ref": "#/definitions/CloudCredential"
+ }
+ },
+ "additionalProperties": false
+ },
+ "CloudCredentialResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CloudCredentialResult"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "CloudInstanceTypesConstraint": {
+ "type": "object",
+ "properties": {
+ "cloud-tag": {
+ "type": "string"
+ },
+ "constraints": {
+ "$ref": "#/definitions/Value"
+ },
+ "region": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "cloud-tag",
+ "region"
+ ]
+ },
+ "CloudInstanceTypesConstraints": {
+ "type": "object",
+ "properties": {
+ "constraints": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CloudInstanceTypesConstraint"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "constraints"
+ ]
+ },
+ "CloudRegion": {
+ "type": "object",
+ "properties": {
+ "endpoint": {
+ "type": "string"
+ },
+ "identity-endpoint": {
+ "type": "string"
+ },
+ "name": {
+ "type": "string"
+ },
+ "storage-endpoint": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "name"
+ ]
+ },
+ "CloudResult": {
+ "type": "object",
+ "properties": {
+ "cloud": {
+ "$ref": "#/definitions/Cloud"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false
+ },
+ "CloudResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CloudResult"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "CloudsResult": {
+ "type": "object",
+ "properties": {
+ "clouds": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "$ref": "#/definitions/Cloud"
+ }
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "Entities": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "Entity": {
+ "type": "object",
+ "properties": {
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ErrorResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "InstanceType": {
+ "type": "object",
+ "properties": {
+ "arches": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "cost": {
+ "type": "integer"
+ },
+ "cpu-cores": {
+ "type": "integer"
+ },
+ "deprecated": {
+ "type": "boolean"
+ },
+ "memory": {
+ "type": "integer"
+ },
+ "name": {
+ "type": "string"
+ },
+ "root-disk": {
+ "type": "integer"
+ },
+ "virt-type": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "arches",
+ "cpu-cores",
+ "memory"
+ ]
+ },
+ "InstanceTypesResult": {
+ "type": "object",
+ "properties": {
+ "cost-currency": {
+ "type": "string"
+ },
+ "cost-divisor": {
+ "type": "integer"
+ },
+ "cost-unit": {
+ "type": "string"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "instance-types": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/InstanceType"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "InstanceTypesResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/InstanceTypesResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "StringResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "result"
+ ]
+ },
+ "StringsResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "StringsResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StringsResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "UpdateCloudCredential": {
+ "type": "object",
+ "properties": {
+ "credential": {
+ "$ref": "#/definitions/CloudCredential"
+ },
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag",
+ "credential"
+ ]
+ },
+ "UpdateCloudCredentials": {
+ "type": "object",
+ "properties": {
+ "credentials": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/UpdateCloudCredential"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "UserCloud": {
+ "type": "object",
+ "properties": {
+ "cloud-tag": {
+ "type": "string"
+ },
+ "user-tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "user-tag",
+ "cloud-tag"
+ ]
+ },
+ "UserClouds": {
+ "type": "object",
+ "properties": {
+ "user-clouds": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/UserCloud"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "Value": {
+ "type": "object",
+ "properties": {
+ "arch": {
+ "type": "string"
+ },
+ "container": {
+ "type": "string"
+ },
+ "cores": {
+ "type": "integer"
+ },
+ "cpu-power": {
+ "type": "integer"
+ },
+ "instance-type": {
+ "type": "string"
+ },
+ "mem": {
+ "type": "integer"
+ },
+ "root-disk": {
+ "type": "integer"
+ },
+ "spaces": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "virt-type": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ }
+ }
+ }
+ },
+ {
+ "Name": "Controller",
+ "Version": 3,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "AllModels": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/UserModelList"
+ }
+ }
+ },
+ "CloudSpec": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/CloudSpecResults"
+ }
+ }
+ },
+ "ControllerConfig": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/ControllerConfigResult"
+ }
+ }
+ },
+ "DestroyController": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/DestroyControllerArgs"
+ }
+ }
+ },
+ "GetCloudSpec": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ModelTag"
+ },
+ "Result": {
+ "$ref": "#/definitions/CloudSpecResult"
+ }
+ }
+ },
+ "GetControllerAccess": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/UserAccessResults"
+ }
+ }
+ },
+ "HostedModelConfigs": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/HostedModelConfigsResults"
+ }
+ }
+ },
+ "InitiateMigration": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/InitiateMigrationArgs"
+ },
+ "Result": {
+ "$ref": "#/definitions/InitiateMigrationResults"
+ }
+ }
+ },
+ "ListBlockedModels": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/ModelBlockInfoList"
+ }
+ }
+ },
+ "ModelConfig": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/ModelConfigResults"
+ }
+ }
+ },
+ "ModelStatus": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ModelStatusResults"
+ }
+ }
+ },
+ "ModifyControllerAccess": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ModifyControllerAccessRequest"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "RemoveBlocks": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/RemoveBlocksArgs"
+ }
+ }
+ },
+ "WatchAllModels": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/AllWatcherId"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "AllWatcherId": {
+ "type": "object",
+ "properties": {
+ "watcher-id": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "watcher-id"
+ ]
+ },
+ "CloudCredential": {
+ "type": "object",
+ "properties": {
+ "attrs": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "string"
+ }
+ }
+ },
+ "auth-type": {
+ "type": "string"
+ },
+ "redacted": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "auth-type"
+ ]
+ },
+ "CloudSpec": {
+ "type": "object",
+ "properties": {
+ "credential": {
+ "$ref": "#/definitions/CloudCredential"
+ },
+ "endpoint": {
+ "type": "string"
+ },
+ "identity-endpoint": {
+ "type": "string"
+ },
+ "name": {
+ "type": "string"
+ },
+ "region": {
+ "type": "string"
+ },
+ "storage-endpoint": {
+ "type": "string"
+ },
+ "type": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "type",
+ "name"
+ ]
+ },
+ "CloudSpecResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "$ref": "#/definitions/CloudSpec"
+ }
+ },
+ "additionalProperties": false
+ },
+ "CloudSpecResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CloudSpecResult"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "ConfigValue": {
+ "type": "object",
+ "properties": {
+ "source": {
+ "type": "string"
+ },
+ "value": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "value",
+ "source"
+ ]
+ },
+ "ControllerConfigResult": {
+ "type": "object",
+ "properties": {
+ "config": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "config"
+ ]
+ },
+ "DestroyControllerArgs": {
+ "type": "object",
+ "properties": {
+ "destroy-models": {
+ "type": "boolean"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "destroy-models"
+ ]
+ },
+ "Entities": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "Entity": {
+ "type": "object",
+ "properties": {
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ErrorResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "HostedModelConfig": {
+ "type": "object",
+ "properties": {
+ "cloud-spec": {
+ "$ref": "#/definitions/CloudSpec"
+ },
+ "config": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "name": {
+ "type": "string"
+ },
+ "owner": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "name",
+ "owner"
+ ]
+ },
+ "HostedModelConfigsResults": {
+ "type": "object",
+ "properties": {
+ "models": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/HostedModelConfig"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "models"
+ ]
+ },
+ "InitiateMigrationArgs": {
+ "type": "object",
+ "properties": {
+ "specs": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MigrationSpec"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "specs"
+ ]
+ },
+ "InitiateMigrationResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "migration-id": {
+ "type": "string"
+ },
+ "model-tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "model-tag",
+ "migration-id"
+ ]
+ },
+ "InitiateMigrationResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/InitiateMigrationResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "MachineHardware": {
+ "type": "object",
+ "properties": {
+ "arch": {
+ "type": "string"
+ },
+ "availability-zone": {
+ "type": "string"
+ },
+ "cores": {
+ "type": "integer"
+ },
+ "cpu-power": {
+ "type": "integer"
+ },
+ "mem": {
+ "type": "integer"
+ },
+ "root-disk": {
+ "type": "integer"
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "MigrationSpec": {
+ "type": "object",
+ "properties": {
+ "model-tag": {
+ "type": "string"
+ },
+ "target-info": {
+ "$ref": "#/definitions/MigrationTargetInfo"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "model-tag",
+ "target-info"
+ ]
+ },
+ "MigrationTargetInfo": {
+ "type": "object",
+ "properties": {
+ "addrs": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "auth-tag": {
+ "type": "string"
+ },
+ "ca-cert": {
+ "type": "string"
+ },
+ "controller-tag": {
+ "type": "string"
+ },
+ "macaroons": {
+ "type": "string"
+ },
+ "password": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "controller-tag",
+ "addrs",
+ "ca-cert",
+ "auth-tag"
+ ]
+ },
+ "Model": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string"
+ },
+ "owner-tag": {
+ "type": "string"
+ },
+ "uuid": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "name",
+ "uuid",
+ "owner-tag"
+ ]
+ },
+ "ModelBlockInfo": {
+ "type": "object",
+ "properties": {
+ "blocks": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "model-uuid": {
+ "type": "string"
+ },
+ "name": {
+ "type": "string"
+ },
+ "owner-tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "name",
+ "model-uuid",
+ "owner-tag",
+ "blocks"
+ ]
+ },
+ "ModelBlockInfoList": {
+ "type": "object",
+ "properties": {
+ "models": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ModelBlockInfo"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "ModelConfigResults": {
+ "type": "object",
+ "properties": {
+ "config": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "$ref": "#/definitions/ConfigValue"
+ }
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "config"
+ ]
+ },
+ "ModelMachineInfo": {
+ "type": "object",
+ "properties": {
+ "hardware": {
+ "$ref": "#/definitions/MachineHardware"
+ },
+ "has-vote": {
+ "type": "boolean"
+ },
+ "id": {
+ "type": "string"
+ },
+ "instance-id": {
+ "type": "string"
+ },
+ "status": {
+ "type": "string"
+ },
+ "wants-vote": {
+ "type": "boolean"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "id"
+ ]
+ },
+ "ModelStatus": {
+ "type": "object",
+ "properties": {
+ "application-count": {
+ "type": "integer"
+ },
+ "hosted-machine-count": {
+ "type": "integer"
+ },
+ "life": {
+ "type": "string"
+ },
+ "machines": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ModelMachineInfo"
+ }
+ },
+ "model-tag": {
+ "type": "string"
+ },
+ "owner-tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "model-tag",
+ "life",
+ "hosted-machine-count",
+ "application-count",
+ "owner-tag"
+ ]
+ },
+ "ModelStatusResults": {
+ "type": "object",
+ "properties": {
+ "models": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ModelStatus"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "models"
+ ]
+ },
+ "ModelTag": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "ModifyControllerAccess": {
+ "type": "object",
+ "properties": {
+ "access": {
+ "type": "string"
+ },
+ "action": {
+ "type": "string"
+ },
+ "user-tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "user-tag",
+ "action",
+ "access"
+ ]
+ },
+ "ModifyControllerAccessRequest": {
+ "type": "object",
+ "properties": {
+ "changes": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ModifyControllerAccess"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "changes"
+ ]
+ },
+ "RemoveBlocksArgs": {
+ "type": "object",
+ "properties": {
+ "all": {
+ "type": "boolean"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "all"
+ ]
+ },
+ "UserAccess": {
+ "type": "object",
+ "properties": {
+ "access": {
+ "type": "string"
+ },
+ "user-tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "user-tag",
+ "access"
+ ]
+ },
+ "UserAccessResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "$ref": "#/definitions/UserAccess"
+ }
+ },
+ "additionalProperties": false
+ },
+ "UserAccessResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/UserAccessResult"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "UserModel": {
+ "type": "object",
+ "properties": {
+ "last-connection": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "model": {
+ "$ref": "#/definitions/Model"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "model",
+ "last-connection"
+ ]
+ },
+ "UserModelList": {
+ "type": "object",
+ "properties": {
+ "user-models": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/UserModel"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "user-models"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "Deployer",
+ "Version": 1,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "APIAddresses": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/StringsResult"
+ }
+ }
+ },
+ "APIHostPorts": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/APIHostPortsResult"
+ }
+ }
+ },
+ "CACert": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/BytesResult"
+ }
+ }
+ },
+ "ConnectionInfo": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/DeployerConnectionValues"
+ }
+ }
+ },
+ "Life": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/LifeResults"
+ }
+ }
+ },
+ "ModelUUID": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/StringResult"
+ }
+ }
+ },
+ "Remove": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "SetPasswords": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/EntityPasswords"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "SetStatus": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/SetStatus"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "StateAddresses": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/StringsResult"
+ }
+ }
+ },
+ "UpdateStatus": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/SetStatus"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "WatchAPIHostPorts": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/NotifyWatchResult"
+ }
+ }
+ },
+ "WatchUnits": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/StringsWatchResults"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "APIHostPortsResult": {
+ "type": "object",
+ "properties": {
+ "servers": {
+ "type": "array",
+ "items": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/HostPort"
+ }
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "servers"
+ ]
+ },
+ "Address": {
+ "type": "object",
+ "properties": {
+ "scope": {
+ "type": "string"
+ },
+ "space-name": {
+ "type": "string"
+ },
+ "type": {
+ "type": "string"
+ },
+ "value": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "value",
+ "type",
+ "scope"
+ ]
+ },
+ "BytesResult": {
+ "type": "object",
+ "properties": {
+ "result": {
+ "type": "array",
+ "items": {
+ "type": "integer"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "result"
+ ]
+ },
+ "DeployerConnectionValues": {
+ "type": "object",
+ "properties": {
+ "api-addresses": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "state-addresses": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "state-addresses",
+ "api-addresses"
+ ]
+ },
+ "Entities": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "Entity": {
+ "type": "object",
+ "properties": {
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag"
+ ]
+ },
+ "EntityPassword": {
+ "type": "object",
+ "properties": {
+ "password": {
+ "type": "string"
+ },
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag",
+ "password"
+ ]
+ },
+ "EntityPasswords": {
+ "type": "object",
+ "properties": {
+ "changes": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/EntityPassword"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "changes"
+ ]
+ },
+ "EntityStatusArgs": {
+ "type": "object",
+ "properties": {
+ "data": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ },
+ "info": {
+ "type": "string"
+ },
+ "status": {
+ "type": "string"
+ },
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag",
+ "status",
+ "info",
+ "data"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ErrorResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "HostPort": {
+ "type": "object",
+ "properties": {
+ "Address": {
+ "$ref": "#/definitions/Address"
+ },
+ "port": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "Address",
+ "port"
+ ]
+ },
+ "LifeResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "life": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "life"
+ ]
+ },
+ "LifeResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/LifeResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "NotifyWatchResult": {
+ "type": "object",
+ "properties": {
+ "NotifyWatcherId": {
+ "type": "string"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "NotifyWatcherId"
+ ]
+ },
+ "SetStatus": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/EntityStatusArgs"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "StringResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "result"
+ ]
+ },
+ "StringsResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "StringsWatchResult": {
+ "type": "object",
+ "properties": {
+ "changes": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "watcher-id": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "watcher-id"
+ ]
+ },
+ "StringsWatchResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StringsWatchResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "DiskManager",
+ "Version": 2,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "SetMachineBlockDevices": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/SetMachineBlockDevices"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "BlockDevice": {
+ "type": "object",
+ "properties": {
+ "BusAddress": {
+ "type": "string"
+ },
+ "DeviceLinks": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "DeviceName": {
+ "type": "string"
+ },
+ "FilesystemType": {
+ "type": "string"
+ },
+ "HardwareId": {
+ "type": "string"
+ },
+ "InUse": {
+ "type": "boolean"
+ },
+ "Label": {
+ "type": "string"
+ },
+ "MountPoint": {
+ "type": "string"
+ },
+ "Size": {
+ "type": "integer"
+ },
+ "UUID": {
+ "type": "string"
+ },
+ "WWN": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "DeviceName",
+ "DeviceLinks",
+ "Label",
+ "UUID",
+ "HardwareId",
+ "WWN",
+ "BusAddress",
+ "Size",
+ "FilesystemType",
+ "InUse",
+ "MountPoint"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ErrorResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "MachineBlockDevices": {
+ "type": "object",
+ "properties": {
+ "block-devices": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/BlockDevice"
+ }
+ },
+ "machine": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "machine"
+ ]
+ },
+ "SetMachineBlockDevices": {
+ "type": "object",
+ "properties": {
+ "machine-block-devices": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MachineBlockDevices"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "machine-block-devices"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "EntityWatcher",
+ "Version": 2,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "Next": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/EntitiesWatchResult"
+ }
+ }
+ },
+ "Stop": {
+ "type": "object"
+ }
+ },
+ "definitions": {
+ "EntitiesWatchResult": {
+ "type": "object",
+ "properties": {
+ "changes": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "watcher-id": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "watcher-id"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ }
+ }
+ }
+ },
+ {
+ "Name": "FilesystemAttachmentsWatcher",
+ "Version": 2,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "Next": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/MachineStorageIdsWatchResult"
+ }
+ }
+ },
+ "Stop": {
+ "type": "object"
+ }
+ },
+ "definitions": {
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "MachineStorageId": {
+ "type": "object",
+ "properties": {
+ "attachment-tag": {
+ "type": "string"
+ },
+ "machine-tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "machine-tag",
+ "attachment-tag"
+ ]
+ },
+ "MachineStorageIdsWatchResult": {
+ "type": "object",
+ "properties": {
+ "changes": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MachineStorageId"
+ }
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "watcher-id": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "watcher-id",
+ "changes"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "Firewaller",
+ "Version": 3,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "CloudSpec": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/CloudSpecResults"
+ }
+ }
+ },
+ "GetAssignedMachine": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/StringResults"
+ }
+ }
+ },
+ "GetCloudSpec": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ModelTag"
+ },
+ "Result": {
+ "$ref": "#/definitions/CloudSpecResult"
+ }
+ }
+ },
+ "GetExposed": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/BoolResults"
+ }
+ }
+ },
+ "GetMachineActiveSubnets": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/StringsResults"
+ }
+ }
+ },
+ "GetMachinePorts": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/MachinePortsParams"
+ },
+ "Result": {
+ "$ref": "#/definitions/MachinePortsResults"
+ }
+ }
+ },
+ "InstanceId": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/StringResults"
+ }
+ }
+ },
+ "Life": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/LifeResults"
+ }
+ }
+ },
+ "ModelConfig": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/ModelConfigResult"
+ }
+ }
+ },
+ "Watch": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/NotifyWatchResults"
+ }
+ }
+ },
+ "WatchForModelConfigChanges": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/NotifyWatchResult"
+ }
+ }
+ },
+ "WatchModelMachines": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/StringsWatchResult"
+ }
+ }
+ },
+ "WatchOpenedPorts": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/StringsWatchResults"
+ }
+ }
+ },
+ "WatchUnits": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/StringsWatchResults"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "BoolResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "type": "boolean"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "result"
+ ]
+ },
+ "BoolResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/BoolResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "CloudCredential": {
+ "type": "object",
+ "properties": {
+ "attrs": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "string"
+ }
+ }
+ },
+ "auth-type": {
+ "type": "string"
+ },
+ "redacted": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "auth-type"
+ ]
+ },
+ "CloudSpec": {
+ "type": "object",
+ "properties": {
+ "credential": {
+ "$ref": "#/definitions/CloudCredential"
+ },
+ "endpoint": {
+ "type": "string"
+ },
+ "identity-endpoint": {
+ "type": "string"
+ },
+ "name": {
+ "type": "string"
+ },
+ "region": {
+ "type": "string"
+ },
+ "storage-endpoint": {
+ "type": "string"
+ },
+ "type": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "type",
+ "name"
+ ]
+ },
+ "CloudSpecResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "$ref": "#/definitions/CloudSpec"
+ }
+ },
+ "additionalProperties": false
+ },
+ "CloudSpecResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CloudSpecResult"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "Entities": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "Entity": {
+ "type": "object",
+ "properties": {
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "LifeResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "life": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "life"
+ ]
+ },
+ "LifeResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/LifeResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "MachinePortRange": {
+ "type": "object",
+ "properties": {
+ "port-range": {
+ "$ref": "#/definitions/PortRange"
+ },
+ "relation-tag": {
+ "type": "string"
+ },
+ "unit-tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "unit-tag",
+ "relation-tag",
+ "port-range"
+ ]
+ },
+ "MachinePorts": {
+ "type": "object",
+ "properties": {
+ "machine-tag": {
+ "type": "string"
+ },
+ "subnet-tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "machine-tag",
+ "subnet-tag"
+ ]
+ },
+ "MachinePortsParams": {
+ "type": "object",
+ "properties": {
+ "params": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MachinePorts"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "params"
+ ]
+ },
+ "MachinePortsResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "ports": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MachinePortRange"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "ports"
+ ]
+ },
+ "MachinePortsResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MachinePortsResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "ModelConfigResult": {
+ "type": "object",
+ "properties": {
+ "config": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "config"
+ ]
+ },
+ "ModelTag": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "NotifyWatchResult": {
+ "type": "object",
+ "properties": {
+ "NotifyWatcherId": {
+ "type": "string"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "NotifyWatcherId"
+ ]
+ },
+ "NotifyWatchResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/NotifyWatchResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "PortRange": {
+ "type": "object",
+ "properties": {
+ "from-port": {
+ "type": "integer"
+ },
+ "protocol": {
+ "type": "string"
+ },
+ "to-port": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "from-port",
+ "to-port",
+ "protocol"
+ ]
+ },
+ "StringResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "result"
+ ]
+ },
+ "StringResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StringResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "StringsResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "StringsResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StringsResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "StringsWatchResult": {
+ "type": "object",
+ "properties": {
+ "changes": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "watcher-id": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "watcher-id"
+ ]
+ },
+ "StringsWatchResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StringsWatchResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "HighAvailability",
+ "Version": 2,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "EnableHA": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ControllersSpecs"
+ },
+ "Result": {
+ "$ref": "#/definitions/ControllersChangeResults"
+ }
+ }
+ },
+ "ResumeHAReplicationAfterUpgrade": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ResumeReplicationParams"
+ }
+ }
+ },
+ "StopHAReplicationForUpgrade": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/UpgradeMongoParams"
+ },
+ "Result": {
+ "$ref": "#/definitions/MongoUpgradeResults"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Address": {
+ "type": "object",
+ "properties": {
+ "Scope": {
+ "type": "string"
+ },
+ "SpaceName": {
+ "type": "string"
+ },
+ "SpaceProviderId": {
+ "type": "string"
+ },
+ "Type": {
+ "type": "string"
+ },
+ "Value": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "Value",
+ "Type",
+ "Scope",
+ "SpaceName",
+ "SpaceProviderId"
+ ]
+ },
+ "ControllersChangeResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "$ref": "#/definitions/ControllersChanges"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "result"
+ ]
+ },
+ "ControllersChangeResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ControllersChangeResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "ControllersChanges": {
+ "type": "object",
+ "properties": {
+ "added": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "converted": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "demoted": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "maintained": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "promoted": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "removed": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "ControllersSpec": {
+ "type": "object",
+ "properties": {
+ "constraints": {
+ "$ref": "#/definitions/Value"
+ },
+ "num-controllers": {
+ "type": "integer"
+ },
+ "placement": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "series": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "num-controllers"
+ ]
+ },
+ "ControllersSpecs": {
+ "type": "object",
+ "properties": {
+ "specs": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ControllersSpec"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "specs"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "HAMember": {
+ "type": "object",
+ "properties": {
+ "public-address": {
+ "$ref": "#/definitions/Address"
+ },
+ "series": {
+ "type": "string"
+ },
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag",
+ "public-address",
+ "series"
+ ]
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "Member": {
+ "type": "object",
+ "properties": {
+ "Address": {
+ "type": "string"
+ },
+ "Arbiter": {
+ "type": "boolean"
+ },
+ "BuildIndexes": {
+ "type": "boolean"
+ },
+ "Hidden": {
+ "type": "boolean"
+ },
+ "Id": {
+ "type": "integer"
+ },
+ "Priority": {
+ "type": "number"
+ },
+ "SlaveDelay": {
+ "type": "integer"
+ },
+ "Tags": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "string"
+ }
+ }
+ },
+ "Votes": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "Id",
+ "Address",
+ "Arbiter",
+ "BuildIndexes",
+ "Hidden",
+ "Priority",
+ "Tags",
+ "SlaveDelay",
+ "Votes"
+ ]
+ },
+ "MongoUpgradeResults": {
+ "type": "object",
+ "properties": {
+ "ha-members": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/HAMember"
+ }
+ },
+ "master": {
+ "$ref": "#/definitions/HAMember"
+ },
+ "rs-members": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Member"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "rs-members",
+ "master",
+ "ha-members"
+ ]
+ },
+ "MongoVersion": {
+ "type": "object",
+ "properties": {
+ "engine": {
+ "type": "string"
+ },
+ "major": {
+ "type": "integer"
+ },
+ "minor": {
+ "type": "integer"
+ },
+ "patch": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "major",
+ "minor",
+ "patch",
+ "engine"
+ ]
+ },
+ "ResumeReplicationParams": {
+ "type": "object",
+ "properties": {
+ "members": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Member"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "members"
+ ]
+ },
+ "UpgradeMongoParams": {
+ "type": "object",
+ "properties": {
+ "target": {
+ "$ref": "#/definitions/MongoVersion"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "target"
+ ]
+ },
+ "Value": {
+ "type": "object",
+ "properties": {
+ "arch": {
+ "type": "string"
+ },
+ "container": {
+ "type": "string"
+ },
+ "cores": {
+ "type": "integer"
+ },
+ "cpu-power": {
+ "type": "integer"
+ },
+ "instance-type": {
+ "type": "string"
+ },
+ "mem": {
+ "type": "integer"
+ },
+ "root-disk": {
+ "type": "integer"
+ },
+ "spaces": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "virt-type": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ }
+ }
+ }
+ },
+ {
+ "Name": "HostKeyReporter",
+ "Version": 1,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "ReportKeys": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/SSHHostKeySet"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ErrorResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "SSHHostKeySet": {
+ "type": "object",
+ "properties": {
+ "entity-keys": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/SSHHostKeys"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entity-keys"
+ ]
+ },
+ "SSHHostKeys": {
+ "type": "object",
+ "properties": {
+ "public-keys": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag",
+ "public-keys"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "ImageManager",
+ "Version": 2,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "DeleteImages": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ImageFilterParams"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "ListImages": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ImageFilterParams"
+ },
+ "Result": {
+ "$ref": "#/definitions/ListImageResult"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ErrorResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "ImageFilterParams": {
+ "type": "object",
+ "properties": {
+ "images": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ImageSpec"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "images"
+ ]
+ },
+ "ImageMetadata": {
+ "type": "object",
+ "properties": {
+ "arch": {
+ "type": "string"
+ },
+ "created": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "kind": {
+ "type": "string"
+ },
+ "series": {
+ "type": "string"
+ },
+ "url": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "kind",
+ "arch",
+ "series",
+ "url",
+ "created"
+ ]
+ },
+ "ImageSpec": {
+ "type": "object",
+ "properties": {
+ "arch": {
+ "type": "string"
+ },
+ "kind": {
+ "type": "string"
+ },
+ "series": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "kind",
+ "arch",
+ "series"
+ ]
+ },
+ "ListImageResult": {
+ "type": "object",
+ "properties": {
+ "result": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ImageMetadata"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "result"
+ ]
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ }
+ }
+ }
+ },
+ {
+ "Name": "ImageMetadata",
+ "Version": 2,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "Delete": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/MetadataImageIds"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "List": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ImageMetadataFilter"
+ },
+ "Result": {
+ "$ref": "#/definitions/ListCloudImageMetadataResult"
+ }
+ }
+ },
+ "Save": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/MetadataSaveParams"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "UpdateFromPublishedImages": {
+ "type": "object"
+ }
+ },
+ "definitions": {
+ "CloudImageMetadata": {
+ "type": "object",
+ "properties": {
+ "arch": {
+ "type": "string"
+ },
+ "image-id": {
+ "type": "string"
+ },
+ "priority": {
+ "type": "integer"
+ },
+ "region": {
+ "type": "string"
+ },
+ "root-storage-size": {
+ "type": "integer"
+ },
+ "root-storage-type": {
+ "type": "string"
+ },
+ "series": {
+ "type": "string"
+ },
+ "source": {
+ "type": "string"
+ },
+ "stream": {
+ "type": "string"
+ },
+ "version": {
+ "type": "string"
+ },
+ "virt-type": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "image-id",
+ "region",
+ "version",
+ "series",
+ "arch",
+ "source",
+ "priority"
+ ]
+ },
+ "CloudImageMetadataList": {
+ "type": "object",
+ "properties": {
+ "metadata": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CloudImageMetadata"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ErrorResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "ImageMetadataFilter": {
+ "type": "object",
+ "properties": {
+ "arches": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "region": {
+ "type": "string"
+ },
+ "root-storage-type": {
+ "type": "string"
+ },
+ "series": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "stream": {
+ "type": "string"
+ },
+ "virt-type": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ListCloudImageMetadataResult": {
+ "type": "object",
+ "properties": {
+ "result": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CloudImageMetadata"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "result"
+ ]
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "MetadataImageIds": {
+ "type": "object",
+ "properties": {
+ "image-ids": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "image-ids"
+ ]
+ },
+ "MetadataSaveParams": {
+ "type": "object",
+ "properties": {
+ "metadata": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CloudImageMetadataList"
+ }
+ }
+ },
+ "additionalProperties": false
+ }
+ }
+ }
+ },
+ {
+ "Name": "InstancePoller",
+ "Version": 3,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "AreManuallyProvisioned": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/BoolResults"
+ }
+ }
+ },
+ "InstanceId": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/StringResults"
+ }
+ }
+ },
+ "InstanceStatus": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/StatusResults"
+ }
+ }
+ },
+ "Life": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/LifeResults"
+ }
+ }
+ },
+ "ModelConfig": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/ModelConfigResult"
+ }
+ }
+ },
+ "ProviderAddresses": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/MachineAddressesResults"
+ }
+ }
+ },
+ "SetInstanceStatus": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/SetStatus"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "SetProviderAddresses": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/SetMachinesAddresses"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "Status": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/StatusResults"
+ }
+ }
+ },
+ "WatchForModelConfigChanges": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/NotifyWatchResult"
+ }
+ }
+ },
+ "WatchModelMachines": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/StringsWatchResult"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Address": {
+ "type": "object",
+ "properties": {
+ "scope": {
+ "type": "string"
+ },
+ "space-name": {
+ "type": "string"
+ },
+ "type": {
+ "type": "string"
+ },
+ "value": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "value",
+ "type",
+ "scope"
+ ]
+ },
+ "BoolResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "type": "boolean"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "result"
+ ]
+ },
+ "BoolResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/BoolResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "Entities": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "Entity": {
+ "type": "object",
+ "properties": {
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag"
+ ]
+ },
+ "EntityStatusArgs": {
+ "type": "object",
+ "properties": {
+ "data": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ },
+ "info": {
+ "type": "string"
+ },
+ "status": {
+ "type": "string"
+ },
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag",
+ "status",
+ "info",
+ "data"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ErrorResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "LifeResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "life": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "life"
+ ]
+ },
+ "LifeResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/LifeResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "MachineAddresses": {
+ "type": "object",
+ "properties": {
+ "addresses": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Address"
+ }
+ },
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag",
+ "addresses"
+ ]
+ },
+ "MachineAddressesResult": {
+ "type": "object",
+ "properties": {
+ "addresses": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Address"
+ }
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "addresses"
+ ]
+ },
+ "MachineAddressesResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MachineAddressesResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "ModelConfigResult": {
+ "type": "object",
+ "properties": {
+ "config": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "config"
+ ]
+ },
+ "NotifyWatchResult": {
+ "type": "object",
+ "properties": {
+ "NotifyWatcherId": {
+ "type": "string"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "NotifyWatcherId"
+ ]
+ },
+ "SetMachinesAddresses": {
+ "type": "object",
+ "properties": {
+ "machine-addresses": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MachineAddresses"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "machine-addresses"
+ ]
+ },
+ "SetStatus": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/EntityStatusArgs"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "StatusResult": {
+ "type": "object",
+ "properties": {
+ "data": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "id": {
+ "type": "string"
+ },
+ "info": {
+ "type": "string"
+ },
+ "life": {
+ "type": "string"
+ },
+ "since": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "status": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "id",
+ "life",
+ "status",
+ "info",
+ "data",
+ "since"
+ ]
+ },
+ "StatusResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StatusResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "StringResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "result"
+ ]
+ },
+ "StringResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StringResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "StringsWatchResult": {
+ "type": "object",
+ "properties": {
+ "changes": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "watcher-id": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "watcher-id"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "KeyManager",
+ "Version": 1,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "AddKeys": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ModifyUserSSHKeys"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "DeleteKeys": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ModifyUserSSHKeys"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "ImportKeys": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ModifyUserSSHKeys"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "ListKeys": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ListSSHKeys"
+ },
+ "Result": {
+ "$ref": "#/definitions/StringsResults"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Entities": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "Entity": {
+ "type": "object",
+ "properties": {
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ErrorResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "ListSSHKeys": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "$ref": "#/definitions/Entities"
+ },
+ "mode": {
+ "type": "boolean"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities",
+ "mode"
+ ]
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "ModifyUserSSHKeys": {
+ "type": "object",
+ "properties": {
+ "ssh-keys": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "user": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "user",
+ "ssh-keys"
+ ]
+ },
+ "StringsResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "StringsResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StringsResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "KeyUpdater",
+ "Version": 1,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "AuthorisedKeys": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/StringsResults"
+ }
+ }
+ },
+ "WatchAuthorisedKeys": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/NotifyWatchResults"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Entities": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "Entity": {
+ "type": "object",
+ "properties": {
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "NotifyWatchResult": {
+ "type": "object",
+ "properties": {
+ "NotifyWatcherId": {
+ "type": "string"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "NotifyWatcherId"
+ ]
+ },
+ "NotifyWatchResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/NotifyWatchResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "StringsResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "StringsResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StringsResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "LeadershipService",
+ "Version": 2,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "BlockUntilLeadershipReleased": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ApplicationTag"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResult"
+ }
+ }
+ },
+ "ClaimLeadership": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ClaimLeadershipBulkParams"
+ },
+ "Result": {
+ "$ref": "#/definitions/ClaimLeadershipBulkResults"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "ApplicationTag": {
+ "type": "object",
+ "properties": {
+ "Name": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "Name"
+ ]
+ },
+ "ClaimLeadershipBulkParams": {
+ "type": "object",
+ "properties": {
+ "params": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ClaimLeadershipParams"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "params"
+ ]
+ },
+ "ClaimLeadershipBulkResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ErrorResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "ClaimLeadershipParams": {
+ "type": "object",
+ "properties": {
+ "application-tag": {
+ "type": "string"
+ },
+ "duration": {
+ "type": "number"
+ },
+ "unit-tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "application-tag",
+ "unit-tag",
+ "duration"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ }
+ }
+ }
+ },
+ {
+ "Name": "LifeFlag",
+ "Version": 1,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "Life": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/LifeResults"
+ }
+ }
+ },
+ "Watch": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/NotifyWatchResults"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Entities": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "Entity": {
+ "type": "object",
+ "properties": {
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "LifeResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "life": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "life"
+ ]
+ },
+ "LifeResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/LifeResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "NotifyWatchResult": {
+ "type": "object",
+ "properties": {
+ "NotifyWatcherId": {
+ "type": "string"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "NotifyWatcherId"
+ ]
+ },
+ "NotifyWatchResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/NotifyWatchResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "LogForwarding",
+ "Version": 1,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "GetLastSent": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/LogForwardingGetLastSentParams"
+ },
+ "Result": {
+ "$ref": "#/definitions/LogForwardingGetLastSentResults"
+ }
+ }
+ },
+ "SetLastSent": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/LogForwardingSetLastSentParams"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ErrorResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "LogForwardingGetLastSentParams": {
+ "type": "object",
+ "properties": {
+ "ids": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/LogForwardingID"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "ids"
+ ]
+ },
+ "LogForwardingGetLastSentResult": {
+ "type": "object",
+ "properties": {
+ "err": {
+ "$ref": "#/definitions/Error"
+ },
+ "record-id": {
+ "type": "integer"
+ },
+ "record-timestamp": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "record-id",
+ "record-timestamp",
+ "err"
+ ]
+ },
+ "LogForwardingGetLastSentResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/LogForwardingGetLastSentResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "LogForwardingID": {
+ "type": "object",
+ "properties": {
+ "model": {
+ "type": "string"
+ },
+ "sink": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "model",
+ "sink"
+ ]
+ },
+ "LogForwardingSetLastSentParam": {
+ "type": "object",
+ "properties": {
+ "LogForwardingID": {
+ "$ref": "#/definitions/LogForwardingID"
+ },
+ "record-id": {
+ "type": "integer"
+ },
+ "record-timestamp": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "LogForwardingID",
+ "record-id",
+ "record-timestamp"
+ ]
+ },
+ "LogForwardingSetLastSentParams": {
+ "type": "object",
+ "properties": {
+ "params": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/LogForwardingSetLastSentParam"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "params"
+ ]
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ }
+ }
+ }
+ },
+ {
+ "Name": "Logger",
+ "Version": 1,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "LoggingConfig": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/StringResults"
+ }
+ }
+ },
+ "WatchLoggingConfig": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/NotifyWatchResults"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Entities": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "Entity": {
+ "type": "object",
+ "properties": {
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "NotifyWatchResult": {
+ "type": "object",
+ "properties": {
+ "NotifyWatcherId": {
+ "type": "string"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "NotifyWatcherId"
+ ]
+ },
+ "NotifyWatchResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/NotifyWatchResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "StringResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "result"
+ ]
+ },
+ "StringResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StringResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "MachineActions",
+ "Version": 1,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "Actions": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ActionResults"
+ }
+ }
+ },
+ "BeginActions": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "FinishActions": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ActionExecutionResults"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "RunningActions": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ActionsByReceivers"
+ }
+ }
+ },
+ "WatchActionNotifications": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/StringsWatchResults"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Action": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string"
+ },
+ "parameters": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ },
+ "receiver": {
+ "type": "string"
+ },
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag",
+ "receiver",
+ "name"
+ ]
+ },
+ "ActionExecutionResult": {
+ "type": "object",
+ "properties": {
+ "action-tag": {
+ "type": "string"
+ },
+ "message": {
+ "type": "string"
+ },
+ "results": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ },
+ "status": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "action-tag",
+ "status"
+ ]
+ },
+ "ActionExecutionResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ActionExecutionResult"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "ActionResult": {
+ "type": "object",
+ "properties": {
+ "action": {
+ "$ref": "#/definitions/Action"
+ },
+ "completed": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "enqueued": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "message": {
+ "type": "string"
+ },
+ "output": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ },
+ "started": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "status": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ActionResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ActionResult"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "ActionsByReceiver": {
+ "type": "object",
+ "properties": {
+ "actions": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ActionResult"
+ }
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "receiver": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ActionsByReceivers": {
+ "type": "object",
+ "properties": {
+ "actions": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ActionsByReceiver"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "Entities": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "Entity": {
+ "type": "object",
+ "properties": {
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ErrorResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "StringsWatchResult": {
+ "type": "object",
+ "properties": {
+ "changes": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "watcher-id": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "watcher-id"
+ ]
+ },
+ "StringsWatchResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StringsWatchResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "MachineManager",
+ "Version": 3,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "AddMachines": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/AddMachines"
+ },
+ "Result": {
+ "$ref": "#/definitions/AddMachinesResults"
+ }
+ }
+ },
+ "DestroyMachine": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/DestroyMachineResults"
+ }
+ }
+ },
+ "ForceDestroyMachine": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/DestroyMachineResults"
+ }
+ }
+ },
+ "InstanceTypes": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ModelInstanceTypesConstraints"
+ },
+ "Result": {
+ "$ref": "#/definitions/InstanceTypesResults"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "AddMachineParams": {
+ "type": "object",
+ "properties": {
+ "addresses": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Address"
+ }
+ },
+ "constraints": {
+ "$ref": "#/definitions/Value"
+ },
+ "container-type": {
+ "type": "string"
+ },
+ "disks": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Constraints"
+ }
+ },
+ "hardware-characteristics": {
+ "$ref": "#/definitions/HardwareCharacteristics"
+ },
+ "instance-id": {
+ "type": "string"
+ },
+ "jobs": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "nonce": {
+ "type": "string"
+ },
+ "parent-id": {
+ "type": "string"
+ },
+ "placement": {
+ "$ref": "#/definitions/Placement"
+ },
+ "series": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "series",
+ "constraints",
+ "jobs",
+ "parent-id",
+ "container-type",
+ "instance-id",
+ "nonce",
+ "hardware-characteristics",
+ "addresses"
+ ]
+ },
+ "AddMachines": {
+ "type": "object",
+ "properties": {
+ "params": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/AddMachineParams"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "params"
+ ]
+ },
+ "AddMachinesResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "machine": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "machine"
+ ]
+ },
+ "AddMachinesResults": {
+ "type": "object",
+ "properties": {
+ "machines": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/AddMachinesResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "machines"
+ ]
+ },
+ "Address": {
+ "type": "object",
+ "properties": {
+ "scope": {
+ "type": "string"
+ },
+ "space-name": {
+ "type": "string"
+ },
+ "type": {
+ "type": "string"
+ },
+ "value": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "value",
+ "type",
+ "scope"
+ ]
+ },
+ "Constraints": {
+ "type": "object",
+ "properties": {
+ "Count": {
+ "type": "integer"
+ },
+ "Pool": {
+ "type": "string"
+ },
+ "Size": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "Pool",
+ "Size",
+ "Count"
+ ]
+ },
+ "DestroyMachineInfo": {
+ "type": "object",
+ "properties": {
+ "destroyed-storage": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ },
+ "destroyed-units": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ },
+ "detached-storage": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "DestroyMachineResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "info": {
+ "$ref": "#/definitions/DestroyMachineInfo"
+ }
+ },
+ "additionalProperties": false
+ },
+ "DestroyMachineResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DestroyMachineResult"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "Entities": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "Entity": {
+ "type": "object",
+ "properties": {
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "HardwareCharacteristics": {
+ "type": "object",
+ "properties": {
+ "arch": {
+ "type": "string"
+ },
+ "availability-zone": {
+ "type": "string"
+ },
+ "cpu-cores": {
+ "type": "integer"
+ },
+ "cpu-power": {
+ "type": "integer"
+ },
+ "mem": {
+ "type": "integer"
+ },
+ "root-disk": {
+ "type": "integer"
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "InstanceType": {
+ "type": "object",
+ "properties": {
+ "arches": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "cost": {
+ "type": "integer"
+ },
+ "cpu-cores": {
+ "type": "integer"
+ },
+ "deprecated": {
+ "type": "boolean"
+ },
+ "memory": {
+ "type": "integer"
+ },
+ "name": {
+ "type": "string"
+ },
+ "root-disk": {
+ "type": "integer"
+ },
+ "virt-type": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "arches",
+ "cpu-cores",
+ "memory"
+ ]
+ },
+ "InstanceTypesResult": {
+ "type": "object",
+ "properties": {
+ "cost-currency": {
+ "type": "string"
+ },
+ "cost-divisor": {
+ "type": "integer"
+ },
+ "cost-unit": {
+ "type": "string"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "instance-types": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/InstanceType"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "InstanceTypesResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/InstanceTypesResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "ModelInstanceTypesConstraint": {
+ "type": "object",
+ "properties": {
+ "value": {
+ "$ref": "#/definitions/Value"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ModelInstanceTypesConstraints": {
+ "type": "object",
+ "properties": {
+ "constraints": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ModelInstanceTypesConstraint"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "constraints"
+ ]
+ },
+ "Placement": {
+ "type": "object",
+ "properties": {
+ "directive": {
+ "type": "string"
+ },
+ "scope": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "scope",
+ "directive"
+ ]
+ },
+ "Value": {
+ "type": "object",
+ "properties": {
+ "arch": {
+ "type": "string"
+ },
+ "container": {
+ "type": "string"
+ },
+ "cores": {
+ "type": "integer"
+ },
+ "cpu-power": {
+ "type": "integer"
+ },
+ "instance-type": {
+ "type": "string"
+ },
+ "mem": {
+ "type": "integer"
+ },
+ "root-disk": {
+ "type": "integer"
+ },
+ "spaces": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "virt-type": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ }
+ }
+ }
+ },
+ {
+ "Name": "MachineUndertaker",
+ "Version": 1,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "AllMachineRemovals": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/EntitiesResults"
+ }
+ }
+ },
+ "CompleteMachineRemovals": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ }
+ }
+ },
+ "GetMachineProviderInterfaceInfo": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ProviderInterfaceInfoResults"
+ }
+ }
+ },
+ "WatchMachineRemovals": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/NotifyWatchResults"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Entities": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "EntitiesResult": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "EntitiesResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/EntitiesResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "Entity": {
+ "type": "object",
+ "properties": {
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "NotifyWatchResult": {
+ "type": "object",
+ "properties": {
+ "NotifyWatcherId": {
+ "type": "string"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "NotifyWatcherId"
+ ]
+ },
+ "NotifyWatchResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/NotifyWatchResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "ProviderInterfaceInfo": {
+ "type": "object",
+ "properties": {
+ "interface-name": {
+ "type": "string"
+ },
+ "mac-address": {
+ "type": "string"
+ },
+ "provider-id": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "interface-name",
+ "mac-address",
+ "provider-id"
+ ]
+ },
+ "ProviderInterfaceInfoResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "interfaces": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ProviderInterfaceInfo"
+ }
+ },
+ "machine-tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "machine-tag",
+ "interfaces"
+ ]
+ },
+ "ProviderInterfaceInfoResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ProviderInterfaceInfoResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "Machiner",
+ "Version": 1,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "APIAddresses": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/StringsResult"
+ }
+ }
+ },
+ "APIHostPorts": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/APIHostPortsResult"
+ }
+ }
+ },
+ "CACert": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/BytesResult"
+ }
+ }
+ },
+ "EnsureDead": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "Jobs": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/JobsResults"
+ }
+ }
+ },
+ "Life": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/LifeResults"
+ }
+ }
+ },
+ "ModelUUID": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/StringResult"
+ }
+ }
+ },
+ "SetMachineAddresses": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/SetMachinesAddresses"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "SetObservedNetworkConfig": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/SetMachineNetworkConfig"
+ }
+ }
+ },
+ "SetProviderNetworkConfig": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "SetStatus": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/SetStatus"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "UpdateStatus": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/SetStatus"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "Watch": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/NotifyWatchResults"
+ }
+ }
+ },
+ "WatchAPIHostPorts": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/NotifyWatchResult"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "APIHostPortsResult": {
+ "type": "object",
+ "properties": {
+ "servers": {
+ "type": "array",
+ "items": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/HostPort"
+ }
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "servers"
+ ]
+ },
+ "Address": {
+ "type": "object",
+ "properties": {
+ "scope": {
+ "type": "string"
+ },
+ "space-name": {
+ "type": "string"
+ },
+ "type": {
+ "type": "string"
+ },
+ "value": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "value",
+ "type",
+ "scope"
+ ]
+ },
+ "BytesResult": {
+ "type": "object",
+ "properties": {
+ "result": {
+ "type": "array",
+ "items": {
+ "type": "integer"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "result"
+ ]
+ },
+ "Entities": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "Entity": {
+ "type": "object",
+ "properties": {
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag"
+ ]
+ },
+ "EntityStatusArgs": {
+ "type": "object",
+ "properties": {
+ "data": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ },
+ "info": {
+ "type": "string"
+ },
+ "status": {
+ "type": "string"
+ },
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag",
+ "status",
+ "info",
+ "data"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ErrorResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "HostPort": {
+ "type": "object",
+ "properties": {
+ "Address": {
+ "$ref": "#/definitions/Address"
+ },
+ "port": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "Address",
+ "port"
+ ]
+ },
+ "JobsResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "jobs": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "jobs"
+ ]
+ },
+ "JobsResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/JobsResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "LifeResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "life": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "life"
+ ]
+ },
+ "LifeResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/LifeResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "MachineAddresses": {
+ "type": "object",
+ "properties": {
+ "addresses": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Address"
+ }
+ },
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag",
+ "addresses"
+ ]
+ },
+ "NetworkConfig": {
+ "type": "object",
+ "properties": {
+ "address": {
+ "type": "string"
+ },
+ "cidr": {
+ "type": "string"
+ },
+ "config-type": {
+ "type": "string"
+ },
+ "device-index": {
+ "type": "integer"
+ },
+ "disabled": {
+ "type": "boolean"
+ },
+ "dns-search-domains": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "dns-servers": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "gateway-address": {
+ "type": "string"
+ },
+ "interface-name": {
+ "type": "string"
+ },
+ "interface-type": {
+ "type": "string"
+ },
+ "mac-address": {
+ "type": "string"
+ },
+ "mtu": {
+ "type": "integer"
+ },
+ "no-auto-start": {
+ "type": "boolean"
+ },
+ "parent-interface-name": {
+ "type": "string"
+ },
+ "provider-address-id": {
+ "type": "string"
+ },
+ "provider-id": {
+ "type": "string"
+ },
+ "provider-space-id": {
+ "type": "string"
+ },
+ "provider-subnet-id": {
+ "type": "string"
+ },
+ "provider-vlan-id": {
+ "type": "string"
+ },
+ "routes": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/NetworkRoute"
+ }
+ },
+ "vlan-tag": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "device-index",
+ "mac-address",
+ "cidr",
+ "mtu",
+ "provider-id",
+ "provider-subnet-id",
+ "provider-space-id",
+ "provider-address-id",
+ "provider-vlan-id",
+ "vlan-tag",
+ "interface-name",
+ "parent-interface-name",
+ "interface-type",
+ "disabled"
+ ]
+ },
+ "NetworkRoute": {
+ "type": "object",
+ "properties": {
+ "destination-cidr": {
+ "type": "string"
+ },
+ "gateway-ip": {
+ "type": "string"
+ },
+ "metric": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "destination-cidr",
+ "gateway-ip",
+ "metric"
+ ]
+ },
+ "NotifyWatchResult": {
+ "type": "object",
+ "properties": {
+ "NotifyWatcherId": {
+ "type": "string"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "NotifyWatcherId"
+ ]
+ },
+ "NotifyWatchResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/NotifyWatchResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "SetMachineNetworkConfig": {
+ "type": "object",
+ "properties": {
+ "config": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/NetworkConfig"
+ }
+ },
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag",
+ "config"
+ ]
+ },
+ "SetMachinesAddresses": {
+ "type": "object",
+ "properties": {
+ "machine-addresses": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MachineAddresses"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "machine-addresses"
+ ]
+ },
+ "SetStatus": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/EntityStatusArgs"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "StringResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "result"
+ ]
+ },
+ "StringsResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false
+ }
+ }
+ }
+ },
+ {
+ "Name": "MeterStatus",
+ "Version": 1,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "GetMeterStatus": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/MeterStatusResults"
+ }
+ }
+ },
+ "WatchMeterStatus": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/NotifyWatchResults"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Entities": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "Entity": {
+ "type": "object",
+ "properties": {
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "MeterStatusResult": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "info": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "code",
+ "info"
+ ]
+ },
+ "MeterStatusResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MeterStatusResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "NotifyWatchResult": {
+ "type": "object",
+ "properties": {
+ "NotifyWatcherId": {
+ "type": "string"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "NotifyWatcherId"
+ ]
+ },
+ "NotifyWatchResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/NotifyWatchResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "MetricsAdder",
+ "Version": 2,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "AddMetricBatches": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/MetricBatchParams"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ErrorResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "Metric": {
+ "type": "object",
+ "properties": {
+ "key": {
+ "type": "string"
+ },
+ "time": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "value": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "key",
+ "value",
+ "time"
+ ]
+ },
+ "MetricBatch": {
+ "type": "object",
+ "properties": {
+ "charm-url": {
+ "type": "string"
+ },
+ "created": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "metrics": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Metric"
+ }
+ },
+ "uuid": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "uuid",
+ "charm-url",
+ "created",
+ "metrics"
+ ]
+ },
+ "MetricBatchParam": {
+ "type": "object",
+ "properties": {
+ "batch": {
+ "$ref": "#/definitions/MetricBatch"
+ },
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag",
+ "batch"
+ ]
+ },
+ "MetricBatchParams": {
+ "type": "object",
+ "properties": {
+ "batches": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MetricBatchParam"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "batches"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "MetricsDebug",
+ "Version": 2,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "GetMetrics": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/MetricResults"
+ }
+ }
+ },
+ "SetMeterStatus": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/MeterStatusParams"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Entities": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "Entity": {
+ "type": "object",
+ "properties": {
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag"
+ ]
+ },
+ "EntityMetrics": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "metrics": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MetricResult"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ErrorResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "MeterStatusParam": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "type": "string"
+ },
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag",
+ "code",
+ "info"
+ ]
+ },
+ "MeterStatusParams": {
+ "type": "object",
+ "properties": {
+ "statues": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MeterStatusParam"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "statues"
+ ]
+ },
+ "MetricResult": {
+ "type": "object",
+ "properties": {
+ "key": {
+ "type": "string"
+ },
+ "time": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "unit": {
+ "type": "string"
+ },
+ "value": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "time",
+ "key",
+ "value",
+ "unit"
+ ]
+ },
+ "MetricResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/EntityMetrics"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "MetricsManager",
+ "Version": 1,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "AddJujuMachineMetrics": {
+ "type": "object"
+ },
+ "CleanupOldMetrics": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "SendMetrics": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Entities": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "Entity": {
+ "type": "object",
+ "properties": {
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ErrorResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ }
+ }
+ }
+ },
+ {
+ "Name": "MigrationFlag",
+ "Version": 1,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "Phase": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/PhaseResults"
+ }
+ }
+ },
+ "Watch": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/NotifyWatchResults"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Entities": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "Entity": {
+ "type": "object",
+ "properties": {
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "NotifyWatchResult": {
+ "type": "object",
+ "properties": {
+ "NotifyWatcherId": {
+ "type": "string"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "NotifyWatcherId"
+ ]
+ },
+ "NotifyWatchResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/NotifyWatchResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "PhaseResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "phase": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "PhaseResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/PhaseResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "MigrationMaster",
+ "Version": 1,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "Export": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/SerializedModel"
+ }
+ }
+ },
+ "MigrationStatus": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/MasterMigrationStatus"
+ }
+ }
+ },
+ "MinionReports": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/MinionReports"
+ }
+ }
+ },
+ "ModelInfo": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/MigrationModelInfo"
+ }
+ }
+ },
+ "Prechecks": {
+ "type": "object"
+ },
+ "Reap": {
+ "type": "object"
+ },
+ "SetPhase": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/SetMigrationPhaseArgs"
+ }
+ }
+ },
+ "SetStatusMessage": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/SetMigrationStatusMessageArgs"
+ }
+ }
+ },
+ "Watch": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/NotifyWatchResult"
+ }
+ }
+ },
+ "WatchMinionReports": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/NotifyWatchResult"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "MasterMigrationStatus": {
+ "type": "object",
+ "properties": {
+ "migration-id": {
+ "type": "string"
+ },
+ "phase": {
+ "type": "string"
+ },
+ "phase-changed-time": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "spec": {
+ "$ref": "#/definitions/MigrationSpec"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "spec",
+ "migration-id",
+ "phase",
+ "phase-changed-time"
+ ]
+ },
+ "MigrationModelInfo": {
+ "type": "object",
+ "properties": {
+ "agent-version": {
+ "$ref": "#/definitions/Number"
+ },
+ "controller-agent-version": {
+ "$ref": "#/definitions/Number"
+ },
+ "name": {
+ "type": "string"
+ },
+ "owner-tag": {
+ "type": "string"
+ },
+ "uuid": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "uuid",
+ "name",
+ "owner-tag",
+ "agent-version",
+ "controller-agent-version"
+ ]
+ },
+ "MigrationSpec": {
+ "type": "object",
+ "properties": {
+ "model-tag": {
+ "type": "string"
+ },
+ "target-info": {
+ "$ref": "#/definitions/MigrationTargetInfo"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "model-tag",
+ "target-info"
+ ]
+ },
+ "MigrationTargetInfo": {
+ "type": "object",
+ "properties": {
+ "addrs": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "auth-tag": {
+ "type": "string"
+ },
+ "ca-cert": {
+ "type": "string"
+ },
+ "controller-tag": {
+ "type": "string"
+ },
+ "macaroons": {
+ "type": "string"
+ },
+ "password": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "controller-tag",
+ "addrs",
+ "ca-cert",
+ "auth-tag"
+ ]
+ },
+ "MinionReports": {
+ "type": "object",
+ "properties": {
+ "failed": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "migration-id": {
+ "type": "string"
+ },
+ "phase": {
+ "type": "string"
+ },
+ "success-count": {
+ "type": "integer"
+ },
+ "unknown-count": {
+ "type": "integer"
+ },
+ "unknown-sample": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "migration-id",
+ "phase",
+ "success-count",
+ "unknown-count",
+ "unknown-sample",
+ "failed"
+ ]
+ },
+ "NotifyWatchResult": {
+ "type": "object",
+ "properties": {
+ "NotifyWatcherId": {
+ "type": "string"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "NotifyWatcherId"
+ ]
+ },
+ "Number": {
+ "type": "object",
+ "properties": {
+ "Build": {
+ "type": "integer"
+ },
+ "Major": {
+ "type": "integer"
+ },
+ "Minor": {
+ "type": "integer"
+ },
+ "Patch": {
+ "type": "integer"
+ },
+ "Tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "Major",
+ "Minor",
+ "Tag",
+ "Patch",
+ "Build"
+ ]
+ },
+ "SerializedModel": {
+ "type": "object",
+ "properties": {
+ "bytes": {
+ "type": "array",
+ "items": {
+ "type": "integer"
+ }
+ },
+ "charms": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "resources": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/SerializedModelResource"
+ }
+ },
+ "tools": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/SerializedModelTools"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "bytes",
+ "charms",
+ "tools",
+ "resources"
+ ]
+ },
+ "SerializedModelResource": {
+ "type": "object",
+ "properties": {
+ "application": {
+ "type": "string"
+ },
+ "application-revision": {
+ "$ref": "#/definitions/SerializedModelResourceRevision"
+ },
+ "charmstore-revision": {
+ "$ref": "#/definitions/SerializedModelResourceRevision"
+ },
+ "name": {
+ "type": "string"
+ },
+ "unit-revisions": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "$ref": "#/definitions/SerializedModelResourceRevision"
+ }
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "application",
+ "name",
+ "application-revision",
+ "charmstore-revision",
+ "unit-revisions"
+ ]
+ },
+ "SerializedModelResourceRevision": {
+ "type": "object",
+ "properties": {
+ "description": {
+ "type": "string"
+ },
+ "fingerprint": {
+ "type": "string"
+ },
+ "origin": {
+ "type": "string"
+ },
+ "path": {
+ "type": "string"
+ },
+ "revision": {
+ "type": "integer"
+ },
+ "size": {
+ "type": "integer"
+ },
+ "timestamp": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "type": {
+ "type": "string"
+ },
+ "username": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "revision",
+ "type",
+ "path",
+ "description",
+ "origin",
+ "fingerprint",
+ "size",
+ "timestamp"
+ ]
+ },
+ "SerializedModelTools": {
+ "type": "object",
+ "properties": {
+ "uri": {
+ "type": "string"
+ },
+ "version": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "version",
+ "uri"
+ ]
+ },
+ "SetMigrationPhaseArgs": {
+ "type": "object",
+ "properties": {
+ "phase": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "phase"
+ ]
+ },
+ "SetMigrationStatusMessageArgs": {
+ "type": "object",
+ "properties": {
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "MigrationMinion",
+ "Version": 1,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "Report": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/MinionReport"
+ }
+ }
+ },
+ "Watch": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/NotifyWatchResult"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "MinionReport": {
+ "type": "object",
+ "properties": {
+ "migration-id": {
+ "type": "string"
+ },
+ "phase": {
+ "type": "string"
+ },
+ "success": {
+ "type": "boolean"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "migration-id",
+ "phase",
+ "success"
+ ]
+ },
+ "NotifyWatchResult": {
+ "type": "object",
+ "properties": {
+ "NotifyWatcherId": {
+ "type": "string"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "NotifyWatcherId"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "MigrationStatusWatcher",
+ "Version": 1,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "Next": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/MigrationStatus"
+ }
+ }
+ },
+ "Stop": {
+ "type": "object"
+ }
+ },
+ "definitions": {
+ "MigrationStatus": {
+ "type": "object",
+ "properties": {
+ "attempt": {
+ "type": "integer"
+ },
+ "migration-id": {
+ "type": "string"
+ },
+ "phase": {
+ "type": "string"
+ },
+ "source-api-addrs": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "source-ca-cert": {
+ "type": "string"
+ },
+ "target-api-addrs": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "target-ca-cert": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "migration-id",
+ "attempt",
+ "phase",
+ "source-api-addrs",
+ "source-ca-cert",
+ "target-api-addrs",
+ "target-ca-cert"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "MigrationTarget",
+ "Version": 1,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "Abort": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ModelArgs"
+ }
+ }
+ },
+ "Activate": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ModelArgs"
+ }
+ }
+ },
+ "AdoptResources": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/AdoptResourcesArgs"
+ }
+ }
+ },
+ "CACert": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/BytesResult"
+ }
+ }
+ },
+ "Import": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/SerializedModel"
+ }
+ }
+ },
+ "LatestLogTime": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ModelArgs"
+ },
+ "Result": {
+ "type": "string",
+ "format": "date-time"
+ }
+ }
+ },
+ "Prechecks": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/MigrationModelInfo"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "AdoptResourcesArgs": {
+ "type": "object",
+ "properties": {
+ "model-tag": {
+ "type": "string"
+ },
+ "source-controller-version": {
+ "$ref": "#/definitions/Number"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "model-tag",
+ "source-controller-version"
+ ]
+ },
+ "BytesResult": {
+ "type": "object",
+ "properties": {
+ "result": {
+ "type": "array",
+ "items": {
+ "type": "integer"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "result"
+ ]
+ },
+ "MigrationModelInfo": {
+ "type": "object",
+ "properties": {
+ "agent-version": {
+ "$ref": "#/definitions/Number"
+ },
+ "controller-agent-version": {
+ "$ref": "#/definitions/Number"
+ },
+ "name": {
+ "type": "string"
+ },
+ "owner-tag": {
+ "type": "string"
+ },
+ "uuid": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "uuid",
+ "name",
+ "owner-tag",
+ "agent-version",
+ "controller-agent-version"
+ ]
+ },
+ "ModelArgs": {
+ "type": "object",
+ "properties": {
+ "model-tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "model-tag"
+ ]
+ },
+ "Number": {
+ "type": "object",
+ "properties": {
+ "Build": {
+ "type": "integer"
+ },
+ "Major": {
+ "type": "integer"
+ },
+ "Minor": {
+ "type": "integer"
+ },
+ "Patch": {
+ "type": "integer"
+ },
+ "Tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "Major",
+ "Minor",
+ "Tag",
+ "Patch",
+ "Build"
+ ]
+ },
+ "SerializedModel": {
+ "type": "object",
+ "properties": {
+ "bytes": {
+ "type": "array",
+ "items": {
+ "type": "integer"
+ }
+ },
+ "charms": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "resources": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/SerializedModelResource"
+ }
+ },
+ "tools": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/SerializedModelTools"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "bytes",
+ "charms",
+ "tools",
+ "resources"
+ ]
+ },
+ "SerializedModelResource": {
+ "type": "object",
+ "properties": {
+ "application": {
+ "type": "string"
+ },
+ "application-revision": {
+ "$ref": "#/definitions/SerializedModelResourceRevision"
+ },
+ "charmstore-revision": {
+ "$ref": "#/definitions/SerializedModelResourceRevision"
+ },
+ "name": {
+ "type": "string"
+ },
+ "unit-revisions": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "$ref": "#/definitions/SerializedModelResourceRevision"
+ }
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "application",
+ "name",
+ "application-revision",
+ "charmstore-revision",
+ "unit-revisions"
+ ]
+ },
+ "SerializedModelResourceRevision": {
+ "type": "object",
+ "properties": {
+ "description": {
+ "type": "string"
+ },
+ "fingerprint": {
+ "type": "string"
+ },
+ "origin": {
+ "type": "string"
+ },
+ "path": {
+ "type": "string"
+ },
+ "revision": {
+ "type": "integer"
+ },
+ "size": {
+ "type": "integer"
+ },
+ "timestamp": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "type": {
+ "type": "string"
+ },
+ "username": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "revision",
+ "type",
+ "path",
+ "description",
+ "origin",
+ "fingerprint",
+ "size",
+ "timestamp"
+ ]
+ },
+ "SerializedModelTools": {
+ "type": "object",
+ "properties": {
+ "uri": {
+ "type": "string"
+ },
+ "version": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "version",
+ "uri"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "ModelConfig",
+ "Version": 1,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "ModelGet": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/ModelConfigResults"
+ }
+ }
+ },
+ "ModelSet": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ModelSet"
+ }
+ }
+ },
+ "ModelUnset": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ModelUnset"
+ }
+ }
+ },
+ "SLALevel": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/StringResult"
+ }
+ }
+ },
+ "SetSLALevel": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ModelSLA"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "ConfigValue": {
+ "type": "object",
+ "properties": {
+ "source": {
+ "type": "string"
+ },
+ "value": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "value",
+ "source"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "ModelConfigResults": {
+ "type": "object",
+ "properties": {
+ "config": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "$ref": "#/definitions/ConfigValue"
+ }
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "config"
+ ]
+ },
+ "ModelSLA": {
+ "type": "object",
+ "properties": {
+ "ModelSLAInfo": {
+ "$ref": "#/definitions/ModelSLAInfo"
+ },
+ "creds": {
+ "type": "array",
+ "items": {
+ "type": "integer"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "ModelSLAInfo",
+ "creds"
+ ]
+ },
+ "ModelSLAInfo": {
+ "type": "object",
+ "properties": {
+ "level": {
+ "type": "string"
+ },
+ "owner": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "level",
+ "owner"
+ ]
+ },
+ "ModelSet": {
+ "type": "object",
+ "properties": {
+ "config": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "config"
+ ]
+ },
+ "ModelUnset": {
+ "type": "object",
+ "properties": {
+ "keys": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "keys"
+ ]
+ },
+ "StringResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "result"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "ModelManager",
+ "Version": 3,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "CreateModel": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ModelCreateArgs"
+ },
+ "Result": {
+ "$ref": "#/definitions/ModelInfo"
+ }
+ }
+ },
+ "DestroyModels": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "DumpModels": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/DumpModelRequest"
+ },
+ "Result": {
+ "$ref": "#/definitions/StringResults"
+ }
+ }
+ },
+ "DumpModelsDB": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/MapResults"
+ }
+ }
+ },
+ "ListModels": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entity"
+ },
+ "Result": {
+ "$ref": "#/definitions/UserModelList"
+ }
+ }
+ },
+ "ModelDefaults": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/ModelDefaultsResult"
+ }
+ }
+ },
+ "ModelInfo": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ModelInfoResults"
+ }
+ }
+ },
+ "ModelStatus": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ModelStatusResults"
+ }
+ }
+ },
+ "ModifyModelAccess": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ModifyModelAccessRequest"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "SetModelDefaults": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/SetModelDefaults"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "UnsetModelDefaults": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/UnsetModelDefaults"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "DumpModelRequest": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ },
+ "simplified": {
+ "type": "boolean"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities",
+ "simplified"
+ ]
+ },
+ "Entities": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "Entity": {
+ "type": "object",
+ "properties": {
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag"
+ ]
+ },
+ "EntityStatus": {
+ "type": "object",
+ "properties": {
+ "data": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ },
+ "info": {
+ "type": "string"
+ },
+ "since": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "status": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "status",
+ "info",
+ "since"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ErrorResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "MachineHardware": {
+ "type": "object",
+ "properties": {
+ "arch": {
+ "type": "string"
+ },
+ "availability-zone": {
+ "type": "string"
+ },
+ "cores": {
+ "type": "integer"
+ },
+ "cpu-power": {
+ "type": "integer"
+ },
+ "mem": {
+ "type": "integer"
+ },
+ "root-disk": {
+ "type": "integer"
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "MapResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "result"
+ ]
+ },
+ "MapResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MapResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "Model": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string"
+ },
+ "owner-tag": {
+ "type": "string"
+ },
+ "uuid": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "name",
+ "uuid",
+ "owner-tag"
+ ]
+ },
+ "ModelCreateArgs": {
+ "type": "object",
+ "properties": {
+ "cloud-tag": {
+ "type": "string"
+ },
+ "config": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ },
+ "credential": {
+ "type": "string"
+ },
+ "name": {
+ "type": "string"
+ },
+ "owner-tag": {
+ "type": "string"
+ },
+ "region": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "name",
+ "owner-tag"
+ ]
+ },
+ "ModelDefaultValues": {
+ "type": "object",
+ "properties": {
+ "cloud-region": {
+ "type": "string"
+ },
+ "cloud-tag": {
+ "type": "string"
+ },
+ "config": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "config"
+ ]
+ },
+ "ModelDefaults": {
+ "type": "object",
+ "properties": {
+ "controller": {
+ "type": "object",
+ "additionalProperties": true
+ },
+ "default": {
+ "type": "object",
+ "additionalProperties": true
+ },
+ "regions": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/RegionDefaults"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "ModelDefaultsResult": {
+ "type": "object",
+ "properties": {
+ "config": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "$ref": "#/definitions/ModelDefaults"
+ }
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "config"
+ ]
+ },
+ "ModelInfo": {
+ "type": "object",
+ "properties": {
+ "agent-version": {
+ "$ref": "#/definitions/Number"
+ },
+ "cloud-credential-tag": {
+ "type": "string"
+ },
+ "cloud-region": {
+ "type": "string"
+ },
+ "cloud-tag": {
+ "type": "string"
+ },
+ "controller-uuid": {
+ "type": "string"
+ },
+ "default-series": {
+ "type": "string"
+ },
+ "life": {
+ "type": "string"
+ },
+ "machines": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ModelMachineInfo"
+ }
+ },
+ "migration": {
+ "$ref": "#/definitions/ModelMigrationStatus"
+ },
+ "name": {
+ "type": "string"
+ },
+ "owner-tag": {
+ "type": "string"
+ },
+ "provider-type": {
+ "type": "string"
+ },
+ "sla": {
+ "$ref": "#/definitions/ModelSLAInfo"
+ },
+ "status": {
+ "$ref": "#/definitions/EntityStatus"
+ },
+ "users": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ModelUserInfo"
+ }
+ },
+ "uuid": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "name",
+ "uuid",
+ "controller-uuid",
+ "cloud-tag",
+ "owner-tag",
+ "life",
+ "users",
+ "machines",
+ "sla",
+ "agent-version"
+ ]
+ },
+ "ModelInfoResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "$ref": "#/definitions/ModelInfo"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ModelInfoResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ModelInfoResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "ModelMachineInfo": {
+ "type": "object",
+ "properties": {
+ "hardware": {
+ "$ref": "#/definitions/MachineHardware"
+ },
+ "has-vote": {
+ "type": "boolean"
+ },
+ "id": {
+ "type": "string"
+ },
+ "instance-id": {
+ "type": "string"
+ },
+ "status": {
+ "type": "string"
+ },
+ "wants-vote": {
+ "type": "boolean"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "id"
+ ]
+ },
+ "ModelMigrationStatus": {
+ "type": "object",
+ "properties": {
+ "end": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "start": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "status": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "status",
+ "start"
+ ]
+ },
+ "ModelSLAInfo": {
+ "type": "object",
+ "properties": {
+ "level": {
+ "type": "string"
+ },
+ "owner": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "level",
+ "owner"
+ ]
+ },
+ "ModelStatus": {
+ "type": "object",
+ "properties": {
+ "application-count": {
+ "type": "integer"
+ },
+ "hosted-machine-count": {
+ "type": "integer"
+ },
+ "life": {
+ "type": "string"
+ },
+ "machines": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ModelMachineInfo"
+ }
+ },
+ "model-tag": {
+ "type": "string"
+ },
+ "owner-tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "model-tag",
+ "life",
+ "hosted-machine-count",
+ "application-count",
+ "owner-tag"
+ ]
+ },
+ "ModelStatusResults": {
+ "type": "object",
+ "properties": {
+ "models": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ModelStatus"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "models"
+ ]
+ },
+ "ModelUnsetKeys": {
+ "type": "object",
+ "properties": {
+ "cloud-region": {
+ "type": "string"
+ },
+ "cloud-tag": {
+ "type": "string"
+ },
+ "keys": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "keys"
+ ]
+ },
+ "ModelUserInfo": {
+ "type": "object",
+ "properties": {
+ "access": {
+ "type": "string"
+ },
+ "display-name": {
+ "type": "string"
+ },
+ "last-connection": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "user": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "user",
+ "display-name",
+ "last-connection",
+ "access"
+ ]
+ },
+ "ModifyModelAccess": {
+ "type": "object",
+ "properties": {
+ "access": {
+ "type": "string"
+ },
+ "action": {
+ "type": "string"
+ },
+ "model-tag": {
+ "type": "string"
+ },
+ "user-tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "user-tag",
+ "action",
+ "access",
+ "model-tag"
+ ]
+ },
+ "ModifyModelAccessRequest": {
+ "type": "object",
+ "properties": {
+ "changes": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ModifyModelAccess"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "changes"
+ ]
+ },
+ "Number": {
+ "type": "object",
+ "properties": {
+ "Build": {
+ "type": "integer"
+ },
+ "Major": {
+ "type": "integer"
+ },
+ "Minor": {
+ "type": "integer"
+ },
+ "Patch": {
+ "type": "integer"
+ },
+ "Tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "Major",
+ "Minor",
+ "Tag",
+ "Patch",
+ "Build"
+ ]
+ },
+ "RegionDefaults": {
+ "type": "object",
+ "properties": {
+ "region-name": {
+ "type": "string"
+ },
+ "value": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "region-name",
+ "value"
+ ]
+ },
+ "SetModelDefaults": {
+ "type": "object",
+ "properties": {
+ "config": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ModelDefaultValues"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "config"
+ ]
+ },
+ "StringResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "result"
+ ]
+ },
+ "StringResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StringResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "UnsetModelDefaults": {
+ "type": "object",
+ "properties": {
+ "keys": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ModelUnsetKeys"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "keys"
+ ]
+ },
+ "UserModel": {
+ "type": "object",
+ "properties": {
+ "last-connection": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "model": {
+ "$ref": "#/definitions/Model"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "model",
+ "last-connection"
+ ]
+ },
+ "UserModelList": {
+ "type": "object",
+ "properties": {
+ "user-models": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/UserModel"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "user-models"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "NotifyWatcher",
+ "Version": 1,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "Next": {
+ "type": "object"
+ },
+ "Stop": {
+ "type": "object"
+ }
+ }
+ }
+ },
+ {
+ "Name": "Payloads",
+ "Version": 1,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "List": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/PayloadListArgs"
+ },
+ "Result": {
+ "$ref": "#/definitions/PayloadListResults"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Payload": {
+ "type": "object",
+ "properties": {
+ "class": {
+ "type": "string"
+ },
+ "id": {
+ "type": "string"
+ },
+ "labels": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "machine": {
+ "type": "string"
+ },
+ "status": {
+ "type": "string"
+ },
+ "type": {
+ "type": "string"
+ },
+ "unit": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "class",
+ "type",
+ "id",
+ "status",
+ "labels",
+ "unit",
+ "machine"
+ ]
+ },
+ "PayloadListArgs": {
+ "type": "object",
+ "properties": {
+ "patterns": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "patterns"
+ ]
+ },
+ "PayloadListResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Payload"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "PayloadsHookContext",
+ "Version": 1,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "List": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/PayloadResults"
+ }
+ }
+ },
+ "LookUp": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/LookUpPayloadArgs"
+ },
+ "Result": {
+ "$ref": "#/definitions/PayloadResults"
+ }
+ }
+ },
+ "SetStatus": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/SetPayloadStatusArgs"
+ },
+ "Result": {
+ "$ref": "#/definitions/PayloadResults"
+ }
+ }
+ },
+ "Track": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/TrackPayloadArgs"
+ },
+ "Result": {
+ "$ref": "#/definitions/PayloadResults"
+ }
+ }
+ },
+ "Untrack": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/PayloadResults"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Entities": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "Entity": {
+ "type": "object",
+ "properties": {
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "LookUpPayloadArg": {
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string"
+ },
+ "name": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "name",
+ "id"
+ ]
+ },
+ "LookUpPayloadArgs": {
+ "type": "object",
+ "properties": {
+ "args": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/LookUpPayloadArg"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "args"
+ ]
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "Payload": {
+ "type": "object",
+ "properties": {
+ "class": {
+ "type": "string"
+ },
+ "id": {
+ "type": "string"
+ },
+ "labels": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "machine": {
+ "type": "string"
+ },
+ "status": {
+ "type": "string"
+ },
+ "type": {
+ "type": "string"
+ },
+ "unit": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "class",
+ "type",
+ "id",
+ "status",
+ "labels",
+ "unit",
+ "machine"
+ ]
+ },
+ "PayloadResult": {
+ "type": "object",
+ "properties": {
+ "Entity": {
+ "$ref": "#/definitions/Entity"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "not-found": {
+ "type": "boolean"
+ },
+ "payload": {
+ "$ref": "#/definitions/Payload"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "Entity",
+ "payload",
+ "not-found"
+ ]
+ },
+ "PayloadResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/PayloadResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "SetPayloadStatusArg": {
+ "type": "object",
+ "properties": {
+ "Entity": {
+ "$ref": "#/definitions/Entity"
+ },
+ "status": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "Entity",
+ "status"
+ ]
+ },
+ "SetPayloadStatusArgs": {
+ "type": "object",
+ "properties": {
+ "args": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/SetPayloadStatusArg"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "args"
+ ]
+ },
+ "TrackPayloadArgs": {
+ "type": "object",
+ "properties": {
+ "payloads": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Payload"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "payloads"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "Pinger",
+ "Version": 1,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "Ping": {
+ "type": "object"
+ },
+ "Stop": {
+ "type": "object"
+ }
+ }
+ }
+ },
+ {
+ "Name": "Provisioner",
+ "Version": 3,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "APIAddresses": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/StringsResult"
+ }
+ }
+ },
+ "APIHostPorts": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/APIHostPortsResult"
+ }
+ }
+ },
+ "CACert": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/BytesResult"
+ }
+ }
+ },
+ "Constraints": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ConstraintsResults"
+ }
+ }
+ },
+ "ContainerConfig": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/ContainerConfig"
+ }
+ }
+ },
+ "ContainerManagerConfig": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ContainerManagerConfigParams"
+ },
+ "Result": {
+ "$ref": "#/definitions/ContainerManagerConfig"
+ }
+ }
+ },
+ "ControllerConfig": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/ControllerConfigResult"
+ }
+ }
+ },
+ "DistributionGroup": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/DistributionGroupResults"
+ }
+ }
+ },
+ "EnsureDead": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "FindTools": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/FindToolsParams"
+ },
+ "Result": {
+ "$ref": "#/definitions/FindToolsResult"
+ }
+ }
+ },
+ "GetContainerInterfaceInfo": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/MachineNetworkConfigResults"
+ }
+ }
+ },
+ "HostChangesForContainers": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/HostNetworkChangeResults"
+ }
+ }
+ },
+ "InstanceId": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/StringResults"
+ }
+ }
+ },
+ "InstanceStatus": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/StatusResults"
+ }
+ }
+ },
+ "Life": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/LifeResults"
+ }
+ }
+ },
+ "MachinesWithTransientErrors": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/StatusResults"
+ }
+ }
+ },
+ "MarkMachinesForRemoval": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "ModelConfig": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/ModelConfigResult"
+ }
+ }
+ },
+ "ModelUUID": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/StringResult"
+ }
+ }
+ },
+ "PrepareContainerInterfaceInfo": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/MachineNetworkConfigResults"
+ }
+ }
+ },
+ "ProvisioningInfo": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ProvisioningInfoResults"
+ }
+ }
+ },
+ "ReleaseContainerAddresses": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "Remove": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "Series": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/StringResults"
+ }
+ }
+ },
+ "SetHostMachineNetworkConfig": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/SetMachineNetworkConfig"
+ }
+ }
+ },
+ "SetInstanceInfo": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/InstancesInfo"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "SetInstanceStatus": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/SetStatus"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "SetObservedNetworkConfig": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/SetMachineNetworkConfig"
+ }
+ }
+ },
+ "SetPasswords": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/EntityPasswords"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "SetProviderNetworkConfig": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "SetStatus": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/SetStatus"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "SetSupportedContainers": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/MachineContainersParams"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "StateAddresses": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/StringsResult"
+ }
+ }
+ },
+ "Status": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/StatusResults"
+ }
+ }
+ },
+ "Tools": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ToolsResults"
+ }
+ }
+ },
+ "UpdateStatus": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/SetStatus"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "WatchAPIHostPorts": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/NotifyWatchResult"
+ }
+ }
+ },
+ "WatchAllContainers": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/WatchContainers"
+ },
+ "Result": {
+ "$ref": "#/definitions/StringsWatchResults"
+ }
+ }
+ },
+ "WatchContainers": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/WatchContainers"
+ },
+ "Result": {
+ "$ref": "#/definitions/StringsWatchResults"
+ }
+ }
+ },
+ "WatchForModelConfigChanges": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/NotifyWatchResult"
+ }
+ }
+ },
+ "WatchMachineErrorRetry": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/NotifyWatchResult"
+ }
+ }
+ },
+ "WatchModelMachines": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/StringsWatchResult"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "APIHostPortsResult": {
+ "type": "object",
+ "properties": {
+ "servers": {
+ "type": "array",
+ "items": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/HostPort"
+ }
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "servers"
+ ]
+ },
+ "Address": {
+ "type": "object",
+ "properties": {
+ "scope": {
+ "type": "string"
+ },
+ "space-name": {
+ "type": "string"
+ },
+ "type": {
+ "type": "string"
+ },
+ "value": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "value",
+ "type",
+ "scope"
+ ]
+ },
+ "Binary": {
+ "type": "object",
+ "properties": {
+ "Arch": {
+ "type": "string"
+ },
+ "Number": {
+ "$ref": "#/definitions/Number"
+ },
+ "Series": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "Number",
+ "Series",
+ "Arch"
+ ]
+ },
+ "BytesResult": {
+ "type": "object",
+ "properties": {
+ "result": {
+ "type": "array",
+ "items": {
+ "type": "integer"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "result"
+ ]
+ },
+ "CloudImageMetadata": {
+ "type": "object",
+ "properties": {
+ "arch": {
+ "type": "string"
+ },
+ "image-id": {
+ "type": "string"
+ },
+ "priority": {
+ "type": "integer"
+ },
+ "region": {
+ "type": "string"
+ },
+ "root-storage-size": {
+ "type": "integer"
+ },
+ "root-storage-type": {
+ "type": "string"
+ },
+ "series": {
+ "type": "string"
+ },
+ "source": {
+ "type": "string"
+ },
+ "stream": {
+ "type": "string"
+ },
+ "version": {
+ "type": "string"
+ },
+ "virt-type": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "image-id",
+ "region",
+ "version",
+ "series",
+ "arch",
+ "source",
+ "priority"
+ ]
+ },
+ "ConstraintsResult": {
+ "type": "object",
+ "properties": {
+ "constraints": {
+ "$ref": "#/definitions/Value"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "constraints"
+ ]
+ },
+ "ConstraintsResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ConstraintsResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "ContainerConfig": {
+ "type": "object",
+ "properties": {
+ "UpdateBehavior": {
+ "$ref": "#/definitions/UpdateBehavior"
+ },
+ "apt-mirror": {
+ "type": "string"
+ },
+ "apt-proxy": {
+ "$ref": "#/definitions/Settings"
+ },
+ "authorized-keys": {
+ "type": "string"
+ },
+ "provider-type": {
+ "type": "string"
+ },
+ "proxy": {
+ "$ref": "#/definitions/Settings"
+ },
+ "ssl-hostname-verification": {
+ "type": "boolean"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "provider-type",
+ "authorized-keys",
+ "ssl-hostname-verification",
+ "proxy",
+ "apt-proxy",
+ "apt-mirror",
+ "UpdateBehavior"
+ ]
+ },
+ "ContainerManagerConfig": {
+ "type": "object",
+ "properties": {
+ "config": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "config"
+ ]
+ },
+ "ContainerManagerConfigParams": {
+ "type": "object",
+ "properties": {
+ "type": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "type"
+ ]
+ },
+ "ControllerConfigResult": {
+ "type": "object",
+ "properties": {
+ "config": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "config"
+ ]
+ },
+ "DeviceBridgeInfo": {
+ "type": "object",
+ "properties": {
+ "bridge-name": {
+ "type": "string"
+ },
+ "host-device-name": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "host-device-name",
+ "bridge-name"
+ ]
+ },
+ "DistributionGroupResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "result"
+ ]
+ },
+ "DistributionGroupResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DistributionGroupResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "Entities": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "Entity": {
+ "type": "object",
+ "properties": {
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag"
+ ]
+ },
+ "EntityPassword": {
+ "type": "object",
+ "properties": {
+ "password": {
+ "type": "string"
+ },
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag",
+ "password"
+ ]
+ },
+ "EntityPasswords": {
+ "type": "object",
+ "properties": {
+ "changes": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/EntityPassword"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "changes"
+ ]
+ },
+ "EntityStatusArgs": {
+ "type": "object",
+ "properties": {
+ "data": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ },
+ "info": {
+ "type": "string"
+ },
+ "status": {
+ "type": "string"
+ },
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag",
+ "status",
+ "info",
+ "data"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ErrorResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "FindToolsParams": {
+ "type": "object",
+ "properties": {
+ "arch": {
+ "type": "string"
+ },
+ "major": {
+ "type": "integer"
+ },
+ "minor": {
+ "type": "integer"
+ },
+ "number": {
+ "$ref": "#/definitions/Number"
+ },
+ "series": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "number",
+ "major",
+ "minor",
+ "arch",
+ "series"
+ ]
+ },
+ "FindToolsResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "list": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Tools"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "list"
+ ]
+ },
+ "HardwareCharacteristics": {
+ "type": "object",
+ "properties": {
+ "arch": {
+ "type": "string"
+ },
+ "availability-zone": {
+ "type": "string"
+ },
+ "cpu-cores": {
+ "type": "integer"
+ },
+ "cpu-power": {
+ "type": "integer"
+ },
+ "mem": {
+ "type": "integer"
+ },
+ "root-disk": {
+ "type": "integer"
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "HostNetworkChange": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "new-bridges": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/DeviceBridgeInfo"
+ }
+ },
+ "reconfigure-delay": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "new-bridges",
+ "reconfigure-delay"
+ ]
+ },
+ "HostNetworkChangeResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/HostNetworkChange"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "HostPort": {
+ "type": "object",
+ "properties": {
+ "Address": {
+ "$ref": "#/definitions/Address"
+ },
+ "port": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "Address",
+ "port"
+ ]
+ },
+ "InstanceInfo": {
+ "type": "object",
+ "properties": {
+ "characteristics": {
+ "$ref": "#/definitions/HardwareCharacteristics"
+ },
+ "instance-id": {
+ "type": "string"
+ },
+ "network-config": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/NetworkConfig"
+ }
+ },
+ "nonce": {
+ "type": "string"
+ },
+ "tag": {
+ "type": "string"
+ },
+ "volume-attachments": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "$ref": "#/definitions/VolumeAttachmentInfo"
+ }
+ }
+ },
+ "volumes": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Volume"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag",
+ "instance-id",
+ "nonce",
+ "characteristics",
+ "volumes",
+ "volume-attachments",
+ "network-config"
+ ]
+ },
+ "InstancesInfo": {
+ "type": "object",
+ "properties": {
+ "machines": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/InstanceInfo"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "machines"
+ ]
+ },
+ "LifeResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "life": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "life"
+ ]
+ },
+ "LifeResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/LifeResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "MachineContainers": {
+ "type": "object",
+ "properties": {
+ "container-types": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "machine-tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "machine-tag",
+ "container-types"
+ ]
+ },
+ "MachineContainersParams": {
+ "type": "object",
+ "properties": {
+ "params": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MachineContainers"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "params"
+ ]
+ },
+ "MachineNetworkConfigResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "info": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/NetworkConfig"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "info"
+ ]
+ },
+ "MachineNetworkConfigResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MachineNetworkConfigResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "ModelConfigResult": {
+ "type": "object",
+ "properties": {
+ "config": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "config"
+ ]
+ },
+ "NetworkConfig": {
+ "type": "object",
+ "properties": {
+ "address": {
+ "type": "string"
+ },
+ "cidr": {
+ "type": "string"
+ },
+ "config-type": {
+ "type": "string"
+ },
+ "device-index": {
+ "type": "integer"
+ },
+ "disabled": {
+ "type": "boolean"
+ },
+ "dns-search-domains": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "dns-servers": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "gateway-address": {
+ "type": "string"
+ },
+ "interface-name": {
+ "type": "string"
+ },
+ "interface-type": {
+ "type": "string"
+ },
+ "mac-address": {
+ "type": "string"
+ },
+ "mtu": {
+ "type": "integer"
+ },
+ "no-auto-start": {
+ "type": "boolean"
+ },
+ "parent-interface-name": {
+ "type": "string"
+ },
+ "provider-address-id": {
+ "type": "string"
+ },
+ "provider-id": {
+ "type": "string"
+ },
+ "provider-space-id": {
+ "type": "string"
+ },
+ "provider-subnet-id": {
+ "type": "string"
+ },
+ "provider-vlan-id": {
+ "type": "string"
+ },
+ "routes": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/NetworkRoute"
+ }
+ },
+ "vlan-tag": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "device-index",
+ "mac-address",
+ "cidr",
+ "mtu",
+ "provider-id",
+ "provider-subnet-id",
+ "provider-space-id",
+ "provider-address-id",
+ "provider-vlan-id",
+ "vlan-tag",
+ "interface-name",
+ "parent-interface-name",
+ "interface-type",
+ "disabled"
+ ]
+ },
+ "NetworkRoute": {
+ "type": "object",
+ "properties": {
+ "destination-cidr": {
+ "type": "string"
+ },
+ "gateway-ip": {
+ "type": "string"
+ },
+ "metric": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "destination-cidr",
+ "gateway-ip",
+ "metric"
+ ]
+ },
+ "NotifyWatchResult": {
+ "type": "object",
+ "properties": {
+ "NotifyWatcherId": {
+ "type": "string"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "NotifyWatcherId"
+ ]
+ },
+ "Number": {
+ "type": "object",
+ "properties": {
+ "Build": {
+ "type": "integer"
+ },
+ "Major": {
+ "type": "integer"
+ },
+ "Minor": {
+ "type": "integer"
+ },
+ "Patch": {
+ "type": "integer"
+ },
+ "Tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "Major",
+ "Minor",
+ "Tag",
+ "Patch",
+ "Build"
+ ]
+ },
+ "ProvisioningInfo": {
+ "type": "object",
+ "properties": {
+ "constraints": {
+ "$ref": "#/definitions/Value"
+ },
+ "controller-config": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ },
+ "endpoint-bindings": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "string"
+ }
+ }
+ },
+ "image-metadata": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CloudImageMetadata"
+ }
+ },
+ "jobs": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "placement": {
+ "type": "string"
+ },
+ "series": {
+ "type": "string"
+ },
+ "subnets-to-zones": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "tags": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "string"
+ }
+ }
+ },
+ "volume-attachments": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VolumeAttachmentParams"
+ }
+ },
+ "volumes": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VolumeParams"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "constraints",
+ "series",
+ "placement",
+ "jobs"
+ ]
+ },
+ "ProvisioningInfoResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "$ref": "#/definitions/ProvisioningInfo"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "result"
+ ]
+ },
+ "ProvisioningInfoResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ProvisioningInfoResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "SetMachineNetworkConfig": {
+ "type": "object",
+ "properties": {
+ "config": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/NetworkConfig"
+ }
+ },
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag",
+ "config"
+ ]
+ },
+ "SetStatus": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/EntityStatusArgs"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "Settings": {
+ "type": "object",
+ "properties": {
+ "AutoNoProxy": {
+ "type": "string"
+ },
+ "Ftp": {
+ "type": "string"
+ },
+ "Http": {
+ "type": "string"
+ },
+ "Https": {
+ "type": "string"
+ },
+ "NoProxy": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "Http",
+ "Https",
+ "Ftp",
+ "NoProxy",
+ "AutoNoProxy"
+ ]
+ },
+ "StatusResult": {
+ "type": "object",
+ "properties": {
+ "data": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "id": {
+ "type": "string"
+ },
+ "info": {
+ "type": "string"
+ },
+ "life": {
+ "type": "string"
+ },
+ "since": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "status": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "id",
+ "life",
+ "status",
+ "info",
+ "data",
+ "since"
+ ]
+ },
+ "StatusResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StatusResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "StringResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "result"
+ ]
+ },
+ "StringResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StringResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "StringsResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "StringsWatchResult": {
+ "type": "object",
+ "properties": {
+ "changes": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "watcher-id": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "watcher-id"
+ ]
+ },
+ "StringsWatchResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StringsWatchResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "Tools": {
+ "type": "object",
+ "properties": {
+ "sha256": {
+ "type": "string"
+ },
+ "size": {
+ "type": "integer"
+ },
+ "url": {
+ "type": "string"
+ },
+ "version": {
+ "$ref": "#/definitions/Binary"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "version",
+ "url",
+ "size"
+ ]
+ },
+ "ToolsResult": {
+ "type": "object",
+ "properties": {
+ "disable-ssl-hostname-verification": {
+ "type": "boolean"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "tools": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Tools"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tools",
+ "disable-ssl-hostname-verification"
+ ]
+ },
+ "ToolsResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ToolsResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "UpdateBehavior": {
+ "type": "object",
+ "properties": {
+ "enable-os-refresh-update": {
+ "type": "boolean"
+ },
+ "enable-os-upgrade": {
+ "type": "boolean"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "enable-os-refresh-update",
+ "enable-os-upgrade"
+ ]
+ },
+ "Value": {
+ "type": "object",
+ "properties": {
+ "arch": {
+ "type": "string"
+ },
+ "container": {
+ "type": "string"
+ },
+ "cores": {
+ "type": "integer"
+ },
+ "cpu-power": {
+ "type": "integer"
+ },
+ "instance-type": {
+ "type": "string"
+ },
+ "mem": {
+ "type": "integer"
+ },
+ "root-disk": {
+ "type": "integer"
+ },
+ "spaces": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "tags": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "virt-type": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "Volume": {
+ "type": "object",
+ "properties": {
+ "info": {
+ "$ref": "#/definitions/VolumeInfo"
+ },
+ "volume-tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "volume-tag",
+ "info"
+ ]
+ },
+ "VolumeAttachmentInfo": {
+ "type": "object",
+ "properties": {
+ "bus-address": {
+ "type": "string"
+ },
+ "device-link": {
+ "type": "string"
+ },
+ "device-name": {
+ "type": "string"
+ },
+ "read-only": {
+ "type": "boolean"
+ }
+ },
+ "additionalProperties": false
+ },
+ "VolumeAttachmentParams": {
+ "type": "object",
+ "properties": {
+ "instance-id": {
+ "type": "string"
+ },
+ "machine-tag": {
+ "type": "string"
+ },
+ "provider": {
+ "type": "string"
+ },
+ "read-only": {
+ "type": "boolean"
+ },
+ "volume-id": {
+ "type": "string"
+ },
+ "volume-tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "volume-tag",
+ "machine-tag",
+ "provider"
+ ]
+ },
+ "VolumeInfo": {
+ "type": "object",
+ "properties": {
+ "hardware-id": {
+ "type": "string"
+ },
+ "persistent": {
+ "type": "boolean"
+ },
+ "pool": {
+ "type": "string"
+ },
+ "size": {
+ "type": "integer"
+ },
+ "volume-id": {
+ "type": "string"
+ },
+ "wwn": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "volume-id",
+ "size",
+ "persistent"
+ ]
+ },
+ "VolumeParams": {
+ "type": "object",
+ "properties": {
+ "attachment": {
+ "$ref": "#/definitions/VolumeAttachmentParams"
+ },
+ "attributes": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ },
+ "provider": {
+ "type": "string"
+ },
+ "size": {
+ "type": "integer"
+ },
+ "tags": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "string"
+ }
+ }
+ },
+ "volume-tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "volume-tag",
+ "size",
+ "provider"
+ ]
+ },
+ "WatchContainer": {
+ "type": "object",
+ "properties": {
+ "container-type": {
+ "type": "string"
+ },
+ "machine-tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "machine-tag",
+ "container-type"
+ ]
+ },
+ "WatchContainers": {
+ "type": "object",
+ "properties": {
+ "params": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/WatchContainer"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "params"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "ProxyUpdater",
+ "Version": 1,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "ProxyConfig": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ProxyConfigResults"
+ }
+ }
+ },
+ "WatchForProxyConfigAndAPIHostPortChanges": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/NotifyWatchResults"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Entities": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "Entity": {
+ "type": "object",
+ "properties": {
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "NotifyWatchResult": {
+ "type": "object",
+ "properties": {
+ "NotifyWatcherId": {
+ "type": "string"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "NotifyWatcherId"
+ ]
+ },
+ "NotifyWatchResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/NotifyWatchResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "ProxyConfig": {
+ "type": "object",
+ "properties": {
+ "ftp": {
+ "type": "string"
+ },
+ "http": {
+ "type": "string"
+ },
+ "https": {
+ "type": "string"
+ },
+ "no-proxy": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "http",
+ "https",
+ "ftp",
+ "no-proxy"
+ ]
+ },
+ "ProxyConfigResult": {
+ "type": "object",
+ "properties": {
+ "apt-proxy-settings": {
+ "$ref": "#/definitions/ProxyConfig"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "proxy-settings": {
+ "$ref": "#/definitions/ProxyConfig"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "proxy-settings",
+ "apt-proxy-settings"
+ ]
+ },
+ "ProxyConfigResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ProxyConfigResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "Reboot",
+ "Version": 2,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "ClearReboot": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "GetRebootAction": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/RebootActionResults"
+ }
+ }
+ },
+ "RequestReboot": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "WatchForRebootEvent": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/NotifyWatchResult"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Entities": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "Entity": {
+ "type": "object",
+ "properties": {
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ErrorResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "NotifyWatchResult": {
+ "type": "object",
+ "properties": {
+ "NotifyWatcherId": {
+ "type": "string"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "NotifyWatcherId"
+ ]
+ },
+ "RebootActionResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "RebootActionResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/RebootActionResult"
+ }
+ }
+ },
+ "additionalProperties": false
+ }
+ }
+ }
+ },
+ {
+ "Name": "RelationUnitsWatcher",
+ "Version": 1,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "Next": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/RelationUnitsWatchResult"
+ }
+ }
+ },
+ "Stop": {
+ "type": "object"
+ }
+ },
+ "definitions": {
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "RelationUnitsChange": {
+ "type": "object",
+ "properties": {
+ "changed": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "$ref": "#/definitions/UnitSettings"
+ }
+ }
+ },
+ "departed": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "changed"
+ ]
+ },
+ "RelationUnitsWatchResult": {
+ "type": "object",
+ "properties": {
+ "changes": {
+ "$ref": "#/definitions/RelationUnitsChange"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "watcher-id": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "watcher-id",
+ "changes"
+ ]
+ },
+ "UnitSettings": {
+ "type": "object",
+ "properties": {
+ "version": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "version"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "Resources",
+ "Version": 1,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "AddPendingResources": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/AddPendingResourcesArgs"
+ },
+ "Result": {
+ "$ref": "#/definitions/AddPendingResourcesResult"
+ }
+ }
+ },
+ "ListResources": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ListResourcesArgs"
+ },
+ "Result": {
+ "$ref": "#/definitions/ResourcesResults"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "AddCharmWithAuthorization": {
+ "type": "object",
+ "properties": {
+ "channel": {
+ "type": "string"
+ },
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "url": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "url",
+ "channel",
+ "macaroon"
+ ]
+ },
+ "AddPendingResourcesArgs": {
+ "type": "object",
+ "properties": {
+ "AddCharmWithAuthorization": {
+ "$ref": "#/definitions/AddCharmWithAuthorization"
+ },
+ "Entity": {
+ "$ref": "#/definitions/Entity"
+ },
+ "resources": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CharmResource"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "Entity",
+ "AddCharmWithAuthorization",
+ "resources"
+ ]
+ },
+ "AddPendingResourcesResult": {
+ "type": "object",
+ "properties": {
+ "ErrorResult": {
+ "$ref": "#/definitions/ErrorResult"
+ },
+ "pending-ids": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "ErrorResult",
+ "pending-ids"
+ ]
+ },
+ "CharmResource": {
+ "type": "object",
+ "properties": {
+ "description": {
+ "type": "string"
+ },
+ "fingerprint": {
+ "type": "array",
+ "items": {
+ "type": "integer"
+ }
+ },
+ "name": {
+ "type": "string"
+ },
+ "origin": {
+ "type": "string"
+ },
+ "path": {
+ "type": "string"
+ },
+ "revision": {
+ "type": "integer"
+ },
+ "size": {
+ "type": "integer"
+ },
+ "type": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "name",
+ "type",
+ "path",
+ "origin",
+ "revision",
+ "fingerprint",
+ "size"
+ ]
+ },
+ "Entity": {
+ "type": "object",
+ "properties": {
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ListResourcesArgs": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "Resource": {
+ "type": "object",
+ "properties": {
+ "CharmResource": {
+ "$ref": "#/definitions/CharmResource"
+ },
+ "application": {
+ "type": "string"
+ },
+ "id": {
+ "type": "string"
+ },
+ "pending-id": {
+ "type": "string"
+ },
+ "timestamp": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "username": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "CharmResource",
+ "id",
+ "pending-id",
+ "application",
+ "username",
+ "timestamp"
+ ]
+ },
+ "ResourcesResult": {
+ "type": "object",
+ "properties": {
+ "ErrorResult": {
+ "$ref": "#/definitions/ErrorResult"
+ },
+ "charm-store-resources": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CharmResource"
+ }
+ },
+ "resources": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Resource"
+ }
+ },
+ "unit-resources": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/UnitResources"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "ErrorResult",
+ "resources",
+ "charm-store-resources",
+ "unit-resources"
+ ]
+ },
+ "ResourcesResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ResourcesResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "UnitResources": {
+ "type": "object",
+ "properties": {
+ "Entity": {
+ "$ref": "#/definitions/Entity"
+ },
+ "download-progress": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "integer"
+ }
+ }
+ },
+ "resources": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Resource"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "Entity",
+ "resources",
+ "download-progress"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "ResourcesHookContext",
+ "Version": 1,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "GetResourceInfo": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ListUnitResourcesArgs"
+ },
+ "Result": {
+ "$ref": "#/definitions/UnitResourcesResult"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "CharmResource": {
+ "type": "object",
+ "properties": {
+ "description": {
+ "type": "string"
+ },
+ "fingerprint": {
+ "type": "array",
+ "items": {
+ "type": "integer"
+ }
+ },
+ "name": {
+ "type": "string"
+ },
+ "origin": {
+ "type": "string"
+ },
+ "path": {
+ "type": "string"
+ },
+ "revision": {
+ "type": "integer"
+ },
+ "size": {
+ "type": "integer"
+ },
+ "type": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "name",
+ "type",
+ "path",
+ "origin",
+ "revision",
+ "fingerprint",
+ "size"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ListUnitResourcesArgs": {
+ "type": "object",
+ "properties": {
+ "resource-names": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "resource-names"
+ ]
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "Resource": {
+ "type": "object",
+ "properties": {
+ "CharmResource": {
+ "$ref": "#/definitions/CharmResource"
+ },
+ "application": {
+ "type": "string"
+ },
+ "id": {
+ "type": "string"
+ },
+ "pending-id": {
+ "type": "string"
+ },
+ "timestamp": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "username": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "CharmResource",
+ "id",
+ "pending-id",
+ "application",
+ "username",
+ "timestamp"
+ ]
+ },
+ "UnitResourceResult": {
+ "type": "object",
+ "properties": {
+ "ErrorResult": {
+ "$ref": "#/definitions/ErrorResult"
+ },
+ "resource": {
+ "$ref": "#/definitions/Resource"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "ErrorResult",
+ "resource"
+ ]
+ },
+ "UnitResourcesResult": {
+ "type": "object",
+ "properties": {
+ "ErrorResult": {
+ "$ref": "#/definitions/ErrorResult"
+ },
+ "resources": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/UnitResourceResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "ErrorResult",
+ "resources"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "Resumer",
+ "Version": 2,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "ResumeTransactions": {
+ "type": "object"
+ }
+ }
+ }
+ },
+ {
+ "Name": "RetryStrategy",
+ "Version": 1,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "RetryStrategy": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/RetryStrategyResults"
+ }
+ }
+ },
+ "WatchRetryStrategy": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/NotifyWatchResults"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Entities": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "Entity": {
+ "type": "object",
+ "properties": {
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "NotifyWatchResult": {
+ "type": "object",
+ "properties": {
+ "NotifyWatcherId": {
+ "type": "string"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "NotifyWatcherId"
+ ]
+ },
+ "NotifyWatchResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/NotifyWatchResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "RetryStrategy": {
+ "type": "object",
+ "properties": {
+ "jitter-retry-time": {
+ "type": "boolean"
+ },
+ "max-retry-time": {
+ "type": "integer"
+ },
+ "min-retry-time": {
+ "type": "integer"
+ },
+ "retry-time-factor": {
+ "type": "integer"
+ },
+ "should-retry": {
+ "type": "boolean"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "should-retry",
+ "min-retry-time",
+ "max-retry-time",
+ "jitter-retry-time",
+ "retry-time-factor"
+ ]
+ },
+ "RetryStrategyResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "$ref": "#/definitions/RetryStrategy"
+ }
+ },
+ "additionalProperties": false
+ },
+ "RetryStrategyResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/RetryStrategyResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "SSHClient",
+ "Version": 2,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "AllAddresses": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/SSHAddressesResults"
+ }
+ }
+ },
+ "PrivateAddress": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/SSHAddressResults"
+ }
+ }
+ },
+ "Proxy": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/SSHProxyResult"
+ }
+ }
+ },
+ "PublicAddress": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/SSHAddressResults"
+ }
+ }
+ },
+ "PublicKeys": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/SSHPublicKeysResults"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Entities": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "Entity": {
+ "type": "object",
+ "properties": {
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "SSHAddressResult": {
+ "type": "object",
+ "properties": {
+ "address": {
+ "type": "string"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false
+ },
+ "SSHAddressResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/SSHAddressResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "SSHAddressesResult": {
+ "type": "object",
+ "properties": {
+ "addresses": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "addresses"
+ ]
+ },
+ "SSHAddressesResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/SSHAddressesResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "SSHProxyResult": {
+ "type": "object",
+ "properties": {
+ "use-proxy": {
+ "type": "boolean"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "use-proxy"
+ ]
+ },
+ "SSHPublicKeysResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "public-keys": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "SSHPublicKeysResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/SSHPublicKeysResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "Singular",
+ "Version": 1,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "Claim": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/SingularClaims"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "Wait": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Entities": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "Entity": {
+ "type": "object",
+ "properties": {
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ErrorResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "SingularClaim": {
+ "type": "object",
+ "properties": {
+ "controller-tag": {
+ "type": "string"
+ },
+ "duration": {
+ "type": "integer"
+ },
+ "model-tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "model-tag",
+ "controller-tag",
+ "duration"
+ ]
+ },
+ "SingularClaims": {
+ "type": "object",
+ "properties": {
+ "claims": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/SingularClaim"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "claims"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "Spaces",
+ "Version": 3,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "CreateSpaces": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/CreateSpacesParams"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "ListSpaces": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/ListSpacesResults"
+ }
+ }
+ },
+ "ReloadSpaces": {
+ "type": "object"
+ }
+ },
+ "definitions": {
+ "CreateSpaceParams": {
+ "type": "object",
+ "properties": {
+ "provider-id": {
+ "type": "string"
+ },
+ "public": {
+ "type": "boolean"
+ },
+ "space-tag": {
+ "type": "string"
+ },
+ "subnet-tags": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "subnet-tags",
+ "space-tag",
+ "public"
+ ]
+ },
+ "CreateSpacesParams": {
+ "type": "object",
+ "properties": {
+ "spaces": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CreateSpaceParams"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "spaces"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ErrorResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "ListSpacesResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Space"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "Space": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "name": {
+ "type": "string"
+ },
+ "subnets": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Subnet"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "name",
+ "subnets"
+ ]
+ },
+ "Subnet": {
+ "type": "object",
+ "properties": {
+ "cidr": {
+ "type": "string"
+ },
+ "life": {
+ "type": "string"
+ },
+ "provider-id": {
+ "type": "string"
+ },
+ "provider-network-id": {
+ "type": "string"
+ },
+ "provider-space-id": {
+ "type": "string"
+ },
+ "space-tag": {
+ "type": "string"
+ },
+ "status": {
+ "type": "string"
+ },
+ "vlan-tag": {
+ "type": "integer"
+ },
+ "zones": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "cidr",
+ "vlan-tag",
+ "life",
+ "space-tag",
+ "zones"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "StatusHistory",
+ "Version": 2,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "ModelConfig": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/ModelConfigResult"
+ }
+ }
+ },
+ "Prune": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/StatusHistoryPruneArgs"
+ }
+ }
+ },
+ "WatchForModelConfigChanges": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/NotifyWatchResult"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "ModelConfigResult": {
+ "type": "object",
+ "properties": {
+ "config": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "config"
+ ]
+ },
+ "NotifyWatchResult": {
+ "type": "object",
+ "properties": {
+ "NotifyWatcherId": {
+ "type": "string"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "NotifyWatcherId"
+ ]
+ },
+ "StatusHistoryPruneArgs": {
+ "type": "object",
+ "properties": {
+ "max-history-mb": {
+ "type": "integer"
+ },
+ "max-history-time": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "max-history-time",
+ "max-history-mb"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "Storage",
+ "Version": 3,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "AddToUnit": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/StoragesAddParams"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "Attach": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/StorageAttachmentIds"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "CreatePool": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/StoragePool"
+ }
+ }
+ },
+ "Destroy": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "Detach": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/StorageAttachmentIds"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "ListFilesystems": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/FilesystemFilters"
+ },
+ "Result": {
+ "$ref": "#/definitions/FilesystemDetailsListResults"
+ }
+ }
+ },
+ "ListPools": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/StoragePoolFilters"
+ },
+ "Result": {
+ "$ref": "#/definitions/StoragePoolsResults"
+ }
+ }
+ },
+ "ListStorageDetails": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/StorageFilters"
+ },
+ "Result": {
+ "$ref": "#/definitions/StorageDetailsListResults"
+ }
+ }
+ },
+ "ListVolumes": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/VolumeFilters"
+ },
+ "Result": {
+ "$ref": "#/definitions/VolumeDetailsListResults"
+ }
+ }
+ },
+ "StorageDetails": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/StorageDetailsResults"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Entities": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "Entity": {
+ "type": "object",
+ "properties": {
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag"
+ ]
+ },
+ "EntityStatus": {
+ "type": "object",
+ "properties": {
+ "data": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ },
+ "info": {
+ "type": "string"
+ },
+ "since": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "status": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "status",
+ "info",
+ "since"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ErrorResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "FilesystemAttachmentDetails": {
+ "type": "object",
+ "properties": {
+ "FilesystemAttachmentInfo": {
+ "$ref": "#/definitions/FilesystemAttachmentInfo"
+ },
+ "life": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "FilesystemAttachmentInfo"
+ ]
+ },
+ "FilesystemAttachmentInfo": {
+ "type": "object",
+ "properties": {
+ "mount-point": {
+ "type": "string"
+ },
+ "read-only": {
+ "type": "boolean"
+ }
+ },
+ "additionalProperties": false
+ },
+ "FilesystemDetails": {
+ "type": "object",
+ "properties": {
+ "filesystem-tag": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/FilesystemInfo"
+ },
+ "life": {
+ "type": "string"
+ },
+ "machine-attachments": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "$ref": "#/definitions/FilesystemAttachmentDetails"
+ }
+ }
+ },
+ "status": {
+ "$ref": "#/definitions/EntityStatus"
+ },
+ "storage": {
+ "$ref": "#/definitions/StorageDetails"
+ },
+ "volume-tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "filesystem-tag",
+ "info",
+ "status"
+ ]
+ },
+ "FilesystemDetailsListResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/FilesystemDetails"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "FilesystemDetailsListResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/FilesystemDetailsListResult"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "FilesystemFilter": {
+ "type": "object",
+ "properties": {
+ "machines": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "FilesystemFilters": {
+ "type": "object",
+ "properties": {
+ "filters": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/FilesystemFilter"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "FilesystemInfo": {
+ "type": "object",
+ "properties": {
+ "filesystem-id": {
+ "type": "string"
+ },
+ "pool": {
+ "type": "string"
+ },
+ "size": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "filesystem-id",
+ "pool",
+ "size"
+ ]
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "StorageAddParams": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string"
+ },
+ "storage": {
+ "$ref": "#/definitions/StorageConstraints"
+ },
+ "unit": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "unit",
+ "name",
+ "storage"
+ ]
+ },
+ "StorageAttachmentDetails": {
+ "type": "object",
+ "properties": {
+ "life": {
+ "type": "string"
+ },
+ "location": {
+ "type": "string"
+ },
+ "machine-tag": {
+ "type": "string"
+ },
+ "storage-tag": {
+ "type": "string"
+ },
+ "unit-tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "storage-tag",
+ "unit-tag",
+ "machine-tag"
+ ]
+ },
+ "StorageAttachmentId": {
+ "type": "object",
+ "properties": {
+ "storage-tag": {
+ "type": "string"
+ },
+ "unit-tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "storage-tag",
+ "unit-tag"
+ ]
+ },
+ "StorageAttachmentIds": {
+ "type": "object",
+ "properties": {
+ "ids": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StorageAttachmentId"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "ids"
+ ]
+ },
+ "StorageConstraints": {
+ "type": "object",
+ "properties": {
+ "count": {
+ "type": "integer"
+ },
+ "pool": {
+ "type": "string"
+ },
+ "size": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false
+ },
+ "StorageDetails": {
+ "type": "object",
+ "properties": {
+ "attachments": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "$ref": "#/definitions/StorageAttachmentDetails"
+ }
+ }
+ },
+ "kind": {
+ "type": "integer"
+ },
+ "life": {
+ "type": "string"
+ },
+ "owner-tag": {
+ "type": "string"
+ },
+ "persistent": {
+ "type": "boolean"
+ },
+ "status": {
+ "$ref": "#/definitions/EntityStatus"
+ },
+ "storage-tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "storage-tag",
+ "owner-tag",
+ "kind",
+ "status",
+ "persistent"
+ ]
+ },
+ "StorageDetailsListResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StorageDetails"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "StorageDetailsListResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StorageDetailsListResult"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "StorageDetailsResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "$ref": "#/definitions/StorageDetails"
+ }
+ },
+ "additionalProperties": false
+ },
+ "StorageDetailsResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StorageDetailsResult"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "StorageFilter": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "StorageFilters": {
+ "type": "object",
+ "properties": {
+ "filters": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StorageFilter"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "StoragePool": {
+ "type": "object",
+ "properties": {
+ "attrs": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ },
+ "name": {
+ "type": "string"
+ },
+ "provider": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "name",
+ "provider",
+ "attrs"
+ ]
+ },
+ "StoragePoolFilter": {
+ "type": "object",
+ "properties": {
+ "names": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "providers": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "StoragePoolFilters": {
+ "type": "object",
+ "properties": {
+ "filters": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StoragePoolFilter"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "StoragePoolsResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "storage-pools": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StoragePool"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "StoragePoolsResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StoragePoolsResult"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "StoragesAddParams": {
+ "type": "object",
+ "properties": {
+ "storages": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StorageAddParams"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "storages"
+ ]
+ },
+ "VolumeAttachmentDetails": {
+ "type": "object",
+ "properties": {
+ "VolumeAttachmentInfo": {
+ "$ref": "#/definitions/VolumeAttachmentInfo"
+ },
+ "life": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "VolumeAttachmentInfo"
+ ]
+ },
+ "VolumeAttachmentInfo": {
+ "type": "object",
+ "properties": {
+ "bus-address": {
+ "type": "string"
+ },
+ "device-link": {
+ "type": "string"
+ },
+ "device-name": {
+ "type": "string"
+ },
+ "read-only": {
+ "type": "boolean"
+ }
+ },
+ "additionalProperties": false
+ },
+ "VolumeDetails": {
+ "type": "object",
+ "properties": {
+ "info": {
+ "$ref": "#/definitions/VolumeInfo"
+ },
+ "life": {
+ "type": "string"
+ },
+ "machine-attachments": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "$ref": "#/definitions/VolumeAttachmentDetails"
+ }
+ }
+ },
+ "status": {
+ "$ref": "#/definitions/EntityStatus"
+ },
+ "storage": {
+ "$ref": "#/definitions/StorageDetails"
+ },
+ "volume-tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "volume-tag",
+ "info",
+ "status"
+ ]
+ },
+ "VolumeDetailsListResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VolumeDetails"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "VolumeDetailsListResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VolumeDetailsListResult"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "VolumeFilter": {
+ "type": "object",
+ "properties": {
+ "machines": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "VolumeFilters": {
+ "type": "object",
+ "properties": {
+ "filters": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VolumeFilter"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "VolumeInfo": {
+ "type": "object",
+ "properties": {
+ "hardware-id": {
+ "type": "string"
+ },
+ "persistent": {
+ "type": "boolean"
+ },
+ "pool": {
+ "type": "string"
+ },
+ "size": {
+ "type": "integer"
+ },
+ "volume-id": {
+ "type": "string"
+ },
+ "wwn": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "volume-id",
+ "size",
+ "persistent"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "StorageProvisioner",
+ "Version": 3,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "AttachmentLife": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/MachineStorageIds"
+ },
+ "Result": {
+ "$ref": "#/definitions/LifeResults"
+ }
+ }
+ },
+ "EnsureDead": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "FilesystemAttachmentParams": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/MachineStorageIds"
+ },
+ "Result": {
+ "$ref": "#/definitions/FilesystemAttachmentParamsResults"
+ }
+ }
+ },
+ "FilesystemAttachments": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/MachineStorageIds"
+ },
+ "Result": {
+ "$ref": "#/definitions/FilesystemAttachmentResults"
+ }
+ }
+ },
+ "FilesystemParams": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/FilesystemParamsResults"
+ }
+ }
+ },
+ "Filesystems": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/FilesystemResults"
+ }
+ }
+ },
+ "InstanceId": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/StringResults"
+ }
+ }
+ },
+ "Life": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/LifeResults"
+ }
+ }
+ },
+ "Remove": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "RemoveAttachment": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/MachineStorageIds"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "SetFilesystemAttachmentInfo": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/FilesystemAttachments"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "SetFilesystemInfo": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Filesystems"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "SetStatus": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/SetStatus"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "SetVolumeAttachmentInfo": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/VolumeAttachments"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "SetVolumeInfo": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Volumes"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "UpdateStatus": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/SetStatus"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "VolumeAttachmentParams": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/MachineStorageIds"
+ },
+ "Result": {
+ "$ref": "#/definitions/VolumeAttachmentParamsResults"
+ }
+ }
+ },
+ "VolumeAttachments": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/MachineStorageIds"
+ },
+ "Result": {
+ "$ref": "#/definitions/VolumeAttachmentResults"
+ }
+ }
+ },
+ "VolumeBlockDevices": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/MachineStorageIds"
+ },
+ "Result": {
+ "$ref": "#/definitions/BlockDeviceResults"
+ }
+ }
+ },
+ "VolumeParams": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/VolumeParamsResults"
+ }
+ }
+ },
+ "Volumes": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/VolumeResults"
+ }
+ }
+ },
+ "WatchBlockDevices": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/NotifyWatchResults"
+ }
+ }
+ },
+ "WatchFilesystemAttachments": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/MachineStorageIdsWatchResults"
+ }
+ }
+ },
+ "WatchFilesystems": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/StringsWatchResults"
+ }
+ }
+ },
+ "WatchMachines": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/NotifyWatchResults"
+ }
+ }
+ },
+ "WatchVolumeAttachments": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/MachineStorageIdsWatchResults"
+ }
+ }
+ },
+ "WatchVolumes": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/StringsWatchResults"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "BlockDevice": {
+ "type": "object",
+ "properties": {
+ "BusAddress": {
+ "type": "string"
+ },
+ "DeviceLinks": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "DeviceName": {
+ "type": "string"
+ },
+ "FilesystemType": {
+ "type": "string"
+ },
+ "HardwareId": {
+ "type": "string"
+ },
+ "InUse": {
+ "type": "boolean"
+ },
+ "Label": {
+ "type": "string"
+ },
+ "MountPoint": {
+ "type": "string"
+ },
+ "Size": {
+ "type": "integer"
+ },
+ "UUID": {
+ "type": "string"
+ },
+ "WWN": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "DeviceName",
+ "DeviceLinks",
+ "Label",
+ "UUID",
+ "HardwareId",
+ "WWN",
+ "BusAddress",
+ "Size",
+ "FilesystemType",
+ "InUse",
+ "MountPoint"
+ ]
+ },
+ "BlockDeviceResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "$ref": "#/definitions/BlockDevice"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "result"
+ ]
+ },
+ "BlockDeviceResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/BlockDeviceResult"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "Entities": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "Entity": {
+ "type": "object",
+ "properties": {
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag"
+ ]
+ },
+ "EntityStatusArgs": {
+ "type": "object",
+ "properties": {
+ "data": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ },
+ "info": {
+ "type": "string"
+ },
+ "status": {
+ "type": "string"
+ },
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag",
+ "status",
+ "info",
+ "data"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ErrorResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "Filesystem": {
+ "type": "object",
+ "properties": {
+ "filesystem-tag": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/FilesystemInfo"
+ },
+ "volume-tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "filesystem-tag",
+ "info"
+ ]
+ },
+ "FilesystemAttachment": {
+ "type": "object",
+ "properties": {
+ "filesystem-tag": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/FilesystemAttachmentInfo"
+ },
+ "machine-tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "filesystem-tag",
+ "machine-tag",
+ "info"
+ ]
+ },
+ "FilesystemAttachmentInfo": {
+ "type": "object",
+ "properties": {
+ "mount-point": {
+ "type": "string"
+ },
+ "read-only": {
+ "type": "boolean"
+ }
+ },
+ "additionalProperties": false
+ },
+ "FilesystemAttachmentParams": {
+ "type": "object",
+ "properties": {
+ "filesystem-id": {
+ "type": "string"
+ },
+ "filesystem-tag": {
+ "type": "string"
+ },
+ "instance-id": {
+ "type": "string"
+ },
+ "machine-tag": {
+ "type": "string"
+ },
+ "mount-point": {
+ "type": "string"
+ },
+ "provider": {
+ "type": "string"
+ },
+ "read-only": {
+ "type": "boolean"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "filesystem-tag",
+ "machine-tag",
+ "provider"
+ ]
+ },
+ "FilesystemAttachmentParamsResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "$ref": "#/definitions/FilesystemAttachmentParams"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "result"
+ ]
+ },
+ "FilesystemAttachmentParamsResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/FilesystemAttachmentParamsResult"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "FilesystemAttachmentResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "$ref": "#/definitions/FilesystemAttachment"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "result"
+ ]
+ },
+ "FilesystemAttachmentResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/FilesystemAttachmentResult"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "FilesystemAttachments": {
+ "type": "object",
+ "properties": {
+ "filesystem-attachments": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/FilesystemAttachment"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "filesystem-attachments"
+ ]
+ },
+ "FilesystemInfo": {
+ "type": "object",
+ "properties": {
+ "filesystem-id": {
+ "type": "string"
+ },
+ "pool": {
+ "type": "string"
+ },
+ "size": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "filesystem-id",
+ "pool",
+ "size"
+ ]
+ },
+ "FilesystemParams": {
+ "type": "object",
+ "properties": {
+ "attachment": {
+ "$ref": "#/definitions/FilesystemAttachmentParams"
+ },
+ "attributes": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ },
+ "filesystem-tag": {
+ "type": "string"
+ },
+ "provider": {
+ "type": "string"
+ },
+ "size": {
+ "type": "integer"
+ },
+ "tags": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "string"
+ }
+ }
+ },
+ "volume-tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "filesystem-tag",
+ "size",
+ "provider"
+ ]
+ },
+ "FilesystemParamsResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "$ref": "#/definitions/FilesystemParams"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "result"
+ ]
+ },
+ "FilesystemParamsResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/FilesystemParamsResult"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "FilesystemResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "$ref": "#/definitions/Filesystem"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "result"
+ ]
+ },
+ "FilesystemResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/FilesystemResult"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "Filesystems": {
+ "type": "object",
+ "properties": {
+ "filesystems": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Filesystem"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "filesystems"
+ ]
+ },
+ "LifeResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "life": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "life"
+ ]
+ },
+ "LifeResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/LifeResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "MachineStorageId": {
+ "type": "object",
+ "properties": {
+ "attachment-tag": {
+ "type": "string"
+ },
+ "machine-tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "machine-tag",
+ "attachment-tag"
+ ]
+ },
+ "MachineStorageIds": {
+ "type": "object",
+ "properties": {
+ "ids": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MachineStorageId"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "ids"
+ ]
+ },
+ "MachineStorageIdsWatchResult": {
+ "type": "object",
+ "properties": {
+ "changes": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MachineStorageId"
+ }
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "watcher-id": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "watcher-id",
+ "changes"
+ ]
+ },
+ "MachineStorageIdsWatchResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MachineStorageIdsWatchResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "NotifyWatchResult": {
+ "type": "object",
+ "properties": {
+ "NotifyWatcherId": {
+ "type": "string"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "NotifyWatcherId"
+ ]
+ },
+ "NotifyWatchResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/NotifyWatchResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "SetStatus": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/EntityStatusArgs"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "StringResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "result"
+ ]
+ },
+ "StringResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StringResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "StringsWatchResult": {
+ "type": "object",
+ "properties": {
+ "changes": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "watcher-id": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "watcher-id"
+ ]
+ },
+ "StringsWatchResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StringsWatchResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "Volume": {
+ "type": "object",
+ "properties": {
+ "info": {
+ "$ref": "#/definitions/VolumeInfo"
+ },
+ "volume-tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "volume-tag",
+ "info"
+ ]
+ },
+ "VolumeAttachment": {
+ "type": "object",
+ "properties": {
+ "info": {
+ "$ref": "#/definitions/VolumeAttachmentInfo"
+ },
+ "machine-tag": {
+ "type": "string"
+ },
+ "volume-tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "volume-tag",
+ "machine-tag",
+ "info"
+ ]
+ },
+ "VolumeAttachmentInfo": {
+ "type": "object",
+ "properties": {
+ "bus-address": {
+ "type": "string"
+ },
+ "device-link": {
+ "type": "string"
+ },
+ "device-name": {
+ "type": "string"
+ },
+ "read-only": {
+ "type": "boolean"
+ }
+ },
+ "additionalProperties": false
+ },
+ "VolumeAttachmentParams": {
+ "type": "object",
+ "properties": {
+ "instance-id": {
+ "type": "string"
+ },
+ "machine-tag": {
+ "type": "string"
+ },
+ "provider": {
+ "type": "string"
+ },
+ "read-only": {
+ "type": "boolean"
+ },
+ "volume-id": {
+ "type": "string"
+ },
+ "volume-tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "volume-tag",
+ "machine-tag",
+ "provider"
+ ]
+ },
+ "VolumeAttachmentParamsResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "$ref": "#/definitions/VolumeAttachmentParams"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "result"
+ ]
+ },
+ "VolumeAttachmentParamsResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VolumeAttachmentParamsResult"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "VolumeAttachmentResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "$ref": "#/definitions/VolumeAttachment"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "result"
+ ]
+ },
+ "VolumeAttachmentResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VolumeAttachmentResult"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "VolumeAttachments": {
+ "type": "object",
+ "properties": {
+ "volume-attachments": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VolumeAttachment"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "volume-attachments"
+ ]
+ },
+ "VolumeInfo": {
+ "type": "object",
+ "properties": {
+ "hardware-id": {
+ "type": "string"
+ },
+ "persistent": {
+ "type": "boolean"
+ },
+ "pool": {
+ "type": "string"
+ },
+ "size": {
+ "type": "integer"
+ },
+ "volume-id": {
+ "type": "string"
+ },
+ "wwn": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "volume-id",
+ "size",
+ "persistent"
+ ]
+ },
+ "VolumeParams": {
+ "type": "object",
+ "properties": {
+ "attachment": {
+ "$ref": "#/definitions/VolumeAttachmentParams"
+ },
+ "attributes": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ },
+ "provider": {
+ "type": "string"
+ },
+ "size": {
+ "type": "integer"
+ },
+ "tags": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "string"
+ }
+ }
+ },
+ "volume-tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "volume-tag",
+ "size",
+ "provider"
+ ]
+ },
+ "VolumeParamsResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "$ref": "#/definitions/VolumeParams"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "result"
+ ]
+ },
+ "VolumeParamsResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VolumeParamsResult"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "VolumeResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "$ref": "#/definitions/Volume"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "result"
+ ]
+ },
+ "VolumeResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VolumeResult"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "Volumes": {
+ "type": "object",
+ "properties": {
+ "volumes": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Volume"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "volumes"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "StringsWatcher",
+ "Version": 1,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "Next": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/StringsWatchResult"
+ }
+ }
+ },
+ "Stop": {
+ "type": "object"
+ }
+ },
+ "definitions": {
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "StringsWatchResult": {
+ "type": "object",
+ "properties": {
+ "changes": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "watcher-id": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "watcher-id"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "Subnets",
+ "Version": 2,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "AddSubnets": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/AddSubnetsParams"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "AllSpaces": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/SpaceResults"
+ }
+ }
+ },
+ "AllZones": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/ZoneResults"
+ }
+ }
+ },
+ "ListSubnets": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/SubnetsFilters"
+ },
+ "Result": {
+ "$ref": "#/definitions/ListSubnetsResults"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "AddSubnetParams": {
+ "type": "object",
+ "properties": {
+ "provider-network-id": {
+ "type": "string"
+ },
+ "space-tag": {
+ "type": "string"
+ },
+ "subnet-provider-id": {
+ "type": "string"
+ },
+ "subnet-tag": {
+ "type": "string"
+ },
+ "vlan-tag": {
+ "type": "integer"
+ },
+ "zones": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "space-tag"
+ ]
+ },
+ "AddSubnetsParams": {
+ "type": "object",
+ "properties": {
+ "subnets": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/AddSubnetParams"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "subnets"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ErrorResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "ListSubnetsResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Subnet"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "SpaceResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag"
+ ]
+ },
+ "SpaceResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/SpaceResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "Subnet": {
+ "type": "object",
+ "properties": {
+ "cidr": {
+ "type": "string"
+ },
+ "life": {
+ "type": "string"
+ },
+ "provider-id": {
+ "type": "string"
+ },
+ "provider-network-id": {
+ "type": "string"
+ },
+ "provider-space-id": {
+ "type": "string"
+ },
+ "space-tag": {
+ "type": "string"
+ },
+ "status": {
+ "type": "string"
+ },
+ "vlan-tag": {
+ "type": "integer"
+ },
+ "zones": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "cidr",
+ "vlan-tag",
+ "life",
+ "space-tag",
+ "zones"
+ ]
+ },
+ "SubnetsFilters": {
+ "type": "object",
+ "properties": {
+ "space-tag": {
+ "type": "string"
+ },
+ "zone": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ZoneResult": {
+ "type": "object",
+ "properties": {
+ "available": {
+ "type": "boolean"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "name": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "name",
+ "available"
+ ]
+ },
+ "ZoneResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ZoneResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "Undertaker",
+ "Version": 1,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "ModelConfig": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/ModelConfigResult"
+ }
+ }
+ },
+ "ModelInfo": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/UndertakerModelInfoResult"
+ }
+ }
+ },
+ "ProcessDyingModel": {
+ "type": "object"
+ },
+ "RemoveModel": {
+ "type": "object"
+ },
+ "SetStatus": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/SetStatus"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "UpdateStatus": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/SetStatus"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "WatchModelResources": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/NotifyWatchResults"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "EntityStatusArgs": {
+ "type": "object",
+ "properties": {
+ "data": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ },
+ "info": {
+ "type": "string"
+ },
+ "status": {
+ "type": "string"
+ },
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag",
+ "status",
+ "info",
+ "data"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ErrorResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "ModelConfigResult": {
+ "type": "object",
+ "properties": {
+ "config": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "config"
+ ]
+ },
+ "NotifyWatchResult": {
+ "type": "object",
+ "properties": {
+ "NotifyWatcherId": {
+ "type": "string"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "NotifyWatcherId"
+ ]
+ },
+ "NotifyWatchResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/NotifyWatchResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "SetStatus": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/EntityStatusArgs"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "UndertakerModelInfo": {
+ "type": "object",
+ "properties": {
+ "global-name": {
+ "type": "string"
+ },
+ "is-system": {
+ "type": "boolean"
+ },
+ "life": {
+ "type": "string"
+ },
+ "name": {
+ "type": "string"
+ },
+ "uuid": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "uuid",
+ "name",
+ "global-name",
+ "is-system",
+ "life"
+ ]
+ },
+ "UndertakerModelInfoResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "$ref": "#/definitions/UndertakerModelInfo"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "result"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "UnitAssigner",
+ "Version": 1,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "AssignUnits": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "SetAgentStatus": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/SetStatus"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "WatchUnitAssignments": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/StringsWatchResult"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Entities": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "Entity": {
+ "type": "object",
+ "properties": {
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag"
+ ]
+ },
+ "EntityStatusArgs": {
+ "type": "object",
+ "properties": {
+ "data": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ },
+ "info": {
+ "type": "string"
+ },
+ "status": {
+ "type": "string"
+ },
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag",
+ "status",
+ "info",
+ "data"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ErrorResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "SetStatus": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/EntityStatusArgs"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "StringsWatchResult": {
+ "type": "object",
+ "properties": {
+ "changes": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "watcher-id": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "watcher-id"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "Uniter",
+ "Version": 5,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "APIAddresses": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/StringsResult"
+ }
+ }
+ },
+ "APIHostPorts": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/APIHostPortsResult"
+ }
+ }
+ },
+ "Actions": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ActionResults"
+ }
+ }
+ },
+ "AddMetricBatches": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/MetricBatchParams"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "AddUnitStorage": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/StoragesAddParams"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "AllMachinePorts": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/MachinePortsResults"
+ }
+ }
+ },
+ "ApplicationStatus": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ApplicationStatusResults"
+ }
+ }
+ },
+ "AssignedMachine": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/StringResults"
+ }
+ }
+ },
+ "AvailabilityZone": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/StringResults"
+ }
+ }
+ },
+ "BeginActions": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "CACert": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/BytesResult"
+ }
+ }
+ },
+ "CharmArchiveSha256": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/CharmURLs"
+ },
+ "Result": {
+ "$ref": "#/definitions/StringResults"
+ }
+ }
+ },
+ "CharmModifiedVersion": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/IntResults"
+ }
+ }
+ },
+ "CharmURL": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/StringBoolResults"
+ }
+ }
+ },
+ "ClearResolved": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "ClosePorts": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/EntitiesPortRanges"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "ConfigSettings": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ConfigSettingsResults"
+ }
+ }
+ },
+ "CurrentModel": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/ModelResult"
+ }
+ }
+ },
+ "Destroy": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "DestroyAllSubordinates": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "DestroyUnitStorageAttachments": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "EnsureDead": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "EnterScope": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/RelationUnits"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "FinishActions": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/ActionExecutionResults"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "GetMeterStatus": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/MeterStatusResults"
+ }
+ }
+ },
+ "GetPrincipal": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/StringBoolResults"
+ }
+ }
+ },
+ "HasSubordinates": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/BoolResults"
+ }
+ }
+ },
+ "JoinedRelations": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/StringsResults"
+ }
+ }
+ },
+ "LeaveScope": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/RelationUnits"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "Life": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/LifeResults"
+ }
+ }
+ },
+ "Merge": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/MergeLeadershipSettingsBulkParams"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "ModelConfig": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/ModelConfigResult"
+ }
+ }
+ },
+ "ModelUUID": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/StringResult"
+ }
+ }
+ },
+ "NetworkInfo": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/NetworkInfoParams"
+ },
+ "Result": {
+ "$ref": "#/definitions/NetworkInfoResults"
+ }
+ }
+ },
+ "OpenPorts": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/EntitiesPortRanges"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "PrivateAddress": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/StringResults"
+ }
+ }
+ },
+ "ProviderType": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/StringResult"
+ }
+ }
+ },
+ "PublicAddress": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/StringResults"
+ }
+ }
+ },
+ "Read": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/GetLeadershipSettingsBulkResults"
+ }
+ }
+ },
+ "ReadRemoteSettings": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/RelationUnitPairs"
+ },
+ "Result": {
+ "$ref": "#/definitions/SettingsResults"
+ }
+ }
+ },
+ "ReadSettings": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/RelationUnits"
+ },
+ "Result": {
+ "$ref": "#/definitions/SettingsResults"
+ }
+ }
+ },
+ "Relation": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/RelationUnits"
+ },
+ "Result": {
+ "$ref": "#/definitions/RelationResults"
+ }
+ }
+ },
+ "RelationById": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/RelationIds"
+ },
+ "Result": {
+ "$ref": "#/definitions/RelationResults"
+ }
+ }
+ },
+ "RemoveStorageAttachments": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/StorageAttachmentIds"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "RequestReboot": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "Resolved": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ResolvedModeResults"
+ }
+ }
+ },
+ "SLALevel": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/StringResult"
+ }
+ }
+ },
+ "SetAgentStatus": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/SetStatus"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "SetApplicationStatus": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/SetStatus"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "SetCharmURL": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/EntitiesCharmURL"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "SetStatus": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/SetStatus"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "SetUnitStatus": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/SetStatus"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "SetWorkloadVersion": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/EntityWorkloadVersions"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "StorageAttachmentLife": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/StorageAttachmentIds"
+ },
+ "Result": {
+ "$ref": "#/definitions/LifeResults"
+ }
+ }
+ },
+ "StorageAttachments": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/StorageAttachmentIds"
+ },
+ "Result": {
+ "$ref": "#/definitions/StorageAttachmentResults"
+ }
+ }
+ },
+ "UnitStatus": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/StatusResults"
+ }
+ }
+ },
+ "UnitStorageAttachments": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/StorageAttachmentIdsResults"
+ }
+ }
+ },
+ "UpdateSettings": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/RelationUnitsSettings"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "Watch": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/NotifyWatchResults"
+ }
+ }
+ },
+ "WatchAPIHostPorts": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/NotifyWatchResult"
+ }
+ }
+ },
+ "WatchActionNotifications": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/StringsWatchResults"
+ }
+ }
+ },
+ "WatchConfigSettings": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/NotifyWatchResults"
+ }
+ }
+ },
+ "WatchForModelConfigChanges": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/NotifyWatchResult"
+ }
+ }
+ },
+ "WatchLeadershipSettings": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/NotifyWatchResults"
+ }
+ }
+ },
+ "WatchMeterStatus": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/NotifyWatchResults"
+ }
+ }
+ },
+ "WatchRelationUnits": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/RelationUnits"
+ },
+ "Result": {
+ "$ref": "#/definitions/RelationUnitsWatchResults"
+ }
+ }
+ },
+ "WatchStorageAttachments": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/StorageAttachmentIds"
+ },
+ "Result": {
+ "$ref": "#/definitions/NotifyWatchResults"
+ }
+ }
+ },
+ "WatchUnitAddresses": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/NotifyWatchResults"
+ }
+ }
+ },
+ "WatchUnitRelations": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/StringsWatchResults"
+ }
+ }
+ },
+ "WatchUnitStorageAttachments": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/StringsWatchResults"
+ }
+ }
+ },
+ "WorkloadVersion": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/StringResults"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "APIHostPortsResult": {
+ "type": "object",
+ "properties": {
+ "servers": {
+ "type": "array",
+ "items": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/HostPort"
+ }
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "servers"
+ ]
+ },
+ "Action": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string"
+ },
+ "parameters": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ },
+ "receiver": {
+ "type": "string"
+ },
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag",
+ "receiver",
+ "name"
+ ]
+ },
+ "ActionExecutionResult": {
+ "type": "object",
+ "properties": {
+ "action-tag": {
+ "type": "string"
+ },
+ "message": {
+ "type": "string"
+ },
+ "results": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ },
+ "status": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "action-tag",
+ "status"
+ ]
+ },
+ "ActionExecutionResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ActionExecutionResult"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "ActionResult": {
+ "type": "object",
+ "properties": {
+ "action": {
+ "$ref": "#/definitions/Action"
+ },
+ "completed": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "enqueued": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "message": {
+ "type": "string"
+ },
+ "output": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ },
+ "started": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "status": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ActionResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ActionResult"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "Address": {
+ "type": "object",
+ "properties": {
+ "scope": {
+ "type": "string"
+ },
+ "space-name": {
+ "type": "string"
+ },
+ "type": {
+ "type": "string"
+ },
+ "value": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "value",
+ "type",
+ "scope"
+ ]
+ },
+ "ApplicationStatusResult": {
+ "type": "object",
+ "properties": {
+ "application": {
+ "$ref": "#/definitions/StatusResult"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "units": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "$ref": "#/definitions/StatusResult"
+ }
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "application",
+ "units"
+ ]
+ },
+ "ApplicationStatusResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ApplicationStatusResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "BoolResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "type": "boolean"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "result"
+ ]
+ },
+ "BoolResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/BoolResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "BytesResult": {
+ "type": "object",
+ "properties": {
+ "result": {
+ "type": "array",
+ "items": {
+ "type": "integer"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "result"
+ ]
+ },
+ "CharmRelation": {
+ "type": "object",
+ "properties": {
+ "interface": {
+ "type": "string"
+ },
+ "limit": {
+ "type": "integer"
+ },
+ "name": {
+ "type": "string"
+ },
+ "optional": {
+ "type": "boolean"
+ },
+ "role": {
+ "type": "string"
+ },
+ "scope": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "name",
+ "role",
+ "interface",
+ "optional",
+ "limit",
+ "scope"
+ ]
+ },
+ "CharmURL": {
+ "type": "object",
+ "properties": {
+ "url": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "url"
+ ]
+ },
+ "CharmURLs": {
+ "type": "object",
+ "properties": {
+ "urls": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CharmURL"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "urls"
+ ]
+ },
+ "ConfigSettingsResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "settings": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "settings"
+ ]
+ },
+ "ConfigSettingsResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ConfigSettingsResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "Endpoint": {
+ "type": "object",
+ "properties": {
+ "application-name": {
+ "type": "string"
+ },
+ "relation": {
+ "$ref": "#/definitions/CharmRelation"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "application-name",
+ "relation"
+ ]
+ },
+ "Entities": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "EntitiesCharmURL": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/EntityCharmURL"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "EntitiesPortRanges": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/EntityPortRange"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "Entity": {
+ "type": "object",
+ "properties": {
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag"
+ ]
+ },
+ "EntityCharmURL": {
+ "type": "object",
+ "properties": {
+ "charm-url": {
+ "type": "string"
+ },
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag",
+ "charm-url"
+ ]
+ },
+ "EntityPortRange": {
+ "type": "object",
+ "properties": {
+ "from-port": {
+ "type": "integer"
+ },
+ "protocol": {
+ "type": "string"
+ },
+ "tag": {
+ "type": "string"
+ },
+ "to-port": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag",
+ "protocol",
+ "from-port",
+ "to-port"
+ ]
+ },
+ "EntityStatusArgs": {
+ "type": "object",
+ "properties": {
+ "data": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ },
+ "info": {
+ "type": "string"
+ },
+ "status": {
+ "type": "string"
+ },
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag",
+ "status",
+ "info",
+ "data"
+ ]
+ },
+ "EntityWorkloadVersion": {
+ "type": "object",
+ "properties": {
+ "tag": {
+ "type": "string"
+ },
+ "workload-version": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag",
+ "workload-version"
+ ]
+ },
+ "EntityWorkloadVersions": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/EntityWorkloadVersion"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ErrorResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "GetLeadershipSettingsBulkResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/GetLeadershipSettingsResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "GetLeadershipSettingsResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "settings": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "settings"
+ ]
+ },
+ "HostPort": {
+ "type": "object",
+ "properties": {
+ "Address": {
+ "$ref": "#/definitions/Address"
+ },
+ "port": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "Address",
+ "port"
+ ]
+ },
+ "IntResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "result"
+ ]
+ },
+ "IntResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/IntResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "InterfaceAddress": {
+ "type": "object",
+ "properties": {
+ "cidr": {
+ "type": "string"
+ },
+ "value": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "value",
+ "cidr"
+ ]
+ },
+ "LifeResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "life": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "life"
+ ]
+ },
+ "LifeResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/LifeResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "MachinePortRange": {
+ "type": "object",
+ "properties": {
+ "port-range": {
+ "$ref": "#/definitions/PortRange"
+ },
+ "relation-tag": {
+ "type": "string"
+ },
+ "unit-tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "unit-tag",
+ "relation-tag",
+ "port-range"
+ ]
+ },
+ "MachinePortsResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "ports": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MachinePortRange"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "ports"
+ ]
+ },
+ "MachinePortsResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MachinePortsResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "MergeLeadershipSettingsBulkParams": {
+ "type": "object",
+ "properties": {
+ "params": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MergeLeadershipSettingsParam"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "params"
+ ]
+ },
+ "MergeLeadershipSettingsParam": {
+ "type": "object",
+ "properties": {
+ "application-tag": {
+ "type": "string"
+ },
+ "settings": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "application-tag",
+ "settings"
+ ]
+ },
+ "MeterStatusResult": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "info": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "code",
+ "info"
+ ]
+ },
+ "MeterStatusResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MeterStatusResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "Metric": {
+ "type": "object",
+ "properties": {
+ "key": {
+ "type": "string"
+ },
+ "time": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "value": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "key",
+ "value",
+ "time"
+ ]
+ },
+ "MetricBatch": {
+ "type": "object",
+ "properties": {
+ "charm-url": {
+ "type": "string"
+ },
+ "created": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "metrics": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Metric"
+ }
+ },
+ "uuid": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "uuid",
+ "charm-url",
+ "created",
+ "metrics"
+ ]
+ },
+ "MetricBatchParam": {
+ "type": "object",
+ "properties": {
+ "batch": {
+ "$ref": "#/definitions/MetricBatch"
+ },
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag",
+ "batch"
+ ]
+ },
+ "MetricBatchParams": {
+ "type": "object",
+ "properties": {
+ "batches": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MetricBatchParam"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "batches"
+ ]
+ },
+ "ModelConfigResult": {
+ "type": "object",
+ "properties": {
+ "config": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "config"
+ ]
+ },
+ "ModelResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "name": {
+ "type": "string"
+ },
+ "uuid": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "name",
+ "uuid"
+ ]
+ },
+ "NetworkInfo": {
+ "type": "object",
+ "properties": {
+ "addresses": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/InterfaceAddress"
+ }
+ },
+ "interface-name": {
+ "type": "string"
+ },
+ "mac-address": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "mac-address",
+ "interface-name",
+ "addresses"
+ ]
+ },
+ "NetworkInfoParams": {
+ "type": "object",
+ "properties": {
+ "bindings": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "unit": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "unit",
+ "bindings"
+ ]
+ },
+ "NetworkInfoResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "network-info": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/NetworkInfo"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "network-info"
+ ]
+ },
+ "NetworkInfoResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "$ref": "#/definitions/NetworkInfoResult"
+ }
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "NotifyWatchResult": {
+ "type": "object",
+ "properties": {
+ "NotifyWatcherId": {
+ "type": "string"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "NotifyWatcherId"
+ ]
+ },
+ "NotifyWatchResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/NotifyWatchResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "PortRange": {
+ "type": "object",
+ "properties": {
+ "from-port": {
+ "type": "integer"
+ },
+ "protocol": {
+ "type": "string"
+ },
+ "to-port": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "from-port",
+ "to-port",
+ "protocol"
+ ]
+ },
+ "RelationIds": {
+ "type": "object",
+ "properties": {
+ "relation-ids": {
+ "type": "array",
+ "items": {
+ "type": "integer"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "relation-ids"
+ ]
+ },
+ "RelationResult": {
+ "type": "object",
+ "properties": {
+ "endpoint": {
+ "$ref": "#/definitions/Endpoint"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "id": {
+ "type": "integer"
+ },
+ "key": {
+ "type": "string"
+ },
+ "life": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "life",
+ "id",
+ "key",
+ "endpoint"
+ ]
+ },
+ "RelationResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/RelationResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "RelationUnit": {
+ "type": "object",
+ "properties": {
+ "relation": {
+ "type": "string"
+ },
+ "unit": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "relation",
+ "unit"
+ ]
+ },
+ "RelationUnitPair": {
+ "type": "object",
+ "properties": {
+ "local-unit": {
+ "type": "string"
+ },
+ "relation": {
+ "type": "string"
+ },
+ "remote-unit": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "relation",
+ "local-unit",
+ "remote-unit"
+ ]
+ },
+ "RelationUnitPairs": {
+ "type": "object",
+ "properties": {
+ "relation-unit-pairs": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/RelationUnitPair"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "relation-unit-pairs"
+ ]
+ },
+ "RelationUnitSettings": {
+ "type": "object",
+ "properties": {
+ "relation": {
+ "type": "string"
+ },
+ "settings": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "string"
+ }
+ }
+ },
+ "unit": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "relation",
+ "unit",
+ "settings"
+ ]
+ },
+ "RelationUnits": {
+ "type": "object",
+ "properties": {
+ "relation-units": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/RelationUnit"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "relation-units"
+ ]
+ },
+ "RelationUnitsChange": {
+ "type": "object",
+ "properties": {
+ "changed": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "$ref": "#/definitions/UnitSettings"
+ }
+ }
+ },
+ "departed": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "changed"
+ ]
+ },
+ "RelationUnitsSettings": {
+ "type": "object",
+ "properties": {
+ "relation-units": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/RelationUnitSettings"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "relation-units"
+ ]
+ },
+ "RelationUnitsWatchResult": {
+ "type": "object",
+ "properties": {
+ "changes": {
+ "$ref": "#/definitions/RelationUnitsChange"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "watcher-id": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "watcher-id",
+ "changes"
+ ]
+ },
+ "RelationUnitsWatchResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/RelationUnitsWatchResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "ResolvedModeResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "mode": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "mode"
+ ]
+ },
+ "ResolvedModeResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ResolvedModeResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "SetStatus": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/EntityStatusArgs"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "SettingsResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "settings": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "string"
+ }
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "settings"
+ ]
+ },
+ "SettingsResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/SettingsResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "StatusResult": {
+ "type": "object",
+ "properties": {
+ "data": {
+ "type": "object",
+ "patternProperties": {
+ ".*": {
+ "type": "object",
+ "additionalProperties": true
+ }
+ }
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "id": {
+ "type": "string"
+ },
+ "info": {
+ "type": "string"
+ },
+ "life": {
+ "type": "string"
+ },
+ "since": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "status": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "id",
+ "life",
+ "status",
+ "info",
+ "data",
+ "since"
+ ]
+ },
+ "StatusResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StatusResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "StorageAddParams": {
+ "type": "object",
+ "properties": {
+ "name": {
+ "type": "string"
+ },
+ "storage": {
+ "$ref": "#/definitions/StorageConstraints"
+ },
+ "unit": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "unit",
+ "name",
+ "storage"
+ ]
+ },
+ "StorageAttachment": {
+ "type": "object",
+ "properties": {
+ "kind": {
+ "type": "integer"
+ },
+ "life": {
+ "type": "string"
+ },
+ "location": {
+ "type": "string"
+ },
+ "owner-tag": {
+ "type": "string"
+ },
+ "storage-tag": {
+ "type": "string"
+ },
+ "unit-tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "storage-tag",
+ "owner-tag",
+ "unit-tag",
+ "kind",
+ "location",
+ "life"
+ ]
+ },
+ "StorageAttachmentId": {
+ "type": "object",
+ "properties": {
+ "storage-tag": {
+ "type": "string"
+ },
+ "unit-tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "storage-tag",
+ "unit-tag"
+ ]
+ },
+ "StorageAttachmentIds": {
+ "type": "object",
+ "properties": {
+ "ids": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StorageAttachmentId"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "ids"
+ ]
+ },
+ "StorageAttachmentIdsResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "$ref": "#/definitions/StorageAttachmentIds"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "result"
+ ]
+ },
+ "StorageAttachmentIdsResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StorageAttachmentIdsResult"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "StorageAttachmentResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "$ref": "#/definitions/StorageAttachment"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "result"
+ ]
+ },
+ "StorageAttachmentResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StorageAttachmentResult"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "StorageConstraints": {
+ "type": "object",
+ "properties": {
+ "count": {
+ "type": "integer"
+ },
+ "pool": {
+ "type": "string"
+ },
+ "size": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false
+ },
+ "StoragesAddParams": {
+ "type": "object",
+ "properties": {
+ "storages": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StorageAddParams"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "storages"
+ ]
+ },
+ "StringBoolResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "ok": {
+ "type": "boolean"
+ },
+ "result": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "result",
+ "ok"
+ ]
+ },
+ "StringBoolResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StringBoolResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "StringResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "result"
+ ]
+ },
+ "StringResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StringResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "StringsResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ },
+ "additionalProperties": false
+ },
+ "StringsResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StringsResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "StringsWatchResult": {
+ "type": "object",
+ "properties": {
+ "changes": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "watcher-id": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "watcher-id"
+ ]
+ },
+ "StringsWatchResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/StringsWatchResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "UnitSettings": {
+ "type": "object",
+ "properties": {
+ "version": {
+ "type": "integer"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "version"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "Upgrader",
+ "Version": 1,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "DesiredVersion": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/VersionResults"
+ }
+ }
+ },
+ "SetTools": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/EntitiesVersion"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "Tools": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ToolsResults"
+ }
+ }
+ },
+ "WatchAPIVersion": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/NotifyWatchResults"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "Binary": {
+ "type": "object",
+ "properties": {
+ "Arch": {
+ "type": "string"
+ },
+ "Number": {
+ "$ref": "#/definitions/Number"
+ },
+ "Series": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "Number",
+ "Series",
+ "Arch"
+ ]
+ },
+ "Entities": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "EntitiesVersion": {
+ "type": "object",
+ "properties": {
+ "agent-tools": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/EntityVersion"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "agent-tools"
+ ]
+ },
+ "Entity": {
+ "type": "object",
+ "properties": {
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag"
+ ]
+ },
+ "EntityVersion": {
+ "type": "object",
+ "properties": {
+ "tag": {
+ "type": "string"
+ },
+ "tools": {
+ "$ref": "#/definitions/Version"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag",
+ "tools"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ErrorResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "NotifyWatchResult": {
+ "type": "object",
+ "properties": {
+ "NotifyWatcherId": {
+ "type": "string"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "NotifyWatcherId"
+ ]
+ },
+ "NotifyWatchResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/NotifyWatchResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "Number": {
+ "type": "object",
+ "properties": {
+ "Build": {
+ "type": "integer"
+ },
+ "Major": {
+ "type": "integer"
+ },
+ "Minor": {
+ "type": "integer"
+ },
+ "Patch": {
+ "type": "integer"
+ },
+ "Tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "Major",
+ "Minor",
+ "Tag",
+ "Patch",
+ "Build"
+ ]
+ },
+ "Tools": {
+ "type": "object",
+ "properties": {
+ "sha256": {
+ "type": "string"
+ },
+ "size": {
+ "type": "integer"
+ },
+ "url": {
+ "type": "string"
+ },
+ "version": {
+ "$ref": "#/definitions/Binary"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "version",
+ "url",
+ "size"
+ ]
+ },
+ "ToolsResult": {
+ "type": "object",
+ "properties": {
+ "disable-ssl-hostname-verification": {
+ "type": "boolean"
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "tools": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Tools"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tools",
+ "disable-ssl-hostname-verification"
+ ]
+ },
+ "ToolsResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ToolsResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "Version": {
+ "type": "object",
+ "properties": {
+ "version": {
+ "$ref": "#/definitions/Binary"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "version"
+ ]
+ },
+ "VersionResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "version": {
+ "$ref": "#/definitions/Number"
+ }
+ },
+ "additionalProperties": false
+ },
+ "VersionResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/VersionResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "UserManager",
+ "Version": 1,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "AddUser": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/AddUsers"
+ },
+ "Result": {
+ "$ref": "#/definitions/AddUserResults"
+ }
+ }
+ },
+ "DisableUser": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "EnableUser": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "RemoveUser": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/Entities"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "SetPassword": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/EntityPasswords"
+ },
+ "Result": {
+ "$ref": "#/definitions/ErrorResults"
+ }
+ }
+ },
+ "UserInfo": {
+ "type": "object",
+ "properties": {
+ "Params": {
+ "$ref": "#/definitions/UserInfoRequest"
+ },
+ "Result": {
+ "$ref": "#/definitions/UserInfoResults"
+ }
+ }
+ }
+ },
+ "definitions": {
+ "AddUser": {
+ "type": "object",
+ "properties": {
+ "display-name": {
+ "type": "string"
+ },
+ "password": {
+ "type": "string"
+ },
+ "username": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "username",
+ "display-name"
+ ]
+ },
+ "AddUserResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "secret-key": {
+ "type": "array",
+ "items": {
+ "type": "integer"
+ }
+ },
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "AddUserResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/AddUserResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "AddUsers": {
+ "type": "object",
+ "properties": {
+ "users": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/AddUser"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "users"
+ ]
+ },
+ "Entities": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities"
+ ]
+ },
+ "Entity": {
+ "type": "object",
+ "properties": {
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag"
+ ]
+ },
+ "EntityPassword": {
+ "type": "object",
+ "properties": {
+ "password": {
+ "type": "string"
+ },
+ "tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "tag",
+ "password"
+ ]
+ },
+ "EntityPasswords": {
+ "type": "object",
+ "properties": {
+ "changes": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/EntityPassword"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "changes"
+ ]
+ },
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ }
+ },
+ "additionalProperties": false
+ },
+ "ErrorResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/ErrorResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "UserInfo": {
+ "type": "object",
+ "properties": {
+ "access": {
+ "type": "string"
+ },
+ "created-by": {
+ "type": "string"
+ },
+ "date-created": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "disabled": {
+ "type": "boolean"
+ },
+ "display-name": {
+ "type": "string"
+ },
+ "last-connection": {
+ "type": "string",
+ "format": "date-time"
+ },
+ "username": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "username",
+ "display-name",
+ "access",
+ "created-by",
+ "date-created",
+ "disabled"
+ ]
+ },
+ "UserInfoRequest": {
+ "type": "object",
+ "properties": {
+ "entities": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Entity"
+ }
+ },
+ "include-disabled": {
+ "type": "boolean"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "entities",
+ "include-disabled"
+ ]
+ },
+ "UserInfoResult": {
+ "type": "object",
+ "properties": {
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "result": {
+ "$ref": "#/definitions/UserInfo"
+ }
+ },
+ "additionalProperties": false
+ },
+ "UserInfoResults": {
+ "type": "object",
+ "properties": {
+ "results": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/UserInfoResult"
+ }
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "results"
+ ]
+ }
+ }
+ }
+ },
+ {
+ "Name": "VolumeAttachmentsWatcher",
+ "Version": 2,
+ "Schema": {
+ "type": "object",
+ "properties": {
+ "Next": {
+ "type": "object",
+ "properties": {
+ "Result": {
+ "$ref": "#/definitions/MachineStorageIdsWatchResult"
+ }
+ }
+ },
+ "Stop": {
+ "type": "object"
+ }
+ },
+ "definitions": {
+ "Error": {
+ "type": "object",
+ "properties": {
+ "code": {
+ "type": "string"
+ },
+ "info": {
+ "$ref": "#/definitions/ErrorInfo"
+ },
+ "message": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "message",
+ "code"
+ ]
+ },
+ "ErrorInfo": {
+ "type": "object",
+ "properties": {
+ "macaroon": {
+ "$ref": "#/definitions/Macaroon"
+ },
+ "macaroon-path": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ },
+ "Macaroon": {
+ "type": "object",
+ "additionalProperties": false
+ },
+ "MachineStorageId": {
+ "type": "object",
+ "properties": {
+ "attachment-tag": {
+ "type": "string"
+ },
+ "machine-tag": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "machine-tag",
+ "attachment-tag"
+ ]
+ },
+ "MachineStorageIdsWatchResult": {
+ "type": "object",
+ "properties": {
+ "changes": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/MachineStorageId"
+ }
+ },
+ "error": {
+ "$ref": "#/definitions/Error"
+ },
+ "watcher-id": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "watcher-id",
+ "changes"
+ ]
+ }
+ }
+ }
+ }
+]