{
  "id": "@itentialopensource/adapter-docker",
  "type": "Adapter",
  "export": "Docker",
  "title": "Docker",
  "src": "adapter.js",
  "roles": [
    "admin"
  ],
  "methods": [
		{
      "name": "iapUpdateAdapterConfiguration",
      "summary": "Updates the adapter configuration",
      "description": "Updates the adapter configuration file with the provided changes",
      "input": [
        {
          "name": "configFile",
          "type": "string",
          "info": "The name of the file to change",
          "required": true,
          "schema": {
            "title": "configFile",
            "type": "string"
          }
        },
        {
          "name": "changes",
          "type": "object",
          "info": "JSON object containing the configuration changes",
          "required": true,
          "schema": {
            "title": "changes",
            "type": "object"
          }
        },
        {
          "name": "entity",
          "type": "string",
          "info": "The entity in which the changes are being made",
          "required": false,
          "schema": {
            "title": "entity",
            "type": "string"
          }
        },
        {
          "name": "type",
          "type": "string",
          "info": "The type of file to change - action, schema, or mock",
          "required": false,
          "schema": {
            "title": "type",
            "type": "string"
          }
        },
        {
          "name": "action",
          "type": "string",
          "info": "The action to be changed",
          "required": false,
          "schema": {
            "title": "action",
            "type": "string"
          }
        },
        {
          "name": "replace",
          "type": "boolean",
          "info": "True to replace entire mock data, false to merge/append",
          "required": false,
          "schema": {
            "title": "replace",
            "type": "boolean"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapUpdateAdapterConfiguration"
      },
      "task": true
    },
    {
      "name": "iapSuspendAdapter",
      "summary": "Suspends the adapter",
      "description": "Suspends the adapter",
      "input": [
        {
          "name": "mode",
          "type": "enum",
          "enumerals": [
            "pause",
            "error"
          ],
          "info": "How incoming requests are handled. Defaults to 'pause'",
          "description": "How incoming requests are handled. Defaults to 'pause'",
          "schema": {
            "title": "mode",
            "type": "string"
          },
          "required": false
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing the adapter suspended status",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapSuspendAdapter"
      },
      "task": true
    },
    {
      "name": "iapUnsuspendAdapter",
      "summary": "Unsuspends the adapter",
      "description": "Unsuspends the adapter",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing the adapter suspended status",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapUnsuspendAdapter"
      },
      "task": true
    },
    {
      "name": "iapGetAdapterQueue",
      "summary": "Return the requests that are waiting in the queue if throttling is enabled",
      "description": "Return the requests that are waiting in the queue if throttling is enabled",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing the adapter queue",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapGetAdapterQueue"
      },
      "task": true
    },
    {
      "name": "iapFindAdapterPath",
      "summary": "Provides the ability to see if a particular API path is supported by the adapter",
      "description": "Provides the ability to see if a particular API path is supported by the adapter",
      "input": [
        {
          "name": "apiPath",
          "type": "string",
          "info": "The API Path you want to check - make sure to not include base path and version",
          "description": "The API Path you want to check - make sure to not include base path and version",
          "schema": {
            "title": "apiPath",
            "type": "string"
          },
          "required": true
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapFindAdapterPath"
      },
      "task": true
    },
    {
      "name": "iapTroubleshootAdapter",
      "summary": "Runs troubleshoot script for adapter",
      "description": "Runs troubleshoot script for adapter",
      "input": [
        {
          "name": "props",
          "type": "object",
          "info": "Object containing configuration, healthcheck and auth properties {'connProps':{'host': 'api.service.com', 'base_path': '/', 'protocol': 'http', 'port': 443, 'version': 'v1'},'healthCheckEndpoint': '/healthcheck', 'auth': {'auth_method': 'no authentication', 'username': 'username', 'password': 'password'}}",
          "required": true,
          "schema": {
            "title": "props",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing the test results",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapTroubleshootAdapter"
      },
      "task": true
    },
    {
      "name": "iapRunAdapterHealthcheck",
      "summary": "Runs healthcheck script for adapter",
      "description": "Runs healthcheck script for adapter",
      "input": [],
      "output": {
        "name": "result",
        "type": "boolean",
        "description": "Whether healthcheck passed or failed",
        "schema": {
          "title": "result",
          "type": "boolean"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapRunAdapterHealthcheck"
      },
      "task": true
    },
    {
      "name": "iapRunAdapterConnectivity",
      "summary": "Runs connectivity check script for adapter",
      "description": "Runs connectivity check script for adapter",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing the test results",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapRunAdapterConnectivity"
      },
      "task": true
    },
    {
      "name": "iapRunAdapterBasicGet",
      "summary": "Runs basicGet script for adapter",
      "description": "Runs basicGet script for adapter",
      "input": [
        {
          "name": "maxCalls",
          "required": false,
          "type": "number", 
          "info": "How many GET endpoints to test (defaults to 5)",
          "schema": {
            "title": "maxCalls",
            "type": "number", 
            "default": 5
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing the test results",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapRunAdapterBasicGet"
      },
      "task": true
    },
    {
      "name": "iapMoveAdapterEntitiesToDB",
      "summary": "Moves entities from an adapter into the Itential Platform database",
      "description": "Moves entities from an adapter into the Itential Platform database",
      "input": [],
      "output": {
        "name": "res",
        "type": "object",
        "description": "A JSON Object containing status, code and the response from the mongo transaction",
        "schema": {
          "title": "res",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapMoveAdapterEntitiesToDB"
      },
      "task": true
    },
    {
      "name": "iapDeactivateTasks",
      "summary": "Deactivate the inputted tasks",
      "description": "Deactivate the inputted tasks",
      "input": [
        {
          "name": "tasks",
          "type": "array",
          "description": "Tasks to deactivate",
          "schema": {
            "title": "tasks",
            "type": "array"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing success status",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapDeactivateTasks"
      },
      "task": true
    },
    {
      "name": "iapActivateTasks",
      "summary": "Activate the inputted tasks",
      "description": "activate the inputted tasks",
      "input": [
        {
          "name": "tasks",
          "type": "array",
          "description": "Tasks to activate",
          "schema": {
            "title": "tasks",
            "type": "array"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing success status",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapActivateTasks"
      },
      "task": true
    },
    {
      "name": "iapPopulateEntityCache",
      "summary": "Populate the cache for the given entities",
      "description": "Populate the cache for the given entities",
      "input": [
        {
          "name": "entityTypes",
          "type": "array",
          "info": "the entity type(s) to populate",
          "required": true,
          "schema": {
            "title": "entityTypes",
            "type": "array"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapPopulateEntityCache"
      },
      "task": true
    },
    {
      "name": "iapRetrieveEntitiesCache",
      "summary": "Retrieves data from cache for specified entity type",
      "description": "Retrieves data from cache for specified entity type",
      "input": [
        {
          "name": "entityType",
          "type": "string",
          "info": "entity of which to retrieve",
          "required": true,
          "schema": {
            "title": "entityType",
            "type": "string"
          }
        },
        {
          "name": "options",
          "type": "object",
          "info": "settings of which data to return and how to return it",
          "required": false,
          "schema": {
            "title": "options",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapRetrieveEntitiesCache"
      },
      "task": true
    },
    {
      "name": "getDevice",
      "summary": "Get the Appliance",
      "description": "Get the Appliance",
      "input": [
        {
          "name": "deviceName",
          "type": "string",
          "info": "An Appliance Device Name",
          "required": true,
          "schema": {
            "title": "deviceName",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getDevice"
      },
      "task": false
    },
    {
      "name": "getDevicesFiltered",
      "summary": "Get Appliances that match the filter",
      "description": "Get Appliances that match the filter",
      "input": [
        {
          "name": "options",
          "type": "object",
          "info": "options - e.g. { 'start': 1, 'limit': 20, 'filter': { 'name': 'abc123' } }",
          "required": true,
          "schema": {
            "title": "options",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "array",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "array"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getDevicesFiltered"
      },
      "task": false
    },
    {
      "name": "isAlive",
      "summary": "Checks the status for the provided Appliance",
      "description": "Checks the status for the provided Appliance",
      "input": [
        {
          "name": "deviceName",
          "type": "string",
          "info": "An Appliance Device Name",
          "required": true,
          "schema": {
            "title": "deviceName",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "boolean",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "boolean"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/isAlive"
      },
      "task": false
    },
    {
      "name": "getConfig",
      "summary": "Gets a config for the provided Appliance",
      "description": "Gets a config for the provided Appliance",
      "input": [
        {
          "name": "deviceName",
          "type": "string",
          "info": "An Appliance Device Name",
          "required": true,
          "schema": {
            "title": "deviceName",
            "type": "string"
          }
        },
        {
          "name": "format",
          "type": "string",
          "info": "The format to be returned - this is ignored as we always return json",
          "required": false,
          "schema": {
            "title": "format",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getConfig"
      },
      "task": false
    },
    {
      "name": "iapGetDeviceCount",
      "summary": "Gets a device count from the system",
      "description": "Gets a device count from the system",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapGetDeviceCount"
      },
      "task": false
    },
    {
      "name": "iapExpandedGenericAdapterRequest",
      "summary": "Makes the requested generic call with additional options",
      "description": "Makes the requested generic call with additional options via metadata",
      "input": [
        {
          "name": "metadata",
          "type": "object",
          "info": "metadata for the call (optional)",
          "description": "metadata for the call - allows for many enhancements (optional)",
          "schema": {
            "title": "metadata",
            "type": "object"
          },
          "required": false
        },
        {
          "name": "uriPath",
          "type": "string",
          "info": "the path of the api call - do not include the host, port, base path or version",
          "description": "the path of the api call",
          "schema": {
            "title": "uriPath",
            "type": "string"
          },
          "required": false
        },
        {
          "name": "restMethod",
          "type": "string",
          "info": "the rest method (GET, POST, PUT, PATCH, DELETE)",
          "description": "the rest method (GET, POST, PUT, PATCH, DELETE)",
          "schema": {
            "title": "restMethod",
            "type": "string"
          },
          "required": false
        },
        {
          "name": "pathVars",
          "type": "object",
          "info": "the parameters to be put within the url path (optional)",
          "description": "the parameters to be put within the url path (optional)",
          "schema": {
            "title": "pathVars",
            "type": "object"
          },
          "required": false
        },
        {
          "name": "queryData",
          "type": "object",
          "info": "the query parameters to be put on the url (optional)",
          "description": "the query parameters to be put on the url (optional)",
          "schema": {
            "title": "queryData",
            "type": "object"
          },
          "required": false
        },
        {
          "name": "requestBody",
          "type": "object",
          "info": "the payload to be sent with the request (optional)",
          "description": "the payload to be sent with the request (optional)",
          "schema": {
            "title": "requestBody",
            "type": "object"
          },
          "required": false
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "description": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          },
          "required": false
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/iapExpandedGenericAdapterRequest"
      },
      "task": true
    },
    {
      "name": "genericAdapterRequest",
      "summary": "Makes the requested generic call",
      "description": "Makes the requested generic call",
      "input": [
        {
          "name": "uriPath",
          "type": "string",
          "info": "the path of the api call - do not include the host, port, base path or version",
          "description": "the path of the api call",
          "schema": {
            "title": "uriPath",
            "type": "string"
          },
          "required": true
        },
        {
          "name": "restMethod",
          "type": "string",
          "info": "the rest method (GET, POST, PUT, PATCH, DELETE)",
          "description": "the rest method (GET, POST, PUT, PATCH, DELETE)",
          "schema": {
            "title": "restMethod",
            "type": "string"
          },
          "required": true
        },
        {
          "name": "queryData",
          "type": "object",
          "info": "the query parameters to be put on the url (optional)",
          "description": "the query parameters to be put on the url (optional)",
          "schema": {
            "title": "queryData",
            "type": "object"
          },
          "required": false
        },
        {
          "name": "requestBody",
          "type": "object",
          "info": "the payload to be sent with the request (optional)",
          "description": "the payload to be sent with the request (optional)",
          "schema": {
            "title": "requestBody",
            "type": "object"
          },
          "required": false
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "description": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          },
          "required": false
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/genericAdapterRequest"
      },
      "task": true
    },
    {
      "name": "genericAdapterRequestNoBasePath",
      "summary": "Makes the requested generic call",
      "description": "Makes the requested generic call",
      "input": [
        {
          "name": "uriPath",
          "type": "string",
          "info": "the path of the api call - do not include the host, port, base path or version",
          "description": "the path of the api call",
          "schema": {
            "title": "uriPath",
            "type": "string"
          },
          "required": true
        },
        {
          "name": "restMethod",
          "type": "string",
          "info": "the rest method (GET, POST, PUT, PATCH, DELETE)",
          "description": "the rest method (GET, POST, PUT, PATCH, DELETE)",
          "schema": {
            "title": "restMethod",
            "type": "string"
          },
          "required": true
        },
        {
          "name": "queryData",
          "type": "object",
          "info": "the query parameters to be put on the url (optional)",
          "description": "the query parameters to be put on the url (optional)",
          "schema": {
            "title": "queryData",
            "type": "object"
          },
          "required": false
        },
        {
          "name": "requestBody",
          "type": "object",
          "info": "the payload to be sent with the request (optional)",
          "description": "the payload to be sent with the request (optional)",
          "schema": {
            "title": "requestBody",
            "type": "object"
          },
          "required": false
        },
        {
          "name": "addlHeaders",
          "type": "object",
          "info": "additional headers to be put on the call (optional)",
          "description": "additional headers to be put on the call (optional)",
          "schema": {
            "title": "addlHeaders",
            "type": "object"
          },
          "required": false
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/genericAdapterRequestNoBasePath"
      },
      "task": true
    },
    {
      "name": "iapRunAdapterLint",
      "summary": "Run the adapter lint script to return the results",
      "description": "Run the adapter lint script to return the results",
      "input": [],
      "output": {
        "name": "result",
        "type": "string",
        "description": "A string containing the run results",
        "schema": {
          "title": "result",
          "type": "string"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/iapRunAdapterLint"
      },
      "task": true
    },
    {
      "name": "iapRunAdapterTests",
      "summary": "Run the adapter test scripts (baseunit and unit) to return the results",
      "description": "Run the adapter test scripts (baseunit and unit) to return the results",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/iapRunAdapterTests"
      },
      "task": true
    },
    {
      "name": "iapGetAdapterInventory",
      "summary": "Provide inventory information abbout the adapter",
      "description": "Provide inventory information abbout the adapter",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/iapGetAdapterInventory"
      },
      "task": true
    },
    {
      "name": "getContainersjson",
      "summary": "List containers",
      "description": "",
      "input": [
        {
          "name": "all",
          "type": "boolean",
          "info": "Return all containers. By default, only running containers are shown",
          "required": false,
          "schema": {
            "title": "all",
            "type": "boolean"
          }
        },
        {
          "name": "limit",
          "type": "number",
          "info": "Return this number of most recently created containers, including non-running ones.",
          "required": false,
          "schema": {
            "title": "limit",
            "type": "number"
          }
        },
        {
          "name": "size",
          "type": "boolean",
          "info": "Return the size of container as fields `SizeRw` and `SizeRootFs`.",
          "required": false,
          "schema": {
            "title": "size",
            "type": "boolean"
          }
        },
        {
          "name": "filters",
          "type": "string",
          "info": "Filters to process on the container list, encoded as JSON (a `map[string][]string`). For example, `{\"status\": [\"paused\"]}` will only return paused containers.\n\nAvailable filters:\n- `exited=<int>` containers with exit code of `<int>`\n- `status=`(`created`|`restarting`|`running`|`removing`|`paused`|`exited`|`dead`)\n- `label=key` or `label=\"key=value\"` of a container label\n- `isolation=`(`default`|`process`|`hyperv`) (Windows daemon only)\n- `id=<ID>` a container's ID\n- `name=<name>` a container's name\n- `is-task=`(`true`|`false`)\n- `ancestor`=(`<image-name>[:<tag>]`, `<image id>`, or `<image@digest>`)\n- `before`=(`<container id>` or `<container name>`)\n- `since`=(`<container id>` or `<container name>`)\n- `volume`=(`<volume name>` or `<mount point destination>`)\n- `network`=(`<network id>` or `<network name>`)\n- `health`=(`starting`|`healthy`|`unhealthy`|`none`)\n",
          "required": false,
          "schema": {
            "title": "filters",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getContainersjson"
      },
      "task": true
    },
    {
      "name": "postContainerscreate",
      "summary": "Create a container",
      "description": "",
      "input": [
        {
          "name": "name",
          "type": "string",
          "info": "Assign the specified name to the container. Must match `/?[a-zA-Z0-9_-]+`.",
          "required": false,
          "schema": {
            "title": "name",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "Container to create",
          "required": true,
          "schema": {
            "title": "body",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postContainerscreate"
      },
      "task": true
    },
    {
      "name": "getContainersidjson",
      "summary": "Inspect a container",
      "description": "Return low-level information about a container.",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "ID or name of the container",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        },
        {
          "name": "size",
          "type": "boolean",
          "info": "Return the size of container as fields `SizeRw` and `SizeRootFs`",
          "required": false,
          "schema": {
            "title": "size",
            "type": "boolean"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getContainersidjson"
      },
      "task": true
    },
    {
      "name": "getContainersidtop",
      "summary": "List processes running inside a container",
      "description": "On Unix systems, this is done by running the `ps` command. This endpoint is not supported on Windows.",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "ID or name of the container",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        },
        {
          "name": "psArgs",
          "type": "string",
          "info": "The arguments to pass to `ps`. For example, `aux`",
          "required": false,
          "schema": {
            "title": "psArgs",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getContainersidtop"
      },
      "task": true
    },
    {
      "name": "getContainersidlogs",
      "summary": "Get container logs",
      "description": "Get `stdout` and `stderr` logs from a container.\n\nNote: This endpoint works only for containers with the `json-file` or `journald` logging driver.\n",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "ID or name of the container",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        },
        {
          "name": "follow",
          "type": "boolean",
          "info": "Return the logs as a stream.\n\nThis will return a `101` HTTP response with a `Connection: upgrade` header, then hijack the HTTP connection to send raw output. For more information about hijacking and the stream format, [see the documentation for the attach endpoint](#operation/ContainerAttach).\n",
          "required": false,
          "schema": {
            "title": "follow",
            "type": "boolean"
          }
        },
        {
          "name": "stdout",
          "type": "boolean",
          "info": "Return logs from `stdout`",
          "required": false,
          "schema": {
            "title": "stdout",
            "type": "boolean"
          }
        },
        {
          "name": "stderr",
          "type": "boolean",
          "info": "Return logs from `stderr`",
          "required": false,
          "schema": {
            "title": "stderr",
            "type": "boolean"
          }
        },
        {
          "name": "since",
          "type": "number",
          "info": "Only return logs since this time, as a UNIX timestamp",
          "required": false,
          "schema": {
            "title": "since",
            "type": "number"
          }
        },
        {
          "name": "timestamps",
          "type": "boolean",
          "info": "Add timestamps to every log line",
          "required": false,
          "schema": {
            "title": "timestamps",
            "type": "boolean"
          }
        },
        {
          "name": "tail",
          "type": "string",
          "info": "Only return this number of log lines from the end of the logs. Specify as an integer or `all` to output all log lines.",
          "required": false,
          "schema": {
            "title": "tail",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getContainersidlogs"
      },
      "task": true
    },
    {
      "name": "getContainersidchanges",
      "summary": "Get changes on a container’s filesystem",
      "description": "Returns which files in a container's filesystem have been added, deleted, or modified. The `Kind` of modification can be one of:\n\n- `0`: Modified\n- `1`: Added\n- `2`: Deleted\n",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "ID or name of the container",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getContainersidchanges"
      },
      "task": true
    },
    {
      "name": "getContainersidexport",
      "summary": "Export a container",
      "description": "Export the contents of a container as a tarball.",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "ID or name of the container",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getContainersidexport"
      },
      "task": true
    },
    {
      "name": "getContainersidstats",
      "summary": "Get container stats based on resource usage",
      "description": "This endpoint returns a live stream of a container’s resource usage statistics.\n\nThe `precpu_stats` is the CPU statistic of last read, which is used for calculating the CPU usage percentage. It is not the same as the `cpu_stats` field.\n",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "ID or name of the container",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        },
        {
          "name": "stream",
          "type": "boolean",
          "info": "Stream the output. If false, the stats will be output once and then it will disconnect.",
          "required": false,
          "schema": {
            "title": "stream",
            "type": "boolean"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getContainersidstats"
      },
      "task": true
    },
    {
      "name": "postContainersidresize",
      "summary": "Resize a container TTY",
      "description": "Resize the TTY for a container. You must restart the container for the resize to take effect.",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "ID or name of the container",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        },
        {
          "name": "h",
          "type": "number",
          "info": "Height of the tty session in characters",
          "required": false,
          "schema": {
            "title": "h",
            "type": "number"
          }
        },
        {
          "name": "w",
          "type": "number",
          "info": "Width of the tty session in characters",
          "required": false,
          "schema": {
            "title": "w",
            "type": "number"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postContainersidresize"
      },
      "task": true
    },
    {
      "name": "postContainersidstart",
      "summary": "Start a container",
      "description": "",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "ID or name of the container",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        },
        {
          "name": "detachKeys",
          "type": "string",
          "info": "Override the key sequence for detaching a container. Format is a single character `[a-Z]` or `ctrl-<value>` where `<value>` is one of: `a-z`, `@`, `^`, `[`, `,` or `_`.",
          "required": false,
          "schema": {
            "title": "detachKeys",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postContainersidstart"
      },
      "task": true
    },
    {
      "name": "postContainersidstop",
      "summary": "Stop a container",
      "description": "",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "ID or name of the container",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        },
        {
          "name": "t",
          "type": "number",
          "info": "Number of seconds to wait before killing the container",
          "required": false,
          "schema": {
            "title": "t",
            "type": "number"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postContainersidstop"
      },
      "task": true
    },
    {
      "name": "postContainersidrestart",
      "summary": "Restart a container",
      "description": "",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "ID or name of the container",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        },
        {
          "name": "t",
          "type": "number",
          "info": "Number of seconds to wait before killing the container",
          "required": false,
          "schema": {
            "title": "t",
            "type": "number"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postContainersidrestart"
      },
      "task": true
    },
    {
      "name": "postContainersidkill",
      "summary": "Kill a container",
      "description": "Send a POSIX signal to a container, defaulting to killing to the container.",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "ID or name of the container",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        },
        {
          "name": "signal",
          "type": "string",
          "info": "Signal to send to the container as an integer or string (e.g. `SIGINT`)",
          "required": false,
          "schema": {
            "title": "signal",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postContainersidkill"
      },
      "task": true
    },
    {
      "name": "postContainersidupdate",
      "summary": "Update a container",
      "description": "Change various configuration options of a container without having to recreate it.",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "ID or name of the container",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        },
        {
          "name": "update",
          "type": "object",
          "info": "",
          "required": true,
          "schema": {
            "title": "update",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postContainersidupdate"
      },
      "task": true
    },
    {
      "name": "postContainersidrename",
      "summary": "Rename a container",
      "description": "",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "ID or name of the container",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        },
        {
          "name": "name",
          "type": "string",
          "info": "New name for the container",
          "required": true,
          "schema": {
            "title": "name",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postContainersidrename"
      },
      "task": true
    },
    {
      "name": "postContainersidpause",
      "summary": "Pause a container",
      "description": "Use the cgroups freezer to suspend all processes in a container.\n\nTraditionally, when suspending a process the `SIGSTOP` signal is used, which is observable by the process being suspended. With the cgroups freezer the process is unaware, and unable to capture, that it is being suspended, and subsequently resumed.\n",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "ID or name of the container",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postContainersidpause"
      },
      "task": true
    },
    {
      "name": "postContainersidunpause",
      "summary": "Unpause a container",
      "description": "Resume a container which has been paused.",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "ID or name of the container",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postContainersidunpause"
      },
      "task": true
    },
    {
      "name": "postContainersidattach",
      "summary": "Attach to a container",
      "description": "Attach to a container to read its output or send it input. You can attach to the same container multiple times and you can reattach to containers that have been detached.\n\nEither the `stream` or `logs` parameter must be `true` for this endpoint to do anything.\n\nSee [the documentation for the `docker attach` command](https://docs.docker.com/engine/reference/commandline/attach/) for more details.\n\n### Hijacking\n\nThis endpoint hijacks the HTTP connection to transport `stdin`, `stdout`, and `stderr` on the same socket.\n\nThis is the response from the daemon for an attach request:\n\n```\nHTTP/1.1 200 OK\nContent-Type: application/vnd.docker.raw-stream\n\n[STREAM]\n```\n\nAfter the headers and two new lines, the TCP connection can now be used for raw, bidirectional communication between the client and server.\n\nTo hint potential proxies about connection hijacking, the Docker client can also optionally send connection upgrade headers.\n\nFor example, the client sends this request to upgrade the connection:\n\n```\nPOST /containers/16253994b7c4/attach?stream=1&stdout=1 HTTP/1.1\nUpgrade: tcp\nConnection: Upgrade\n```\n\nThe Docker daemon will respond with a `101 UPGRADED` response, and will similarly follow with the raw stream:\n\n```\nHTTP/1.1 101 UPGRADED\nContent-Type: application/vnd.docker.raw-stream\nConnection: Upgrade\nUpgrade: tcp\n\n[STREAM]\n```\n\n### Stream format\n\nWhen the TTY setting is disabled in [`POST /containers/create`](#operation/ContainerCreate), the stream over the hijacked connected is multiplexed to separate out `stdout` and `stderr`. The stream consists of a series of frames, each containing a header and a payload.\n\nThe header contains the information which the stream writes (`stdout` or `stderr`). It also contains the size of the associated frame encoded in the last four bytes (`uint32`).\n\nIt is encoded on the first eight bytes like this:\n\n```go\nheader := [8]byte{STREAM_TYPE, 0, 0, 0, SIZE1, SIZE2, SIZE3, SIZE4}\n```\n\n`STREAM_TYPE` can be:\n\n- 0: `stdin` (is written on `stdout`)\n- 1: `stdout`\n- 2: `stderr`\n\n`SIZE1, SIZE2, SIZE3, SIZE4` are the four bytes of the `uint32` size encoded as big endian.\n\nFollowing the header is the payload, which is the specified number of bytes of `STREAM_TYPE`.\n\nThe simplest way to implement this protocol is the following:\n\n1. Read 8 bytes.\n2. Choose `stdout` or `stderr` depending on the first byte.\n3. Extract the frame size from the last four bytes.\n4. Read the extracted size and output it on the correct output.\n5. Goto 1.\n\n### Stream format when using a TTY\n\nWhen the TTY setting is enabled in [`POST /containers/create`](#operation/ContainerCreate), the stream is not multiplexed. The data exchanged over the hijacked connection is simply the raw data from the process PTY and client's `stdin`.\n",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "ID or name of the container",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        },
        {
          "name": "detachKeys",
          "type": "string",
          "info": "Override the key sequence for detaching a container.Format is a single character `[a-Z]` or `ctrl-<value>` where `<value>` is one of: `a-z`, `@`, `^`, `[`, `,` or `_`.",
          "required": false,
          "schema": {
            "title": "detachKeys",
            "type": "string"
          }
        },
        {
          "name": "logs",
          "type": "boolean",
          "info": "Replay previous logs from the container.\n\nThis is useful for attaching to a container that has started and you want to output everything since the container started.\n\nIf `stream` is also enabled, once all the previous output has been returned, it will seamlessly transition into streaming current output.\n",
          "required": false,
          "schema": {
            "title": "logs",
            "type": "boolean"
          }
        },
        {
          "name": "stream",
          "type": "boolean",
          "info": "Stream attached streams from the the time the request was made onwards",
          "required": false,
          "schema": {
            "title": "stream",
            "type": "boolean"
          }
        },
        {
          "name": "stdin",
          "type": "boolean",
          "info": "Attach to `stdin`",
          "required": false,
          "schema": {
            "title": "stdin",
            "type": "boolean"
          }
        },
        {
          "name": "stdout",
          "type": "boolean",
          "info": "Attach to `stdout`",
          "required": false,
          "schema": {
            "title": "stdout",
            "type": "boolean"
          }
        },
        {
          "name": "stderr",
          "type": "boolean",
          "info": "Attach to `stderr`",
          "required": false,
          "schema": {
            "title": "stderr",
            "type": "boolean"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postContainersidattach"
      },
      "task": true
    },
    {
      "name": "getContainersidattachws",
      "summary": "Attach to a container via a websocket",
      "description": "",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "ID or name of the container",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        },
        {
          "name": "detachKeys",
          "type": "string",
          "info": "Override the key sequence for detaching a container.Format is a single character `[a-Z]` or `ctrl-<value>` where `<value>` is one of: `a-z`, `@`, `^`, `[`, `,`, or `_`.",
          "required": false,
          "schema": {
            "title": "detachKeys",
            "type": "string"
          }
        },
        {
          "name": "logs",
          "type": "boolean",
          "info": "Return logs",
          "required": false,
          "schema": {
            "title": "logs",
            "type": "boolean"
          }
        },
        {
          "name": "stream",
          "type": "boolean",
          "info": "Return stream",
          "required": false,
          "schema": {
            "title": "stream",
            "type": "boolean"
          }
        },
        {
          "name": "stdin",
          "type": "boolean",
          "info": "Attach to `stdin`",
          "required": false,
          "schema": {
            "title": "stdin",
            "type": "boolean"
          }
        },
        {
          "name": "stdout",
          "type": "boolean",
          "info": "Attach to `stdout`",
          "required": false,
          "schema": {
            "title": "stdout",
            "type": "boolean"
          }
        },
        {
          "name": "stderr",
          "type": "boolean",
          "info": "Attach to `stderr`",
          "required": false,
          "schema": {
            "title": "stderr",
            "type": "boolean"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getContainersidattachws"
      },
      "task": true
    },
    {
      "name": "postContainersidwait",
      "summary": "Wait for a container",
      "description": "Block until a container stops, then returns the exit code.",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "ID or name of the container",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postContainersidwait"
      },
      "task": true
    },
    {
      "name": "deleteContainersid",
      "summary": "Remove a container",
      "description": "",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "ID or name of the container",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        },
        {
          "name": "v",
          "type": "boolean",
          "info": "Remove the volumes associated with the container.",
          "required": false,
          "schema": {
            "title": "v",
            "type": "boolean"
          }
        },
        {
          "name": "force",
          "type": "boolean",
          "info": "If the container is running, kill it before removing it.",
          "required": false,
          "schema": {
            "title": "force",
            "type": "boolean"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteContainersid"
      },
      "task": true
    },
    {
      "name": "headContainersidarchive",
      "summary": "Get information about files in a container",
      "description": "A response header `X-Docker-Container-Path-Stat` is return containing a base64 - encoded JSON object with some filesystem header information about the path.",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "ID or name of the container",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        },
        {
          "name": "path_resource",
          "type": "string",
          "info": "Resource in the container’s filesystem to archive.",
          "required": true,
          "schema": {
            "title": "path_resource",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/headContainersidarchive"
      },
      "task": true
    },
    {
      "name": "getContainersidarchive",
      "summary": "Get an archive of a filesystem resource in a container",
      "description": "Get an tar archive of a resource in the filesystem of container id.",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "ID or name of the container",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        },
        {
          "name": "path_resource",
          "type": "string",
          "info": "Resource in the container’s filesystem to archive.",
          "required": true,
          "schema": {
            "title": "path_resource",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getContainersidarchive"
      },
      "task": true
    },
    {
      "name": "putContainersidarchive",
      "summary": "Extract an archive of files or folders to a directory in a container",
      "description": "Upload a tar archive to be extracted to a path in the filesystem of container id.",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "ID or name of the container",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        },
        {
          "name": "path_dir",
          "type": "string",
          "info": "Path to a directory in the container to extract the archive’s contents into.",
          "required": true,
          "schema": {
            "title": "path_dir",
            "type": "string"
          }
        },
        {
          "name": "noOverwriteDirNonDir",
          "type": "string",
          "info": "If “1”, “true”, or “True” then it will be an error if unpacking the given content would cause an existing directory to be replaced with a non-directory and vice versa.",
          "required": false,
          "schema": {
            "title": "noOverwriteDirNonDir",
            "type": "string"
          }
        },
        {
          "name": "inputStream",
          "type": "string",
          "info": "The input stream must be a tar archive compressed with one of the following algorithms: identity (no compression), gzip, bzip2, xz.",
          "required": true,
          "schema": {
            "title": "inputStream",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/putContainersidarchive"
      },
      "task": true
    },
    {
      "name": "postContainersprune",
      "summary": "Delete stopped containers",
      "description": "",
      "input": [
        {
          "name": "filters",
          "type": "string",
          "info": "Filters to process on the prune list, encoded as JSON (a `map[string][]string`).\n\nAvailable filters:\n",
          "required": false,
          "schema": {
            "title": "filters",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postContainersprune"
      },
      "task": true
    },
    {
      "name": "getImagesjson",
      "summary": "List Images",
      "description": "Returns a list of images on the server. Note that it uses a different, smaller representation of an image than inspecting a single image.",
      "input": [
        {
          "name": "all",
          "type": "boolean",
          "info": "Show all images. Only images from a final layer (no children) are shown by default.",
          "required": false,
          "schema": {
            "title": "all",
            "type": "boolean"
          }
        },
        {
          "name": "filters",
          "type": "string",
          "info": "A JSON encoded value of the filters (a `map[string][]string`) to process on the images list.\n\nAvailable filters:\n- `dangling=true`\n- `label=key` or `label=\"key=value\"` of an image label\n- `before`=(`<image-name>[:<tag>]`,  `<image id>` or `<image@digest>`)\n- `since`=(`<image-name>[:<tag>]`,  `<image id>` or `<image@digest>`)\n- `reference`=(`<image-name>[:<tag>]`)\n",
          "required": false,
          "schema": {
            "title": "filters",
            "type": "string"
          }
        },
        {
          "name": "digests",
          "type": "boolean",
          "info": "Show digest information as a `RepoDigests` field on each image.",
          "required": false,
          "schema": {
            "title": "digests",
            "type": "boolean"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getImagesjson"
      },
      "task": true
    },
    {
      "name": "postBuild",
      "summary": "Build an image",
      "description": "Build an image from a tar archive with a `Dockerfile` in it.\n\nThe `Dockerfile` specifies how the image is built from the tar archive. It is typically in the archive's root, but can be at a different path or have a different name by specifying the `dockerfile` parameter. [See the `Dockerfile` reference for more information](https://docs.docker.com/engine/reference/builder/).\n\nThe Docker daemon performs a preliminary validation of the `Dockerfile` before starting the build, and returns an error if the syntax is incorrect. After that, each instruction is run one-by-one until the ID of the new image is output.\n\nThe build is canceled if the client drops the connection by quitting or being killed.\n",
      "input": [
        {
          "name": "inputStream",
          "type": "string",
          "info": "A tar archive compressed with one of the following algorithms: identity (no compression), gzip, bzip2, xz.",
          "required": false,
          "schema": {
            "title": "inputStream",
            "type": "string"
          }
        },
        {
          "name": "dockerfile",
          "type": "string",
          "info": "Path within the build context to the `Dockerfile`. This is ignored if `remote` is specified and points to an external `Dockerfile`.",
          "required": false,
          "schema": {
            "title": "dockerfile",
            "type": "string"
          }
        },
        {
          "name": "t",
          "type": "string",
          "info": "A name and optional tag to apply to the image in the `name:tag` format. If you omit the tag the default `latest` value is assumed. You can provide several `t` parameters.",
          "required": false,
          "schema": {
            "title": "t",
            "type": "string"
          }
        },
        {
          "name": "remote",
          "type": "string",
          "info": "A Git repository URI or HTTP/HTTPS context URI. If the URI points to a single text file, the file’s contents are placed into a file called `Dockerfile` and the image is built from that file. If the URI points to a tarball, the file is downloaded by the daemon and the contents therein used as the context for the build. If the URI points to a tarball and the `dockerfile` parameter is also specified, there must be a file with the corresponding path inside the tarball.",
          "required": false,
          "schema": {
            "title": "remote",
            "type": "string"
          }
        },
        {
          "name": "q",
          "type": "boolean",
          "info": "Suppress verbose build output.",
          "required": false,
          "schema": {
            "title": "q",
            "type": "boolean"
          }
        },
        {
          "name": "nocache",
          "type": "boolean",
          "info": "Do not use the cache when building the image.",
          "required": false,
          "schema": {
            "title": "nocache",
            "type": "boolean"
          }
        },
        {
          "name": "cachefrom",
          "type": "string",
          "info": "JSON array of images used for build cache resolution.",
          "required": false,
          "schema": {
            "title": "cachefrom",
            "type": "string"
          }
        },
        {
          "name": "pull",
          "type": "string",
          "info": "Attempt to pull the image even if an older image exists locally.",
          "required": false,
          "schema": {
            "title": "pull",
            "type": "string"
          }
        },
        {
          "name": "rm",
          "type": "boolean",
          "info": "Remove intermediate containers after a successful build.",
          "required": false,
          "schema": {
            "title": "rm",
            "type": "boolean"
          }
        },
        {
          "name": "forcerm",
          "type": "boolean",
          "info": "Always remove intermediate containers, even upon failure.",
          "required": false,
          "schema": {
            "title": "forcerm",
            "type": "boolean"
          }
        },
        {
          "name": "memory",
          "type": "number",
          "info": "Set memory limit for build.",
          "required": false,
          "schema": {
            "title": "memory",
            "type": "number"
          }
        },
        {
          "name": "memswap",
          "type": "number",
          "info": "Total memory (memory + swap). Set as `-1` to disable swap.",
          "required": false,
          "schema": {
            "title": "memswap",
            "type": "number"
          }
        },
        {
          "name": "cpushares",
          "type": "number",
          "info": "CPU shares (relative weight).",
          "required": false,
          "schema": {
            "title": "cpushares",
            "type": "number"
          }
        },
        {
          "name": "cpusetcpus",
          "type": "string",
          "info": "CPUs in which to allow execution (e.g., `0-3`, `0,1`).",
          "required": false,
          "schema": {
            "title": "cpusetcpus",
            "type": "string"
          }
        },
        {
          "name": "cpuperiod",
          "type": "number",
          "info": "The length of a CPU period in microseconds.",
          "required": false,
          "schema": {
            "title": "cpuperiod",
            "type": "number"
          }
        },
        {
          "name": "cpuquota",
          "type": "number",
          "info": "Microseconds of CPU time that the container can get in a CPU period.",
          "required": false,
          "schema": {
            "title": "cpuquota",
            "type": "number"
          }
        },
        {
          "name": "buildargs",
          "type": "number",
          "info": "JSON map of string pairs for build-time variables. Users pass these values at build-time. Docker uses the buildargs as the environment context for commands run via the `Dockerfile` RUN instruction, or for variable expansion in other `Dockerfile` instructions. This is not meant for passing secret values. [Read more about the buildargs instruction.](https://docs.docker.com/engine/reference/builder/#arg)",
          "required": false,
          "schema": {
            "title": "buildargs",
            "type": "number"
          }
        },
        {
          "name": "shmsize",
          "type": "number",
          "info": "Size of `/dev/shm` in bytes. The size must be greater than 0. If omitted the system uses 64MB.",
          "required": false,
          "schema": {
            "title": "shmsize",
            "type": "number"
          }
        },
        {
          "name": "squash",
          "type": "boolean",
          "info": "Squash the resulting images layers into a single layer. *(Experimental release only.)*",
          "required": false,
          "schema": {
            "title": "squash",
            "type": "boolean"
          }
        },
        {
          "name": "labels",
          "type": "string",
          "info": "Arbitrary key/value labels to set on the image, as a JSON map of string pairs.",
          "required": false,
          "schema": {
            "title": "labels",
            "type": "string"
          }
        },
        {
          "name": "networkmode",
          "type": "string",
          "info": "Sets the networking mode for the run commands during build. Supported standard values are: `bridge`, `host`, `none`, and `container:<name|id>`. Any other value is taken as a custom network's name to which this container should connect to.",
          "required": false,
          "schema": {
            "title": "networkmode",
            "type": "string"
          }
        },
        {
          "name": "Contenttype",
          "type": "string",
          "info": "",
          "required": false,
          "schema": {
            "title": "Contenttype",
            "type": "string"
          }
        },
        {
          "name": "XRegistryConfig",
          "type": "string",
          "info": "This is a base64-encoded JSON object with auth configurations for multiple registries that a build may refer to.\n\nThe key is a registry URL, and the value is an auth configuration object, [as described in the authentication section](#section/Authentication). For example:\n\n```\n{\n  \"docker.example.com\": {\n    \"username\": \"janedoe\",\n    \"password\": \"hunter2\"\n  },\n  \"https://index.docker.io/v1/\": {\n    \"username\": \"mobydock\",\n    \"password\": \"conta1n3rize14\"\n  }\n}\n```\n\nOnly the registry domain name (and port if not the default 443) are required. However, for legacy reasons, the Docker Hub registry must be specified with both a `https://` prefix and a `/v1/` suffix even though Docker will prefer to use the v2 registry API.\n",
          "required": false,
          "schema": {
            "title": "XRegistryConfig",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postBuild"
      },
      "task": true
    },
    {
      "name": "postImagescreate",
      "summary": "Create an image",
      "description": "Create an image by either pulling it from a registry or importing it.",
      "input": [
        {
          "name": "fromImage",
          "type": "string",
          "info": "Name of the image to pull. The name may include a tag or digest. This parameter may only be used when pulling an image. The pull is cancelled if the HTTP connection is closed.",
          "required": false,
          "schema": {
            "title": "fromImage",
            "type": "string"
          }
        },
        {
          "name": "fromSrc",
          "type": "string",
          "info": "Source to import. The value may be a URL from which the image can be retrieved or `-` to read the image from the request body. This parameter may only be used when importing an image.",
          "required": false,
          "schema": {
            "title": "fromSrc",
            "type": "string"
          }
        },
        {
          "name": "repo",
          "type": "string",
          "info": "Repository name given to an image when it is imported. The repo may include a tag. This parameter may only be used when importing an image.",
          "required": false,
          "schema": {
            "title": "repo",
            "type": "string"
          }
        },
        {
          "name": "tag",
          "type": "string",
          "info": "Tag or digest. If empty when pulling an image, this causes all tags for the given image to be pulled.",
          "required": false,
          "schema": {
            "title": "tag",
            "type": "string"
          }
        },
        {
          "name": "inputImage",
          "type": "string",
          "info": "Image content if the value `-` has been specified in fromSrc query parameter",
          "required": false,
          "schema": {
            "title": "inputImage",
            "type": "string"
          }
        },
        {
          "name": "XRegistryAuth",
          "type": "string",
          "info": "A base64-encoded auth configuration. [See the authentication section for details.](#section/Authentication)",
          "required": false,
          "schema": {
            "title": "XRegistryAuth",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postImagescreate"
      },
      "task": true
    },
    {
      "name": "getImagesnamejson",
      "summary": "Inspect an image",
      "description": "Return low-level information about an image.",
      "input": [
        {
          "name": "name",
          "type": "string",
          "info": "Image name or id",
          "required": true,
          "schema": {
            "title": "name",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getImagesnamejson"
      },
      "task": true
    },
    {
      "name": "getImagesnamehistory",
      "summary": "Get the history of an image",
      "description": "Return parent layers of an image.",
      "input": [
        {
          "name": "name",
          "type": "string",
          "info": "Image name or ID",
          "required": true,
          "schema": {
            "title": "name",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getImagesnamehistory"
      },
      "task": true
    },
    {
      "name": "postImagesnamepush",
      "summary": "Push an image",
      "description": "Push an image to a registry.\n\nIf you wish to push an image on to a private registry, that image must already have a tag which references the registry. For example, `registry.example.com/myimage:latest`.\n\nThe push is cancelled if the HTTP connection is closed.\n",
      "input": [
        {
          "name": "name",
          "type": "string",
          "info": "Image name or ID.",
          "required": true,
          "schema": {
            "title": "name",
            "type": "string"
          }
        },
        {
          "name": "tag",
          "type": "string",
          "info": "The tag to associate with the image on the registry.",
          "required": false,
          "schema": {
            "title": "tag",
            "type": "string"
          }
        },
        {
          "name": "XRegistryAuth",
          "type": "string",
          "info": "A base64-encoded auth configuration. [See the authentication section for details.](#section/Authentication)",
          "required": true,
          "schema": {
            "title": "XRegistryAuth",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postImagesnamepush"
      },
      "task": true
    },
    {
      "name": "postImagesnametag",
      "summary": "Tag an image",
      "description": "Tag an image so that it becomes part of a repository.",
      "input": [
        {
          "name": "name",
          "type": "string",
          "info": "Image name or ID to tag.",
          "required": true,
          "schema": {
            "title": "name",
            "type": "string"
          }
        },
        {
          "name": "repo",
          "type": "string",
          "info": "The repository to tag in. For example, `someuser/someimage`.",
          "required": false,
          "schema": {
            "title": "repo",
            "type": "string"
          }
        },
        {
          "name": "tag",
          "type": "string",
          "info": "The name of the new tag.",
          "required": false,
          "schema": {
            "title": "tag",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postImagesnametag"
      },
      "task": true
    },
    {
      "name": "deleteImagesname",
      "summary": "Remove an image",
      "description": "Remove an image, along with any untagged parent images that were referenced by that image.\n\nImages can't be removed if they have descendant images, are being used by a running container or are being used by a build.\n",
      "input": [
        {
          "name": "name",
          "type": "string",
          "info": "Image name or ID",
          "required": true,
          "schema": {
            "title": "name",
            "type": "string"
          }
        },
        {
          "name": "force",
          "type": "boolean",
          "info": "Remove the image even if it is being used by stopped containers or has other tags",
          "required": false,
          "schema": {
            "title": "force",
            "type": "boolean"
          }
        },
        {
          "name": "noprune",
          "type": "boolean",
          "info": "Do not delete untagged parent images",
          "required": false,
          "schema": {
            "title": "noprune",
            "type": "boolean"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteImagesname"
      },
      "task": true
    },
    {
      "name": "getImagessearch",
      "summary": "Search images",
      "description": "Search for an image on Docker Hub.",
      "input": [
        {
          "name": "term",
          "type": "string",
          "info": "Term to search",
          "required": true,
          "schema": {
            "title": "term",
            "type": "string"
          }
        },
        {
          "name": "limit",
          "type": "number",
          "info": "Maximum number of results to return",
          "required": false,
          "schema": {
            "title": "limit",
            "type": "number"
          }
        },
        {
          "name": "filters",
          "type": "string",
          "info": "A JSON encoded value of the filters (a `map[string][]string`) to process on the images list. Available filters:\n\n- `stars=<number>`\n- `is-automated=(true|false)`\n- `is-official=(true|false)`\n",
          "required": false,
          "schema": {
            "title": "filters",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getImagessearch"
      },
      "task": true
    },
    {
      "name": "postImagesprune",
      "summary": "Delete unused images",
      "description": "",
      "input": [
        {
          "name": "filters",
          "type": "string",
          "info": "Filters to process on the prune list, encoded as JSON (a `map[string][]string`).\n\nAvailable filters:\n- `dangling=<boolean>` When set to `true` (or `1`), prune only\n   unused *and* untagged images. When set to `false`\n   (or `0`), all unused images are pruned.\n",
          "required": false,
          "schema": {
            "title": "filters",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postImagesprune"
      },
      "task": true
    },
    {
      "name": "postCommit",
      "summary": "Create a new image from a container",
      "description": "",
      "input": [
        {
          "name": "containerConfig",
          "type": "object",
          "info": "The container configuration",
          "required": false,
          "schema": {
            "title": "containerConfig",
            "type": "object"
          }
        },
        {
          "name": "container",
          "type": "string",
          "info": "The ID or name of the container to commit",
          "required": false,
          "schema": {
            "title": "container",
            "type": "string"
          }
        },
        {
          "name": "repo",
          "type": "string",
          "info": "Repository name for the created image",
          "required": false,
          "schema": {
            "title": "repo",
            "type": "string"
          }
        },
        {
          "name": "tag",
          "type": "string",
          "info": "Tag name for the create image",
          "required": false,
          "schema": {
            "title": "tag",
            "type": "string"
          }
        },
        {
          "name": "comment",
          "type": "string",
          "info": "Commit message",
          "required": false,
          "schema": {
            "title": "comment",
            "type": "string"
          }
        },
        {
          "name": "author",
          "type": "string",
          "info": "Author of the image (e.g., `John Hannibal Smith <hannibal@a-team.com>`)",
          "required": false,
          "schema": {
            "title": "author",
            "type": "string"
          }
        },
        {
          "name": "pause",
          "type": "boolean",
          "info": "Whether to pause the container before committing",
          "required": false,
          "schema": {
            "title": "pause",
            "type": "boolean"
          }
        },
        {
          "name": "changes",
          "type": "string",
          "info": "`Dockerfile` instructions to apply while committing",
          "required": false,
          "schema": {
            "title": "changes",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postCommit"
      },
      "task": true
    },
    {
      "name": "getImagesnameget",
      "summary": "Export an image",
      "description": "Get a tarball containing all images and metadata for a repository.\n\nIf `name` is a specific name and tag (e.g. `ubuntu:latest`), then only that image (and its parents) are returned. If `name` is an image ID, similarly only that image (and its parents) are returned, but with the exclusion of the `repositories` file in the tarball, as there were no image names referenced.\n\n### Image tarball format\n\nAn image tarball contains one directory per image layer (named using its long ID), each containing these files:\n\n- `VERSION`: currently `1.0` - the file format version\n- `json`: detailed layer information, similar to `docker inspect layer_id`\n- `layer.tar`: A tarfile containing the filesystem changes in this layer\n\nThe `layer.tar` file contains `aufs` style `.wh..wh.aufs` files and directories for storing attribute changes and deletions.\n\nIf the tarball defines a repository, the tarball should also include a `repositories` file at the root that contains a list of repository and tag names mapped to layer IDs.\n\n```json\n{\n  \"hello-world\": {\n    \"latest\": \"565a9d68a73f6706862bfe8409a7f659776d4d60a8d096eb4a3cbce6999cc2a1\"\n  }\n}\n```\n",
      "input": [
        {
          "name": "name",
          "type": "string",
          "info": "Image name or ID",
          "required": true,
          "schema": {
            "title": "name",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getImagesnameget"
      },
      "task": true
    },
    {
      "name": "getImagesget",
      "summary": "Export several images",
      "description": "Get a tarball containing all images and metadata for several image repositories.\n\nFor each value of the `names` parameter: if it is a specific name and tag (e.g. `ubuntu:latest`), then only that image (and its parents) are returned; if it is an image ID, similarly only that image (and its parents) are returned and there would be no names referenced in the 'repositories' file for this image ID.\n\nFor details on the format, see [the export image endpoint](#operation/ImageGet).\n",
      "input": [
        {
          "name": "names",
          "type": "array",
          "info": "Image names to filter by",
          "required": false,
          "schema": {
            "title": "names",
            "type": "array"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getImagesget"
      },
      "task": true
    },
    {
      "name": "postImagesload",
      "summary": "Import images",
      "description": "Load a set of images and tags into a repository.\n\nFor details on the format, see [the export image endpoint](#operation/ImageGet).\n",
      "input": [
        {
          "name": "imagesTarball",
          "type": "string",
          "info": "Tar archive containing images",
          "required": false,
          "schema": {
            "title": "imagesTarball",
            "type": "string"
          }
        },
        {
          "name": "quiet",
          "type": "boolean",
          "info": "Suppress progress details during load.",
          "required": false,
          "schema": {
            "title": "quiet",
            "type": "boolean"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postImagesload"
      },
      "task": true
    },
    {
      "name": "postAuth",
      "summary": "Check auth configuration",
      "description": "Validate credentials for a registry and, if available, get an identity token for accessing the registry without password.",
      "input": [
        {
          "name": "authConfig",
          "type": "object",
          "info": "Authentication to check",
          "required": false,
          "schema": {
            "title": "authConfig",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postAuth"
      },
      "task": true
    },
    {
      "name": "getInfo",
      "summary": "Get system information",
      "description": "",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getInfo"
      },
      "task": true
    },
    {
      "name": "getVersion",
      "summary": "Get version",
      "description": "Returns the version of Docker that is running and various information about the system that Docker is running on.",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getVersion"
      },
      "task": true
    },
    {
      "name": "getPing",
      "summary": "Ping",
      "description": "This is a dummy endpoint you can use to test if the server is accessible.",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getPing"
      },
      "task": true
    },
    {
      "name": "getEvents",
      "summary": "Monitor events",
      "description": "Stream real-time events from the server.\n\nVarious objects within Docker report events when something happens to them.\n\nContainers report these events: `attach, commit, copy, create, destroy, detach, die, exec_create, exec_detach, exec_start, export, kill, oom, pause, rename, resize, restart, start, stop, top, unpause, update`\n\nImages report these events: `delete, import, load, pull, push, save, tag, untag`\n\nVolumes report these events: `create, mount, unmount, destroy`\n\nNetworks report these events: `create, connect, disconnect, destroy`\n\nThe Docker daemon reports these events: `reload`\n",
      "input": [
        {
          "name": "since",
          "type": "string",
          "info": "Show events created since this timestamp then stream new events.",
          "required": false,
          "schema": {
            "title": "since",
            "type": "string"
          }
        },
        {
          "name": "until",
          "type": "string",
          "info": "Show events created until this timestamp then stop streaming.",
          "required": false,
          "schema": {
            "title": "until",
            "type": "string"
          }
        },
        {
          "name": "filters",
          "type": "string",
          "info": "A JSON encoded value of filters (a `map[string][]string`) to process on the event list. Available filters:\n\n- `container=<string>` container name or ID\n- `event=<string>` event type\n- `image=<string>` image name or ID\n- `label=<string>` image or container label\n- `type=<string>` object to filter by, one of `container`, `image`, `volume`, `network`, or `daemon`\n- `volume=<string>` volume name or ID\n- `network=<string>` network name or ID\n- `daemon=<string>` daemon name or ID\n",
          "required": false,
          "schema": {
            "title": "filters",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getEvents"
      },
      "task": true
    },
    {
      "name": "getSystemdf",
      "summary": "Get data usage information",
      "description": "",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getSystemdf"
      },
      "task": true
    },
    {
      "name": "postContainersidexec",
      "summary": "Create an exec instance",
      "description": "Run a command inside a running container.",
      "input": [
        {
          "name": "execConfig",
          "type": "object",
          "info": "Exec configuration",
          "required": true,
          "schema": {
            "title": "execConfig",
            "type": "object"
          }
        },
        {
          "name": "id",
          "type": "string",
          "info": "ID or name of container",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postContainersidexec"
      },
      "task": true
    },
    {
      "name": "postExecidstart",
      "summary": "Start an exec instance",
      "description": "Starts a previously set up exec instance. If detach is true, this endpoint returns immediately after starting the command. Otherwise, it sets up an interactive session with the command.",
      "input": [
        {
          "name": "execStartConfig",
          "type": "object",
          "info": "",
          "required": false,
          "schema": {
            "title": "execStartConfig",
            "type": "object"
          }
        },
        {
          "name": "id",
          "type": "string",
          "info": "Exec instance ID",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postExecidstart"
      },
      "task": true
    },
    {
      "name": "postExecidresize",
      "summary": "Resize an exec instance",
      "description": "Resize the TTY session used by an exec instance. This endpoint only works if `tty` was specified as part of creating and starting the exec instance.",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "Exec instance ID",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        },
        {
          "name": "h",
          "type": "number",
          "info": "Height of the TTY session in characters",
          "required": false,
          "schema": {
            "title": "h",
            "type": "number"
          }
        },
        {
          "name": "w",
          "type": "number",
          "info": "Width of the TTY session in characters",
          "required": false,
          "schema": {
            "title": "w",
            "type": "number"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postExecidresize"
      },
      "task": true
    },
    {
      "name": "getExecidjson",
      "summary": "Inspect an exec instance",
      "description": "Return low-level information about an exec instance.",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "Exec instance ID",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getExecidjson"
      },
      "task": true
    },
    {
      "name": "getVolumes",
      "summary": "List volumes",
      "description": "",
      "input": [
        {
          "name": "filters",
          "type": "string",
          "info": "JSON encoded value of the filters (a `map[string][]string`) to\nprocess on the volumes list. Available filters:\n\n- `name=<volume-name>` Matches all or part of a volume name.\n- `dangling=<boolean>` When set to `true` (or `1`), returns all\n   volumes that are not in use by a container. When set to `false`\n   (or `0`), only volumes that are in use by one or more\n   containers are returned.\n- `driver=<volume-driver-name>` Matches all or part of a volume\n  driver name.\n",
          "required": false,
          "schema": {
            "title": "filters",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getVolumes"
      },
      "task": true
    },
    {
      "name": "postVolumescreate",
      "summary": "Create a volume",
      "description": "",
      "input": [
        {
          "name": "volumeConfig",
          "type": "object",
          "info": "Volume configuration",
          "required": true,
          "schema": {
            "title": "volumeConfig",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postVolumescreate"
      },
      "task": true
    },
    {
      "name": "getVolumesname",
      "summary": "Inspect a volume",
      "description": "",
      "input": [
        {
          "name": "name",
          "type": "string",
          "info": "Volume name or ID",
          "required": true,
          "schema": {
            "title": "name",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getVolumesname"
      },
      "task": true
    },
    {
      "name": "deleteVolumesname",
      "summary": "Remove a volume",
      "description": "Instruct the driver to remove the volume.",
      "input": [
        {
          "name": "name",
          "type": "string",
          "info": "Volume name or ID",
          "required": true,
          "schema": {
            "title": "name",
            "type": "string"
          }
        },
        {
          "name": "force",
          "type": "boolean",
          "info": "Force the removal of the volume",
          "required": false,
          "schema": {
            "title": "force",
            "type": "boolean"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteVolumesname"
      },
      "task": true
    },
    {
      "name": "postVolumesprune",
      "summary": "Delete unused volumes",
      "description": "",
      "input": [
        {
          "name": "filters",
          "type": "string",
          "info": "Filters to process on the prune list, encoded as JSON (a `map[string][]string`).\n\nAvailable filters:\n",
          "required": false,
          "schema": {
            "title": "filters",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postVolumesprune"
      },
      "task": true
    },
    {
      "name": "getNetworks",
      "summary": "List networks",
      "description": "",
      "input": [
        {
          "name": "filters",
          "type": "string",
          "info": "JSON encoded value of the filters (a `map[string][]string`) to process on the networks list. Available filters:\n\n- `driver=<driver-name>` Matches a network's driver.\n- `id=<network-id>` Matches all or part of a network ID.\n- `label=<key>` or `label=<key>=<value>` of a network label.\n- `name=<network-name>` Matches all or part of a network name.\n- `type=[\"custom\"|\"builtin\"]` Filters networks by type. The `custom` keyword returns all user-defined networks.\n",
          "required": false,
          "schema": {
            "title": "filters",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getNetworks"
      },
      "task": true
    },
    {
      "name": "getNetworksid",
      "summary": "Inspect a network",
      "description": "",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "Network ID or name",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getNetworksid"
      },
      "task": true
    },
    {
      "name": "deleteNetworksid",
      "summary": "Remove a network",
      "description": "",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "Network ID or name",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteNetworksid"
      },
      "task": true
    },
    {
      "name": "postNetworkscreate",
      "summary": "Create a network",
      "description": "",
      "input": [
        {
          "name": "networkConfig",
          "type": "object",
          "info": "Network configuration",
          "required": true,
          "schema": {
            "title": "networkConfig",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postNetworkscreate"
      },
      "task": true
    },
    {
      "name": "postNetworksidconnect",
      "summary": "Connect a container to a network",
      "description": "",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "Network ID or name",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        },
        {
          "name": "container",
          "type": "object",
          "info": "",
          "required": true,
          "schema": {
            "title": "container",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postNetworksidconnect"
      },
      "task": true
    },
    {
      "name": "postNetworksiddisconnect",
      "summary": "Disconnect a container from a network",
      "description": "",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "Network ID or name",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        },
        {
          "name": "container",
          "type": "object",
          "info": "",
          "required": true,
          "schema": {
            "title": "container",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postNetworksiddisconnect"
      },
      "task": true
    },
    {
      "name": "postNetworksprune",
      "summary": "Delete unused networks",
      "description": "",
      "input": [
        {
          "name": "filters",
          "type": "string",
          "info": "Filters to process on the prune list, encoded as JSON (a `map[string][]string`).\n\nAvailable filters:\n",
          "required": false,
          "schema": {
            "title": "filters",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postNetworksprune"
      },
      "task": true
    },
    {
      "name": "getPlugins",
      "summary": "List plugins",
      "description": "Returns information about installed plugins.",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getPlugins"
      },
      "task": true
    },
    {
      "name": "getPluginsprivileges",
      "summary": "Get plugin privileges",
      "description": "",
      "input": [
        {
          "name": "name",
          "type": "string",
          "info": "The name of the plugin. The `:latest` tag is optional, and is the default if omitted.",
          "required": true,
          "schema": {
            "title": "name",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getPluginsprivileges"
      },
      "task": true
    },
    {
      "name": "postPluginspull",
      "summary": "Install a plugin",
      "description": "Pulls and installs a plugin. After the plugin is installed, it can be enabled using the [`POST /plugins/{name}/enable` endpoint](#operation/PostPluginsEnable).\n",
      "input": [
        {
          "name": "remote",
          "type": "string",
          "info": "Remote reference for plugin to install.\n\nThe `:latest` tag is optional, and is used as the default if omitted.\n",
          "required": true,
          "schema": {
            "title": "remote",
            "type": "string"
          }
        },
        {
          "name": "name",
          "type": "string",
          "info": "Local name for the pulled plugin.\n\nThe `:latest` tag is optional, and is used as the default if omitted.\n",
          "required": false,
          "schema": {
            "title": "name",
            "type": "string"
          }
        },
        {
          "name": "XRegistryAuth",
          "type": "string",
          "info": "A base64-encoded auth configuration to use when pulling a plugin from a registry. [See the authentication section for details.](#section/Authentication)",
          "required": false,
          "schema": {
            "title": "XRegistryAuth",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "array",
          "info": "",
          "required": false,
          "schema": {
            "title": "body",
            "type": "array"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postPluginspull"
      },
      "task": true
    },
    {
      "name": "getPluginsnamejson",
      "summary": "Inspect a plugin",
      "description": "",
      "input": [
        {
          "name": "name",
          "type": "string",
          "info": "The name of the plugin. The `:latest` tag is optional, and is the default if omitted.",
          "required": true,
          "schema": {
            "title": "name",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getPluginsnamejson"
      },
      "task": true
    },
    {
      "name": "deletePluginsname",
      "summary": "Remove a plugin",
      "description": "",
      "input": [
        {
          "name": "name",
          "type": "string",
          "info": "The name of the plugin. The `:latest` tag is optional, and is the default if omitted.",
          "required": true,
          "schema": {
            "title": "name",
            "type": "string"
          }
        },
        {
          "name": "force",
          "type": "boolean",
          "info": "Disable the plugin before removing. This may result in issues if the plugin is in use by a container.",
          "required": false,
          "schema": {
            "title": "force",
            "type": "boolean"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deletePluginsname"
      },
      "task": true
    },
    {
      "name": "postPluginsnameenable",
      "summary": "Enable a plugin",
      "description": "",
      "input": [
        {
          "name": "name",
          "type": "string",
          "info": "The name of the plugin. The `:latest` tag is optional, and is the default if omitted.",
          "required": true,
          "schema": {
            "title": "name",
            "type": "string"
          }
        },
        {
          "name": "timeout",
          "type": "number",
          "info": "Set the HTTP client timeout (in seconds)",
          "required": false,
          "schema": {
            "title": "timeout",
            "type": "number"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postPluginsnameenable"
      },
      "task": true
    },
    {
      "name": "postPluginsnamedisable",
      "summary": "Disable a plugin",
      "description": "",
      "input": [
        {
          "name": "name",
          "type": "string",
          "info": "The name of the plugin. The `:latest` tag is optional, and is the default if omitted.",
          "required": true,
          "schema": {
            "title": "name",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postPluginsnamedisable"
      },
      "task": true
    },
    {
      "name": "postPluginscreate",
      "summary": "Create a plugin",
      "description": "",
      "input": [
        {
          "name": "name",
          "type": "string",
          "info": "The name of the plugin. The `:latest` tag is optional, and is the default if omitted.",
          "required": true,
          "schema": {
            "title": "name",
            "type": "string"
          }
        },
        {
          "name": "tarContext",
          "type": "string",
          "info": "Path to tar containing plugin rootfs and manifest",
          "required": false,
          "schema": {
            "title": "tarContext",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postPluginscreate"
      },
      "task": true
    },
    {
      "name": "postPluginsnamepush",
      "summary": "Push a plugin",
      "description": "Push a plugin to the registry.\n",
      "input": [
        {
          "name": "name",
          "type": "string",
          "info": "The name of the plugin. The `:latest` tag is optional, and is the default if omitted.",
          "required": true,
          "schema": {
            "title": "name",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postPluginsnamepush"
      },
      "task": true
    },
    {
      "name": "postPluginsnameset",
      "summary": "Configure a plugin",
      "description": "",
      "input": [
        {
          "name": "name",
          "type": "string",
          "info": "The name of the plugin. The `:latest` tag is optional, and is the default if omitted.",
          "required": true,
          "schema": {
            "title": "name",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "array",
          "info": "",
          "required": false,
          "schema": {
            "title": "body",
            "type": "array"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postPluginsnameset"
      },
      "task": true
    },
    {
      "name": "getNodes",
      "summary": "List nodes",
      "description": "",
      "input": [
        {
          "name": "filters",
          "type": "string",
          "info": "Filters to process on the nodes list, encoded as JSON (a `map[string][]string`).\n\nAvailable filters:\n- `id=<node id>`\n- `label=<engine label>`\n- `membership=`(`accepted`|`pending`)`\n- `name=<node name>`\n- `role=`(`manager`|`worker`)`\n",
          "required": false,
          "schema": {
            "title": "filters",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getNodes"
      },
      "task": true
    },
    {
      "name": "getNodesid",
      "summary": "Inspect a node",
      "description": "",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "The ID or name of the node",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getNodesid"
      },
      "task": true
    },
    {
      "name": "deleteNodesid",
      "summary": "Delete a node",
      "description": "",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "The ID or name of the node",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        },
        {
          "name": "force",
          "type": "boolean",
          "info": "Force remove a node from the swarm",
          "required": false,
          "schema": {
            "title": "force",
            "type": "boolean"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteNodesid"
      },
      "task": true
    },
    {
      "name": "postNodesidupdate",
      "summary": "Update a node",
      "description": "",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "The ID of the node",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "",
          "required": false,
          "schema": {
            "title": "body",
            "type": "object"
          }
        },
        {
          "name": "version",
          "type": "number",
          "info": "The version number of the node object being updated. This is required to avoid conflicting writes.",
          "required": true,
          "schema": {
            "title": "version",
            "type": "number"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postNodesidupdate"
      },
      "task": true
    },
    {
      "name": "getSwarm",
      "summary": "Inspect swarm",
      "description": "",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getSwarm"
      },
      "task": true
    },
    {
      "name": "postSwarminit",
      "summary": "Initialize a new swarm",
      "description": "",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "",
          "required": true,
          "schema": {
            "title": "body",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postSwarminit"
      },
      "task": true
    },
    {
      "name": "postSwarmjoin",
      "summary": "Join an existing swarm",
      "description": "",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "",
          "required": true,
          "schema": {
            "title": "body",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postSwarmjoin"
      },
      "task": true
    },
    {
      "name": "postSwarmleave",
      "summary": "Leave a swarm",
      "description": "",
      "input": [
        {
          "name": "force",
          "type": "boolean",
          "info": "Force leave swarm, even if this is the last manager or that it will break the cluster.",
          "required": false,
          "schema": {
            "title": "force",
            "type": "boolean"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postSwarmleave"
      },
      "task": true
    },
    {
      "name": "postSwarmupdate",
      "summary": "Update a swarm",
      "description": "",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "",
          "required": true,
          "schema": {
            "title": "body",
            "type": "object"
          }
        },
        {
          "name": "version",
          "type": "number",
          "info": "The version number of the swarm object being updated. This is required to avoid conflicting writes.",
          "required": true,
          "schema": {
            "title": "version",
            "type": "number"
          }
        },
        {
          "name": "rotateWorkerToken",
          "type": "boolean",
          "info": "Rotate the worker join token.",
          "required": false,
          "schema": {
            "title": "rotateWorkerToken",
            "type": "boolean"
          }
        },
        {
          "name": "rotateManagerToken",
          "type": "boolean",
          "info": "Rotate the manager join token.",
          "required": false,
          "schema": {
            "title": "rotateManagerToken",
            "type": "boolean"
          }
        },
        {
          "name": "rotateManagerUnlockKey",
          "type": "boolean",
          "info": "Rotate the manager unlock key.",
          "required": false,
          "schema": {
            "title": "rotateManagerUnlockKey",
            "type": "boolean"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postSwarmupdate"
      },
      "task": true
    },
    {
      "name": "getSwarmunlockkey",
      "summary": "Get the unlock key",
      "description": "",
      "input": [],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "GET",
        "path": "/getSwarmunlockkey"
      },
      "task": true
    },
    {
      "name": "postSwarmunlock",
      "summary": "Unlock a locked manager",
      "description": "",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "",
          "required": true,
          "schema": {
            "title": "body",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postSwarmunlock"
      },
      "task": true
    },
    {
      "name": "getServices",
      "summary": "List services",
      "description": "",
      "input": [
        {
          "name": "filters",
          "type": "string",
          "info": "A JSON encoded value of the filters (a `map[string][]string`) to process on the services list. Available filters:\n\n- `id=<service id>`\n- `name=<service name>`\n- `label=<service label>`\n",
          "required": false,
          "schema": {
            "title": "filters",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getServices"
      },
      "task": true
    },
    {
      "name": "postServicescreate",
      "summary": "Create a service",
      "description": "",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "",
          "required": true,
          "schema": {
            "title": "body",
            "type": "object"
          }
        },
        {
          "name": "XRegistryAuth",
          "type": "string",
          "info": "A base64-encoded auth configuration for pulling from private registries. [See the authentication section for details.](#section/Authentication)",
          "required": false,
          "schema": {
            "title": "XRegistryAuth",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postServicescreate"
      },
      "task": true
    },
    {
      "name": "getServicesid",
      "summary": "Inspect a service",
      "description": "",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "ID or name of service.",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getServicesid"
      },
      "task": true
    },
    {
      "name": "deleteServicesid",
      "summary": "Delete a service",
      "description": "",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "ID or name of service.",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteServicesid"
      },
      "task": true
    },
    {
      "name": "postServicesidupdate",
      "summary": "Update a service",
      "description": "",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "ID or name of service.",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        },
        {
          "name": "body",
          "type": "object",
          "info": "",
          "required": true,
          "schema": {
            "title": "body",
            "type": "object"
          }
        },
        {
          "name": "version",
          "type": "number",
          "info": "The version number of the service object being updated. This is required to avoid conflicting writes.",
          "required": true,
          "schema": {
            "title": "version",
            "type": "number"
          }
        },
        {
          "name": "registryAuthFrom",
          "type": "string",
          "info": "If the X-Registry-Auth header is not specified, this parameter indicates where to find registry authorization credentials. The valid values are `spec` and `previous-spec`.",
          "required": false,
          "schema": {
            "title": "registryAuthFrom",
            "type": "string"
          }
        },
        {
          "name": "XRegistryAuth",
          "type": "string",
          "info": "A base64-encoded auth configuration for pulling from private registries. [See the authentication section for details.](#section/Authentication)",
          "required": false,
          "schema": {
            "title": "XRegistryAuth",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postServicesidupdate"
      },
      "task": true
    },
    {
      "name": "getServicesidlogs",
      "summary": "Get service logs",
      "description": "Get `stdout` and `stderr` logs from a service.\n\n**Note**: This endpoint works only for services with the `json-file` or `journald` logging drivers.\n",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "ID or name of the container",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        },
        {
          "name": "details",
          "type": "boolean",
          "info": "Show extra details provided to logs.",
          "required": false,
          "schema": {
            "title": "details",
            "type": "boolean"
          }
        },
        {
          "name": "follow",
          "type": "boolean",
          "info": "Return the logs as a stream.\n\nThis will return a `101` HTTP response with a `Connection: upgrade` header, then hijack the HTTP connection to send raw output. For more information about hijacking and the stream format, [see the documentation for the attach endpoint](#operation/ContainerAttach).\n",
          "required": false,
          "schema": {
            "title": "follow",
            "type": "boolean"
          }
        },
        {
          "name": "stdout",
          "type": "boolean",
          "info": "Return logs from `stdout`",
          "required": false,
          "schema": {
            "title": "stdout",
            "type": "boolean"
          }
        },
        {
          "name": "stderr",
          "type": "boolean",
          "info": "Return logs from `stderr`",
          "required": false,
          "schema": {
            "title": "stderr",
            "type": "boolean"
          }
        },
        {
          "name": "since",
          "type": "number",
          "info": "Only return logs since this time, as a UNIX timestamp",
          "required": false,
          "schema": {
            "title": "since",
            "type": "number"
          }
        },
        {
          "name": "timestamps",
          "type": "boolean",
          "info": "Add timestamps to every log line",
          "required": false,
          "schema": {
            "title": "timestamps",
            "type": "boolean"
          }
        },
        {
          "name": "tail",
          "type": "string",
          "info": "Only return this number of log lines from the end of the logs. Specify as an integer or `all` to output all log lines.",
          "required": false,
          "schema": {
            "title": "tail",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getServicesidlogs"
      },
      "task": true
    },
    {
      "name": "getTasks",
      "summary": "List tasks",
      "description": "",
      "input": [
        {
          "name": "filters",
          "type": "string",
          "info": "A JSON encoded value of the filters (a `map[string][]string`) to process on the tasks list. Available filters:\n\n- `id=<task id>`\n- `name=<task name>`\n- `service=<service name>`\n- `node=<node id or name>`\n- `label=key` or `label=\"key=value\"`\n- `desired-state=(running | shutdown | accepted)`\n",
          "required": false,
          "schema": {
            "title": "filters",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getTasks"
      },
      "task": true
    },
    {
      "name": "getTasksid",
      "summary": "Inspect a task",
      "description": "",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "ID of the task",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getTasksid"
      },
      "task": true
    },
    {
      "name": "getSecrets",
      "summary": "List secrets",
      "description": "",
      "input": [
        {
          "name": "filters",
          "type": "string",
          "info": "A JSON encoded value of the filters (a `map[string][]string`) to process on the secrets list. Available filters:\n\n- `names=<secret name>`\n",
          "required": false,
          "schema": {
            "title": "filters",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getSecrets"
      },
      "task": true
    },
    {
      "name": "postSecretscreate",
      "summary": "Create a secret",
      "description": "",
      "input": [
        {
          "name": "body",
          "type": "object",
          "info": "",
          "required": false,
          "schema": {
            "title": "body",
            "type": "object"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/postSecretscreate"
      },
      "task": true
    },
    {
      "name": "getSecretsid",
      "summary": "Inspect a secret",
      "description": "",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "ID of the secret",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/getSecretsid"
      },
      "task": true
    },
    {
      "name": "deleteSecretsid",
      "summary": "Delete a secret",
      "description": "",
      "input": [
        {
          "name": "id",
          "type": "string",
          "info": "ID of the secret",
          "required": true,
          "schema": {
            "title": "id",
            "type": "string"
          }
        }
      ],
      "output": {
        "name": "result",
        "type": "object",
        "description": "A JSON Object containing status, code and the result",
        "schema": {
          "title": "result",
          "type": "object"
        }
      },
      "roles": [
        "admin"
      ],
      "route": {
        "verb": "POST",
        "path": "/deleteSecretsid"
      },
      "task": true
    }
  ]
}