{
  "swagger": "2.0",
  "info" : {
    "description" : "<h1>REST API documentation for IBM Copy Services Manager<\/h1>\n  \t\t<div class=\"markdown\">\n  \t\t\t<p>The RESTful (Representational State Transfer) API is a platform independent means by which to initiate create, read, update, and delete operations to the Copy Services Manager server. These operations are initiated with the HTTP commands: POST, GET, PUT, and DELETE.<\/p>\n\t\t\t<p>The RESTful API is intended for programmatically managing a replication environment managed by Copy Services Manager. You can use the RESTful API with a CURL command or through standard Web browsers.<\/p>\n\t\t\t<p>Copy Services Manager has externalized a majority of the APIs necessary to programmatically manage actions on the server through a RESTful interface.  If there are any actions missing, please open a Request For Enhancement (RFE) so that the missing APIs can be addressed.  <a href=\"https://www.ibm.com/developerworks/rfe/execute?use_case=changeRequestLanding&BRAND_ID=352&PROD_ID=1467&x=19&y=22\" target=\"_blank\">Open an RFE on CSM<\/a> <\/p>\n\t\t\t<p><h1>URL Structure<\/h1>The URL structure for an operation is <i>https://ip_address:port_number/service/<\/i>... where ip_address is the IP address of the Copy Services Manager server, port_number is the 3-4 digit port number for the server, and service is defined by the type of request service which can be found in the RESTful API command documentation.<\/br><i>NOTE: The port may be optional for HMC installations.<\/i><\/p>\n\t\t\t<p><h1>Security<\/h1>Copy Services Manager supports both <code> Basic Authentication <\/code> as well as  <code>access token<\/code> authentication.  To use  the REST API, you must either use <code>Basic Authentication<\/code> or generate an <code>access token<\/code> with <code>username<\/code> and <code>password<\/code>.<\/p>\n\t\t\t<p><h2>Using Basic Authentication<\/h2>Use the following steps as an example of using HTTP Basic Authentication to call the CSM RESTful API.  When using Basic Authentication the following must be done for each and every HTTP command sent.<\/p>\n\t\t\t<p><ol><li>Open Firefox browser. <\/li><li>Open the RESTful client by selecting <b>Tools > RESTClient<\/b>.<\/li><li> Select <b>Authentication<\/b> pull down from top. <\/li><li>Select <b>Basic Authentication<\/b>. <\/li><li>Enter <b>username<\/b> and <b>password<\/b>. <\/li><li>Fill in the rest of the RESTClient to complete the desired request according to the request documentation and click <b> Send<\/b>.<\/li><\/ol><\/p>\n\t\t\t<p>Example curl command using Basic Authentication.<\/br><code>curl -X GET -k -H 'Accept-Language: fr,en-US' -H 'Authorization: Basic Y3NtYWRtaW46Y3Nt' -i https://hostname:9559/CSM/web/sessions/<\/code><\/p>\n\t\t\t<p><h2>Using Token Authentication<\/h2><\/p>\n\t\t\t<p><h3>Requesting a Token for Authentication<\/h3>Use the following steps to  request a token to use when calling the CSM RESTful API.  When using token based authentication,  the server will provide a token string that can be used on subsequent calls to the API. <\/p>\n\t\t\t<p><ol><li>Open Firefox browser. <\/li><li>Open the RESTful client by selecting <b>Tools > RESTClient<\/b>.<\/li><li>Select <b>Headers<\/b> pull down from top. <\/li><li>Select <b>Custom Header<\/b>. <\/li><li>Under the Name type <b>Content-Type<\/b> .  Under the attribute value type <b>application/x-www-form-urlencoded<\/b>. <\/li><li>Under Method select <b>Post<\/b>.<\/li><li>In the URL field, type <b><i>https://address:port/CSM/web/system/v1/tokens<\/i><\/b> where address is the IP address of the Copy Services Manager server, and port is a four-digit port number. <\/li><li>In the Form Editior for the Body add two fields.  <b>username<\/b> where you specify the name of a user who has access to the server, and <b>password<\/b> where you specify the password for that user.<\/li><li>Click <b>Send<\/b><\/li><\/ol><\/p>\n\t\t\t<p>Example curl command to request a token.<\/br><code>curl -X POST -k -H 'Accept-Language: en-US' -H 'Content-Type: application/x-www-form-urlencoded' -i https://hostname:9559/CSM/web/system/v1/tokens --data 'username=csmadmin&password=csm'<\/code><\/p>\n\t\t\t<p>Example result for token request.  Result is in json format where the key <code>token<\/code> provides the token that should be used on calls to the RESTful API.  The key <code>expire_time_milliseconds<\/code> provides the time in milliseconds since January 1, 1970, 00:00:00 GMT when the token will expire and a new token will need to be requested.<\/p>\n\t\t\t<p><code>{ \"msg\": \"IWNR4005I\", \"expire_time_milliseconds\": 1586548094513, \"inserts\": [\"csmadmin\"],\"user\": \"csmadmin\",\"msgTranslated\": \"IWNR4005I [Apr 10, 2020 12:48:14 PM] Successfully authenticated user {1}.\",\"created_time_milliseconds\": 1586540894513,\"timestamp\": 1586540894513,\"token\": \"008d4b1e4dd54501a537340842e7b4d7\"}<\/code><\/p>\n\t\t\t<p><h3>Using token authentication when calling the server<\/h3>When calling the RESTful API using token authentication,  after requesting a  token the token received should be supplied in a custom header named <code> X-Auth-Token<\/code> on all subsequent calls.<\/br><b>Please note that the token interface is designed to be more secure.  By default the token will automatically expire after 2 hours and a new token request will be required.<\/b><\/p>\n\t\t\t<p><ol><li>Open Firefox browser. <\/li><li>Open the RESTful client by selecting <b>Tools > RESTClient<\/b>.<\/li><li>Select <b>Headers<\/b> pull down from top. <\/li><li>Select <b>Custom Header<\/b>. <\/li><li>Under the header name type <b>Content-Type<\/b> .  Under the attribute value type <b>application/x-www-form-urlencoded<\/b>. <\/li> <li>Select Custom Header again. Under the header name type <b>X-Auth-Token<\/b> .  Under the attribute value type the token received when requesting a token.  Example: <code>008d4b1e4dd54501a537340842e7b4d7<\/code><\/li><li>Fill in the rest of the RESTClient to complete the desired request according to the request documentations and click <b>Send<\/b>.<\/li><\/ol><\/p>\n\t\t\t<p>Example curl command using a token.<\/br><code>curl -X POST -k -H 'X-Auth-Token: 008d4b1e4dd54501a537340842e7b4d7' -H 'Content-Type: application/x-www-form-urlencoded' -i https://localhost:9559/CSM/web/sessions/8kFC --data cmd=Flash<\/code><\/p>\n\t     <\/div>",
    "version" : "6.3.x",
    "title" : "IBM Copy Services Manager - Server"
  },
  "schemes" : [],
  "tags" : [
    {
      "name" : "HardwareService"
    }
    ,
    {
      "name" : "SessionService"
    }
    ,
    {
      "name" : "SystemService"
    }
  ],
  "definitions" : {
  },
  "paths": {
    "\/sessions" : {
      "get" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>getSessionOverviews<\/h2>\nThis method returns the overview summary information for all sessions managed by the server\n\n<h3>Example curl:<\/h3>\n<code>curl -X GET -k -H 'X-Auth-Token: e6bd5324sdf61b8fe4d513dsd8bd15f6' -H 'Content-Type: application/x-www-form-urlencoded' -i https://hostname:9559/CSM/web/sessions<\/code>\n\n<h3> Principal JSON keys returned in response  <\/h3>\n<ol style=\"list-style-type:disc;\">\n<li> <b>name<\/b> - The name of the session <\/li>\n<li><b>state<\/b> - The current state of the session <\/li>\n<li><b>status<\/b> - The current status of the session <\/li>\n<li><b>rulesname<\/b> - The type of session<\/li>\n<li><b>productionhost<\/b> - The current production host volume<\/li>\n<li><b>description<\/b> - The description given to the session by the user<\/li>\n<li><b>recoverable<\/b> - Whether the session is currently recoverable<\/li>\n<li><b>hyperswapstatus<\/b> - The current status for HyperSwap functionality if applicable<\/li>\n<li><b>numcopysets<\/b> - The number of copy sets in the session<\/li>\n<li><b>copying<\/b> - Whether the session is currently shadowoing<\/li>\n<li><b>numvolumespercopyest<\/b> - The number of volumes that make up each copy set<\/li>\n<\/ol>",
        "operationId" : "getSessions",
        "produces" : [ "application/json" ],
        "parameters" : [
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON String representing the summary information for each session managed by the server\nSample of Output for a single session\nNOTE: Not all returned keys are shown here\n<code>[\n{\"name\": \"8kGM\",\n\"state\": \"Defined\",,\n\"status\": \"Inactive\",\n\"productionhost\": \"H1\",\n\"rulesname\": \"Global Mirror Failover/Failback\",\n\"description\": \"\",\n\"recoverable\": false,\n\"sites\": [\n{\"roles\": [\"H1\"],\"name\": \"Site 1\",\"locations\": {}},\n{\"roles\": [\"H2\",\"J2\"],\"name\": \"Site 2\",\"locations\": {}}],\n\"hyperswapstatus\": \"off\",\n\"numcopysets\": 2,\n\"copying\": false,\n\"numvolumespercopyset\": 3,\n\"group\": \"\"}]<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the summary information for each session managed by the server\nSample of Output for a single session\nNOTE: Not all returned keys are shown here\n<code>[\n{\"name\": \"8kGM\",\n\"state\": \"Defined\",,\n\"status\": \"Inactive\",\n\"productionhost\": \"H1\",\n\"rulesname\": \"Global Mirror Failover/Failback\",\n\"description\": \"\",\n\"recoverable\": false,\n\"sites\": [\n{\"roles\": [\"H1\"],\"name\": \"Site 1\",\"locations\": {}},\n{\"roles\": [\"H2\",\"J2\"],\"name\": \"Site 2\",\"locations\": {}}],\n\"hyperswapstatus\": \"off\",\n\"numcopysets\": 2,\n\"copying\": false,\n\"numvolumespercopyset\": 3,\n\"group\": \"\"}]<\/code>"
          }
        }
      }
    }
    ,
    "\/sessions/scheduledtasks" : {
      "get" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>getTasks<\/h2>\nReturns a list of scheduled tasks defined on the server\n\n<h3>Example curl<\/h3>\n<code>curl -X GET -k -H 'X-Auth-Token: 016cda2d09cc49c2b28ae264426c38ef' -H 'Content-Type: application/x-www-form-urlencoded' -i https://localhost:9559/CSM/web/sessions/scheduledtasks<\/code>",
        "operationId" : "getTasks",
        "produces" : [ "application/json" ],
        "parameters" : [
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\n<ol style=\"list-style-type:disc;\">\n<li><b>id<\/b> ID for the task<\/li>\n<li><b>running<\/b> True if the task is currently running.<\/li>\n<li><b>affectedSession<\/b> List of sessions used in the scheduled task.<\/li>\n<li><b>name<\/b> Name for the scheduled task.<\/li>\n<li><b>actions<\/b> List of actions defined by the scheduled task.<\/li>\n<\/ol>\nSample result\n<code>[{\"msg\":\"IWNR2205I\",\n\"resultText\":\"IWNR2205I [May 5, 2020 1:55:43 PM] The scheduled task 8kgm stop and start information retrieved.\",\n\"affectedSession\":[\"8kGM\"],\n\"description\":\"\",\n\"enabled\":false,\n\"pendingApproval\":false,\n\"nextRun\":null,\n\"running\":false,\n\"schedule\":{\"type\":\"NoTaskSchedule\"},\n\"name\":\"8kgm stop and start\",\n\"lastRan\":1588616632725,\n\"messages\":[{\"msg\":\"IWNR2200I\",\"resultText\":\"\",\"baseDate\":1588616624193,\"inserts\":[\"8kgm stop and start\"],\"resultType\":0},{\"msg\":\"IWNR2211I\",\"resultText\":\"\",\"baseDate\":1588616632725,\"inserts\":[\"8kgm stop and start\"],\"resultType\":0},{\"msg\":\"IWNR1026I\",\"resultText\":\"\",\"baseDate\":1588616633689,\"inserts\":[\"Suspend\",\"8kGM\"],\"resultType\":0},{\"msg\":\"IWNR2220I\",\"resultText\":\"\",\"baseDate\":1588616661786,\"inserts\":[\"8kgm stop and start\",\"2\",\"8kGM\",\"Suspended\",\"0\"],\"resultType\":0},{\"msg\":\"IWNR1026I\",\"resultText\":\"\",\"baseDate\":1588616663109,\"inserts\":[\"Start H1->H2\",\"8kGM\"],\"resultType\":0},{\"msg\":\"IWNR2226E\",\"resultText\":\"\",\"baseDate\":1588616663111,\"inserts\":[\"8kgm stop and start\",\"4\",\"8kGM\",\"H1-J2\"],\"resultType\":2},{\"msg\":\"IWNR2219E\",\"resultText\":\"\",\"baseDate\":1588616663112,\"inserts\":[\"8kgm stop and start\"],\"resultType\":2}],\n\"id\":16,\n\"logOnFailure\":false,\n\"inserts\":[\"8kgm stop and start\"],\n\"actions\":[\n{\"sessionName\":\"8kGM\",\"command\":\"Suspend\"},\n{\"sessionName\":\"8kGM\",\"state\":\"Suspended\",\"timeout\":180000},\n{\"sessionName\":\"8kGM\",\"command\":\"Start H1->H2\"},\n{\"sessionName\":\"8kGM\",\"rolePair\":\"H1-J2\",\"percentComplete\":100,\"timeout\":300000}],\n\"timestamp\":1588704943170},\n{\"msg\":\"IWNR2205I\",\"resultText\":\"IWNR2205I [May 5, 2020 1:55:43 PM] The scheduled task BackupSGC1 information retrieved.\",\n\"affectedSession\":[\"SGC\"],\n\"description\":\"\",\n\"enabled\":false,\n\"pendingApproval\":false,\n\"nextRun\":1581959700000,\n\"running\":false,\n\"schedule\":{\"interval\":1800000,\"type\":\"IntervalTaskSchedule\"},\n\"name\":\"BackupSGC1\",\"lastRan\":1588261695304,\n\"messages\":[{\"msg\":\"IWNR2211I\",\"resultText\":\"\",\"baseDate\":1588261695304,\"inserts\":[\"BackupSGC1\"],\"resultType\":0},{\"msg\":\"IWNR1026I\",\"resultText\":\"\",\"baseDate\":1588261700509,\"inserts\":[\"Backup\",\"SGC\"],\"resultType\":0},{\"msg\":\"IWNR2212I\",\"resultText\":\"\",\"baseDate\":1588261700511,\"inserts\":[\"BackupSGC1\"],\"resultType\":0}],\n\"id\":12,\n\"logOnFailure\":false,\n\"inserts\":[\"BackupSGC1\"],\n\"actions\":[\n{\"sessionName\":\"SGC\",\"command\":\"Backup\"}],\n\"timestamp\":1588704943169}],\n\"timestamp\":1588704943170}]<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\n<ol style=\"list-style-type:disc;\">\n<li><b>id<\/b> ID for the task<\/li>\n<li><b>running<\/b> True if the task is currently running.<\/li>\n<li><b>affectedSession<\/b> List of sessions used in the scheduled task.<\/li>\n<li><b>name<\/b> Name for the scheduled task.<\/li>\n<li><b>actions<\/b> List of actions defined by the scheduled task.<\/li>\n<\/ol>\nSample result\n<code>[{\"msg\":\"IWNR2205I\",\n\"resultText\":\"IWNR2205I [May 5, 2020 1:55:43 PM] The scheduled task 8kgm stop and start information retrieved.\",\n\"affectedSession\":[\"8kGM\"],\n\"description\":\"\",\n\"enabled\":false,\n\"pendingApproval\":false,\n\"nextRun\":null,\n\"running\":false,\n\"schedule\":{\"type\":\"NoTaskSchedule\"},\n\"name\":\"8kgm stop and start\",\n\"lastRan\":1588616632725,\n\"messages\":[{\"msg\":\"IWNR2200I\",\"resultText\":\"\",\"baseDate\":1588616624193,\"inserts\":[\"8kgm stop and start\"],\"resultType\":0},{\"msg\":\"IWNR2211I\",\"resultText\":\"\",\"baseDate\":1588616632725,\"inserts\":[\"8kgm stop and start\"],\"resultType\":0},{\"msg\":\"IWNR1026I\",\"resultText\":\"\",\"baseDate\":1588616633689,\"inserts\":[\"Suspend\",\"8kGM\"],\"resultType\":0},{\"msg\":\"IWNR2220I\",\"resultText\":\"\",\"baseDate\":1588616661786,\"inserts\":[\"8kgm stop and start\",\"2\",\"8kGM\",\"Suspended\",\"0\"],\"resultType\":0},{\"msg\":\"IWNR1026I\",\"resultText\":\"\",\"baseDate\":1588616663109,\"inserts\":[\"Start H1->H2\",\"8kGM\"],\"resultType\":0},{\"msg\":\"IWNR2226E\",\"resultText\":\"\",\"baseDate\":1588616663111,\"inserts\":[\"8kgm stop and start\",\"4\",\"8kGM\",\"H1-J2\"],\"resultType\":2},{\"msg\":\"IWNR2219E\",\"resultText\":\"\",\"baseDate\":1588616663112,\"inserts\":[\"8kgm stop and start\"],\"resultType\":2}],\n\"id\":16,\n\"logOnFailure\":false,\n\"inserts\":[\"8kgm stop and start\"],\n\"actions\":[\n{\"sessionName\":\"8kGM\",\"command\":\"Suspend\"},\n{\"sessionName\":\"8kGM\",\"state\":\"Suspended\",\"timeout\":180000},\n{\"sessionName\":\"8kGM\",\"command\":\"Start H1->H2\"},\n{\"sessionName\":\"8kGM\",\"rolePair\":\"H1-J2\",\"percentComplete\":100,\"timeout\":300000}],\n\"timestamp\":1588704943170},\n{\"msg\":\"IWNR2205I\",\"resultText\":\"IWNR2205I [May 5, 2020 1:55:43 PM] The scheduled task BackupSGC1 information retrieved.\",\n\"affectedSession\":[\"SGC\"],\n\"description\":\"\",\n\"enabled\":false,\n\"pendingApproval\":false,\n\"nextRun\":1581959700000,\n\"running\":false,\n\"schedule\":{\"interval\":1800000,\"type\":\"IntervalTaskSchedule\"},\n\"name\":\"BackupSGC1\",\"lastRan\":1588261695304,\n\"messages\":[{\"msg\":\"IWNR2211I\",\"resultText\":\"\",\"baseDate\":1588261695304,\"inserts\":[\"BackupSGC1\"],\"resultType\":0},{\"msg\":\"IWNR1026I\",\"resultText\":\"\",\"baseDate\":1588261700509,\"inserts\":[\"Backup\",\"SGC\"],\"resultType\":0},{\"msg\":\"IWNR2212I\",\"resultText\":\"\",\"baseDate\":1588261700511,\"inserts\":[\"BackupSGC1\"],\"resultType\":0}],\n\"id\":12,\n\"logOnFailure\":false,\n\"inserts\":[\"BackupSGC1\"],\n\"actions\":[\n{\"sessionName\":\"SGC\",\"command\":\"Backup\"}],\n\"timestamp\":1588704943169}],\n\"timestamp\":1588704943170}]<\/code>"
          }
        }
      }
    }
    ,
    "\/sessions/scheduledtasks/delete/{taskid}" : {
      "post" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>deleteTask<\/h2>\nDisable a scheduled task.\n\n<h3>Example curl<\/h3>\n<code>curl -X POST -k -H 'X-Auth-Token: 016cda2d09cc49c2b28ae264426c38ef' -H 'Content-Type: application/x-www-form-urlencoded' -i https://localhost:9559/CSM/web/sessions/scheduledtasks/delete/12<\/code>",
        "operationId" : "deleteTask",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "taskid",
            "in" : "path",
            "required" : true,
            "type" : "integer",
            "format" : "int32",
            "description" : "ID of the schedule task to disable"
          }
        ],
        "responses" : {
          "201" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nSample result\n<code>{\"msg\":\"IWNR2210I\",\"inserts\":[\"BackupSGC1\"],\"msgTranslated\":\"IWNR2210I [May 5, 2020 2:10:27 PM] The scheduled task Backup SGC was disabled.\",\"timestamp\":1588705827058}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nSample result\n<code>{\"msg\":\"IWNR2210I\",\"inserts\":[\"BackupSGC1\"],\"msgTranslated\":\"IWNR2210I [May 5, 2020 2:10:27 PM] The scheduled task Backup SGC was disabled.\",\"timestamp\":1588705827058}<\/code>"
          }
        }
      }
    }
    ,
    "\/sessions/scheduledtasks/disable/{taskid}" : {
      "post" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>disableTask<\/h2>\nDisable a scheduled task.\n\n<h3>Example curl<\/h3>\n<code>curl -X POST -k -H 'X-Auth-Token: 016cda2d09cc49c2b28ae264426c38ef' -H 'Content-Type: application/x-www-form-urlencoded' -i https://localhost:9559/CSM/web/sessions/scheduledtasks/disable/12<\/code>",
        "operationId" : "disableTask",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "taskid",
            "in" : "path",
            "required" : true,
            "type" : "integer",
            "format" : "int32",
            "description" : "ID of the schedule task to disable"
          }
        ],
        "responses" : {
          "201" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nSample result\n<code>{\"msg\":\"IWNR2210I\",\"inserts\":[\"BackupSGC1\"],\"msgTranslated\":\"IWNR2210I [May 5, 2020 2:10:27 PM] The scheduled task Backup SGC was disabled.\",\"timestamp\":1588705827058}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nSample result\n<code>{\"msg\":\"IWNR2210I\",\"inserts\":[\"BackupSGC1\"],\"msgTranslated\":\"IWNR2210I [May 5, 2020 2:10:27 PM] The scheduled task Backup SGC was disabled.\",\"timestamp\":1588705827058}<\/code>"
          }
        }
      }
    }
    ,
    "\/sessions/scheduledtasks/enable/{taskid}" : {
      "post" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>enableTask<\/h2>\nEnable a scheduled task to run based off the schedule defined on the task.\n\n<h3>Example curl<\/h3>\n<code>curl -X POST -k -H 'X-Auth-Token: 016cda2d09cc49c2b28ae264426c38ef' -H 'Content-Type: application/x-www-form-urlencoded' -i https://localhost:9559/CSM/web/sessions/scheduledtasks/enable/12<\/code>",
        "operationId" : "enableTask",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "taskid",
            "in" : "path",
            "required" : true,
            "type" : "integer",
            "format" : "int32",
            "description" : "ID of the schedule task to enable"
          }
        ],
        "responses" : {
          "201" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nSample result\n<code>{\"msg\":\"IWNR2209I\",\"inserts\":[\"BackupSGC1\"],\"msgTranslated\":\"IWNR2209I [May 5, 2020 2:10:27 PM] The scheduled task Backup SGC was enabled.\",\"timestamp\":1588705827058}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nSample result\n<code>{\"msg\":\"IWNR2209I\",\"inserts\":[\"BackupSGC1\"],\"msgTranslated\":\"IWNR2209I [May 5, 2020 2:10:27 PM] The scheduled task Backup SGC was enabled.\",\"timestamp\":1588705827058}<\/code>"
          }
        }
      }
    }
    ,
    "\/sessions/scheduledtasks/enable/{taskid}/{starttime}" : {
      "post" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>enableTaskAtTime<\/h2>\nEnable a scheduled task to start running at the specified time.\n\n<h3>Example curl<\/h3>\n<code>curl -X POST -k -H 'X-Auth-Token: 016cda2d09cc49c2b28ae264426c38ef' -H 'Content-Type: application/x-www-form-urlencoded' -i https://localhost:9559/CSM/web/sessions/scheduledtasks/enable/12/2021-03-12T14-54<\/code>",
        "operationId" : "enableTask",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "starttime",
            "in" : "path",
            "type" : "string",
            "description" : "Time to enable the task.  Format of yyyy-MM-dd'T'HH-mm."
          },
          {
            "name" : "taskid",
            "in" : "path",
            "required" : true,
            "type" : "integer",
            "format" : "int32",
            "description" : "ID of the schedule task to enable"
          }
        ],
        "responses" : {
          "201" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nSample result\n<code>{\"msg\":\"IWNR2209I\",\"inserts\":[\"BackupSGC1\"],\"msgTranslated\":\"IWNR2209I [May 5, 2020 2:10:27 PM] The scheduled task Backup SGC was enabled.\",\"timestamp\":1588705827058}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nSample result\n<code>{\"msg\":\"IWNR2209I\",\"inserts\":[\"BackupSGC1\"],\"msgTranslated\":\"IWNR2209I [May 5, 2020 2:10:27 PM] The scheduled task Backup SGC was enabled.\",\"timestamp\":1588705827058}<\/code>"
          }
        }
      }
    }
    ,
    "\/sessions/scheduledtasks/{taskid}" : {
      "post" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>runTaskNow<\/h2>\nRun a scheduled task immediately.\n\n<h3>Example curl<\/h3>\n<code>curl -X POST -k -H 'X-Auth-Token: 016cda2d09cc49c2b28ae264426c38ef' -H 'Content-Type: application/x-www-form-urlencoded' -i https://localhost:9559/CSM/web/sessions/scheduledtasks/12<\/code>",
        "operationId" : "runTaskNow",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "taskid",
            "in" : "path",
            "required" : true,
            "type" : "integer",
            "format" : "int32",
            "description" : "ID of the schedule task to run"
          }
        ],
        "responses" : {
          "201" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nSample result\n<code>{\"msg\":\"IWNR2208I\",\"inserts\":[\"BackupSGC1\"],\"msgTranslated\":\"IWNR2208I [May 5, 2020 2:10:27 PM] Forcing the scheduled task BackupSGC1 to run now.\",\"timestamp\":1588705827058}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nSample result\n<code>{\"msg\":\"IWNR2208I\",\"inserts\":[\"BackupSGC1\"],\"msgTranslated\":\"IWNR2208I [May 5, 2020 2:10:27 PM] Forcing the scheduled task BackupSGC1 to run now.\",\"timestamp\":1588705827058}<\/code>"
          }
        }
      }
    }
    ,
    "\/sessions/scheduledtasks/{taskid}/runat/{starttime}" : {
      "post" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>runTaskAtTime<\/h2>\nRun a scheduled task immediately.\n\n<h3>Example curl<\/h3>\n<code>curl -X POST -k -H 'X-Auth-Token: 016cda2d09cc49c2b28ae264426c38ef' -H 'Content-Type: application/x-www-form-urlencoded' -i https://localhost:9559/CSM/web/sessions/scheduledtasks/12/runat/2021-03-12T14-54<\/code>",
        "operationId" : "runTaskAtTime",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "starttime",
            "in" : "path",
            "type" : "string",
            "description" : "Time to run the task once.  Format of yyyy-MM-dd'T'HH-mm."
          },
          {
            "name" : "taskid",
            "in" : "path",
            "required" : true,
            "type" : "integer",
            "format" : "int32",
            "description" : "ID of the schedule task to run"
          }
        ],
        "responses" : {
          "201" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nSample result\n<code>{\"msg\":\"IWNR2208I\",\"inserts\":[\"BackupSGC1\"],\"msgTranslated\":\"IWNR2208I [May 5, 2020 2:10:27 PM] Forcing the scheduled task BackupSGC1 to run now.\",\"timestamp\":1588705827058}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nSample result\n<code>{\"msg\":\"IWNR2208I\",\"inserts\":[\"BackupSGC1\"],\"msgTranslated\":\"IWNR2208I [May 5, 2020 2:10:27 PM] Forcing the scheduled task BackupSGC1 to run now.\",\"timestamp\":1588705827058}<\/code>"
          }
        }
      }
    }
    ,
    "\/sessions/scheduledtasks/{taskid}/{synchronous}" : {
      "post" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>runTaskNow<\/h2>\nRun a scheduled task immediately.\n\n<h3>Example curl<\/h3>\n<code>curl -X POST -k -H 'X-Auth-Token: 016cda2d09cc49c2b28ae264426c38ef' -H 'Content-Type: application/x-www-form-urlencoded' -i https://localhost:9559/CSM/web/sessions/scheduledtasks/12<\/code>",
        "operationId" : "runTaskNow",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "synchronous",
            "in" : "path",
            "required" : true,
            "type" : "boolean",
            "description" : "If true the result will not return until the task completes running.  NOTE: this may take a long time, but would be good for scripting calls"
          },
          {
            "name" : "taskid",
            "in" : "path",
            "required" : true,
            "type" : "integer",
            "format" : "int32",
            "description" : "ID of the schedule task to run"
          }
        ],
        "responses" : {
          "201" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nSample result\n<code>{\"msg\":\"IWNR2208I\",\"inserts\":[\"BackupSGC1\"],\"msgTranslated\":\"IWNR2208I [May 5, 2020 2:10:27 PM] Forcing the scheduled task BackupSGC1 to run now.\",\"timestamp\":1588705827058}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nSample result\n<code>{\"msg\":\"IWNR2208I\",\"inserts\":[\"BackupSGC1\"],\"msgTranslated\":\"IWNR2208I [May 5, 2020 2:10:27 PM] Forcing the scheduled task BackupSGC1 to run now.\",\"timestamp\":1588705827058}<\/code>"
          }
        }
      }
    }
    ,
    "\/sessions/short" : {
      "get" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>getSessionOverviews<\/h2>\nThis method returns minimal overview summary information for all sessions managed by the server.\n\n<h3>Example curl:<\/h3>\n<code>curl -X GET -k -H 'X-Auth-Token: e6bd5324sdf61b8fe4d513dsd8bd15f6' -H 'Content-Type: application/x-www-form-urlencoded' -i https://hostname:9559/CSM/web/sessions/short<\/code>",
        "operationId" : "getSessionsShort",
        "produces" : [ "application/json" ],
        "parameters" : [
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON String representing the summary information for each session managed by the server\nSample of Output for a single session\n<code>[\n{\"numcopysets\": 0,\n\"productionhost\": \"H1\",\n\"haserror\": false,\n\"rulesname\": \"Metro Mirror Failover/Failback\",\n\"name\": \"GCsess\",\n\"copying\": false,\n\"description\": \"\",\n\"recoverable\": false,\n\"state\": \"Defined\",\n\"hyperswapstatus\": \"off\",\n\"status\": \"Inactive\"\n}]<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the summary information for each session managed by the server\nSample of Output for a single session\n<code>[\n{\"numcopysets\": 0,\n\"productionhost\": \"H1\",\n\"haserror\": false,\n\"rulesname\": \"Metro Mirror Failover/Failback\",\n\"name\": \"GCsess\",\n\"copying\": false,\n\"description\": \"\",\n\"recoverable\": false,\n\"state\": \"Defined\",\n\"hyperswapstatus\": \"off\",\n\"status\": \"Inactive\"\n}]<\/code>"
          }
        }
      }
    }
    ,
    "\/sessions/{name}" : {
      "delete" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>destroySession<\/h2>\nDeletes a copy services manager session. Only inactive sessions can be deleted.\n\n<h3>Example curl:<\/h3>\n<code> curl -X DELETE -k -H 'X-Auth-Token: c8f5a3eb11e74c4badaa066f0a493a99' -H 'Content-Type: application/x-www-form-urlencoded' -i https://hostname:9559/CSM/web/sessions/MyFCSess <\/code>",
        "operationId" : "destroySession",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : "The name of the session that will be deleted"
          }
        ],
        "responses" : {
          "204" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nSample result\n<code>{\"msg\":\"IWNR1022I\",\"inserts\":[\"MyFCSess\"],\"msgTranslated\":\"IWNR1022I [Apr 13, 2020 4:20:16 PM] Session MyFCSess was successfully deleted.\",\"timestamp\":1586812816204}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nSample result\n<code>{\"msg\":\"IWNR1022I\",\"inserts\":[\"MyFCSess\"],\"msgTranslated\":\"IWNR1022I [Apr 13, 2020 4:20:16 PM] Session MyFCSess was successfully deleted.\",\"timestamp\":1586812816204}<\/code>"
          }
        }
      }
      ,
      "get" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>getSessionInfo<\/h2>\nThis method returns the detailed information for a given session\n\n<h3>Example curl:<\/h3>\n<code>curl -X GET -k -H 'X-Auth-Token: e6bd5324sdf61b8fe4d513dsd8bd15f6' -H 'Content-Type: application/x-www-form-urlencoded' -i https://hostname:9559/CSM/web/sessions/8kGM<\/code>\n\n<h3> Principal JSON keys returned in response  <\/h3>\n<ol style=\"list-style-type:disc;\">\n<li> <b>name<\/b> - The name of the session <\/li>\n<li><b>state<\/b> - The current state of the session <\/li>\n<li><b>status<\/b> - The current status of the session <\/li>\n<li><b>rulesname<\/b> - The type of session<\/li>\n<li><b>productionhost<\/b> - The current production host volume<\/li>\n<li><b>description<\/b> - The description given to the session by the user<\/li>\n<li><b>recoverable<\/b> - Whether the session is currently recoverable<\/li>\n<li><b>hyperswapstatus<\/b> - The current status for HyperSwap functionality if applicable<\/li>\n<li><b>numcopysets<\/b> - The number of copy sets in the session<\/li>\n<li><b>copying<\/b> - Whether the session is currently shadowoing<\/li>\n<li><b>hwcg<\/b> - The name of the hardware consistency group if applicable<\/li>\n<li><b>numvolumespercopyest<\/b> - The number of volumes that make up each copy set<\/li>\n<li><b>sites<\/b> - List the site names that make up the session, and the roles that exist on each site<\/li>\n<li><b>group<\/b> - User defined group name for the session<\/li>\n<li><b>sessionprogress<\/b> - Replication progress for copying role pairs<\/li>\n<li><b>sequences<\/b> - Detailed information for each role pair in the session, including direction, hyperswap iosstate, copy type, number of errors, etc<\/li>\n<li><b>h1cg<\/b> - The name of the hardware consistency group at site 1 if applicable<\/li>\n<li><b>h2cg<\/b> - The name of the hardware consistency group at site 2 if applicable<\/li>\n<li><b>h1pool<\/b> - The name of the hardware pool at site 1 if applicable<\/li>\n<li><b>h2pool<\/b> - The name of the hardware pool at site 2 if applicable<\/li>\n<\/ol>",
        "operationId" : "getSessionInfo",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : "Name of the session to query"
          }
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON String representing the detailed information for the session queried\nSample of Output for a single session\nNOTE: Not all returned keys are shown here\n<code>{\"name\":\"8kGM\",\n\"state\":\"Defined\",,\n\"status\":\"Inactive\"\n\"rulesname\":\"Global Mirror Failover\\/Failback\",\n\"productionhost\":\"H1\",\n\"description\":\"\",\n\"recoverable\":false,\n\"hyperswapstatus\":\"off\",\n\"numcopysets\":2,\n\"copying\":false,,\n\"numvolumespercopyset\":3\n\"sites\":[\n{\"roles\":[\"H1\"],\"name\":\"Site 1\",\"locations\":{}},\n{\"roles\":[\"H2\",\"J2\"],\"name\":\"Site 2\",\"locations\":{}}],\n\"sequences\":[\n{\"seqname\":\"H1-H2\",\"numpairs\":2,\"numwarning\":0,\"numshadowing\":0,\"numrecoverable\":0,\"isShadowing\":false,\"iosstate\":\"TurnedOff\",\"exceptionNum\":0,\"baseCopyType\":\"GC\",\"isRecoverable\":false,\"progress\":null,\"direction\":true,\"timestamp\":\"n\\/a\"},\n{\"seqname\":\"H2-J2\",\"numpairs\":2,\"numwarning\":0,\"numshadowing\":0,\"numrecoverable\":0,\"isShadowing\":false,\"iosstate\":\"TurnedOff\",\"exceptionNum\":0,\"baseCopyType\":\"FC\",\"isRecoverable\":false,\"progress\":null,\"direction\":true,\"timestamp\":\"n\\/a\"},\n{\"seqname\":\"H1-J2\",\"numpairs\":2,\"numwarning\":0,\"numshadowing\":0,\"numrecoverable\":0,\"isShadowing\":false,\"iosstate\":\"TurnedOff\",\"exceptionNum\":0,\"baseCopyType\":\"GM\",\"isRecoverable\":false,\"progress\":null,\"direction\":true,\"timestamp\":\"n\\/a\"}],\n\"group\":\"\",\n\"sessionprogress\":[]}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the detailed information for the session queried\nSample of Output for a single session\nNOTE: Not all returned keys are shown here\n<code>{\"name\":\"8kGM\",\n\"state\":\"Defined\",,\n\"status\":\"Inactive\"\n\"rulesname\":\"Global Mirror Failover\\/Failback\",\n\"productionhost\":\"H1\",\n\"description\":\"\",\n\"recoverable\":false,\n\"hyperswapstatus\":\"off\",\n\"numcopysets\":2,\n\"copying\":false,,\n\"numvolumespercopyset\":3\n\"sites\":[\n{\"roles\":[\"H1\"],\"name\":\"Site 1\",\"locations\":{}},\n{\"roles\":[\"H2\",\"J2\"],\"name\":\"Site 2\",\"locations\":{}}],\n\"sequences\":[\n{\"seqname\":\"H1-H2\",\"numpairs\":2,\"numwarning\":0,\"numshadowing\":0,\"numrecoverable\":0,\"isShadowing\":false,\"iosstate\":\"TurnedOff\",\"exceptionNum\":0,\"baseCopyType\":\"GC\",\"isRecoverable\":false,\"progress\":null,\"direction\":true,\"timestamp\":\"n\\/a\"},\n{\"seqname\":\"H2-J2\",\"numpairs\":2,\"numwarning\":0,\"numshadowing\":0,\"numrecoverable\":0,\"isShadowing\":false,\"iosstate\":\"TurnedOff\",\"exceptionNum\":0,\"baseCopyType\":\"FC\",\"isRecoverable\":false,\"progress\":null,\"direction\":true,\"timestamp\":\"n\\/a\"},\n{\"seqname\":\"H1-J2\",\"numpairs\":2,\"numwarning\":0,\"numshadowing\":0,\"numrecoverable\":0,\"isShadowing\":false,\"iosstate\":\"TurnedOff\",\"exceptionNum\":0,\"baseCopyType\":\"GM\",\"isRecoverable\":false,\"progress\":null,\"direction\":true,\"timestamp\":\"n\\/a\"}],\n\"group\":\"\",\n\"sessionprogress\":[]}<\/code>"
          }
        }
      }
      ,
      "post" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>runSessionCmd<\/h2>\nRun a command against a session.  Available commands for the session can be retrieved via the availablecommands API.\n\n<h3> Example curl: <\/h3>\n<code>curl -X POST -k -H 'X-Auth-Token: c8f5a3eb11e74c4badaa066f0a493a99' -H 'Content-Type: application/x-www-form-urlencoded' -i https://hostname:9559/CSM/web/sessions/SGC --data cmd=Backup<\/code>\n<h3> Example curl with options: <\/h3>\n<code>curl -X POST -k -H 'X-Auth-Token: c8f5a3eb11e74c4badaa066f0a493a99' -H 'Content-Type: application/x-www-form-urlencoded' -i https://hostname:9559/CSM/web/sessions/SGC/backups/H1/1586813765 --data 'cmd=Recover%20Backup'<\/code>",
        "operationId" : "runSessionCmd",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "cmd",
            "in" : "formData",
            "type" : "string",
            "description" : "The command to be run against the session"
          },
          {
            "name" : "options",
            "in" : "formData",
            "type" : "string",
            "description" : "Optional options that may be necessary for certain commands"
          },
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : "The name of the session."
          }
        ],
        "responses" : {
          "201" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nSample result\n<code>{\"msg\":\"IWNR1026I\",\"inserts\":[\"Recover Backup\",\"SGC\"],\"results\":[],\"msgTranslated\":\"IWNR1026I [Apr 13, 2020 4:39:47 PM] The Recover Backup command in the SGC session completed.\",\"timestamp\":1586813987302}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nSample result\n<code>{\"msg\":\"IWNR1026I\",\"inserts\":[\"Recover Backup\",\"SGC\"],\"results\":[],\"msgTranslated\":\"IWNR1026I [Apr 13, 2020 4:39:47 PM] The Recover Backup command in the SGC session completed.\",\"timestamp\":1586813987302}<\/code>"
          }
        }
      }
      ,
      "put" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>createSession<\/h2>\nCreate a copy services manager session.  A session must be created before copy sets can be placed into the session and managed by the server.\n\n<h3>Example curl:<\/h3>\n<code> curl -X PUT -k -H 'X-Auth-Token: e6bd510f2032461b8fe4d513d8bd15f6' -H 'Content-Type: application/x-www-form-urlencoded' -i https://localhost:9559/CSM/web/sessions/MyFCSess --data 'type=FC&description=My%20FC%20session'<\/code>",
        "operationId" : "createSession",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "description",
            "in" : "formData",
            "type" : "string",
            "description" : "Optional description for the session"
          },
          {
            "name" : "type",
            "in" : "formData",
            "type" : "string",
            "description" : "The type of session to create.  Call System Service getsessiontypes for list of possible session types"
          },
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : "The name of the session that will be created"
          }
        ],
        "responses" : {
          "204" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nSample result\n<code>{\"msg\":\"IWNR1021I\",\"inserts\":[\"MyFCSess\"],\"msgTranslated\":\"IWNR1021I [Apr 13, 2020 3:23:14 PM] Session MyFCSess was successfully created.\",\"timestamp\":1586809394287}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nSample result\n<code>{\"msg\":\"IWNR1021I\",\"inserts\":[\"MyFCSess\"],\"msgTranslated\":\"IWNR1021I [Apr 13, 2020 3:23:14 PM] Session MyFCSess was successfully created.\",\"timestamp\":1586809394287}<\/code>"
          }
        }
      }
    }
    ,
    "\/sessions/{name}/association" : {
      "get" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>getSessionAssociations<\/h2>\nGets a list of session associated to this session\n\n<h3>Example curl:<\/h3>\n<code>curl -X GET -k -H 'X-Auth-Token: c8f5a3eb11e74c4badaa066f0a493a99' -H 'Content-Type: application/x-www-form-urlencoded' -i https://hostname:9559/CSM/web/sessions/SGC/association <\/code>\n\n<h3> Principal JSON keys returned in response <\/h3>\n<ol style=\"list-style-type:disc;\">\n<li><b>sessionName<\/b> - The name of the session queried<\/li>\n<li><b>associated_session<\/b> - The name of the session associated to the session queried<\/li>\n<li><b>associated_rolepair<\/b> - The name of the role pair in the associated session tied to the session queried <\/li>\n<li><b>role<\/b> - The role in the session queried that is associated to the associated session<\/li>\n<li><b>matching_role<\/b> - The role in the associated session that is the same as the role in the session queried<\/li>\n<li><b>associated_action_role<\/b> - The role in the associated session that an action will be issued to<\/li>\n<li><b>action<\/b> - The actions such as RESTORE_TO_PROD that will a<\/li>\n<\/ol>",
        "operationId" : "getSessionAssociations",
        "produces" : [ "*/*" ],
        "parameters" : [
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : "The name of the session to query"
          }
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON string listing out all session associations and the above info for each",
"type" : "string"
            },
            "description" : "JSON string listing out all session associations and the above info for each"
          }
        }
      }
    }
    ,
    "\/sessions/{name}/association/restore_to_prod/{associated_sess}/{associated_rolepair}" : {
      "delete" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>removeSessionAssociation<\/h2>\nRemoves association to another session and role pair to the passed in session\n\n<h3>Example curl<\/h3>\n<code>curl -X DELETE -k -H 'X-Auth-Token: c91a8c7fa110490089f84d8454f6b403' -H 'Content-Type: application/x-www-form-urlencoded' -i https://localhost:9559/CSM/web/sessions/SGC/association/MM/H1-H2<\/code>",
        "operationId" : "removeSessionAssociation",
        "produces" : [ "*/*" ],
        "parameters" : [
          {
            "name" : "associated_rolepair",
            "in" : "path",
            "type" : "string",
            "description" : "The role pair in the associated session to be associated"
          },
          {
            "name" : "associated_sess",
            "in" : "path",
            "type" : "string",
            "description" : "The name of session to associate with this session"
          },
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : "The name of the session."
          }
        ],
        "responses" : {
          "204" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1093I\",\"inserts\":[\"SGC\",\"MM\",\"H1-H2\"],\"results\":[],\"msgTranslated\":\"IWNR1093I [Apr 24, 2020 4:47:51 PM] The session SGC was successfully associated to session MM and role pair H1-H2.\",\"timestamp\":1587764871881}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1093I\",\"inserts\":[\"SGC\",\"MM\",\"H1-H2\"],\"results\":[],\"msgTranslated\":\"IWNR1093I [Apr 24, 2020 4:47:51 PM] The session SGC was successfully associated to session MM and role pair H1-H2.\",\"timestamp\":1587764871881}<\/code>"
          }
        }
      }
    }
    ,
    "\/sessions/{name}/association/restore_to_prod/{associated_sess}/{associated_rolepair}/{role}/{matching_role}/{role_to_restore}" : {
      "post" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>addOrUpdateSessionAssociation<\/h2>\nAssociation another session and role pair to the passed in session\n\n<h3>Example curl<\/h3>\n<code>curl -X POST -k -H 'X-Auth-Token: c91a8c7fa110490089f84d8454f6b403' -H 'Content-Type: application/x-www-form-urlencoded' -i https://localhost:9559/CSM/web/sessions/SGC/association/restore_to_prod/MM/H1-H2/H1/H2/H1<\/code>",
        "operationId" : "addOrUpdateSessionAssociation",
        "produces" : [ "*/*" ],
        "parameters" : [
          {
            "name" : "associated_rolepair",
            "in" : "path",
            "type" : "string",
            "description" : "The role pair in the associated session to be associated"
          },
          {
            "name" : "associated_sess",
            "in" : "path",
            "type" : "string",
            "description" : "The name of session to associate with this session"
          },
          {
            "name" : "matching_role",
            "in" : "path",
            "type" : "string",
            "description" : "The name of the rol in the other session that matches the volumes in the role of the passed in session"
          },
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : "The name of the session."
          },
          {
            "name" : "role",
            "in" : "path",
            "type" : "string",
            "description" : "The name of the role in this session"
          },
          {
            "name" : "role_to_restore",
            "in" : "path",
            "type" : "string",
            "description" : "The role to restore in the associated session"
          }
        ],
        "responses" : {
          "201" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1093I\",\"inserts\":[\"SGC\",\"MM\",\"H1-H2\"],\"results\":[],\"msgTranslated\":\"IWNR1093I [Apr 24, 2020 4:47:51 PM] The session SGC was successfully associated to session MM and role pair H1-H2.\",\"timestamp\":1587764871881}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1093I\",\"inserts\":[\"SGC\",\"MM\",\"H1-H2\"],\"results\":[],\"msgTranslated\":\"IWNR1093I [Apr 24, 2020 4:47:51 PM] The session SGC was successfully associated to session MM and role pair H1-H2.\",\"timestamp\":1587764871881}<\/code>"
          }
        }
      }
    }
    ,
    "\/sessions/{name}/availablecommands" : {
      "get" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>getAvailableCommands<\/h2>\nReturns the list of available commands for a session based on the session's current state\n\n<h3>Example curl:<\/h3>\n<code>curl -X GET -k -H 'X-Auth-Token: c8f5a3eb11e74c4badaa066f0a493a99' -H 'Content-Type: application/x-www-form-urlencoded' -i https://localhost:9559/CSM/web/sessions/8kFC/availablecommands<\/code>",
        "operationId" : "getAvailableCommands",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : "The name of the session."
          }
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON string representing the list of commands that can be run using the runsessioncmd API\nExample output\n<code>[\"Terminate\",\"Initiate Background Copy\",\"Flash\"]<\/code>",
"type" : "string"
            },
            "description" : "JSON string representing the list of commands that can be run using the runsessioncmd API\nExample output\n<code>[\"Terminate\",\"Initiate Background Copy\",\"Flash\"]<\/code>"
          }
        }
      }
    }
    ,
    "\/sessions/{name}/backups/{role}/{backupid}" : {
      "get" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>getBackupDetails<\/h2>\nGets detailed information for a given backup in a session.  Use getSessionInfo to get the list of backups in a session.\n\nProvides the following details\n<ol style=\"list-style-type:disc;\">\n<li><b>backupID<\/b>  ID for the given backup queried<\/li>\n<li><b>backupTime<\/b>  The time the backup was taken<\/li>\n<li><b>isValid<\/b>  Whether the backup is recoverable<\/li>\n<li><b>numCopySets<\/b>  The number of volumes that were in this backup<\/li>\n<li><b>backupVolumes<\/b>  A JSON list of volumes that were in the backup<\/li>\n<li><b>blockingExpansion<\/b>  Whether one or more volumes cannot expand their backup capacity yet due to this backup<\/li>\n<\/ol>\n\n<h3>Example curl<\/h3>\n<code>curl -X GET -k -H 'X-Auth-Token: 22dd90e234a6454eaa85201797f6d5d3' -H 'Content-Type: application/x-www-form-urlencoded' -i https://localhost:9559/CSM/web/sessions/SGC/backups/H1/1587578175<\/code>",
        "operationId" : "getBackupDetails",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "backupid",
            "in" : "path",
            "required" : true,
            "type" : "integer",
            "format" : "int32",
            "description" : "ID of the backup to get details for"
          },
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : "name of session"
          },
          {
            "name" : "role",
            "in" : "path",
            "type" : "string",
            "description" : "name of role where the backups reside (ex. \"H1\")"
          }
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n\n<code>{\"msg\":\"IWNR2800I\",\n\"resultText\":\"IWNR2800I [Apr 22, 2020 12:56:15 PM] A recoverable backup of all volumes in session SGC was created at 2020-04-22 12:56:15 CDT with an ID of 1587578175.\",\n\"numCopySets\":\"1\",\n\"backupID\":\"1587578175\",\n\"blockingExpansion\":\"false\",\n\"backupVolumes\":[\n{\"msg\":\"IWNR2819I\",\n\"resultText\":\"IWNR2819I [Apr 22, 2020 12:56:15 PM] A backup was created at 2020-04-22 12:56:15 CDT with an ID of 1587578175 for volume DS8000:2107.GXZ91:VOL:4005.\",\n\"volumeNickname\":\"DS8000:2107.GXZ91:VOL:4005\",\n\"volumeID\":\"DS8000:2107.GXZ91:VOL:4005\",\n\"inserts\":[\"2020-04-22 12:56:15 CDT\",\"1587578175\",\"DS8000:2107.GXZ91:VOL:4005\"],\n\"expansionBlocked\":\"false\",\n\"timestamp\":1587578175000}],\n\"isValid\":true,\n\"backupSeqName\":\"H1-B1\",\n\"backupTime\":\"2020-04-22 12:56:15 CDT\",\n\"inserts\":[\"SGC\",\"2020-04-22 12:56:15 CDT\",\"1587578175\"],\n\"timestamp\":1587578175000}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n\n<code>{\"msg\":\"IWNR2800I\",\n\"resultText\":\"IWNR2800I [Apr 22, 2020 12:56:15 PM] A recoverable backup of all volumes in session SGC was created at 2020-04-22 12:56:15 CDT with an ID of 1587578175.\",\n\"numCopySets\":\"1\",\n\"backupID\":\"1587578175\",\n\"blockingExpansion\":\"false\",\n\"backupVolumes\":[\n{\"msg\":\"IWNR2819I\",\n\"resultText\":\"IWNR2819I [Apr 22, 2020 12:56:15 PM] A backup was created at 2020-04-22 12:56:15 CDT with an ID of 1587578175 for volume DS8000:2107.GXZ91:VOL:4005.\",\n\"volumeNickname\":\"DS8000:2107.GXZ91:VOL:4005\",\n\"volumeID\":\"DS8000:2107.GXZ91:VOL:4005\",\n\"inserts\":[\"2020-04-22 12:56:15 CDT\",\"1587578175\",\"DS8000:2107.GXZ91:VOL:4005\"],\n\"expansionBlocked\":\"false\",\n\"timestamp\":1587578175000}],\n\"isValid\":true,\n\"backupSeqName\":\"H1-B1\",\n\"backupTime\":\"2020-04-22 12:56:15 CDT\",\n\"inserts\":[\"SGC\",\"2020-04-22 12:56:15 CDT\",\"1587578175\"],\n\"timestamp\":1587578175000}<\/code>"
          }
        }
      }
      ,
      "post" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>runBackupIDSessionCmd<\/h2>\nRun a specified command that requires a backup ID parameter on a specified SGC session.\nFor example, \"Recover Backup\" or \"Expire Backup\" commands, with the backup ID parameter, would be given to the session using this method.\nTo obtain the available commands call getAvailableCommands\n\n<h3>Example curl<\/h3>\n<code>curl -X POST -k -H 'X-Auth-Token: c91a8c7fa110490089f84d8454f6b403' -H 'Content-Type: application/x-www-form-urlencoded' -i https://localhost:9559/CSM/web/sessions/SGC/backups/H1/1587578524 --data 'cmd=Recover%20Backup'<\/code>",
        "operationId" : "runBackupIDSessionCmd",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "cmd",
            "in" : "formData",
            "type" : "string",
            "description" : ""
          },
          {
            "name" : "backupid",
            "in" : "path",
            "required" : true,
            "type" : "integer",
            "format" : "int32",
            "description" : "The ID of the backup to send to the run command"
          },
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : "The name of the session."
          },
          {
            "name" : "role",
            "in" : "path",
            "type" : "string",
            "description" : "The name of role where the backups reside"
          }
        ],
        "responses" : {
          "201" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1026I\",\"inserts\":[\"Recover Backup\",\"SGC\"],\"results\":[],\"msgTranslated\":\"IWNR1026I [Apr 24, 2020 4:47:51 PM] The Recover Backup command in the SGC session completed.\",\"timestamp\":1587764871881}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1026I\",\"inserts\":[\"Recover Backup\",\"SGC\"],\"results\":[],\"msgTranslated\":\"IWNR1026I [Apr 24, 2020 4:47:51 PM] The Recover Backup command in the SGC session completed.\",\"timestamp\":1587764871881}<\/code>"
          }
        }
      }
    }
    ,
    "\/sessions/{name}/checkcmd" : {
      "get" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>checkCommand<\/h2>\nThis command will check the command entered and return one or more warning, etc. prompts for a user to confirm on prior to executing the command.\n\n<h3>Example curl<\/h3>\n<code>curl -X GET -k -H 'X-Auth-Token: 180b08e4d54649eb840305d73b6dacbb' -H 'Content-Type: application/x-www-form-urlencoded' -i 'https://localhost:9559/CSM/web/sessions/MM/checkcmd?cmd=Terminate'<\/code>",
        "operationId" : "checkCommand",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : "The name of the session"
          },
          {
            "name" : "cmd",
            "in" : "query",
            "type" : "string",
            "description" : "The command to check"
          }
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1104I\",\"resultText\":\"IWNR1104I [Apr 21, 2020 4:55:39 PM] The command Terminate for session MM was checked successfully.\",\"cmdprompts\":[{\"msg\":\"IWNR1805W\",\"resultText\":\"IWNR1805W [Apr 21, 2020 4:55:39 PM] This command terminates all hardware relationships for the MM session. The target volumes will be unrecoverable. Data on Site 2 might not be usable. A Start command will require a full copy. Do you want to continue?\",\"type\":0,\"inserts\":[\"Site 2\",\"MM\"],\"timestamp\":1587506139660}],\"inserts\":[\"Terminate\",\"MM\"],\"timestamp\":1587506139660}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1104I\",\"resultText\":\"IWNR1104I [Apr 21, 2020 4:55:39 PM] The command Terminate for session MM was checked successfully.\",\"cmdprompts\":[{\"msg\":\"IWNR1805W\",\"resultText\":\"IWNR1805W [Apr 21, 2020 4:55:39 PM] This command terminates all hardware relationships for the MM session. The target volumes will be unrecoverable. Data on Site 2 might not be usable. A Start command will require a full copy. Do you want to continue?\",\"type\":0,\"inserts\":[\"Site 2\",\"MM\"],\"timestamp\":1587506139660}],\"inserts\":[\"Terminate\",\"MM\"],\"timestamp\":1587506139660}<\/code>"
          }
        }
      }
    }
    ,
    "\/sessions/{name}/checksnapgroupcmd" : {
      "post" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>checkSnapGroupCommand<\/h2>\nThis command will check the snap group command entered and return one or more warning, etc. prompts for a user to confirm on prior to executing the command.",
        "operationId" : "checkSnapGroupCommand",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "cmd",
            "in" : "formData",
            "type" : "string",
            "description" : "The snapgroup command to check"
          },
          {
            "name" : "groups",
            "in" : "formData",
            "type" : "string",
            "description" : "The snapgroup to check against"
          },
          {
            "name" : "options",
            "in" : "formData",
            "type" : "string",
            "description" : ""
          },
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : "The name of the session"
          }
        ],
        "responses" : {
          "201" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error"
          }
        }
      }
    }
    ,
    "\/sessions/{name}/consolemessages/{count}" : {
      "get" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>getLastCommandResults<\/h2>\nRetrieves the latest console messages tied to the session passed in.  Only the number of messages specified by count will be returned\n\n<h3>Example curl<\/h3>\n<code>curl -X GET -k -H 'X-Auth-Token: 8d72c750a81e429fa19cf6fd32d9f1ec' -H 'Content-Type: application/x-www-form-urlencoded' -i 'https://localhost:9559/CSM/web/sessions/8kGM/consolemessages/100'<\/code>",
        "operationId" : "getRecentSessionLogEvents",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "count",
            "in" : "path",
            "type" : "string",
            "description" : "The number of messages you wish to return.  Specify 0 to return all messages for the session (NOTE: there could be a LOT of messages so we do not recommend you returning all messages)"
          },
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : "The name of the session"
          }
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1602I\",\"resultText\":\"IWNR1602I [Feb 17, 2022 12:48:17 PM] Successfully retrieved session messages.\",\"logevents\":[{\"resultText\":\"IWNR1026I [Feb 17, 2022 12:48:17 PM] The Start H1->H2 command in the 8kMM session completed.\",\"eventnumber\":1645123697499,\"eventfilter\":\"com.ibm.csm.common.events.LogEvent\",\"createddate\":1645123697499,\"session\":\"8kMM\",\"msgid\":\"IWNR1026I\",\"time\":\"Thu\nFeb 17 12:48:17 CST 2022\",\"id\":65204,\"user\":\"csmadmin\",\"msgtype\":0,\"inserts\":\" Start H1->H2 8kMM\",\"timestamp\":1645114585300},{\"resultText\":\"IWNR1950I [Feb 17, 2022 12:48:17 PM] Session 8kMM changed from the Defined state to the Prepared state.\",\"eventnumber\":1645123697499,\"eventfilter\":\"com.ibm.csm.common.events.LogEvent\",\"createddate\":1645123697499,\"session\":\"8kMM\",\"msgid\":\"IWNR1950I\",\"time\":\"Thu\nFeb 17 12:48:17 CST 2022\",\"id\":65203,\"user\":\"Server\",\"msgtype\":0,\"inserts\":\" 8kMM Defined Prepared\",\"timestamp\":1645114585299}],\"inserts\":[],\"timestamp\":1645123697499}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1602I\",\"resultText\":\"IWNR1602I [Feb 17, 2022 12:48:17 PM] Successfully retrieved session messages.\",\"logevents\":[{\"resultText\":\"IWNR1026I [Feb 17, 2022 12:48:17 PM] The Start H1->H2 command in the 8kMM session completed.\",\"eventnumber\":1645123697499,\"eventfilter\":\"com.ibm.csm.common.events.LogEvent\",\"createddate\":1645123697499,\"session\":\"8kMM\",\"msgid\":\"IWNR1026I\",\"time\":\"Thu\nFeb 17 12:48:17 CST 2022\",\"id\":65204,\"user\":\"csmadmin\",\"msgtype\":0,\"inserts\":\" Start H1->H2 8kMM\",\"timestamp\":1645114585300},{\"resultText\":\"IWNR1950I [Feb 17, 2022 12:48:17 PM] Session 8kMM changed from the Defined state to the Prepared state.\",\"eventnumber\":1645123697499,\"eventfilter\":\"com.ibm.csm.common.events.LogEvent\",\"createddate\":1645123697499,\"session\":\"8kMM\",\"msgid\":\"IWNR1950I\",\"time\":\"Thu\nFeb 17 12:48:17 CST 2022\",\"id\":65203,\"user\":\"Server\",\"msgtype\":0,\"inserts\":\" 8kMM Defined Prepared\",\"timestamp\":1645114585299}],\"inserts\":[],\"timestamp\":1645123697499}<\/code>"
          }
        }
      }
    }
    ,
    "\/sessions/{name}/copysetmatches" : {
      "post" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>Not currently supported for external use<\/h2>",
        "operationId" : "getCopySetMatches",
        "produces" : [ "*/*" ],
        "parameters" : [
          {
            "name" : "ids",
            "in" : "formData",
            "type" : "string",
            "description" : ""
          },
          {
            "name" : "listenernumber",
            "in" : "formData",
            "required" : true,
            "type" : "integer",
            "format" : "int32",
            "description" : ""
          },
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : ""
          }
        ],
        "responses" : {
          "201" : {
            "schema" : {
"description" : "",
"type" : "string"
            },
            "description" : ""
          }
        }
      }
    }
    ,
    "\/sessions/{name}/copysets" : {
      "get" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>getAllCopysets<\/h2>\nReturns all the copy sets and their volumes that exist in the session\n\n<h3>Example curl:<\/h3>\n<code>curl -X GET -k -H 'X-Auth-Token: 52299d68e11247af9628b3bef16c2723' -H 'Content-Type: application/x-www-form-urlencoded' -i https://hostname:9559/CSM/web/sessions/8kGM/copysets<\/code>\n\n<h3> Principal JSON keys returned in response <\/h3>\n<ol style=\"list-style-type:disc;\">\n<li><b>copysetid<\/b> - The ID used for the copy set<\/li>\n<li><b>volumelist<\/b> - Denotes the start of the list of volumes that make up a copy set<\/li>\n<li><b>elementid<\/b> - The ID for one of the volumes in the copy set<\/li>\n<li><b>capacitytype<\/b> - The type that the capacity is defined in<\/li>\n<li><b>capacity<\/b> - The capacity for a volume in the copy set, in the units defined by capacitytype<\/li>\n<li><b>elementtype<\/b> - The type of volume in the copy setr<\/li>\n<li><b>manufacturer<\/b> - The manufacturer for the volume<\/li>\n<li><b>nickname<\/b> - The user defined name or volser for the volume<\/li>\n<\/ol>",
        "operationId" : "getAllCopysets",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : "The name of the session."
          }
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON string listing out all pairs and details for those pairs within the given role pair\nExample output for a session with 1 copyset which has 3 volumes (not all returned fields are shown):\n<code>[{\"volumelist\":\n[{\"elementid\":\"DS8000:2107.GXZ91:VOL:9000\",\n\"capacitytype\":\"Bytes\",\n\"capacity\":107374182400,\n\"elementtype\":\"FIXEDBLK\",\n\"manufacturer\":\"IBM\",\n\"nickname\":\"DS8000:2107.GXZ91:VOL:9000\",},\n{\"elementid\":\"DS8000:2107.GXZ91:VOL:9100\",\n\"capacitytype\":\"Bytes\",\n\"capacity\":107374182400,\n\"elementtype\":\"FIXEDBLK\",\n\"manufacturer\":\"IBM\",\n\"nickname\":\"DS8000:2107.GXZ91:VOL:9100\"},\n{\"elementid\":\"DS8000:2107.GXZ91:VOL:9200\",\n\"capacitytype\":\"Bytes\",\n\"capacity\":107374182400,\n\"elementtype\":\"FIXEDBLK\",\n\"manufacturer\":\"IBM\",\n\"nickname\":\"DS8000:2107.GXZ91:VOL:9200\"}]\n\"copysetid\":\"DS8000:2107.GXZ91:VOL:9000\"}]<\/code>",
"type" : "string"
            },
            "description" : "JSON string listing out all pairs and details for those pairs within the given role pair\nExample output for a session with 1 copyset which has 3 volumes (not all returned fields are shown):\n<code>[{\"volumelist\":\n[{\"elementid\":\"DS8000:2107.GXZ91:VOL:9000\",\n\"capacitytype\":\"Bytes\",\n\"capacity\":107374182400,\n\"elementtype\":\"FIXEDBLK\",\n\"manufacturer\":\"IBM\",\n\"nickname\":\"DS8000:2107.GXZ91:VOL:9000\",},\n{\"elementid\":\"DS8000:2107.GXZ91:VOL:9100\",\n\"capacitytype\":\"Bytes\",\n\"capacity\":107374182400,\n\"elementtype\":\"FIXEDBLK\",\n\"manufacturer\":\"IBM\",\n\"nickname\":\"DS8000:2107.GXZ91:VOL:9100\"},\n{\"elementid\":\"DS8000:2107.GXZ91:VOL:9200\",\n\"capacitytype\":\"Bytes\",\n\"capacity\":107374182400,\n\"elementtype\":\"FIXEDBLK\",\n\"manufacturer\":\"IBM\",\n\"nickname\":\"DS8000:2107.GXZ91:VOL:9200\"}]\n\"copysetid\":\"DS8000:2107.GXZ91:VOL:9000\"}]<\/code>"
          }
        }
      }
      ,
      "post" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>createCopysets<\/h2>\nAdd copy sets to a given session\n\n<h3>Example curl<\/h3>\n<code>curl -X POST -k -H 'X-Auth-Token: e69d4e0f6eaa4d619669bf000db44e42' -H 'Content-Type: application/x-www-form-urlencoded' -i https://localhost:9559/CSM/web/sessions/MM/copysets --data 'copysets=[[\"DS8000:2107.GXZ91:VOL:0001\",\"DS8000:2107.GXZ91:VOL:0101\"]]'<\/code>\n\n<h3>Example curl with roleOrder<\/h3>\n<code>curl -X POST -k -H 'X-Auth-Token: e69d4e0f6eaa4d619669bf000db44e42' -H 'Content-Type: application/x-www-form-urlencoded' -i https://localhost:9559/CSM/web/sessions/MM/copysets --data 'copysets=[[\"DS8000:2107.GXZ91:VOL:0001\",\"DS8000:2107.GXZ91:VOL:0101\"]]&roleOrder=[\"H1\",\"H2\"]'<\/code>",
        "operationId" : "createCopysets",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "copysets",
            "in" : "formData",
            "type" : "string",
            "description" : "List of copy sets to add to the session in JSON format"
          },
          {
            "name" : "roleOrder",
            "in" : "formData",
            "type" : "string",
            "description" : "Optional list of the role names depicting the order of the roles in the session, similar to a csv import of copysets  ex.  [\"H1\", \"H2\"]"
          },
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : "The name of the session."
          }
        ],
        "responses" : {
          "201" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1000I\",\"inserts\":[\"MM\"],\"results\":[{\"msg\":\"IWNR2001I\",\"inserts\":[\"MM\",\"DS8000:2107.GXZ91:VOL:0001\",\"DS8000:2107.GXZ91:VOL:0001(CSM001)\",\"DS8000:2107.GXZ91:VOL:0101(CSM101)\",\"\",\"H1-H2\"],\"msgTranslated\":\"IWNR2001I [Apr 21, 2020 4:30:54 PM] The pair was created in session MM for copy set with a copy set ID of DS8000:2107.GXZ91:VOL:0001, with a source volume ID of DS8000:2107.GXZ91:VOL:0001(CSM001), and a target volume ID of DS8000:2107.GXZ91:VOL:0101(CSM101).\",\"timestamp\":1587504654149}],\"msgTranslated\":\"IWNR1000I [Apr 21, 2020 4:30:54 PM] Copy sets were created for the session named MM.\",\"timestamp\":1587504654149}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1000I\",\"inserts\":[\"MM\"],\"results\":[{\"msg\":\"IWNR2001I\",\"inserts\":[\"MM\",\"DS8000:2107.GXZ91:VOL:0001\",\"DS8000:2107.GXZ91:VOL:0001(CSM001)\",\"DS8000:2107.GXZ91:VOL:0101(CSM101)\",\"\",\"H1-H2\"],\"msgTranslated\":\"IWNR2001I [Apr 21, 2020 4:30:54 PM] The pair was created in session MM for copy set with a copy set ID of DS8000:2107.GXZ91:VOL:0001, with a source volume ID of DS8000:2107.GXZ91:VOL:0001(CSM001), and a target volume ID of DS8000:2107.GXZ91:VOL:0101(CSM101).\",\"timestamp\":1587504654149}],\"msgTranslated\":\"IWNR1000I [Apr 21, 2020 4:30:54 PM] Copy sets were created for the session named MM.\",\"timestamp\":1587504654149}<\/code>"
          }
        }
      }
    }
    ,
    "\/sessions/{name}/copysets/download" : {
      "get" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>getAllCopysetsExportCSV<\/h2>\nThis method get all copysets for a session and export them to a csv file.\n\n<h3>Example curl<\/h3>\n<code>curl -X PUT -k -H 'X-Auth-Token: ebdd0df8e67c4317bac177967c3d1a7e' -H 'Content-Type: application/octet-stream' -i https://hostname:9559/CSM/web/sessions/8kGM/copysets/download --output copysets.csv <\/code>",
        "operationId" : "getAllCopysetsExportCSV",
        "produces" : [ "application/octet-stream" ],
        "parameters" : [
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : ""
          }
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "byte[] containing the file in the form or a .csv file  Use -o in curl to download the file.",
"type" : "file"
            },
            "description" : "byte[] containing the file in the form or a .csv file  Use -o in curl to download the file."
          }
        }
      }
    }
    ,
    "\/sessions/{name}/copysets/{devicename}" : {
      "get" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>Not currently supported for external use<\/h2>",
        "operationId" : "getSessionCopysetsByDevice",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "devicename",
            "in" : "path",
            "type" : "string",
            "description" : ""
          },
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : ""
          },
          {
            "name" : "subsystemname",
            "in" : "query",
            "type" : "string",
            "description" : ""
          }
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "",
"type" : "string"
            },
            "description" : ""
          }
        }
      }
    }
    ,
    "\/sessions/{name}/copysets/{id}/pairs" : {
      "get" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>getPairInfoByCopyset<\/h2>\nGets all pairs and their info for a given copy set\n\n<h3>Example curl<\/h3>\n<code>curl -X GET -k -H 'X-Auth-Token: 8d72c750a81e429fa19cf6fd32d9f1ec' -H 'Content-Type: application/x-www-form-urlencoded' -i 'https://localhost:9559/CSM/web/sessions/8kGM/copysets/DS8000:2107.GXZ91:VOL:9000/pairs'<\/code>",
        "operationId" : "getPairInfoByCopyset",
        "produces" : [ "*/*" ],
        "parameters" : [
          {
            "name" : "id",
            "in" : "path",
            "type" : "string",
            "description" : "The id of the copyset."
          },
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : "The name of the session."
          }
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\n<code>[{\"sourceid\":\"DS8000:2107.GXZ91:VOL:9000\",\n\"isshadowing\":true,\n\"lastresult\":{\"msg\":\"IWNR2733I\",\"inserts\":[\"2107.GXZ91\",\"8kGM\"],\"timestamp\":1587592114476},\n\"targetid\":\"DS8000:2107.GXZ91:VOL:9200\",\n\"targetnickname\":\"DS8000:2107.GXZ91:VOL:9200\",\n\"pendingstate\":null,\n\"isnew\":false,\n\"isconsistent\":false,\n\"isrecoverable\":true,\n\"copyset\":\"DS8000:2107.GXZ91:VOL:9000\",\n\"state\":\"Prepared\",\n\"seqname\":\"H1-J2\",\n\"sourcenickname\":\"DS8000:2107.GXZ91:VOL:9000\",\n\"timestamp\":\"n\\/a\"},\n{\"sourceid\":\"DS8000:2107.GXZ91:VOL:9100\",\n\"isshadowing\":true,\n\"lastresult\":{\"msg\":\"IWNR2016I\",\"inserts\":[\"8kGM\",\"DS8000:2107.GXZ91:VOL:9000\",\"DS8000:2107.GXZ91:VOL:9100\",\"DS8000:2107.GXZ91:VOL:9200\",\"\",\"H2-J2\"],\"timestamp\":1587572980817},\n\"targetid\":\"DS8000:2107.GXZ91:VOL:9200\",\n\"targetnickname\":\"DS8000:2107.GXZ91:VOL:9200\",\n\"pendingstate\":null,\n\"isnew\":false,\n\"isconsistent\":false,\n\"isrecoverable\":false,\n\"copyset\":\"DS8000:2107.GXZ91:VOL:9000\",\n\"state\":\"Target Available\",\n\"seqname\":\"H2-J2\",\n\"sourcenickname\":\"DS8000:2107.GXZ91:VOL:9100\",\n\"timestamp\":\"n\\/a\"},\n{\"sourceid\":\"DS8000:2107.GXZ91:VOL:9000\",\n\"isshadowing\":true,\n\"lastresult\":{\"msg\":\"IWNR2011I\",\"inserts\":[\"8kGM\",\"DS8000:2107.GXZ91:VOL:9000\",\"DS8000:2107.GXZ91:VOL:9000\",\"DS8000:2107.GXZ91:VOL:9100\",\"\",\"H1-H2\"],\"timestamp\":1587572980817},\n\"targetid\":\"DS8000:2107.GXZ91:VOL:9100\",\n\"targetnickname\":\"DS8000:2107.GXZ91:VOL:9100\",\n\"pendingstate\":null,\n\"isnew\":true,\n\"isconsistent\":false,\n\"isrecoverable\":false,\n\"copyset\":\"DS8000:2107.GXZ91:VOL:9000\",\n\"state\":\"Preparing\",\n\"seqname\":\"H1-H2\",\n\"sourcenickname\":\"DS8000:2107.GXZ91:VOL:9000\",\n\"timestamp\":\"n\\/a\"}]<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\n<code>[{\"sourceid\":\"DS8000:2107.GXZ91:VOL:9000\",\n\"isshadowing\":true,\n\"lastresult\":{\"msg\":\"IWNR2733I\",\"inserts\":[\"2107.GXZ91\",\"8kGM\"],\"timestamp\":1587592114476},\n\"targetid\":\"DS8000:2107.GXZ91:VOL:9200\",\n\"targetnickname\":\"DS8000:2107.GXZ91:VOL:9200\",\n\"pendingstate\":null,\n\"isnew\":false,\n\"isconsistent\":false,\n\"isrecoverable\":true,\n\"copyset\":\"DS8000:2107.GXZ91:VOL:9000\",\n\"state\":\"Prepared\",\n\"seqname\":\"H1-J2\",\n\"sourcenickname\":\"DS8000:2107.GXZ91:VOL:9000\",\n\"timestamp\":\"n\\/a\"},\n{\"sourceid\":\"DS8000:2107.GXZ91:VOL:9100\",\n\"isshadowing\":true,\n\"lastresult\":{\"msg\":\"IWNR2016I\",\"inserts\":[\"8kGM\",\"DS8000:2107.GXZ91:VOL:9000\",\"DS8000:2107.GXZ91:VOL:9100\",\"DS8000:2107.GXZ91:VOL:9200\",\"\",\"H2-J2\"],\"timestamp\":1587572980817},\n\"targetid\":\"DS8000:2107.GXZ91:VOL:9200\",\n\"targetnickname\":\"DS8000:2107.GXZ91:VOL:9200\",\n\"pendingstate\":null,\n\"isnew\":false,\n\"isconsistent\":false,\n\"isrecoverable\":false,\n\"copyset\":\"DS8000:2107.GXZ91:VOL:9000\",\n\"state\":\"Target Available\",\n\"seqname\":\"H2-J2\",\n\"sourcenickname\":\"DS8000:2107.GXZ91:VOL:9100\",\n\"timestamp\":\"n\\/a\"},\n{\"sourceid\":\"DS8000:2107.GXZ91:VOL:9000\",\n\"isshadowing\":true,\n\"lastresult\":{\"msg\":\"IWNR2011I\",\"inserts\":[\"8kGM\",\"DS8000:2107.GXZ91:VOL:9000\",\"DS8000:2107.GXZ91:VOL:9000\",\"DS8000:2107.GXZ91:VOL:9100\",\"\",\"H1-H2\"],\"timestamp\":1587572980817},\n\"targetid\":\"DS8000:2107.GXZ91:VOL:9100\",\n\"targetnickname\":\"DS8000:2107.GXZ91:VOL:9100\",\n\"pendingstate\":null,\n\"isnew\":true,\n\"isconsistent\":false,\n\"isrecoverable\":false,\n\"copyset\":\"DS8000:2107.GXZ91:VOL:9000\",\n\"state\":\"Preparing\",\n\"seqname\":\"H1-H2\",\n\"sourcenickname\":\"DS8000:2107.GXZ91:VOL:9000\",\n\"timestamp\":\"n\\/a\"}]<\/code>"
          }
        }
      }
    }
    ,
    "\/sessions/{name}/description" : {
      "post" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>modifyDescription<\/h2>\nChanges the description field for a given session. Each session has a field available for a user defined description.\n\n<h3>Example curl:<\/h3>\n<code>curl -X POST -k -H 'X-Auth-Token: c8f5a3eb11e74c4badaa066f0a493a99' -H 'Content-Type: application/x-www-form-urlencoded' -i https://hostname:9559/CSM/web/sessions/8kGM/description --data 'description=testing%20modify%20description'<\/code>",
        "operationId" : "modifyDescription",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "description",
            "in" : "formData",
            "type" : "string",
            "description" : "The new description to apply to the session"
          },
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : "The name of the session."
          }
        ],
        "responses" : {
          "201" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1124I\",\"inserts\":[\"8kGM\",\"testing modify description\"],\"msgTranslated\":\"IWNR1124I [Apr 13, 2020 5:30:01 PM] The description for session 8kGM was modified successfully. The new description is testing modify description.\",\"timestamp\":1586817001350}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1124I\",\"inserts\":[\"8kGM\",\"testing modify description\"],\"msgTranslated\":\"IWNR1124I [Apr 13, 2020 5:30:01 PM] The description for session 8kGM was modified successfully. The new description is testing modify description.\",\"timestamp\":1586817001350}<\/code>"
          }
        }
      }
    }
    ,
    "\/sessions/{name}/exporteseboxconstraints" : {
      "get" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>exportESEBoxConstraints<\/h2>\nGets a list of time frames for ESE box historical reporting data related to a given session.\nFor DS8000 this returns the earliest and most recent dates for ESE volume data\nNOTE: Dates returned in milliseconds since Jan 1, 1970\n\n<h3>Example curl<\/h3>\n<code>curl -X GET -k -H 'X-Auth-Token: 8d72c750a81e429fa19cf6fd32d9f1ec' -i https://localhost:9559/CSM/web/sessions/8kGM/exporteseboxconstraints<\/code>",
        "operationId" : "exportESEBoxConstraints",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : "The session name."
          }
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1262I\",\n\"resultText\":\"IWNR1262I [Apr 22, 2020 3:07:20 PM] The data for session {1} was exported. The CSV file is located on the server at: {2}\",\n\"inserts\":[],\n\"constraints\":[\n{\"sequence\":\"H1-J2\",\"datatype\":\"rpo\",\"endtime\":1587531600000,\"starttime\":1587531600000},\n{\"sequence\":\"H1-J2\",\"datatype\":\"oos\",\"endtime\":1587531600000,\"starttime\":1587531600000}],\n\"timestamp\":1587586040118}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1262I\",\n\"resultText\":\"IWNR1262I [Apr 22, 2020 3:07:20 PM] The data for session {1} was exported. The CSV file is located on the server at: {2}\",\n\"inserts\":[],\n\"constraints\":[\n{\"sequence\":\"H1-J2\",\"datatype\":\"rpo\",\"endtime\":1587531600000,\"starttime\":1587531600000},\n{\"sequence\":\"H1-J2\",\"datatype\":\"oos\",\"endtime\":1587531600000,\"starttime\":1587531600000}],\n\"timestamp\":1587586040118}<\/code>"
          }
        }
      }
    }
    ,
    "\/sessions/{name}/exporteseboxhistory" : {
      "put" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>exportESEBoxHistory<\/h2>\nExport ESE Box History for a session in csv format to a file\nTo determine possible dates call exportrpoconstraints and look at the dates for datatype and convert the milliseconds returned into YYYY-MM-DD format\n\n<h3>Example curl<\/h3>\n<code>curl -X PUT -k -H 'X-Auth-Token: 8d72c750a81e429fa19cf6fd32d9f1ec' -H 'Content-Type: application/x-www-form-urlencoded' -i https://localhost:9559/CSM/web/sessions/8kGM/exportrpohistory/H1-J2 --data 'starttime=2020-04-22&endtime=2020-04-22'<\/code>",
        "operationId" : "exportESEBoxHistory",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "endtime",
            "in" : "formData",
            "type" : "string",
            "description" : "End time YYYY-MM-DD"
          },
          {
            "name" : "starttime",
            "in" : "formData",
            "type" : "string",
            "description" : "Start time YYYY-MM-DD"
          },
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : "The session name."
          }
        ],
        "responses" : {
          "204" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1262I\",\"resultText\":\"IWNR1262I [Apr 22, 2020 3:51:19 PM] The data for session 8kGM was exported. The CSV file is located on the server at: \\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/exportdir\\/8kGMH1-J2rpo2020-04-22-15-51-19.csv\",\"filename\":\"\\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/exportdir\\/8kGMH1-J2rpo2020-04-22-15-51-19.csv\",\"lines\":236,\"inserts\":[\"8kGM\",\"\\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/exportdir\\/8kGMH1-J2rpo2020-04-22-15-51-19.csv\"],\"timestamp\":1587588679818}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1262I\",\"resultText\":\"IWNR1262I [Apr 22, 2020 3:51:19 PM] The data for session 8kGM was exported. The CSV file is located on the server at: \\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/exportdir\\/8kGMH1-J2rpo2020-04-22-15-51-19.csv\",\"filename\":\"\\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/exportdir\\/8kGMH1-J2rpo2020-04-22-15-51-19.csv\",\"lines\":236,\"inserts\":[\"8kGM\",\"\\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/exportdir\\/8kGMH1-J2rpo2020-04-22-15-51-19.csv\"],\"timestamp\":1587588679818}<\/code>"
          }
        }
      }
    }
    ,
    "\/sessions/{name}/exportesevolconstraints" : {
      "get" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>exportESEVolumeConstraints<\/h2>\nGets a list of time frames for ESE volume historical reporting data related to a given session.\nFor DS8000 this returns the earliest and most recent dates for ESE volume data\nNOTE: Dates returned in milliseconds since Jan 1, 1970\n\n<h3>Example curl<\/h3>\n<code>curl -X GET -k -H 'X-Auth-Token: 8d72c750a81e429fa19cf6fd32d9f1ec' -i https://localhost:9559/CSM/web/sessions/8kGM/exportesevolconstraints<\/code>",
        "operationId" : "exportESEVolumeConstraints",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : "The session name."
          }
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1262I\",\n\"resultText\":\"IWNR1262I [Apr 22, 2020 3:07:20 PM] The data for session {1} was exported. The CSV file is located on the server at: {2}\",\n\"inserts\":[],\n\"constraints\":[\n{\"sequence\":\"H1-J2\",\"datatype\":\"rpo\",\"endtime\":1587531600000,\"starttime\":1587531600000},\n{\"sequence\":\"H1-J2\",\"datatype\":\"oos\",\"endtime\":1587531600000,\"starttime\":1587531600000}],\n\"timestamp\":1587586040118}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1262I\",\n\"resultText\":\"IWNR1262I [Apr 22, 2020 3:07:20 PM] The data for session {1} was exported. The CSV file is located on the server at: {2}\",\n\"inserts\":[],\n\"constraints\":[\n{\"sequence\":\"H1-J2\",\"datatype\":\"rpo\",\"endtime\":1587531600000,\"starttime\":1587531600000},\n{\"sequence\":\"H1-J2\",\"datatype\":\"oos\",\"endtime\":1587531600000,\"starttime\":1587531600000}],\n\"timestamp\":1587586040118}<\/code>"
          }
        }
      }
    }
    ,
    "\/sessions/{name}/exportesevolumehistory" : {
      "put" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>exportESEVolumeHistory<\/h2>\nExport ESE Box History for a session in csv format to a file\nTo determine possible dates call exportrpoconstraints and look at the dates for datatype and convert the milliseconds returned into YYYY-MM-DD format\n\n<h3>Example curl<\/h3>\n<code>curl -X PUT -k -H 'X-Auth-Token: 8d72c750a81e429fa19cf6fd32d9f1ec' -H 'Content-Type: application/x-www-form-urlencoded' -i https://localhost:9559/CSM/web/sessions/8kGM/exportrpohistory/H1-J2 --data 'starttime=2020-04-22&endtime=2020-04-22'<\/code>",
        "operationId" : "exportESEVolumeHistory",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "endtime",
            "in" : "formData",
            "type" : "string",
            "description" : "End time YYYY-MM-DD"
          },
          {
            "name" : "starttime",
            "in" : "formData",
            "type" : "string",
            "description" : "Start time YYYY-MM-DD"
          },
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : "The session name."
          }
        ],
        "responses" : {
          "204" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1262I\",\"resultText\":\"IWNR1262I [Apr 22, 2020 3:51:19 PM] The data for session 8kGM was exported. The CSV file is located on the server at: \\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/exportdir\\/8kGMH1-J2rpo2020-04-22-15-51-19.csv\",\"filename\":\"\\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/exportdir\\/8kGMH1-J2rpo2020-04-22-15-51-19.csv\",\"lines\":236,\"inserts\":[\"8kGM\",\"\\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/exportdir\\/8kGMH1-J2rpo2020-04-22-15-51-19.csv\"],\"timestamp\":1587588679818}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1262I\",\"resultText\":\"IWNR1262I [Apr 22, 2020 3:51:19 PM] The data for session 8kGM was exported. The CSV file is located on the server at: \\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/exportdir\\/8kGMH1-J2rpo2020-04-22-15-51-19.csv\",\"filename\":\"\\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/exportdir\\/8kGMH1-J2rpo2020-04-22-15-51-19.csv\",\"lines\":236,\"inserts\":[\"8kGM\",\"\\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/exportdir\\/8kGMH1-J2rpo2020-04-22-15-51-19.csv\"],\"timestamp\":1587588679818}<\/code>"
          }
        }
      }
    }
    ,
    "\/sessions/{name}/exportlssooshistory/{seqname}" : {
      "put" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>exportlssooshistory<\/h2>\nExport LSS OOS History for a session in csv format to a file\nOnly DS8000 storage systems return OOS history.\nTo determine possible dates call exportrpoconstraints and look at the dates for datatype OOS and convert the milliseconds returned into YYYY-MM-DD format\n\n\n<h3>Example curl<\/h3>\n<code>curl -X PUT -k -H 'X-Auth-Token: 8d72c750a81e429fa19cf6fd32d9f1ec' -H 'Content-Type: application/x-www-form-urlencoded' -i https://localhost:9559/CSM/web/sessions/8kGM/exportlssooshistory/H1-J2 --data 'starttime=2020-04-22&endtime=2020-04-22'<\/code>",
        "operationId" : "exportLSSOOSHistory",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "endtime",
            "in" : "formData",
            "type" : "string",
            "description" : "End time YYYY-MM-DD"
          },
          {
            "name" : "starttime",
            "in" : "formData",
            "type" : "string",
            "description" : "Start time YYYY-MM-DD"
          },
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : "The session name."
          },
          {
            "name" : "seqname",
            "in" : "path",
            "type" : "string",
            "description" : "The role pair name to query"
          }
        ],
        "responses" : {
          "204" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1262I\",\"resultText\":\"IWNR1262I [Apr 22, 2020 3:40:36 PM] The data for session 8kGM was exported. The CSV file is located on the server at: \\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/exportdir\\/8kGMH1-J2lssoos2020-04-22-15-40-36.csv\",\"filename\":\"\\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/exportdir\\/8kGMH1-J2lssoos2020-04-22-15-40-36.csv\",\"lines\":115,\"inserts\":[\"8kGM\",\"\\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/exportdir\\/8kGMH1-J2lssoos2020-04-22-15-40-36.csv\"],\"timestamp\":1587588036939}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1262I\",\"resultText\":\"IWNR1262I [Apr 22, 2020 3:40:36 PM] The data for session 8kGM was exported. The CSV file is located on the server at: \\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/exportdir\\/8kGMH1-J2lssoos2020-04-22-15-40-36.csv\",\"filename\":\"\\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/exportdir\\/8kGMH1-J2lssoos2020-04-22-15-40-36.csv\",\"lines\":115,\"inserts\":[\"8kGM\",\"\\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/exportdir\\/8kGMH1-J2lssoos2020-04-22-15-40-36.csv\"],\"timestamp\":1587588036939}<\/code>"
          }
        }
      }
    }
    ,
    "\/sessions/{name}/exportrpoconstraints" : {
      "get" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>exportRPOConstraints<\/h2>\nGets a list of time frames for GM historical reporting data related to a given session.\nFor DS8000 this returns the earliest and most recent dates for RPO data and LSS OOS data\nFor other storage systems this returns the earliest and most recent dates for RPO Data only\nNOTE: Dates returned in milliseconds since Jan 1, 1970\n\n<h3>Example curl<\/h3>\n<code>curl -X GET -k -H 'X-Auth-Token: 8d72c750a81e429fa19cf6fd32d9f1ec' -i https://localhost:9559/CSM/web/sessions/8kGM/exportrpoconstraints<\/code>",
        "operationId" : "exportRPOConstraints",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : "The session name."
          }
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1262I\",\n\"resultText\":\"IWNR1262I [Apr 22, 2020 3:07:20 PM] The data for session {1} was exported. The CSV file is located on the server at: {2}\",\n\"inserts\":[],\n\"constraints\":[\n{\"sequence\":\"H1-J2\",\"datatype\":\"rpo\",\"endtime\":1587531600000,\"starttime\":1587531600000},\n{\"sequence\":\"H1-J2\",\"datatype\":\"oos\",\"endtime\":1587531600000,\"starttime\":1587531600000}],\n\"timestamp\":1587586040118}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1262I\",\n\"resultText\":\"IWNR1262I [Apr 22, 2020 3:07:20 PM] The data for session {1} was exported. The CSV file is located on the server at: {2}\",\n\"inserts\":[],\n\"constraints\":[\n{\"sequence\":\"H1-J2\",\"datatype\":\"rpo\",\"endtime\":1587531600000,\"starttime\":1587531600000},\n{\"sequence\":\"H1-J2\",\"datatype\":\"oos\",\"endtime\":1587531600000,\"starttime\":1587531600000}],\n\"timestamp\":1587586040118}<\/code>"
          }
        }
      }
    }
    ,
    "\/sessions/{name}/exportrpohistory/{seqname}" : {
      "put" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>exportRPOHistory<\/h2>\nExport RPO History for a session in csv format to a file\nTo determine possible dates call exportrpoconstraints and look at the dates for datatype OOS and convert the milliseconds returned into YYYY-MM-DD format\n\n<h3>Example curl<\/h3>\n<code>curl -X PUT -k -H 'X-Auth-Token: 8d72c750a81e429fa19cf6fd32d9f1ec' -H 'Content-Type: application/x-www-form-urlencoded' -i https://localhost:9559/CSM/web/sessions/8kGM/exportrpohistory/H1-J2 --data 'starttime=2020-04-22&endtime=2020-04-22'<\/code>",
        "operationId" : "exportRPOHistory",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "endtime",
            "in" : "formData",
            "type" : "string",
            "description" : "End time YYYY-MM-DD"
          },
          {
            "name" : "starttime",
            "in" : "formData",
            "type" : "string",
            "description" : "Start time YYYY-MM-DD"
          },
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : "The session name."
          },
          {
            "name" : "seqname",
            "in" : "path",
            "type" : "string",
            "description" : "The role pair name."
          }
        ],
        "responses" : {
          "204" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1262I\",\"resultText\":\"IWNR1262I [Apr 22, 2020 3:51:19 PM] The data for session 8kGM was exported. The CSV file is located on the server at: \\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/exportdir\\/8kGMH1-J2rpo2020-04-22-15-51-19.csv\",\"filename\":\"\\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/exportdir\\/8kGMH1-J2rpo2020-04-22-15-51-19.csv\",\"lines\":236,\"inserts\":[\"8kGM\",\"\\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/exportdir\\/8kGMH1-J2rpo2020-04-22-15-51-19.csv\"],\"timestamp\":1587588679818}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1262I\",\"resultText\":\"IWNR1262I [Apr 22, 2020 3:51:19 PM] The data for session 8kGM was exported. The CSV file is located on the server at: \\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/exportdir\\/8kGMH1-J2rpo2020-04-22-15-51-19.csv\",\"filename\":\"\\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/exportdir\\/8kGMH1-J2rpo2020-04-22-15-51-19.csv\",\"lines\":236,\"inserts\":[\"8kGM\",\"\\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/exportdir\\/8kGMH1-J2rpo2020-04-22-15-51-19.csv\"],\"timestamp\":1587588679818}<\/code>"
          }
        }
      }
    }
    ,
    "\/sessions/{name}/getlssooshistory/{seqname}" : {
      "put" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>getLSSOOSHistory<\/h2>\nGet LSS OOS History for a session in json format.\nOnly DS8000 storage systems return OOS history.\nTo determine possible dates call exportrpoconstraints and look at the dates for datatype OOS and convert the milliseconds returned into YYYY-MM-DD format\n\n<h3>Example curl<\/h3>\n<code>curl -X PUT -k -H 'X-Auth-Token: 8d72c750a81e429fa19cf6fd32d9f1ec' -H 'Content-Type: application/x-www-form-urlencoded' -i https://localhost:9559/CSM/web/sessions/8kGM/getlssooshistory/H1-J2 --data 'starttime=2020-04-22&endtime=2020-04-22'<\/code>",
        "operationId" : "getLSSOOSHistory",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "endtime",
            "in" : "formData",
            "type" : "string",
            "description" : "End time YYYY-MM-DD for the requested data"
          },
          {
            "name" : "starttime",
            "in" : "formData",
            "type" : "string",
            "description" : "Start time YYYY-MM-DD for the requested data"
          },
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : "The session name."
          },
          {
            "name" : "seqname",
            "in" : "path",
            "type" : "string",
            "description" : "The name of the role pair to query"
          }
        ],
        "responses" : {
          "204" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1284I\",\n\"resultText\":\"IWNR1284I [Apr 22, 2020 3:32:31 PM] The data for session 8kGM was retrieved.\",\n\"header\":[\"Query Time\",\"Hardware Time\",\"Interval\",\"Session Number\",\"Box Name\",\"LSS\",\"Out of Sync Tracks\"],\n\"lines\":[\n{\"Query Time\":1587573051951,\n\"Session Number\":\"0x5f\",\n\"Hardware Time\":1587576023000,\n\"LSS\":\"0x90\",\n\"Out of Sync Tracks\":0,\n\"Box Name\":\"2107.GXZ91\",\n\"Interval\":60}},\n{\"Query Time\":1587573174482,\n\"Session Number\":\"0x5f\",\n\"Hardware Time\":1587576146000,\n\"LSS\":\"0x90\",\n\"Out of Sync Tracks\":0,\n\"Box Name\":\"2107.GXZ91\",\n\"Interval\":60}],\n\"inserts\":[\"8kGM\"],\"timestamp\":1587587551801}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1284I\",\n\"resultText\":\"IWNR1284I [Apr 22, 2020 3:32:31 PM] The data for session 8kGM was retrieved.\",\n\"header\":[\"Query Time\",\"Hardware Time\",\"Interval\",\"Session Number\",\"Box Name\",\"LSS\",\"Out of Sync Tracks\"],\n\"lines\":[\n{\"Query Time\":1587573051951,\n\"Session Number\":\"0x5f\",\n\"Hardware Time\":1587576023000,\n\"LSS\":\"0x90\",\n\"Out of Sync Tracks\":0,\n\"Box Name\":\"2107.GXZ91\",\n\"Interval\":60}},\n{\"Query Time\":1587573174482,\n\"Session Number\":\"0x5f\",\n\"Hardware Time\":1587576146000,\n\"LSS\":\"0x90\",\n\"Out of Sync Tracks\":0,\n\"Box Name\":\"2107.GXZ91\",\n\"Interval\":60}],\n\"inserts\":[\"8kGM\"],\"timestamp\":1587587551801}<\/code>"
          }
        }
      }
    }
    ,
    "\/sessions/{name}/getrpohistory/{seqname}" : {
      "put" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>getRPOHistory<\/h2>\nGet RPO History for a session in json format.\nTo determine possible dates call exportrpoconstraints and look at the dates for datatype OOS and convert the milliseconds returned into YYYY-MM-DD format\n\n<h3>Example curl<\/h3>\n<code>curl -X PUT -k -H 'X-Auth-Token: 8d72c750a81e429fa19cf6fd32d9f1ec' -H 'Content-Type: application/x-www-form-urlencoded' -i https://localhost:9559/CSM/web/sessions/8kGM/getrpohistory/H1-J2 --data 'starttime=2020-04-22&endtime=2020-04-22'<\/code>",
        "operationId" : "getRPOHistory",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "endtime",
            "in" : "formData",
            "type" : "string",
            "description" : "End time YYYY-MM-DD"
          },
          {
            "name" : "starttime",
            "in" : "formData",
            "type" : "string",
            "description" : "Start time YYYY-MM-DD"
          },
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : "The session name."
          },
          {
            "name" : "seqname",
            "in" : "path",
            "type" : "string",
            "description" : "The role pair name."
          }
        ],
        "responses" : {
          "204" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\n\"msg\":\"IWNR1284I\",\n\"resultText\":\"IWNR1284I [Apr 22, 2020 3:43:44 PM] The data for session 8kGM was retrieved.\",\n\"header\":[\"Query Time\",\"Hardware Time\",\"Interval\",\"Master Session Number\",\"Master Box Name\",\"Master LSS\",\"Master State\",\"Last Consistency Group Formation Time\",\"Average RPO\",\"RPO at Time of Last Query\",\"Successful Consistency Groups in Interval\",\"Number Failed Consistency Groups in Interval\",\"Number Failed Consistency Groups Since Last Successful\",\"Total LSSs\",\"Total Out of Sync Tracks\",\"Total Joined\",\"Total Suspended\",\"Most Recent Consistency Group Error\",\"Most Recent Consistency Group Error State\"],\n\"lines\":[\n{\"Query Time\":1587572988562,\n\"Master LSS\":\"0x90\",\n\"Average RPO\":0,\n\"Total Out of Sync Tracks\":0,\n\"Master Session Number\":\"0x5f\",\n\"Master State\":\"RUNNING\",\n\"Total Joined\":2,\n\"Number Failed Consistency Groups Since Last Successful\":0,\n\"Most Recent Consistency Group Error State\":\"NOT_APPLICABLE\",\n\"Master Box Name\":\"2107.GXZ91\",\n\"Last Consistency Group Formation Time\":1587575960000,\n\"Successful Consistency Groups in Interval\":0,\n\"Most Recent Consistency Group Error\":0,\n\"Total Suspended\":0,\n\"Hardware Time\":1587575960000,\n\"Number Failed Consistency Groups in Interval\":0,\n\"RPO at Time of Last Query\":0,\"Interval\":60,\"Total LSSs\":1},\n{\"Query Time\":1587573051951,\n\"Master LSS\":\"0x90\",\n\"Average RPO\":1500,\n\"Total Out of Sync Tracks\":0,\n\"Master Session Number\":\"0x5f\",\n\"Master State\":\"RUNNING\",\n\"Total Joined\":2,\n\"Number Failed Consistency Groups Since Last Successful\":0,\n\"Most Recent Consistency Group Error State\":\"NOT_APPLICABLE\",\n\"Master Box Name\":\"2107.GXZ91\",\n\"Last Consistency Group Formation Time\":1587576023000,\n\"Successful Consistency Groups in Interval\":63,\n\"Most Recent Consistency Group Error\":0,\n\"Total Suspended\":0,\n\"Hardware Time\":1587576023000,\n\"Number Failed Consistency Groups in Interval\":0,\n\"RPO at Time of Last Query\":0,\n\"Interval\":60,\"Total LSSs\":1}],\n\"inserts\":[\"8kGM\"],\n\"timestamp\":1587588224588}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\n\"msg\":\"IWNR1284I\",\n\"resultText\":\"IWNR1284I [Apr 22, 2020 3:43:44 PM] The data for session 8kGM was retrieved.\",\n\"header\":[\"Query Time\",\"Hardware Time\",\"Interval\",\"Master Session Number\",\"Master Box Name\",\"Master LSS\",\"Master State\",\"Last Consistency Group Formation Time\",\"Average RPO\",\"RPO at Time of Last Query\",\"Successful Consistency Groups in Interval\",\"Number Failed Consistency Groups in Interval\",\"Number Failed Consistency Groups Since Last Successful\",\"Total LSSs\",\"Total Out of Sync Tracks\",\"Total Joined\",\"Total Suspended\",\"Most Recent Consistency Group Error\",\"Most Recent Consistency Group Error State\"],\n\"lines\":[\n{\"Query Time\":1587572988562,\n\"Master LSS\":\"0x90\",\n\"Average RPO\":0,\n\"Total Out of Sync Tracks\":0,\n\"Master Session Number\":\"0x5f\",\n\"Master State\":\"RUNNING\",\n\"Total Joined\":2,\n\"Number Failed Consistency Groups Since Last Successful\":0,\n\"Most Recent Consistency Group Error State\":\"NOT_APPLICABLE\",\n\"Master Box Name\":\"2107.GXZ91\",\n\"Last Consistency Group Formation Time\":1587575960000,\n\"Successful Consistency Groups in Interval\":0,\n\"Most Recent Consistency Group Error\":0,\n\"Total Suspended\":0,\n\"Hardware Time\":1587575960000,\n\"Number Failed Consistency Groups in Interval\":0,\n\"RPO at Time of Last Query\":0,\"Interval\":60,\"Total LSSs\":1},\n{\"Query Time\":1587573051951,\n\"Master LSS\":\"0x90\",\n\"Average RPO\":1500,\n\"Total Out of Sync Tracks\":0,\n\"Master Session Number\":\"0x5f\",\n\"Master State\":\"RUNNING\",\n\"Total Joined\":2,\n\"Number Failed Consistency Groups Since Last Successful\":0,\n\"Most Recent Consistency Group Error State\":\"NOT_APPLICABLE\",\n\"Master Box Name\":\"2107.GXZ91\",\n\"Last Consistency Group Formation Time\":1587576023000,\n\"Successful Consistency Groups in Interval\":63,\n\"Most Recent Consistency Group Error\":0,\n\"Total Suspended\":0,\n\"Hardware Time\":1587576023000,\n\"Number Failed Consistency Groups in Interval\":0,\n\"RPO at Time of Last Query\":0,\n\"Interval\":60,\"Total LSSs\":1}],\n\"inserts\":[\"8kGM\"],\n\"timestamp\":1587588224588}<\/code>"
          }
        }
      }
    }
    ,
    "\/sessions/{name}/group" : {
      "post" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>setSessionGroup<\/h2>\nChanges the user defined group name for a given session. A user defined group name can help in sorting and filtering sessions.\n\n<h3>Example curl:<\/h3>\n<code>curl -X POST -k -H 'X-Auth-Token: c8f5a3eb11e74c4badaa066f0a493a99' -H 'Content-Type: application/x-www-form-urlencoded' -i https://hostname:9559/CSM/web/sessions/8kGM/group --data group=testGroup<\/code>",
        "operationId" : "setSessionGroup",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "group",
            "in" : "formData",
            "type" : "string",
            "description" : "The name of the user defined group to set on the sessoin"
          },
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : "The name of the session."
          }
        ],
        "responses" : {
          "201" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1127I\",\"inserts\":[\"testGroup\"],\"results\":[{\"msg\":\"IWNR1128I\",\"inserts\":[\"8kGM\",\"testGroup\"],\"msgTranslated\":\"IWNR1128I [Apr 13, 2020 5:32:42 PM] The set session group command was able to assign session 8kGM to group testGroup successfully.\",\"timestamp\":1586817162298}],\"msgTranslated\":\"IWNR1127I [Apr 13, 2020 5:32:42 PM] The set session group command for group testGroup was successful.\",\"timestamp\":1586817162298}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1127I\",\"inserts\":[\"testGroup\"],\"results\":[{\"msg\":\"IWNR1128I\",\"inserts\":[\"8kGM\",\"testGroup\"],\"msgTranslated\":\"IWNR1128I [Apr 13, 2020 5:32:42 PM] The set session group command was able to assign session 8kGM to group testGroup successfully.\",\"timestamp\":1586817162298}],\"msgTranslated\":\"IWNR1127I [Apr 13, 2020 5:32:42 PM] The set session group command for group testGroup was successful.\",\"timestamp\":1586817162298}<\/code>"
          }
        }
      }
    }
    ,
    "\/sessions/{name}/hyperswap_rolepair/{hyperswap_rolepair}" : {
      "post" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>externalHyperSwapManagement<\/h2>\nAllows an external management tool to externally set the state for HyperSwap on a session/role pair indicating that a swap could occur\nNOTE: This should only be called by an external product to coordinate with the session when HyperSwap capabilities are managed outside the session.\nThe session itself does nothing to validate the HyperSwap state\n\n<h3>Example curl:<\/h3>\n<code>curl -X POST -k -H 'X-Auth-Token: c8f5a3eb11e74c4badaa066f0a493a99' -H 'Content-Type: application/x-www-form-urlencoded' -i https://hostname:9559/CSM/web/sessions/MM/hyperswap_rolepair/H1-H2 --data hyperswap_state=TurnedOff<\/code>",
        "operationId" : "externalHyperSwapManagement",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "hyperswap_state",
            "in" : "formData",
            "type" : "string",
            "description" : "The HyperSwap state to set. Possible values:\n<ol style=\"list-style-type:disc;\">\n<li>HS_Capable<\/li>\n<li>HS_Disabled<\/li>\n<li>TurnedOff<\/li>\n<\/ol>"
          },
          {
            "name" : "hyperswap_rolepair",
            "in" : "path",
            "type" : "string",
            "description" : "Name of the role pair in the given session to set a HyperSwap state for"
          },
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : "Name of the session to set the HyperSwap state"
          }
        ],
        "responses" : {
          "201" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1287I\",\"inserts\":[\"MM\",\"H1-H2\",\"TurnedOff\"],\"msgTranslated\":\"IWNR1287I [Apr 13, 2020 5:40:11 PM] The HyperSwap status for session MM and role pair H1-H2 was successfully set to TurnedOff.\",\"timestamp\":1586817611584}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1287I\",\"inserts\":[\"MM\",\"H1-H2\",\"TurnedOff\"],\"msgTranslated\":\"IWNR1287I [Apr 13, 2020 5:40:11 PM] The HyperSwap status for session MM and role pair H1-H2 was successfully set to TurnedOff.\",\"timestamp\":1586817611584}<\/code>"
          }
        }
      }
    }
    ,
    "\/sessions/{name}/hyperswap_rolepair/{hyperswap_rolepair}/event_name/{event_name}" : {
      "post" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>externalHyperSwapEventNotification<\/h2>\nAllows an external caller to indicate to the session that a HyperSwap event has occurred.\nThe event passed in will trigger the session to perform any actions necessary due to the event.\n\n<h3>Example curl:<\/h3>\n<code>curl -X POST -k -H 'X-Auth-Token: c8f5a3eb11e74c4badaa066f0a493a99' -H 'Content-Type: application/x-www-form-urlencoded' -i 'https://hostname:9559/CSM/web/sessions/MM/hyperswap_rolepair/H1-H2/event_name/hyperswap%20event'<\/code>",
        "operationId" : "externalHyperSwapEventNotification",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "event_name",
            "in" : "path",
            "type" : "string",
            "description" : "The name of the event. Possible values:\n<ol style=\"list-style-type:disc;\">\n<li>\"hyperswap event\"<\/li>\n<li>\"hyperswap h1h2 event\"<\/li>\n<li>\"hyperswap h1h3 event\"<\/li>\n<li>\"hyperswap h2h3 event\"<\/li>\n<li>\"hyperswap h3h4 event\"<\/li>\n<\/ol>"
          },
          {
            "name" : "hyperswap_rolepair",
            "in" : "path",
            "type" : "string",
            "description" : "Name of the role pair in the session that had the event"
          },
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : "Name of the session to issue the event to"
          }
        ],
        "responses" : {
          "201" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1290I\",\"inserts\":[\"hyperswap event\",\"MM\",\"H1-H2\"],\"msgTranslated\":\"IWNR1290I [Apr 13, 2020 5:48:20 PM] The external HyperSwap event hyperswap event for session MM and role pair H1-H2 was successfully processed.\",\"timestamp\":1586818100543}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1290I\",\"inserts\":[\"hyperswap event\",\"MM\",\"H1-H2\"],\"msgTranslated\":\"IWNR1290I [Apr 13, 2020 5:48:20 PM] The external HyperSwap event hyperswap event for session MM and role pair H1-H2 was successfully processed.\",\"timestamp\":1586818100543}<\/code>"
          }
        }
      }
    }
    ,
    "\/sessions/{name}/lastresults" : {
      "get" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>getLastCommandResults<\/h2>\nRetrieves the latest command results set on the pairs of the session specified.\n\n<h3>Example curl<\/h3>\n<code>curl -X GET -k -H 'X-Auth-Token: 8d72c750a81e429fa19cf6fd32d9f1ec' -H 'Content-Type: application/x-www-form-urlencoded' -i 'https://localhost:9559/CSM/web/sessions/8kGM/lastresults?types=[1,2,3]'<\/code>",
        "operationId" : "getLastCommandResults",
        "produces" : [ "*/*" ],
        "parameters" : [
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : "The name of the session"
          },
          {
            "name" : "types",
            "in" : "query",
            "type" : "string",
            "description" : "An array of the types of messages to return.  The type of messages, 1 for info, 2 for warning, 3 for errors."
          }
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1575I\",\"resultText\":\"IWNR1575I [Apr 22, 2020 4:17:45 PM] The last command results for session 8kGM were successfully obtained.\",\"inserts\":[\"8kGM\"],\"timestamp\":1587590265847}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1575I\",\"resultText\":\"IWNR1575I [Apr 22, 2020 4:17:45 PM] The last command results for session 8kGM were successfully obtained.\",\"inserts\":[\"8kGM\"],\"timestamp\":1587590265847}<\/code>"
          }
        }
      }
    }
    ,
    "\/sessions/{name}/options" : {
      "get" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>getOptions<\/h2>\nGets the options for the given session.  The results returned from this method will vary depending on the session type.\n\n<h3>Example curl<\/h3>\n<code>curl -X GET -k -H 'X-Auth-Token: 8d72c750a81e429fa19cf6fd32d9f1ec' -H 'Content-Type: application/x-www-form-urlencoded' -i https://localhost:9559/CSM/web/sessions/8kGM/options<\/code>",
        "operationId" : "getOptions",
        "produces" : [ "*/*" ],
        "parameters" : [
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : "The name of the session."
          }
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON String representing the result of the command.\nSample result returning all the options for a DS8000 GM session\nNOTE: the \"type\" value for each option is what should be used for setOptions RESTApi.  If type = unsupportedRestType then option can't be set through REST interface\n<code>[{\"optionsname\":\"RPO_SEVERE_LEVEL_THRESHOLD\",\"min\":0,\"usercmdoptions\":null,\"max\":65535,\"thresholdLevel\":0,\"type\":\"rposeverelevelthreshold\",\"sequencename\":null},\n{\"optionsname\":\"RESET_SECONDARY_RESERVE\",\"min\":0,\"usercmdoptions\":null,\"max\":65535,\"isSet\":false,\"type\":\"resetsecondaryreserve\",\"sequencename\":null},\n{\"optionsname\":\"XDCCoordinationInterval\",\"min\":0,\"usercmdoptions\":null,\"max\":65535,\"chillin_timer\":50,\"type\":\"xdccoordinationintervaltime\",\"sequencename\":null},\n{\"optionsname\":\"Re-flash journal after recover\",\"min\":0,\"usercmdoptions\":null,\"max\":65535,\"isSet\":true,\"type\":\"flashtojournalafterrecovery\",\"sequencename\":null},\n{\"optionsname\":\"RPO_WARNING_LEVEL_THRESHOLD\",\"min\":0,\"usercmdoptions\":null,\"max\":65535,\"thresholdLevel\":0,\"type\":\"rpowarninglevelthreshold\",\"sequencename\":null},\n{\"optionsname\":\"MaxCGDrainTime\",\"croosin_timer\":240,\"min\":0,\"usercmdoptions\":null,\"max\":65535,\"type\":\"maxcgdraintime\",\"sequencename\":null},\n{\"optionsname\":\"RPO\",\"min\":35,\"usercmdoptions\":null,\"max\":150,\"type\":\"rpo\",\"sequencename\":null,\"desiredRPO\":45},\n{\"optionsname\":\"FAIL_IF_TGT_ONLINE\",\"min\":0,\"usercmdoptions\":null,\"max\":65535,\"isSet\":true,\"type\":\"mmfailiftgtonline\",\"sequencename\":null}]<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.\nSample result returning all the options for a DS8000 GM session\nNOTE: the \"type\" value for each option is what should be used for setOptions RESTApi.  If type = unsupportedRestType then option can't be set through REST interface\n<code>[{\"optionsname\":\"RPO_SEVERE_LEVEL_THRESHOLD\",\"min\":0,\"usercmdoptions\":null,\"max\":65535,\"thresholdLevel\":0,\"type\":\"rposeverelevelthreshold\",\"sequencename\":null},\n{\"optionsname\":\"RESET_SECONDARY_RESERVE\",\"min\":0,\"usercmdoptions\":null,\"max\":65535,\"isSet\":false,\"type\":\"resetsecondaryreserve\",\"sequencename\":null},\n{\"optionsname\":\"XDCCoordinationInterval\",\"min\":0,\"usercmdoptions\":null,\"max\":65535,\"chillin_timer\":50,\"type\":\"xdccoordinationintervaltime\",\"sequencename\":null},\n{\"optionsname\":\"Re-flash journal after recover\",\"min\":0,\"usercmdoptions\":null,\"max\":65535,\"isSet\":true,\"type\":\"flashtojournalafterrecovery\",\"sequencename\":null},\n{\"optionsname\":\"RPO_WARNING_LEVEL_THRESHOLD\",\"min\":0,\"usercmdoptions\":null,\"max\":65535,\"thresholdLevel\":0,\"type\":\"rpowarninglevelthreshold\",\"sequencename\":null},\n{\"optionsname\":\"MaxCGDrainTime\",\"croosin_timer\":240,\"min\":0,\"usercmdoptions\":null,\"max\":65535,\"type\":\"maxcgdraintime\",\"sequencename\":null},\n{\"optionsname\":\"RPO\",\"min\":35,\"usercmdoptions\":null,\"max\":150,\"type\":\"rpo\",\"sequencename\":null,\"desiredRPO\":45},\n{\"optionsname\":\"FAIL_IF_TGT_ONLINE\",\"min\":0,\"usercmdoptions\":null,\"max\":65535,\"isSet\":true,\"type\":\"mmfailiftgtonline\",\"sequencename\":null}]<\/code>"
          }
        }
      }
      ,
      "put" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>setOptions<\/h2>\nSets Options for a given session.  Call getOptions to get a list of the valid options for a session.  The \"type\" field returned by getOptions is the name of the option to use in this restcall.\n\nFor example when retrieving the RPO on a DS8000 GM session, getOptions will return\n<code>{\"optionsname\":\"RPO\",\"min\":35,\"usercmdoptions\":null,\"max\":150,\"type\":\"rpo\",\"sequencename\":null,\"desiredRPO\":45}<\/code>\n\nTo set options build an array of options in the \"options\" FormParam where type matches what is returned in \"type\" from getOptions and then \"properties\" defines and array of values to set on that option.\n\nFor the RPO option above, to change the desiredRPO from 45 back to 0 we would define the \"options\" form parameter like the following:\n<code>options=[{\"type\":\"rpo\",\"properties\":[{\"desiredrpo\":0}]}]<\/code>\n\n<b>NOTE: if getOptions returns the type as \"unsupportedRestType\" then calling this API for that option is not currently supported<\/b>\n\n\nThe following are examples for setting certain options on CSM sessions.\n<\/br>\n<b>DS8000 related options<\/b>\n<\/br>\n<b>Setting the Consistency Group Interval Time (RPO) on a GM session<\/b>\n<code>options=[{\"type\":\"rpo\",\"properties\":[{\"desiredrpo\":0}]}]<\/code>\n\n<b>Setting the Maximum CG Drain Time on GM sessions<\/b>\n<code>options=[{\"type\":\"maxcgdraintime\",\"properties\":[{\"sequencename\":\"H1-J2\",\"crossintimer\":240}]}]<\/code>\n\n<b>Setting the Maximum Coordination Interval on GM sessions<\/b>\n<code>options=[{\"type\":\"xdccoordinationintervaltime\",\"properties\":[{\"sequencename\":\"H1-J2\",\"chillintimer\":50}]}]<\/code>\n\n<b>Setting the RPO Warning Level Threshold for a GM session<\/b>\n<code>options=[{\"type\":\"rpowarninglevelthreshold\",\"properties\":[{\"thresholdlevel\":60, \"sequencename\":\"H1-J2\"}]}]<\/code>\n\n<b>Setting the RPO Severe Level Threshold for a GM session<\/b>\n<code>options=[{\"type\":\"rposeverelevelthreshold\",\"properties\":[{\"thresholdlevel\":60, \"sequencename\":\"H1-J2\"}]}]<\/code>\n\n<b>Setting the option to disable the reflash to the journal after a recover on GM sessions<\/b>\n<code>options=[{\"type\":\"flashtojournalafterrecovery\",\"properties\":[{\"set\":false}]}]<\/code>\n\n<b>Set the freeze Policy for MM sessions.  Setting to false will consistently suspend the session but release I/O once suspended.  Setting to true will prevent I/O to the primaries after the suspend. <\/b>\n<code>options=[{\"type\":\"freezepolicy\",\"properties\":[{\"set\":false}]}]<\/code>\n\n<b>Set the option to Manage the H1H2 role pair with z/OS HyperSwap<\/b>\n<code>options=[{\"type\":\"hyperswap\",\"properties\":[{\"set\":true}]}]<\/code>\n\n<b>Set z/OS HyperSwap management options for a loaded configuration<\/b>\n<code>options=[{\"type\":\"mmhyperswap\",\"properties\":[{\"hyperswapenabled\":true,\"configurationdataload\":false,\"plannedswap\":false,\"unplannedswap\":false,\"resetinusesecondaries\":false,\"unboxsecondaries\":false}]}]<\/code>\n\n<b>Set z/OS sysplex association for a session<\/b>\n<code>options=[{\"type\":\"SYSPLEX\",\"properties\":[{\"associationName\":\"LOCAL\",}]}]<\/code>\n\n<b>Set the option to fail a start of MM/GC pairs if the targets are online (CKD only)<\/b>\n<code>options=[{\"type\":\"mmfailiftgtonline\",\"properties\":[{\"set\":true}]}]<\/code>\n\n<b>Set the option to reset any secondary reserves on pairs during the start<\/b>\n<code>options=[{\"type\":\"resetsecondaryreserve\",\"properties\":[{\"set\":true}]}]<\/code>\n\n<b>Set the option to enable Hardened Freeze support on a session<\/b>\n<code>options=[{\"type\":\"zoshardenedfreeze\",\"properties\":[{\"set\":true}]}]<\/code>\n\n<b>Set options on a FC session.  Possible values for usersettableoptions are: NO_COPY, PERSISTENT, INCREMENTAL, ALLOW_PPRC_PRIMARY, PMIR_NO, PMIR_PREFERRED, PMIR_REQUIRED<\/b>\n<code>options=[{\"type\":\"essfc\",\"properties\":[{\"sequencename\":\"H1-T1\",\"usersettableoptions\":\"PERSISTENT,NO_COPY\"}]}]<\/code>\n\n<b>Set the backup frequency allowed on a Safeguarded Copy session in mins<\/b>\n<code>options=[{\"type\":\"backupfrequency\",\"properties\":[{\"frequency\":30}]}]<\/code>\n\n<b>Set the backup retention time for a Safeguarded Copy session in hrs<\/b>\n<code>options=[{\"type\":\"backupretention\",\"properties\":[{\"retention\":24}]}]<\/code>\n\n<b>Set the recovery options for a Safeguarded Copy session.  Possible values for usersettableoptions are: SGC_BACKGROUND_COPY and SGC_RECOVER_PERSISTENT<\/b>\n<code>options=[{\"type\":\"backuprecovery\",\"properties\":[{\"usersettableoptions\":\"SGC_BACKGROUND_COPY,SGC_RECOVER_PERSISTENT\"}]}]<\/code>\n\n\n\n<\/br>\n<b>Spectrum Virtualize related options<\/b>\n<\/br>\n<b>Setting the cycle period for Spectrum Virtualize sessions<\/b>\n<code>options=[{\"type\":\"cycleperiod\",\"properties\":[{\"cycleperiod\":6000}]}]<\/code>\n\n<b>Setting the FC otions on Spectrum Virtualize FC sessions<\/b>\n<code>options=[{\"type\":\"svcfc\",\"properties\":[{\"sequencename\":\"H1-T1\",\"backgroundcopyrate\":0,\"incremental\":false}]}]<\/code>\n\n<b>Enable Change Volumes on GMCV sessions<\/b>\n<code>options=[{\"type\":\"enablechangevolume\",\"properties\":[{\"set\":true}]}]<\/code>\n\n<b>Enable Auto Restart on Spectrum Virtualize sessions for 1720/1920 suspensions<\/b>\n<code>options=[{\"type\":\"enableautorestart\",\"properties\":[{\"set\":true,\"delay\":120}]}]<\/code>\n\n\n\n\n\n<h3>Example curl<\/h3>\n<code>curl -X PUT -k -H 'X-Auth-Token: 8d72c750a81e429fa19cf6fd32d9f1ec' -H 'Content-Type: application/x-www-form-urlencoded' -i https://localhost:9559/CSM/web/sessions/8kGM/options --data 'options=%5B%7B%22type%22%3A%22rpo%22%2C%22properties%22%3A%22%5B%7B'\\''min'\\''%3A35%2C'\\''max'\\''%3A150%2C'\\''desiredrpo'\\''%3A78%7D%5D%22%7D%5D'<\/code>",
        "operationId" : "setOptions",
        "produces" : [ "*/*" ],
        "parameters" : [
          {
            "name" : "options",
            "in" : "formData",
            "type" : "string",
            "description" : "List of options and associated properties in the following format:\n<code>options=[{\"type\":\"nameofoption\", \"properties\":[{values to set}]\"},{\"type\":\"nameofoption\", \"properties\":[{values to set}]}]<\/code>\nEx. [{\"type\":\"rpo\",\"properties\":[{\"desiredrpo\":78}]},{\"type\":\"rpowarninglevelthreshold\",\"properties\":[....]}]"
          },
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : "The name of the session."
          }
        ],
        "responses" : {
          "204" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1228I\",\"inserts\":[\"8kGM\"],\"msgTranslated\":\"IWNR1228I [Apr 22, 2020 4:48:12 PM] The options for session 8kGM have been set successfully.\",\"timestamp\":1587592092225}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1228I\",\"inserts\":[\"8kGM\"],\"msgTranslated\":\"IWNR1228I [Apr 22, 2020 4:48:12 PM] The options for session 8kGM have been set successfully.\",\"timestamp\":1587592092225}<\/code>"
          }
        }
      }
    }
    ,
    "\/sessions/{name}/pairs/{seqname}" : {
      "get" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>getPairInfo<\/h2>\nGets information for all the pairs in a given role pair.\n\n<h3>Example curl:<\/h3>\n<code>curl -X GET -k -H 'X-Auth-Token: c8f5a3eb11e74c4badaa066f0a493a99' -H 'Content-Type: application/x-www-form-urlencoded' -i https://hostname:9559/CSM/web/sessions/8kGM/pairs/H1-H2 <\/code>\n\n<h3> Principal JSON keys returned in response <\/h3>\n<ol style=\"list-style-type:disc;\">\n<li><b>sourceid<\/b> - The ID for the source volume<\/li>\n<li><b>sourcenickname<\/b> - The nickname for the source volume<\/li>\n<li><b>targetid<\/b> - The ID for the target volume<\/li>\n<li><b>targetnickname<\/b> - The nickname for the target volume<\/li>\n<li><b>state<\/b> - The current state for the pair<\/li>\n<li><b>seqname<\/b> - The role pair for the pair<\/li>\n<li><b>isshadowing<\/b> - Whether the pair is currently copying data<\/li>\n<li><b>isrecoverable<\/b> - Whether the pair is currently recoverable<\/li>\n<li><b>lastresult<\/b> - The last result message for the pair<\/li>\n<li><b>copyset<\/b> - The copyset ID that the pair is in<\/li>\n<li><b>timestamp<\/b> - The timestamp that the pair is recoverable to if applicable<\/li>\n<\/ol>",
        "operationId" : "getPairInfo",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : "The name of the session to query"
          },
          {
            "name" : "seqname",
            "in" : "path",
            "type" : "string",
            "description" : "The name of the role pair to query in the session"
          }
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON string listing out all pairs and details for those pairs within the given role pair\nExample output:\n<code>[{\"sourceid\":\"DS8000:2107.GXZ91:VOL:9001\",\n\"sourcenickname\":\"DS8000:2107.GXZ91:VOL:9001\",\n\"targetid\":\"DS8000:2107.GXZ91:VOL:9101\",\n\"targetnickname\":\"DS8000:2107.GXZ91:VOL:9101\",\n\"state\":\"Defined\",\n\"seqname\":\"H1-H2\",\n\"isshadowing\":false,\n\"isconsistent\":false,\n\"isrecoverable\":false,\n\"lastresult\":{\"msg\":\"IWNR2001I\",\"inserts\":[\"8kGM\",\"DS8000:2107.GXZ91:VOL:9001\",\"DS8000:2107.GXZ91:VOL:9001\",\"DS8000:2107.GXZ91:VOL:9101\",\"\",\"H1-H2\"],\"timestamp\":1586360144857},\n\"copyset\":\"DS8000:2107.GXZ91:VOL:9001\",\n\"timestamp\":\"n\\/a\"}] <\/code>",
"type" : "string"
            },
            "description" : "JSON string listing out all pairs and details for those pairs within the given role pair\nExample output:\n<code>[{\"sourceid\":\"DS8000:2107.GXZ91:VOL:9001\",\n\"sourcenickname\":\"DS8000:2107.GXZ91:VOL:9001\",\n\"targetid\":\"DS8000:2107.GXZ91:VOL:9101\",\n\"targetnickname\":\"DS8000:2107.GXZ91:VOL:9101\",\n\"state\":\"Defined\",\n\"seqname\":\"H1-H2\",\n\"isshadowing\":false,\n\"isconsistent\":false,\n\"isrecoverable\":false,\n\"lastresult\":{\"msg\":\"IWNR2001I\",\"inserts\":[\"8kGM\",\"DS8000:2107.GXZ91:VOL:9001\",\"DS8000:2107.GXZ91:VOL:9001\",\"DS8000:2107.GXZ91:VOL:9101\",\"\",\"H1-H2\"],\"timestamp\":1586360144857},\n\"copyset\":\"DS8000:2107.GXZ91:VOL:9001\",\n\"timestamp\":\"n\\/a\"}] <\/code>"
          }
        }
      }
    }
    ,
    "\/sessions/{name}/recoveredbackups" : {
      "get" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>getRecoveredBackups<\/h2>\nGets all recovered backups for Spec V Safeguarded Copy session\n\n<ol> style=\"list-style-type:disc;\">\n<li> <b>name<\/b> the name of the session to query\n<\/ol>\n\n<h3>Example curl<\/h3>\n<code>curl -X GET -k -H 'Authorization: Basic Y3NtYWRtaW46Y3Nt' -i https://localhost:9559/CSM/web/sessions/csmguigrp1/recoveredbackups/<\/code>",
        "operationId" : "getRecoveredBackups",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : "This is the session name."
          }
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error"
          }
        }
      }
    }
    ,
    "\/sessions/{name}/recoveredbackups/{backupid}" : {
      "get" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>getRecoveredBackupDetails<\/h2>\nGets the pair information for a specific recovered backup on a specific session\n<ol> style=\"list-style-type:disc;\">\n<li> <b>name<\/b> the name of the session to query\n<li> <b>backupid<\/b> the backupid to get the detailed info for\n<\/ol>\n\n<h3>Example curl<\/h3>\n<code>curl -X GET -k -H 'Authorization: Basic Y3NtYWRtaW46Y3Nt' -i https://localhost:9559/CSM/web/sessions/csmguigrp1/recoveredbackups/1619029157<\/code>",
        "operationId" : "getRecoveredBackupDetails",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "backupid",
            "in" : "path",
            "required" : true,
            "type" : "integer",
            "format" : "int32",
            "description" : ""
          },
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : "This is the session name."
          }
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error"
          }
        }
      }
    }
    ,
    "\/sessions/{name}/requerystates" : {
      "put" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>requeryStates<\/h2>\nThis method will query all of the copy sets in the specified session and update any states in the session that do not match the current state on the hardware.\nThis command can only be run periodically for each session.\n\n<h3>Example curl:<\/h3>\n<code>curl -X PUT -k -H 'X-Auth-Token: e6bd5324sdf61b8fe4d513dsd8bd15f6' -H 'Content-Type: application/x-www-form-urlencoded' -i https://hostname:9559/CSM/web/sessions/8kFC/requerystates<\/code>",
        "operationId" : "requeryStates",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : "The name of the session"
          }
        ],
        "responses" : {
          "204" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\n<code>{\"msg\":\"IWNR1306I\",\"inserts\":[\"8kFC\"],\"msgTranslated\":\"IWNR1306I [Apr 13, 2020 3:05:50 PM] The Refresh States command for session 8kFC was successful.\",\"timestamp\":1586808350432}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\n<code>{\"msg\":\"IWNR1306I\",\"inserts\":[\"8kFC\"],\"msgTranslated\":\"IWNR1306I [Apr 13, 2020 3:05:50 PM] The Refresh States command for session 8kFC was successful.\",\"timestamp\":1586808350432}<\/code>"
          }
        }
      }
    }
    ,
    "\/sessions/{name}/sequences/{seqname}" : {
      "get" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>getSequenceInfo<\/h2>\nGets a summary for a given role pair in a session.  The results from this call provide information such as the following:\n\n\n<ol style=\"list-style-type:disc;\">\n<li> <b>seqname<\/b> the name of the sequence queried\n<li> <b>isRecoverable<\/b> true if all the pairs in the role pair are currently recoverable\n<li> <b>isShadowing<\/b> true if any pairs in the role pair are currently copying data\n<li> <b>iosstate<\/b> ndicates the HyperSwap status for the pairs in the role pair\n<li> <b>baseCopyType<\/b> the current base copy type for the pairs in the role pair ex. GC for Global Copy mode\n<li> <b>direction<\/b> true if the direction of replication is going from the first role in the role pair to the second, false if going from the second to the first\n<li> <b>statecounts<\/b> list of current pair states in the role pair and the number of pairs in each of the states\n<li> <b>progress<\/b> indicates either the number of out of sync tracks and percentage copied, or the current data exposure\n<\/ol>\n\n\n<h3>Example curl<\/h3>\n<code>curl -X GET -k -H 'X-Auth-Token: 8d72c750a81e429fa19cf6fd32d9f1ec' -H 'Content-Type: application/x-www-form-urlencoded' -i https://localhost:9559/CSM/web/sessions/8kGM/sequences/H1-H2<\/code>",
        "operationId" : "getSequenceInfo",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : "The name of the session."
          },
          {
            "name" : "seqname",
            "in" : "path",
            "type" : "string",
            "description" : "The name of the role pair."
          }
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\n<code>{\"numpairs\":2,\n\"statecounts\":{\"Preparing\":\"2\"},\n\"numincg\":2,\n\"numwarning\":0,\n\"numshadowing\":2,\n\"numrecoverable\":0,\n\"isShadowing\":true,\n\"backupSupported\":false,\n\"iosstate\":\"TurnedOff\",\n\"exceptionNum\":0,\n\"notSeqToModify\":false,\n\"baseCopyType\":\"GC\",\n\"isRecoverable\":false,\n\"progress\":{\"totalTracksCount\":3276800,\"seqDirection\":true,\"totalCapacity\":{\"trackCount\":-1,\"size\":214748364800,\"type\":\"BYTES\"},\"copiedTracksCount\":3276800,\"percentComplete\":100,\"message\":{\"msg\":\"IWNR6013I\",\"resultText\":\"\",\"baseDate\":1587592997804,\"inserts\":[\"100\",\"H1\",\"H2\"],\"resultType\":0},\"remainingTracksCount\":0,\"sequenceName\":\"H1-H2\"},\n\"seqname\":\"H1-H2\",\n\"direction\":true,\n\"timestamp\":\"n\\/a\"}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\n<code>{\"numpairs\":2,\n\"statecounts\":{\"Preparing\":\"2\"},\n\"numincg\":2,\n\"numwarning\":0,\n\"numshadowing\":2,\n\"numrecoverable\":0,\n\"isShadowing\":true,\n\"backupSupported\":false,\n\"iosstate\":\"TurnedOff\",\n\"exceptionNum\":0,\n\"notSeqToModify\":false,\n\"baseCopyType\":\"GC\",\n\"isRecoverable\":false,\n\"progress\":{\"totalTracksCount\":3276800,\"seqDirection\":true,\"totalCapacity\":{\"trackCount\":-1,\"size\":214748364800,\"type\":\"BYTES\"},\"copiedTracksCount\":3276800,\"percentComplete\":100,\"message\":{\"msg\":\"IWNR6013I\",\"resultText\":\"\",\"baseDate\":1587592997804,\"inserts\":[\"100\",\"H1\",\"H2\"],\"resultType\":0},\"remainingTracksCount\":0,\"sequenceName\":\"H1-H2\"},\n\"seqname\":\"H1-H2\",\n\"direction\":true,\n\"timestamp\":\"n\\/a\"}<\/code>"
          }
        }
      }
    }
    ,
    "\/sessions/{name}/sequencespecs/{seqname}" : {
      "get" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>getSequenceSpecifics<\/h2>\nGets specific info for a given sequence in a session.  This includes information such as DS8000 Global Mirror statistics.\nResults from this method are different for each role pair and hardware type.\n\n<h3>Example curl<\/h3>\n<code>curl -X GET -k -H 'X-Auth-Token: 22dd90e234a6454eaa85201797f6d5d3' -H 'Content-Type: application/x-www-form-urlencoded' -i https://localhost:9559/CSM/web/sessions/8kGM/sequencespecs/H1-J2<\/code>",
        "operationId" : "getSequenceSpecifics",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : "name of session"
          },
          {
            "name" : "seqname",
            "in" : "path",
            "type" : "string",
            "description" : "name of role pair to query"
          }
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample of DS8000 Global Mirror specifics on H1-J2 role pair\n<code>{\"currenttime\":1587670786000,\n\"formationtimelastsuccessfulcg\":1587670761000,\n\"subordinateArrayString\":\"\",\n\"numberofunsuccessfulattempts\":0,\n\"masterSsid\":65424,\n\"numberofunsuccessfulcgs\":0,\n\"totalNumberOfUnsuccessfulConsistencyGroups\":0,\n\"fatalreasoncode\":0,\n\"cgintervaltime\":45,\n\"numberofSucessfulcgs\":2,\n\"currentRPO\":58500,\n\"masterLss\":144,\n\"masteressname\":\"2107.GXZ91\",\n\"sessionname\":\"8kGM\",\n\"maxCoordTime\":50,\n\"maxCGDrainTime\":240,\n\"successfulPercentage\":100,\n\"sequenceSpecificType\":1,\n\"asyncpprcstate\":1,\n\"sessionnumber\":95,\n\"totalNumberOfSuccessfulConsistencyGroups\":126,\n\"querytimeintervalsecs\":60,\n\"sequencename\":\"H1-J2\"}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample of DS8000 Global Mirror specifics on H1-J2 role pair\n<code>{\"currenttime\":1587670786000,\n\"formationtimelastsuccessfulcg\":1587670761000,\n\"subordinateArrayString\":\"\",\n\"numberofunsuccessfulattempts\":0,\n\"masterSsid\":65424,\n\"numberofunsuccessfulcgs\":0,\n\"totalNumberOfUnsuccessfulConsistencyGroups\":0,\n\"fatalreasoncode\":0,\n\"cgintervaltime\":45,\n\"numberofSucessfulcgs\":2,\n\"currentRPO\":58500,\n\"masterLss\":144,\n\"masteressname\":\"2107.GXZ91\",\n\"sessionname\":\"8kGM\",\n\"maxCoordTime\":50,\n\"maxCGDrainTime\":240,\n\"successfulPercentage\":100,\n\"sequenceSpecificType\":1,\n\"asyncpprcstate\":1,\n\"sessionnumber\":95,\n\"totalNumberOfSuccessfulConsistencyGroups\":126,\n\"querytimeintervalsecs\":60,\n\"sequencename\":\"H1-J2\"}<\/code>"
          }
        }
      }
    }
    ,
    "\/sessions/{name}/sites/{sitename}" : {
      "post" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>setLocationsForSite<\/h2>\nThis command allows the caller to set a user defined location name for a given site in a session\n\n<h3>Example curl<\/h3>\n<code>curl -X POST -k -H 'X-Auth-Token: 22dd90e234a6454eaa85201797f6d5d3' -H 'Content-Type: application/x-www-form-urlencoded' -i 'https://localhost:9559/CSM/web/sessions/8kGM/sites/Site%201' --data 'locations=[\"Tucson\",\"PHX\"]'<\/code>",
        "operationId" : "setLocationsForSite",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "locations",
            "in" : "formData",
            "type" : "string",
            "description" : "A JSON formated array of Strings. Example: [\"Tucson\",\"PHX\"]"
          },
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : "The name of the sessiom"
          },
          {
            "name" : "sitename",
            "in" : "path",
            "type" : "string",
            "description" : ""
          }
        ],
        "responses" : {
          "201" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1096I\",\"inserts\":[\"8kGM\",\"Site 1\"],\"msgTranslated\":\"IWNR1096I [Apr 23, 2020 2:45:25 PM] The locations for sessions 8kGM and Site 1 were set successfully.\",\"timestamp\":1587671125071}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1096I\",\"inserts\":[\"8kGM\",\"Site 1\"],\"msgTranslated\":\"IWNR1096I [Apr 23, 2020 2:45:25 PM] The locations for sessions 8kGM and Site 1 were set successfully.\",\"timestamp\":1587671125071}<\/code>"
          }
        }
      }
    }
    ,
    "\/sessions/{name}/snapgroups" : {
      "post" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>runSnapGroupCommand<\/h2>\nRuns a snap group command on the specified snapgroups for the specified session.",
        "operationId" : "runSnapGroupCommand",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "cmd",
            "in" : "formData",
            "type" : "string",
            "description" : ""
          },
          {
            "name" : "groups",
            "in" : "formData",
            "type" : "string",
            "description" : ""
          },
          {
            "name" : "options",
            "in" : "formData",
            "type" : "string",
            "description" : ""
          },
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : ""
          }
        ],
        "responses" : {
          "201" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error"
          }
        }
      }
    }
    ,
    "\/sessions/{name}/snapshots/{groupname}" : {
      "get" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>getSnapshotInfo<\/h2>\nGets A9000/XIV Snaphots for the given session name and group name.",
        "operationId" : "getSnapshotInfo",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "groupname",
            "in" : "path",
            "type" : "string",
            "description" : "Results will return all snapshots in this groupname"
          },
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : "This is the session name."
          }
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error"
          }
        }
      }
    }
    ,
    "\/sessions/{name}/storagedevices" : {
      "get" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>Not currently supported for external use<\/h2>",
        "operationId" : "getSessionSystems",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : ""
          }
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "",
"type" : "string"
            },
            "description" : ""
          }
        }
      }
    }
    ,
    "\/sessions/{name}/storagedevices/roles" : {
      "get" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>Not currently supported for external use<\/h2>",
        "operationId" : "getSessionSystemsAndRoles",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : ""
          }
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "",
"type" : "string"
            },
            "description" : ""
          }
        }
      }
    }
    ,
    "\/sessions/{name}/storagedevices/{devicename}" : {
      "get" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>Not currently supported for external use<\/h2>",
        "operationId" : "getSessionSubSystems",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "devicename",
            "in" : "path",
            "type" : "string",
            "description" : ""
          },
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : ""
          }
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "",
"type" : "string"
            },
            "description" : ""
          }
        }
      }
    }
    ,
    "\/sessions/{name}/{force}/{soft}/copysets" : {
      "delete" : {
        "tags" : [ "SessionService" ],
        "description" : "<h2>destroyCopyset<\/h2>\nRemoves Copy Sets from the given session.\n\n<h3>Example curl<\/h3>\n<code>curl -X DELETE -k -H 'X-Auth-Token: 180b08e4d54649eb840305d73b6dacbb' -H 'Content-Type: application/x-www-form-urlencoded' -i https://localhost:9559/CSM/web/sessions/MM/false/false/copysets --data 'copysets=[\"DS8000:2107.GXZ91:VOL:0001\"]'<\/code>",
        "operationId" : "destroyCopyset",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "copysets",
            "in" : "formData",
            "type" : "string",
            "description" : "List of copysetIDs to be removed."
          },
          {
            "name" : "force",
            "in" : "path",
            "required" : true,
            "type" : "boolean",
            "description" : "Force Set to true if you wish to remove the pair from CSM ignoring hardware errors."
          },
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : "The name of the session."
          },
          {
            "name" : "soft",
            "in" : "path",
            "required" : true,
            "type" : "boolean",
            "description" : "Keep base relationships on the hardware but remove the copy set from the session"
          }
        ],
        "responses" : {
          "204" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1058I\",\"inserts\":[\"MM\"],\"results\":[{\"msg\":\"IWNR2002I\",\"inserts\":[\"MM\",\"DS8000:2107.GXZ91:VOL:0001\",\"DS8000:2107.GXZ91:VOL:0001(CSM001)\",\"DS8000:2107.GXZ91:VOL:0101(CSM101)\",\"\",\"H1-H2\"],\"msgTranslated\":\"IWNR2002I [Apr 21, 2020 4:40:21 PM] The role pair H1-H2 was successfully deleted in session MM for copy set DS8000:2107.GXZ91:VOL:0001 with source DS8000:2107.GXZ91:VOL:0001(CSM001) and target DS8000:2107.GXZ91:VOL:0101(CSM101).\",\"timestamp\":1587505221407},{\"msg\":\"IWNR1095I\",\"inserts\":[\"DS8000:2107.GXZ91:VOL:0001\",\"MM\"],\"msgTranslated\":\"IWNR1095I [Apr 21, 2020 4:40:21 PM] Copy set DS8000:2107.GXZ91:VOL:0001 in session MM was successfully deleted.\",\"timestamp\":1587505221407}],\"msgTranslated\":\"IWNR1058I [Apr 21, 2020 4:40:21 PM] The copy sets for session MM were deleted.\",\"timestamp\":1587505221407}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1058I\",\"inserts\":[\"MM\"],\"results\":[{\"msg\":\"IWNR2002I\",\"inserts\":[\"MM\",\"DS8000:2107.GXZ91:VOL:0001\",\"DS8000:2107.GXZ91:VOL:0001(CSM001)\",\"DS8000:2107.GXZ91:VOL:0101(CSM101)\",\"\",\"H1-H2\"],\"msgTranslated\":\"IWNR2002I [Apr 21, 2020 4:40:21 PM] The role pair H1-H2 was successfully deleted in session MM for copy set DS8000:2107.GXZ91:VOL:0001 with source DS8000:2107.GXZ91:VOL:0001(CSM001) and target DS8000:2107.GXZ91:VOL:0101(CSM101).\",\"timestamp\":1587505221407},{\"msg\":\"IWNR1095I\",\"inserts\":[\"DS8000:2107.GXZ91:VOL:0001\",\"MM\"],\"msgTranslated\":\"IWNR1095I [Apr 21, 2020 4:40:21 PM] Copy set DS8000:2107.GXZ91:VOL:0001 in session MM was successfully deleted.\",\"timestamp\":1587505221407}],\"msgTranslated\":\"IWNR1058I [Apr 21, 2020 4:40:21 PM] The copy sets for session MM were deleted.\",\"timestamp\":1587505221407}<\/code>"
          }
        }
      }
    }
    ,
    "\/storagedevices" : {
      "get" : {
        "deprecated":true,
        "tags" : [ "HardwareService" ],
        "description" : "<h2>queryHardwareMappings<\/h2>\nDEPRECATED:  Instead use /connectioninfo query to retrieve a list of devices and their connection states\nThis method will return all storage system connections currently defined on the server\n\n<h3>Example curl<\/h3>\n<code>curl -X GET -k -H 'Authorization: Basic Y3NtYWRtaW46Y3Nt' -i 'https://localhost:9559/CSM/web/storagedevices?type=ds8000'<\/code>",
        "operationId" : "queryHardwareMappings",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "type",
            "in" : "query",
            "type" : "string",
            "description" : "Type or storage system to be return.  Possible values are:\n<ol style=\"list-style-type:disc;\">\n<li><b>DS8000<\/b>  Specify this for all DS8000 storage systems\n<li><b>DS<\/b>  Specify this for all DS8000 storage systems\n<li><b>XIV<\/b>  Specify this for XIV and A9000 storage systems\n<li><b>SVC<\/b> Specify this for all SVC/Spectrum Virtualize based storage systems\n<li><b>SPECTRUM-VIRTUALIZE<\/b> Specify this for all SVC/Spectrum Virtualize based storage systems\n<li><b>null<\/b> Do not specify a type to return all storage system connections\n<\/ol>"
          }
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON String representing the result of the command.\nExample output:\n<code>[{\"serial\":\"GXZ91\",\n\"locationid\":-1,\n\"systemtype\":\"DS8000\",\n\"devicename\":\"GXZ91\",\n\"location\":null,\n\"deviceid\":\"DS8000:BOX:2107.GXZ91\",\n\"connections\":[{\"conntype\":\"DS8000 Hardware Management Console (HMC) Connection\",\"connectionid\":\"HMC:\\/boxAhostname.ibm.com\"}],\n\"machinemodelnumber\":\"2107\",\n\"manufacturer\":\"IBM\"},\n{\"serial\":\"KMX61\",\n\"locationid\":-1,\n\"systemtype\":\"DS8000\",\n\"devicename\":\"KMX61\",\n\"location\":null,\"deviceid\":\n\"DS8000:BOX:2107.KMX61\",\n\"connections\":[{\"conntype\":\"DS8000 Hardware Management Console (HMC) Connection\",\"connectionid\":\"HMC:\\/boxBhostname.ibm.com\"}],\n\"machinemodelnumber\":\"2107\",\n\"manufacturer\":\"IBM\"}]<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.\nExample output:\n<code>[{\"serial\":\"GXZ91\",\n\"locationid\":-1,\n\"systemtype\":\"DS8000\",\n\"devicename\":\"GXZ91\",\n\"location\":null,\n\"deviceid\":\"DS8000:BOX:2107.GXZ91\",\n\"connections\":[{\"conntype\":\"DS8000 Hardware Management Console (HMC) Connection\",\"connectionid\":\"HMC:\\/boxAhostname.ibm.com\"}],\n\"machinemodelnumber\":\"2107\",\n\"manufacturer\":\"IBM\"},\n{\"serial\":\"KMX61\",\n\"locationid\":-1,\n\"systemtype\":\"DS8000\",\n\"devicename\":\"KMX61\",\n\"location\":null,\"deviceid\":\n\"DS8000:BOX:2107.KMX61\",\n\"connections\":[{\"conntype\":\"DS8000 Hardware Management Console (HMC) Connection\",\"connectionid\":\"HMC:\\/boxBhostname.ibm.com\"}],\n\"machinemodelnumber\":\"2107\",\n\"manufacturer\":\"IBM\"}]<\/code>"
          }
        }
      }
      ,
      "put" : {
        "tags" : [ "HardwareService" ],
        "description" : "<h2>addHardwareMapping<\/h2>\nThis method will create a connection to a storage system\n\n<h3>Example curl<\/h3>\n<code>curl -X PUT -k -H 'Content-Type: application/x-www-form-urlencoded' -H 'Authorization: Basic Y3NtYWRtaW46Y3Nt' -i https://localhost:9559/CSM/web/storagedevices --data 'deviceip=hostname&type=ds8000&deviceusername=admin&devicepassword=password'<\/code>",
        "operationId" : "addHardwareMapping",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "deviceip",
            "in" : "formData",
            "type" : "string",
            "description" : "IP address or hostname for the storage system"
          },
          {
            "name" : "devicepassword",
            "in" : "formData",
            "type" : "string",
            "description" : "Password for the storage system connection"
          },
          {
            "name" : "deviceport",
            "in" : "formData",
            "type" : "string",
            "description" : "Port to use for the connection to the storage system"
          },
          {
            "name" : "deviceusername",
            "in" : "formData",
            "type" : "string",
            "description" : "User name for the storage system connection"
          },
          {
            "name" : "seconddeviceip",
            "in" : "formData",
            "type" : "string",
            "description" : "For DS8000 storage systems, the IP address or hostname of a secondary HMC system"
          },
          {
            "name" : "seconddevicepassword",
            "in" : "formData",
            "type" : "string",
            "description" : "Password for the connection to the secondary HMC system for DS8000 connections"
          },
          {
            "name" : "seconddeviceport",
            "in" : "formData",
            "type" : "string",
            "description" : "Port to use for the connection to the secondary HMC system for DS8000 connections"
          },
          {
            "name" : "seconddeviceusername",
            "in" : "formData",
            "type" : "string",
            "description" : "User name for the connection to the secondary HMC system for DS8000 connections"
          },
          {
            "name" : "type",
            "in" : "formData",
            "type" : "string",
            "description" : "Type or storage system being added.  Possible values are:\n<ol style=\"list-style-type:disc;\">\n<li><b>DS8000<\/b>  Specify this for all DS8000 storage systems\n<li><b>XIV<\/b>  Specify this for XIV storage systems\n<li><b>A9000<\/b> Specify this for A9000 storage systems\n<li><b>SVC<\/b> Specify this for all SVC/Spectrum Virtualize based storage systems\n<li><b>SPECTRUM-VIRTUALIZE<\/b> Specify this for all SVC/Spectrum Virtualize based storage systems\n<\/ol>"
          }
        ],
        "responses" : {
          "204" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNH1612I\",\"inserts\":[\"HMC:9.11.114.59\"],\"msgTranslated\":\"IWNH1612I [Apr 22, 2020 11:19:45 AM] The connection HMC:hostname was successfully added.\",\"timestamp\":1587572385863}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNH1612I\",\"inserts\":[\"HMC:9.11.114.59\"],\"msgTranslated\":\"IWNH1612I [Apr 22, 2020 11:19:45 AM] The connection HMC:hostname was successfully added.\",\"timestamp\":1587572385863}<\/code>"
          }
        }
      }
    }
    ,
    "\/storagedevices/connectioninfo" : {
      "get" : {
        "tags" : [ "HardwareService" ],
        "description" : "<h2>queryHardwareMappingsConnectionInfo<\/h2>\nThis method will return all storage system connections currently defined on the server and the local/remote state of the storage system\nNOTE: This should be used now instead of the base storagedevices query\n\n<h3>Example curl<\/h3>\n<code>curl -X GET -k -H 'Authorization: Basic Y3NtYWRtaW46Y3Nt' -i 'https://localhost:9559/CSM/web/storagedevices/state?type=ds8000'<\/code>",
        "operationId" : "queryHardwareMappingsConnectionInfo",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "type",
            "in" : "query",
            "type" : "string",
            "description" : "Type or storage system to be return.  Possible values are:\n<ol style=\"list-style-type:disc;\">\n<li><b>DS8000<\/b>  Specify this for all DS8000 storage systems\n<li><b>DS<\/b>  Specify this for all DS8000 storage systems\n<li><b>XIV<\/b>  Specify this for XIV and A9000 storage systems\n<li><b>SVC<\/b> Specify this for all SVC/Spectrum Virtualize based storage systems\n<li><b>SPECTRUM-VIRTUALIZE<\/b> Specify this for all SVC/Spectrum Virtualize based storage systems\n<li><b>null<\/b> Do not specify a type to return all storage system connections\n<\/ol>"
          }
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON String representing the result of the command.\nExample output:\n<code>[{\nconectiontype\": \"HMC\",\n\"remotestate\": null,\n\"locationid\": 1,\n\"ip\": \"HMC:9.11.114.57\",\n\"localstate\": \"CONNECTED\",\n\"devicename\": \"2107.GXZ91\",\n\"location\": \"Tucson\",\n\"deviceid\": \"DS8000:BOX:2107.GXZ91\",\n\"devicetype\": \"DS8000\",\n\"manufacturer\": \"IBM\"\n}, {\n\"conectiontype\": \"zOS Connection\",\n\"remotestate\": null,\n\"locationid\": 1,\n\"ip\": \"ZOS:ezu248.tuc.stglabs.ibm.com:5858\",\n\"localstate\": \"DISCONNECTED\",\n\"devicename\": \"2107.GXZ91\",\n\"location\": \"Tucson\",\n\"deviceid\": \"DS8000:BOX:2107.GXZ91\",\n\"devicetype\": \"DS8000\",\n\"manufacturer\": \"IBM\"\n}, {\n\"conectiontype\": \"Direct\",\n\"remotestate\": null,\n\"locationid\": -1,\n\"ip\": \"fab3-dev13.tms.stglabs.ibm.com\",\n\"localstate\": \"CONNECTED\",\n\"devicename\": \"fab3-dev13\",\n\"location\": null,\n\"deviceid\": \"SPECTRUM-VIRTUALIZE:CLUSTER:FAB3-DEV13\",\n\"devicetype\": \"IBM FlashSystem 7200\",\n\"manufacturer\": \"IBM\"\n}]<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.\nExample output:\n<code>[{\nconectiontype\": \"HMC\",\n\"remotestate\": null,\n\"locationid\": 1,\n\"ip\": \"HMC:9.11.114.57\",\n\"localstate\": \"CONNECTED\",\n\"devicename\": \"2107.GXZ91\",\n\"location\": \"Tucson\",\n\"deviceid\": \"DS8000:BOX:2107.GXZ91\",\n\"devicetype\": \"DS8000\",\n\"manufacturer\": \"IBM\"\n}, {\n\"conectiontype\": \"zOS Connection\",\n\"remotestate\": null,\n\"locationid\": 1,\n\"ip\": \"ZOS:ezu248.tuc.stglabs.ibm.com:5858\",\n\"localstate\": \"DISCONNECTED\",\n\"devicename\": \"2107.GXZ91\",\n\"location\": \"Tucson\",\n\"deviceid\": \"DS8000:BOX:2107.GXZ91\",\n\"devicetype\": \"DS8000\",\n\"manufacturer\": \"IBM\"\n}, {\n\"conectiontype\": \"Direct\",\n\"remotestate\": null,\n\"locationid\": -1,\n\"ip\": \"fab3-dev13.tms.stglabs.ibm.com\",\n\"localstate\": \"CONNECTED\",\n\"devicename\": \"fab3-dev13\",\n\"location\": null,\n\"deviceid\": \"SPECTRUM-VIRTUALIZE:CLUSTER:FAB3-DEV13\",\n\"devicetype\": \"IBM FlashSystem 7200\",\n\"manufacturer\": \"IBM\"\n}]<\/code>"
          }
        }
      }
    }
    ,
    "\/storagedevices/mapvolstohost" : {
      "put" : {
        "tags" : [ "HardwareService" ],
        "description" : "<h2>unMapVolumesToHost<\/h2>\nThis method unmap a list of volumes from a host defined on a given Storage System\nNOTE: This method is for Spectrum Virtualize volume only\n\n<h3>Example curl<\/h3>\n<code>curl -X PUT -k -H 'Content-Type: application/x-www-form-urlencoded' -H 'Authorization: Basic Y3NtYWRtaW46Y3Nt' -i https://localhost:9559/CSM/web/storagedevices/mapvolstohost --data 'deviceId=FAB3-DEV13&hostname=\"fakehost1.ibm.com\"&volumes=[\"mVol0_211115100540\"]&force=true&isHostCluster=false'<\/code>",
        "operationId" : "mapVolumesToHost",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "deviceId",
            "in" : "formData",
            "type" : "string",
            "description" : "Name of the storage system the volume are on and hosts are attached to"
          },
          {
            "name" : "force",
            "in" : "formData",
            "required" : true,
            "type" : "boolean",
            "description" : "true to force the mapping in case the volume is already mapped to a host"
          },
          {
            "name" : "hostname",
            "in" : "formData",
            "type" : "string",
            "description" : "Name of the host or host cluster to map specified volumes to"
          },
          {
            "name" : "isHostCluster",
            "in" : "formData",
            "required" : true,
            "type" : "boolean",
            "description" : "true if the hostname provided is a cluster otherwise false"
          },
          {
            "name" : "scsi",
            "in" : "formData",
            "type" : "string",
            "description" : "(Optional) specify if you want to define a custom scsi id"
          },
          {
            "name" : "volumes",
            "in" : "formData",
            "type" : "string",
            "description" : "json list of volumes to map to the specified host"
          }
        ],
        "responses" : {
          "204" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR3125I\",\"inserts\":[\"1\"],\"msgTranslated\":\"IWNR3125I [Nov 15, 2021 11:02:44 AM] The create host mapping command completed successfully for 1 volumes.\",\"timestamp\":1636995764061}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR3125I\",\"inserts\":[\"1\"],\"msgTranslated\":\"IWNR3125I [Nov 15, 2021 11:02:44 AM] The create host mapping command completed successfully for 1 volumes.\",\"timestamp\":1636995764061}<\/code>"
          }
        }
      }
    }
    ,
    "\/storagedevices/paths" : {
      "get" : {
        "tags" : [ "HardwareService" ],
        "description" : "<h2>queryAllGenericPaths<\/h2>\nQuery for all the logical paths on the storage system\n\n<h3>Example curl<\/h3>\n<code>curl -X GET -k -H 'Authorization: Basic Y3NtYWRtaW46Y3Nt' -i https://localhost:9559/CSM/web/storagedevices/paths<\/code>",
        "operationId" : "queryAllGenericPaths",
        "produces" : [ "application/json" ],
        "parameters" : [
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON String representing the result of the command.\nExample output:\n<code>[{\"elementid\": \"ESS:PATH:2107.GXZ91:D2:2107.KMX61:D0\",\n\"pathsourceid\": \"2107.GXZ91:D2\",\n\"numberofgoodpaths\": 1,\n\"numberofpaths\": 1,\n\"elementkey\": \"ESS:PATH:2107.GXZ91:D2:2107.KMX61:D0\",\n\"state\": 1,\n\"pathtargetid\": \"2107.KMX61:D0\",\n\"pathtype\": 1,\n\"numberoferrorpaths\": 0,\n\"storagetype\": \"ESS\",\n\"detailedstate\": 19\n},{\"elementid\": \"ESS:PATH:2107.GXZ91:D0:2107.KMX61:D0\",\n\"pathsourceid\": \"2107.GXZ91:D0\",\n\"numberofgoodpaths\": 1,\n\"numberofpaths\": 1,\n\"elementkey\": \"ESS:PATH:2107.GXZ91:D0:2107.KMX61:D0\",\n\"state\": 1,\n\"pathtargetid\": \"2107.KMX61:D0\",\n\"pathtype\": 1,\n\"numberoferrorpaths\": 0,\n\"storagetype\": \"ESS\",\n\"detailedstate\": 19\n}]<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.\nExample output:\n<code>[{\"elementid\": \"ESS:PATH:2107.GXZ91:D2:2107.KMX61:D0\",\n\"pathsourceid\": \"2107.GXZ91:D2\",\n\"numberofgoodpaths\": 1,\n\"numberofpaths\": 1,\n\"elementkey\": \"ESS:PATH:2107.GXZ91:D2:2107.KMX61:D0\",\n\"state\": 1,\n\"pathtargetid\": \"2107.KMX61:D0\",\n\"pathtype\": 1,\n\"numberoferrorpaths\": 0,\n\"storagetype\": \"ESS\",\n\"detailedstate\": 19\n},{\"elementid\": \"ESS:PATH:2107.GXZ91:D0:2107.KMX61:D0\",\n\"pathsourceid\": \"2107.GXZ91:D0\",\n\"numberofgoodpaths\": 1,\n\"numberofpaths\": 1,\n\"elementkey\": \"ESS:PATH:2107.GXZ91:D0:2107.KMX61:D0\",\n\"state\": 1,\n\"pathtargetid\": \"2107.KMX61:D0\",\n\"pathtype\": 1,\n\"numberoferrorpaths\": 0,\n\"storagetype\": \"ESS\",\n\"detailedstate\": 19\n}]<\/code>"
          }
        }
      }
    }
    ,
    "\/storagedevices/paths/{id}" : {
      "get" : {
        "tags" : [ "HardwareService" ],
        "description" : "<h2>queryAllPaths<\/h2>\nQuery for all paths on the given storage system\n\n<h3>Example curl<\/h3>\n<code>curl -X GET -k -H 'Authorization: Basic Y3NtYWRtaW46Y3Nt' -i 'https://localhost:9559/CSM/web/storagedevices/paths/DS8000:BOX:2107.GXZ91'<\/code>",
        "operationId" : "queryAllPaths",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "id",
            "in" : "path",
            "type" : "string",
            "description" : ""
          }
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON String representing the result of the command.\nExample output:\n<code>[{ \"elementid\": \"ESS:PATH:2107.GXZ91:FFD2:D2:2107.KMX61:FFD0:D0\",\n\"numberofgoodpaths\": 1,\n\"pathportstates\": \"19\",\n\"pathsourceports\": \"16\",\n\"sourcewwwn\": \"5766023019835152291\",\n\"pathstring\": \"ESS:PATH:2107.GXZ91:FFD2:D2:2107.KMX61:FFD0:D0:PathType=1:State=1:NumPaths=1:NumErrorPaths=0:srcSSID=0xffd2:tgtSSID=0xffd0:srcWWNN=5766023019835152291:tgtWWNN=5766023019868705591::PathPorts[0]=16->768(state=19|false)\",\n\"pathtargetports\": \"768\",\n\"targetssid\": 65488,\n\"storagetype\": \"ESS\",\n\"sourcemachinetype\": 1,\n\"targetboxname\": \"2107.KMX61\",\n\"numberofpaths\": 1,\n\"targetplantofmanufacturer\": \"75\",\n\"sourcelss\": 210,\n\"elementkey\": \"ESS:PATH:2107.GXZ91:FFD2:D2:2107.KMX61:FFD0:D0\",\n\"sourcessid\": 65490,\n\"targetlss\": 208,\n\"targetwwwn\": \"5766023019868705591\",\n\"sourceplantofmanufacturer\": \"00075\",\n\"state\": 1,\n\"pathtype\": 1,\n\"targetmachinetype\": 1,\n\"numberoferrorpaths\": 0,\n\"sourceboxname\": \"2107.GXZ91\"\n}, {\"elementid\": \"ESS:PATH:2107.GXZ91:FFD0:D0:2107.KMX61:FFD0:D0\",\n\"numberofgoodpaths\": 1,\n\"pathportstates\": \"19\",\n\"pathsourceports\": \"304\",\n\"sourcewwwn\": \"5766023019835152291\",\n\"pathstring\": \"ESS:PATH:2107.GXZ91:FFD0:D0:2107.KMX61:FFD0:D0:PathType=1:State=1:NumPaths=1:NumErrorPaths=0:srcSSID=0xffd0:tgtSSID=0xffd0:srcWWNN=5766023019835152291:tgtWWNN=5766023019868705591::PathPorts[0]=304->561(state=19|false)\",\n\"pathtargetports\": \"561\",\n\"targetssid\": 65488,\n\"storagetype\": \"ESS\",\n\"sourcemachinetype\": 1,\n\"targetboxname\": \"2107.KMX61\",\n\"numberofpaths\": 1,\n\"targetplantofmanufacturer\": \"75\",\n\"sourcelss\": 208,\n\"elementkey\": \"ESS:PATH:2107.GXZ91:FFD0:D0:2107.KMX61:FFD0:D0\",\n\"sourcessid\": 65488,\n\"targetlss\": 208,\n\"targetwwwn\": \"5766023019868705591\",\n\"sourceplantofmanufacturer\": \"00075\",\n\"state\": 1,\n\"pathtype\": 1,\n\"targetmachinetype\": 1,\n\"numberoferrorpaths\": 0,\n\"sourceboxname\": \"2107.GXZ91\"\n}]<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.\nExample output:\n<code>[{ \"elementid\": \"ESS:PATH:2107.GXZ91:FFD2:D2:2107.KMX61:FFD0:D0\",\n\"numberofgoodpaths\": 1,\n\"pathportstates\": \"19\",\n\"pathsourceports\": \"16\",\n\"sourcewwwn\": \"5766023019835152291\",\n\"pathstring\": \"ESS:PATH:2107.GXZ91:FFD2:D2:2107.KMX61:FFD0:D0:PathType=1:State=1:NumPaths=1:NumErrorPaths=0:srcSSID=0xffd2:tgtSSID=0xffd0:srcWWNN=5766023019835152291:tgtWWNN=5766023019868705591::PathPorts[0]=16->768(state=19|false)\",\n\"pathtargetports\": \"768\",\n\"targetssid\": 65488,\n\"storagetype\": \"ESS\",\n\"sourcemachinetype\": 1,\n\"targetboxname\": \"2107.KMX61\",\n\"numberofpaths\": 1,\n\"targetplantofmanufacturer\": \"75\",\n\"sourcelss\": 210,\n\"elementkey\": \"ESS:PATH:2107.GXZ91:FFD2:D2:2107.KMX61:FFD0:D0\",\n\"sourcessid\": 65490,\n\"targetlss\": 208,\n\"targetwwwn\": \"5766023019868705591\",\n\"sourceplantofmanufacturer\": \"00075\",\n\"state\": 1,\n\"pathtype\": 1,\n\"targetmachinetype\": 1,\n\"numberoferrorpaths\": 0,\n\"sourceboxname\": \"2107.GXZ91\"\n}, {\"elementid\": \"ESS:PATH:2107.GXZ91:FFD0:D0:2107.KMX61:FFD0:D0\",\n\"numberofgoodpaths\": 1,\n\"pathportstates\": \"19\",\n\"pathsourceports\": \"304\",\n\"sourcewwwn\": \"5766023019835152291\",\n\"pathstring\": \"ESS:PATH:2107.GXZ91:FFD0:D0:2107.KMX61:FFD0:D0:PathType=1:State=1:NumPaths=1:NumErrorPaths=0:srcSSID=0xffd0:tgtSSID=0xffd0:srcWWNN=5766023019835152291:tgtWWNN=5766023019868705591::PathPorts[0]=304->561(state=19|false)\",\n\"pathtargetports\": \"561\",\n\"targetssid\": 65488,\n\"storagetype\": \"ESS\",\n\"sourcemachinetype\": 1,\n\"targetboxname\": \"2107.KMX61\",\n\"numberofpaths\": 1,\n\"targetplantofmanufacturer\": \"75\",\n\"sourcelss\": 208,\n\"elementkey\": \"ESS:PATH:2107.GXZ91:FFD0:D0:2107.KMX61:FFD0:D0\",\n\"sourcessid\": 65488,\n\"targetlss\": 208,\n\"targetwwwn\": \"5766023019868705591\",\n\"sourceplantofmanufacturer\": \"00075\",\n\"state\": 1,\n\"pathtype\": 1,\n\"targetmachinetype\": 1,\n\"numberoferrorpaths\": 0,\n\"sourceboxname\": \"2107.GXZ91\"\n}]<\/code>"
          }
        }
      }
    }
    ,
    "\/storagedevices/svchost/{deviceName}" : {
      "get" : {
        "tags" : [ "HardwareService" ],
        "description" : "<h2>querySVChosts<\/h2>\nThis method returns a list of hosts defined to the Spec V system\n\n<h3>Example curl<\/h3>\n<code>curl -X GET -k -H 'Authorization: Basic Y3NtYWRtaW46Y3Nt' -i https://localhost:9559/CSM/web/storagedevices/svchost/FAB3-DEV13<\/code>",
        "operationId" : "querySVChosts",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "deviceName",
            "in" : "path",
            "type" : "string",
            "description" : "Name of the storage system the volume are on and hosts are attached.  Use the device name and not the ID."
          }
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON String representing the result of the command.\nExample output:\n<code>{\n\"hosts\": [{\n\"protocol\": \"scsi\",\n\"name\": \"omnigui.tms.stglabs.ibm.com\",\n\"id\": 0,\n\"status\": \"online\"\n}, {\n\"protocol\": \"nvme\",\n\"hostcount\": 1,\n\"name\": \"anotherfakehostcluster\",\n\"id\": 1,\n\"status\": \"offline\"\n}]\n}}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.\nExample output:\n<code>{\n\"hosts\": [{\n\"protocol\": \"scsi\",\n\"name\": \"omnigui.tms.stglabs.ibm.com\",\n\"id\": 0,\n\"status\": \"online\"\n}, {\n\"protocol\": \"nvme\",\n\"hostcount\": 1,\n\"name\": \"anotherfakehostcluster\",\n\"id\": 1,\n\"status\": \"offline\"\n}]\n}}<\/code>"
          }
        }
      }
    }
    ,
    "\/storagedevices/unmapvolstohost" : {
      "put" : {
        "tags" : [ "HardwareService" ],
        "description" : "<h2>unMapVolumesToHost<\/h2>\nThis method unmap a list of volumes from a host defined on a given Storage System\nNOTE: This method is for Spectrum Virtualize volume only\n\n<h3>Example curl<\/h3>\n<code>curl -X PUT -k -H 'Content-Type: application/x-www-form-urlencoded' -H 'Authorization: Basic SEFE23DDFerdsfs=' -i https://localhost:9559/CSM/web/storagedevices/unmapvolstohost --data 'deviceId=FAB3-DEV13&hostname=\"fakehost1.ibm.com\"&volumes=[\"mVol0_211115100540\"]&isHostCluster=false'<\/code>",
        "operationId" : "unMapVolumesToHost",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "deviceId",
            "in" : "formData",
            "type" : "string",
            "description" : "Name of the storage system the volume are on and hosts are attached to"
          },
          {
            "name" : "hostname",
            "in" : "formData",
            "type" : "string",
            "description" : "Name of the host or host cluster to map specified volumes to"
          },
          {
            "name" : "isHostCluster",
            "in" : "formData",
            "required" : true,
            "type" : "boolean",
            "description" : "true if the hostname provided is a cluster otherwise false"
          },
          {
            "name" : "volumes",
            "in" : "formData",
            "type" : "string",
            "description" : "json list of volumes to map to the specified host"
          }
        ],
        "responses" : {
          "204" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR3126I\",\"inserts\":[\"1\"],\"msgTranslated\":\"IWNR3126I [Nov 15, 2021 10:57:46 AM] The remove host mapping completed successfuly for 1 volumes.\",\"timestamp\":1636995466599}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR3126I\",\"inserts\":[\"1\"],\"msgTranslated\":\"IWNR3126I [Nov 15, 2021 10:57:46 AM] The remove host mapping completed successfuly for 1 volumes.\",\"timestamp\":1636995466599}<\/code>"
          }
        }
      }
    }
    ,
    "\/storagedevices/updatehmc" : {
      "put" : {
        "tags" : [ "HardwareService" ],
        "description" : "<h2>updateHMCConnection<\/h2>\nThis method will update the user name and/or password of an HMC connection.\nNOTE: This method will not allow you to change the IP of an existing HMC connection.  Create a new connection to change the IP.\n\n<h3>Example curl<\/h3>\n<code>curl -X PUT -k -H 'Content-Type: application/x-www-form-urlencoded' -H 'Authorization: Basic Y3NtYWRtaW46cGFzc3cwcmQ=' -i https://localhost:9559/CSM/web/storagedevices/updatehmc --data 'deviceip=myHMC.ibm.com&devicepassword=passw0rd&deviceusername=admin&name=HMC:myHMC.ibm.com'<\/code>",
        "operationId" : "updateHMCConnection",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "deviceip",
            "in" : "formData",
            "type" : "string",
            "description" : "Primary IP address for the storage system (only specify primary even if connection uses dual HMC)"
          },
          {
            "name" : "devicepassword",
            "in" : "formData",
            "type" : "string",
            "description" : "New password for the storage system connection"
          },
          {
            "name" : "deviceusername",
            "in" : "formData",
            "type" : "string",
            "description" : "New user name for the storage system connection"
          },
          {
            "name" : "name",
            "in" : "formData",
            "type" : "string",
            "description" : "Name of the connection HMC:9.11.114.59"
          }
        ],
        "responses" : {
          "204" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNH1612I\",\"inserts\":[\"HMC:9.11.114.59\"],\"msgTranslated\":\"IWNH1612I [Apr 22, 2020 11:19:45 AM] The connection HMC:hostname was successfully added.\",\"timestamp\":1587572385863}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNH1612I\",\"inserts\":[\"HMC:9.11.114.59\"],\"msgTranslated\":\"IWNH1612I [Apr 22, 2020 11:19:45 AM] The connection HMC:hostname was successfully added.\",\"timestamp\":1587572385863}<\/code>"
          }
        }
      }
    }
    ,
    "\/storagedevices/volumes/volwwn" : {
      "post" : {
        "tags" : [ "HardwareService" ],
        "description" : "<h2>queryMultipleVolumesByLUNSerial<\/h2>\nThis method will return all volumes for a given storage system for all passed in volumes\nNote:  The query will find all volumes in the list of names\nex. Entering a specific volume wwn will return a single volume but entering something like 75GXZ91FB will return all volumes on box GXZ91 LSS FB.\n\n<h3>Example curl<\/h3>\n<code>curl -X POST -k -H 'Accept-Language: en-US' -H 'Content-Type: application/x-www-form-urlencoded' -H 'Authorization: Basic Y3NtYWRtaW46Y3Nt' -i https://localhost:9559/CSM/web/storagedevices/volumes/volwwn --data 'names=[\"6005076307FFD7A3000000000000F807\",\"6005076307FFD7A3000000000000F808\"]'<\/code>\n\n<code>\n[{\"elementid\":\"SVC:VOL:SVC-SVC4:1\",\"isprotected\":false,\"grainsize\":256,\"capacitytype\":\"Bytes\",\"protectedby\":\"nobody\",\"lockedtype\":\"NA\",\"parentid\":\"SVC:IOGROUP:SVC-SVC4:1\",\"volume_wwn\":\"600507680C8104B5400000000000000D\",\"capacity\":107374182400,\"elementtype\":\"FIXEDBLK\",\"internalname\":\"SVC:VOL:0000020320412D50:1\",\"manufacturer\":\"IBM\",\"iszattached\":false,\"specifictype\":\"SVC\",\"isalive\":true,\"spaceefficenttype\":\"SE\",\"nickname\":\"ESX_ama-coh4_copy\",\"basetype\":\"VOL\",\"modified\":\"NA\",\"superparentid\":\"SVC:CLUSTER:SVC-SVC4\",\"isspaceefficient\":true}]\n<\/code>",
        "operationId" : "queryMultipleVolumesByLUNSerial",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "names",
            "in" : "formData",
            "type" : "string",
            "description" : "This is a json String array in a form param for all volumes you want to query for"
          }
        ],
        "responses" : {
          "201" : {
            "schema" : {
"description" : "JSON String representing all volumes that match the input names",
"type" : "string"
            },
            "description" : "JSON String representing all volumes that match the input names"
          }
        }
      }
    }
    ,
    "\/storagedevices/volumes/volwwn/{name}" : {
      "get" : {
        "tags" : [ "HardwareService" ],
        "description" : "<h2>queryVolumesByLUNSerial<\/h2>\nThis method will return all volumes for a given storage system based off the input volume wwn\nNote:  The query will find all volumes that contain the input volume wwn\nex. Entering a specific volume wwn will return a single volume but entering something like 75GXZ91FB will return all volumes on box GXZ91 LSS FB.\n\n<h3>Example curl<\/h3>\n<code>curl -X GET -k -H 'Accept-Language: fr,en-US' -H 'Authorization: Basic Y3NtYWRtaW46Y3Nt' -i https://localhost:9559/CSM/web/storagedevices/volumes/volwwn/600507680C8104B54000000000000000<\/code>\n\n<code>\n[{\"elementid\":\"SVC:VOL:SVC-SVC4:1\",\"isprotected\":false,\"grainsize\":256,\"capacitytype\":\"Bytes\",\"protectedby\":\"nobody\",\"lockedtype\":\"NA\",\"parentid\":\"SVC:IOGROUP:SVC-SVC4:1\",\"volume_wwn\":\"600507680C8104B5400000000000000D\",\"capacity\":107374182400,\"elementtype\":\"FIXEDBLK\",\"internalname\":\"SVC:VOL:0000020320412D50:1\",\"manufacturer\":\"IBM\",\"iszattached\":false,\"specifictype\":\"SVC\",\"isalive\":true,\"spaceefficenttype\":\"SE\",\"nickname\":\"ESX_ama-coh4_copy\",\"basetype\":\"VOL\",\"modified\":\"NA\",\"superparentid\":\"SVC:CLUSTER:SVC-SVC4\",\"isspaceefficient\":true}]\n<\/code>",
        "operationId" : "queryVolumesByLUNSerial",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : "The volume wwn you would like to find, or a subset of the volume wwn to retrieve a list of volumes"
          }
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON String representing the volume with the specific lun serial or all of the volumes that match the input volume wwn",
"type" : "string"
            },
            "description" : "JSON String representing the volume with the specific lun serial or all of the volumes that match the input volume wwn"
          }
        }
      }
    }
    ,
    "\/storagedevices/volumes/{name}" : {
      "get" : {
        "tags" : [ "HardwareService" ],
        "description" : "<h2>queryVolumesByStorageSystem<\/h2>\nThis method will return all volumes for a given storage system based off the input devicename from the get storage devices query\n\n<h3>Example curl<\/h3>\n<code>curl -X GET -k -H 'Accept-Language: fr,en-US' -H 'Authorization: Basic Y3NtYWRtaW46Y3Nt' -i https://localhost:9559/CSM/web/storagedevices/volumes/SVC4<\/code>\n\n<code>\n[{\"elementid\": \"SVC:VOL:SVC-SVC4:0\",\n\"isprotected\": false,\n\"grainsize\": 256,\n\"capacitytype\": \"Bytes\",\n\"protectedby\": \"nobody\",\n\"lockedtype\": \"NA\",\n\"parentid\": \"SVC:IOGROUP:SVC-SVC4:0\",\n\"lunserial\": \"600507680C8104B5400000000000000C\",\n\"capacity\": 107374182400,\n\"elementtype\": \"FIXEDBLK\",\n\"internalname\": \"SVC:VOL:0000020320412D50:0\",\n\"manufacturer\": \"IBM\",\n\"iszattached\": false,\n\"specifictype\": \"SVC\",\n\"isalive\": true,\n\"spaceefficenttype\": \"SE\",\n\"nickname\": \"ESX_ama-coh3_copy\",\n\"basetype\": \"VOL\",\n\"modified\": \"NA\",\n\"superparentid\": \"SVC:CLUSTER:SVC-SVC4\",\n\"isspaceefficient\": true\n},\n{\"elementid\": \"SVC:VOL:SVC-SVC4:1\",\n\"isprotected\": false,\n\"grainsize\": 256,\n\"capacitytype\": \"Bytes\",\n\"protectedby\": \"nobody\",\n\"lockedtype\": \"NA\",\n\"parentid\": \"SVC:IOGROUP:SVC-SVC4:1\",\n\"lunserial\": \"600507680C8104B5400000000000000D\",\n\"capacity\": 107374182400,\n\"elementtype\": \"FIXEDBLK\",\n\"internalname\": \"SVC:VOL:0000020320412D50:1\",\n\"manufacturer\": \"IBM\",\n\"iszattached\": false,\n\"specifictype\": \"SVC\",\n\"isalive\": true,\n\"spaceefficenttype\": \"SE\",\n\"nickname\": \"ESX_ama-coh4_copy\",\n\"basetype\": \"VOL\",\n\"modified\": \"NA\",\n\"superparentid\": \"SVC:CLUSTER:SVC-SVC4\",\n\"isspaceefficient\": true}]\n<\/code>",
        "operationId" : "queryVolumesByStorageSystem",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "name",
            "in" : "path",
            "type" : "string",
            "description" : "Device name of the storage system as defined by the get storage devices query   Example:  SVC4"
          }
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON String representing all the volumes for that storage system",
"type" : "string"
            },
            "description" : "JSON String representing all the volumes for that storage system"
          }
        }
      }
    }
    ,
    "\/storagedevices/{id}" : {
      "delete" : {
        "tags" : [ "HardwareService" ],
        "description" : "<h2>removeHardwareMapping<\/h2>\nThis method will remove a storage system connection\n\n<h3>Example curl<\/h3>\n<code>curl -X DELETE -k -H 'Authorization: Basic Y3NtYWRtaW46Y3Nt' -i 'https://localhost:9559/CSM/web/storagedevices/DS8000:BOX:2107.KMX61'<\/code>",
        "operationId" : "removeHardwareMapping",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "id",
            "in" : "path",
            "type" : "string",
            "description" : "The id of the storage system to be removed"
          }
        ],
        "responses" : {
          "204" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNH1624I\",\"inserts\":[\"DS8000:BOX:2107.KMX61\"],\"msgTranslated\":\"IWNH1624I [Apr 21, 2020 1:49:49 PM] The storage system DS8000:BOX:2107.KMX61 was successfully removed.\",\"timestamp\":1587494989625}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNH1624I\",\"inserts\":[\"DS8000:BOX:2107.KMX61\"],\"msgTranslated\":\"IWNH1624I [Apr 21, 2020 1:49:49 PM] The storage system DS8000:BOX:2107.KMX61 was successfully removed.\",\"timestamp\":1587494989625}<\/code>"
          }
        }
      }
      ,
      "post" : {
        "tags" : [ "HardwareService" ],
        "description" : "<h2>updateSiteLocationForStorageSystem<\/h2>\nSet a user defined site location for a given storage system\n\n<h3>Example curl<\/h3>\n<code>curl -X POST -k -H 'Content-Type: application/x-www-form-urlencoded' -H 'Authorization: Basic Y3NtYWRtaW46Y3Nt' -i 'https://localhost:9559/CSM/web/storagedevices/DS8000:BOX:2107.GXZ91' --data location=Tucson<\/code>",
        "operationId" : "updateSiteLocationForStorageSystem",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "location",
            "in" : "formData",
            "type" : "string",
            "description" : "The name of the location to set on the storage system"
          },
          {
            "name" : "id",
            "in" : "path",
            "type" : "string",
            "description" : "The ID of the storage system to set a site location"
          }
        ],
        "responses" : {
          "201" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNH1222I\",\"inserts\":[\"DS8000:BOX:2107.GXZ91\",\"Tucson\"],\"msgTranslated\":\"IWNH1222I [Apr 22, 2020 10:05:22 AM] The site location for storage system DS8000:BOX:2107.GXZ91 was successfully changed to Tucson.\",\"timestamp\":1587567922069}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNH1222I\",\"inserts\":[\"DS8000:BOX:2107.GXZ91\",\"Tucson\"],\"msgTranslated\":\"IWNH1222I [Apr 22, 2020 10:05:22 AM] The site location for storage system DS8000:BOX:2107.GXZ91 was successfully changed to Tucson.\",\"timestamp\":1587567922069}<\/code>"
          }
        }
      }
    }
    ,
    "\/storagedevices/{id}/isinuse" : {
      "get" : {
        "tags" : [ "HardwareService" ],
        "description" : "<h2>isStorageSystemInUse<\/h2>\nReturns true if the storage system is in a session.\n\n<h3>isStorageSystemInUse<\/h3>\n<code>curl -X GET -k -H 'Authorization: Basic Y3NtYWRtaW46Y3Nt' -i 'https://localhost:9559/CSM/web/storagedevices/DS8000:BOX:2107.GXZ91/isinuse'<\/code>",
        "operationId" : "isStorageSystemInUse",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "id",
            "in" : "path",
            "type" : "string",
            "description" : "Storage system name."
          }
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON String representing the result of the command.\nExample output:\n<code>{\"value\": \"true\"}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.\nExample output:\n<code>{\"value\": \"true\"}<\/code>"
          }
        }
      }
    }
    ,
    "\/storagedevices/{id}/refreshconfig" : {
      "put" : {
        "tags" : [ "HardwareService" ],
        "description" : "<h2>refreshStorageSystemConfig<\/h2>\nRefreshes the configuration for the given storage system.\n\n<h3>Example curl<\/h3>\n<code>curl -X PUT -k -H 'Authorization: Basic Y3NtYWRtaW46Y3Nt' -i 'https://localhost:9559/CSM/web/storagedevices/DS8000:BOX:2107.GXZ91/refreshconfig<\/code>",
        "operationId" : "refreshStorageSystemConfig",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "id",
            "in" : "path",
            "type" : "string",
            "description" : "The name of the storage system"
          }
        ],
        "responses" : {
          "204" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\": \"IWNH1611I\",\n\"inserts\": [\"DS8000:BOX:2107.GXZ91\"],\n\"msgTranslated\": \"IWNH1611I [Apr 21, 2020 1:08:43 PM] A refresh of the storage configuration has completed for the storage device DS8000:BOX:2107.GXZ91.\",\n\"timestamp\": 1587492523136}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\": \"IWNH1611I\",\n\"inserts\": [\"DS8000:BOX:2107.GXZ91\"],\n\"msgTranslated\": \"IWNH1611I [Apr 21, 2020 1:08:43 PM] A refresh of the storage configuration has completed for the storage device DS8000:BOX:2107.GXZ91.\",\n\"timestamp\": 1587492523136}<\/code>"
          }
        }
      }
    }
    ,
    "\/storagedevices/{id}/sessions" : {
      "get" : {
        "tags" : [ "HardwareService" ],
        "description" : "<h2>getSystemSessions<\/h2>\nGets all the session names containing copy sets with volumes on the given storage system.\n\n<h3>Example curl<\/h3>\n<code>curl -X GET -k -H 'Authorization: Basic Y3NtYWRtaW46Y3Nt' -i 'https://localhost:9559/CSM/web/storagedevices/DS8000:BOX:2107.GXZ91/sessions'<\/code>",
        "operationId" : "getSystemSessions",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "id",
            "in" : "path",
            "type" : "string",
            "description" : "Storage system name"
          }
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON String representing the result of the command.\nExample output:\n<code>[\"fcTestSession\", \"sgcTestSession\"]<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.\nExample output:\n<code>[\"fcTestSession\", \"sgcTestSession\"]<\/code>"
          }
        }
      }
    }
    ,
    "\/system/authenticateuser" : {
      "get" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>authenticateUser<\/h2>\nThis method will validate that the given user and password has access to the CSM system.\nNOTE: If CSM is setup for LDAP authentication, and external calling system can use this method to validate against the LDAP server.",
        "operationId" : "authenticateUser",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "authpass",
            "in" : "query",
            "type" : "string",
            "description" : "Password for the user to validate"
          },
          {
            "name" : "authtoken",
            "in" : "query",
            "type" : "string",
            "description" : "Not currently supported externally"
          },
          {
            "name" : "authuser",
            "in" : "query",
            "type" : "string",
            "description" : "Username to validate"
          }
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "",
"type" : "string"
            },
            "description" : ""
          }
        }
      }
    }
    ,
    "\/system/backupdatabase" : {
      "get" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>Deprecated.  Use GET backupserver.<\/h2>",
        "operationId" : "getDatabaseBackups",
        "produces" : [ "application/json" ],
        "parameters" : [
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "",
"type" : "string"
            },
            "description" : ""
          }
        }
      }
      ,
      "put" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>Deprecated.  Use PUT backupserver.<\/h2>",
        "operationId" : "backupDatabase",
        "produces" : [ "application/json" ],
        "parameters" : [
        ],
        "responses" : {
          "204" : {
            "schema" : {
"description" : "",
"type" : "string"
            },
            "description" : ""
          }
        }
      }
    }
    ,
    "\/system/backupserver" : {
      "get" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>getServerBackups<\/h2>\nRetrieves a list of of all server backups.\n\n<h3>Example curl<\/h3>\n<code>curl -X GET -k -H 'X-Auth-Token: ebdd0df8e67c4317bac177967c3d1a7e' -H 'Content-Type: application/x-www-form-urlencoded' -i https://localhost:9559/CSM/web/system/backupserver<\/code>",
        "operationId" : "getServerBackups",
        "produces" : [ "application/json" ],
        "parameters" : [
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1911I\",\n\"inserts\":[],\n\"msgTranslated\":\"IWNR1911I [May 4, 2020 3:07:31 PM] The database backup list was retrieved successfully.\",\n\"timestamp\":1588622851149,\n\"backups\":[\n{\"backup\":\"https:\\/\\/localhost:9559\\/CSM\\/database\\/backup\\/csmBackup_20200407_130810368.zip\",\"size\":\"1.4 MiB\"},\n{\"backup\":\"https:\\/\\/localhost:9559\\/CSM\\/database\\/backup\\/csmBackup_20200423_095642719.zip\",\"size\":\"1.3 MiB\"},\n{\"backup\":\"https:\\/\\/localhost:9559\\/CSM\\/database\\/backup\\/csmBackup_20200504_150048217.zip\",\"size\":\"1.4 MiB\"},\n{\"backup\":\"https:\\/\\/localhost:9559\\/CSM\\/database\\/backup\\/csmBackup_20190206_143846766.zip\",\"size\":\"919.0 KiB\"},\n{\"backup\":\"https:\\/\\/localhost:9559\\/CSM\\/database\\/backup\\/csmBackup_20200407_130050925.zip\",\"size\":\"1.5 MiB\"},\n{\"backup\":\"https:\\/\\/localhost:9559\\/CSM\\/database\\/backup\\/csmBackup_20200423_093710690.zip\",\"size\":\"1.4 MiB\"},\n{\"backup\":\"https:\\/\\/localhost:9559\\/CSM\\/database\\/backup\\/csmBackup_20200423_094415125.zip\",\"size\":\"1.3 MiB\"}]}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1911I\",\n\"inserts\":[],\n\"msgTranslated\":\"IWNR1911I [May 4, 2020 3:07:31 PM] The database backup list was retrieved successfully.\",\n\"timestamp\":1588622851149,\n\"backups\":[\n{\"backup\":\"https:\\/\\/localhost:9559\\/CSM\\/database\\/backup\\/csmBackup_20200407_130810368.zip\",\"size\":\"1.4 MiB\"},\n{\"backup\":\"https:\\/\\/localhost:9559\\/CSM\\/database\\/backup\\/csmBackup_20200423_095642719.zip\",\"size\":\"1.3 MiB\"},\n{\"backup\":\"https:\\/\\/localhost:9559\\/CSM\\/database\\/backup\\/csmBackup_20200504_150048217.zip\",\"size\":\"1.4 MiB\"},\n{\"backup\":\"https:\\/\\/localhost:9559\\/CSM\\/database\\/backup\\/csmBackup_20190206_143846766.zip\",\"size\":\"919.0 KiB\"},\n{\"backup\":\"https:\\/\\/localhost:9559\\/CSM\\/database\\/backup\\/csmBackup_20200407_130050925.zip\",\"size\":\"1.5 MiB\"},\n{\"backup\":\"https:\\/\\/localhost:9559\\/CSM\\/database\\/backup\\/csmBackup_20200423_093710690.zip\",\"size\":\"1.4 MiB\"},\n{\"backup\":\"https:\\/\\/localhost:9559\\/CSM\\/database\\/backup\\/csmBackup_20200423_094415125.zip\",\"size\":\"1.3 MiB\"}]}<\/code>"
          }
        }
      }
      ,
      "put" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>backupserver<\/h2>\nCreates a zip backup of the CSM server data that can be used for restoring the server at a later date\n\n<h3>Example curl<\/h3>\n<code>curl -X PUT -k -H 'X-Auth-Token: 59d36fee45db4f818af7b551d2ae7b48' -H 'Content-Type: application/x-www-form-urlencoded' -i https://localhost:9559/CSM/web/system/backupserver<\/code>",
        "operationId" : "backupserver",
        "produces" : [ "application/json" ],
        "parameters" : [
        ],
        "responses" : {
          "204" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1905I\",\"resultText\":\"IWNR1905I [May 4, 2020 3:00:49 PM] Backup of internal data store completed successfully. The following file was created: \\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/database\\/backup\\/csmBackup_20200504_150048217.zip\",\"inserts\":[\"\\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/database\\/backup\\/csmBackup_20200504_150048217.zip\"],\"timestamp\":1588622449528}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1905I\",\"resultText\":\"IWNR1905I [May 4, 2020 3:00:49 PM] Backup of internal data store completed successfully. The following file was created: \\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/database\\/backup\\/csmBackup_20200504_150048217.zip\",\"inserts\":[\"\\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/database\\/backup\\/csmBackup_20200504_150048217.zip\"],\"timestamp\":1588622449528}<\/code>"
          }
        }
      }
    }
    ,
    "\/system/backupserver/download" : {
      "get" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>backupdatabase<\/h2>\nCreate and downloads a server backup.\n\n<h3>Example curl<\/h3>\n<code>curl -X GET -k -H 'X-Auth-Token: ebdd0df8e67c4317bac177967c3d1a7e' -H 'Content-Type: application/octet-stream' https://localhost:9559/CSM/web/system//backupserver/download --output backup.zip\n<\/code>",
        "operationId" : "backupserverdownload",
        "produces" : [ "application/octet-stream" ],
        "parameters" : [
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "A file down loaded into the client.\nExample output:\n<code> <\/code>",
"type" : "file"
            },
            "description" : "A file down loaded into the client.\nExample output:\n<code> <\/code>"
          }
        }
      }
    }
    ,
    "\/system/checkcompatibility" : {
      "get" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>Not currently supported for external use<\/h2>",
        "operationId" : "checkCompatibility",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "apiversion",
            "in" : "query",
            "required" : true,
            "type" : "integer",
            "format" : "int32",
            "description" : ""
          }
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "",
"type" : "string"
            },
            "description" : ""
          }
        }
      }
    }
    ,
    "\/system/dualcontrol" : {
      "get" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>getDualControlStatus<\/h2>\nUse this method to determine if dual control is currently enabled of disabled on the server\n\n<h3>Example curl<\/h3>\n<code>curl -X GET -k -H 'Content-Type: application/x-www-form-urlencoded' -H 'Authorization: Basic Y3NtYWRtaW46Y3Nt' -i https://localhost:9559/CSM/web/system/dualcontrol<\/code>",
        "operationId" : "getDualControlStatus",
        "produces" : [ "*/*" ],
        "parameters" : [
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output\n<code>{\"msg\":\"IWNR2600I\",\"resultText\":\"IWNR2600I [Apr 24, 2020 12:37:01 PM] Dual Control is enabled for all sessions.\",\"inserts\":[],\"timestamp\":1587749821130}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output\n<code>{\"msg\":\"IWNR2600I\",\"resultText\":\"IWNR2600I [Apr 24, 2020 12:37:01 PM] Dual Control is enabled for all sessions.\",\"inserts\":[],\"timestamp\":1587749821130}<\/code>"
          }
        }
      }
    }
    ,
    "\/system/dualcontrol/approve/{id}" : {
      "post" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>approveDualControlEvent<\/h2>\nUse this method to approve a dual control event.  The user approving the request must be different than the one that created the request\n\n<h3>Example curl<\/h3>\n<code>curl -X POST -k -H 'Content-Type: application/x-www-form-urlencoded' -H 'Authorization: Basic Y3NtYWRtaW46Y3Nt' -i https://localhost:9559/CSM/web/system/dualcontrol/approve/1<\/code>",
        "operationId" : "approveDualControlEvent",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "id",
            "in" : "path",
            "required" : true,
            "type" : "integer",
            "format" : "int32",
            "description" : "ID of the request caller wants to approve.  ID from the 'requestid' field return from getDualControlEvents."
          }
        ],
        "responses" : {
          "201" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output\n<code>{\"msg\":\"IWNR2600I\",\"inserts\":[],\"msgTranslated\":\"IWNR2600I [Apr 24, 2020 12:33:11 PM] Dual Control is enabled for all sessions.\",\"timestamp\":1587749591862}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output\n<code>{\"msg\":\"IWNR2600I\",\"inserts\":[],\"msgTranslated\":\"IWNR2600I [Apr 24, 2020 12:33:11 PM] Dual Control is enabled for all sessions.\",\"timestamp\":1587749591862}<\/code>"
          }
        }
      }
    }
    ,
    "\/system/dualcontrol/reject/{id}/{comment}" : {
      "post" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>rejectDualControlEvent<\/h2>\nUse this method to reject a dual control event created by another user.\n\n<h3>Example curl<\/h3>\n<code>curl -X POST -k -H 'Content-Type: application/x-www-form-urlencoded' -H 'Authorization: Basic Y3NtYWRtaW46Y3Nt' -i 'https://localhost:9559/CSM/web/system/dualcontrol/reject/1/not approved'<\/code>",
        "operationId" : "rejectDualControlEvent",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "comment",
            "in" : "path",
            "type" : "string",
            "description" : "Comment to the creater of the event on why the request was rejected.  ID from the 'requestid' field return from getDualControlEvents."
          },
          {
            "name" : "id",
            "in" : "path",
            "required" : true,
            "type" : "integer",
            "format" : "int32",
            "description" : "ID of the dual control event to be rejected"
          }
        ],
        "responses" : {
          "201" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output\n<code>{\"msg\":\"IWNR2605I\",\"inserts\":[\"1\",\"csmadmin\",\"not approved\"],\"msgTranslated\":\"IWNR2605I [Apr 23, 2020 12:33:21 PM] Dual Control request 1 was rejected by user csmadmin with the following reason: not approved.\",\"timestamp\":1587663201971}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output\n<code>{\"msg\":\"IWNR2605I\",\"inserts\":[\"1\",\"csmadmin\",\"not approved\"],\"msgTranslated\":\"IWNR2605I [Apr 23, 2020 12:33:21 PM] Dual Control request 1 was rejected by user csmadmin with the following reason: not approved.\",\"timestamp\":1587663201971}<\/code>"
          }
        }
      }
    }
    ,
    "\/system/dualcontrol/requests" : {
      "get" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>getDualControlEvents<\/h2>\nReturns a list of dual control events waiting for approval or rejection\n\n<h3>Example curl<\/h3>\n<code>curl -X GET -k -H 'Content-Type: application/x-www-form-urlencoded' -H 'Authorization: Basic Y3NtYWRtaW46Y3Nt' -i https://localhost:9559/CSM/web/system/dualcontrol/requests<\/code>",
        "operationId" : "getDualControlEvents",
        "produces" : [ "*/*" ],
        "parameters" : [
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output\n<code>[{\"summary\":{\"msg\":\"IWNR2608I\",\"resultText\":\"IWNR2608I [Apr 23, 2020 12:26:57 PM] User csmadmin requested to enable Dual Control. The time of the request was 2020-04-23 12:20:53.839-0500.\",\n\"inserts\":[\"csmadmin\",\"2020-04-23 12:20:53.839-0500\"],\n\"timestamp\":1587662817464},\n\"requestinguser\":\"csmadmin\",\n\"requestid\":1,\n\"time\":1587662453839,\n\"type\":\"SET_DUALCONTROL\"}]<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output\n<code>[{\"summary\":{\"msg\":\"IWNR2608I\",\"resultText\":\"IWNR2608I [Apr 23, 2020 12:26:57 PM] User csmadmin requested to enable Dual Control. The time of the request was 2020-04-23 12:20:53.839-0500.\",\n\"inserts\":[\"csmadmin\",\"2020-04-23 12:20:53.839-0500\"],\n\"timestamp\":1587662817464},\n\"requestinguser\":\"csmadmin\",\n\"requestid\":1,\n\"time\":1587662453839,\n\"type\":\"SET_DUALCONTROL\"}]<\/code>"
          }
        }
      }
    }
    ,
    "\/system/dualcontrol/{enable}" : {
      "post" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>setDualControl<\/h2>\nUse this method to enable or disable dual control on the CSM server.\nNOTE: Enabling of disabling requires an additional user to approve the request before it is enabled or disabled\n\n<h3>Example curl<\/h3>\n<code>curl -X POST -k -H 'Content-Type: application/x-www-form-urlencoded' -H 'Authorization: Basic Y3NtYWRtaW46Y3Nt' -i https://localhost:9559/CSM/web/system/dualcontrol/true<\/code>",
        "operationId" : "setDualControl",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "enable",
            "in" : "path",
            "required" : true,
            "type" : "boolean",
            "description" : "Set to 'true' if you want to enable dual control or 'false' if you want to disable"
          }
        ],
        "responses" : {
          "201" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output\n<code>{\"msg\":\"IWNR2602W\",\"inserts\":[\"1\",\"csmadmin\",\"marisas-mbp-2.lan1\"],\"msgTranslated\":\"IWNR2602W [Apr 23, 2020 12:20:54 PM] A Dual Control request with ID 1 was added by user csmadmin on server marisas-mbp-2.lan1.\",\"timestamp\":1587662454066}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output\n<code>{\"msg\":\"IWNR2602W\",\"inserts\":[\"1\",\"csmadmin\",\"marisas-mbp-2.lan1\"],\"msgTranslated\":\"IWNR2602W [Apr 23, 2020 12:20:54 PM] A Dual Control request with ID 1 was added by user csmadmin on server marisas-mbp-2.lan1.\",\"timestamp\":1587662454066}<\/code>"
          }
        }
      }
    }
    ,
    "\/system/events/listeners/commandstatus" : {
      "post" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>Not currently supported for external use.<\/h2>",
        "operationId" : "addCommandStatusListener",
        "produces" : [ "application/json" ],
        "parameters" : [
        ],
        "responses" : {
          "201" : {
            "schema" : {
"description" : "",
"type" : "string"
            },
            "description" : ""
          }
        }
      }
    }
    ,
    "\/system/events/listeners/commandstatus/{id}" : {
      "delete" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>Not currently supported for external use.<\/h2>",
        "operationId" : "removeCommandStatusListener",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "id",
            "in" : "path",
            "required" : true,
            "type" : "integer",
            "format" : "int32",
            "description" : ""
          }
        ],
        "responses" : {
          "204" : {
            "schema" : {
"description" : "",
"type" : "string"
            },
            "description" : ""
          }
        }
      }
    }
    ,
    "\/system/events/listeners/hastatus" : {
      "post" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>Not currently supported for external use.<\/h2>",
        "operationId" : "addHAStatusListener",
        "produces" : [ "application/json" ],
        "parameters" : [
        ],
        "responses" : {
          "201" : {
            "schema" : {
"description" : "",
"type" : "string"
            },
            "description" : ""
          }
        }
      }
    }
    ,
    "\/system/events/listeners/hastatus/{id}" : {
      "delete" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>Not currently supported for external use.<\/h2>",
        "operationId" : "removeHAStatusListener",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "id",
            "in" : "path",
            "required" : true,
            "type" : "integer",
            "format" : "int32",
            "description" : ""
          }
        ],
        "responses" : {
          "204" : {
            "schema" : {
"description" : "",
"type" : "string"
            },
            "description" : ""
          }
        }
      }
    }
    ,
    "\/system/events/listeners/logevent" : {
      "post" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>Not currently supported for external use.<\/h2>",
        "operationId" : "addLogEventListener",
        "produces" : [ "application/json" ],
        "parameters" : [
        ],
        "responses" : {
          "201" : {
            "schema" : {
"description" : "",
"type" : "string"
            },
            "description" : ""
          }
        }
      }
    }
    ,
    "\/system/events/listeners/logevent/{id}" : {
      "delete" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>Not currently supported for external use.<\/h2>",
        "operationId" : "removeLogEventListener",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "id",
            "in" : "path",
            "required" : true,
            "type" : "integer",
            "format" : "int32",
            "description" : ""
          }
        ],
        "responses" : {
          "204" : {
            "schema" : {
"description" : "",
"type" : "string"
            },
            "description" : ""
          }
        }
      }
    }
    ,
    "\/system/events/listeners/sessioninfo/{session}" : {
      "post" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>Not currently supported for external use.<\/h2>",
        "operationId" : "addSessionInfoListener",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "session",
            "in" : "path",
            "type" : "string",
            "description" : ""
          }
        ],
        "responses" : {
          "201" : {
            "schema" : {
"description" : "",
"type" : "string"
            },
            "description" : ""
          }
        }
      }
    }
    ,
    "\/system/events/listeners/sessioninfo/{session}/{id}" : {
      "delete" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>Not currently supported for external use.<\/h2>",
        "operationId" : "removeSessionInfoListener",
        "produces" : [ "*/*" ],
        "parameters" : [
          {
            "name" : "id",
            "in" : "path",
            "required" : true,
            "type" : "integer",
            "format" : "int32",
            "description" : ""
          }
        ],
        "responses" : {
          "204" : {
            "schema" : {
"description" : "",
"type" : "file"
            },
            "description" : ""
          }
        }
      }
    }
    ,
    "\/system/events/listeners/sessionoverview" : {
      "post" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>Not currently supported for external use.<\/h2>",
        "operationId" : "addSessionOverviewListener",
        "produces" : [ "application/json" ],
        "parameters" : [
        ],
        "responses" : {
          "201" : {
            "schema" : {
"description" : "",
"type" : "string"
            },
            "description" : ""
          }
        }
      }
    }
    ,
    "\/system/events/listeners/sessionoverview/{id}" : {
      "delete" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>Not currently supported for external use.<\/h2>",
        "operationId" : "removeSessionOverviewListener",
        "produces" : [ "*/*" ],
        "parameters" : [
          {
            "name" : "id",
            "in" : "path",
            "required" : true,
            "type" : "integer",
            "format" : "int32",
            "description" : ""
          }
        ],
        "responses" : {
          "204" : {
            "schema" : {
"description" : "",
"type" : "file"
            },
            "description" : ""
          }
        }
      }
    }
    ,
    "\/system/events/listeners/sessionrpoalert" : {
      "post" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>Not currently supported for external use.<\/h2>",
        "operationId" : "addSessionRPOAlertListener",
        "produces" : [ "application/json" ],
        "parameters" : [
        ],
        "responses" : {
          "201" : {
            "schema" : {
"description" : "",
"type" : "string"
            },
            "description" : ""
          }
        }
      }
    }
    ,
    "\/system/events/listeners/sessoinrpoalert/{id}" : {
      "delete" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>Not currently supported for external use.<\/h2>",
        "operationId" : "removeSessionRPOAlertListener",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "id",
            "in" : "path",
            "required" : true,
            "type" : "integer",
            "format" : "int32",
            "description" : ""
          }
        ],
        "responses" : {
          "204" : {
            "schema" : {
"description" : "",
"type" : "string"
            },
            "description" : ""
          }
        }
      }
    }
    ,
    "\/system/events/queues/{id}" : {
      "delete" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>Not currently supported for external use.<\/h2>",
        "operationId" : "getEvents",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "id",
            "in" : "path",
            "required" : true,
            "type" : "integer",
            "format" : "int32",
            "description" : ""
          }
        ],
        "responses" : {
          "204" : {
            "schema" : {
"description" : "",
"type" : "string"
            },
            "description" : ""
          }
        }
      }
    }
    ,
    "\/system/ha" : {
      "get" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>getHAStatus<\/h2>\nThis method is issued to either the Active or Standby server to retrieve the connection status.\n\n<h3>Example curl<\/h3>\n<code>curl -X GET -k -H 'X-Auth-Token: ebdd0df8e67c4317bac177967c3d1a7e' -H 'Content-Type: application/x-www-form-urlencoded' -i https://localhost:9559/CSM/web/system/ha<\/code>",
        "operationId" : "getHAStatus",
        "produces" : [ "application/json" ],
        "parameters" : [
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR3048I\",\"resultText\":\"IWNR3048I [May 4, 2020 3:33:02 PM] The high availability status from server kratos.lan was successfully queried.\",\"islocalactive\":true,\"maxsupportedconnections\":1,\"localhaport\":9561,\"serverinfo\":[],\"inserts\":[\"kratos.lan\"],\"timestamp\":1588624382086}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR3048I\",\"resultText\":\"IWNR3048I [May 4, 2020 3:33:02 PM] The high availability status from server kratos.lan was successfully queried.\",\"islocalactive\":true,\"maxsupportedconnections\":1,\"localhaport\":9561,\"serverinfo\":[],\"inserts\":[\"kratos.lan\"],\"timestamp\":1588624382086}<\/code>"
          }
        }
      }
    }
    ,
    "\/system/ha/reconnect" : {
      "put" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>reconnect<\/h2>\nIssues the command to reconnect a disconnected active and standby server",
        "operationId" : "reconnect",
        "produces" : [ "application/json" ],
        "parameters" : [
        ],
        "responses" : {
          "204" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error"
          }
        }
      }
    }
    ,
    "\/system/ha/removeHaServer/{haServer}" : {
      "put" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>removeHaServer<\/h2>\nThis method removes the alternate CSM server.  If issued to the active server the standby will be removed.\n\n<h3>Example curl<\/h3>\n<code>curl -X PUT -k -H 'X-Auth-Token: ebdd0df8e67c4317bac177967c3d1a7e' -H 'Content-Type: application/x-www-form-urlencoded' -i https://localhost:9559/CSM/web/system/ha/removeHaServer/hostname<\/code>",
        "operationId" : "removeHaServer",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "haServer",
            "in" : "path",
            "type" : "string",
            "description" : "hostname of the server to remove"
          }
        ],
        "responses" : {
          "204" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error"
          }
        }
      }
    }
    ,
    "\/system/ha/setServerAsStandby/{activeServer}" : {
      "put" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>setServerAsStandby<\/h2>\nIssue this command to the server that you want to be the standby server.\nSets the server passed in to be the active server.  All data on the called server will be replaced with the data from the active server",
        "operationId" : "setServerAsStandby",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "activeServer",
            "in" : "path",
            "type" : "string",
            "description" : "IP or hostname of the active server.  This method will use the default port."
          }
        ],
        "responses" : {
          "204" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error"
          }
        }
      }
    }
    ,
    "\/system/ha/setServerAsStandby/{activeServer}/{activeHAPort}" : {
      "put" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>setServerAsStandby<\/h2>\nIssue this command to the server that you want to be the standby server.\nSets the server passed in to be the active server.  All data on the called server will be replaced with the data from the active server",
        "operationId" : "setServerAsStandby",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "activeHAPort",
            "in" : "path",
            "type" : "string",
            "description" : "Port number for the HA connection to the active server"
          },
          {
            "name" : "activeServer",
            "in" : "path",
            "type" : "string",
            "description" : "IP or hostname of the active server"
          }
        ],
        "responses" : {
          "204" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error"
          }
        }
      }
    }
    ,
    "\/system/ha/setStandbyServer/{standbyServer}/{standbyUsername}/{standbyPassword}" : {
      "put" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>setStandbyServer<\/h2>\nIssue this command to the server that you want to be the active server.\nSets the server passed in to be the standby server.  All data on the passed in server will be replaced with the data from the called server",
        "operationId" : "setStandbyServer",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "standbyPassword",
            "in" : "path",
            "type" : "string",
            "description" : "Password for the user to create a connection to the standby server"
          },
          {
            "name" : "standbyServer",
            "in" : "path",
            "type" : "string",
            "description" : "IP or hostname of the standby server"
          },
          {
            "name" : "standbyUsername",
            "in" : "path",
            "type" : "string",
            "description" : "Username to create a connection to the standby server"
          }
        ],
        "responses" : {
          "204" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error"
          }
        }
      }
    }
    ,
    "\/system/ha/setStandbyServer/{standbyServer}/{standbyUsername}/{standbyPassword}/{standByPort}" : {
      "put" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>setStandbyServer<\/h2>\nIssue this command to the server that you want to be the active server.\nSets the server passed in to be the standby server.  All data on the passed in server will be replaced with the data from the called server",
        "operationId" : "setStandbyServer",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "standByPort",
            "in" : "path",
            "type" : "string",
            "description" : "Port to use for connection to the standby server"
          },
          {
            "name" : "standbyPassword",
            "in" : "path",
            "type" : "string",
            "description" : "Password for the user to create a connection to the standby server"
          },
          {
            "name" : "standbyServer",
            "in" : "path",
            "type" : "string",
            "description" : "IP or hostname of the standby server"
          },
          {
            "name" : "standbyUsername",
            "in" : "path",
            "type" : "string",
            "description" : "Username to create a connection to the standby server"
          }
        ],
        "responses" : {
          "204" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error"
          }
        }
      }
    }
    ,
    "\/system/ha/takeover" : {
      "put" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>haTakeover<\/h2>\nIssues a takeover on the standby server making the standby server an active server.\n\n<h3>Example curl<\/h3>\n<code>curl -X PUT -k -H 'X-Auth-Token: ebdd0df8e67c4317bac177967c3d1a7e' -H 'Content-Type: application/x-www-form-urlencoded' -i https://localhost:9559/CSM/web/system/ha/takeover<\/code>",
        "operationId" : "haTakeover",
        "produces" : [ "application/json" ],
        "parameters" : [
        ],
        "responses" : {
          "204" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error"
          }
        }
      }
    }
    ,
    "\/system/heartbeat" : {
      "get" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>Not currently supported for external use<\/h2>",
        "operationId" : "getHeartbeat",
        "produces" : [ "application/json" ],
        "parameters" : [
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "",
"type" : "string"
            },
            "description" : ""
          }
        }
      }
      ,
      "post" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>Not currently supported for external use<\/h2>",
        "operationId" : "setHeartbeat",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "heartbeat",
            "in" : "formData",
            "required" : true,
            "type" : "boolean",
            "description" : ""
          }
        ],
        "responses" : {
          "201" : {
            "schema" : {
"description" : "",
"type" : "string"
            },
            "description" : ""
          }
        }
      }
    }
    ,
    "\/system/logevents" : {
      "get" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>getRecentTopLevelLogEvents<\/h2>\nGet a number of the most recent messages for a given session\n\n<h3>Example curl<\/h3>\n<code>curl -X GET -k -H 'X-Auth-Token: 11931599a4234b8cb5012fd1d7e271f9' -H 'Content-Type: application/x-www-form-urlencoded' -i 'https://localhost:9559/CSM/web/system/logevents?count=5&session=SGC'<\/code>",
        "operationId" : "getRecentTopLevelLogEvents",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "count",
            "in" : "query",
            "required" : true,
            "type" : "integer",
            "format" : "int32",
            "description" : "The number of messages to return"
          },
          {
            "name" : "session",
            "in" : "query",
            "type" : "string",
            "description" : "(optional) filter messages on session"
          }
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1602I\",\n\"resultText\":\"IWNR1602I [Apr 29, 2020 3:09:17 PM] Successfully retrieved session messages.\",\n\"logevents\":[\n{\"eventnumber\":1588190957730,\n\"eventfilter\":\"com.ibm.csm.common.events.LogEvent\",\n\"createddate\":1588190957730,\n\"session\":\"SGC\",\n\"msgid\":\"IWNR1960I\",\n\"time\":\"Wed Apr 29 15:09:17 CDT 2020\",\n\"id\":215983,\n\"user\":\"Server\",\n\"msgtype\":0,\n\"inserts\":\" SGC Severe Normal\",\n\"timestamp\":1588190652097},\n{\"eventnumber\":1588190957730,\n\"eventfilter\":\"com.ibm.csm.common.events.LogEvent\",\n\"createddate\":1588190957730,\n\"session\":\"SGC\",\n\"msgid\":\"IWNR1960I\",\n\"time\":\"Wed Apr 29 15:09:17 CDT 2020\",\"id\":215916,\n\"user\":\"Server\",\n\"msgtype\":0,\n\"inserts\":\" SGC Severe Normal\",\n\"timestamp\":1588168663725}],\n\"inserts\":[],\n\"timestamp\":1588190957730}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1602I\",\n\"resultText\":\"IWNR1602I [Apr 29, 2020 3:09:17 PM] Successfully retrieved session messages.\",\n\"logevents\":[\n{\"eventnumber\":1588190957730,\n\"eventfilter\":\"com.ibm.csm.common.events.LogEvent\",\n\"createddate\":1588190957730,\n\"session\":\"SGC\",\n\"msgid\":\"IWNR1960I\",\n\"time\":\"Wed Apr 29 15:09:17 CDT 2020\",\n\"id\":215983,\n\"user\":\"Server\",\n\"msgtype\":0,\n\"inserts\":\" SGC Severe Normal\",\n\"timestamp\":1588190652097},\n{\"eventnumber\":1588190957730,\n\"eventfilter\":\"com.ibm.csm.common.events.LogEvent\",\n\"createddate\":1588190957730,\n\"session\":\"SGC\",\n\"msgid\":\"IWNR1960I\",\n\"time\":\"Wed Apr 29 15:09:17 CDT 2020\",\"id\":215916,\n\"user\":\"Server\",\n\"msgtype\":0,\n\"inserts\":\" SGC Severe Normal\",\n\"timestamp\":1588168663725}],\n\"inserts\":[],\n\"timestamp\":1588190957730}<\/code>"
          }
        }
      }
      ,
      "put" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>Not currently supported for external use.<\/h2>",
        "operationId" : "recordLogMessage",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "inserts",
            "in" : "formData",
            "type" : "string",
            "description" : ""
          },
          {
            "name" : "key",
            "in" : "formData",
            "type" : "string",
            "description" : ""
          }
        ],
        "responses" : {
          "204" : {
            "schema" : {
"description" : "",
"type" : "string"
            },
            "description" : ""
          }
        }
      }
    }
    ,
    "\/system/logevents/{eventnumber}" : {
      "get" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>Not currently supported for external use<\/h2>",
        "operationId" : "getLogEventBundle",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "eventnumber",
            "in" : "path",
            "required" : true,
            "type" : "integer",
            "format" : "int64",
            "description" : ""
          }
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "",
"type" : "string"
            },
            "description" : ""
          }
        }
      }
    }
    ,
    "\/system/logpackages" : {
      "get" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>getLogPackages<\/h2>\nGets a list of log packages and their location on the server\n\n<h3>Example curl<\/h3>\n<code>curl -X GET -k -H 'X-Auth-Token: ebdd0df8e67c4317bac177967c3d1a7e' -H 'Content-Type: application/x-www-form-urlencoded' -i https://localhost:9559/CSM/web/system/logpackages<\/code>",
        "operationId" : "getLogPackages",
        "produces" : [ "application/json" ],
        "parameters" : [
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>[\n\"\\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/diagnostics\\/CSM-kratos_2020-04-20_13-25-39.jar\",\n\"\\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/diagnostics\\/CSM-kratos_2020-04-30_18-20-10.jar\",\n\"\\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/diagnostics\\/CSM-kratos_2020-05-01_09-31-15.jar\",\n\"\\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/diagnostics\\/CSM-kratos_2020-05-01_09-54-11.jar\",\n\"\\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/diagnostics\\/CSM-kratos_2020-05-04_13-25-06.jar\",\n\"\\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/diagnostics\\/CSM-kratos_2020-05-01_09-33-23.jar\",\n\"\\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/diagnostics\\/CSM-kratos_2020-05-01_09-13-46.jar\",\n\"\\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/diagnostics\\/CSM-kratos_2020-05-01_09-09-23.jar\",\n\"\\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/diagnostics\\/CSM-kratos_2020-05-01_09-12-05.jar\",\n\"\\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/diagnostics\\/CSM-kratos_2020-05-04_13-15-30.jar\"]<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>[\n\"\\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/diagnostics\\/CSM-kratos_2020-04-20_13-25-39.jar\",\n\"\\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/diagnostics\\/CSM-kratos_2020-04-30_18-20-10.jar\",\n\"\\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/diagnostics\\/CSM-kratos_2020-05-01_09-31-15.jar\",\n\"\\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/diagnostics\\/CSM-kratos_2020-05-01_09-54-11.jar\",\n\"\\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/diagnostics\\/CSM-kratos_2020-05-04_13-25-06.jar\",\n\"\\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/diagnostics\\/CSM-kratos_2020-05-01_09-33-23.jar\",\n\"\\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/diagnostics\\/CSM-kratos_2020-05-01_09-13-46.jar\",\n\"\\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/diagnostics\\/CSM-kratos_2020-05-01_09-09-23.jar\",\n\"\\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/diagnostics\\/CSM-kratos_2020-05-01_09-12-05.jar\",\n\"\\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/diagnostics\\/CSM-kratos_2020-05-04_13-15-30.jar\"]<\/code>"
          }
        }
      }
      ,
      "put" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>makeLogPackage<\/h2>\nThis method will package all log files on the server into a .jar file that can be used for support\n\n<h3>Example curl<\/h3>\n<code>curl -X PUT -k -H 'X-Auth-Token: ebdd0df8e67c4317bac177967c3d1a7e' -H 'Content-Type: application/x-www-form-urlencoded' -i https://localhost:9559/CSM/web/system/logpackages<\/code>",
        "operationId" : "makeLogPackage",
        "produces" : [ "application/json" ],
        "parameters" : [
        ],
        "responses" : {
          "204" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR6027I\",\"inserts\":[],\"msgTranslated\":\"IWNR6027I [May 4, 2020 3:30:43 PM] The creation of the log package is in progress.\",\"timestamp\":1588624243624}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR6027I\",\"inserts\":[],\"msgTranslated\":\"IWNR6027I [May 4, 2020 3:30:43 PM] The creation of the log package is in progress.\",\"timestamp\":1588624243624}<\/code>"
          }
        }
      }
    }
    ,
    "\/system/logpackages/synchronous" : {
      "put" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>makeLogPackage<\/h2>\nThis method will package all log files on the server into a .jar file that can be used for support - this call is a synchronous call and will not return to caller until package is complete.  Call make take awhile\n\n<h3>Example curl<\/h3>\n<code>curl -X PUT -k -H 'X-Auth-Token: ebdd0df8e67c4317bac177967c3d1a7e' -H 'Content-Type: application/x-www-form-urlencoded' -i https://localhost:9559/CSM/web/system/logpackages/synchronous<\/code>",
        "operationId" : "makeLogPackageSynchronous",
        "produces" : [ "application/json" ],
        "parameters" : [
        ],
        "responses" : {
          "204" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1198I\",\"inserts\":[\"\\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/diagnostics\\/CSM-kratos_2021-01-05_13-26-18.jar\"],\"msgTranslated\":\"IWNR1198I [Jan 5, 2021 1:26:18 PM] Log packages were successfully created and placed at location \\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/diagnostics\\/CSM-kratos_2021-01-05_13-26-18.jar\",\"timestamp\":1609874778225}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1198I\",\"inserts\":[\"\\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/diagnostics\\/CSM-kratos_2021-01-05_13-26-18.jar\"],\"msgTranslated\":\"IWNR1198I [Jan 5, 2021 1:26:18 PM] Log packages were successfully created and placed at location \\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/diagnostics\\/CSM-kratos_2021-01-05_13-26-18.jar\",\"timestamp\":1609874778225}<\/code>"
          }
        }
      }
    }
    ,
    "\/system/logpackages/synchronous/download" : {
      "get" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>makeLogPackage<\/h2>\nThis method will package all log files on the server into a .jar file that can be used for support - this call is a synchronous call and will not return to caller until package is complete.  Call make take awhile\nThe file created is a .jar file so use a .jar extension when specifying the output file\n\n<h3>Example curl<\/h3>\n<code>curl -X GET -k -H 'X-Auth-Token: ebdd0df8e67c4317bac177967c3d1a7e' -H 'Content-Type: application/octet-stream' https://localhost:9559/CSM/web/system/logpackages/synchronous/download -o logs.jar <\/code>",
        "operationId" : "makeLogPackageSynchronous2",
        "produces" : [ "application/octet-stream" ],
        "parameters" : [
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1198I\",\"inserts\":[\"\\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/diagnostics\\/CSM-kratos_2021-01-05_13-26-18.jar\"],\"msgTranslated\":\"IWNR1198I [Jan 5, 2021 1:26:18 PM] Log packages were successfully created and placed at location \\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/diagnostics\\/CSM-kratos_2021-01-05_13-26-18.jar\",\"timestamp\":1609874778225}<\/code>",
"type" : "file"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1198I\",\"inserts\":[\"\\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/diagnostics\\/CSM-kratos_2021-01-05_13-26-18.jar\"],\"msgTranslated\":\"IWNR1198I [Jan 5, 2021 1:26:18 PM] Log packages were successfully created and placed at location \\/Users\\/blead761\\/CSM\\/source\\/CSM-Team\\/workspace\\/Dev-Runtime\\/runtime\\/csm\\/liberty\\/wlp\\/usr\\/servers\\/csmServer\\/diagnostics\\/CSM-kratos_2021-01-05_13-26-18.jar\",\"timestamp\":1609874778225}<\/code>"
          }
        }
      }
    }
    ,
    "\/system/logpackages/{id}" : {
      "get" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>Not currently supported for external use. <\/h2>",
        "operationId" : "getLogPackages",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "id",
            "in" : "path",
            "type" : "string",
            "description" : ""
          }
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "",
"type" : "string"
            },
            "description" : ""
          }
        }
      }
    }
    ,
    "\/system/notification/email/recipient" : {
      "get" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>getEmailRecipients<\/h2>\nGet the list of e-mail recipients for e-mail alerts\n\n<h3>Example curl<\/h3>\n<code>curl -X GET -k -H 'X-Auth-Token: ebdd0df8e67c4317bac177967c3d1a7e' -H 'Content-Type: application/x-www-form-urlencoded' -i https://localhost:9559/CSM/web/system/notification/email/recipient<\/code>",
        "operationId" : "getEmailRecipients",
        "produces" : [ "application/json" ],
        "parameters" : [
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output\n<code>{\"msg\":\"IWNR1717I\",\"addresses\":[\"emailAddress.com\"],\"inserts\":[],\"msgTranslated\":\"IWNR1717I [May 4, 2020 4:46:41 PM] The recipient list for email alerts.\",\"timestamp\":1588628801155}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output\n<code>{\"msg\":\"IWNR1717I\",\"addresses\":[\"emailAddress.com\"],\"inserts\":[],\"msgTranslated\":\"IWNR1717I [May 4, 2020 4:46:41 PM] The recipient list for email alerts.\",\"timestamp\":1588628801155}<\/code>"
          }
        }
      }
      ,
      "put" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>addEmailRecipient<\/h2>\nAdd an e-mail address to the list of recipients for e-mail alerts. Will return the new list after processing the request.\n\n<h3>Example curl<\/h3>\n<code>curl -X PUT -k -H 'X-Auth-Token: ebdd0df8e67c4317bac177967c3d1a7e' -H 'Content-Type: application/x-www-form-urlencoded' -i https://localhost:9559/CSM/web/system/notification/email/recipient --data 'address=2342358%40hsgg.com'<\/code>",
        "operationId" : "addEmailRecipient",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "address",
            "in" : "formData",
            "type" : "string",
            "description" : "Email address for the user you want to start receiving notifications"
          }
        ],
        "responses" : {
          "204" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output\n<code>{\"msg\":\"IWNR1720I\",\"addresses\":[\"2342358@hsgg.com\",\"blesdf234asdf@sd.ibm.com\"],\"inserts\":[],\"results\":[{\"msg\":\"IWNR1724I\",\"inserts\":[\"2342358@hsgg.com\",\"ALL_EVENTS\"],\"msgTranslated\":\"IWNR1724I [May 4, 2020 5:02:16 PM] The email recipient 2342358@hsgg.com has been added to category ALL_EVENTS.\",\"timestamp\":1588629736938}],\"msgTranslated\":\"IWNR1720I [May 4, 2020 5:02:16 PM] The email recipient list has been updated.\",\"timestamp\":1588629736938}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output\n<code>{\"msg\":\"IWNR1720I\",\"addresses\":[\"2342358@hsgg.com\",\"blesdf234asdf@sd.ibm.com\"],\"inserts\":[],\"results\":[{\"msg\":\"IWNR1724I\",\"inserts\":[\"2342358@hsgg.com\",\"ALL_EVENTS\"],\"msgTranslated\":\"IWNR1724I [May 4, 2020 5:02:16 PM] The email recipient 2342358@hsgg.com has been added to category ALL_EVENTS.\",\"timestamp\":1588629736938}],\"msgTranslated\":\"IWNR1720I [May 4, 2020 5:02:16 PM] The email recipient list has been updated.\",\"timestamp\":1588629736938}<\/code>"
          }
        }
      }
    }
    ,
    "\/system/notification/email/recipient/{address}" : {
      "delete" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>removeEmailRecipient<\/h2>\nRemove an e-mail address from the list of recipients for e-mail alerts.  Will return the new list after processing the request.\n\n<h3>Example curl<\/h3>\n<code>curl -X DELETE -k -H 'X-Auth-Token: ebdd0df8e67c4317bac177967c3d1a7e' -H 'Content-Type: application/x-www-form-urlencoded' -i 'https://localhost:9559/CSM/web/system/notification/email/recipient/23235%40ibm.com'<\/code>",
        "operationId" : "removeEmailRecipient",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "address",
            "in" : "path",
            "type" : "string",
            "description" : "The email address to remove from notifications"
          }
        ],
        "responses" : {
          "204" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output\n<code>{\"msg\":\"IWNR1720I\",\"addresses\":[],\"inserts\":[],\"results\":[{\"msg\":\"IWNR1723I\",\"inserts\":[\"23235@ibm.com\",\"ALL_EVENTS\"],\"msgTranslated\":\"IWNR1723I [May 4, 2020 5:15:24 PM] The email recipient 23235@ibm.com has been removed from category ALL_EVENTS.\",\"timestamp\":1588630524722}],\"msgTranslated\":\"IWNR1720I [May 4, 2020 5:15:24 PM] The email recipient list has been updated.\",\"timestamp\":1588630524722}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output\n<code>{\"msg\":\"IWNR1720I\",\"addresses\":[],\"inserts\":[],\"results\":[{\"msg\":\"IWNR1723I\",\"inserts\":[\"23235@ibm.com\",\"ALL_EVENTS\"],\"msgTranslated\":\"IWNR1723I [May 4, 2020 5:15:24 PM] The email recipient 23235@ibm.com has been removed from category ALL_EVENTS.\",\"timestamp\":1588630524722}],\"msgTranslated\":\"IWNR1720I [May 4, 2020 5:15:24 PM] The email recipient list has been updated.\",\"timestamp\":1588630524722}<\/code>"
          }
        }
      }
    }
    ,
    "\/system/notification/email/smtp" : {
      "delete" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>removeSMTPConfiguration<\/h2>\nRemoves the SMTP server configuration for e-mail alerts.",
        "operationId" : "removeSMTPConfiguration",
        "produces" : [ "application/json" ],
        "parameters" : [
        ],
        "responses" : {
          "204" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error"
          }
        }
      }
      ,
      "get" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>getSMTPConfiguration<\/h2>\nReturns the SMTP configuration for where email events are sent\n\n<h3>Example curl<\/h3>\n<code>curl -X GET -k -H 'X-Auth-Token: ebdd0df8e67c4317bac177967c3d1a7e' -H 'Content-Type: application/x-www-form-urlencoded' -i https://localhost:9559/CSM/web/system/notification/email/smtp<\/code>",
        "operationId" : "getSMTPConfiguration",
        "produces" : [ "application/json" ],
        "parameters" : [
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1715I\",\"server\":\"na.relay.ibm.com\",\"port\":\"25\",\"replyto\":null,\"inserts\":[],\"msgTranslated\":\"IWNR1715I [May 4, 2020 4:40:43 PM] The SMTP server configuration.\",\"timestamp\":1588628443277}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error\nExample output:\n<code>{\"msg\":\"IWNR1715I\",\"server\":\"na.relay.ibm.com\",\"port\":\"25\",\"replyto\":null,\"inserts\":[],\"msgTranslated\":\"IWNR1715I [May 4, 2020 4:40:43 PM] The SMTP server configuration.\",\"timestamp\":1588628443277}<\/code>"
          }
        }
      }
      ,
      "put" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>setSMTPConfiguration<\/h2>\nSet the SMTP server configuration for e-mail notifications.\nWill return the configuration after processing the request.",
        "operationId" : "setSMTPConfiguration",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "host",
            "in" : "formData",
            "type" : "string",
            "description" : "Name of the SMTP server to set for email notifications"
          },
          {
            "name" : "port",
            "in" : "formData",
            "type" : "string",
            "description" : "Port to call on the SMTP server"
          },
          {
            "name" : "replyto",
            "in" : "formData",
            "type" : "string",
            "description" : "Sets an option email address that will receive any messages if an event is replied to"
          }
        ],
        "responses" : {
          "204" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error"
          }
        }
      }
    }
    ,
    "\/system/notification/email/test" : {
      "get" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>testEmailAlert<\/h2>\nSends a test e-mail alert using the current e-mail alert configuration.",
        "operationId" : "testEmailAlert",
        "produces" : [ "application/json" ],
        "parameters" : [
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error",
"type" : "string"
            },
            "description" : "JSON String representing the result of the command.   'I' = successful, 'W' = warning, 'E' = error"
          }
        }
      }
    }
    ,
    "\/system/security/auth/sync" : {
      "post" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>Not currently supported for external use.<\/h2>",
        "operationId" : "syncAuthService",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "hostname",
            "in" : "formData",
            "type" : "string",
            "description" : ""
          },
          {
            "name" : "password",
            "in" : "formData",
            "type" : "string",
            "description" : ""
          },
          {
            "name" : "port",
            "in" : "formData",
            "required" : true,
            "type" : "integer",
            "format" : "int32",
            "description" : ""
          },
          {
            "name" : "username",
            "in" : "formData",
            "type" : "string",
            "description" : ""
          }
        ],
        "responses" : {
          "201" : {
            "schema" : {
"description" : "",
"type" : "string"
            },
            "description" : ""
          }
        }
      }
    }
    ,
    "\/system/security/connection/zos/encryption/disable" : {
      "post" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>Not currently supported for external use.<\/h2>",
        "operationId" : "disableZOSConnectionEncryption",
        "produces" : [ "application/json" ],
        "parameters" : [
        ],
        "responses" : {
          "201" : {
            "schema" : {
"description" : "",
"type" : "string"
            },
            "description" : ""
          }
        }
      }
    }
    ,
    "\/system/security/connection/zos/encryption/enable" : {
      "post" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>Not currently supported for external use.<\/h2>",
        "operationId" : "enableZOSConnectionEncryption",
        "produces" : [ "application/json" ],
        "parameters" : [
        ],
        "responses" : {
          "201" : {
            "schema" : {
"description" : "",
"type" : "string"
            },
            "description" : ""
          }
        }
      }
    }
    ,
    "\/system/sessiontypes" : {
      "get" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>getsessiontypes<\/h2>\nReturns the list of available copy types.  Use the \"shortname\" on the createsession API to create a session\n\n<h3>Example curl:<\/h3>\n<code>curl -X GET -k -H 'X-Auth-Token: e6bd510f2032461b8fe4d513d8bd15f6' -H 'Content-Type: application/x-www-form-urlencoded' -i https://hostname:9559/CSM/web/system/sessiontypes<\/code>",
        "operationId" : "getSessionTypes",
        "produces" : [ "application/json" ],
        "parameters" : [
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON string representing a list of all available session types.  Use \"shortname\" value when creating a session\n<code>[{\"name\":\"FlashCopy\",\"shortname\":\"FC\"},{\"name\":\"Snapshot\",\"shortname\":\"Snapshot\"},{\"name\":\"Safeguarded Copy\",\"shortname\":\"SGC\"},{\"name\":\"Metro Mirror Single Direction\",\"shortname\":\"MMBasic\"},{\"name\":\"Metro Mirror Failover\\/Failback\",\"shortname\":\"MM\"},{\"name\":\"Metro Mirror Failover\\/Failback w\\/ Practice\",\"shortname\":\"MMPracticeOneSite\"},{\"name\":\"Metro Mirror Failover\\/Failback w\\/ Practice\",\"shortname\":\"MMPracticeOneSiteSVC\"},{\"name\":\"Metro Mirror Failover\\/Failback\",\"shortname\":\"MMXIV\"},{\"name\":\"Global Mirror Single Direction\",\"shortname\":\"GMBasic\"},{\"name\":\"Global Mirror Single Direction\",\"shortname\":\"GMBasicSVC\"},{\"name\":\"Global Mirror Failover\\/Failback\",\"shortname\":\"GM\"},{\"name\":\"Global Mirror Failover\\/Failback\",\"shortname\":\"GMSVC\"},{\"name\":\"Global Mirror Failover\\/Failback\",\"shortname\":\"GMXIV\"},{\"name\":\"Global Mirror Failover\\/Failback w\\/ Practice\",\"shortname\":\"GMPracticeOneSiteSVC\"},{\"name\":\"Global Mirror Failover\\/Failback w\\/ Practice\",\"shortname\":\"GMPracticeOneSite\"},{\"name\":\"Global Mirror Either Direction w\\/ Two Site Practice\",\"shortname\":\"GMPracticeTwoSite\"},{\"name\":\"Global Mirror Failover\\/Failback w\\/ Change Volumes\",\"shortname\":\"GMCVSVC\"},{\"name\":\"Global Mirror Either Direction\",\"shortname\":\"GMTwoSite\"},{\"name\":\"Metro Global Mirror\",\"shortname\":\"MGM\"},{\"name\":\"Metro Global Mirror w\\/ Practice\",\"shortname\":\"MGMPracticeOneSite\"},{\"name\":\"Metro Mirror - Metro Mirror\",\"shortname\":\"MT_MM_MM\"},{\"name\":\"Metro Mirror - Global Mirror\",\"shortname\":\"MT_MM_GM\"},{\"name\":\"Metro Mirror - Global Mirror w\\/ Practice\",\"shortname\":\"MT_MM_GMPractice\"},{\"name\":\"Metro Mirror - Global Mirror w\\/ Site 3 Global Mirror\",\"shortname\":\"MT_MM_GM_Site3GM\"},{\"name\":\"Metro Mirror - Global Mirror w\\/ Site 4 Replication\",\"shortname\":\"MT_MM_GM_4Site\"},{\"name\":\"Metro Mirror - Global Mirror\",\"shortname\":\"MT_MM_GM_XIV\"},{\"name\":\"Metro Mirror - Metro Mirror w\\/ Site 4 Replication\",\"shortname\":\"MT_MM_MM_4Site\"}]<\/code>",
"type" : "string"
            },
            "description" : "JSON string representing a list of all available session types.  Use \"shortname\" value when creating a session\n<code>[{\"name\":\"FlashCopy\",\"shortname\":\"FC\"},{\"name\":\"Snapshot\",\"shortname\":\"Snapshot\"},{\"name\":\"Safeguarded Copy\",\"shortname\":\"SGC\"},{\"name\":\"Metro Mirror Single Direction\",\"shortname\":\"MMBasic\"},{\"name\":\"Metro Mirror Failover\\/Failback\",\"shortname\":\"MM\"},{\"name\":\"Metro Mirror Failover\\/Failback w\\/ Practice\",\"shortname\":\"MMPracticeOneSite\"},{\"name\":\"Metro Mirror Failover\\/Failback w\\/ Practice\",\"shortname\":\"MMPracticeOneSiteSVC\"},{\"name\":\"Metro Mirror Failover\\/Failback\",\"shortname\":\"MMXIV\"},{\"name\":\"Global Mirror Single Direction\",\"shortname\":\"GMBasic\"},{\"name\":\"Global Mirror Single Direction\",\"shortname\":\"GMBasicSVC\"},{\"name\":\"Global Mirror Failover\\/Failback\",\"shortname\":\"GM\"},{\"name\":\"Global Mirror Failover\\/Failback\",\"shortname\":\"GMSVC\"},{\"name\":\"Global Mirror Failover\\/Failback\",\"shortname\":\"GMXIV\"},{\"name\":\"Global Mirror Failover\\/Failback w\\/ Practice\",\"shortname\":\"GMPracticeOneSiteSVC\"},{\"name\":\"Global Mirror Failover\\/Failback w\\/ Practice\",\"shortname\":\"GMPracticeOneSite\"},{\"name\":\"Global Mirror Either Direction w\\/ Two Site Practice\",\"shortname\":\"GMPracticeTwoSite\"},{\"name\":\"Global Mirror Failover\\/Failback w\\/ Change Volumes\",\"shortname\":\"GMCVSVC\"},{\"name\":\"Global Mirror Either Direction\",\"shortname\":\"GMTwoSite\"},{\"name\":\"Metro Global Mirror\",\"shortname\":\"MGM\"},{\"name\":\"Metro Global Mirror w\\/ Practice\",\"shortname\":\"MGMPracticeOneSite\"},{\"name\":\"Metro Mirror - Metro Mirror\",\"shortname\":\"MT_MM_MM\"},{\"name\":\"Metro Mirror - Global Mirror\",\"shortname\":\"MT_MM_GM\"},{\"name\":\"Metro Mirror - Global Mirror w\\/ Practice\",\"shortname\":\"MT_MM_GMPractice\"},{\"name\":\"Metro Mirror - Global Mirror w\\/ Site 3 Global Mirror\",\"shortname\":\"MT_MM_GM_Site3GM\"},{\"name\":\"Metro Mirror - Global Mirror w\\/ Site 4 Replication\",\"shortname\":\"MT_MM_GM_4Site\"},{\"name\":\"Metro Mirror - Global Mirror\",\"shortname\":\"MT_MM_GM_XIV\"},{\"name\":\"Metro Mirror - Metro Mirror w\\/ Site 4 Replication\",\"shortname\":\"MT_MM_MM_4Site\"}]<\/code>"
          }
        }
      }
    }
    ,
    "\/system/storagesystems/{id}" : {
      "get" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>Not currently supported for external use<\/h2>",
        "operationId" : "getSessionsByStorageSystem",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "id",
            "in" : "path",
            "type" : "string",
            "description" : ""
          },
          {
            "name" : "activesessions",
            "in" : "query",
            "required" : true,
            "type" : "boolean",
            "description" : ""
          }
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "",
"type" : "string"
            },
            "description" : ""
          }
        }
      }
    }
    ,
    "\/system/v1/tokens" : {
      "post" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>requestToken<\/h2>\nThis method allows a REST caller to request a token String to use for authentication.\nThe passed in username and password will be used for authentication and if authenticated the resulting json will contain the token to use on all subsequent calls.\nNOTE: The token provided will expire automatically and a new token will be necessary after a default of two hours.\n\n<h3>Example curl:<\/h3>\n<code>curl -X POST -k -H 'Accept-Language: en-US' -H 'Content-Type: application/x-www-form-urlencoded' -i https://hostname:9559/CSM/web/system/v1/tokens --data 'username=csmadmin&password=csm'<\/code>\n\n<h3> Principal JSON keys returned in response <\/h3>\n<ol style=\"list-style-type:disc;\">\n<li> <b>msg<\/b> - The message number for the result.  'I' = successful, 'W' = warning, 'E' = error <\/li>\n<li><b>token<\/b> - The token authentication String that can be used with the X-Auth-Token header on subsequent REST calls for authentication <\/li>\n<li><b>created_time_milliseconds<\/b> - Time in milliseconds since January 1, 1970, 00:00:00 GMT when the token was created <\/li>\n<li><b>expire_time_milliseconds<\/b> - Time in milliseconds since January 1, 1970, 00:00:00 GMT when the token will expire <\/li>\n<\/ol>",
        "operationId" : "requestToken",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "password",
            "in" : "formData",
            "type" : "string",
            "description" : "Password for the user specified by username"
          },
          {
            "name" : "username",
            "in" : "formData",
            "type" : "string",
            "description" : "Name of a user authorized to access the server"
          }
        ],
        "responses" : {
          "201" : {
            "schema" : {
"description" : "JSON String representing CmdResult object for the request.  The final character of the 'msg' key indicates completion status for the request.  'I' = successful, 'W' = warning, 'E' = error\n\n<code>{ \"msg\": \"IWNR4005I\",\n\"expire_time_milliseconds\": 1586548094513,\n\"inserts\": [\"csmadmin\"],\n\"user\": \"csmadmin\",\n\"msgTranslated\": \"IWNR4005I [Apr 10, 2020 12:48:14 PM] Successfully authenticated user {1}.\",\n\"created_time_milliseconds\": 1586540894513,\n\"timestamp\": 1586540894513,\n\"token\": \"008d4b1e4dd54501a537340842e7b4d7\"\n}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing CmdResult object for the request.  The final character of the 'msg' key indicates completion status for the request.  'I' = successful, 'W' = warning, 'E' = error\n\n<code>{ \"msg\": \"IWNR4005I\",\n\"expire_time_milliseconds\": 1586548094513,\n\"inserts\": [\"csmadmin\"],\n\"user\": \"csmadmin\",\n\"msgTranslated\": \"IWNR4005I [Apr 10, 2020 12:48:14 PM] Successfully authenticated user {1}.\",\n\"created_time_milliseconds\": 1586540894513,\n\"timestamp\": 1586540894513,\n\"token\": \"008d4b1e4dd54501a537340842e7b4d7\"\n}<\/code>"
          }
        }
      }
    }
    ,
    "\/system/version" : {
      "get" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>version<\/h2>\nThis method returns the current version of the CSM server\n\n<h3>Example curl:<\/h3>\n<code>curl -X GET -k -H 'Accept-Language: en-US' -H 'Content-Type: application/x-www-form-urlencoded' -H 'Authorization: Basic Y3NtYWRtaW46Y3Nt' -i https://localhost:9559/CSM/web/system/version<\/code>",
        "operationId" : "checkCompatibility",
        "produces" : [ "application/json" ],
        "parameters" : [
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON String representing version data\n\n<code>{\"version\":\"6.3.1\"}<\/code>",
"type" : "string"
            },
            "description" : "JSON String representing version data\n\n<code>{\"version\":\"6.3.1\"}<\/code>"
          }
        }
      }
    }
    ,
    "\/system/volcounts" : {
      "get" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>getvolcounts<\/h2>\nReturns the counts of volumes managed by CSM.\n\n<h3>Example curl:<\/h3>\n<code>curl -X GET -k -H 'X-Auth-Token: e6bd510f2032461b8fe4d513d8bd15f6' -H 'Content-Type: application/x-www-form-urlencoded' -i https://hostname:9559/CSM/web/system/volcounts<\/code>",
        "operationId" : "getVolCounts",
        "produces" : [ "application/json" ],
        "parameters" : [
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "JSON string representing a list of all available session types.  Use \"shortname\" value when creating a session\n<code>[{\"totalvolsnotinsessions\":0,\"rcprodcapacity\":\"407.5 MiB\",\"totalvolsinsessions\":30,\"prodcapacity\":\"407.5 MiB\",\"sgcprodvols\":0,\"totalvolsdiscovered\":30,\"fcprodcapacity\":\"407.5 MiB\",\"tgtvols\":24,\"sgcprodcapacity\":\"0.0 KiB\",\"fcprodvols\":6,\"prodvols\":6,\"rcprodvols\":6,\"tgtcapacity\":\"1.6 GiB\"}]<\/code>",
"type" : "string"
            },
            "description" : "JSON string representing a list of all available session types.  Use \"shortname\" value when creating a session\n<code>[{\"totalvolsnotinsessions\":0,\"rcprodcapacity\":\"407.5 MiB\",\"totalvolsinsessions\":30,\"prodcapacity\":\"407.5 MiB\",\"sgcprodvols\":0,\"totalvolsdiscovered\":30,\"fcprodcapacity\":\"407.5 MiB\",\"tgtvols\":24,\"sgcprodcapacity\":\"0.0 KiB\",\"fcprodvols\":6,\"prodvols\":6,\"rcprodvols\":6,\"tgtcapacity\":\"1.6 GiB\"}]<\/code>"
          }
        }
      }
    }
    ,
    "\/system/volumes" : {
      "post" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>Not currently supported for external use<\/h2>",
        "operationId" : "getSessionsByVolume",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "volumeids",
            "in" : "formData",
            "type" : "string",
            "description" : ""
          }
        ],
        "responses" : {
          "201" : {
            "schema" : {
"description" : "",
"type" : "string"
            },
            "description" : ""
          }
        }
      }
    }
    ,
    "\/system/volumes/{id}" : {
      "get" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>Not currently supported for external use<\/h2>",
        "operationId" : "getSessionInfoByVolume",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "id",
            "in" : "path",
            "type" : "string",
            "description" : ""
          },
          {
            "name" : "sessiontypes",
            "in" : "query",
            "type" : "string",
            "description" : ""
          }
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "",
"type" : "string"
            },
            "description" : ""
          }
        }
      }
    }
    ,
    "\/system/volumes/{id}/isinuse" : {
      "get" : {
        "tags" : [ "SystemService" ],
        "description" : "<h2>Not currently supported for external use<\/h2>",
        "operationId" : "isVolumeInUse",
        "produces" : [ "application/json" ],
        "parameters" : [
          {
            "name" : "id",
            "in" : "path",
            "type" : "string",
            "description" : ""
          }
        ],
        "responses" : {
          "200" : {
            "schema" : {
"description" : "",
"type" : "string"
            },
            "description" : ""
          }
        }
      }
    }
  }
}
