HMC Web Service API
HMC Web Service API
IBM Z
Hardware Management Console Web Services API
Version 2.14.0
SC27-2636-04
Level 04a
IBM
IBM Z
Hardware Management Console Web Services API
Version 2.14.0
SC27-2636-04
Level 04a
Note:
Before you use this information and the product it supports, read the information in “Safety” on
page xxix, Appendix E, “Notices,” on page 1405, and IBM Systems Environmental Notices and User
Guide, Z125–5823.
This edition, SC27-2636-04, applies to the IBM Z and IBM LinuxONE servers. This edition replaces SC27-2636-03.
There might be a newer version of this document in a PDF file available on Resource Link. Go to
http://www.ibm.com/servers/resourcelink and click Library on the navigation bar.
© Copyright IBM Corporation 2017, 2018.
US Government Users Restricted Rights – Use, duplication or disclosure restricted by GSA ADP Schedule Contract
with IBM Corp.
Level 04a
Contents
Figures . . . . . . . . . . . . . . . xi Common request validation reason codes . . . 41
Common request processing reason codes . . . 45
Tables . . . . . . . . . . . . . . . xxi Use of chunked response encoding . . . . . . 45
Filter query parameters . . . . . . . . . . 45
Regular expression syntax . . . . . . . . 46
Safety . . . . . . . . . . . . . . xxix
Safety notices . . . . . . . . . . . . . xxix
Chapter 4. Asynchronous notification 47
World trade safety information . . . . . . xxix
JMS basics . . . . . . . . . . . . . . . 47
Laser safety information . . . . . . . . . xxix
Connecting to the API message broker . . . . . 47
Laser compliance . . . . . . . . . . . xxix
Per-session notification topics . . . . . . . . 48
Notification message formats . . . . . . . . 49
About this publication . . . . . . . xxxi Common message characteristics . . . . . . 49
Related publications . . . . . . . . . . . xxxi Status change notification. . . . . . . . . 51
Related HMC and SE console information . . . xxxi Property change notification . . . . . . . . 52
Extending zBX connectivity options to Layer-2 xxxi Inventory change notification . . . . . . . 53
Revisions . . . . . . . . . . . . . . xxxi Job completion notification . . . . . . . . 54
Accessibility . . . . . . . . . . . . . xxxii Log entry notification . . . . . . . . . . 54
Accessibility features . . . . . . . . . xxxii Operating system message notification . . . . 55
Keyboard navigation . . . . . . . . . xxxii
Consult assistive technologies . . . . . . xxxii
Chapter 5. Data model definitions . . . 57
IBM and accessibility . . . . . . . . . xxxii
Data model concepts . . . . . . . . . . . 57
How to send your comments . . . . . . . xxxii
Objects in the data model. . . . . . . . . 57
Properties in the data model. . . . . . . . 58
Part 1. Web Services API Shared data model schema elements . . . . . . 60
fundamentals . . . . . . . . . . . . 1 Base managed object properties schema . . . . 60
Update Capacity Group Properties . . . . . 321 | Modify Storage Group Properties. . . . . . 435
Inventory service data . . . . . . . . . 323 | Add Candidate Adapter Ports to an FCP
| Storage Site object . . . . . . . . . . . . 323 | Storage Group . . . . . . . . . . . . 443
| Data model . . . . . . . . . . . . . 323 | Remove Candidate Adapter Ports from an FCP
| List Storage Sites . . . . . . . . . . . 324 | Storage Group . . . . . . . . . . . . 446
| Create Storage Site . . . . . . . . . . 327 | List Storage Volumes of a Storage Group . . . 448
| Delete Storage Site . . . . . . . . . . 330 | Get Storage Volume Properties . . . . . . 451
| Get Storage Site Properties . . . . . . . . 331 | Fulfill FICON Storage Volume . . . . . . . 453
| Update Storage Site Properties . . . . . . 333 | Fulfill FCP Storage Volume . . . . . . . . 456
| Inventory service data . . . . . . . . . 335 | List Virtual Storage Resources of a Storage
| Storage Fabric object . . . . . . . . . . . 336 | Group . . . . . . . . . . . . . . . 459
| Data model . . . . . . . . . . . . . 336 | Get Virtual Storage Resource Properties . . . 461
| List Storage Fabrics . . . . . . . . . . 337 | Update Virtual Storage Resource Properties . . 463
| Create Storage Fabric . . . . . . . . . . 339 | Get Partitions for a Storage Group . . . . . 465
| Delete Storage Fabric . . . . . . . . . . 342 | Validate LUN Path . . . . . . . . . . 467
| Get Storage Fabric Properties . . . . . . . 343 | Inventory service data . . . . . . . . . 469
| Update Storage Fabric Properties . . . . . . 344
| Inventory service data . . . . . . . . . 346 Chapter 11. Core IBM Z resources . . 473
| Storage Switch object . . . . . . . . . . . 347 Operations Summary . . . . . . . . . . . 473
| Data model . . . . . . . . . . . . . 347 Console operations summary . . . . . . . 473
| List Storage Switches of a Storage Site . . . . 348 User operations summary . . . . . . . . 474
| List Storage Switches of a Storage Fabric . . . 351 User Role operations summary . . . . . . 475
| Define Storage Switch . . . . . . . . . 353 Task operations summary . . . . . . . . 475
| Undefine Storage Switch . . . . . . . . 355 User Pattern operations summary . . . . . 476
| Get Storage Switch Properties . . . . . . . 357 Password Rule operations summary . . . . . 476
| Update Storage Switch Properties . . . . . 358 LDAP Server Definition operations summary 476
| Move Storage Switch to Storage Site. . . . . 360 Group operations summary . . . . . . . 477
| Move Storage Switch to Storage Fabric . . . . 362 CPC operations summary . . . . . . . . 478
| Inventory service data . . . . . . . . . 364 Logical partition operation summary . . . . 479
| Storage Subsystem object . . . . . . . . . 365 Activation profile operations summary . . . . 480
| Data model . . . . . . . . . . . . . 365 Capacity record operations summary . . . . 481
| List Storage Subsystems of a Storage Site . . . 366 Shared nested objects . . . . . . . . . . . 482
| Define Storage Subsystem . . . . . . . . 369 Console object . . . . . . . . . . . . . 485
| Undefine Storage Subsystem . . . . . . . 371 Data model . . . . . . . . . . . . . 485
| Get Storage Subsystem Properties . . . . . 372 Get Console Properties . . . . . . . . . 488
| Update Storage Subsystem Properties . . . . 374 Restart Console. . . . . . . . . . . . 492
| Move Storage Subsystem to Storage Site . . . 376 Make Console Primary . . . . . . . . . 494
| Add Connection Endpoint . . . . . . . . 378 Shutdown Console . . . . . . . . . . 495
| Remove Connection Endpoint . . . . . . . 380 Reorder User Patterns . . . . . . . . . 496
| Inventory service data . . . . . . . . . 382 Get Console Audit Log . . . . . . . . . 498
| Storage Control Unit object . . . . . . . . . 383 Get Console Security Log . . . . . . . . 501
| Data model . . . . . . . . . . . . . 383 List Console Hardware Messages . . . . . . 505
| List Storage Control Units of a Storage Get Console Hardware Message Properties . . 507
| Subsystem . . . . . . . . . . . . . 386 Delete Console Hardware Message . . . . . 509
| Define Storage Control Unit . . . . . . . 388 List Unmanaged CPCs . . . . . . . . . 510
| Undefine Storage Control Unit . . . . . . 390 List Unmanaged zBX Nodes . . . . . . . 512
| Get Storage Control Unit Properties . . . . . 392 Get Mobile App Preferences . . . . . . . 514
| Update Storage Control Unit Properties . . . 394 Set Mobile App Preferences . . . . . . . 516
| Add Volume Range . . . . . . . . . . 396 Get CPC Notification Preferences for Device . . 517
| Remove Volume Range . . . . . . . . . 398 Update CPC Notification Preferences for Device 521
| Create Storage Path . . . . . . . . . . 400 Inventory service data . . . . . . . . . 525
| Delete Storage Path . . . . . . . . . . 402 User-related-access permission. . . . . . . . 529
| Get Storage Path Properties . . . . . . . 404 User object . . . . . . . . . . . . . . 530
| Update Storage Path Properties . . . . . . 405 Data model . . . . . . . . . . . . . 530
| Inventory service data . . . . . . . . . 408 List Users . . . . . . . . . . . . . 535
| Storage Group object . . . . . . . . . . . 409 Get User Properties . . . . . . . . . . 537
| Data model . . . . . . . . . . . . . 411 Update User Properties . . . . . . . . . 539
| List Storage Groups . . . . . . . . . . 424 Add User Role to User . . . . . . . . . 542
| Create Storage Group. . . . . . . . . . 426 Remove User Role from User . . . . . . . 544
| Delete Storage Group. . . . . . . . . . 430 Create User . . . . . . . . . . . . . 546
| Get Storage Group Properties . . . . . . . 433 Delete User . . . . . . . . . . . . . 549
Contents v
Level 04a
Contents vii
Level 04a
Chapter 18. Workload resource Generate Service Class Virtual Server Topology
group management . . . . . . . . 1215 Report . . . . . . . . . . . . . . 1324
Overview . . . . . . . . . . . . . . 1215 Generate Load Balancing Report . . . . . 1332
Workload resource group operations summary 1216 Workload Element Group object . . . . . . . 1334
Workload Resource Group object . . . . . . 1219 Data model. . . . . . . . . . . . . 1334
Data model. . . . . . . . . . . . . 1219 List Workload Element Groups of an Ensemble 1337
List Workload Resource Groups of an Get Workload Element Group Properties . . . 1338
Ensemble . . . . . . . . . . . . . 1224 Create Workload Element Group . . . . . 1339
Get Workload Resource Group Properties . . 1226 Delete Workload Element Group . . . . . 1342
Create Workload Resource Group . . . . . 1228 Update Workload Element Group . . . . . 1343
Delete Workload Resource Group . . . . . 1231 List Virtual Servers of a Workload Element
Update Workload Resource Group . . . . . 1232 Group . . . . . . . . . . . . . . 1344
List Virtual Servers of a Workload Resource Add Virtual Server to a Workload Element
Group . . . . . . . . . . . . . . 1234 Group . . . . . . . . . . . . . . 1345
Add Virtual Server to a Workload Resource Remove Virtual Server from a Workload
Group . . . . . . . . . . . . . . 1237 Element Group . . . . . . . . . . . 1347
Remove Virtual Server from a Workload Availability Policy object . . . . . . . . . 1348
Resource Group . . . . . . . . . . . 1239 Data model. . . . . . . . . . . . . 1349
List Groups of Virtual Servers of a Workload List Availability Policies . . . . . . . . 1351
Resource Group . . . . . . . . . . . 1241 Get Availability Policy Properties . . . . . 1353
Add Group of Virtual Servers to a Workload Create Availability Policy . . . . . . . . 1354
Resource Group . . . . . . . . . . . 1243 Delete Availability Policy . . . . . . . . 1356
Remove Group of Virtual Servers from a Update Availability Policy . . . . . . . . 1357
Workload Resource Group . . . . . . . 1245 Activate Availability Policy . . . . . . . 1359
List Workload Element Groups of a Workload Ensemble Availability Management reports . . . 1360
Resource Group . . . . . . . . . . . 1247 Generate Workload Resource Groups Report
Add Workload Element Group to a Workload (Ensemble Availability Management) . . . . 1362
Resource Group . . . . . . . . . . . 1248 Generate Workload Resource Group
Remove Workload Element Group from a Availability Status Report . . . . . . . . 1365
Workload Resource Group . . . . . . . 1250 Generate Virtual Servers Report (Ensemble
Performance Policy object . . . . . . . . . 1252 Availability Management) . . . . . . . . 1370
Data model. . . . . . . . . . . . . 1252 Generate Availability Status Report. . . . . 1373
Notifications of property changes to Get Performance Management Velocity Level
performance policies . . . . . . . . . 1256 Range Mappings . . . . . . . . . . . . 1375
List Performance Policies . . . . . . . . 1257 Inventory service data . . . . . . . . . . 1377
Get Performance Policy Properties . . . . . 1259
Create Performance Policy. . . . . . . . 1262 Part 5. Appendixes . . . . . . . 1383
Delete Performance Policy. . . . . . . . 1264
Update Performance Policy . . . . . . . 1266 Appendix A. XML document
Activate Performance Policy . . . . . . . 1269
Import Performance Policy . . . . . . . 1270
structure of a performance policy . . 1385
Export Performance Policy . . . . . . . 1272 XML structure of a ServiceClasses element . . . 1385
Performance management reports . . . . . . 1275 Sample XML document for a performance policy 1389
Generate Workload Resource Groups Report
(Performance Management) . . . . . . . 1276 Appendix B. Enum values for a type
Generate Workload Resource Group of managed objects within User
Performance Index Report. . . . . . . . 1280 Roles . . . . . . . . . . . . . . 1393
Generate Workload Resource Group Resource
Adjustments Report . . . . . . . . . . 1283
Appendix C. Enum values for the
Generate Virtual Servers Report . . . . . . 1287
Generate Virtual Server CPU Utilization Report 1291 User Role object . . . . . . . . . 1395
Generate Virtual Server Resource Adjustments
Report . . . . . . . . . . . . . . 1294 Appendix D. Enum values for the
Generate Hypervisor Report . . . . . . . 1299 Task object . . . . . . . . . . . . 1397
Generate Hypervisor Resource Adjustments
Report . . . . . . . . . . . . . . 1307 Appendix E. Notices . . . . . . . . 1405
Generate Service Classes Report . . . . . . 1311
Trademarks . . . . . . . . . . . . . 1406
Generate Service Class Resource Adjustments
Class A Notices . . . . . . . . . . . . 1407
Report . . . . . . . . . . . . . . 1314
Generate Service Class Hops Report . . . . 1319
Index . . . . . . . . . . . . . . 1411
Contents ix
Level 04a
Figures
1. Logon: Request . . . . . . . . . . .
74 55. Get Virtual Function Properties: Response 211
2. Logon: Response . . . . . . . . . . .
74 56. Update Virtual Function Properties: Request 213
3. Establish Shared Secret Key: Request . . . .
76 57. Update Virtual Function Properties: Response 213
4. Establish Shared Secret Key: Response . . .
76 58. Create NIC: Request . . . . . . . . . 216
5. Logoff: Request . . . . . . . . . . .
77 59. Create NIC: Response . . . . . . . . . 217
6. Logoff: Response . . . . . . . . . . .
77 60. Delete NIC: Request . . . . . . . . . 218
7. Get Notification Topics: Request . . . . .
79 61. Delete NIC: Response . . . . . . . . . 218
8. Get Notification Topics: Response . . . . .
79 62. Get NIC Properties: Request . . . . . . 220
9. Query Job Status: Request. . . . . . . .
83 63. Get NIC Properties: Response . . . . . . 220
10. Query Job Status: Response . . . . . . .
83 64. Update NIC Properties: Request . . . . . 223
11. Delete Completed Job Status: Request . . . .
84 65. Update NIC Properties: Response . . . . . 223
12. Delete Completed Job Status: Response 84 66. Increase Crypto Configuration: Request 226
13. Cancel Job: Request . . . . . . . . . . 86 67. Increase Crypto Configurations: Response 226
14. Cancel Job: Response . . . . . . . . . 86 68. Change Crypto Domain Configuration:
15. Get Inventory: Request. . . . . . . . . 93 Request . . . . . . . . . . . . . 228
16. Get Inventory: Response . . . . . . . . 93 69. Change Crypto Domain Configuration:
17. Create Metrics Context: Request. . . . . . 96 Response . . . . . . . . . . . . . 228
18. Create Metrics Context: Response . . . . . 97 70. Decrease Crypto Configuration: Request 230
19. Get Metrics: Request . . . . . . . . . 100 71. Decrease Crypto Configuration: Response 231
20. Get Metrics: Response . . . . . . . . 101 72. Mount ISO Image: Request . . . . . . . 232
21. Delete Metrics Context: Request . . . . . 102 73. Mount ISO Image: Response . . . . . . 232
22. Delete Metrics Context: Response . . . . . 102 74. Unmount ISO Image: Request . . . . . . 234
23. List Partitions of a CPC: Request . . . . . 166 75. Unmount ISO Image: Response . . . . . 234
24. List Partitions of a CPC: Response . . . . 167 | 76. Attach Storage Group to Partition: Request 236
25. List Permitted Partitions: Request . . . . . 169 | 77. Attach Storage Group to Partition: Response 236
26. List Permitted Partitions: Response . . . . 170 | 78. Detach Storage Group from Partition: Request 238
27. Create Partition: Request . . . . . . . . 175 | 79. Detach Storage Group from Partition:
28. Create Partition: Response . . . . . . . 175 | Response . . . . . . . . . . . . . 239
29. Delete Partition: Request . . . . . . . . 176 80. Create HBA: Request . . . . . . . . . 241
30. Delete Partition: Response . . . . . . . 177 81. Create HBA: Response . . . . . . . . 241
31. Delete Partition Asynchronously: Request 179 82. Delete HBA: Request . . . . . . . . . 243
32. Delete Partition Asynchronously: Response 179 83. Delete HBA: Response . . . . . . . . 243
33. Get Partition Properties: Request . . . . . 180 84. Update HBA Properties: Request . . . . . 245
34. Get Partition Properties: Response (Part 1) 181 85. Update HBA Properties: Response . . . . 245
35. Get Partition Properties: Response (Part 2) 182 86. Get HBA Properties: Request . . . . . . 246
36. Update Partition Properties: Request 186 87. Get HBA Properties: Response . . . . . . 247
37. Update Partition Properties: Response 186 88. Reassign Storage Adapter Port: Request 249
38. Update Partition Properties Asynchronously: 89. Reassign Storage Adapter Port: Response 249
Request . . . . . . . . . . . . . 190 90. Send OS Command: Request . . . . . . 250
39. Update Partition Properties Asynchronously: 91. Send OS Command: Response . . . . . . 251
Response . . . . . . . . . . . . . 190 92. Open OS Message Channel: Request . . . . 252
40. Start Partition: Request . . . . . . . . 193 93. Open OS Message Channel: Response 253
41. Start Partition: Response . . . . . . . . 193 94. List OS Messages of a Partition: Request 255
42. Stop Partition: Request . . . . . . . . 195 95. List OS Messages of a Partition: Response 256
43. Stop Partition: Response . . . . . . . . 195 96. Get ASCII Console WebSocket URI: Request 258
44. Dump Partition: Request . . . . . . . . 198 97. Get ASCII Console WebSocket URI: Response 259
45. Dump Partition: Response . . . . . . . 199 98. Partition object: Sample inventory data -
| 46. Start Dump Program: Request . . . . . . 203 Response (Part 1) . . . . . . . . . . 260
| 47. Start Dump Program: Response . . . . . 203 99. Partition object: Sample inventory data -
48. Perform PSW Restart: Request . . . . . . 205 Response (Part 2) . . . . . . . . . . 261
49. Perform PSW Restart: Response . . . . . 205 100. Partition object: Sample inventory data -
50. Create Virtual Function: Request . . . . . 207 Response (Part 3) . . . . . . . . . . 261
51. Create Virtual Function: Response . . . . 208 101. List Adapters of a CPC: Request . . . . . 275
52. Delete Virtual Function: Request . . . . . 209 102. List Adapters of a CPC: Response. . . . . 275
53. Delete Virtual Function: Response. . . . . 209 103. Get Adapter Properties: Request . . . . . 276
54. Get Virtual Function Properties: Request 211 104. Get Adapter Properties: Response . . . . . 277
105. Update Adapter Properties: Request . . . . 279 | 160. List Storage Fabrics: Request . . . . . . 339
106. Update Adapter Properties: Response 279 | 161. List Storage Fabrics: Response . . . . . . 339
107. Change Crypto Type: Request . . . . . . 281 | 162. Create Storage Fabric: Request . . . . . . 341
108. Change Crypto Type: Response . . . . . 281 | 163. Create Storage Fabric: Response . . . . . 341
109. Create Hipersocket: Request . . . . . . 283 | 164. Delete Storage Fabric: Request . . . . . . 343
110. Create Hipersocket: Response . . . . . . 284 | 165. Delete Storage Fabric: Response . . . . . 343
111. Delete Hipersocket: Request . . . . . . 285 | 166. Get Storage Fabric Properties: Request 344
112. Delete Hipersocket: Response . . . . . . 285 | 167. Get Storage Fabric Properties: Response 344
113. Get Partitions Assigned to Adapter: Request 287 | 168. Update Storage Fabric Properties: Request 346
114. Get Partitions Assigned to Adapter: Response 287 | 169. Update Storage Fabric Properties: Response 346
115. Get Network Port Properties: Request 289 | 170. Storage Fabric object: Sample inventory data -
116. Get Network Port Properties: Response 289 | Response . . . . . . . . . . . . . 347
117. Update Network Port Properties: Request 291 | 171. List Storage Switches of a Storage Site:
118. Update Network Port Properties: Response 291 | Request . . . . . . . . . . . . . 350
119. Get Storage Port Properties: Request . . . . 292 | 172. List Storage Switches of a Storage Site:
120. Get Storage Port Properties: Response 292 | Response . . . . . . . . . . . . . 350
121. Update Storage Port Properties: Request 294 | 173. List Storage Switches of a Storage Fabric:
122. Update Storage Port Properties: Response 294 | Request . . . . . . . . . . . . . 352
| 123. Change Adapter Type: Request . . . . . 296 | 174. List Storage Switches of a Storage Fabric:
| 124. Change Adapter Type: Response . . . . . 296 | Response . . . . . . . . . . . . . 353
125. Adapter object: Sample inventory data 297 | 175. Define Storage Switch: Request . . . . . 355
126. List Virtual Switches of a CPC: Request 301 | 176. Define Storage Switch: Response . . . . . 355
127. List Virtual Switches of a CPC: Response 301 | 177. Undefine Storage Switch: Request. . . . . 357
128. Get Virtual Switch Properties: Request 302 | 178. Undefine Storage Switch: Response . . . . 357
129. Get Virtual Switch Properties: Response 303 | 179. Get Storage Switch Properties: Request 358
130. Get Connected VNICs of a Virtual Switch: | 180. Get Storage Switch Properties: Response 358
Request . . . . . . . . . . . . . 304 | 181. Update Storage Switch Properties: Request 360
131. Get Connected VNICs of a Virtual Switch: | 182. Update Storage Switch Properties: Response 360
Response . . . . . . . . . . . . . 304 | 183. Move Storage Switch to Storage Site: Request 362
132. Update Virtual Switch Properties: Request 306 | 184. Move Storage Switch to Storage Site:
133. Update Virtual Switch Properties: Response 306 | Response . . . . . . . . . . . . . 362
134. Virtual Switch object: Sample inventory data - | 185. Move Storage Switch to Storage Fabric:
Response . . . . . . . . . . . . . 307 | Request . . . . . . . . . . . . . 364
135. List Capacity Groups of a CPC: Request 310 | 186. Move Storage Switch to Storage Fabric:
136. List Capacity Groups of a CPC: Response 310 | Response . . . . . . . . . . . . . 364
137. Create Capacity Group: Request . . . . . 313 | 187. Storage Switch object: Sample inventory data
138. Create Capacity Group: Response . . . . . 313 | - Response . . . . . . . . . . . . 365
139. Delete Capacity Group: Request . . . . . 314 | 188. List Storage Subsystems of a Storage Site:
140. Delete Capacity Group: Response . . . . . 315 | Request . . . . . . . . . . . . . 368
141. Get Capacity Group Properties: Request 316 | 189. List Storage Subsystems of a Storage Site:
142. Get Capacity Group Properties: Response 316 | Response . . . . . . . . . . . . . 368
143. Add Partition to Capacity Group: Request 318 | 190. Define Storage Subsystem: Request . . . . 370
144. Add Partition to Capacity Group: Response 319 | 191. Define Storage Subsystem: Response 370
145. Remove Partition from Capacity Group: | 192. Undefine Storage Subsystem: Request 372
Request . . . . . . . . . . . . . 320 | 193. Undefine Storage Subsystem: Response 372
146. Remove Partition from Capacity Group: | 194. Get Storage Subsystem Properties: Request 373
Response . . . . . . . . . . . . . 321 | 195. Get Storage Subsystem Properties: Response 374
147. Update Capacity Group Properties: Request 322 | 196. Update Storage Subsystem Properties:
148. Update Capacity Group Properties: Response 323 | Request . . . . . . . . . . . . . 376
| 149. List Storage Sites: Request . . . . . . . 326 | 197. Update Storage Subsystem Properties:
| 150. List Storage Sites: Response . . . . . . . 327 | Response . . . . . . . . . . . . . 376
| 151. Create Storage Site: Request. . . . . . . 329 | 198. Move Storage Subsystem to Storage Site:
| 152. Create Storage Site: Response . . . . . . 329 | Request . . . . . . . . . . . . . 378
| 153. Delete Storage Site: Request. . . . . . . 331 | 199. Move Storage Subsystem to Storage Site:
| 154. Delete Storage Site: Response . . . . . . 331 | Response . . . . . . . . . . . . . 378
| 155. Get Storage Site Properties: Request . . . . 332 | 200. Add Connection Endpoint: Request . . . . 380
| 156. Get Storage Site Properties: Response 333 | 201. Add Connection Endpoint: Response 380
| 157. Update Storage Site Properties: Request 335 | 202. Remove Connection Endpoint: Request 382
| 158. Update Storage Site Properties: Response 335 | 203. Remove Connection Endpoint: Response 382
| 159. Storage Site object: Sample inventory data - | 204. Storage Subsystem object: Sample inventory
| Response . . . . . . . . . . . . . 336 | data - Response . . . . . . . . . . . 383
| 205. List Storage Control Units of a Storage | 252. Get Virtual Storage Resource Properties:
| Subsystem: Request . . . . . . . . . 388 | Request . . . . . . . . . . . . . 462
| 206. List Storage Control Units of a Storage | 253. Get Virtual Storage Resource Properties:
| Subsystem: Response . . . . . . . . . 388 | Response . . . . . . . . . . . . . 463
| 207. Define Storage Control Unit: Request 390 | 254. Update Virtual Storage Resource Properties:
| 208. Define Storage Control Unit: Response 390 | Request . . . . . . . . . . . . . 465
| 209. Undefine Storage Control Unit: Request 392 | 255. Update Virtual Storage Resource Properties:
| 210. Undefine Storage Control Unit: Response 392 | Response . . . . . . . . . . . . . 465
| 211. Get Storage Control Unit Properties: Request 393 | 256. Get Partitions for a Storage Group: Request 467
| 212. Get Storage Control Unit Properties: Response 394 | 257. Get Partitions for a Storage Group: Response 467
| 213. Update Storage Control Unit Properties: | 258. Validate LUN Path: Request . . . . . . 469
| Request . . . . . . . . . . . . . 396 | 259. Validate LUN Path: Response . . . . . . 469
| 214. Update Storage Control Unit Properties: | 260. Storage Group object: Sample inventory data
| Response . . . . . . . . . . . . . 396 | - Response (Part 1) . . . . . . . . . . 471
| 215. Add Volume Range: Request . . . . . . 398 | 261. Storage Group object: Sample inventory data
| 216. Add Volume Range: Response . . . . . . 398 | - Response (Part 2) . . . . . . . . . . 473
| 217. Remove Volume Range: Request . . . . . 399 262. Get Console Properties: Request . . . . . 489
| 218. Remove Volume Range: Response. . . . . 400 263. Get Console Properties: Response (Part 1) 490
| 219. Create Storage Path: Request . . . . . . 402 264. Get Console Properties: Response (Part 2) 491
| 220. Create Storage Path: Response . . . . . . 402 265. Get Console Properties: Response (Part 3) 492
| 221. Delete Storage Path: Request . . . . . . 404 266. Shutdown Console: Request. . . . . . . 496
| 222. Delete Storage Path: Response . . . . . . 404 267. Shutdown Console: Response . . . . . . 496
| 223. Get Storage Path Properties: Request 405 268. Reorder User Patterns: Request . . . . . 498
| 224. Get Storage Path Properties: Response 405 269. Reorder User Patterns: Response . . . . . 498
| 225. Update Storage Path Properties: Request 407 270. Get Console Audit Log: Request . . . . . 500
| 226. Update Storage Path Properties: Response 408 271. Get Console Audit Log: Response. . . . . 501
| 227. Storage Control Unit object: Sample inventory 272. Get Console Security Log: Request . . . . 503
| data - Response . . . . . . . . . . . 409 273. Get Console Security Log: Response (Part 1) 504
| 228. List Storage Groups: Request . . . . . . 425 274. Get Console Security Log: Response (Part 2) 505
| 229. List Storage Groups: Response . . . . . . 426 275. List Console Hardware Messages: Request 507
| 230. Create Storage Group: Request . . . . . . 430 276. List Console Hardware Messages: Response 507
| 231. Create Storage Group: Response . . . . . 430 277. Get Console Hardware Message Properties:
| 232. Delete Storage Group: Request . . . . . . 433 Request . . . . . . . . . . . . . 508
| 233. Delete Storage Group: Response . . . . . 433 278. Get Console Hardware Message Properties:
| 234. Get Storage Group Properties: Request 434 Response . . . . . . . . . . . . . 509
| 235. Get Storage Group Properties: Response 435 279. Delete Console Hardware Message: Request 510
| 236. Modify Storage Group Properties: Request 443 280. Delete Console Hardware Message: Response 510
| 237. Modify Storage Group Properties: Response 443 281. List Unmanaged CPCs: Request . . . . . 512
| 238. Add Candidate Adapter Ports to an FCP 282. List Unmanaged CPCs: Response . . . . . 512
| Storage Group: Request . . . . . . . . 445 283. List Unmanaged zBX Nodes: Request 514
| 239. Add Candidate Adapter Ports to an FCP 284. List Unmanaged zBX Nodes: Response 514
| Storage Group: Response . . . . . . . 446 285. Get Mobile App Preferences: Request 515
| 240. Remove Candidate Adapter Ports from an 286. Get Mobile App Preferences: Response 515
| FCP Storage Group: Request . . . . . . 448 287. Set Mobile App Preferences: Request 517
| 241. Remove Candidate Adapter Ports from an 288. Set Mobile App Preferences: Response 517
| FCP Storage Group: Response . . . . . . 448 289. Get CPC Notification Preferences for Device:
| 242. List Storage Volumes of a Storage Group: Request . . . . . . . . . . . . . 520
| Request . . . . . . . . . . . . . 450 290. Get CPC Notification Preferences for Device:
| 243. List Storage Volumes of a Storage Group: Response . . . . . . . . . . . . . 521
| Response . . . . . . . . . . . . . 451 291. Update CPC Notification Preferences for
| 244. Get Storage Volume Properties: Request 453 Device: Request . . . . . . . . . . . 524
| 245. Get Storage Volume Properties: Response 453 292. Update CPC Notification Preferences for
| 246. Fulfill FICON Storage Volume: Request 456 Device: Response . . . . . . . . . . 525
| 247. Fulfill FICON Storage Volume: Response 456 293. Console object: Sample inventory data (Part
| 248. Fulfill FCP Storage Volume: Request . . . . 458 1) . . . . . . . . . . . . . . . 526
| 249. Fulfill FCP Storage Volume: Response 458 294. Console object: Sample inventory data (Part
| 250. List Virtual Storage Resources of a Storage 2) . . . . . . . . . . . . . . . 527
| Group: Request . . . . . . . . . . . 461 295. Console object: Sample inventory data (Part
| 251. List Virtual Storage Resources of a Storage 3) . . . . . . . . . . . . . . . 528
| Group: Response . . . . . . . . . . 461 296. Console object: Sample inventory data (Part
4) . . . . . . . . . . . . . . . 529
Figures xiii
Level 04a
297. List Users: Request. . . . . . . . . . 536 357. Get LDAP Server Definition Properties:
298. List Users: Response . . . . . . . . . 537 Response . . . . . . . . . . . . . 609
299. Get User Properties: Request . . . . . . 538 358. Update LDAP Server Definition Properties:
300. Get User Properties: Response . . . . . . 539 Request . . . . . . . . . . . . . 610
301. Update User Properties: Request . . . . . 542 359. Update LDAP Server Definition Properties:
302. Update User Properties: Response . . . . 542 Response . . . . . . . . . . . . . 611
303. Add User Role to User: Request . . . . . 544 360. Create LDAP Server Definition: Request 613
304. Add User Role to User: Response . . . . . 544 361. Create LDAP Server Definition: Response 613
305. Remove User Role from User: Request 546 362. Delete LDAP Server Definition: Request 614
306. Remove User Role from User: Response 546 363. Delete LDAP Server Definition: Response 614
307. Create User: Request . . . . . . . . . 549 364. LDAP Server Definition object: Sample
308. Create User: Response . . . . . . . . 549 inventory data . . . . . . . . . . . 615
309. Delete User: Request . . . . . . . . . 550 365. List Custom Groups: Request . . . . . . 619
310. Delete User: Response . . . . . . . . 551 366. List Custom Groups: Response. . . . . . 619
311. User object: Sample inventory data . . . . 552 367. Get Custom Group Properties: Request 620
312. List User Roles: Request . . . . . . . . 557 368. Get Custom Group Properties: Response 620
313. List User Roles: Response . . . . . . . 558 369. Create Custom Group: Request . . . . . 622
314. Get User Role Properties: Request. . . . . 559 370. Create Custom Group: Response . . . . . 622
315. Get User Role Properties: Response . . . . 560 371. Delete Custom Group: Request . . . . . 623
316. Update User Role Properties: Request 562 372. Delete Custom Group: Response . . . . . 623
317. Update User Role Properties: Response 562 373. Add Member to Custom Group: Request 625
318. Add Permission to User Role: Request 564 374. Add Member to Custom Group: Response 625
319. Add Permission to User Role: Response 565 375. Remove Member from Custom Group:
320. Remove Permission from User Role: Request 567 Request . . . . . . . . . . . . . 626
321. Remove Permission from User Role: Response 567 376. Remove Member from Custom Group:
322. Create User Role: Request . . . . . . . 569 Response . . . . . . . . . . . . . 627
323. Create User Role: Response . . . . . . . 569 377. List Custom Group Members: Request 628
324. Delete User Role: Request . . . . . . . 570 378. List Custom Group Members: Response 628
325. Delete User Role: Response . . . . . . . 571 379. List CPC Objects: Request . . . . . . . 645
326. User Role object: Sample inventory data 572 380. List CPC Objects: Response . . . . . . . 646
327. List Tasks: Request . . . . . . . . . . 574 381. List Ensemble CPC Objects: Request . . . . 648
328. List Tasks: Response . . . . . . . . . 574 382. List Ensemble CPC Objects: Response 648
329. Get Task Properties: Request . . . . . . 575 383. Get CPC Properties: Request . . . . . . 650
330. Get Task Properties: Response . . . . . . 576 384. Get CPC Properties: Response (Part 1) 651
331. Task object: Sample inventory data . . . . 576 385. Get CPC Properties: Response (Part 2) 652
332. List User Patterns: Request . . . . . . . 580 386. Get CPC Properties: Response (Part 3) 653
333. List User Patterns: Response . . . . . . 580 387. Get CPC Properties: Response (Part 4) 654
334. Get User Pattern Properties: Request 581 388. Get CPC Properties: Response (Part 5) 655
335. Get User Pattern Properties: Response 582 389. Get CPC Properties: Response (Part 6) 656
336. Update User Pattern Properties: Request 584 390. Set Auto-Start List: Request . . . . . . . 671
337. Update User Pattern Properties: Response 584 391. Set Auto-Start List: Response . . . . . . 671
338. Create User Pattern: Request . . . . . . 586 392. Get CPC Audit Log: Request . . . . . . 684
339. Create User Pattern: Response . . . . . . 586 393. Get CPC Audit Log: Response . . . . . . 684
340. Delete User Pattern: Request . . . . . . 587 394. Get CPC Security Log: Request . . . . . 686
341. Delete User Pattern: Response . . . . . . 587 395. Get CPC Security Log: Response . . . . . 687
342. User Pattern object: Sample inventory data 588 396. List CPC Hardware Messages: Request 689
343. List Password Rules: Request . . . . . . 593 397. List CPC Hardware Messages: Response 689
344. List Password Rules: Response. . . . . . 593 398. Get CPC Hardware Message Properties:
345. Get Password Rule Properties: Request 595 Request . . . . . . . . . . . . . 691
346. Get Password Rule Properties: Response 595 399. Get CPC Hardware Message Properties:
347. Update Password Rule Properties: Request 597 Response . . . . . . . . . . . . . 691
348. Update Password Rule Properties: Response 597 400. Delete CPC Hardware Message: Request 693
349. Create Password Rule: Request . . . . . 599 401. Delete CPC Hardware Message: Response 693
350. Create Password Rule: Response . . . . . 599 402. Export WWPN List: Request . . . . . . 695
351. Delete Password Rule: Request . . . . . 600 403. Export WWPN List: Response . . . . . . 695
352. Delete Password Rule: Response . . . . . 600 | 404. Import DPM Configuration: Request (Part 1) 698
353. Password Rule object: Sample inventory data 602 | 405. Import DPM Configuration: Request (Part 2) 699
354. List LDAP Server Definitions: Request 606 | 406. Import DPM Configuration: Request (Part 3) 700
355. List LDAP Server Definitions: Response 607 | 407. Import DPM Configuration: Request (Part 4) 701
356. Get LDAP Server Definition Properties: | 408. Import DPM Configuration: Request (Part 5) 702
Request . . . . . . . . . . . . . 608 | 409. Import DPM Configuration: Response 703
410. List Logical Partitions of CPC: Request 721 450. Get Energy Optimization Advice Summary:
411. List Logical Partitions of CPC: Response 722 Response (Part 3) . . . . . . . . . . 842
412. List Permitted Logical Partitions: Request 724 451. Get Energy Optimization Advice Summary:
413. List Permitted Logical Partitions: Response 725 Response (Part 4) . . . . . . . . . . 843
414. Get Logical Partition Properties: Request 727 452. Get Energy Optimization Advice Details:
415. Get Logical Partition Properties: Response Request . . . . . . . . . . . . . 848
(Part 1) . . . . . . . . . . . . . 728 453. Get Energy Optimization Advice Details:
416. Get Logical Partition Properties: Response Response . . . . . . . . . . . . . 848
(Part 2) . . . . . . . . . . . . . 729 454. List Ensembles: Request . . . . . . . . 867
417. Send OS Command: Request . . . . . . 747 455. List Ensembles: Response . . . . . . . 867
418. Send OS Command: Response . . . . . . 747 456. Get Ensemble Properties: Request . . . . . 868
419. Open OS Message Channel: Request . . . . 749 457. Get Ensemble Properties: Response . . . . 869
420. Open OS Message Channel: Response 749 458. Update Ensemble Properties: Request 871
421. List OS Messages of a Logical Partition: 459. Update Ensemble Properties: Response 871
Request . . . . . . . . . . . . . 752 460. List Ensemble Nodes: Request . . . . . . 873
422. List OS Messages of a Logical Partition: 461. List Ensemble Nodes: Response . . . . . 873
Response . . . . . . . . . . . . . 752 462. Get Node Properties: Request . . . . . . 875
423. List Managed Virtual Machines of a Logical 463. Get Node Properties: Response . . . . . 875
Partition: Request . . . . . . . . . . 759 464. Ensemble object: Sample inventory data 880
424. List Managed Virtual Machines of a Logical 465. List zBXs of a CPC: Request . . . . . . 893
Partition: Response . . . . . . . . . 760 466. List zBXs of a CPC: Response . . . . . . 893
425. List Reset Activation Profiles: Request 763 467. List zBXs of an Ensemble: Request . . . . 895
426. List Reset Activation Profiles: Response 763 468. List zBXs of an Ensemble: Response . . . . 896
427. Get Reset Activation Profile Properties: 469. Get zBX Properties: Request . . . . . . 897
Request . . . . . . . . . . . . . 765 470. Get zBX Properties: Response (Part 1) 898
428. Get Reset Activation Profile Properties: 471. Get zBX Properties: Response (Part 2) 899
Response . . . . . . . . . . . . . 765 472. Get EC/MCL Description of zBX (Node):
429. List Image Activation Profiles: Request 787 Request . . . . . . . . . . . . . 900
430. List Image Activation Profiles: Response 788 473. Get EC/MCL Description of zBX (Node):
431. Get Image Activation Profile Properties: Response (Part 1) . . . . . . . . . . 901
Request . . . . . . . . . . . . . 790 474. Get EC/MCL Description of zBX (Node):
432. Get Image Activation Profile Properties: Response (Part 2) . . . . . . . . . . 902
Response (Part 1) . . . . . . . . . . 791 475. Activate zBX (Node): Request . . . . . . 904
433. Get Image Activation Profile Properties: 476. Activate zBX (Node): Response . . . . . 904
Response (Part 2) . . . . . . . . . . 792 477. Deactivate zBX (Node): Request . . . . . 906
434. List Load Activation Profiles: Request 798 478. Deactivate zBX (Node): Response . . . . . 907
435. List Load Activation Profiles: Response 798 479. Get zBX (Node) Audit Log: Request . . . . 909
436. Get Load Activation Profile Properties: 480. Get zBX (Node) Audit Log: Response 909
Request . . . . . . . . . . . . . 800 481. Get zBX (Node) Security Log: Request 911
437. Get Load Activation Profile Properties: 482. Get zBX (Node) Security Log: Response 912
Response . . . . . . . . . . . . . 800 483. List zBX (Node) Hardware Messages: Request 914
438. List Group Profiles: Request . . . . . . 805 484. List zBX (Node) Hardware Messages:
439. List Group Profiles: Response . . . . . . 806 Response . . . . . . . . . . . . . 915
440. Get Group Profile Properties: Request 807 485. Get zBX (Node) Hardware Message
441. Get Group Profile Properties: Response 808 Properties: Request . . . . . . . . . 916
442. Energy management as applied throughout 486. Get zBX (Node) Hardware Message
layers of enterprise management . . . . . 817 Properties: Response . . . . . . . . . 917
443. Example of a zBX node group that contains a 487. Delete zBX (Node) Hardware Message:
BladeCenter with blades . . . . . . . . 818 Request . . . . . . . . . . . . . 918
444. Example of a CPC group that contains a 488. Delete zBX (Node) Hardware Message:
zCPC . . . . . . . . . . . . . . 818 Response . . . . . . . . . . . . . 918
445. Example of a CPC (Ensemble) group that 489. zBX object: Sample inventory data . . . . 919
contains a zCPC and a BladeCenter . . . . 819 490. List Top-of-Rack Switches: Request . . . . 923
446. Example of a CPC (Ensemble) group that 491. List Top-of-Rack Switches: Response . . . . 923
contains a zCPC . . . . . . . . . . 819 492. Get Top-of-Rack Switch Properties: Request 925
447. Get Energy Optimization Advice Summary: 493. Get Top-of-Rack Switch Properties: Response 926
Request . . . . . . . . . . . . . 839 494. Get Top-of-Rack Switch Port Details: Request 928
448. Get Energy Optimization Advice Summary: 495. Get Top-of-Rack Switch Port Details:
Response (Part 1) . . . . . . . . . . 840 Response . . . . . . . . . . . . . 928
449. Get Energy Optimization Advice Summary: 496. Update Top-of-Rack Switch Port Properties:
Response (Part 2) . . . . . . . . . . 841 Request . . . . . . . . . . . . . 930
Figures xv
Level 04a
497. Update Top-of-Rack Switch Port Properties: 540. List Virtualization Hosts of an Ensemble:
Response . . . . . . . . . . . . . 930 Request . . . . . . . . . . . . . 1004
498. Add MAC Filters to Top-of-Rack Switch Port: 541. List Virtualization Hosts of an Ensemble:
Request . . . . . . . . . . . . . 932 Response . . . . . . . . . . . . 1005
499. Add MAC Filters to Top-of-Rack Switch Port: 542. List Virtualization Hosts of a CPC: Request 1007
Response . . . . . . . . . . . . . 932 543. List Virtualization Hosts of a CPC: Response 1008
500. Remove MAC Filters from Top-of-Rack 544. Get Virtualization Host Properties: Request 1009
Switch Port: Request . . . . . . . . . 934 545. Get Virtualization Host Properties: Response
501. Remove Mac Filters from Top-of-Rack Switch for virtualization host of type "prsm" . . . 1010
Port: Response . . . . . . . . . . . 934 546. Get Virtualization Host Properties: Response
502. Add Top-of-Rack Switch Port to Virtual for virtualization host of type "power-vm" . 1011
Networks: Request . . . . . . . . . . 936 547. Get Virtualization Host Properties: Response
503. Add Top-of-Rack Switch Port to Virtual for virtualization host of type "x-hyp" . . . 1012
Networks: Response . . . . . . . . . 936 548. Get Virtualization Host Properties: Response
504. Remove Top-of-Rack Switch Port from the for virtualization host of type "zvm" . . . 1013
Virtual Networks: Request . . . . . . . 938 549. List Virtual Switches: Request. . . . . . 1016
505. Remove Top-of-Rack Switch Port from the 550. List Virtual Switches: Response . . . . . 1016
Virtual Networks: Response. . . . . . . 938 551. Get Virtual Switch Properties: Request 1018
506. List Racks of a zBX: Request . . . . . . 941 552. Get Virtual Switch Properties: Response for
507. List Racks of a zBX: Response . . . . . . 941 virtual switch of type "iedn" . . . . . . 1018
508. Get Rack Properties: Request . . . . . . 942 553. Get Virtual Switch Properties: Response for
509. Get Rack Properties: Response . . . . . . 943 virtual switch of type "qdio" . . . . . . 1019
510. Rack object: Sample inventory data . . . . 943 554. Get Switch Controllers: Request . . . . . 1026
511. List BladeCenters in a Rack: Request 948 555. Get Switch Controllers: Response . . . . 1027
512. List BladeCenters in a Rack: Response 949 556. Virtualization Host object: Sample inventory
513. List BladeCenters in a zBX: Request . . . . 951 data for a virtualization host of type
514. List BladeCenters in a zBX: Response 951 "power-vm" . . . . . . . . . . . . 1035
515. Get BladeCenter Properties: Request . . . . 952 557. Virtualization Host object: Sample inventory
516. Get BladeCenter Properties: Response 953 data for a virtualization host of type "prsm" . 1036
517. Activate BladeCenter: Request . . . . . . 955 558. Virtualization Host object: Sample inventory
518. Activate BladeCenter: Response . . . . . 955 data for a virtualization host of type "x-hyp". 1036
519. Deactivate BladeCenter: Request . . . . . 957 559. List Virtual Servers of a zBX (Node): Request 1064
520. Deactivate BladeCenter: Response. . . . . 958 560. List Virtual Servers of a zBX (Node):
521. BladeCenter object: Sample inventory data 959 Response . . . . . . . . . . . . 1065
522. List Blades in a BladeCenter: Request 966 561. List Virtual Servers of a Node: Request 1067
523. List Blades in a BladeCenter: Response 966 562. List Virtual Servers of a Node: Response 1067
524. List Blades in a zBX: Request . . . . . . 968 563. List Virtual Servers of an Ensemble: Request 1069
525. List Blades in a zBX: Response . . . . . . 969 564. List Virtual Servers of an Ensemble:
526. Get Blade Properties: Request . . . . . . 970 Response . . . . . . . . . . . . 1070
527. Get Blade Properties: Response for blade of 565. List Virtual Servers of a CPC: Request 1072
type "system-x" (similar for type "power") . . 971 566. List Virtual Servers of a CPC: Response 1073
528. Get Blade Properties: Response for blade of 567. List Virtual Servers of a Virtualization Host:
type "dpx150z": . . . . . . . . . . . 972 Request . . . . . . . . . . . . . 1075
529. Get Blade Properties: Response for blade of 568. List Virtual Servers of a Virtualization Host:
type "isaopt": . . . . . . . . . . . 973 Response . . . . . . . . . . . . 1075
530. Activate a Blade: Request . . . . . . . 975 569. Create Virtual Server: Request for a virtual
531. Activate a Blade: Response . . . . . . . 975 server of type "power-vm" . . . . . . . 1080
532. Deactivate a Blade: Request . . . . . . . 977 570. Create Virtual Server: Response for a virtual
533. Deactivate a Blade: Response . . . . . . 977 server of type "power-vm" . . . . . . . 1080
534. Sample inventory data for a blade of type 571. Delete Virtual Server: Request . . . . . 1082
"power" . . . . . . . . . . . . . 982 572. Delete Virtual Server: Response . . . . . 1082
535. Sample inventory data for a blade of type 573. Get Virtual Server Properties: Request 1084
"system-x" . . . . . . . . . . . . 983 574. Get Virtual Server Properties: Response for
536. List Virtualization Hosts of a zBX (Node): virtual servers of "power-vm" (Part 1) . . . 1085
Request . . . . . . . . . . . . . 1000 575. Get Virtual Server Properties: Response for
537. List Virtualization Hosts of a zBX (Node): virtual servers of "power-vm" (part 2) . . . 1086
Response . . . . . . . . . . . . 1000 576. Get Virtual Server Properties: Response for
538. List Virtualization Hosts of a Node: Request 1002 virtual servers of type "prsm" . . . . . . 1087
539. List Virtualization Hosts of a Node: 577. Get Virtual Server Properties: Response for
Response . . . . . . . . . . . . 1002 virtual servers of type "x-hyp" (Part 1) . . . 1088
578. Get Virtual Server Properties: Response for 617. Virtual Server object: Sample inventory data
virtual servers of type "x-hyp" (Part 2) . . . 1089 for a virtual server of type "power-vm" (Part
579. Get Virtual Server Properties: Response for 2) . . . . . . . . . . . . . . . 1136
virtual servers of type "zvm" . . . . . . 1090 618. Virtual Server object: Sample inventory data
580. Update Virtual Server Properties: Request for a virtual server of type "prsm" . . . . 1137
for a virtual server of type "x-hyp" . . . . 1095 619. Virtual Server object: Sample inventory data
581. Update Virtual Server Properties: Response for a virtual server of type "x-hyp" . . . . 1138
for a virtual server of type "x-hyp" . . . . 1095 620. Object model . . . . . . . . . . . 1140
582. Create Network Adapter: Request for a 621. List Storage Resources: Request . . . . . 1145
virtual server of type "x-hyp" . . . . . . 1097 622. List Storage Resources: Response . . . . 1145
583. Create Network Adapter: Response for a 623. Get Storage Resource Properties: Request 1147
virtual server of type "x-hyp" . . . . . . 1098 624. Get Storage Resource Properties: Response 1147
584. Delete Network Adapter: Request . . . . 1099 625. Create Storage Resource: Request . . . . 1149
585. Delete Network Adapter: Response 1099 626. Create Storage Resource: Response 1149
586. Get Network Adapter Properties: Request 1101 627. Update Storage Resource Properties: Request 1151
587. Get Network Adapter Properties: Response 1101 628. Update Storage Resource Properties:
588. Update Network Adapter: Request for a Response . . . . . . . . . . . . 1151
virtual server of type "x-hyp" . . . . . . 1104 629. Delete Storage Resource: Request . . . . 1152
589. Update Network Adapter: Response for a 630. Delete Storage Resource: Response 1153
virtual server of type "x-hyp" . . . . . . 1104 631. Export World Wide Port Names List: WWPN
590. Reorder Network Adapter: Request 1106 list: Request. . . . . . . . . . . . 1155
591. Reorder Network Adapter: Response 1106 632. Export World Wide Port Names List: WWPN
592. Create Virtual Disk: Request for a virtual list: Response . . . . . . . . . . . 1155
server of type "power-vm" . . . . . . . 1109 633. List Virtualization Host Storage Resources of
593. Create Virtual Disk: Response for a virtual a Storage Resource: Request . . . . . . 1158
server of type "power-vm" . . . . . . . 1109 634. List Virtualization Host Storage Resources of
594. Create Virtual Disk: Request for a virtual a Storage Resource: Response . . . . . . 1159
server of type "x-hyp" . . . . . . . . 1109 635. Storage Resource object: Sample inventory
595. Create Virtual Disk: Response for a virtual data . . . . . . . . . . . . . . 1160
server of type "x-hyp" . . . . . . . . 1110 636. List Virtualization Host HBA Ports: Request 1163
596. Delete Virtual Disk: Request . . . . . . 1111 637. List Virtualization Host HBA Ports:
597. Delete Virtual Disk: Response . . . . . . 1112 Response . . . . . . . . . . . . 1164
598. Get Virtual Disk Properties: Request for a 638. List Virtualization Host Storage Resources:
virtual server of type "power-vm" . . . . 1113 Request . . . . . . . . . . . . . 1167
599. Get Virtual Disk Properties: Response for a 639. List Virtualization Host Storage Resources:
virtual server of type "power-vm" . . . . 1114 Response . . . . . . . . . . . . 1167
600. Get Virtual Disk Properties: Request for a 640. Get Virtualization Host Storage Resource
virtual server of type "x-hyp" . . . . . . 1114 Properties: Request . . . . . . . . . 1169
601. Get Virtual Disk Properties: Response for a 641. Get Virtualization Host Storage Resource
virtual server of type "x-hyp" . . . . . . 1114 Properties: Response for Virtualization Host
602. Update Virtual Disk Properties: Request for a of type "power-vm" or "x-hyp" . . . . . 1170
virtual server of type "x-hyp" . . . . . . 1117 642. Get Virtualization Host Storage Resource
603. Update Virtual Disk Properties: Response for Properties: Response for Virtualization Host
a virtual server of type "x-hyp" . . . . . 1117 of type "zvm" . . . . . . . . . . . 1171
604. Reorder Virtual Disks: Request . . . . . 1119 643. Create Virtualization Host Storage Resource:
605. Reorder Virtual Disks: Response . . . . . 1119 Request . . . . . . . . . . . . . 1174
606. Activate Virtual Server: Request . . . . . 1121 644. Create Virtualization Host Storage Resource:
607. Activate Virtual Server: Response . . . . 1121 Response . . . . . . . . . . . . 1174
608. Deactivate Virtual Server: Request . . . . 1123 645. Delete Virtualization Host Storage Resource:
609. Deactivate Virtual Server: Response 1124 Request . . . . . . . . . . . . . 1176
610. Mount Virtual Media: Request . . . . . 1126 646. Delete Virtualization Host Storage Resource:
611. Mount Virtual Media: Response . . . . . 1126 Response . . . . . . . . . . . . 1176
612. Unmount Virtual Media: Request . . . . 1129 647. Add Virtualization Host Storage Resource
613. Unmount Virtual Media: Response 1130 Paths: Request . . . . . . . . . . . 1179
614. Initiate Virtual Server Dump: Request 1133 648. Add Virtualization Host Storage Resource
615. Initiate Virtual Server Dump: Response 1133 Paths: Response . . . . . . . . . . 1179
616. Virtual Server object: Sample inventory data 649. List Virtual Disks of a Virtualization Host
for a virtual server of type "power-vm" (Part Storage Resource: Request . . . . . . . 1186
1) . . . . . . . . . . . . . . . 1135 650. List Virtual Disks of a Virtualization Host
Storage Resource: Response . . . . . . 1186
Figures xvii
Level 04a
651. List Virtualization Host Storage Groups: 689. Remove Group of Virtual Servers from a
Request . . . . . . . . . . . . . 1190 Workload Resource Group: Response . . . 1247
652. List Virtualization Host Storage Groups: 690. List Performance Policies: Request . . . . 1258
Response . . . . . . . . . . . . 1190 691. List Performance Policies: Response 1259
653. Get Virtualization Host Storage Group 692. Get Performance Policy Properties: Request 1260
Properties: Request . . . . . . . . . 1192 693. Get Performance Policy Properties: Response
654. Get Virtualization Host Storage Group (Part 1) . . . . . . . . . . . . . 1261
Properties: Response . . . . . . . . . 1192 694. Get Performance Policy Properties: Response
655. List Virtual Networks: Request . . . . . 1202 (Part 2) . . . . . . . . . . . . . 1262
656. List Virtual Networks: Response . . . . . 1202 695. Create Performance Policy: Request 1264
657. Get Virtual Network Properties: Request 1203 696. Create Performance Policy: Response 1264
658. Get Virtual Network Properties: Response 1203 697. Delete Performance Policy: Request 1266
659. Update Virtual Network Properties: Request 1206 698. Delete Performance Policy: Response 1266
660. Update Virtual Network Properties: 699. Update Performance Policy: Request 1268
Response . . . . . . . . . . . . 1206 700. Update Performance Policy: Response 1269
661. Create Virtual Network: Request . . . . . 1208 701. Activate Performance Policy: Request 1270
662. Create Virtual Network: Response . . . . 1208 702. Activate Performance Policy: Response 1270
663. Delete Virtual Network: Request . . . . . 1210 703. Export Performance Policy: Request 1273
664. Delete Virtual Network: Response . . . . 1210 704. Export Performance Policy: Response 1274
665. List Members of a Virtual Network: Request 1212 705. Relationship between reports and the
666. List Members of a Virtual Network: properties used . . . . . . . . . . 1276
Response . . . . . . . . . . . . 1212 706. Generate Workload Resource Groups Report:
667. Virtual Network object: Sample inventory Request . . . . . . . . . . . . . 1280
data . . . . . . . . . . . . . . 1213 707. Generate Workload Resource Group
668. List Workload Resource Groups of an Performance Index Report: Request . . . . 1282
Ensemble: Request . . . . . . . . . 1225 708. Generate Workload Resource Group
669. List Workload Resource Groups of an Resource Adjustments Report: Request. . . 1287
Ensemble: Response . . . . . . . . . 1226 709. Generate Virtual Servers Report: Request 1291
670. Get Workload Resource Group Properties: 710. Generate Virtual Server CPU Utilization
Request . . . . . . . . . . . . . 1227 Report: Request . . . . . . . . . . 1294
671. Get Workload Resource Group Properties: 711. Generate Virtual Server Resource
Response . . . . . . . . . . . . 1228 Adjustments Report: Request . . . . . . 1298
672. Create Workload Resource Group: Request 1230 712. Generate Hypervisor Report: Request 1307
673. Create Workload Resource Group: Response 1231 713. Generate Hypervisor Resource Adjustments
674. Delete Workload Resource Group: Request 1232 Report: Request . . . . . . . . . . 1311
675. Delete Workload Resource Group: Response 1232 714. Generate Service Classes Report: Request 1314
676. Update Workload Resource Group: Request 1234 715. Generate Service Class Resource
677. Update Workload Resource Group: Response 1234 Adjustments Report: Request . . . . . . 1319
678. List Virtual Servers of a Workload Resource 716. Generate Service Class Hops Report:
Group: Request . . . . . . . . . . 1236 Request . . . . . . . . . . . . . 1324
679. List Virtual Servers of a Workload Resource 717. Generate Service Class Virtual Server
Group: Response . . . . . . . . . . 1237 Topology Report: Request . . . . . . . 1332
680. Add Virtual Server to a Workload Resource 718. Generate Load Balancing Report: Request 1334
Group: Request . . . . . . . . . . 1239 719. Relationship between reports and the
681. Add Virtual Server to a Workload Resource properties used . . . . . . . . . . 1361
Group: Response . . . . . . . . . . 1239 720. Generate Workload Resource Groups Report
682. Remove Virtual Server from a Workload (Ensemble Availability Management):
Resource Group: Request . . . . . . . 1241 Request . . . . . . . . . . . . . 1365
683. Remove Virtual Server from a Workload 721. Generate Workload Resource Group
Resource Group: Response . . . . . . . 1241 Availability Status Report: Request . . . . 1370
684. List Groups of Virtual Servers of a Workload 722. Generate Virtual Servers Report: Request 1372
Resource Group: Request . . . . . . . 1243 723. Generate Virtual Servers Report: Request 1375
685. List Groups of Virtual Servers of a Workload 724. Get Performance Management Velocity Level
Resource Group: Response . . . . . . . 1243 Range Mappings: Request . . . . . . . 1377
686. Add Group of Virtual Servers to a Workload 725. Workload Resource Group: Sample
Resource Group: Request . . . . . . . 1245 inventory data (Part 1) . . . . . . . . 1378
687. Add Group of Virtual Servers to a Workload 726. Workload Resource Group: Sample
Resource Group: Response . . . . . . . 1245 inventory data (Part 2) . . . . . . . . 1379
688. Remove Group of Virtual Servers from a 727. Workload Resource Group: Sample
Workload Resource Group: Request. . . . 1247 inventory data (Part 3) . . . . . . . . 1380
728. Workload Resource Group: Sample 729. Policy XML example, Part 1 . . . . . . 1390
inventory data (Part 4) . . . . . . . . 1381 730. Policy XML example, Part 2 . . . . . . 1391
Figures xix
Level 04a
Tables
1. Summary of updates for API version 1.1 41. Ensemble power metric group . . . . . . 112
(HMC/SE Version 2.11.1) . . . . . . . . 8 42. Virtual server CPU and memory metric group 112
2. Summary of updates for API version 1.2 43. Virtualization host CPU and memory metric
(HMC/SE Version 2.11.1) . . . . . . . . 8 group . . . . . . . . . . . . . . 114
3. Summary of updates for API version 1.3 44. Workload metrics group - service class data
(HMC/SE Version 2.12.0) . . . . . . . . 9 metric group . . . . . . . . . . . . 115
4. Summary of updates for API version 1.4 45. Virtualization host (vSwitch) uplink metric
(HMC/SE Version 2.12.1) . . . . . . . . 11 group . . . . . . . . . . . . . . 117
5. Summary of updates for API version 1.5 46. Virtualization host (vSwitch) by virtual
(HMC/SE Version 2.12.1) . . . . . . . . 13 network metric group . . . . . . . . . 119
6. Summary of updates for API version 1.6 47. Attached virtual server network adapters
(HMC/SE Version 2.13.0) . . . . . . . . 14 metric group . . . . . . . . . . . . 122
7. Summary of updates for API version 1.7 48. Optimizer IEDN virtual network interface
(HMC/SE Version 2.13.1) . . . . . . . . 16 metric group . . . . . . . . . . . . 124
8. Summary of updates for API version 2.1 49. Optimizer IEDN physical network adapter
(HMC/SE Version 2.13.1) . . . . . . . . 21 metric group . . . . . . . . . . . . 125
9. Summary of updates for API version 2.2 50. Network adapter port metric group . . . . 127
(HMC/SE Version 2.13.1) . . . . . . . . 22 51. Network interface metric group . . . . . 129
10. Summary of updates for API version 2.20 52. Top-of-rack switch port metrics group 131
(HMC/SE Version 2.14.0) . . . . . . . . 23 53. Optimizer IEDN physical network adapter
11. Summary of updates for API version 2.21 metric group . . . . . . . . . . . . 133
(HMC/SE Version 2.14.0) . . . . . . . . 26 54. DPM - Partition: operations summary 139
12. Summary of updates for API version 2.22 55. DPM - Partition: URI variables. . . . . . 140
(HMC/SE Version 2.14.0) . . . . . . . . 26 56. DPM - Adapter: operations summary 140
| 13. Summary of updates for API version 2.23 57. DPM - Adapter: URI variables . . . . . . 141
| (HMC/SE Version 2.14.0) . . . . . . . . 27 58. DPM - Virtual Switch: operations summary 141
| 14. Summary of updates for API version 2.24 59. DPM - Virtual Switch: URI variables . . . . 141
| (HMC/SE Version 2.14.0) . . . . . . . . 30 60. DPM - Capacity Group: operations summary 142
15. Primitive data types. . . . . . . . . . 31 61. DPM - Capacity Group: URI variables 142
16. Compound data types . . . . . . . . . 32 | 62. DPM - Storage Site: operations summary 142
17. Primitive data types in JSON notation . . . 32 | 63. DPM - Storage Site: URI variables. . . . . 142
18. Compound data types in JSON notation 33 | 64. DPM - Storage Fabric: operations summary 142
| 19. error-feature-info object properties . . . . . 44 | 65. DPM - Storage Fabric: URI variables . . . . 143
20. General API services: operations summary 67 | 66. DPM - Storage Switch: operations summary 143
21. General API services: URI variables . . . . 67 | 67. DPM - Storage Switch: URI variables 143
22. topic-info object . . . . . . . . . . . 78 | 68. DPM - Storage Subsystem: operations
23. Inventory service: operations summary 87 | summary . . . . . . . . . . . . . 143
24. Metrics service: operations summary . . . . 87 | 69. DPM - Storage Subsystem: URI variables 144
25. Metrics service: URI variables . . . . . . 87 | 70. DPM - Storage Control Unit: operations
26. BladeCenter temperature and power metric | summary . . . . . . . . . . . . . 144
group . . . . . . . . . . . . . . 103 | 71. DPM - Storage Control Unit: URI variables 145
27. Blade power metric group . . . . . . . 104 | 72. DPM - Storage Group: operations summary 145
28. Channels metric group . . . . . . . . 104 | 73. DPM - Storage Group: URI variables 145
29. CPC overview metric group . . . . . . 105 74. Partition object: base managed object
30. zBX node overview metric group . . . . . 106 properties specializations . . . . . . . 146
31. DPM system overview metric group . . . . 106 75. Partition object: class specific properties 148
32. Logical partitions metric group . . . . . 107 | 76. partition-feature-info object properties 159
33. Partitions metric group . . . . . . . . 108 77. crypto-configuration nested object properties 160
34. zCPC environmentals and power metric 78. crypto-domain-configuration nested object
group . . . . . . . . . . . . . . 108 properties . . . . . . . . . . . . . 160
35. zCPC processors metric group . . . . . . 109 79. Partition object - Virtual Function element
36. Blade CPU and memory metric group 110 properties . . . . . . . . . . . . . 161
37. Crypto metric group . . . . . . . . . 110 80. Partition object - NIC element object
38. Adapters metric group . . . . . . . . 110 properties . . . . . . . . . . . . . 161
39. Flash memory adapters metric group 111 81. Partition object - HBA element object
40. RoCE adapters metric group . . . . . . 111 properties . . . . . . . . . . . . . 163
82. Create Partition: HTTP status and reason 116. Adapter object: base managed object
codes . . . . . . . . . . . . . . 174 properties specializations . . . . . . . 262
83. Delete Partition: HTTP status and reason 117. Adapter object: class-specific properties 263
codes . . . . . . . . . . . . . . 176 118. Network Port element object properties 271
84. Delete Partition Asynchronously: HTTP status 119. Storage Port element object properties 271
and reason codes . . . . . . . . . . 178 120. List Adapters of a CPC: HTTP status and
85. Delete Partition Asynchronously: Job status reason codes . . . . . . . . . . . . 274
and reason codes . . . . . . . . . . 179 121. Update Adapter Properties: HTTP status and
86. Update Partition Properties: HTTP status and reason codes . . . . . . . . . . . . 278
reason codes . . . . . . . . . . . . 184 122. Change Crypto Type: HTTP status and reason
87. Update Partition Properties Asynchronously: codes . . . . . . . . . . . . . . 281
HTTP status and reason codes . . . . . . 188 123. Create Hipersocket: HTTP status and reason
88. Update Partition Properties Asynchronously: codes . . . . . . . . . . . . . . 283
Job status and reason codes . . . . . . . 188 124. Delete Hipersocket: HTTP status and reason
89. Start Partition: Job status and reason codes 192 codes . . . . . . . . . . . . . . 284
90. Stop Partition: Job status and reason codes 195 125. Get Partitions Assigned to Adapter: HTTP
91. Dump Partition: HTTP status and reason status and reason codes . . . . . . . . 287
codes . . . . . . . . . . . . . . 197 126. Get Network Port Properties: HTTP status
92. Dump Partition: Job status and reason codes 198 and reason codes . . . . . . . . . . 288
| 93. Start Dump Program: Job status and reason 127. Update Network Port Properties: HTTP status
| codes . . . . . . . . . . . . . . 202 and reason codes . . . . . . . . . . 290
94. Perform PSW Restart: Job status and reason 128. Get Storage Port Properties: HTTP status and
codes . . . . . . . . . . . . . . 205 reason codes . . . . . . . . . . . . 292
95. Create Virtual Function: HTTP status and 129. Update Storage Port Properties: HTTP status
reason codes . . . . . . . . . . . . 207 and reason codes . . . . . . . . . . 293
96. Delete Virtual Function: HTTP status and | 130. Change Adapter Type: HTTP status and
reason codes . . . . . . . . . . . . 209 | reason codes . . . . . . . . . . . . 295
97. Get Virtual Function Properties: HTTP status 131. Virtual Switch object: base managed object
and reason codes . . . . . . . . . . 210 properties specializations . . . . . . . 298
98. Update Virtual Function Properties: HTTP 132. Virtual Switch object: class specific properties 298
status and reason codes . . . . . . . . 212 133. Update Virtual Switch Properties: HTTP
99. Create NIC: HTTP status and reason codes 215 status and reason codes . . . . . . . . 305
100. Delete NIC: HTTP status and reason codes 218 134. Capacity Group element object properties 307
101. Get NIC Properties: HTTP status and reason 135. Create Capacity Group: HTTP status and
codes . . . . . . . . . . . . . . 219 reason codes . . . . . . . . . . . . 312
102. Update NIC Properties: HTTP status and 136. Delete Capacity Group: HTTP status and
reason codes . . . . . . . . . . . . 222 reason codes . . . . . . . . . . . . 314
103. Increase Crypto Configuration: HTTP status 137. Get Capacity Group Properties: HTTP status
and reason codes . . . . . . . . . . 224 and reason codes . . . . . . . . . . 316
104. Change Crypto Domain Configuration: HTTP 138. Add Partition to Capacity Group: HTTP
status and reason codes . . . . . . . . 227 status and reason codes . . . . . . . . 318
105. Decrease Crypto Configuration: HTTP status 139. Remove Partition from Capacity Group:
and reason codes . . . . . . . . . . 229 HTTP status and reason codes . . . . . . 320
106. Mount ISO Image: HTTP status and reason 140. Update Capacity Group Properties: HTTP
codes . . . . . . . . . . . . . . 232 status and reason codes . . . . . . . . 322
107. Unmount ISO Image: HTTP status and reason | 141. Storage Site object properties . . . . . . 323
codes . . . . . . . . . . . . . . 233 | 142. Storage Site object: class specific properties 324
| 108. Attach Storage Group to Partition: HTTP | 143. List Storage Sites: HTTP status and reason
| status and reason codes . . . . . . . . 235 | codes . . . . . . . . . . . . . . 326
| 109. Detach Storage Group from Partition: HTTP | 144. Create Storage Site: HTTP status and reason
| status and reason codes . . . . . . . . 238 | codes . . . . . . . . . . . . . . 328
110. Create HBA: HTTP status and reason codes 240 | 145. Delete Storage Site: HTTP status and reason
111. Delete HBA: HTTP status and reason codes 242 | codes . . . . . . . . . . . . . . 330
112. Update HBA Properties: HTTP status and | 146. Get Storage Site Properties: HTTP status and
reason codes . . . . . . . . . . . . 244 | reason codes . . . . . . . . . . . . 332
113. Get HBA Properties: HTTP status and reason | 147. Update Storage Site Properties: HTTP status
codes . . . . . . . . . . . . . . 246 | and reason codes . . . . . . . . . . 334
114. Reassign Storage Adapter Port: HTTP status | 148. Storage Fabric object properties . . . . . 336
and reason codes . . . . . . . . . . 248 | 149. Storage Fabric object: class specific properties 337
115. Open OS Message Channel: HTTP status and | 150. List Storage Fabrics: HTTP status and reason
reason codes . . . . . . . . . . . . 252 | codes . . . . . . . . . . . . . . 338
| 151. Create Storage Fabric: HTTP status and | 182. Undefine Storage Control Unit: HTTP status
| reason codes . . . . . . . . . . . . 340 | and reason codes . . . . . . . . . . 391
| 152. Delete Storage Fabric: HTTP status and | 183. Get Storage Control Unit Properties: HTTP
| reason codes . . . . . . . . . . . . 342 | status and reason codes . . . . . . . . 393
| 153. Get Storage Fabric Properties: HTTP status | 184. Update Storage Control Unit Properties:
| and reason codes . . . . . . . . . . 344 | HTTP status and reason codes . . . . . . 395
| 154. Update Storage Fabric Properties: HTTP | 185. Add Volume Range: HTTP status and reason
| status and reason codes . . . . . . . . 345 | codes . . . . . . . . . . . . . . 397
| 155. Storage Switch object: base managed object | 186. Remove Volume Range: HTTP status and
| properties specializations . . . . . . . 347 | reason codes . . . . . . . . . . . . 399
| 156. Storage Switch object: class specific properties 348 | 187. Create Storage Path: HTTP status and reason
| 157. List Storage Switches of a Storage Site: HTTP | codes . . . . . . . . . . . . . . 401
| status and reason codes . . . . . . . . 350 | 188. Delete Storage Path: HTTP status and reason
| 158. List Storage Switches of a Storage Fabric: | codes . . . . . . . . . . . . . . 403
| HTTP status and reason codes . . . . . . 352 | 189. Get Storage Path Properties: HTTP status and
| 159. Define Storage Switch: HTTP status and | reason codes . . . . . . . . . . . . 405
| reason codes . . . . . . . . . . . . 354 | 190. Update Storage Path Properties: HTTP status
| 160. Undefine Storage Switch: HTTP status and | and reason codes . . . . . . . . . . 407
| reason codes . . . . . . . . . . . . 356 | 191. Storage Group object: base managed object
| 161. Get Storage Switch Properties: HTTP status | properties specializations. . . . . . . . 411
| and reason codes . . . . . . . . . . 358 | 192. Storage Group object: class specific properties 412
| 162. Update Storage Switch Properties: HTTP | 193. Storage Volume element object properties 416
| status and reason codes . . . . . . . . 359 | 194. Virtual Storage Resource element object
| 163. Move Storage Switch to Storage Site: HTTP | properties . . . . . . . . . . . . . 422
| status and reason codes . . . . . . . . 361 | 195. World Wide Port Name Information nested
| 164. Move Storage Switch to Storage Fabric: HTTP | object: WWPN related properties . . . . . 423
| status and reason codes . . . . . . . . 363 | 196. List Storage Groups: HTTP status and reason
| 165. Storage Subsystem object: base managed | codes . . . . . . . . . . . . . . 425
| object properties specializations . . . . . 365 | 197. Create Storage Group: HTTP status and
| 166. Storage Subsystem object: class specific | reason codes . . . . . . . . . . . . 429
| properties . . . . . . . . . . . . . 366 | 198. Delete Storage Group: HTTP status and
| 167. subsystem-connection-endpoint nested object | reason codes . . . . . . . . . . . . 432
| properties . . . . . . . . . . . . . 366 | 199. Get Storage Group Properties: HTTP status
| 168. List Storage Subsystems of a Storage Site: | and reason codes . . . . . . . . . . 434
| HTTP status and reason codes . . . . . . 368 | 200. storage-volume-request-info nested object for
| 169. Define Storage Subsystem: HTTP status and | "create" operations on "fc" storage volumes . 437
| reason codes . . . . . . . . . . . . 370 | 201. storage-volume-request-info nested object for
| 170. Undefine Storage Subsystem: HTTP status | "create" operations on "fcp" storage volumes . 437
| and reason codes . . . . . . . . . . 372 | 202. storage-volume-request-info nested object for
| 171. Get Storage Subsystem Properties: HTTP | "modify" operations on "fc" storage volumes . 438
| status and reason codes . . . . . . . . 373 | 203. storage-volume-request-info nested object for
| 172. Update Storage Subsystem Properties: HTTP | "modify" operations on "fcp" storage volumes 439
| status and reason codes . . . . . . . . 375 | 204. storage-volume-request-info nested object for
| 173. Move Storage Subsystem to Storage Site: | "delete" operations on "fc" or "fcp" storage
| HTTP status and reason codes . . . . . . 377 | volumes . . . . . . . . . . . . . 439
| 174. Add Connection Endpoint: HTTP status and | 205. Modify Storage Group Properties: HTTP
| reason codes . . . . . . . . . . . . 379 | status and reason codes . . . . . . . . 441
| 175. Remove Connection Endpoint: HTTP status | 206. Add Candidate Adapter Ports to an FCP
| and reason codes . . . . . . . . . . 381 | Storage Group: HTTP status and reason codes 445
| 176. Storage Control Unit object: base managed | 207. Remove Candidate Adapter Ports from an
| object properties specializations . . . . . 384 | FCP Storage Group: HTTP status and reason
| 177. Storage Control Unit object: class specific | codes . . . . . . . . . . . . . . 447
| properties . . . . . . . . . . . . . 384 | 208. List Storage Volumes of a Storage Group:
| 178. Storage Control Unit object: volume-range | HTTP status and reason codes . . . . . . 450
| nested object properties . . . . . . . . 385 | 209. Get Storage Volume Properties: HTTP status
| 179. Storage Control Unit object: storage path | and reason codes . . . . . . . . . . 452
| element object properties. . . . . . . . 385 | 210. Fulfill FICON Storage Volume: HTTP status
| 180. List Storage Control Units of a Storage | and reason codes . . . . . . . . . . 455
| Subsystem: HTTP status and reason codes . . 387 | 211. Fulfill FCP Storage Volume: HTTP status and
| 181. Define Storage Control Unit: HTTP status and | reason codes . . . . . . . . . . . . 457
| reason codes . . . . . . . . . . . . 389
Tables xxiii
Level 04a
| 212. List Virtual Storage Resources of a Storage 250. psw-description object . . . . . . . . 483
| Group: HTTP status and reason codes . . . 460 251. zaware-network object . . . . . . . . 483
| 213. Get Virtual Storage Resource Properties: 252. ssc-network object . . . . . . . . . . 484
| HTTP status and reason codes . . . . . . 462 253. ip-info object. . . . . . . . . . . . 484
| 214. Update Virtual Storage Resource Properties: 254. network-ip-info object. . . . . . . . . 484
| HTTP status and reason codes . . . . . . 464 255. absolute-capping object . . . . . . . . 485
| 215. Get Partitions for a Storage Group: HTTP 256. Console object: base managed object
| status and reason codes . . . . . . . . 466 properties specializations . . . . . . . 485
| 216. Validate LUN Path: HTTP status and reason 257. Console object: class specific additional
| codes . . . . . . . . . . . . . . 468 properties . . . . . . . . . . . . . 486
217. Core Z resources - Console: operations 258. network-info object properties . . . . . . 486
summary . . . . . . . . . . . . . 473 259. detailed-network-info properties . . . . . 487
218. Core Z resources - Console: URI variables 474 260. paired-ip-info properties . . . . . . . . 487
219. Core Z resources - User: operations summary 474 261. ipv4-info properties . . . . . . . . . 487
220. Core Z resources - User: URI variables 475 262. ipv6-info properties . . . . . . . . . 487
221. Core Z resources - User Role: operations 263. machine-info properties . . . . . . . . 487
summary . . . . . . . . . . . . . 475 264. hardware-message object properties . . . . 488
222. Core Z resources - User Role: URI variables 475 265. mobile-app-preferences object properties 488
223. Core Z resources - Task: operations summary 475 266. Reorder User Patterns: HTTP status and
224. Core Z resources - Task: URI variables 475 reason codes . . . . . . . . . . . . 497
225. Core Z resources - User Pattern: operations 267. log-entry-info object properties. . . . . . 499
summary . . . . . . . . . . . . . 476 268. event-details-info object properties . . . . 499
226. Core Z resources - User Pattern: URI 269. event-data-item-info object properties 499
variables . . . . . . . . . . . . . 476 270. List Console Hardware Messages: HTTP
227. Core Z resources - Password Rule: operations status and reason codes . . . . . . . . 507
summary . . . . . . . . . . . . . 476 271. List Unmanaged CPCs: HTTP status and
228. Core Z resources - Password Rule: URI reason codes . . . . . . . . . . . . 511
variables . . . . . . . . . . . . . 476 272. List Unmanaged zBX Nodes: HTTP status
229. Core Z resources - LDAP Server Definition: and reason codes . . . . . . . . . . 513
operations summary . . . . . . . . . 476 273. User object: base managed object properties
230. Core Z resources - LDAP Server Definition: specializations . . . . . . . . . . . 531
URI variables . . . . . . . . . . . 477 274. User object: class specific additional
231. Core Z resources - Group: operations properties . . . . . . . . . . . . . 531
summary . . . . . . . . . . . . . 477 275. List Users: HTTP status and reason codes 536
232. Core Z resources - Groups: URI variables 477 276. Update User Properties: HTTP status and
233. Core Z resources - CPC: operations summary 478 reason codes . . . . . . . . . . . . 541
234. Core Z resources - CPC: URI variables 479 277. Add User Role to User: HTTP status and
235. Core Z resources - Logical partitions: reason codes . . . . . . . . . . . . 543
operations summary . . . . . . . . . 479 278. Remove User Role from User: HTTP status
236. Core Z resources - Logical partitions: URI and reason codes . . . . . . . . . . 545
variables . . . . . . . . . . . . . 480 279. Create User: HTTP status and reason codes 548
237. Core Z resources - Reset activation profile: 280. Delete User: HTTP status and reason codes 550
operations summary . . . . . . . . . 480 281. User Role object: base managed object
238. Core Z resources - Image activation profile: properties specializations . . . . . . . 553
operations summary . . . . . . . . . 480 282. User Role object: class specific additional
239. Core Z resources - Load activation profile: properties . . . . . . . . . . . . . 553
operations summary . . . . . . . . . 480 283. permission-info object properties . . . . . 555
240. Core Z resources - Group profile: operations 284. Update User Role Properties: HTTP status
summary . . . . . . . . . . . . . 481 and reason codes . . . . . . . . . . 561
241. Core Z resources - Activation profile: URI 285. Add Permission to User Role: HTTP status
variables . . . . . . . . . . . . . 481 and reason codes . . . . . . . . . . 564
242. Core Z resources - Capacity record: 286. Remove Permission from User Role: HTTP
operations summary . . . . . . . . . 481 status and reason codes . . . . . . . . 567
243. Core Z resources - Capacity record: URI 287. Create User Role: HTTP status and reason
variables . . . . . . . . . . . . . 481 codes . . . . . . . . . . . . . . 569
244. ec-mcl-description object . . . . . . . . 482 288. Delete User Role: HTTP status and reason
245. action object . . . . . . . . . . . . 482 codes . . . . . . . . . . . . . . 570
246. ec object . . . . . . . . . . . . . 482 289. Task object: properties . . . . . . . . 572
247. mcl object . . . . . . . . . . . . . 482 290. User Pattern object: properties . . . . . . 577
248. stp-config object . . . . . . . . . . 483 291. Update User Pattern Properties: HTTP status
249. stp-node object . . . . . . . . . . . 483 and reason codes . . . . . . . . . . 583
292. Create User Pattern: HTTP status and reason 329. Load activation profile: properties . . . . 795
codes . . . . . . . . . . . . . . 585 330. Group profile: properties. . . . . . . . 803
293. Password Rule object: properties . . . . . 589 331. Capacity records: class-specific properties 810
294. character-rule object properties. . . . . . 590 332. caprec-proc-info object . . . . . . . . 811
295. custom-character-set object properties 591 333. caprec-target object . . . . . . . . . 812
296. Update Password Rule Properties: HTTP 334. Energy management: operations summary 821
status and reason codes . . . . . . . . 596 335. Energy management: URI variables . . . . 821
297. Create Password Rule: HTTP status and 336. Get Energy Optimization Advice Summary:
reason codes . . . . . . . . . . . . 598 HTTP status and reason codes . . . . . . 839
298. LDAP Server Definition object: properties 603 337. Get Energy Optimization Advice Details:
299. Create LDAP Server Definition: HTTP status HTTP status and reason codes . . . . . . 847
and reason codes . . . . . . . . . . 612 338. Ensemble composition: operations summary 861
300. Group object: base managed object properties 339. Ensemble composition: URI variables 862
specializations . . . . . . . . . . . 616 340. Ensemble object: base managed object
301. Group object: class specific additional properties specializations . . . . . . . 862
properties . . . . . . . . . . . . . 616 341. Ensemble object: class specific properties 863
302. match-info object properties. . . . . . . 617 342. Ensemble composition: energy management
303. CPC object: base managed object properties related additional properties . . . . . . 864
specializations . . . . . . . . . . . 629 343. Ensemble composition: MAC address prefix
304. CPC object: class specific additional nested object related additional properties . . 864
properties . . . . . . . . . . . . . 630 344. Ensemble composition: node properties 865
305. ipv6-info object properties . . . . . . . 637 345. zBX infrastructure: operations summary 882
306. hardware-message object properties . . . . 637 346. zBX infrastructure: URI variables . . . . . 883
| 307. cpc-feature-info object properties . . . . . 638 347. zBX object: base managed object properties
308. auto-start-entry object base properties 638 specializations . . . . . . . . . . . 884
309. auto-start-entry object type-specific properties 348. zBX object: class specific properties . . . . 885
when type value is "partition" . . . . . . 638 349. zBX object: class specific additional properties
310. auto-start-entry object type-specific properties (for zBX node) . . . . . . . . . . . 885
when type value is "partition-group" . . . 639 350. zBX object: ec-mcl-description nested object
311. CPC object: energy management related properties (for zBX node) . . . . . . . 888
additional properties . . . . . . . . . 639 351. zBX object: action nested object properties
312. Set Auto-Start List: HTTP status and reason (for zBX node) . . . . . . . . . . . 888
codes . . . . . . . . . . . . . . 670 352. zBX object: ec nested object properties (for
313. Get CPC Audit Log: HTTP status and reason zBX node) . . . . . . . . . . . . 888
codes . . . . . . . . . . . . . . 683 353. zBX object:mcl nested object properties (for
314. Get CPC Security Log: HTTP status and zBX node) . . . . . . . . . . . . 888
reason codes . . . . . . . . . . . . 686 354. zBX object: ipv6-info properties (for zBX
315. List CPC Hardware Messages: HTTP status node) . . . . . . . . . . . . . . 889
and reason codes . . . . . . . . . . 689 355. zBX object: hardware-message object
316. Get CPC Hardware Message Properties: properties (for zBX node) . . . . . . . 889
HTTP status and reason codes . . . . . . 690 356. zBX object: energy management related
317. Delete CPC Hardware Message: HTTP status additional properties (for zBX node) . . . . 889
and reason codes . . . . . . . . . . 692 357. Get EC/MCL Description of zBX (Node):
318. Export WWPN List: HTTP status and reason HTTP status and reason codes . . . . . . 900
codes . . . . . . . . . . . . . . 694 358. Activate zBX (Node): HTTP status and reason
| 319. cpc-info nested object . . . . . . . . . 696 codes . . . . . . . . . . . . . . 904
| 320. adapter-mapping-info nested object . . . . 697 359. Activate zBX (Node): Job status and reason
321. Logical Partition object: base managed object codes . . . . . . . . . . . . . . 904
properties specializations . . . . . . . 704 360. Deactivate zBX (Node): HTTP status and
322. Logical Partition object: class specific reason codes . . . . . . . . . . . . 906
additional properties . . . . . . . . . 704 361. Dectivate zBX (Node): Job status and reason
323. central-storage-allocation nested object codes . . . . . . . . . . . . . . 906
properties . . . . . . . . . . . . . 719 362. Get zBX (Node) Audit Log: HTTP status and
324. expanded-storage-allocation nested object reason codes . . . . . . . . . . . . 908
properties . . . . . . . . . . . . . 719 363. Get zBX (Node) Security Log: HTTP status
325. Open OS Message Channel: HTTP status and and reason codes . . . . . . . . . . 911
reason codes . . . . . . . . . . . . 749 364. List zBX (Node) Hardware Messages: HTTP
326. List Managed Virtual Machines of a Logical status and reason codes . . . . . . . . 914
Partition: HTTP status and reason codes . . 759 365. Get zBX (Node) Hardware Message
327. Reset activation profile: properties . . . . 761 Properties: HTTP status and reason codes . . 916
328. Image activation profile: properties . . . . 768
Tables xxv
Level 04a
366. Delete zBX (Node) Hardware Message: HTTP 403. fullpack-virtual-disk-zvm object properties 1061
status and reason codes . . . . . . . . 918 404. storage-group-based-virtual-disk object
367. zBX Top-of-Rack switches: properties 919 properties . . . . . . . . . . . . 1061
368. zBX Top-of-Rack switches: tor-port-info 405. linked-virtual-disk object properties 1062
nested object properties . . . . . . . . 920 406. Valid values for the access-modes property
369. Rack object: base managed object properties of a virtual disk object . . . . . . . . 1062
specializations . . . . . . . . . . . 939 407. Activate Virtual Server: HTTP status and
370. Rack object: class specific properties . . . . 939 reason codes . . . . . . . . . . . 1121
371. BladeCenter object: base managed object 408. Storage management: ensemble-level storage
properties specializations . . . . . . . 944 operations . . . . . . . . . . . . 1140
372. BladeCenter object: class specific properties 944 409. Storage management: virtualization host
373. BladeCenter object: energy management storage operations . . . . . . . . . 1141
related additional properties . . . . . . 945 410. Storage management: storage group
374. Activate BladeCenter: HTTP status and operations . . . . . . . . . . . . 1141
reason codes . . . . . . . . . . . . 955 411. Storage management: URI variables 1142
375. Activate BladeCenter: Job status and reason 412. Storage Resource object: base managed
codes . . . . . . . . . . . . . . 955 object properties specializations . . . . . 1142
376. Activate BladeCenter: HTTP status and 413. Storage Resource object: class specific
reason codes . . . . . . . . . . . . 957 properties . . . . . . . . . . . . 1143
377. Deactivate BladeCenter: Job status and reason 414. Virtualization Host Storage Resource object
codes . . . . . . . . . . . . . . 957 properties . . . . . . . . . . . . 1160
378. Blade object: base managed object properties 415. Virtualization Host Storage Resource object:
specializations . . . . . . . . . . . 959 path-information-fcp object properties . . . 1161
379. Blade object: class specific properties 960 416. Virtualization Host Storage Resource object:
380. Blade object: energy management related path-information-eckd object properties . . 1162
additional properties . . . . . . . . . 961 417. Virtualization Host Storage Group object
381. Blade object: IEDN interface nested object properties . . . . . . . . . . . . 1187
properties . . . . . . . . . . . . . 963 418. Virtualization Host Storage Group object:
382. Virtualization management - virtualization free-space-information object properties . . 1187
host: operations summary . . . . . . . 985 419. Virtual network management: operations
383. Virtualization management- virtualization summary . . . . . . . . . . . . 1199
host: URI variables. . . . . . . . . . 986 420. Virtual network management: URI variables 1199
384. Virtualization management - virtual server: 421. Virtual Network object: base managed object
operations summary . . . . . . . . . 986 properties specializations . . . . . . . 1200
385. Virtualization management - virtual server: 422. Virtual Network object: class specific
URI variables . . . . . . . . . . . 987 additional properties. . . . . . . . . 1200
386. Virtualization Host object: base managed 423. Workload resource group management:
object properties specializations . . . . . 988 operations summary . . . . . . . . . 1216
387. Virtualization Host object: class-specific 424. Workload management: URI variables 1219
additional properties . . . . . . . . . 989 425. Workload object: base managed object
388. iedn-virtual-switch object properties . . . . 992 properties specializations . . . . . . . 1219
389. real-uplink object properties . . . . . . 994 426. Workload object: class-specific properties 1220
390. qdio-virtual-switch object properties . . . . 995 427. perf-policy-summary-object . . . . . . 1223
391. Virtual Server object: base managed object 428. avail-policy-summary-object . . . . . . 1223
properties specializations . . . . . . . 1037 429. Performance Policy object: class-specific
392. Virtual Server object: class specific additional properties . . . . . . . . . . . . 1252
properties . . . . . . . . . . . . 1040 430. Performance Policy object: Service class
393. Virtual Server object: virtual server nested object properties . . . . . . . . 1254
availability status with reasons nested object 431. Performance Policy object: classification rule
properties . . . . . . . . . . . . 1054 nested object properties . . . . . . . . 1255
394. Virtual Server object: virtual server 432. Performance Policy object: filter nested
performance policy nested object . . . . 1055 object properties . . . . . . . . . . 1256
395. Virtual Server object: virtual server 433. Format of a workload-report-entry object 1277
availability policy nested object . . . . . 1055 434. Format of a cpu-utilization-range object 1278
396. mac-prefix object properties . . . . . . 1056 435. Format of a perf-status-data-point object 1278
397. network-adapter-power object properties 1056 436. Format of a service-class-pi-data object 1281
398. network-adapter-x-hyp object properties 1056 437. Format of a pi-data-point object . . . . . 1281
399. network-adapter-zvm object properties 1057 438. Format of a report-hypervisor-details object 1300
400. network-adapter-prsm object properties 1059 439. Format of a PowerVM report-hypervisor-
401. Virtual disk object properties . . . . . . 1060 virtual-servers object. . . . . . . . . 1301
402. fullpack-virtual-disk object properties 1061
440. Format of an x Hyp report-hypervisor- 457. Workload Element Group object: Workload
virtual-servers object. . . . . . . . . 1302 element group availability status with
441. Format of a z/VM report-hypervisor-virtual- reasons nested object properties . . . . . 1337
servers object . . . . . . . . . . . 1303 458. Availability Policy object: class-specific
442. Format of a PR/SM report-hypervisor- properties . . . . . . . . . . . . 1349
virtual-servers object. . . . . . . . . 1305 459. Availability Policy object: Workload element
443. Format of an equivalent-workload-service- group override nested object properties . . 1351
class object . . . . . . . . . . . . 1321 460. Format of a workload-report-entry object 1363
444. Format of a hop-entry object . . . . . . 1321 461. Format of nested avail-status-data-point
445. Format of a hops-report-statistics object 1322 object . . . . . . . . . . . . . . 1364
446. Format of a hop-application-env object 1322 462. Format of a policy-activation-record object 1366
447. Format of a hop-application-env-virtual- 463. Format of availability-status-record object 1366
server object . . . . . . . . . . . 1323 464. Format of a parent object . . . . . . . 1369
448. Format of an equivalent-workload-service- 465. Performance policy XML elements 1385
class object . . . . . . . . . . . . 1326 466. Performance policy XML: Elements in a
449. Format of a topo-hop object . . . . . . 1326 ServiceClass element . . . . . . . . 1386
450. Format of a topo-virtual-server-node object 1326 467. Performance policy XML: Elements required
451. Format of an appl-env-vs-response-entry for a Velocity element . . . . . . . . 1386
object . . . . . . . . . . . . . . 1328 468. Performance policy XML: Elements in a
452. Format of an appl-env-vs-utilization-entry Filter element . . . . . . . . . . . 1388
object . . . . . . . . . . . . . . 1329 469. Enum values for a class of managed objects 1393
453. Format of a child-virtual-server-node-link 470. Enum values for the name property of User
object . . . . . . . . . . . . . . 1330 Role objects with a type of "system-defined" 1395
454. Workload object: base managed object 471. Enum values for the name property of Task
properties specializations . . . . . . . 1335 objects . . . . . . . . . . . . . 1397
455. Workload Element Group object:
class-specific properties . . . . . . . . 1335
456. Workload Element Group object: Workload
element group availability status nested
object properties . . . . . . . . . . 1336
Tables xxvii
Level 04a
Safety
Safety notices
Safety notices may be printed throughout this guide. DANGER notices warn you of conditions or
procedures that can result in death or severe personal injury. CAUTION notices warn you of conditions
or procedures that can cause personal injury that is neither lethal nor extremely hazardous. Attention
notices warn you of conditions or procedures that can cause damage to machines, equipment, or
programs.
Laser compliance
All lasers are certified in the US to conform to the requirements of DHHS 21 CFR Subchapter J for Class
1 or Class 1M laser products. Outside the US, they are certified to be in compliance with IEC 60825 as a
Class 1 or Class 1M laser product. Consult the label on each part for laser certification numbers and
approval information.
CAUTION: Data processing environments can contain equipment transmitting on system links with
laser modules that operate at greater than Class 1 power levels. For this reason, never look into the
end of an optical fiber cable or open receptacle. (C027)
CAUTION: This product contains a Class 1M laser. Do not view directly with optical instruments.
(C028)
Related publications
The following publications provide information which supplements the information found within this
document:
v Capacity On Demand User's Guide, SC28-6985
v Ensemble Workload Resource Group Management Guide, GC27-2629
v Ensemble Planning Guide, GC27-2631
v Processor Resource/Systems Manager Planning Guide, SB10-7169
v z/VM CP Planning and Administration Guide, SC24-6178
v z/VM CP Commands and Utility Reference, SC24-6175
v Dynamic Partition Manager (DPM) Guide, SB10-7170
v 3906 Installation Manual for Physical Planning, GC28-6965
v z13® Installation Manual for Physical Planning, GC28-6938
v zEC12 Installation Manual for Physical Planning, GC28-6914
v zBC12 Installation Manual for Physical Planning, GC28-6923
v z BladeCenter Extension Model 004 Installation Manual for Physical Planning, GC27-2630
v zBX Model 003 Installation Manual for Physical Planning, GC27-2619-01
v zBX Model 002 Installation Manual for Physical Planning, GC27-2611-03
Revisions
A technical change from the previous edition of this document is indicated by a vertical line (|) to the left
of the change.
For the convenience of application programmers that have used the previous version of this book,
Hardware Management Console Web Services API Version 2.14.0, SC27-2636-03, revision notations have been
added to illustrate the changes made since that document was published.
For more information about what has changed since the last publication, see “Summary of API version
updates” on page 7.
Accessibility
Accessible publications for this product are offered in EPUB format and can be downloaded from
Resource Link® at http://www.ibm.com/servers/resourcelink.
If you experience any difficulty with the accessibility of any IBM Z® and IBM LinuxONE information, go
to Resource Link at http://www.ibm.com/servers/resourcelink and click Feedback from the navigation
bar on the left. In the Comments input area, state your question or comment, the publication title and
number, choose General comment as the category and click Submit. You can also send an email to
[email protected] providing the same information.
When you send information to IBM, you grant IBM a nonexclusive right to use or distribute the
information in any way it believes appropriate without incurring any obligation to you.
Accessibility features
The following list includes the major accessibility features in IBM Z and IBM LinuxONE documentation,
and on the Hardware Management Console and Support Element console:
v Keyboard-only operation
v Interfaces that are commonly used by screen readers
v Customizable display attributes such as color, contrast, and font size
v Communication of information independent of color
v Interfaces commonly used by screen magnifiers
v Interfaces that are free of flashing lights that could induce seizures due to photo-sensitivity.
Keyboard navigation
This product uses standard Microsoft Windows navigation keys.
Chapter 1. Introduction
This chapter provides an overview of IBM z Unified Resource Manager (zManager) APIs, how to enable
and access them, and considerations for compatibility.
Overview
The IBM z Unified Resource Manager (zManager) is a collection of advanced hardware and virtualization
management functions delivered as Z firmware. The functions of zManager are implemented as a
cooperating set of components hosted on the Hardware Management Console (HMC), the Support
Element (SE), the IBM z BladeCenter Extension (zBX) Model 004, the blades of an IBM zEnterprise®
BladeCenter Extension (zBX) Model 003 or Model 002, and as extensions to z/VM®. It provides a
uniform, integrated and workload-oriented administrative model for the heterogeneous computing
configuration provided by a Z environment. The functions provided by zManager include:
v Hardware inventory, initialization, configuration, monitoring and problem analysis for the components
of a Z CPC, including both the traditional Z computing resources as well as the zBX.
v Firmware installation and update for the HMC, SE, traditional CPC components, zBX infrastructure,
Intra-Ensemble Data Network (IEDN) elements, and zBX blades.
v Operational control and energy management for these hardware elements.
v Configuration of function-specialized workload accelerators available as blade optimizers in the zBX.
v Provisioning, configuration, control and monitoring of virtualized computing systems (virtual servers)
on the firmware-managed IBM blade and z/VM environments.
v Secure management of the IEDN through the provisioning and control of IEDN virtual networks.
v Automatic and workload-oriented performance optimization of the heterogeneous, virtualized
environment.
The HMC serves as the administrative access point for zManager. In that capacity, the HMC provides a
web-based, remote-able graphical user interface (UI) to make the zManager functions available to users.
In addition, it hosts the implementation of zManager Web Service API (Web Services API) that is
described in this document.
The Web Services API is a web-oriented programming interface that makes the underlying zManager
capabilities available for use by higher level management applications, system automation functions, or
custom scripting. The functions that are exposed through the API support several important usage
scenarios in virtualization management, including resource inventory, provisioning, monitoring,
automation and workload-based optimization among others.
As is the case for any web-oriented interface, client applications interact with this interface by means of
the Hypertext Transfer Protocol (HTTP), an application protocol that flows over TCP/IP socket
connections. Client applications request operations by forming and sending text-oriented request
messages as defined by HTTP, and the Web Services API responds with text-oriented HTTP response
messages. The use of HTTP makes the API client-programming-language neutral, and thus accessible to a
© Copyright IBM Corp. 2017, 2018 3
Level 04a
wide variety of client applications. Client applications can be developed in programming languages such
as Java, or in scripting languages such as Perl or Python that include extensive support for performing
HTTP operations.
The design of the API's mapping to HTTP has been influenced by the Representational State Transfer
(REST) style of interface design. The manageable resources of the system are associated with and
identified by durable URIs, and the basic get, update, create and delete operations on those manageable
resources are mapped directly to the HTTP GET, PUT, POST and DELETE methods. Request and
response data is provided using JavaScript Object Notation (JSON), a simple, open and portable transfer
representation. Mapping the functions of the API to HTTP in this way simplifies client application
development and allows access to the API without the need for extensive client side tooling or libraries
as is often the case in other approaches to web services interface design.
Broadly speaking, the web service interface provides two categories of operations:
v Resource (or object) oriented operations, in which a particular request is targeted at a single
manageable resource instance and typically affects just that single resource instance. The majority of
the API has this orientation, for example providing functions for interacting with the virtual servers,
virtualization hosts, virtual networks and workloads of the system.
v Service oriented operations, in which a particular request operates across many or all manageable
resources of the system. The service-oriented operations are provided to support usage scenarios that
cannot be accomplished efficiently using an object-by-object sequence of individual requests. The
operations provided by the Metrics and Inventory services of the API are examples of service-oriented
operations.
However, more sophisticated management applications, including those for discovery, monitoring and
advanced provisioning, are not single-request-and-forget with respect to their interest in zManager.
Rather, such applications have a need to obtain and retain (i.e., cache) information about the inventory,
configuration and status of many zManager resources, and to keep that cached information up to date.
In order to support these more sophisticated applications, the Web Services API provides an
asynchronous notification facility by which zManager can inform interested client applications about
changes to the resources managed by zManager.
The API's asynchronous notification facility is designed around the Java Message Service (JMS), an open,
standard framework and API for sending messages between two or more applications.
By default, the Web Services API is disabled on the HMC. When disabled, the HMC internal firewall is
configured to prohibit connections to any of the TCP/IP ports used by the API. When in this state,
requests to connect to the API network ports are completely ignored by the HMC without a
connection-refused response.
The Web Services API can be enabled and the scope of access to it configured using the Customize API
Settings task in the HMC UI. The Customize API Settings task allows an installation to enable the API
via an overall enabled/disabled setting. When enabled, the HMC internal firewall is reconfigured to
allow access to the relevant network ports. When the API is enabled with default settings, the HMC
allows connections to the API functions from client applications accessing the HMC from any TCP/IP
address. For additional security, an installation can configure the HMC to permit connections to the API
ports only from selected network addresses or subnets. These addresses or subnets are specified by the
Customize API Settings task as well. If specified, these connection restrictions are enforced by the HMC
internal firewall.
In addition to the overall enablement on/off control and the optional client network address filtering,
access to the API is further secured by the requirement for per-user authorization.
The HMC User Management task defines access and other characteristics of an HMC user. This task
manages a user property (Allow access to Web Services management interfaces) to indicate whether a
particular HMC user is to be permitted to use the API or not. By default, this setting is disabled for an
HMC user profile and thus attempts to establish an API session by that user are rejected. The installation
can use the Customize API Settings or User Management tasks of the HMC to set this property for one
or more HMC users and thus allow those users to access the API.
Once a user is permitted to establish API sessions, its actions within those sessions are subject to the
HMC's access control model, as is described in the section that follows.
Use of the Web Services API is subject to the same access control policy as is used for UI operations.
Establishing an API session with the HMC requires the initiating application to provide a valid HMC
logon ID and corresponding password in order to authenticate and establish the identity under which its
requests will be performed. (See “Logon” on page 70 for more information.) The API requires the use of
SSL connections so that these login credentials can be flowed securely. The user credentials are validated
by the HMC in the same way they are validated for a logon to the UI, either via the HMC's built-in user
registry or by use of an LDAP directory server. If the HMC logon ID is configured to require multi-factor
authentication, then an additional authentication token is required.
Once a client application has established an API session, its ability to access various managed object
instances and the operations that can be performed on those instances is regulated based on the identity
associated with the API session and the access control policy configured in the HMC for those managed
object instances. Access control requirements vary based on the class of managed object and the operation
for the managed object. These access control requirements for API actions mirror the requirements for
corresponding tasks in the HMC user interface. Details on the authorization requirements for an
operation are specified in the description of that operation.
Chapter 1. Introduction 5
Level 04a
the alternate HMC, and when in this role acts only as a standby for the primary HMC and mirrors
configuration updates from the primary in case the primary fails, but does not otherwise perform active
management.
The Web Services API can and should be enabled on both the primary and alternate HMCs of the pair.
However, client applications should generally connect only with the primary HMC for API purposes.
Because the alternate HMC is not performing active management, it is unable to perform the
management actions implied by API requests, and thus most API operations are designed to be rejected if
directed to the alternate HMC (with HTTP status code 404, reason code 3). The API operations supported
on the alternate HMC are limited to those that control the alternate HMC function itself. The description
of an operation specifically indicates that it is supported on the alternate HMC if this is the case.
Compatibility
The capabilities of the Web Services API will evolve as additional management functionality is added to
zManager. Over time, this evolution could result in a mixture of HMC and client application versions
coexisting in a customer environment. The principles and guidelines outlined in this section are intended
to maximize the compatibility and interoperability among HMC and client applications in such a mixed
environment.
API versioning
Since the functionality of the Web Services API may evolve over time, each functional level of the API is
identified by a version number. This version number is represented in major.minor form, with the initial
version of the API designated as version 1.1.
The API version offered by an HMC can be determined before API logon by using the Query API Version
operation (GET /api/version). The version number of the API is also provided in the response from the
Logon operation.
Enhancements to the API specification that maintain compatibility with previous versions (see principles
below) are indicated by incrementing the minor portion of the version number. So, for example, the first
set of compatible changes to the API would be designated as version 1.2, following the initial 1.1 version.
Because the minor versions within a major version stream (e.g. the 1.x versions) are considered
compatible, the HMC always offers and behaves according to the latest minor version of the API
specification it supports. That means, for example, the API does not offer any facility by which a client
can request version 1.1 behaviors on an HMC that offers version 1.2 level of functionality.
While reasonable effort will be made to preserve compatibility, it may become necessary to make changes
to zManager (and thus the API) that do not maintain compatibility with the previous version. If this
occurs, the introduction of this new (incompatible) behavior is indicated by incrementing the major part
of the version number, and starting the minor part of the version number again at 1. The first such
version would thus be identified as version 2.1.
v Adding new optional query parameters to existing URIs where the behavior in the absence of this
query parameter is unchanged.
v Adding new optional fields into input bodies where the behavior in the absence of these new fields is
unchanged.
v Adding new fields to the response bodies of existing operations.
v Adding additional header or body fields to existing notification messages.
v Adding data for new classes of objects to the results provided by the Inventory service.
v Generating new types of notification messages.
v Generating property change notifications for new properties, or for existing properties that did not
provide those notifications previously.
v Adding new enumeration values to enumeration-type fields returned in response bodies without
removing or changing the meaning of any existing enumeration values.
v Adding new error status and reason codes.
v Adding new metric groups.
v Adding new metric fields to the end of existing metric groups.
These conditions can arise as a result of API extensions that are considered allowable within a given
major version. Following the “ignore what you don't understand” principle prepares a client application
to tolerate these API additions should they occur.
Note: For each of the following API version summary tables, when an API extension indicates the
addition of new properties to the data model for a specified object class, such an extension also includes
standard changes to several related operations as well even though, for brevity, these related changes are
not specifically mentioned in the table. In general, an extension to an object's data model will also include
Chapter 1. Introduction 7
Level 04a
corresponding changes to the inputs to or responses from Get Properties, Update Properties and Create
operations for that object class, as appropriate. In addition, the new properties are included in Inventory
Service data for objects of the specified class.
Table 1. Summary of updates for API version 1.1 (HMC/SE Version 2.11.1)
Description HMC MCL SE MCL
Added reason codes 0, 105 and 108 as possible HTTP status code 409 N48180.278 N48168.275
(Conflict) error conditions reported by the Migrate Virtual Server operation.
Changed the backing-virtualization-host-storage-resource property of the N48180.287 None
Virtual Server data model (in the fullpack-virtual-disk nested object) from a
read-only property to a writable property.
Increased the maximum request body size for the Import Storage Access List N48180.288 N48168.294
operation to 1 MB, and increased the maximum request body size for most
other operations to 64KB.
Added the cores-per-processor property to the Blade object data model N48180.296 None
(read-only).
Added inventory and property-change notification support for the N48180.308 N48168.315
Virtualization Host Storage Resource object.
Added the inventory-error-details field and related inventory-error-info N48180.314 N48168.321
nested object to the inventory-error document returned by the Get Inventory
operation when error condition 5 is encountered.
v Added the properties=common query parameter to the Get Virtual Server N48180.319 N48168.325
Properties operation.
v Added the virtual-server-common category and power-vm-virtual-server-
common, prsm-virtual-server-common, x-hyp-virtual-server-common and
zvm-virtual-server-common classes to the Get Inventory operation.
Changed the resources field in the request body for the Get Inventory N48180.340 None
operation from required to optional.
Corrected the range checking for the load-address field of the Load Logical N48180.360 None
Partition operation so that the operation correctly supports loading from an
alternate subchannel.
Table 2. Summary of updates for API version 1.2 (HMC/SE Version 2.11.1)
Description HMC MCL SE MCL
v Added the Mount Virtual Media Image operation. N48180.361 None
v Increased API version number from 1.1 to 1.2.
Corrected the format of the URI returned by the List Members of Virtual N48180.363 None
Network operation for a zBX TOR port to reflect the correct canonical URI
format for zBX TOR port elements.
Added the power-vm-partition-id property to the Virtual Server object data N48180.363 N48168.378
model for PowerVM® virtual servers (read-only)
Added HTTP status code 409 (Conflict) as a possible error condition for the N48180.376 None
List Virtualization Host Storage Resources and Get Virtualization Host
Storage Resource Properties operations.
Added the feature-list property to the Virtualization Host object data model. N48180.380 N48168.402
This property is provided for virtualization hosts on all CPCs supported by
the Web Services API, but the particular features provided by a given
virtualization host will differ based on the release and MCL level of the CPC.
Table 3. Summary of updates for API version 1.3 (HMC/SE Version 2.12.0)
Description HMC MCL SE MCL
The following extensions are provided by the HMC Web Services API for H09182.023 H09173.028
HMCs at version 2.12.0, and apply to all CPCs supported by the Web
Services API:
v Increased API version number from 1.2 to 1.3.
v Added the power-saving-state property to the BladeCenter and Blade
objects data models, and added the cpc-power-saving-state and
zcpc-power-saving-state properties to the CPC object data model.
v Added "not-supported" as a possible enumeration value for the
power-save-allowed and power-cap-allowed properties of BladeCenter and
Blade objects, and added "not-supported" as a possible enumeration value
of the cpc-power-save-allowed, cpc-power-cap-allowed,
zcpc-power-save-allowed and zcpc-power-cap-allowed properties of the
CPC object.
v Added the status (read-only), acceptable-status (writable), perf-status
(read-only) and compliant-perf-status (writable) properties to the
Workload Resource Group object data model.
v Added most-severe-perf-status and perf-status-data-points fields, and
related perf-status-data-point nested object to the response from the
Generate Workload Resource Groups Report operation.
v Added the perf-policies property to the Virtual Server object data model,
and also added related virtual server performance policy nested object.
v Added "data-retrieval-error" as a possible enumeration value for the
status-detailed field in the response for the Generate Load Balancing
Report operation.
v Added an optional request body containing an optional force input field
to the Unmount Virtual Media operation.
v Changed the Create Virtual Server operation for a zVM virtual server to
require the password field on input rather than allowing it to be optional.
This change has been made to improve security.
v Added HTTP status code 409 (Conflict) as a possible error response
reported by the following Storage Management operations:
– Import Storage Access List
– Create Virtualization Host Storage Resource
– Delete Virtualization Host Storage Resource
– Add Virtualization Host Storage Resource Paths
– Remove Virtualization Host Storage Resource Paths
– Discover Virtualization Host Storage Resources.
Chapter 1. Introduction 9
Level 04a
Table 3. Summary of updates for API version 1.3 (HMC/SE Version 2.12.0) (continued)
Description HMC MCL SE MCL
The following extensions are provided by the HMC Web Services API for H09182.023 H09173.028
HMCs at version 2.12.0, but apply only to CPCs with SE version 2.12.0:
v Added cp-cpu-consumption-percent, ifl-cpu-consumption-percent and
other-cpu-consumption-percent fields to the response from the Generate
Hypervisor Report operation for zVM virtualization hosts. These new
fields are provided for zVM virtualization hosts running at version 6.2 or
greater.
v Added the following in support of IBM zAware partitions. These changes
apply only for partitions of the new "zaware" type:
– Added "zaware" as a possible value of the activation-mode property of
Logical Partition and Image Activation Profile objects.
– Added the zaware-network, network-ip-info and ip-info nested objects
as common nested object definitions used for new properties of Logical
Partition objects.
– Added the zaware-host-name, zaware-master-userid,
zaware-master-pw, zaware-network-info, zaware-gateway-info and
zaware-dns-info properties to the Logical Partition and Image
Activation Profile object data models.
– Added HTTP status 400 reason code 306 as a possible error response
from the Load Logical Partition, PSW Restart, Start Logical Partition,
Stop Logical Partition, and Update Image Activation Profile Properties
operations when these operations are attempted on an IBM zAware
partition.
v Added the Cryptos and Flash Memory Adapters metric groups for CPC
objects. Data entries are provided for a CPC in these metric groups if the
CPC has one or more Cryptos or Flash Memory Adapters installed.
v Added new cp-cpu-time, ifl-cpu-time, zaap-cpu-time, ziip-cpu-time and
icf-cpu-time metrics to the Virtualization Host CPU and Memory metric
group (for zVM virtualization hosts).
Added HTTP status code 409 (Conflict) as a possible error condition for the H09182.062 None
List Virtualization Host Storage Resources and Get Virtualization Host
Storage Resource Properties operations.
Added property change support for the unique-device-id property of the H09182.102 None
Storage Resource object.
Added the feature-list property to the Virtualization Host object data model. H09182.119 H09173.149
This property is provided for virtualization hosts on all CPCs supported by
the Web Services API, but the particular features provided by a given
virtualization host will differ based on the release and MCL level of the CPC.
Table 4. Summary of updates for API version 1.4 (HMC/SE Version 2.12.1)
Description HMC MCL SE MCL
The following extensions are provided by the HMC Web Services API for H49574.020 H49564.021
HMCs at version 2.12.1 or later, and apply to all CPCs supported by the Web
Services API:
v Increased API version number from 1.3 to 1.4.
v Added the Get Network Adapter Properties operation for Virtual Server
objects.
v Added the List Virtualization Host Storage Resources of a Storage
Resource operation for Storage Resource objects.
v Added the List Virtual Disks of a Virtualization Host Storage Resource
operation for Virtualization Host objects.
v Added API support for absolute capping to the Logical Partition and
Image Activation Profile objects, including the following API extensions:
– Added the absolute-processing-capping, absolute-aap-capping,
absolute-ifl-capping, absolute-ziip-capping and absolute-cf-capping
properties to the data model for Logical Partition objects.
– Added the absolute-general-purpose-capping, absolute-aap-capping,
absolute-ifl-capping, absolute-ziip-capping and absolute-icf-capping
properties to the data model for Image Activation Profile elements of
CPC objects.
v Added the partition-identifier property to the data model for Logical
Partition objects.
The following extensions are provided by the HMC Web Services API for
HMCs at version 2.12.1 or later, but primarily apply only to CPCs with SE
version 2.12.1 or later:
Chapter 1. Introduction 11
Level 04a
Table 4. Summary of updates for API version 1.4 (HMC/SE Version 2.12.1) (continued)
Description HMC MCL SE MCL
v Added support for management of processor performance for virtual H49574.020 H49564.021
servers on x-hyp virtualization hosts, comprising the following API
extensions:
– Added the cpu-perf-mgmt-enabled-x-hyp property to the data model
for Ensemble objects.
– Added the cpu-shares-supported property to the data model for
Virtualization Host objects.
– Extended the existing cpu-perf-mgmt-enabled, initial-shares,
minimum-shares and maximum-shares properties of Virtual Server
objects to now also be applicable to virtual servers of type x-hyp.
– Added the workload-processor-mgmt-status, workload-processor-
mgmt-status-reason, initial-shares, shares, min-shares, and max-shares
fields to the response for the Generate Hypervisor Report operation of
Ensemble objects. when issued for x-hyp virtualization hosts. These
fields were previously provided for PowerVM and/or z/VM
virtualization hosts but not for x-hyp virtualization hosts
v Added support for ensemble availability management, comprising the
following API extensions:
– Added the workload-element-groups, active-avail-policy,
default-avail-policy, custom-avail-policies, avail-status, and
compliant-avail-status properties and related nested objects to the data
model for Workload Resource Group objects.
– Added the Availability Policy element of a Workload Resource Group
and corresponding operations for elements of this class, including List,
Create, Delete, Get Properties, Update Properties and Activate
operations for Availability Policy elements of Workload Resource Group
objects.
– Added the Workload Element Group object and corresponding
operations on objects of this class, including List, Create, Delete, Get
Properties and Update Properties operations for Workload Element
Group objects.
– Added Add To and Remove From operations for managing the
inclusion of Workload Element Groups within Workload Resource
Group objects.
– Added List, Add To and Remove From operations for managing the
inclusion of Virtual Servers within Workload Element Group objects.
– Added reporting operations for availability management, including the
Generate Workload Resource Groups Report (Ensemble Availability
Management), Generate Workload Resource Group Availability Status
Report, Generate Virtual Server Report (Ensemble Availability
Management), and Generate Availability Status Report operations.
– Added an enumeration value of "workload-element-group" as a
possible value of the inclusion-type field in the response for the List
Virtual Servers of a Workload Resource Group operation, to specify
the additional way in which virtual servers can become members of a
Workload Resource Group.
– Added the avail-status, acceptable-avail-status, avail-policies and
workload-element-group properties and related nested objects to the
data model for Virtual Server objects.
v Added the heat-load, heat-load-forced-air and heat-load-water metrics to
the zCPC Environmentals and Power metric group.
v Added RoCE Adapters and Ensemble Power Metric groups.
Table 5. Summary of updates for API version 1.5 (HMC/SE Version 2.12.1)
Description HMC MCL SE MCL
Added the ability to specify per-virtual-server shutdown timeouts and to H49574.075 H49564.070
perform deactivate actions that either use or override the shutdown timeout
specified in the virtual server or its hosting virtualization host configuration.
This new capability applies to CPCs with SE version 2.12.1 or later that have
the specified MCL installed. This new capability comprises the following
detailed API extensions:
v Increased API version number from 1.4 to 1.5.
v Added the enumeration value "virtual-server-shutdown-timeout-override-
support" as a possible feature identifier included in the feature-list
property of the Virtualization Host object to indicate the availability of this
new capability to virtual servers hosted on a Virtualization Host instance.
v Added the shutdown-timeout-source and shutdown-timeout properties to
the data model of the Virtual Server object to allow a customized default
shutdown timeout to be configured for a particular virtual server.
v Added the shutdown-timeout field as an optional request body field for
the Deactivate Virtual Server operation to allow an individual
deactivation action to be performed using a shutdown timeout that is
different than the timeout configured as a default for the virtual server or
its hosting virtualization host.
Chapter 1. Introduction 13
Level 04a
Table 6. Summary of updates for API version 1.6 (HMC/SE Version 2.13.0)
Description HMC MCL SE MCL
The following extensions are provided by the HMC Web Services API for N98841 CPC: N98775
HMCs at version 2.13.0 and apply to all SE versions supported by the Web
Services API: zBX: N98822
v Increased API version number from 1.5 to 1.6.
v Added API support for managing HMC user and role definitions,
comprising the following API extensions:
– Added the User object representing a defined HMC user, and associated
List, Create, Delete, Get Properties, Update Properties, Add User Role,
and Remove User Role operations for User objects.
– Added the User Role object representing a security role for HMC users,
and associated List, Create, Delete, Get Properties, Update Properties,
Add Permission and Remove Permission operations for User Role
objects.
– Added the Task object representing the permission to invoke an HMC
UI task or request an associated API operation and associated List and
Get Properties operations for Task objects.
– Added the User Pattern object representing a pattern string used to
match user IDs during logon and associated List, Create, Delete, Get
Properties and Update Properties operations for User Pattern objects.
– Added the Reorder User Patterns operation for Console objects.
– Added the Password Rule object representing a password format and
expiration policy specification and associated List, Create, Delete, Get
Properties and Update Properties operations for Password Rule objects.
– Added the LDAP Server Definition object representing the configuration
of an LDAP server used for HMC authentication and associated List,
Create, Delete, Get Properties and Update Properties operations for
LDAP Server Definition objects.
– Added the replication-override-possible properties for Group objects.
– Added the enumeration values "user" and "user-role" as possible object
class values for the Inventory Service.
v Added API support for determining the characteristics of the virtual server
network adapter used for GPMP purposes, comprising the following API
extensions:
– Added the gpmp-network-adapter property to the data model for
Virtual Server objects.
– Added the adapter-type property to the network-adapter-power and
network-adapter-x-hyp nested object for Virtual Server objects.
v Added the gpmp-available-version property to the data model for
Virtualization Host objects.
v Added the management-enablement-level property to the data model for
CPC objects.
The following extensions are provided by the HMC Web Services API for
HMCs at version 2.13.0 but primarily apply only to managed system with SE
version 2.13.0 or later:
Table 6. Summary of updates for API version 1.6 (HMC/SE Version 2.13.0) (continued)
Description HMC MCL SE MCL
v Added API support for zBX Model 004 ensemble nodes, comprising the N98841 CPC: N98775
following API extensions:
– Added the type property to the data model for a zBX object to indicate zBX: N98822
whether the zBX is a CPC-attached (zBX Model 002/003) or ensemble
node (zBX Model 004) zBX. As related extensions, also added the type
property to the response for the List zBXs of Ensemble operation and
also added it as an optional filtering query parameter for that operation.
Note that when a zBX object represents a zBX node, the value of its
parent property contains the URI of the Ensemble of which it is a
member rather than the URI of the CPC to which it is attached.
– Added an optional new input format for the Add Node to Ensemble
operation to allow a zBX Model 004 to be specified as the node to be
added to the ensemble.
– Added the enumeration value "zbx" as a possible value for the type
property of a Node element of an Ensemble object.
– Added the max-nodes, max-cpc-nodes and max-zbx-nodes properties to
the data model for an Ensemble object.
– Added many additional properties to the data model for a zBX object
when that object represents a zBX node.
– Added the Get EC/MCL Description, Activate, Deactivate, Set Power
Save, Set Power Capping, List Virtualization Hosts and List Virtual
Servers operations for zBX node objects.
– Added the Activate and Deactivate operations for BladeCenter objects
contained within a zBX node.
– Added the List Virtualization Hosts and List Virtual Servers
operations for Ensemble nodes in general.
– Added the enumeration value "node" as a possible value of the
availability status nested object of a Virtual Server object.
– Added the zBX (Node) Overview metric group as a metric group that
can be requested using the Metric Service.
v Added API support for manipulation of hardware messages, comprising
the following API extensions:
– Added the hardware messages container property and hardware
message nested objects to the data model for zBX node and CPC objects
and to the data model for the HMC Console object.
– Added the List Hardware Messages, Get Hardware Message Properties
and Delete Hardware Message operations for zBX node and CPC
objects and the HMC Console object.
v Added API support for the retrieval of audit and security log information,
comprising the following API extensions:
– Added a notification topic and Log Entry notification messages to
provide for asynchronous push-type delivery of new log entries for the
HMC Console object to interested API clients.
– Added the Get Notification Topics operation for Session objects to
allow API clients a more general way of retrieving the names of
notification topics for an API session.
– Added the Get Audit Log and Get Security Log operations for zBX
node and CPC objects and the HMC Console object.
v Added the smt-usage, thread-0-usage and thread-1-usage metrics in the
zCPC Processors metric group.
v Added the enumeration value "virtio-scsi" as a possible value for the
emulation mode property of a virtual disk element of a Virtual Server
object.
Chapter 1. Introduction 15
Level 04a
Table 7. Summary of updates for API version 1.7 (HMC/SE Version 2.13.1)
Description HMC MCL SE MCL
The following extensions are provided by the HMC Web Service API for P08462.053 P00339.068
HMCs at version 2.13.1 and apply to all SE versions supported by the Web
Services API:
v Increased API version number from 1.6 to 1.7.
v Added the following common request validation reason codes:
– HTTP status 400 with reason code 18
– HTTP status 404 with reason codes 5 and 6
– HTTP status 409 with reason codes 4, 5, 6, and 9
v Added the following data model property qualifiers: (e) for effective
properties, and (p) for pseudo properties.
v Added the effective-properties-apply base managed object property for
objects which contain an effective property (a property marked with the
(e) qualifier in the object's data model).
v Added API support for sending commands to and receiving messages
from the operating system (OS) executing in Logical Partitions and
Partitions, comprising the following API extensions:
– Added the operating system notification topic, on which OS messages
are received.
– Added the operating system message notification message which
contains the text from the OS.
– Added information about any operating system notification topics
associated with the API session to the Get Notification Topics response.
– Added the Open OS Message Channel and Send OS Command
operations for Logical Partition objects.
– Added the Open OS Message Channel and Send OS Command
operations for Partition objects.
v Added minimal API support for Managed Virtual Machine objects, such
that they can be discovered, added to User Roles and removed from User
Roles, comprising the following API extensions:
– Added the List Managed Virtual Machines of a Logical Partition
operation for Logical Partition objects. The URIs returned can be used
to add/remove Managed Virtual Machine objects to/from User Roles.
– No further API support is provided. That is, there are no List, Create,
Delete, Get Properties or Update Properties operations for Managed
Virtual Machine objects, and they are not included in the Inventory
Service.
Table 7. Summary of updates for API version 1.7 (HMC/SE Version 2.13.1) (continued)
Description HMC MCL SE MCL
v Added minimal support for unmanaged CPC objects, such that they can
be listed, added to User Roles and removed from User Roles. Unmanaged
CPCs are those which have been discovered by the HMC but are not
configured to be managed by the HMC. This support comprises the
following API extensions:
– Added the List Unmanaged CPCs operation for the Console object. The
URIs returned can be used to add/remove unmanaged CPC objects
to/from User Roles.
– No further API support is provided. That is, there are no Create, Delete,
Get Properties, or Update Properties operations for unmanaged CPC
objects, and they are not included in the Inventory Service.
– Added HTTP status 409 with reason code 329 on operations that target
a CPC object but do not support an undefined CPC object as their
target.
v Added minimal support for unmanaged zBX node objects, such that they
can be listed, added to User Roles, and removed from User Roles.
Unmanaged zBX nodes are those which have been discovered by the
HMC but are not configured to be managed by the HMC. This support
comprises the following API extensions:
– Added the List Unmanaged zBX operation for the Console object. The
URIs returned can be used to add/remove unmanaged zBX node
objects to/from User Roles.
– No further API support is provided. That is, there are no Create, Delete,
Get Properties, or Update Properties operations for unmanaged zBX
node objects, and they are not included in the Inventory Service.
– Added HTTP status 409 with reason code 244 on operations that target
a zBX node object but do not support an undefined zBX node object as
their target.
v Added API support for absolute capping of Logical Partition processor
usage, comprising the following API extensions:
– Added the effective-capacity, absolute-icf-capping,
effective-absolute-icf-capping, absolute-ifl-capping,
effective-absolute-ifl-capping, absolute-general-purpose-capping,
effective-absolute-general-purpose-capping, absolute-ziip-capping,
effective-absolute-ziip-capping and effective-properties-apply
properties to the data model for Group Profile objects.
– Added HTTP status 409 with reason code 9 on Update Group Profile
Properties.
Chapter 1. Introduction 17
Level 04a
Table 7. Summary of updates for API version 1.7 (HMC/SE Version 2.13.1) (continued)
Description HMC MCL SE MCL
Table 7. Summary of updates for API version 1.7 (HMC/SE Version 2.13.1) (continued)
Description HMC MCL SE MCL
The following extensions are provided by the HMC Web Services API for
HMCs at version 2.13.1 but primarily apply only to managed systems with
SE version 2.13.1 or later:
v Added API support for z Appliance Container Infrastructure (zACI)
Logical Partitions, comprising the following API extensions, but only for
Logical Partitions of the new "zaci" type:
– Added "zaci" as a possible enumeration value for the activation-mode
property of Logical Partition objects.
– Added the zaci-host-name, zaci-master-userid, zaci-master-pw,
zaci-network-info, zaci-gateway-info and zaci-dns-info properties to
the data models for Logical Partition and Image Activation Profile
objects.
– Added "zaci" as a possible enumeration value for the operating-mode
property of Image Activation Profile objects.
v Added API support for energy optimization advice, comprising the
following API extensions:
– Added the Get Energy Optimization Advice Summary and Get
Energy Optimization Advice Details operations for CPC objects.
– Added the last-energy-advice-time property to the data model for CPC
objects.
v Added API support for absolute capping of logical partition processor
usage through the new absolute-icf-capping, effective-absolute-icf-
capping, absolute-ifl-capping, effective-absolute-ifl-capping,
absolute-general-purpose-capping, effective-absolute-general-purpose-
capping, absolute-ziip-capping, and effective-absolute-ziip-capping
properties of the data model for Group Profile objects.
Chapter 1. Introduction 19
Level 04a
Table 7. Summary of updates for API version 1.7 (HMC/SE Version 2.13.1) (continued)
Description HMC MCL SE MCL
Table 7. Summary of updates for API version 1.7 (HMC/SE Version 2.13.1) (continued)
Description HMC MCL SE MCL
v (cont'd)
– Added the DPM system overview, Partitions, Adapters metric groups.
– Added the dpm-enabled, is-cpacf-enabled and maximum-hipersockets
properties to the data model for CPC objects.
– Added the ability to update the description property of CPC objects
when the CPC is enabled for DPM.
– Added "dpm" as a possible enumeration value for the iml-mode
property of CPC objects. Note that some preexisting CPC properties are
not applicable when the CPC is enabled for DPM; such properties are
not returned on Get CPC Properties nor are they valid for the Update
CPC Properties operation.
– Added HTTP status 409 reason code 4 for the following operations for
CPC objects, because these operations are not valid when the CPC is
enabled for DPM: Activate CPC, Deactivate CPC, Import Profiles, and
Export Profiles.
– The following related objects are not provided for a CPC enabled for
DPM: Logical Partition, Reset Activation Profile, Image Activation
Profile, Load Activation Profile and Group Profile.
– Added the Start CPC, Stop CPC and Export WWPN List operations for
CPC objects.
– Added API support for a partition auto-start list of a CPC, comprising
the following API extensions:
- Added the auto-start-list property to the data model for CPC objects.
- Added the Set Auto-Start List operation for CPC objects.
– Added the enumeration values "partition" and "adapter" as possible
object class values for the Inventory Service.
– Added the enumeration value "dpm-resources" as a possible object
category value for the Inventory Service.
v Added the zaci-boot-selection property to the data model for Image
Activation Profile objects.
Table 8. Summary of updates for API version 2.1 (HMC/SE Version 2.13.1)
Description HMC MCL SE MCL
Increased API version number from 1.7 to 2.1. Note that the change in the P08462.250 P00339.291
major portion of the version number indicates that this version is not
compatible with the previous version. The only incompatible changes in this
version are due to renaming z Appliance Container Infrastructure to IBM
Secure Service Container. Specifically:
v The renaming of the zaci-host-name, zaci-master-userid, zaci-master-pw,
zaci-network-info, and zaci-gateway-info Logical Partition object
properties to ssc-host-name, ssc-master-userid, ssc-master-pw,
ssc-network-info, and ssc-gateway-info, respectively.
v The change of the "zaci" enum value for the Logical Partition
object's activation-mode property to "ssc".
v The renaming of the zaci-host-name, zaci-master-userid, zaci-master-pw,
zaci-network-info, zaci-gateway-info and zaci-boot-selection Image
Activation Profile object properties to ssc-host-name, ssc-master-userid,
ssc-master-pw, ssc-network-info, ssc-gateway-info, and ssc-boot-selection,
respectively.
v The change of the "zaci" enum value for the Image Activation Profile
object's operating-mode property to "ssc".
Chapter 1. Introduction 21
Level 04a
Table 8. Summary of updates for API version 2.1 (HMC/SE Version 2.13.1) (continued)
Description HMC MCL SE MCL
Removed the restriction that the is-cpacf-enabled property of the CPC object P08462.232
is only present when dpm-enabled is true. The is-cpacf-enabled property is
now always present. Also corrected the qualifier column for is-cpacf-enabled
to indicate that it does not provide property change notifications.
Table 9. Summary of updates for API version 2.2 (HMC/SE Version 2.13.1)
Description HMC MCL SE MCL
The following extensions are provided by the HMC Web Services API for P08462.261 P00339.304
HMCs at version 2.13.1 and apply to all SE versions supported by the Web
Services API:
v Increased API version number from 2.1 to 2.2.
v Added the String/Hostname data type.
v Provided a more granular value for the sysplex-name property of the
Logical Partition to differentiate when the z/OS logical partition is not in a
sysplex.
The following extensions are provided by the HMC Web Services API for
HMCs at version 2.13.1 but primarily apply only to managed systems with
SE version 2.13.1 or later:
v Added API support for Secure Service Container (SSC) partitions of
DPM-enabled CPCs, comprising the following API extensions:
– Added the type, ssc-host-name, ssc-boot-selection, ssc-ipv4-gateway,
ssc-dns-servers, ssc-master-userid and ssc-master-pw properties to the
data model for Partition objects.
– Added the type property to the response for the List Partitions of a
CPC operation and also added it as an optional filtering query
parameter for that operation.
– Added the ssc-management-nic, ssc-ip-address-type, ssc-ip-address,
ssc-mask-prefix, vlan-id and mac-address properties to the data model
for NIC objects.
– Added HTTP status 400 with reason codes 15, 18 and 20 to the Create
Partition operation.
– Added HTTP status 400 with reason codes 15 and 18 to the Update
Partition Properties operation.
– Added HTTP status 409 with reason code 120 to the job status for the
Start Partition operation.
– Added HTTP status 400 with reason code 15 and HTTP status 409 with
reason code 8 to the Create NIC operation.
– Added HTTP status 400 with reason code 15 to the Update NIC
Properties operation.
Table 10. Summary of updates for API version 2.20 (HMC/SE Version 2.14.0)
Description HMC MCL SE MCL
The following extensions are provided by the HMC Web Services API for P42675.054 P42601.066
HMCs at version 2.14.0 and apply to all SE versions supported by the Web
Services API:
v Increased API version number from 2.2 to 2.20.
v Added the following common request validation reason codes:
– HTTP status 400 with reason codes 19 and 20
– HTTP status 409 with reason code 11
v Added API support for the HMC mobile app, comprising the following
API extensions:
– Added the mobile-app-preferences property to the Console object data
model.
– Added the Get Mobile App Preferences and Set Mobile App
Preferences operations for the Console object to manage the
console-wide mobile app settings.
– Added the Get CPC Notification Preferences for Device and Update
CPC Notification Preferences for Device operations for the Console
object to manage the mobile app notification preferences for a CPC to a
mobile device.
– Added the client-tag field to the request body for the Logon operation.
v Added API support to manage and interact with the console's multi-factor
authentication support, comprising the following API extensions:
– Added the multi-factor-authentication-required and
force-shared-secret-key-change properties to the User object data
model.
– Added the multi-factor-authentication-required field to the request
body for the Create User operation.
– Added the multi-factor-authentication-code field to the request body
for the Logon operation.
– Added the shared-secret-key and session-credential fields to the
response for the Logon operation.
– New HTTP status 201 on the Logon operation.
– New HTTP status 400 with reason codes 46, 47, 48 and 49 on the Logon
operation.
– Added the Establish Shared Secret Key operation.
– Added the hmc-time field to the response for the Query API Version
operation.
– Expanded the authentication options when connecting to the API
message broker; the session ID and session-specific credential are
required for multi-factor authentication users.
v Relaxed the definition of a pseudo property to no longer require a pseudo
property to also be a container property.
v Added the (c) data model qualifier to the connected-vnic-uris pseudo
property of Virtual Switch objects to denote that it is a container property.
Since psuedo properties were also container properties in previous
versions of the API, this is a documentation-only change and not a
behavioral change.
Chapter 1. Introduction 23
Level 04a
Table 10. Summary of updates for API version 2.20 (HMC/SE Version 2.14.0) (continued)
Description HMC MCL SE MCL
v Added API enhancements that allow quicker responses when fetching the P42675.054 P42601.066
properties of certain object types, comprising the following API extensions:
– Added a properties query parameter to the following operations to
allow an API client to avoid the overhead involved with fetching object
properties in which it has no interest: Get CPC Properties, Get Logical
Partition Properties.
– Added a cached-acceptable query parameter to the following
operations to allow an API client to indicate that cached (but potentially
out-of-date) property values are acceptable: Get CPC Properties, Get
Logical Partition Properties, Get Reset Activation Profile Properties,
Get Image Activation Profile Properties, and Get Load Activation
Profile Properties.
v Added the Delete Partition Asynchronously and Update Partition
Properties Asynchronously operations for Partition objects.
v Added the fid property to the data model for Virtual Function elements of
Partition objects.
v Made the mac-address property of NIC elements of Partition objects
writable in certain cases.
v Added the vlan-type property to the data model for NIC elements of
Partition objects.
v Relaxed the authorization requirements for access to Load Activation
Profile objects via the List Load Activation Profiles and Get Load
Activation Profile Properties operations to allow access without requiring
CPC object-access permission under certain circumstances. This is
consistent with existing HMC UI behavior.
v Relaxed the authorization requirements for access to Image Activation
Profile objects via the List Image Activation Profiles and Get Image
Activation Profile Properties operations to allow access without requiring
CPC object-access permission under certain circumstances. This is
consistent with existing HMC UI behavior.
v Added synchronous interfaces for retrieving operating system messages,
comprising the following API extensions:
– Added the List OS Messages of a Partition operation for Partition
objects.
– Added the List OS Messages of a Logical Partition operation for
Logical Partition objects.
v Added the sequence-number field to the os-message-info object in
operating system message notifications.
v Added support for more efficient access to certain Partition and Logical
Partition information, comprising the following API extensions:
– Added the List Permitted Partitions operation.
– Added the List Permitted Logical Partitions operation.
v Added the has-unacceptable-status, dpm-enabled and se-version
properties to the response for the List CPC Objects operation.
v Added the classification-text field to the response for the Query API
Version operation.
v Added the last-used-iocds property to the CPC object data model.
v Added the last-used-load-address and last-used-load-parameter properties
to the Logical Partition object data model.
v Relaxed the requirements on the boot-iso-image-name property of
Partition objects and documented the requirements in the Partition object
data model. This affects the Mount ISO Image operation for Partition
objects.
v Corrected the documentation for the Create Partition operation; several
fields were missing from the request body definition.
Table 10. Summary of updates for API version 2.20 (HMC/SE Version 2.14.0) (continued)
Description HMC MCL SE MCL
The following extensions are provided by the HMC Web Services API for P42675.054 P42601.066
HMCs at version 2.14.0 but primarily apply only to managed systems with
SE version 2.14.0 or later:
v Added support for IBM Virtual Flash Memory, comprising the following
API extensions:
– Added the storage-vfm-increment-size and storage-vfm-total properties
to the CPC object data model.
– Added the initial-vfm-storage, maximum-vfm-storage and
current-vfm-storage properties to the Logical Partition object data
model.
– Added the initial-vfm-storage and maximum-vfm-storage properties to
the Image Activation Profile object data model.
v Added the port property to the ssc-network nested object definition used
by the Logical Partition and Image Activation Profile data models.
v Extended the set of characters permitted in a load parameter, comprising
the following API extensions:
– Allow the following three additional characters (@, $, #) in the
load-parameter field of the request body for the Load Logical Partition,
SCSI Load, and SCSI Dump operations.
– Allow the following three additional characters (@, $, #) in the
ipl-parameter property in the Image Activation Profile and Load
Activation Profile data models.
v Removed support for controlling whether a Logical Partition entering a
wait state causes termination of a time slice:
– The does-wait-state-end-time-slice property of the CPC object is no
longer directly writable through the API. The (w) qualifier has been
removed from that property in the data model for CPC objects and it is
now a read-only property whose value is always false.
– The end-timeslice-on-wait property of the Reset Activation Profile
object is no longer directly writable through the API. The (w) qualifier
has been removed from that property in the data model for Reset
Activation Profile objects and it is now a read-only property whose
value is always false.
– New HTTP status 400 with reason code 19 on the Update CPC
Properties and Update Reset Activation Profile Properties operations.
v Replaced the "esa390" and "esa390-tpf" logical partition activation modes
with the new "general" activation mode, comprising the following API
changes:
– Added the enumeration value "general" as a possible value for the
activation-mode property of a Logical Partition object.
– Added the enumeration value "general" as a possible value for the
operating-mode property of an Image Activation Profile object.
v Due to the removal of support for dynamic changes to the SSC
configuration, the SSC-related properties of the Logical Partition object are
no longer directly writable through the API. The (w) qualifier has been
removed from those properties in the data model for Logical Partition
objects and they are now read-only properties. The affected properties are
ssc-host-name, ssc-master-userid, ssc-master-pw, ssc-network-info,
ssc-gateway-info and ssc-dns-info.
v Added the ssc-gateway-ipv6-info property to the Image Activation Profile
object data model.
v Added the last-energy-advice-time property to the CPC object data model
(applicable to SE version 2.13.1 or later).
Chapter 1. Introduction 25
Level 04a
Table 11. Summary of updates for API version 2.21 (HMC/SE Version 2.14.0)
Description HMC MCL SE MCL
The following extensions are provided by the HMC Web Services API for P42675.062
HMCs at version 2.14.0 and apply to all SE versions supported by the Web
Services API:
v Increased API version number from 2.20 to 2.21.
v Added the following as possible enumeration values for the
detected-card-type property of the Adapter objects: "osa-express-6s-1gb",
"osa-express-6s-10gb", "osa-express-6s-1000base-t", "crypto-express-6s",
"ficon-express-16s", and "ficon-express-16s-plus".
v Added more granular controls over which OS message notifications are
presented to a mobile device, comprising the following API extensions:
– Added the new-os-message-filtered field to the response for the Get
CPC Notification Preferences for Device operation.
– Added the new-os-message-filtered field to the request body for the
Update CPC Notification Preferences for Device operation.
Table 12. Summary of updates for API version 2.22 (HMC/SE Version 2.14.0)
Description HMC MCL SE MCL
The following extensions are provided by the HMC Web Services API for P42675.116
HMCs at version 2.14.0 and apply to all SE versions supported by the Web
Services API:
v Increased API version number from 2.21 to 2.22.
v Added API support for accessing the ASCII console of partitions of
DPM-enabled CPCs via WebSockets, comprising the following API
extension:
– Added the Get ASCII Console WebSocket URI operation for Partition
objects.
| Table 13. Summary of updates for API version 2.23 (HMC/SE Version 2.14.0)
| Description HMC MCL SE MCL
| The following extensions are provided by the HMC Web Services API for P42675.232 P42601.286
| HMCs at version 2.14.0 and apply to all SE versions supported by the Web
| Services API:
| v Increased API version number from 2.22 to 2.23.
| v Added the following common request validation reason codes:
| – HTTP status 409 with reason codes 12 and 13
| v Added support for object-specific firmware features, comprising the
| following API extensions:
| – Added the available-features-list property to the CPC object data
| model.
| – Added the available-features-list property to the Partition object data
| model.
| v Added enumeration values for classes of managed objects within User
| Role objects, due to new managed object types added to this HMC
| version.
| v Added enumeration values for the name property of User Role objects,
| due to new system-defined user roles added to this HMC version.
| v Added enumeration values for the name property of Task objects, due to
| new tasks added to this HMC version.
| v Removed enumeration values for the name property of Task objects for
| tasks that are not provided in this HMC version.
| v Changed the descriptive name of some classes of managed objects. Those
| descriptive names are not part of the programming API. The enumeration
| values for the managed object classes are part of the programming API
| and are not changed.
| v Changed the descriptive name of some tasks. Those descriptive names are
| not part of the programming API. The enumeration values for the name
| property of the corresponding Task objects are part of the programming
| API and are not changed.
| The following extensions are provided by the HMC Web Services API for
| HMCs at version 2.14.0 but primarily apply only to managed systems with
| SE version 2.14.0 or later:
| v Added the Import DPM Configuration operation for CPC objects to aid in
| migrating a DPM configuration from a z13 system to a z14 system.
Chapter 1. Introduction 27
Level 04a
| Table 13. Summary of updates for API version 2.23 (HMC/SE Version 2.14.0) (continued)
| Description HMC MCL SE MCL
|| v Added support for managing a FICON configuration for DPM-enabled
| CPCs and their Partitions, comprising the following API extensions (The
| majority of these extensions are only available if the dpm-storage-
| management feature is enabled on the CPC or Partition of interest):
| – Added the Storage Site object, representing a single storage site in a
| FICON configuration, and corresponding operations on objects of this
| class, including List, Create, Delete, Get Properties, Update Properties
| for Storage Site objects.
| – Added the Storage Fabric object, representing a single storage fabric in
| a FICON configuration, and corresponding operations on objects of this
| class, including List, Create, Delete, Get Properties, Update Properties
| for Storage Fabric objects.
| – Added the Storage Switch object, representing a single storage switch in
| a FICON configuration, and corresponding operations on objects of this
| class, including List, Define, Undefine, Get Properties, Update
| Properties, Move Storage Switch to Storage Site and Move Storage
| Switch to Storage Fabric for Storage Switch objects.
| – Added the Storage Subsystem object, representing a single storage
| subsystem in a FICON configuration, and corresponding operations on
| objects of this class, including List, Define, Undefine, Get Properties,
| Update Properties, Move Storage Subsystem to Storage Site, Add
| Connection Endpoint and Remove Connection Endpoint for Storage
| Subsystem objects.
| – Added the Storage Control Unit object, representing a single storage
| control unit in a FICON configuration, and corresponding operations on
| objects of this class, including List, Define, Undefine, Get Properties,
| Update Properties, Add Volume Range, Remove Volume Range for
| Storage Control Unit objects.
| – Added the Storage Path element of a Storage Control Unit and
| corresponding operations on elements of this class, including Create,
| Delete, Get Properties and Update Properties for Storage Path elements
| of Storage Control Unit objects.
| – Added the Storage Group object, representing a single storage group in
| a FICON configuration, and corresponding operations on objects of this
| class, including List, Create, Delete, Get Properties, Modify Storage
| Group Properties, Add Candidate Adapter Ports to an FCP Storage
| Group, Remove Candidate Adapter Ports from an FCP Storage Group,
| Get Partitions for a Storage Group and Validate LUN Path for Storage
| Group objects.
| – Added the Storage Volume element of a Storage Group object and
| corresponding operations on elements of this class, including List, Get
| Properties, Fulfill FICON Storage Volume, and Fulfill FCP Storage
| Volume for Storage Volume elements of Storage Group objects.
| – Added the Virtual Storage Resource element of a Storage Group object
| and corresponding operations on elements of this class, including List,
| Get Properties, and Update Properties for Virtual Storage Resource
| elements of Storage Group objects.
| – Added the Start Dump Program, Attach Storage Group to Partition,
| and Detach Storage Group from Partition operations for Partition
| objects.
| – Added the enumeration value "storage-volume" as a possible value for
| the boot-device property in the Partition object data model.
| – Added the boot-storage-volume and boot-load-parameters properties
| to the Partition object data model.
| Table 13. Summary of updates for API version 2.23 (HMC/SE Version 2.14.0) (continued)
| Description HMC MCL SE MCL
|| v (cont'd)
| – New HTTP status 409 with reason codes 119, 120, 121 and 122 on the
| Update Partition Properties operation.
| – New HTTP status 409 with reason code 122 on the Start Partition
| operation.
| – New HTTP status 409 with reason code 12 on the following operations
| when the dpm-storage-management feature is enabled on the targeted
| CPC: Export WWPN List, Dump Partition and Create HBA.
| – Added the enumeration values "fc" and "not-configured" as possible
| values for the type field in the Adapter object data model.
| – Added the connection-endpoint-uri and connection-endpoint-class
| properties to the data model for Storage Port elements of Adapter
| objects.
| – Added the Change Adapter Type operation for Partition objects.
| – Added the enumeration values "storage-site", "storage-fabric",
| "storage-switch", "storage-subsystem", "storage-control-unit", and
| "storage-group" as possible object class values for the Inventory Service.
| v Added support for Container Based Processors, comprising the following
| API extensions:
| – Added new cpb-shared-processor-usage, cpb-dedicated-processor-
| usage, and cpb-all-processor-usage metrics to the CPC overview metric
| group.
| – Added new cpb-processor-usage metric to the Logical partitions metric
| group.
| – Added "cbp" as a possible value for the processor-type metric in the
| zCPC processors metric group.
| – Added the processor-count-cbp and processor-count-pending-cbp
| properties to the CPC object data model.
| – Added the initial-cbp-processing-weight, initial-cbp-processing-
| weight-capped, minimum-cbp-processing-weight, maximum-cbp-
| processing-weight, current-cbp-processing-weight,
| current-cbp-processing-weight-capped, andabsolute-cbp-capping
| properties to the Logical Partition object data model.
| – Added the initial-cbp-processing-weight, initial-cbp-processing-
| weight-capped, minimum-cbp-processing-weight, maximum-cbp-
| processing-weight,absolute-cbp-capping, number-dedicated-cbp-
| processors, number-reserved-dedicated-cbp-processors,
| number-shared-cbp-processors, and number-reserved-shared-cbp-
| processors properties to the Image Activation Profile object data model.
| – Added the absolute-cbp-capping and effective-absolute-cbp-capping
| properties to the Group Profile object data model.
| – Added the enumeration value "cbp" as a possible value for the type
| field in the Capacity Record object data model.
| – Added the enumeration value "cbp" as a possible value for the
| processor-type field in the request body for the Add Temporary
| Capacity and Remove Temporary Capacity operations.
|
Chapter 1. Introduction 29
Level 04a
| Table 14. Summary of updates for API version 2.24 (HMC/SE Version 2.14.0)
| Description HMC MCL SE MCL
| The following extensions are provided by the HMC Web Services API for P42675.233
| HMCs at version 2.14.0 and apply to all SE versions supported by the Web
| Services API:
| v Increased API version number from 2.23 to 2.24.
| v Added the vendor field to the response for the Query API Version
| operation.
| v Added the maximum-partitions property to the CPC object data model.
|
Data types
The following data types are used in the definition of the management data model, input and output
parameters and notification message formats in the Web Services API.
Table 15. Primitive data types
Data type Description
Boolean A logical truth value: either the value true or the value false.
Byte An integer value in the range -2^7 to (2^7)-1 (the range of a signed 8-bit integer)
Float An IEEE 754 floating point number in the range +/-4.9E-324 to +/-3.4028235E+38. Note
that, although IEEE 754 provides for representations of positive or negative Infinity and
NaN, such values are not used within the API.
Long An integer value in the range -2^63 to (2^63)-1 (the range of a signed 64-bit integer)
Integer An integer value in the range -2^31 to (2^31)-1 (the range of a signed 32-bit integer)
Short An integer value in the range -2^15 to (2^15)-1 (the range of a signed 16-bit integer)
String A sequence of Unicode characters. When the number of characters in the string is bounded,
the length or length range is provided in parenthesis, for example String (16) for a 16
character string, or String (0-256) for a string that may range in length from 0 (empty) to 256
characters.
String Enum A String enumeration, i.e. a String for which the possible values are constrained to be one of
a specified set of choices.
String/URI A String that contains a URI path used to designate object instances or operations within the
API.
String/IPV4 Address A String that contains an Internet Protocol Version 4 address presented in dotted-decimal
notation.
Example: “127.0.0.1”
String/IPV6 Address A string that contains an Internet Protocol Version 6 address presented in
colon-separated-hexadecimal notation. Leading and consecutive groups of zeros may be
omitted in the representation as is conventional for IPV6 addresses presented in this form.
Example: “2001:db8:85a3::8a2e:370:7334”
String/Hostname A string that contains an internet hostname that adheres to the following standard
guidelines similar to those in the Internet Engineering Task Force (IETF) RFC 1123:
v length is 1-255 characters
v valid characters are a-z, A-Z, 0-9, period(.), and hyphen(-)
v must not begin or end with a period
v must not contain consecutive periods
v must not be an IPv4 address in dotted-decimal notation (see the String/IPv4 Address
datatype)
Timestamp A non-negative Long integer quantity where the value represents a date and time expressed
as the number of milliseconds since midnight on January 1, 1970 UTC, or the special value
-1 to indicate special treatment of the timestamp field.
A JSON object is an unordered collection of zero or more name/value pairs (sometimes referred to in this
document as fields or properties), where a name is a string and a value is a primitive type (string,
number, boolean, or null), an array, or a nested object. Each name/value pair is represented in the form
"name": value and is separated from the next name/value pair by a comma. The collection of
name/value pairs comprising the object is enclosed by left and right braces e.g. { ... }).
An array is an ordered sequence of zero or more values separated from each other by commas and
enclosed in left and right square brackets e.g. [10,20,30]). The values in the array can be primitive or
structured types, i.e. arrays of objects or arrays of arrays are permitted.
The precise BNF syntax of JSON notation is not provided in this document, but can be found in the IETF
information document RFC 4726, The application/json Media Type for JavaScript Object Notation (JSON), July
2006. This RFC can be found in text format on the World Wide Web at:
http://www.ietf.org/rfc/rfc4627.txt
On output, values with a magnitude greater than or equal to 10^-3 and less than 10^7 are
representation in floating-point format with a fraction part but not exponent part (e.g. 1.7,
-32.467). Values with magnitudes outside that range are represented in scientific notation
with both fraction and exponent parts (e.g. -4.23E127).
String, String Enum Represented as a JSON string enclosed in quotes.
Timestamp An unsigned JSON number with integer component, but no fraction or exponent part.
All strings in the JSON representation (object member names, and string values) are encoded in UTF-8.
Most aspects of HTTP protocol usage required to invoke API operations or receive responses apply
universally across all of the operations of the API. Rather than repeat these details in the description of
each and every operation, this common information is instead provided in this chapter. The material in
this chapter should be considered to apply to each and every operation of the API unless the
operation-specific description indicates otherwise. Thus, the information in his chapter should be
consulted in conjunction with the operation-specific descriptions elsewhere in this document when
determining how to invoke a specific API operation.
The API requires that all clients interact using the HTTP/1.1 protocol. The API does not support clients
that use HTTP/1.0.
Note: While the API does not specifically assume or exclude any particular client user agent, its use and
interpretation of HTTP elements has been designed presuming that the client application interacting with
the API is a programmatic web application client or HTTP-capable scripting client rather than a standard
browser-based application.
The listening port for the API HTTP server is a fixed port number and is not subject to customer
reconfiguration. Thus, client applications can treat this as a well-known port number rather than
requiring customer input when configuring the networking parameters the client will use to connect to
the HMC.
This section describes the use of header fields by the Web Services API.
For requests made using the HTTP PUT or POST methods, the following additional request headers are
required if a request body is being provided. If an operation being requested via POST method does not
require a request body, these headers can be omitted.
In the current implementation, the Web Services API supports only a single
response media type for each operation. For the majority of operations, that
media type is JSON (application/json), but selected operations support a
different media type (indicated in the descriptions of those special operations).
If this header is omitted, the Web Services API responds using the (single)
media type supported for the operation. If the header is included, it must allow
for the single media type that the operation supports, otherwise the request
will fail with HTTP status code 406 (Not Acceptable).
HTTP header
name Description
Date The date and time, from the perspective of the HMC's clock, at which the response message was
generated. As required by the HTTP protocol specification, this date is an HTTP full date sent in
the RFC 1123-defined fixed length format.
The following HTTP response headers are provided in the response to all requests except those that result
in a 204 (No Content) HTTP status code.
HTTP header
name Description
Content-Length When used in a response, specifies the length of the response body. If omitted, the response does
not contain a body.
Content-Type When used in a response, specifies the MIME media type of the response body. This response
header is provided any time the Content-Type header is provided and specifies a nonzero length.
HTTP header
name Description
Location The URI of the resources that was created by the operation.
This header is provided for operations that complete successfully with an HTTP status code of
201 (Created).
X-API-Session An opaque string that provides a cryptographically strong identifier of the API session that was
created for the client.
Media types
The following media types are applicable to the use of the Web Services API, and thus may appear in the
values of Accept or Content-Type header fields.
The header-info object contains the following field(s), one for each header present on the request:
Usage notes:
v The message provided in the message field is primarily intended as a convenience for use by
developers when developing and testing client applications. Because it is not localized, it may not be
appropriate for client applications to simply pass this message on to their clients when reporting errors
to those upstream clients. Instead, client applications can use the value in the reason field as a key in
obtaining a client-provided message that may be more appropriate to use.
v Because the reason code is treated as a sub-code of the HTTP status code, the same reason code value
is often defined for multiple different HTTP status codes and has a different meaning in each case. For
example, reason code 1 when considered for a 400 (Bad Request) status code has a different meaning
than when considered for a 403 (Forbidden) status code. For this reason, client applications that make
decisions based on the reason codes should always include checking the HTTP status code as part of
the relevant logic (e.g.test for status code == 400 AND reason code == 1, not just reason code == 1
alone).
The following table provides the HTTP status codes and reason codes for common request validation.
These status and reason codes may be reported on any of the operations of the API.
Reason
HTTP status code code Description
400 (Bad Request) 1 The request included an unrecognized or unsupported query parameter.
2 A required request header is missing or invalid.
3 A required request body is missing.
4 A request body was specified when not expected.
5 A required request body field is missing.
6 The request body contains an unrecognized field (i.e. one that is not listed as
either required or optional in the specification for the request body format for the
operation).
7 The data type of a field in the request body is not as expected, or its value is not
in the range permitted.
8 The value of a field does not provide a unique value for the corresponding data
model property as required.
9 The request body is not a well-formed JSON document.
10 An unrecognized X-* header field was specified.
11 The length of the supplied request body does not match the value specified in the
Content-Length header.
13 The maximum number of logged in user sessions for this user ID has been
reached; no more are allowed.
14 Query parameters on the request are malformed or specify a value that is invalid
for this operation. Common causes include the inability to successfully decode a
parameter element, the presented parameters are not in the expected key=value
format, the value is not a valid regular expression, a required parameter is
missing, multiple instances of a parameter are present on an operation that does
not permit multiple instances of that parameter, or the value is not a valid enum
for the operation.
15 The request body contains a field whose presence or value is inconsistent with the
presence or value of another field in the request body. A prerequisite condition or
dependency among request body fields is not met.
18 The request body contains a field whose presence or value is inconsistent with the
type of the object. Such a requirement is often described in an object’s data model
as the field having a prerequisite condition on a "type", "family", or similar
property that identifies an object as being of a particular type. Such a property is
typically, but not necessarily, immutable.
19 The request body contains a field whose corresponding data model property is no
longer writable. In certain earlier HMC and/or SE versions the property is
writable, but later versions do not allow changing the property through the Web
Services APIs. This could be due to a change in the underlying
system-management model, or the property may have become obsolete.
20 The request body contains a field or value that is directly or indirectly dependent
on the version of the SE that is targeted by or associated with the request
operation, and that SE is not at a version that supports or provides the field or
value.
Reason
HTTP status code code Description
403 (Forbidden) 1 The user under which the API request was authenticated does not have the
required authority to perform the requested action.
3 The ensemble is not operating at the management enablement level required to
perform this operation.
4 The request requires authentication but no X-API-Session header was specified in
the request.
5 An X-API-Session header was provided but the session id specified in that header
is not valid.
| 301 The operation cannot be performed because it targets a CPC that does not support
| Web Services API operations.
404 (Not Found) 1 The request URI does not designate an existing resource of the expected type, or
designates a resource for which the API user does not have object-access
permission. For URIs that contain object ID and/or element ID components, this
reason code may be used for issues accessing the resource identified by the first
(leftmost) such ID in the URI.
2 A URI in the request body does not designate an existing resource of the expected
type, or designates a resource for which the API user does not have object-access
permission. For URIs that contain object ID and/or element ID components, this
reason code may be used for issues accessing the resource identified by the first
(leftmost) such ID in the URI.
3 The request URI designates a resource or operation that is not available on the
Alternate HMC.
4 The object designated by the request URI does not support the requested
operation.
5 The request URI does not designate an existing resource of the expected type, or
designates a resource for which the API user does not have object-access
permission. More specifically, this reason code indicates issues accessing the
resource identified by the element ID component in the URI. Such an element ID
is typically the second (counting left to right) ID component in the URI.
6 A URI in the request body does not designate an existing resource of the expected
type, or designates a resource for which the API user does not have object-access
permission. More specifically this reason code indicates issues accessing the
resource identified by the element ID component in the URI. Such an element ID
is typically the second (counting left to right) ID component in the URI.
Reason
HTTP status code code Description
409 (Conflict) 1 The operation cannot be performed because the object designated by the request
URI is not in the correct state.
2 The operation cannot be performed because the object designated by the request
URI is currently busy performing some other operation.
3 The operation cannot be performed because the object designated by the request
URI is currently locked to prevent disruptive changes from being made.
4 The operation cannot be performed because the CPC designated by the request
URI is currently enabled for DPM.
5 The operation cannot be performed because the CPC designated by the request
URI is currently not enabled for DPM.
6 The operation cannot be performed because the object hosting the object
designated by the request URI is not in the correct state.
8 The operation cannot be performed because the request would result in the object
being placed into a state that is inconsistent with its data model or other
requirements. The request body contains a field whose presence or value is
inconsistent with the current state of the object or some aspect of the system, and
thus a prerequisite condition or dependency would no longer be met.
9 The operation cannot be completed because it is attempting to update an effective
property when the object is not in a state in which effective properties are
applicable. More specifically, the request body contains one or more fields which
correspond to a property marked with the (e) qualifier in the data model, and the
object's effective-properties-apply property is false.
10 The operation cannot be performed because the affected SE is in the process of
being shut down.
11 The operation cannot be performed because it requires a fully authenticated
session and the API session that issued it is only partially authenticated.
| 12 The operation cannot be performed because a feature that prohibits the operation
| is currently enabled. The error-details field of the response body contains an
| error-feature-info object identifying the feature whose current enablement status is
| invalid for the operation. The error-feature-info object is described in the next
| table.
| 13 The operation cannot be performed because a feature required by the operation is
| currently disabled. The error-details field of the response body contains an
| error-feature-info object identifying the feature whose current enablement status is
| invalid for the operation. The error-feature-info object is described in the next
| table.
These common request processing reason codes are listed in the following table:
Reason
HTTP status code code Description
500 (Server Error) 0 - 39 An internal processing error has occurred and no additional details are documented.
503 (Service 1 The request could not be processed because the HMC is not currently communicating
Unavailable) with an SE needed to perform the requested operation.
2 The request could not be processed because the SE is not currently communicating
with an element of a zBX needed to perform the requested operation.
3 This request would exceed the limit on the number of concurrent API requests
allowed.
To avoid the need for the buffering the entire response, and to instead allow the response to be
transmitted in smaller segments as they are prepared, operations that return large responses use HTTP
chunked response encoding instead. Chunked transfer encoding is an HTTP V1.1 data transfer feature
that allows the payload of the response message to be split into a sequence of smaller parts known as
chunks, with the size of each chunk transmitted as part of the chunk rather than requiring the
transmission of the size of the full response payload.
Chunked transfer encoding is defined in the HTTP/1.1 protocol standard, RFC 2616, cited earlier in this
section.
The HTTP protocol standard requires that all HTTP/1.1 applications (client or server) be capable of
receiving and handling chunked transfer-encoded messages, so the use of this encoding by the API HTTP
server is within the options allowed by the protocol standard. However, since this format may be
unexpected to naively-written applications, its use is limited by the API HTTP server to the special
circumstances that warrant its use to improve performance or efficiency. Therefore, a client application
can safely assume that an operation will not use chunked transfer encoding for its responses unless the
use of this encoding is specifically mentioned in the description of the operation.
is typically provided on operations that are described as List operations (e.g. List Virtual Servers of
Ensemble). This section describes the interpretation/handling of filter-type query parameters across all of
the operations of the API.
As would be expected, if an operation is invoked without specifying any of its possible filter-type query
parameters, the operation returns all of the result entries applicable to the request. For example, the List
Virtual Servers of Ensemble operation invoked with no filtering query parameters returns all of the
Virtual Server objects in the Ensemble to which the API user has access.
If one or more filter-type query parameters are specified, the combination of those parameters specifies a
logical match expression that is evaluated against each entry that is a candidate for inclusion in the result
to determine if the entry is included or not. Within that expression, there may be multiple occurrences of
the same-named query parameter and/or there may be occurrences if differently-named query
parameters. The query parameters are interpreted as a logical expression using the following rules:
v Multiple occurrences of the same-named query parameter are interpreted as a group that is connected
by a logical OR operation among all of query parameters with the same name. An entry remains a
candidate for inclusion in the result as long as it matches at least one of the values specified for this
particular query parameter.
v Occurrences of differently-named query parameters are first organized into OR'ed groups as mentioned
above, and then these groups are interpreted as being connected by logical AND operations. Thus an
entry is included in the result only if it matches at least one value from each of the differently-named
groups of parameters.
v As an example, a query string of “name=fee&type=fie&name=foe&type=fum” is interpreted as
specifying the expression (name=fee OR name=foe) AND (type=fie OR type=fum). Note that the order
in which the query parameters appear in the string is not important.
As a filter-type query parameter is applied against a candidate entry, it is determined to match or not as
follows:
v If the query parameter is of data type String, the parameter's value is interpreted as a regular
expression pattern and is considered to match if the corresponding String property of the candidate
entry matches the pattern.
v If the query parameter is of data type String Enum, the parameter's value is compared against the
corresponding Enum property of the candidate entry and is considered to match if they are exactly the
same value.
v If the query parameter is of data type Boolean, the parameter's value is compared against the
corresponding Boolean property of the candidate entry and is considered to match if they are both true
or both false.
The zManager notification facility is based on the Java Message Service (JMS) architecture and API for
exchanging messages among two or more applications.
JMS basics
In the JMS model, message-based communication between producing and consuming applications is
coordinated by an intermediate component known as a message broker that acts as the clearinghouse for
message exchange. The message broker provides a registry of the available destinations to which
messages can be posted, and a store for messages that have been posted but not yet consumed.
Applications acting in the role of message producer create messages and post them (via the broker) to the
destination appropriate for the type of message. The messages are associated with the destination and
retained by the broker until they have been consumed by interested applications.
Applications acting in the role of message consumer connect to a message destination (again, via the
broker) in order to express interest in receiving messages posted to it. As messages are posted to the
destination by producers, the broker makes the messages available to interested consumers which then
receive and process the message.
In the Web Services API notification facility, the HMC acts both as the message broker and the message
producer for API notification messages. API client applications act as message consumers.
For the broker function, the HMC includes an integrated JMS message broker implementation based on
Apache ActiveMQ, an open, standards-based implementation of JMS. This integrated broker is configured
to allow internal HMC function to act as message producers, and to allow external applications to
connect as message consumers. However, external applications cannot produce and send messages using
the HMC integrated broker.
When active, the integrated broker listens for client connections using the following transports supported
by ActiveMQ:
v OpenWire flowing over SSL connections, listening port: 61617.
v STOMP (Streaming Text Oriented Messaging Protocol) flowing over SSL connections, listening port:
61612.
The broker is enabled for the SSL version 3 and TLS version 1 protocols on these SSL ports.
The listening ports for the message broker are fixed port numbers and are not subject to customer
reconfiguration. Thus, client applications can treat them as well-known port numbers rather than
requiring customer input when configuring the networking parameters the client will use to connect to
the HMC.
In order to connect to the integrated message broker, clients must provide certain authentication
information for the HMC user making the connection. If the HMC user is configured to use multi-factor
authentication, then the client must provide information about the HMC user's API session that is to be
associated with the message broker connection. The user name field in the connection request must
contain the API session ID, and the password field must contain the session-specific authentication
credential. Both of these are available in the response body of the Logon operation that created the API
session: the api-session and session-credential fields, respectively.
If the HMC user is not configured to use multi-factor authentication, then the client may provide the
authentication information as described immediately above, or it may provide a valid HMC user name
and logon password in order to identify the HMC user making the connection. The user name and
password are validated using the standard HMC user authentication mechanisms before allowing the
connection to succeed.
The integrated message broker does not allow any anonymous or unauthenticated connections.
In order to accomplish this, the API does not define a single (or fixed number of) notification topics to
which all messages are posted and from which any or all clients can receive messages. Rather, the API
uses per-session notification topics.
In this approach, each API session is associated with a set of JMS destinations that are created by the
HMC when the session is created or other actions are performed using the session, and are used for
providing notifications destined to that session. The names of the object notification and job completion
destinations are returned as part of the results from the Login operation. The names of all destinations
available to a session are returned by the Get Notification Topics operation. Each session has the
following per-session notification destinations:
v An object notification topic, used by the HMC to send notifications that pertain to the inventory and
status of managed objects that this session has permission to access.
v A job notification topic, used by the HMC to send notifications that pertain to the status of
asynchronous operations that are initiated by this session.
v An audit notification topic, used by the HMC to send notifications that pertain to the HMC's audit log,
but only if the client has permission to the Audit and Log Management task. Without the required
task permission, there is no such destination available to the session.
v A security notification topic, used by the HMC to send notifications that pertain to the HMC's security
log, but only if the client has permission to the View Security Logs task. Without the required task
permission, there is no such destination available to the session.
v An operating system message notification topic, used by the HMC to send notifications that pertain to
new and refreshed operating system messages. More than one topic of this type can exist for a single
API session.
Unlike the other topic types, topics of this type are not created by default when the session is created.
They are created when the user targets the Open OS Message Channel operation at a Logical Partition
or Partition object. Operating system messages begin to flow after the user first connects to the topic. If
refresh messages are desired, they are published to the topic immediately following a connection being
established to the topic. New messages are sent as they are received. When there are no connections
remaining to the topic, the flow of messages stops. The topic will persist, allowing for a reconnect. If
the user reconnects, messages will flow as if it was the first connect. The topic is destroyed only when
the user performs the Logoff operation or the session is otherwise destroyed.
The session is also associated with an HMC user (identified during API session login) that in turn has a
set of object-access permissions defined for it that determine the managed resources that it is authorized
to access. The HMC user also has a set of task permissions defined for it that determine the tasks that it
is authorized to perform.
As notification messages are created for managed resource changes or other events, they are distributed
to sessions according to the object-access permissions of those sessions. More specifically, when a
notification is generated pertaining to some managed resource, it is published to the object notification
topics of all sessions for which the related API user has object-access permission to that managed
resource, and is omitted from the object notification topics of sessions for which the user does not have
object-access permission. As a result, a particular API session will have access to all notifications for all
managed resources to which its API user has access permission, but will not have access to notifications
for managed resources that it does not.
Notification messages for job completion are sent only to the job notification topic of the API session that
initiated the asynchronous processing represented by the job.
Message format
The following JMS message characteristics apply to all notification messages sent by the Web Services
API. These characteristics are echoed in the message themselves in the values of the standard JMS
message header fields.
Characteristic Description
Destination The per-session object or job notification topic as indicated below for each type of notification.
Message type Text message. The contents of the body vary by the type of notification.
Delivery mode Nonpersistent.
Expiration No expiration.
Priority 4 (highest normal priority)
Message ID A unique message ID for the message.
Correlation ID Not set by the API.
Timestamp The time, from the HMC's perspective, that this message was sent.
In addition to the standard JMS message headers, the following additional message properties are
provided in all notification messages to allow for message selection:
Message
Property Name Description
notification- The type of notification contained in this message, varies by notification type.
type
session- The sequence number of this notification within the session. This number starts at 0 when the API
sequence-nr session is created, and is incremented each time a notification message is published to this
session.
global- The sequence number of this notification from the HMC. This number starts at 0 when the HMC
sequence-nr is started, and is incremented each time a notification message is published to any API session.
object-uri The current value of the object-uri property (canonical URI) of the managed object for which the
notification is being emitted.
object-id The current value of the object-id property (durable unique identifier) of the managed object.
element-uri The current value of the element-uri property of the element object for which the notification is
being emitted. This message property is included only when the message pertains to an element
object of a managed object.
element-id The current value of the element-id property (local identifier) of the element object. This message
property is included only when the message pertains to an element object of a managed object.
class The current value of the class property (kind of object) of the object, i.e. the kind of object for
which the notification is being emitted.
name The current value of the name property (display name) for the object to which the notification
pertains.
Note: Note: In some circumstances the name property may be unavailable, in which case this
field is set to an empty string. This may occur, for example, if a property change occurs and is to
be reported on very shortly before (essentially concurrent with) the removal of that object from
the inventory.
When a notification message pertains to an element object, the message includes element-uri and
element-id fields in addition to object-uri and object-id fields. The element-* fields identify the element
object instance while the object-* fields identify the containing managed object instance. In this case, the
class field provides the class of the element object, and the name field provides the name of the element
object.
When a notification message pertains to a managed object, the message contains object-uri and object-id
fields but not the element-* fields and the class field provides the class of the managed object and the
name field provides the name of the managed object.
Grouping of notifications
A particular managed resource may often experience a series of changes that occur in rapid succession.
This might occur, for example, when a user uses an object's Details task in the HMC UI to make a set of
changes to the object's properties and then selects the Finish button to complete the task. All of the
pending property changes collected by the task will be made on the managed object in very quick
succession in response to the Finish button being selected, rather than before as the user was interacting
with the task.
In order to reduce the notification traffic in these situations, the notification messages have been designed
to allow the HMC to report multiple changes of the same type (e.g. property changes, status changes) for
the same managed resource in a single message rather than generating a distinct message for each
change. In order to do such grouping, the HMC may delay generation of a notification message for a
change for a brief period of time in order to allow coalescing of that change report with others that occur
for the same managed resource within the coalescing time window. This optimization will be performed
while maintaining the following characteristics:
v Grouping of notifications may be done for property change, status change, operating system message,
and log entry notifications, but will not be done for other notification types.
v Notifications will be buffered for a maximum of 1 second.
v The grouping of change reports will not obscure a client's ability to correctly observe the temporal
ordering of the individual changes made to a particular object or between objects based on the
messages sent to a session. That is, notification messages will always be generated so that the ordering
of the messages as determined by their session sequence numbers reflects the temporal order in which
the changes were actually made. All of the changes reported to a session in a message with a lower
session sequence number will have occurred before any of the changes reported in a message with a
higher session sequence number. Further, the ordering of change reports within a particular message
reflects the order in which they occurred to that object as well.
v Coalescing of multiple changes into a single notification message will occur for at most a single
pending notification message (thus, of a single type) at a time. If a need arises to report a change of a
different type than is currently pending (for example, a need to report a status change when there is
currently a set of pending property change reports), coalescing will end for that pending message and
it will be posted to notification topics as appropriate. This is necessary in order to maintain the API
client's ability to correctly observe temporal ordering.
v The grouping of change reports into notification messages occurs independently for each session, so
that one session may receive a different distribution of change reports across notification messages than
another session.
The degree to which message grouping occurs or not depends on the timing of changes and possibly
other considerations and thus is to be strictly considered an optimization and not guaranteed behavior.
Client applications should infer no particular semantic significance to change reports being delivered in a
single message vs. a sequence of messages.
Characteristic Description
Destination The per-session object notification topic for each API session that is authorized to receive
the notification.
In addition to the common JMS message headers described above, the following additional message
properties are provided for this type of notification:
The body of a Status Change notification message is a JSON representation of an object that contains the
following fields and values:
Each nested change-report object has the following fields and values:
Characteristic Description
Destination The per-session object notification topic for each API session that is authorized to receive the
notification.
In addition to the common JMS message headers described above, the following additional message
properties are provided to allow for message selection:
Message property
name Description
notification-type Contains the value "property-change".
property-names Blank-separated list of the names of the properties for which change reports are provided in
the body of this notification message. The list always includes a leading and trailing blank
so that a property name can be specified as a blank-delimited word in a message selector to
avoid matching unintended properties that have the desired property name as a substring.
The body of a Property Change notification message is a JSON representation of an object that contains
the following fields and values:
Each nested change-report object has the following fields and values:
If the property is a container-type property (i.e. marked with the (c) qualifier),
this field does not provide the complete previous value. Rather, it provides an
array of entries that have been removed from the value of the container property.
The value of these entries will be of the data type indicated for the property in
the object's data model. If no entries have been removed, null is provided.
If the property is a write-only property (i.e. marked with the (wo) qualifier), this
field does not provide the value of the property. Rather, this field always
contains null.
new-value Based on If the property is not a container-type or write-only property, this field contains
model the new (current) value of the property for the object. The value of this field will
be of the data type indicated for this property in the object's data model.
If the property is a container-type property (i.e. marked with the (c) qualifier),
this field does not provide the complete new value. Rather, it provides an array
of entries that have been added to the value of the container property. The value
of these entries will be of the data type indicated for the property in the object's
data model. If no entries have been added, null is provided.
If the property is a write-only property (i.e. marked with the (wo) qualifier), this
field does not provide the value of the property. Rather, this field always
contains null.
For some kinds of managed objects, an Inventory Change notification is also emitted by the API to report
the addition or removal of an element of a managed object. Such notifications do not occur for all
elements, but rather only when specifically described in the documentation for a class of managed object.
Because an Inventory Change notification may be generated more than once for the same conceptual
object, these notifications cannot be interpreted as designating a resource creation action.
Characteristic Description
Destination The per-session object notification topic for each API session that is authorized to receive the
notification.
In addition to the common JMS message headers described above, the following additional message
properties are provided to allow for message selection:
Message property
name Description
notification-type Contains the value "inventory-change".
name Not provided for this notification. Always an empty string.
Message property
name Description
action The value "add" when the object has been added to the inventory, or "remove" when it is
being removed.
Asynchronous operations are those that complete with an HTTP status code of 202 (Accepted) when
requested by the client. A Job Completion Notification message is sent to the API session that initiated
the job when such an operation completes or is canceled, and provides to the client application the URI
of the job that has completed or been canceled so the client application can use the Query Job Status
operation to obtain results for the job.
Characteristic Description
Destination The per-session job notification topic for each API session that is authorized to receive the
notification.
In addition to the common JMS message headers described above, the following additional message
properties are provided to allow for message selection:
Message property
name Description
notification-type The value "job-completion".
job-uri The URI identifying the asynchronous job that has just completed execution or has been
canceled.
Characteristic Description
Destination The audit notification topic or security notification topic for each API session that is
authorized to receive the notification.
In addition to the common JMS message headers described above, the following additional message
property is provided to allow for message selection:
Message property
name Description
notification-type Contains the value "log-entry".
The body of a Log Entry notification message is a JSON representation of an object that contains the
following fields and values:
Characteristic Description
Destination One of the os-message-notification topics associated with the API session.
In addition to the common JMS message headers described above, the following additional message
property is provided to allow for message selection:
Message property
name Description
notification-type Contains the value "os-message".
The body of an operating system message notification message is a JSON representation of an object that
contains the following field and value:
Each nested os-message-info object has the following fields and values:
In order to specify the external aspects in a succinct way, the web Services API is described in this
document in terms of a conceptual data model that it offers for the resources that it manages. This data
model is an information structuring technique that conceptually defines the kinds of resources that are
managed by zManager and for each, the information that is available for and the operations that can be
performed on resources of that kind. This data model is intended to provide the complete perspective
that clients of the API can have regarding the logical resources of the system while insulating them from
implementation details.
There are different kinds of manageable physical or logical resources in the system, and each kind
manifests different observable characteristics. As a result, there are different classes of objects in the data
model. Objects of the same class represent the same kind of resource and provide a defined set of
properties that capture the attributes of that kind of resource that the Web Services API exposes.
These two categories are very similar in that they are both, ultimately, unordered collections of named
properties that capture the key attributes of a resource instance. The categories differ primarily in how
prominently they are handled in the API: the way that instances of them are designated to perform
operations on them, and the degree to which API facilities such as inventory and change notification can
be offered for objects in that category.
Managed objects are the first-class entities in the data model and the API. They represent the primary
manageable resources of the system, such as ensembles, blades, virtual servers and workloads. These
kinds of objects typically appear prominently in the main displays of the HMC user interface.
Instances of managed objects are registered and indexed in the zManager managed object registry, and
thus can be directly referenced by URIs that form a relatively "flat" namespace. The URI of a managed
object designates its object instance based on its class and a unique, durable, UUID-based identifier called
an object ID. For example, the URI of a virtual server is of the form /api/virtual-servers/{vs-object-
id} where the identifier at the end of the URI is globally unique. Inventory change, property change, and
status change notifications can be generated for managed objects.
In comparison, element objects represent the secondary or more-detailed aspects of the system. Examples
include the virtual network adapters of a virtual server, or the performance policies of a workload. These
kinds of entities do not generally appear in the main displays of the HMC user interface, but rather are
displayed only within particular management tasks offered by the UI.
Instances of element objects are not directly registered in the zManager object registry, but rather are
associated with or “attached to” some containing or related managed object instance. As a result, access
to these elements is indirect, through the containing managed object. The URIs that designate element
objects are hierarchical in nature, with the leftmost part of the URI identifying the managed object to
which the element is attached. For example, the URI for a virtual disk of a virtual server is of the form
/api/virtual-servers/{vs-object-id}/virtual-disks/{disk-id} in which the {disk-id} at the end is only
necessarily unique within the context of the related virtual server. Inventory, property and status change
notifications are not provided for element objects. Instead, when changes to elements are reported, those
changes are done via property change notifications emitted for the associated managed object.
As a result, in the chapters that follow, the description of the management interfaces for a class of
resource begins with a data model section that specifies the properties that are exposed by the API for
that kind of resource.
Each property has a name, a data type, and a semantic description in prose.
The property name is the programmatic identifier of the property. This identifier is used within requests
and responses to indicate that a field represents a particular property of the data model. It is the “name”
part of the name/value pair that is the property.
The property data type indicates the kind of information that can be represented by the property, just as a
variable's data type indicates the kind of information that can be stored in a variable. The data type
provides information on the nature of the “value” part of the name/value pair that is the property.
Property characteristics
Properties are classified as being either writable or read-only from the perspective of an API client
application.
Writable properties are ones that can have their values read by Get <class> Properties or similar
operations and can also have their values directly changed by Update <class> Properties operations.
Properties that are classified as write-only can have their values directly changed by Update <class>
Properties operations, but cannot have their values read by using Get <class> Properties or similar
operations. Properties that are classified as read-only can have their values read by using Get <class>
Properties or similar operations, but cannot have their values changed directly.
Although properties that are classified as read-only cannot have their values changed directly, their
values may nonetheless be affected by other operations supported by a class of object. For example, a
class of object might include an is-enabled property that is classified as read-only because the enabled
state of the resource cannot be affected by a simple Update <class> Properties operation on that
is-enabled property. However, this object might also define a Change State or Enable operation that can
perform this enabling, and as a side effect will alter the value of the is-enabled property.
In addition to the read-only vs. writable classification, properties defined for a managed object also can
differ in whether changes to them result in property change or status change notifications being emitted
for the managed object or not. For properties that have property or status change support, these
notifications are emitted asynchronously by the API any time the value of the property changes, whether
that change was made via this API, the HMC UI, or implicitly by the system. Changes to the values of
properties for which change notification support is not provided do not result in such notifications.
Most objects have properties that are primarily configuration data. However, for some objects, certain of
those configuration-related properties may at times also have a transient, runtime counterpart property in
effect whose value can be different than the preserved configuration or base value. That transient,
runtime counterpart property is known as an “effective” property and is identified as such in the object's
data model by the (e) qualifier. The name of an effective property is formed by prepending “effective-” to
the name of its corresponding base property. Whether an object's effective properties are applicable at any
point in time is determined by the state of the object or the state of the system or related objects and is
described in that object class' section of this document. The object's effective-properties-apply property
indicates whether effective properties are currently applicable. If effective-properties-apply is false, the
value of an effective property is the same as its corresponding base property and the effective property
may not be altered by an Update <class> Properties operation.
In some cases, an object in the management system may have properties whose values are unwieldy to
provide or expensive to obtain and further may not be of general interest in typical API client use cases.
To allow the handling of such properties to be optimized they are represented by a special kind of
property termed a pseudo property. A pseudo property is conceptually one of the characteristics of a class
of object and is thus documented in the data model for the object (with a (p) qualifier). However, the
name and value of a pseudo property is not included in the response to a Get <class> Properties
operation or in the inventory service data for that class of object. Instead, class-specific operations are
provided in order to obtain the current value of the property when needed by an API client. As for
normal properties, property change notifications may be generated for changes to a pseudo property if
indicated in the data model.
In the tables of properties that appear within this document, the characteristics of properties are indicated
by qualifier annotations in parenthesis following the property name. The qualifiers have the following
meanings:
Qualifier
notation Description
(w) The property is a writable property. Any property that lacks this qualifier and the (wo) qualifier is
considered read-only and thus is not directly modifiable.
(wo) The property is a write-only property. Any property that lacks this qualifier and the (w) qualifier is
considered read-only and thus is not directly modifiable.
(ro) Although this property is writable when present in other managed object classes, it is read only in
this class. This qualifier is only used when a managed object class specializes the definition of a
base managed object property and overrides the writable characteristic of the base definition.
(p) The property is a pseudo property. Its current value is omitted from the response to a Get <class>
Properties operation or inventory service data for the object, but can be obtained by a class-specific
operation.
(pc) Change to this property's value will result in Property Change notifications.
(c) The property is a container-type property for which deltas (changes) are reported in Property
Change notifications rather than complete old and new values.
(sc) Change to this property will result in Status Change notifications.
Qualifier
notation Description
(mg) This property represents a performance or utilization metric of the object that is included in a
metric group available via the Metrics Service of this API. The value of this property may change
very frequently and, therefore, property change notifications are not emitted for changes to this
property. Client applications interested in obtaining metric information frequently should obtain
this information through use of the Metrics Service of this API.
(e) The property is an effective property.
The description of the data model for a specific object class specifies the shared schema elements it is
incorporating within the data model section of that description, if any. It will also include a description of
the specializations that apply to that class's use of the shared schema, such as additional constraints on
properties, class-specific values for properties, etc.
Unless stated to the contrary, any object class data model that includes the base managed object
properties schema should be understood to also provide these operational status properties as well. For
object classes for which that is not the case, the data model description will specifically point out that
operational status and thus these operational-status-related properties are not provided for that object.
| These features affect certain API operations as documented here. API clients should query the enablement
| of these features on a system and choose the operations accordingly.
| The enablement of a feature might mean that the API clients have to use new API operations or new
| properties in existing API operations. It might also indicate that some of the existing API operations and
| properties will not be supported.
| If an API operation is not supported when a feature is enabled, invoking the API operation on an object
| where the feature is enabled would result in a standard status code 409 (Conflict) with a standard reason
| code 12.
| If an API operation is supported only when a feature is enabled, invoking the API operation on an object
| where the feature is disabled would result in a standard status code 409 (Conflict) with a standard reason
| code 13.
| If an API operation targeting an object whose existence is controlled by a feature is invalid given the
| enablement of the feature, a standard status code 404 (Not Found) with standard reason code 1 (for
| managed objects) or 5 (for element objects) is returned.
| The following section describes the features that are currently available.
| dpm-storage-management
| This feature is applicable for the CPC and Partition objects. The Get CPC Properties and Get Partition
| Properties operations can be used to query if the feature is enabled or disabled.
| When this feature is enabled, management of FICON storage is available. FCP and FICON virtual storage
| resources are defined in Storage Groups which are then attached to Partitions. A Partition that has this
| feature enabled has no HBAs visible to an API client or on the UI.
| When this feature is disabled, FICON storage is not available and FCP virtual storage resources (HBAs)
| are attached directly to Partitions.
| The following API operations are affected and will return status code 409 (Conflict) with reason code 12
| when they are invoked on an object on which the "dpm-storage-management" feature is enabled.
| v Create HBA
| v Export WWPN List
| v Dump Partition
| The following API operations are affected and will return status code 404 (Not Found) with reason code 5
| when they are invoked on an HBA object on which the "dpm-storage-management" feature is enabled.
| v Delete HBA
| v Update HBA Properties
| v Get HBA Properties
| v Reassign Storage Adapter Port
| There are new API operations introduced with the feature. They are defined in the following sections
| under Chapter 10, “Dynamic Partition Manager (DPM),” on page 137:
| v “Storage Site operations summary” on page 142
| v “Storage Fabric operations summary” on page 142
| v “Storage Switch operations summary” on page 143
| v “Storage Subsystem operations summary” on page 143
| v “Storage Control Unit operations summary” on page 144
| v “Storage Group operations summary” on page 145
| In addition, the following new API operations are introduced with the feature and are defined in
| “Partition operations summary” on page 139:
| v Start Dump Program
| v Attach Storage Group to Partition
| v Detach Storage Group from Partition
| These operations will return status code 409 (Conflict) with reason code 13 when they are invoked on an
| object on which the "dpm-storage-management" feature is disabled.
Sessions are created upon request from a client by using the Logon operation, and may be explicitly
terminated by a client using the Logoff operation. Sessions may also be terminated by the HMC due to
inactivity when no requests are made using the session over a certain period of time. (The default session
timeout is 6 hours, but it is configurable on a per-user basis.) However, termination of a session due to
inactivity will not occur as long as a client application uses the API's notification facility to maintain a
JMS subscription to one or more of the session's JMS notification topics. The existence of such a
subscription is considered by the HMC to indicate that a client is still using the session and thus it is not
terminated even if no requests are made using it. The existence of an open WebSocket associated with the
API session will also prevent it from being considered inactive.
The scope of a session is the particular HMC instance on which it was created via a Logon operation.
That is, an API session created on one HMC of a primary/alternate HMC pair is not also available on the
alternate HMC of that pair. Nor will that session (and its associated session-id) be available on the other
HMC should a primary/alternate role switch occur due to a failure of the primary HMC. After a
primary/alternate role switch, client applications will need to establish new sessions by making Logon
requests again.
Sessions are identified by clients using a session-id, which is a string of up to 64 characters in length that
is returned to the client in the results from a successful Logon operation. This string is generated in a
cryptographically-secure manner. A session-id string is a form of authentication credentials for a user
equivalent in power to a user's user ID and password. Because of this, a session-id should be transmitted
only within SSL connections.
In order to indicate that subsequent requests are to be performed in the context of a designated session,
the client supplies the appropriate session-id to the HMC in each such subsequent request. This is done
by supplying the session-id as the value of the X-API-Session HTTP header which is an
application-specific header defined by and recognized by the HMC.
The Logon and Query API Version operations are the only two operations in the Web Services API that
can be performed without an API session so requests for these operations do not need to provide the
X-API-Session HTTP header. All other operations are valid only in the context of an API session and thus
requests for all other operations must supply an X-API-Session header with a valid session-id in order to
be successfully executed.
Description
This operation returns name and version information for the HMC and the HMC API.
This operation can be requested without an API session being open, i.e. no X-API-Session header, and
session-id is required on input.
For more information about the function included in each API version, see “Summary of API version
updates” on page 7.
Under normal conditions, no error response codes are returned by this request. (HTTP Status code 500
could possibly result if internal HMC errors occur.)
Response:
200 OK
server: Hardware management console API web server / 2.0
cache-control: no-cache
date: Thu, 07 Aug 2018 20:02:57 GMT
content-type: application/json;charset=UTF-8
| content-length: 167
{
"api-major-version":2,
"api-minor-version":20,
"classification-text":"Top Secret",
"hmc-name":"HMCTR117",
"hmc-time":1504814577975,
"hmc-version":"2.14.0",
| "vendor":"ibm"
}
Logon
The Logon operation establishes an API session with the Web Services API.
The largest request body accepted by this operation is 512 bytes. Requests with bodies that exceed this
maximum are rejected with an HTTP status 413 (Request Entity Too Large) response.
Description
This operation opens a new API session with the Web Services API. Authentication is performed as part
of this process.
The characteristics and permissions of an HMC user are specified in an HMC User or User Template
definition. The user name provided in the userid field of the request body is used to select a
corresponding User or User Template based on the name. If such a User or User Template is found, the
client's authority to operate as this HMC user is authenticated by validating the password provided in
the password field using the authentication method specified in the User or User Template.
If the HMC user is configured for multi-factor authentication, additional authentication processing is
required. If the HMC user currently has an established shared secret key, the user's current multi-factor
authentication code provided in the multi-factor-authentication-code field is validated. If the HMC user
does not currently have an established shared secret key, HTTP status code 201 (Created) is returned.
If the authentication described above is successful, a new API session is created and the session-id for the
new session is provided in the api-session field in the response from this operation. This same value is
also provided by an X-API-Session HTTP header field in the response. If all required authentication is
successful, the newly created API session is fully authenticated. If HTTP status code 201 (Created) is to be
returned, a partially-authenticated API session is created. In this case an Establish Shared Secret Key
operation, using the key supplied in the shared-secret-key field in the response body, must be issued to
establish a shared secret key and complete the API logon sequence, thereby converting the
partially-authenticated session into a fully-authenticated session. The operations available to a
partially-authenticated session are limited to the Establish Shared Secret Key and Logoff operations.
If the request specifies an X-API-Session HTTP header field on input (indicating that this operation be
performed under some designated session), the logon request fails and status code 400 (Bad Request) is
returned.
If an HMC User or User Template corresponding to the user ID field does not exist, or if the password or
multi-factor authentication code validation fails, the logon request fails and status code 403 (Forbidden) is
returned. There is no reason code to distinguish these reasons for the failure. If the User or User Template
is marked as disabled or the associated password has expired, or if the User or User Template is not
configured to allow use of the API, the login request also fails with status code 403 (Forbidden) and a
reason code identifying the specific cause.
If all required user authentication is successful and the request body contains the optional new-password
field, the password associated with the user is changed to the specified new value as part of the Logon
operation. If the new password does not meet the requirements of the password policy in effect for this
user or if the password is not changeable because it is managed by an external authentication
mechanism, the request fails with status code 400 (Bad Request) and a reason code indicating the cause of
the failure.
As part of establishing the new API session, names are assigned for the JMS topics that will be used by
the HMC to send object-related and job-related notification messages to this session and the names of
these topics are provided in fields of the response body. The name of the topic used for object-related
notifications is provided in the notification-topic field of the response, and the name of the topic used for
job-related notifications is provided in the job-notification-topic field.
This operation can be invoked on the alternate HMC, however password changes cannot be requested
(i.e. the new-password field cannot be provided) in this case.
Authorization requirements
This operation has the following authorization requirement:
v The HMC User Profile or User Template selected by the userid field must be configured to allow use
of the Web Services API.
The following HTTP status codes are returned for the indicated operation-specific errors, and the
response body is a standard error response body providing the reason code indicated and associated
error message.
Additional standard status and reason codes can be returned, as described in Chapter 3, “Invoking API
operations,” on page 35.
Usage notes
v The Logon operation checks for and prevents requests that specify an X-API-Session header on input
in order to detect client applications that unnecessarily log on again when already logged on. It is valid
to have multiple sessions, but in order to more explicitly indicate that this is desired, the client
application needs to request each logon without referencing any existing session.
v Some of the information returned by this operation is also present in the response body of a successful
Get Notification Topics request. Specifically, the information contained in the notification-topic and
job-notification-topic fields is also included in the Get Notification Topics response. That operation
identifies all JMS topics available to the API user, possibly including topics other than those identified
in the Logon response.
v The multi-factor authentication code is a time-based one-time password as defined in RFC 6238, TOTP:
Time-Based One-Time Password Algorithm, May 2011, (available at: https://tools.ietf.org/html/rfc6238
from the Internet Engineering Task Force. The TOTP algorithm uses a shared secret key and the current
time of day to calculate the TOTP for the current 30-second interval.
v When using multi-factor authentication the user must establish a shared secret key. This key is
sensitive security information much like a password and is to be known only by the user and the
HMC. This key can be established via the Establish Shared Secret Key operation or by logging on to
the HMC via the local GUI interface or a remote web browser. The HMC presents this key to the user
only once (during the first logon after being required to use multi-factor-authentication or having their
shared secret key be invalidated by an administrator), and it is the user's responsibility to have it
available for use during subsequent API and GUI logons, which will require the user's current
multi-factor authentication code.
v The sequence of operations to establish a shared secret key via the APIs is as follows:
– Issue a Logon operation with a valid logon password.
– The Logon completes with HTTP status code 201 (Created) and returns an API session ID for a
partially-authenticated session and a proposed shared secret key.
– Issue an Establish Shared Secret Key operation with the API session ID and calculated multi-factor
authentication code.
– The Establish Shared Secret Key operation completes with HTTP status code 204 (No Content), the
partially-authenticated session is converted into a fully-authenticated session and the proposed key
is now the user's officially established shared secret key.
v When using multi-factor authentication it is important for the API client's time of day clock to be
reasonably in sync with the HMC's clock, because the current time of day is used when calculating the
user's current multi-factor authentication code. To determine if the clocks are reasonably in sync, the
Query API Version operation may be used to obtain the HMC's current time, which can then be
compared to that of the API client.
v If an Establish Shared Secret Key operation is required to complete a logon sequence that includes a
client-tag field, the last mobile app logon time for the API user is not updated until the Establish
Shared Secret Key operation completes successfully.
200 OK
server: zSeries management console API web server / 1.0
cache-control: no-cache
date: Wed, 02 Aug 2017 18:41:27 GMT
x-api-session: 4hy7c4nogldz4b59ajegzb1dulec641ziyv6uf73zs43205edv
content-type: application/json;charset=UTF-8
content-length: 281
{
"api-major-version": 20,
"api-minor-version": 2,
"api-session": "4hy7c4nogldz4b59ajegzb1dulec641ziyv6uf73zs43205edv",
"job-notification-topic": "APIUSER.229job",
"notification-topic": "APIUSER.229",
"password-expires": 29,
"session-credential": "un8bu462g37aw9j0o8pltontz3szt35jh4b1qe2toxt6fkhl4"
}
Description
This operation establishes a shared secret key for a user that is configured for multi-factor authentication.
It completes the authentication of a partially-authenticated API session created by a previous Logon
operation that completed with HTTP status code 201 (Created). That API session's ID must be specified
on the X-API-Session request header. The request body must contain the current multi-factor
authentication code calculated using the proposed shared secret key returned in the response body of the
aforementioned Logon operation.
If the X-API-Session request header does not identify a partially-authenticated session, HTTP status code
400 (Bad Request) is returned. If the multi-factor authentication code is not correct for the proposed
shared secret key and current time of day, HTTP status code 403 (Forbidden) is returned. If the
requirement for the user to establish a shared secret key no longer exists, HTTP status code 409 (Conflict)
is returned with a reason code that indicates what has changed.
If the operation fails for any reason, the partially-authenticated session is destroyed.
Authorization requirements
This operation has no explicit authorization requirements; however, the request must contain the session
ID of the partially-authenticated API session and the current multi-factor authentication code for that
session.
The following HTTP status codes are returned for the indicated errors, and the response body is a
standard error response body providing the reason code indicated and associated error message.
Additional standard status and reason codes can be returned, as described in Chapter 3, “Invoking API
operations,” on page 35.
Usage notes
See the usage notes for the Logon operation for more information on using multi-factor authentication
with the APIs.
204 No Content
server: zSeries management console API web server / 2.0
cache-control: no-cache
date: Fri, 16 Dec 2016 21:21:09 GMT
Logoff
The Logoff operation closes an API session with the Web Services API.
Description
This operation closes an API session with the Web Services API.
The session to be closed is indicated by the session-id in the X-API-Session header of the request. If the
session-id designates an open session, the API session is closed and status code 204 (No Content) is
returned. Closing of the API session includes closing/deleting any Metrics Service retrieval contexts or
JMS notification topics associated with the session. However, asynchronous actions initiated by the
session continue to run.
Once a session is closed, its session-id is no longer valid for use in subsequent Web Services API
requests. Attempts to do so will result in the same errors as any other attempt to use a session-requiring
operation without providing a valid session-id.
Authorization requirements
This operation has the following authorization requirement:
v No explicit authorization is required, however the client application must possess and present a valid
session-id of the session to be closed.
The following HTTP status codes are returned for the indicated operation-specific errors, and the
response body is a standard error response body providing the reason code indicated and associated
error message.
Additional standard status and reason codes can be returned, as described in Chapter 3, “Invoking API
operations,” on page 35.
204 No Content
date: Wed, 20 Jul 2011 18:33:56 GMT
x-request-id: Sx32 Rx0
server: zSeries management console API web server / 1.0
cache-control: no-cache
This field does not exist for the other topic types.
include-refresh- Boolean When the topic-type is "os-message-notification", this field indicates
messages whether refresh operating system messages will be sent on this topic. A
value of true indicates that refresh messages will be sent. A value of false
indicates that no refresh messages will be sent.
This field does not exist for the other topic types.
Description
This operation returns a list of all JMS topics to which the API user is authorized to connect. As there
exists at least one JMS topic available to any authenticated user, the returned JSON array will never be
empty.
Authorization Requirement
This operation has the following authorization requirement:
v No explicit authorization is required; however, the response to this request is limited to the topics to
which the user is authorized to connect.
The following HTTP status codes are returned for the indicated errors. The response body is a standard
error response body providing the reason code indicated and an associated error message.
Additional standard status and reason codes can be returned, as described in Chapter 3, “Invoking API
operations,” on page 35.
200 OK
server: zSeries management console API web server / 1.0
cache-control: no-cache
date: Sat, 14 Sept 2013 18:03:00 GMT
content-type: application/json;charset=UTF-8
{ “topics” :
[
{ “topic-type”:”object-notification”, “topic-name”:”mikeuser.1” },
{ “topic-type”:”job-notification”, “topic-name”:”mikeuser.1job” },
{ “topic-type”:”audit-notification”, “topic-name”:”mikeuser.1aud” },
{ “topic-type”:”security-notification”, “topic-name”:”mikeuser.1sec” }
{ “topic-type”: “os-message-notification”,
“topic-name”: “mikeuser.1osmsg.cpc1.lpar1”,
“object-uri”: “/api/logical-partitions/c7eb8134-826e-3a71-8d1a-00d706c874e9”,
“include-refresh-messages”: true },
{ “topic-type”: “os-message-notification”,
“topic-name”: “mikeuser.1osmsg.cpc2.par7”,
“object-uri”: “/api/partitions/458e44e1-b0c2-391b-83ff-ecfd847295bd”,
“include-refresh-messages”: false }
]
}
Usage notes
Some of the information returned by this operation is also present in the response body of a successful
Logon request. This operation is intended to provide a superset and will contain all JMS topics available
to the API user including the two topics indicated in the Logon response.
In a synchronous operation, the Web Services API does not respond to the client application's request
until all of the processing associated with the request is complete (successfully or in error) and the API
can provide a final result status for the operation. The client application thread is typically blocked (not
running) during this time.
By contrast, in a function that operates asynchronously by starting a job, the Web Services API performs
just the minimal front-end validation and set up work needed to accept the request to perform the
indicated operation, and then quickly returns an HTTP 202 (Accepted) result to the client indicating that
the operation request has been started but is not yet finished. Along with the HTTP 202 (Accepted) result,
the client application is provided with a URI that represents the asynchronous job that is in progress. This
URI is of the form /api/jobs/{job-id}.
At any point after receiving the HTTP 202 (Accepted) result, the client application can invoke the Query
Job Status operation described in this section to determine if the job has ended or not. A job is
considered ended if it runs to completion or is canceled. If the job has not yet ended, the Query Job
Status request returns an indication that the job is still running or cancellation has been requested. If the
job has ended, the Query Job Status request returns an indication of how the job ended along with the
final status code, reason code and result data associated with the now-finished asynchronous processing.
Once a job ends, job status is retained by the HMC for a minimum of 4 hours to allow the client
application time to retrieve the results, but this status and results are not held indefinitely.
Since the major reason an API operation is structured to be asynchronous is that it will take significant
time to complete, very frequent polling for completion via calls to Query Job Status can lead to
significant unproductive use of client application and HMC resources. In order to eliminate the need to
poll at all, the Web Services API also provides asynchronous notifications of job completion or
cancellation via its JMS notification capability. IBM recommends that client applications use this
notification facility to determine when a job has ended rather than polling. See “Job completion
notification” on page 54 for details on this notification mechanism.
If it is not practical for a client application to use asynchronous notification of job completion, the
application should introduce elapsed-time delays between successive Query Job Status requests to poll
the current job status in order to reduce unproductive use of resources.
In this request, the URI variable {job-id} is the identifier of an asynchronous job associated with the API
user, as returned in the response of the operation that initiated the job.
The values provided here and their meaning depend on the particular action
that is being performed asynchronously. The description of these values is
provided as part of the description or the operation that initiated the
asynchronous job.
job-results Object; A nested object that provides results for the job
Field
provided This file is provided only if the status field is set to "complete" or "canceled"
only if and the asynchronous operation is documented to provide job results. If the
status is status field is set to some other value, or the asynchronous operation
"complete" provides no result information (beyond the job status and reason codes) then
or this field is omitted.
"canceled"
The structure of the nested object provided by this field and its meaning
depends on the particular action that is being performed asynchronously.
The description of this object's structure is provided as part of the
description of the operation that initiated the asynchronous job.
Description
The Query Job Status operation returns the status associated with an asynchronous job.
If the job designated by the URI is still running, the operation sets the status field in the response body
to "running" and provides no other information about the job. If cancellation has been requested for the
job designated by the URI but the cancellation action has not yet caused the job to end, the operation sets
the status field in the response body to "cancel-pending" and provides no other information about the
job. The client application may repeat the query at a later time, but should avoid frequent polling since
that can lead to unproductive use of client and HMC resources. In order to eliminate the need to poll at
all, the client application can (and should) use the asynchronous notifications facility provided by the API
to receive notification that the job has ended via a JMS-based message. See “Job completion notification”
on page 54 for details on this notification mechanism.
If the job is complete, the operation sets the status field in the response body to "complete" and provides
the other completion-related fields defined in the response body contents section above to report the
results to the client application. If the job's normal execution sequence was interrupted by a cancel action,
the operation sets the status field in the response body to "canceled" and provides the other related fields
defined in the “Response body contents” on page 81 to report the results to the client application. Once a
job ends, job status is retained by the HMC for a minimum of 4 hours to allow the client application time
to retrieve the results, but this status and results are not held indefinitely.
If the URI does not designate a job associated with the API user, HTTP status code 404 (Not Found) is
returned to the client.
Authorization requirements
This operation has the following authorization requirement:
v The job URI must designated an asynchronous job associated with the API user.
The following HTTP status codes are returned for the indicated operation-specific errors, and the
response body is a standard error response body providing the reason code indicated and associated
error message.
Additional standard status and reason codes can be returned, as described in Chapter 3, “Invoking API
operations,” on page 35.
200 OK
server: zSeries management console API web server / 1.0
cache-control: no-cache
date: Wed, 16 Nov 2011 18:19:35 GMT
content-type: application/json;charset=UTF-8
content-length: 63
{
"job-reason-code": 0,
"job-status-code": 200,
"status": "complete"
}
In this request, the URI variable {job-id} is the identifier of an asynchronous job associated with the API
user, as provided by the operation that initiated the job.
Description
The Delete Completed Job Status operation deletes the job status and results associated with a job that
has ended.
If the job designated by the request URI has completed or has been canceled, its ending status and results
are deleted from the HMC and status code 204 (No Content) is returned to the client.
If the job has not yet ended (i.e. is still running, or cancellation has been requested but is still pending),
the operation fails and HTTP status code 409 (Conflict) is returned to the client.
If the URI does not designate a job associated with the API user, or if the job's status has already been
deleted (either explicitly, or due to expiration of the status retention interval), HTTP status code 404 (Not
Found) is returned to the client.
Authorization requirements
This operation has the following authorization requirement:
v The job URI must designate an asynchronous job associated with the API user.
The following HTTP status codes are returned for the indicated operation-specific errors, and the
response body is a standard error response body providing the reason code indicated and associated
error message.
Additional standard status and reason codes can be returned, as described in Chapter 3, “Invoking API
operations,” on page 35.
Usage notes
v This operation is defined to operate only on jobs that have ended, i.e. have a status field with value
"complete" or "canceled". As a result, this operation cannot be used to cancel an in-progress
asynchronous operation. See “Cancel Job” for information pertaining to job cancellation.
v Once an asynchronous job has ended, job status is retained by the HMC for a minimum of 4 hours to
allow the client application time to retrieve the results, but this status and results are not held
indefinitely. At the expiration of the retention interval, job status is deleted as if the Delete Completed
Job Status operation were called.
204 No Content
date: Wed, 16 Nov 2011 18:19:35 GMT
server: zSeries management console API web server / 1.0
cache-control: no-cache
Cancel Job
The Cancel Job operation attempts to cancel an asynchronous job.
In this request, the URI variable {job-id} is the identifier of an asynchronous job associated with the API
user, as provided by the operation that initiated the job.
Description
The Cancel Job operation attempts to cancel the specified job. The specific nature of the asynchronous job
and its current state of execution when the request is received can affect the success of the cancellation
action.
Not all asynchronous jobs support job cancellation. If a particular type of job supports cancellation, the
description of the operation that initiates that type of job will explicitly specify that cancellation is
supported and may describe other cancellation characteristics as well. If the description of the operation
that initiates that type of job does not specify that cancellation is supported, then cancellation of that type
of job is not possible.
If the specified job exists, but is of a type that does not support cancellation, status code 404 (Not Found)
is returned and the job is allowed to continue processing without interruption.
If the specified job exists and has not yet completed (that is, the value of its status property is "running"),
the cancellation request is made pending for the job, the status of the job is changed to "cancel-pending",
and HTTP status code 202 (Accepted) is returned. The processing of the pending cancellation request
occurs asynchronously to the completion of the Cancel Job operation.
If the specified job exists and supports cancellation but either already has a cancellation request pending
or has already ended (that is, has a status property with values "cancel-pending", "complete" or
"canceled"), HTTP status code 409 (Conflict) is returned with a reason code that more specifically
indicates the particular error condition.
Once a cancellation request is made pending, the HMC will take steps to interrupt the processing of the
job in order to cause the processing to end as quickly as is possible considering the nature of the
processing done by the job. The conditions under which a running job can be interrupted vary depending
on the type of job. For some types of jobs the console may be able to interrupt the processing very
quickly while for others the console may be able to do so only as processing crosses selected interruption
points. Thus, acceptance of a cancellation request does not guarantee that the processing of the job will
either be immediately or eventually interrupted. As a consequence, it is possible that a job may proceed
to normal completion (end with a status of "complete") even after a cancellation request was accepted for
the job.
Authorization requirements
This operation has the following authorization requirement:
v The job URI must designate an asynchronous job associated with the API user.
Additional standard status and reason codes can be returned, as described in Chapter 3, “Invoking API
operations,” on page 35.
202 Accepted
date: Wed, 10 June 2015 18:19:35 GMT
server: zSeries management console API web server / 1.0
cache-control: no-cache
<No response body>
The Inventory Service provides an efficient mechanism for retrieving identify and configuration
information about all of the manageable resource instances that are managed by zManager. It provides
this information in bulk form via a single request, and thus is expected to be a much more efficient
means of determining this information than walking the entire resource tree one object at a time. It is
anticipated that this service supports the requirements of a “discovery” phase of a client application that
is interested in configuration information about all resources managed by zManager.
The Metrics Service provides a mechanism to retrieve performance metric data for resources that are
managed by zManager. This data is captured periodically and buffered on the HMC. The data may
include snapshots of performance data at a moment in time, or accumulated performance data, or both,
as appropriate. This service is designed to support client applications that provide monitoring function
for zManager managed resources.
Inventory service
The Inventory Service is an API which allows the client application to fetch a list of ensemble resources
and their properties.
This service is intended to support clients that need to determine the inventory and properties of all of
the resources of the ensemble (or at least a large portion of those resources). Retrieving this information
in bulk form using this service is expected to be much more efficient than walking the resource tree one
object at a time using the object-oriented operations of the Web Services API.
The ability to filter the results to only certain classes of resources is provided.
A response to an inventory request is a series of JSON objects returned using HTTP chunked transfer
encoding. These objects will be in a format specified in the corresponding resource class's inventory
service data sections.
Resources returned are those to which the API client has object-level authorization.
Get Inventory
The Get Inventory operation fetches ensemble resources and associated properties.
Description
The Get Inventory operation returns information on ensemble resources and associated properties.
A resource is included in the response if it matches any one of the list of resource classes in the request
body. Specifying a category is equivalent to specifying its member classes. If a class is repeated on the
request, either explicitly or effectively via categories, the operation will behave as if the class were only
specified once. If no resources are specified in the request body, all resources are returned. The inclusion
of a resource may cause objects of certain related classes to also be included in the response. See the
resource's Inventory Service Data section for the information about which, if any, related classes will be
included.
Furthermore, a resource is included in the response only if the API user has object-access permission for
that resource. If an HMC is a manager of a resource but the API user does not have permission to it, that
resource is simply omitted from the response. A success status code is still returned.
If the HMC does not manage any resources to which the user has access, or if no resources are found that
match the request body specification, an empty response is returned with a 204 (No Content) status code.
In addition to objects for inventoried resources, the response may include objects for resources whose
URIs could be determined, but whose properties could not, for some reason, be obtained. Rather than
treat these resources as completely non-inventoried and omit them, the URI and an error reason are
returned.
The Get Inventory implementation may choose to limit the number of simultaneous in-process inventory
requests. If such a limit is reached, further requests will return an HTTP 503 (Service Unavailable) error
status code until previous requests complete and the number of in-process inventory requests falls back
below the limit.
Authorization requirements
This operation has the following authorization requirement:
v Object-access permission to any object to be included in the result.
The following HTTP status codes are returned for the indicated errors, and the response body is a
standard error response body providing the reason code indicated and associated error message.
Additional standard status and reason codes can be returned, as described in Chapter 3, “Invoking API
operations,” on page 35.
Usage notes
The Get Inventory results represent a snapshot of inventory results as viewed from the HMC. The actual
inventory can change, even as the results are being streamed back to the API client. Therefore, if the
client wishes to stay informed about changes to the inventory and not risk missing any inventory
changes, it should use the API event mechanisms to subscribe to inventory-related events before even
issuing a Get Inventory request.
The Get Inventory results do not reflect all properties at a single moment in time. During the overall
inventory collection process multiple resource's states and other properties may change. Therefore, states
(or other properties) among two or more resources that might normally be expected to match (or have
some other expected relationship) at one moment in time may instead return apparently inconsistent
results in the Get Inventory response.
200 OK
transfer-encoding: chunked
server: zSeries management console API web server / 1.0
cache-control: no-cache
date: Wed, 07 Dec 2011 03:42:15 GMT
content-type: application/json;charset=UTF-8
[
{
"acceptable-status": [
"alternate-communicating"
],
"class": "ensemble",
"cpu-perf-mgmt-enabled-power-vm": false,
"cpu-perf-mgmt-enabled-zvm": false,
"description": "long ensemble name",
"has-unacceptable-status": false,
"is-locked": false,
"load-balancing-enabled": false,
"load-balancing-ip-addresses": [],
"load-balancing-port": 3860,
"mac-prefix": "02:00:00:00:00:00",
"management-enablement-level": "automate",
"name": "HMC_R74_ENSEMBLE",
"object-id": "1f7ffb02-de39-11e0-88bd-00215e67351a",
"object-uri": "/api/ensembles/1f7ffb02-de39-11e0-88bd-00215e67351a",
"parent": null,
"power-consumption": 24474,
"power-rating": 65644,
"reserved-mac-address-prefixes": [],
"status": "alternate-communicating",
"unique-local-unified-prefix": "fd2c:34be:df2:0:0:0:0:0"
},
{
"class": "node",
"element-uri": "/api/ensembles/1f7ffb02-de39-11e0-88bd-00215e67351a/nodes/
9ba3b1aa-693a-3408-80ae-9d0808147ffa",
"member": "/api/cpcs/9ba3b1aa-693a-3408-80ae-9d0808147ffa",
"parent": "/api/ensembles/1f7ffb02-de39-11e0-88bd-00215e67351a",
"type": "cpc"
}
]
Metrics service
The zEnterprise (or later) Ensembles, Central Processing Complexes (CPCs), and their associated system
resources are instrumented at key points to collect performance and utilization data. The data is
forwarded by the metric data providers to a buffer on the HMC where it is made available to consumers
of this API.
The data collection instrumentation organizes and formalizes the data it collects into a series of named
metric groups. The Metrics Service API allows specification of the metric groups the client wishes to
query. The API returns some information about the format of the metrics that are being fetched.
Specifically, a structure called a metrics context is associated with any metrics retrieval, and that structure
includes metric group names, individual metric field names, and the associated individual metric data
types.
The full metric group documentation, however, including descriptions of the data collected and the
frequency of collection, can be found in Chapter 9, “Metric groups,” on page 103.
See the Get Metrics “Response body contents” on page 98 for further
information on these metric types.
Description
This operation establishes a context for future Get Metrics operations that is valid for the current API
session. Because of the high frequency of invocation and large volume of data expected, the metrics
service interface has been structured to optimize the transmission of data on each Get Metrics request.
Thus, rather than use a self-describing representation for the results returned by each Get Metrics, the
metrics service instead provides the descriptive metadata as results from this Create Metrics Context
operation. It then returns the metric data in a compact format each time Get Metrics is invoked.
At a high level, the Create Metrics Context response communicates two primary pieces of information
back to the client. One is the metrics-context-uri, which includes the ID of the metrics context that must
be referenced on future GETs to associate them with this context. The other is the metric-groups
description data. That data provides the metric type and metric name information for each metric group
whose metrics may be returned by this context. This may be useful to the client for determining how to
parse future Get Metrics responses for this context, although the full documentation on metric group
formats is found in Chapter 9, “Metric groups,” on page 103.
The anticipated-frequency-seconds specification which is required on the request body tells the metrics
service how frequently the client anticipates issuing Get Metrics requests against this context. The metrics
service may take no action based on this frequency, but reserves the right to invalidate and delete the
metrics context if 4 times the specified frequency passes without receipt of an associated Get Metrics
operation.
Optional result filtering is provided by field metric-groups on the request body. If a non-empty
metric-groups arrays is specified, then future Get Metrics operations associated with this context will
return only groups with names listed there.
Additionally, if a metric-groups array of group names is specified on the Create Metrics Context request,
then the response JSON document will include only matching metric-group-info fields. If one or more
names in the metric-groups array does not represent a metric group registered on the HMC, then HTTP
error status code 400 (Bad Request) will be returned and the context will not be established.
Although the POST response fully describes and guarantees the ordering of metric-infos within a metric
group for that context, as a matter of policy the HMC will further guarantee that, for a given metric
group, any additions of new metrics to the group will be to the end of the list for the group.
Authorization requirements
There are no authorization restrictions on creating a metrics context. However any future metric results
returned by Get Metrics queries against that context will be restricted to managed objects accessible
according to the permissions associated with the API session under which the metrics context was
established.
Note that there is no indication via an HTTP status or reason code that future results may be restricted
due to authorization restrictions. Rather, success is indicated and future Get Metrics responses behave
just as if any restricted objects did not exist.
The following HTTP status codes are returned for the indicated errors, and the response body is a
standard error response body providing the reason code indicated and associated error message.
Additional standard status and reason codes can be returned, as described in Chapter 3, “Invoking API
operations,” on page 35.
201 Created
transfer-encoding: chunked
server: zSeries management console API web server / 1.0
location: /api/services/metrics/context/1
cache-control: no-cache
date: Wed, 07 Dec 2011 04:01:59 GMT
content-type: application/json;charset=UTF-8
{
"metric-group-infos": [
{
"group-name": "virtualization-host-cpu-memory-usage",
"metric-infos": [
{
"metric-name": "processor-usage",
"metric-type": "integer-metric"
},
{
"metric-name": "memory-usage",
"metric-type": "integer-metric"
},
{
"metric-name": "network-usage",
"metric-type": "integer-metric"
},
{
"metric-name": "storage-rate",
"metric-type": "integer-metric"
},
{
"metric-name": "physical-cpu-time",
"metric-type": "long-metric"
},
{
"metric-name": "memory-used",
"metric-type": "integer-metric"
},
{
"metric-name": "virt-host-management-cpu-time-used",
"metric-type": "long-metric"
},
{
"metric-name": "virt-host-page-ins",
"metric-type": "long-metric"
},
{
"metric-name": "virt-host-page-outs",
"metric-type": "long-metric"
}
]
}
],
"metrics-context-uri": "/api/services/metrics/context/1"
}
Get Metrics
The Get Metrics operation retrieves the current set of metrics associated with an established metrics
context.
In this request, the URI variable {metrics-context-id} is the identifier of the metrics context object for which
metrics are to be obtained.
Because performance and scalability are a major concern for the metrics service, the response body is in a
terse custom format, rather than being presented as a JSON object. The data type, name, and order
information required to parse and interpret the response is provided in a previous Create Metrics
Context response.
Using a partial Extended Backus-Naur Form, where a comma (,) indicates concatenation and curly braces
({}) indicate 0 or more repetitions, we can express the format this way:
MetricsResponse = {MetricsGroup},NL
MetricsGroup = MetricsGroupName,NL,{ObjectValues},NL
MetricsGroupName = StringValue
NL = “\n”
ObjectValues = ObjectURI,NL,Timestamp,NL,ValueRows,NL
Timestamp = LongValue
ObjectURI = StringValue
ValueRows = ValueRow,{ValueRow}
ValueRow = Value,{“,”,Value},NL
The MetricsGroupName is the name of the metrics group, as a StringValue as defined below.
The Timestamp is the time when the associated values were buffered (i.e. “cached”) on the HMC. It is
expressed as an “epoch” timestamp: a LongValue giving the milliseconds since January 1, 1970, 00:00:00
GMT (just as is expected, for example, by the constructor of a java.util.Date object).
The ObjectURI is the canonical URI of the object, as a StringValue as defined below.
All the varieties of Value will be represented as strings according to the following rules and limits:
v BooleanValue
– Either the string true or the string false.
v ByteValue
– A string representation of a signed decimal integer in the range -128 to 127 (i.e. the range of a
signed 8 bit integer).
v DoubleValue
– A string representation of a 64 bit IEEE 754 floating point number in the range +/-4.9E-324 to
+/-3.4028235E+38. Note that, although IEEE 754 provides for representations of positive or negative
Infinity and NaN, such values are not allowed in the metric data feed and thus will not appear in a
metrics service result. For results with a magnitude greater than or equal to 10^-3 and less than
10^7, the string representation will be a dotted decimal (e.g. 1.7, -32.467). For results with
magnitudes outside that range, the string representation will be computerized scientific notation
(e.g. -4.23E127).
v LongValue
– A string representation of a signed decimal integer in the range -9223372036854775808 to
9223372036854775807 (i.e. the range of a signed 64 bit integer).
v IntegerValue
– A string representation of a signed decimal integer in the range -2147483648 to 2147483647 (i.e. the
range of a signed 32 bit integer).
v ShortValue
– A string representation of a signed decimal integer in the range -32768 to 32767 (i.e. the range of a
signed 16 bit integer).
v StringValue
– A string starting with a double-quote, ending with a double-quote, and with any embedded
double-quotes or backslashes escaped with a preceding backslash (i.e. escaped as \" and \\).
Description
On successful execution status code 200 (OK) is returned, with a response body as described above.
The URI path on the request must designate an existing metrics context for the current API session. If the
URI designates an unrecognized context for the API session, then status code 404 (Not Found) is
returned.
Note that under some circumstances the metrics service may delete a metrics context, requiring the client
to establish a new context in order to resume metric retrievals. For example, the metrics service may
choose to delete a given context if the time since the last associated Get Metrics request has exceeded 4
times the anticipated frequency specified when the context was created. In addition, the client may
explicitly delete a metrics context with the Delete Metrics Context operation. If the URI designates a
context that was once valid for the current API session, but no longer is, then status code 409 (Conflict) is
returned.
Authorization requirements
Only metrics referencing managed objects accessible according to the permissions associated with the API
session under which the Get Metrics is being issued will be returned. Note that there is no indication via
an HTTP status or reason code that results may have been restricted due to authorization restrictions.
Rather, success is indicated and the responses are just as if any restricted objects did not exist.
The following HTTP status codes are returned for the indicated errors, and the response body is a
standard error response body providing the reason code indicated and associated error message.
Additional standard status and reason codes can be returned, as described in Chapter 3, “Invoking API
operations,” on page 35.
Usage notes
v Repeated metrics retrievals, even consecutive retrievals against a common metrics context, will not
necessarily yield metrics for the exact same set of objects. Objects can come and go from the system's
inventory due to various circumstances unrelated to the metrics data. The metrics feed for a particular
metric group may stop for some reason, and the metrics data may therefore expire from the HMC's
buffer (i.e. the metrics cache). The access permissions of a user associated with a metrics context may
change, giving the user access to a smaller or larger set of objects (and therefore, perhaps, a smaller or
larger set of metrics data).
v It is possible that there may be no metrics to return for one or more metric groups associated with the
specified metrics context. For example, data for a metric group may not be buffered on the HMC at the
time of the Get Metrics invocation, or authorization restrictions related to objects in a requested metric
group may prevent any metrics for that group from being returned. If there is no metric data to be
returned for a metric group name, then that group name does not appear in the response body.
Furthermore, if there is no metric data to return for any metric group name associated with a context,
the response body format above specifies that the body will consist only of a single newline character.
This is nonetheless considered a successful response. In other words, an HTTP status code 200 (OK)
will still be returned with such a response.
200 OK
transfer-encoding: chunked
server: zSeries management console API web server / 1.0
cache-control: no-cache
date: Wed, 07 Dec 2011 04:38:20 GMT
content-type: application/vnd.ibm-z-zmanager-metrics;charset=UTF-8
"virtualization-host-cpu-memory-usage"
"/api/virtualization-hosts/2f7bf364-03f8-11e1-8eda-001f163805d8"
1323232689283
0,14,0,3,2942386000,4608,2942386000,0,0
"/api/virtualization-hosts/c14cde64-03e6-11e1-baf3-001f163805d8"
1323232689283
0,64,-1,-1,76028000,1311,-1,-1,-1
"/api/virtualization-hosts/5f805d28-03e6-11e1-baf3-001f163805d8"
1323232689283
3,72,-1,-1,1731046000,1485,-1,-1,-1
"/api/virtualization-hosts/634fa694-03f4-11e1-881f-001f163805d8"
1323232689283
4,36,-1,-1,55878116000,17920,-1,-1,-1
<3 blank lines here (consecutive new lines)>
In this request, the URI variable {metrics-context-id} is the identifier of the metrics context object for which
metrics are to be obtained.
Description
This operation deletes the metrics context ID. That is, it disassociates it from the API session and cleans
up any data associated with it. Further Get Metrics requests against this context will result in status code
409 (Conflict).
The URI path must designate an existing valid metrics context for the current API session. If the URI
path represents an already invalidated metrics context for the current API session, status code 409
(Conflict) is returned. If the URI path does not represent a recognized metrics context for the current API
session, status code 404 (Not Found) is returned.
Authorization requirements
There are no authorization requirements for deleting a metrics context. The association with the API
session is implicit, so there is no possibility of deleting a context that was created by a different API
session. In other words, only the session which created a metrics context can delete it.
The following HTTP status codes are returned for the indicated errors, and the response body is a
standard error response body providing the reason code indicated and associated error message.
Additional standard status and reason codes can be returned, as described in Chapter 3, “Invoking API
operations,” on page 35.
204 No Content
date: Wed, 07 Dec 2011 04:01:59 GMT
server: zSeries management console API web server / 1.0
cache-control: no-cache
The contents of metric groups may be extended in future versions of this API. If a metric group is
extended, new metric fields will be added to the end so as to not alter the relative positions of any of the
existing fields. Such new fields would not be understood by a client application designed for an earlier
version of the API. Therefore, applications must be developed using the philosophy of "ignore what you
don't understand/expect" when processing metric group data in order to tolerate such possible future
extensions. See “Compatibility” on page 6 for more discussion on API compatibility principles.
In order to provide programmatic access to this same data, the utilization and environment data that is
displayed on the user interface is also provided via the Metrics Service in the following metric groups.
The following metrics are provided in each entry of this metric group:
Table 26. BladeCenter temperature and power metric group
Pos Metric field name Type Units Description
1 temperature-celsius Double Degrees The ambient temperature
Celsius
2 power-consumption-watts Integer Watts The power consumption
Blade power
This metric group reports power consumption for each blade on the system.
Metric Group Name
"blade-power-consumption"
Collection Interval
15 seconds
Applicable Managed Object Class
"blade"
The following metrics are provided in each entry of this metric group:
Table 27. Blade power metric group
Pos Metric field name Type Units Description
1 power-consumption-watts Integer Watts The power consumption
Channels
This metric group reports the channel usage for each channel on the system. An instance of this metric
group is created for each channel of a CPC.
Metric Group Name
"channel-usage"
Collection Interval
15 seconds
Applicable Managed Object Class
"cpc"
The following metrics are provided in each entry of this metric group:
Table 28. Channels metric group
Pos Metric field name Type Units Description
1 channel-name String — The name of the channel in the form CSS.Chpid
2 shared-channel Boolean — True if the channel is shared among logical partitions, and
false if it is not
3 logical-partition-name String — For channel types for which logical partition names are
available, the name of the owning logical partition or the
value "shared" if the channel is shared. For other channel
types for which the name is not available (for example,
coupling channels), the value is always an empty string.
4 channel-usage Integer % The channel percent usage (0 – 100%)
CPC overview
This metric group reports the aggregated processor usage and channel usage, the ambient temperature,
and total system power consumption for each system. The cpc-processor-usage is the average of the
percentages of processing capacity for all the physical processors in the CPC. The channel-usage is the
average of the percentages of I/O capacity for all the channels and adapters in the CPC.
Metric Group Name
"cpc-usage-overview"
Collection Interval
15 seconds
The following metrics are provided in each entry of this metric group:
Table 29. CPC overview metric group
Pos Metric field name Type Units Description
1 cpc-processor-usage Integer % The processor percent usage.
2 channel-usage Integer % The channel percent usage.
3 power-consumption-watts Integer Watts The total system power consumption.
4 temperature-celsius Double Degrees The ambient temperature.
Celsius
5 cp-shared-processor-usage Integer % The processor percent usage for all CP shared processors.
Set to -1 if there are no processors of this type.
6 cp-dedicated-processor-usage Integer % The processor percent usage for all CP dedicated
processors. Set to -1 if there are no processors of this type.
7 ifl-shared-processor-usage Integer % The processor percent usage for all IFL shared processors.
Set to -1 if there are no processors of this type.
8 ifl-dedicated-processor-usage Integer % The processor percent usage for all IFL dedicated
processors. Set to -1 if there are no processors of this type.
9 icf-shared-processor-usage Integer % The processor percent usage for all ICF shared processors.
Set to -1 if there are no processors of this type.
10 icf-dedicated-processor-usage Integer % The processor percent usage for all ICF dedicated
processors. Set to -1 if there are no processors of this type.
11 iip-shared-processor-usage Integer % The processor percent usage for all zIIP shared processors.
Set to -1 if there are no processors of this type.
12 iip-dedicated-processor-usage Integer % The processor percent usage for all zIIP dedicated
processors. Set to -1 if there are no processors of this type.
13 aap-shared-processor-usage Integer % The processor percent usage for all zAAP shared
processors. Set to -1 if there are no processors of this type.
14 aap-dedicated-processor- Integer % The processor percent usage for all zAAP dedicated
usage processors. Set to -1 if there are no processors of this type.
15 all-shared-processor-usage Integer % The processor percent usage for all shared processors. Set
to -1 if there are no processors of this type.
16 all-dedicated-processor-usage Integer % The processor percent usage for all dedicated processors.
Set to -1 if there are no processors of this type.
17 cp-all-processor-usage Integer % The processor percent usage for all CP processors. Set to -1
if there are no processors of this type.
18 ifl-all-processor-usage Integer % The processor percent usage for all IFL processors. Set to -1
if there are no processors of this type.
19 icf-all-processor-usage Integer % The processor percent usage for all ICF processors. Set to -1
if there are no processors of this type.
20 iip-all-processor-usage Integer % The processor percent usage for all zIIP processors. Set to
-1 if there are no processors of this type.
| 21 cbp-shared-processor-usage Integer % The processor percent usage for all CBP shared processors.
| Set to -1 if there are no processors of this type.
| 22 cbp-dedicated-processor- Integer % The processor percent usage for all CBP dedicated
| usage processors. Set to -1 if there are no processors of this type
| 23 cbp-all-processor-usage Integer % The processor percent usage for all CBP processors. Set to
| -1 if there are no processors of this type.
The following metrics are provided in each entry of this metric group:
Table 30. zBX node overview metric group
Pos Metric field name Type Units Description
1 processor-usage Integer % The average percent usage of all processors.
2 io-usage Integer % The average I/O percent usage for all blades that support
network I/O.
3 power-consumption-watts Integer Watts The total system power consumption. This includes the
zBX node and all its blades and BladeCenter chassis.
4 temperature-celsius Double Degrees The average ambient temperature of all BladeCenter
Celsius chassis.
The following metrics are provided in each entry of this metric group:
Table 31. DPM system overview metric group
Pos Metric field name Type Units Description
1 processor-usage Integer % The processor percent usage.
2 network-usage Integer % The network percent usage. Set to -1 if there are no
adapters of this type.
3 storage-usage Integer % The storage percent usage. Set to -1 if there are no adapters
of this type.
4 accelerator-usage Integer % The accelerator percent usage. Set to -1 if there are no
adapters of this type.
Logical partitions
This metric group reports the processor usage and z/VM paging rate for each active logical partition (aka
Image, LPAR Image, Zone, PR/SM™ virtual server) on the system.
Metric Group Name
"logical-partition-usage"
Collection Interval
15 seconds
Applicable Managed Object Class
"logical-partition"
The following metrics are provided in each entry of this metric group:
Table 32. Logical partitions metric group
Pos Metric field name Type Units Description
1 processor-usage Integer % The processor percent usage.
2 zvm-paging-rate Integer Pages The z/VM paging rate. Only returned for logical partitions
Per running z/VM level 6.1 or higher that have the appropriate
Second agent running in them.
3 cp-processor-usage Integer % The processor percent usage for all CP processors. Set to -1
if there are no processors of this type.
4 ifl-processor-usage Integer % The processor percent usage for all IFL processors. Set to -1
if there are no processors of this type.
5 icf-processor-usage Integer % The processor percent usage for all ICF processors. Set to -1
if there are no processors of this type.
6 iip-processor-usage Integer % The processor percent usage for all IIP processors. Set to -1
if there are no processors of this type.
| 7 cbp-processor-usage Integer % The processor percent usage for all CBP processors. Set to -1
| if there are no processors of this type.
Partitions
This metric group reports the processor usage, network usage, storage usage, accelerator usage, and
crypto usage for each active partition on a DPM enabled system.
Metric Group Name
"partition-usage"
Collection Interval
15 seconds
Applicable Managed Object Class
"partition"
The following metrics are provided in each entry of this metric group:
Table 33. Partitions metric group
Pos Metric field name Type Units Description
1 processor-usage Integer % The processor percent usage.
2 network-usage Integer % The network percent usage. Set to -1 if there are no
adapters of this type.
3 storage-usage Integer % The storage percent usage. Set to -1 if there are no
adapters of this type.
4 accelerator-usage Integer % The accelerator percent usage. Set to -1 if there are no
adapters of this type.
5 crypto-usage Integer % The crypto percent usage. Set to -1 if there are no
adapters of this type.
The following metrics are provided in each entry of this metric group:
Table 34. zCPC environmentals and power metric group
Pos Metric field name Type Units Description
1 temperature-celsius Double Degrees The ambient temperature
Celsius
2 humidity Integer % The relative humidity
3 dew-point-celsius Double Degrees The dew point
Celsius
4 power-consumption-watts Integer Watts The power consumption in watts
5 heat-load Integer Btu/ The total heat load of the system (heat load forced-air +
hour heat load water)
6 heat-load-forced-air Integer Btu/ The heat load covered by forced-air
hour
zCPC processors
This metric group reports the processor usage for each physical zCPC processor on the system. This
includes the System Assist Processors (SAPs) and does not include blades. An instance of this metric
group is created for each processor of a CPC.
Metric Group Name
"zcpc-processor-usage"
Collection Interval
15 seconds
Applicable Managed Object Class
"cpc"
The following metrics are provided in each entry of this metric group:
Table 35. zCPC processors metric group
Pos Metric field name Type Units Description
1 processor-name String The name of the zCPC processor in the form
processor-type + processor ID. For example, IFL01.
2 processor-type String The type of zCPC processor. The valid types are:
| "cp", "ifl", "icf", "iip", "aap", "sap" and "cbp". The
valid types for DPM enabled systems are: "cp",
"ifl", and "sap".
3 processor-usage Integer % The processor percent usage.
4 smt-usage Integer % The percentage of time the processor is running in
simultaneous multithreading (SMT) mode. Set to -1
when SMT mode is not supported by the CPC.
5 thread-0-usage Integer % The percent usage of thread 0 when the processor
is running in simultaneous multithreading (SMT)
mode. Set to -1 when SMT mode is not supported
by the CPC.
6 thread-1-usage Integer % The percent usage of thread 1 when the processor
is running in simultaneous multithreading (SMT)
mode. Set to -1 when SMT mode is not supported
by the CPC.
The following metrics are provided in each entry of this metric group:
Table 36. Blade CPU and memory metric group
Pos Metric field name Type Units Description
1 processor-usage Integer % Processor utilization percentage (0-100%). Value for
current interval. If the value is not currently available,
for example if the blade is powered off, -1 is provided.
2 memory-usage Integer % Memory utilization percentage (0-100%). Value for
current interval. If the value is not currently available,
for example if the blade is powered off, -1 is provided.
Cryptos
This metric group reports the adapter usage for each crypto on the system. An instance of this metric
group is created for each crypto adapter. This metric group is not used for a DPM system. For DPM,
crypto adapters are reported in the Adapters metric group. See “Adapters.”
Metric Group Name
"crypto-usage"
Collection Interval
15 seconds
Applicable Managed Object Class
"cpc"
The following metrics are provided in each entry of this metric group:
Table 37. Crypto metric group
Pos Metric field name Type Units Description
1 channel-id String The physical channel identifier of the crypto
2 crypto-id String The crypto identifier of the crypto, decimal 0-15
3 adapter-usage Integer % The adapter percent usage (0-100%)
Adapters
This metric group reports the adapter usage for each adapter on the DPM enabled system. An instance of
this metric group is created for each adapter.
Metric Group Name
"adapter-usage"
Collection Interval
15 seconds
Applicable Managed Object Class
"adapter"
The following metrics are provided in each entry of this metric group:
Table 38. Adapters metric group
Pos Metric field name Type Units Description
1 adapter-usage Integer % The adapter percent usage
The following metrics are provided in each entry of this metric group:
Table 39. Flash memory adapters metric group
Pos Metric field name Type Units Description
1 channel-id String The physical channel identifier of the Flash memory
adapter
2 adapter-usage Integer % The adapter percent usage (0-100%)
RoCE adapters
This metric group reports the adapter usage for each RoCE (10GbE RoCE) adapter on the system. An
instance of this metric group is created for each RoCE adapter of the CPC.
Metric Group Name
"roce-usage"
Collection Interval
15 seconds
Applicable Managed Object Class
"cpc"
The following metrics are provided in each entry of this metric group:
Table 40. RoCE adapters metric group
Pos Metric field name Type Units Description
1 channel-id String The physical channel identifier of the RoCE adapter
2 adapter-usage Integer % The adapter percent usage (0-100%)
Ensemble power
This metric group reports the consumption for the Ensemble. An instance of this metric group is created
for the Ensemble, if one exists on the HMC.
Metric Group Name
"ensemble-power"
Collection Interval
15 seconds
Applicable Managed Object Class
"ensemble"
The following metrics are provided in each entry of this metric group:
Table 41. Ensemble power metric group
Pos Metric field name Type Units Description
1 power-consumption-watts Integer Watts The total power consumption of all members of the
Ensemble.
The following metrics are provided in each entry of this metric group:
Table 42. Virtual server CPU and memory metric group
Pos Metric field name Type Units Description
1 processor-usage Integer % Physical utilization percentage (0-100%). Values
for current interval.
2 memory-usage Integer % Memory usage percentage (0-100%). Value for
current interval.
3 up-time Long Microseconds Time since the virtual server was started. Not
supported for PR/SM, will be reported as -1.
4 physical-cpu-time Long Microseconds Physical CPU time used by virtual server. This
time accumulates until the virtualization host or
the support element is restarted.
5 virt-host-cpu-delay-time Long Microseconds The virtual processors were ready to run but not
dispatched on physical processors due to
competition with other virtual servers. This time
accumulates until the virtualization host or the
support element is restarted.Not supported for
PR/SM, will be reported as -1.
6 elapsed-time Long Microseconds Elapsed time over which physical-cpu-time and
virt-host-cpu-delay-time have accumulated.
7 cpu-allocation Integer Share for z/VM Amount of CPU resource allocated to virtual
and x Hyp, server. zManager adjusts this value when virtual
physical CPU server management is enabled. For PowerVM,
equivalent for this is the processing units setting. For z/VM
PowerVM, and and x Hyp, this is the CPU share value. For
processing PS/SM this is the general purpose processing
weight for weight setting. Not supported for virtual servers
PR/SM with dedicated virtual processors, will be
reported as -1.
Table 42. Virtual server CPU and memory metric group (continued)
Pos Metric field name Type Units Description
8 current-physical-memory- Integer Megabytes Amount of physical memory currently used by
used virtual server.
9 os-total-cpu-using-samples1 Long Count Count of samples where virtual CPUs were seen
in use. Will be 0 if GPMP not running on virtual
server.
10 os-total-cpu-delay-samples1 Long Count Count of samples where threads were delayed
waiting for virtual CPUs. Will be 0 if GPMP not
running on virtual server.
11 os-total-paging-delay- Long Count Count of samples where threads were delayed
samples1 waiting for page faults to be resolved. Will be 0
if GPMP not running on virtual server.
12 os-total-io-delay-sample1 Long Count Count of samples where threads were delayed
waiting for I/O to complete. Will be 0 if GPMP
not running on virtual server.
13 os-sampling-rate Integer Samples per Number of times per second OS samples are
second collected. Will be 0 if GPMP not running on
virtual server.
14 os-total-other-samples1 Long Count Count of samples where processes where in a
state not included in the other sample counts.
15 gpmp-active Boolean True if the GPMP was active on the virtual
server at the end of the interval. False otherwise.
16 other-time Long Microseconds Sum of time any of the virtual processors of the
virtual server where in a state other than
dispatched on physical processors, delayed, or
idle.
17 idle-time Long Microseconds Sum of the time any of the virtual processors of
the virtual server were idle.
18 virtual-cpu-count Integer Count Number of virtual processors defined for the
virtual server, totaled across all types
(dedicated/shared, CP/IFL/zIIP/zAAP)
Note:
1. On an interval basis the GPMP samples the state of OS threads. Each sampling interval the GPMP counts
the number of threads in various states. Each of these states represents a sample type. The sample types
are:
v CPU Using: Each sample represents a thread found actively running on a virtual processor
v CPU delay: Each sample represents a thread waiting to be dispatched on a virtual processor
v Page Delay: Each sample represents a thread waiting for a page fault to be resolved
v I/O Delay: Each sample represents a threads waiting for I/O to complete
v Other: Each sample represents processes that had no threads in one of the above states.
The GPMP keeps a running total for each sample type. These running totals are returned in the sample
metrics that are part of the virtual-server-cpu-memory-usage metrics group. The sampling interval is
returned in the os-sampling-rate metric.
The following metrics are provided in each entry of this metric group:
Table 43. Virtualization host CPU and memory metric group
Pos Metric field name Type Units Description
1 processor-usage Integer % Overall CPU utilization percentage for the
virtualization host (0-100%). Value for current
interval. For PR/SM only includes general
purpose processors.
2 memory-usage Integer % Memory usage percentage for the virtualization
host (0-100%). Value for current interval.
3 network-usage Integer % Network utilization percentage for the
virtualization host (0-100%). Value for current
interval. Not available for z/VM or PR/SM, will
be reported as -1.
4 storage-rate Integer Kbytes per sec Average Kbytes transferred to disk over interval.
Value for current interval. Not available for
z/VM or PR/SM, will be reported as -1.
5 physical-cpu-time Long Microseconds Physical CPU time used. Cumulative value.For
PR/SM only includes general purpose
processors.
6 memory-used Integer Mbytes Current memory in use by the virtualization
host.
7 virt-host-management-cpu-time- Long Microseconds CPU time used for virtualization host
used management. Cumulative value. Note for
PowerVM this is the CPU used by the VIOS
partition. For x Hyp this is the Linux system
mode CPU time. Currently not supported for
z/VM or PR/SM, will be reported as -1.
8 virt-host-page-ins Long Count Paging activity by the virtualization host to
support hypervisor management. Page reads
from paging space. Cumulative value. For
PowerVM this represents VIOS paging. For x
Hyp it is the base Linux paging. Currently not
supported for z/VM or PR/SM, will be reported
as -1.
9 virt-host-page-outs Long Count Paging activity by the virtualization host to
support hypervisor management. Page written to
paging space. Cumulative value. For PowerVM
this represents VIOS paging. For x Hyp it is the
base Linux paging. Currently not supported for
z/VM or PR/SM, will be reported as -1.
10 cp-cpu-time1 Long Microsecond CPU time accumulated by the general purpose
processors owned by the virtualization host.
Only supported for z/VM, will be reported as -1
for other hypervisor types.
11 ifl-cpu-time1 Long Microsecond CPU time accumulated by the IFL processors
owned by the virtualization host. Only
supported for z/VM, will be reported as -1 for
other virtualization host types.
Table 43. Virtualization host CPU and memory metric group (continued)
Pos Metric field name Type Units Description
1
12 zaap-cpu-time Long Microsecond CPU time accumulated by the zAAP processors
owned by the virtualization host. Only
supported for z/VM, will be reported as -1 for
other virtualization host types.
13 ziip-cpu-time1 Long Microsecond CPU time accumulated by the zIIP processors
owned by the virtualization host. Only
supported for z/VM, will be reported as -1 for
other virtualization host types.
14 icf-cpu-time1 Long Microsecond CPU time accumulated by the ICF processors
owned by the virtualization host. Only
supported for z/VM, will be reported as -1 for
other virtualization host types.
Table Notes:
1. Provided for virtualization hosts on CPCs with SE version 2.12.0 or later; metric not present for CPCs with
earlier SE versions.
The following metrics are provided in each entry of this metric group:
Table 44. Workload metrics group - service class data metric group
Pos Metric field name Type Units Description
1 policy-activation-time Long Timestamp Time of the last policy activation for this workload.
This is the last-activation-requested-date property
of the currently active policy.
2 service-class-name String — Name of service class
(1-64)
3 velocity-numerator Long Microseconds Time value used for numerator of velocity
calculation. Cumulative value since last policy
activation.
4 velocity-denominator Long Microseconds Time value used for denominator of velocity
calculation. Cumulative value since last policy
activation.
The network metrics provided at the virtualization host are the following:
v Virtualization host uplink metrics: Virtual network (i.e. per VLAN ID) metrics are not provided for
uplinks. . Metrics collected are provided on an interval. These metrics can be collected from the
Virtualization Host (vSwitch) Uplink Metric Group. Metrics for two types of uplinks are provide:
– Real Uplinks: These are metrics which are captured between the virtualization host or virtualization
host's vSwitch and the attached physical network interfaces. These metrics can show the bandwidth
that the virtualization host is contributing to the IEDN.
– Virtual Uplinks: These metrics are captured by these vSwitch ports which are not directly attached
to a physical vSwitch that attaches to the IEDN. The following describe the supported virtual
uplinks:
- An IQD-X chpid that is attached to a z/VM LPAR's vSwitch bridge port. The z/VM vSwitch
bridge port provides the uplink from the IQD-X vSwitch.
- A z/VM vSwitch virtual uplink. A virtual uplink connects a vSwitch to a z/VM virtual server. In
this case, traffic is forwarded to this server, which may be useful for packet collection for
debugging or analysis.
v Virtualization host by vSwitch by virtual network metrics: These metrics are captured between the
virtualization host and its virtual servers. In cases, such as z/VM, where a virtualization host has
multiple vSwitches, the metrics are captured by virtualization host by vSwitch by virtual network.
These metrics can be collected from the Virtualization Host (vSwitch) by Virtual Network Metric
Group.
v Network metrics from virtualization host for each attached virtual server's virtual network adapter by
virtual network (VLAN ID): These metrics can be collected from the Attached Virtual Servers Network
Adapter Metric Group.
In general, for the Virtualization Host by Virtual Network Metrics Group and the Attached Virtual
Servers Network Adapter Metric Group, the metrics are collected at the virtualization host level for the
attached virtual server virtual network adapter by virtual network (VLAN ID). The network metrics
collected at this level provide a view of the performance between the virtual switch and the virtual
server, with metrics such as bytes sent and bytes received. Other metrics such as packets dropped or
discarded can help to determine if problems are occurring. Metrics are collected and provided on an
interval, and each metric provided is the total cumulative value, and not a delta.
Providing metrics at the virtualization host's virtual network adapters provides a level of granularity that
allows for the consumer to aggregate these metrics. Use of these metrics along with configuration data
provided through the zManager external API allow the client application to determine resource utilization
relationships.
In the case of z/VM, there may be multiple uplink interfaces; therefore, multiple instances of this metric
group may be provided for a single z/VM virtualization host. This is also true for a PR/SM
virtualization host. For a PR/SM virtualization host, there may be multiple OSX's for which the uplink
information provides the metrics between the OSX and the physical network.
Metrics are collected and provided on an interval, and each metric provided is the total cumulative value,
and not a delta.
Metric Group Name
"network-virtualization-host-uplink"
Collection Interval
30 seconds
Applicable Managed Object Class
"virtualization-host"
The following metrics are provided in each entry of this metric group:
Table 45. Virtualization host (vSwitch) uplink metric group
Pos Metric field name Type Units Description
1 uplink-id String Name of the uplink interface.
Metrics are collected and provided on an interval, and each metric provided is the total cumulative value,
and not a delta.
Metric Group Name
"network-vswitch-by-virtual-network"
Collection Interval
30 seconds
Applicable Managed Object Class
"virtualization-host"
The following metrics are provided in each entry of this metric group:
Table 46. Virtualization host (vSwitch) by virtual network metric group
Pos Metric field name Type Units Description
1 vswitch-name String Name of the vSwitch. In the case where the vSwitch is
not uniquely identified for a virtual host then this will
be “N/A”.
Table 46. Virtualization host (vSwitch) by virtual network metric group (continued)
Pos Metric field name Type Units Description
2 vlan-id Integer VLAN ID of the virtual network for which metrics are
being provided. This value corresponds to the vlan-id
property of the related Virtual Network object.
Table 46. Virtualization host (vSwitch) by virtual network metric group (continued)
Pos Metric field name Type Units Description
14 broadcast-packets-received Long Count Number of broadcast packets received by this
virtualization host or virtualization host's vSwitch from
the attached virtual servers.
15 interval-bytes-sent Long Bytes Number of bytes sent by this virtual switch, for the
VLAN specified by vlan-id, over the collection interval.
16 interval-bytes-received Long Bytes Number of bytes received by this virtual switch, for the
VLAN specified by vlan-id, over the collection interval.
17 bytes-per-second-sent Long Bytes per Number of bytes sent per second by this virtual switch,
Second for the VLAN specified by vlan-id, over the collection
interval.
18 bytes-per-second-received Long Bytes per Number of bytes received by this virtual switch, for the
Second VLAN specified by vlan-id, over the collection interval.
19 flags Long Flags indicating the types of metrics that are supported.
The value of this field should be interpreted as a
bitmask. The meaning of each bit is as follows:
v 0x02 - Byte counts are supported
v 0x04 – Packet counts are supported
v 0x08 – Drop counts are supported
v 0x10 – Discard counts are supported
v 0x20 – Multicast counts are supported
v 0x40 – Broadcast counts are supported
v 0x80 – Interval bytes sent and received are supported
The resource ID of the associated virtual server's network adapter is provided to allow the client
application to correlate the metrics with a particular virtual server.
Metrics are collected and provided on an interval, and each metric provided is the total cumulative value,
and not a delta.
Metric Group Name
"network-virtual-server-attached-network-adapter"
Collection Interval
30 seconds
Applicable Managed Object Class
"virtual-server"
The following metrics are provided in each entry of this metric group:
Table 47. Attached virtual server network adapters metric group (continued)
Pos Metric field name Type Units Description
15 broadcast-packets-received Long Count Number of broadcast packets received from this
virtual server virtual network interface for this virtual
network.
16 interval-bytes-sent Long Bytes Number of bytes sent by this network adapter over
the collection interval.
17 interval-bytes-received Long Bytes Number of bytes received by this network adapter
over the collection interval.
18 bytes-per-second-sent Long Bytes per Number of bytes sent per second by this network
Second adapter over the collection interval.
19 bytes-per-second-received Long Bytes per Number of bytes received per second by this network
Second adapter over the collection interval.
20 flags Long Flags indicating the types of metrics that are
supported by this interface. The value of this field
should be interpreted as a bitmask. The meaning of
each bit is as follows:
v 0x02 - Byte counts are supported
v 0x04 – Packet counts are supported
v 0x08 – Drop counts are supported
v 0x10 – Discard counts are supported
v 0x20 – Multicast counts are supported
v 0x40 – Broadcast counts are supported
v 0x80 – Interval bytes sent and received are
supported
Metrics are collected and provided on an interval, and each metric provided is the total cumulative value,
and not a delta.
Metric Group Name
"network-optimizer-attached-iedn-interface"
Collection Interval
30 seconds
Applicable Managed Object Class
"blade"
The following metrics are provided in each entry of this metric group:
Table 48. Optimizer IEDN virtual network interface metric group (continued)
Pos Metric field name Type Units Description
18 bytes-per-second-sent Long Bytes per Number of bytes sent per second by this interface
Second over the collection interval.
19 bytes-per-second-received Long Bytes per Number of bytes received per second by this
Second interface over the collection interval.
20 flags Long Flags indicating each types of metrics are
supported. The value of this field should be
interpreted as a bitmask. The meaning of each bit is
as follows:
v 0x02 - Byte counts are supported
v 0x04 – Packet counts are supported
v 0x08 – Drop counts are supported
v 0x10 – Discard counts are supported
v 0x20 – Multicast counts are supported
v 0x40 – Broadcast counts are supported
v 0x80 – Interval bytes sent and received are
supported
Metrics are collected and provided on an interval, and each metric provided is the total cumulative value,
and not a delta.
Metric Group Name
"optimizer-physical-network-adapter"
Collection Interval
30 seconds
Applicable Managed Object Class
"blade"
This metric collection provides metrics for an optimizer's physical network adapters.
Table 49. Optimizer IEDN physical network adapter metric group
Pos Metric field name Type Units Description
1 network-adapter-id String The network-adapter-id is the name of the
optimizer's physical network adapter.
Table 49. Optimizer IEDN physical network adapter metric group (continued)
Pos Metric field name Type Units Description
9 packets-sent-discarded Long Count Number of packets that were discarded when
sending from this interface.
The following metrics are provided in each entry of this metric group:
Table 50. Network adapter port metric group
Pos Metric field name Type Units Description
1 network-port-id Integer Numerical value corresponding to the network
adapter's physical port. For OSA adapters, this
value can be either 0 or 1, and for RoCE
adapters, this value can be 1 or 2. To get more
information about the physical port, a URI can
be constructed using this value together with
the target adapter-id:
/api/adapters/{adapter-id}/network-ports/
{network-port-id}
2 bytes-sent Long Bytes Number of bytes this physical port sent out to
the attached network.
3 bytes-received Long Bytes Number of unicast packets this physical port
received from the attached network.
4 packets-sent Long Count Number of unicast packets this physical port
sent out to the attached network.
5 packets-received Long Count Number of unicast packets this physical port
received from the attached network.
6 packets-sent-dropped Long Count Number of packets that were dropped when
this physical port was sending them out to the
attached network.
The following metrics are provided in each entry of this metric group:
Physical switches
The physical switches provide the connectivity between the blades and CPCs in the intraensemble data
network (IEDN).
The initial configuration and setup of the physical switches are provided by zManager. Some TOR ports
can be managed by the user from the zManager UI. The ESMs are not accessible for configuration
changes through zManager's external management interfaces.
Monitoring the physical switches can allow for determining the health and performance of the switches.
For example, metrics such as dropped and discarded packets can affect the over all performance of
workloads flowing through these switches. Bytes transferred metrics for ports provide the ability to
determine bandwidth utilization.
This metric collection provides metrics for an optimizer's physical network adapters.
Table 52. Top-of-rack switch port metrics group
Pos Metric field name Type Units Description
1 switch-location-info String The location of the switch in the zBX that was set by
zManager.
This metric collection provides metrics for an optimizer's physical network adapters.
Table 53. Optimizer IEDN physical network adapter metric group (continued)
Pos Metric field name Type Units Description
21 flags Long Flags indicating the types of metrics that are
reported by this uplink. The value of this field
should be interpreted as a bitmask. The meaning of
each bit is as follows:
v 0x02 - Byte counts are supported
v 0x04 – Packet counts are supported
v 0x08 – Drop counts are supported
v 0x10 – Discard counts are supported
v 0x20 – Multicast counts are supported
v 0x40 – Broadcast counts are supported
v 0x80 – Interval bytes sent and received are
supported
IBM DPM seamlessly integrates platform I/O resource management, server, network and storage resource
provisioning, dynamic resource adjustments and resource monitoring. This enhanced, and encapsulated
management through the HMC as the single management end-point eliminates the need for special skills
to operate the integrated Z platform and its hardware and virtual infrastructure. The HMC Web Services
API enables customers, or IBM and third-party data center management tooling respectively to automate
all of the IBM DPM tasks, for example, to discover, manage, and monitor resources, and to provide event
notifications.
The DPM APIs provide access to and control of the following HMC/SE objects:
v Partition object
v Virtual Function element object
v NIC element object
v HBA element object
v Adapter object
v Network Port element object
v Storage Port element object
v Virtual Switch object
v Capacity Group element object
v FICON Storage Configuration objects:
Storage Site object
Storage Fabric object
Storage Switch object
Storage Subsystem object
Storage Control Unit object
v Storage Group object
|
| v FICON storage resources are organized into storage sites. The primary site is the one in which the CPC
| (System "M01" in the diagram) is located. It likely also includes sets of storage switches and storage
| subsystems that are also local to the CPC. The primary site will always exist. Optionally, a second
| alternate site can also exist. Alternate sites are typically remote to the CPC, and often used for
| redundancy. In the diagram, the primary site is labeled "New York" and the alternate site is labeled
| "New Jersey".
| v Storage subsystems represent the physical storage units. They are physically connected (cabled) to a set
| of storage switches or directly to a set of CPC storage adapters. Storage subsystems are subdivided
| into logical control units, which provide access to a subset of a subsystem's storage resources. Storage
| control units are logically connected to CPC storage adapters, optionally through one or two storage
| switches. In the diagram, storage subsystems named "DS8870 A" and "DS8886 A" are located in the
| primary "New York" site and storage subsystems named "DS8870 B" and "DS8886 B" are located in the
| alternate "New Jersey" site.
| v Storage switches are optionally used within a CPC storage adapter to storage control unit connection.
| The switch that is connected to the CPC storage adapter is referred to as the "entrance" switch. The
| switch that is connected to the storage subsystem is referred to as the "exit" switch. The entrance and
| exit switches can be the same, which means there is exactly one switch connecting the adapter and
| control unit. If the entrance and exit switches are different, there are two switches connecting the
| adapter and control unit, and they are referred to as being in a cascaded switch configuration. In a
| cascaded configuration, the entrance switch will be in the primary site and the exit switch will be in
| the alternate site. A storage switch exists in exactly one storage site and in exactly one storage fabric. In
| the diagram, storage switches 10 and 20 exist in the primary "New York" site. The CPC is connected
| through those switches to the "DS8870 A" and "DS8886 A" storage subsystems. Switches 11 and 21 exist
| in the alternate "New Jersey" site. The CPC is connected in cascaded configurations through those
| switches to the "DS8870 B" and "DS8886 B" storage subsystems.
| v The set of all storage switches that are interconnected defines a storage fabric. In a multi-site
| configuration, switches from both sites are interconnected, therefore in such configurations, a fabric will
| span multiple sites. In the diagram, storage switches 10 and 11 are interconnected and define storage
| fabric "Fabric A". Storage switches 20 and 21 define storage fabric "Fabric B".
| It is important to understand that a FICON configuration is scoped to a single CPC, and represents that
| CPC’s view of a set of storage resources. A second CPC’s FICON configuration may include objects that
| represent the same physical or logical entities, but they will be returned to an API client as separate
| objects. The data models for those objects provide no intrinsic way to determine those objects represent
| the same physical or logical entity. Correlation is possible only if the configurations are created using
| names or other identifiers that are the same.
Operations summary
Following are the operations summaries for each of the Dynamic Partition Manager (DPM) objects.
|
Partition object
The Partition object is central to partition management for IBM Dynamic Partition Manager (DPM). It
stores configuration data and is the focal point for various DPM operations.
Data model
This object includes the properties defined in the “Base managed object properties schema” on page 60,
including the operational-status-related properties, with the following class-specific specializations:
Table 74. Partition object: base managed object properties specializations
Name Qualifier Type Description of specialization
object-uri — String/ The canonical URI path for a Partition object is of the form
URI /api/partitions/{partition-id}, where {partition-id} is the
value of the object-id property of the Partition object.
parent — String/ The canonical URI path of the hosting CPC object.
URI
class — String The class of the Partition object is "partition".
name (w)(pc) String The name of the partition.
(1-64)
The name must be unique on a hosting CPC. The length and
character requirements on this property are the same as those
described in the “Base managed object properties schema” on page
60.
description (w)(pc) String The description associated with this partition.
(0-1024)
Default: an empty string.
Table 74. Partition object: base managed object properties specializations (continued)
Name Qualifier Type Description of specialization
status (sc) String The current operational status of the managed resource. Values:
Enum v "communications-not-active" - This status indicates that the
HMC is not communicating with the SE.
v "status-check" - This status indicates that the current status of
the partition is unknown. This state normally indicates a
communication issue between the SE and the CPC.
v "stopped" - The partition is not running on the CPC. If the
partition's reserve-resources property is false, the CPC memory,
processor, and adapter resources defined for the partition are not
currently allocated to it and are thus available for use by other
partitions.
v "terminated" - The partition was previously active on the CPC,
but is no longer executing the operating system because all
processors have been stopped by the operating system via some
in-band action. This status may indicate that the operating
system has been shut down or has “crashed”. This status
represents a condition between "active" and "stopped". Although
the partition is not executing the operating system, all CPC
memory, processor, and adapter resources defined for it remain
allocated to it. The Stop Partition action can be used to release
the partition's non-reserved resources and place it in "stopped"
status.
v "starting" - A transitional status between "stopped" and "active"
indicating that a Start Partition action has been initiated to put
the partition into execution, but processing of that action has not
yet completed.
v "active" - The partition is up and running.
v "stopping" - A transitional status between "active" and "stopped"
indicating that a Stop Partition action has been initiated to stop
execution of the partition and release its non-reserved resources,
but the processing of that action has not yet completed.
v "degraded" - The partition is active and one or more resources of
the partition are in a degraded state and are not available for
use.
v "reservation-error" - The partition's reserve-resources property is
true but one or more resources of the partition are in a degraded
state and are not available for use.
v "paused" - The partition was previously active on the CPC, but it
is not currently executing the operating system because all
processors have been stopped by the user via HMC or SE
actions. Typically, partitions are temporarily placed in this status
as part of performing diagnosis activities on the operating
system in the partition. Although the partition is not currently
executing the operating system, all CPC memory, processor, and
adapter resources defined for it remain allocated to it. The HMC
or SE UI actions can be used to resume execution of the
operating system and place it in "active" status again.
Alternatively, The Stop Partition action can be used to release
the partition's non-reserved resources and place it in "stopped"
status.
additional-status — This property is not provided.
Default: "linux"
short-name (w)(pc) String (1-8) The short name must be 1-8 characters long, made up of
uppercase alphanumeric characters, and have an
alphabetic first character. The words PHYSICAL, REC,
SYSTEM, and PRIMnnnn (where nnnn is a 4-digit
number) are reserved and cannot be used. The short
name is provided to the operating system running in the
partition, for example by the STORE SYSTEM
INFORMATION instruction.
Default: Auto-generated
Default: null
Default: false
degraded-adapters (pc) Array of String/ Array of URIs referring to I/O adapters (NIC, HBA,
URI virtual function, crypto adapter) attached to the partition
that are degraded. Only used if status property of
partition is "degraded". If the partition has no degraded
adapters, the array is empty.
processor-mode (w)(pc) String Enum Defines how processors are allocated to the partition.
Default: shared
Default: 0
Note: Exactly one of the cp-processors and ifl-processors
must have a value other than 0.
Default: 0
Note: Exactly one of the cp-processors and ifl-processors
must have a value other than 0.
ifl-absolute-processor- (w)(pc) Boolean Indicates if absolute processor capping for ifl-processors
capping is enforced. Absolute processor capping prevents this
partition from using any more than the specified number
of physical processors.
Default: false
cp-absolute-processor- (w)(pc) Boolean Indicates if absolute processor capping for cp-processors
capping is enforced. Absolute processor capping prevents this
partition from using any more than the specified number
of physical processors.
Default: false
ifl-absolute-processor- (w)(pc) Float The amount of absolute capping applied to ifl-processors.
capping-value
Valid range: 0.01-255.00 in increments of 0.01.
Default: 1.0
cp-absolute-processor- (w)(pc) Float The amount of absolute capping applied to cp-processors.
capping-value
Valid range: 0.01-255.00 in increments of 0.01.
Default: 1.0
ifl-processing-weight- (w)(pc) Boolean Whether the processing weight for Integrated Facility for
capped Linux (IFL) processors is a limit or a target.
Default: false
Default: false
minimum-ifl- (w)(pc) Integer Represents the minimum amount of IFL processor
processing-weight resources allocated to the partition.
Default: 1
minimum-cp- (w)(pc) Integer Represents the minimum amount of general purpose
processing-weight processor resources allocated to the partition.
Default: 1
initial-ifl-processing- (w)(pc) Integer Defines the initial processing weight of IFL processors.
weight
Valid range: 1-999
Default: 100
initial-cp-processing- (w)(pc) Integer Defines the initial processing weight of CP processors.
weight
Valid range: 1-999
Default: 100
current-ifl-processing- (pc) Integer Defines the current IFL processing weight.
weight
current-cp-processing- (pc) Integer Defines the current CP processing weight.
weight
maximum-ifl- (w)(pc) Integer Represents the maximum amount of IFL processor
processing-weight resources allocated to the partition.
Default: 999
maximum-cp- (w)(pc) Integer Represents the maximum amount of shared general
processing-weight processor resources allocated to the partition.
Default: 999
Default: 1024
Note: If the value input by the user does not fall on an
increment boundary, it is rounded off to the closest
increment boundary.
reserved-memory (pc) Integer The amount of reserved memory in MB, which equals
maximum-memory minus initial-memory.
maximum-memory (w)(pc) Integer The maximum size, specified in MB, to which the
partition's memory allocation can be increased while the
partition is running. This value must be greater than or
equal to the value of initial-memory, and it must be no
larger than the amount of entitled memory on the system.
Default: 1024
Default: false
Default: "none"
| Note: Because a newly created partition does not yet
| have any HBAs, NICs, mounted ISO images, nor does it
| have a storage-group attached, , boot device options
| "network-adapter", "storage-adapter", "iso-image" and
| "storage-volume" are not valid values for the boot-device
| field as specified in the request body for the Create
| Partition operation.
Default: null
boot-ftp-host (w)(pc) String, String/IP Host name or the IP address of the FTP server that shall
V4 Address, be used for the FTP boot.
String/IP V6
Address The value must point to a valid host name or the IP
address when boot-device mode is "ftp".
Default: null
Default: null
boot-ftp-password (wo)(pc) String The password for the account on the FTP server from
which the boot image shall be retrieved.
Default: null
boot-removable- (w)(pc) String Specifies the boot image or the CD/DVD or the USB
media media containing a bootable image. This must point to a
fully-qualified path on the HMC.
Default: null
boot-removable- (w)(pc) String Enum Specifies the type of the removable media. Valid values
media-type are "cdrom" and "usb".
Default: null
boot-timeout (w)(pc) Integer (60-600) The time, in seconds, that is waited before an ongoing
boot is aborted. This is applicable for all modes of
boot-device.
Default: 60
Default: null
| boot-storage-volume (w)(pc) String/ URI Specifies the volume that shall be used for the partition to
| boot.
| Default: null
boot-logical-unit- (w)(pc) String (1-16) The hexadecimal logical unit number (LUN) representing
number the boot device.
Default: null
boot-iso-ins-file (w)(pc) String INS file location within the ISO image. This property is
changed by the Mount ISO Image and Unmount ISO
Image operations.
Default: null
access-global- (w)(pc) Boolean Indicates if global performance data authorization control
performance-data is requested.
Default: false
permit-cross- (w)(pc) Boolean Indicates if cross partition commands authorization
partition-commands control is requested.
Default: false
access-basic-counter- (w)(pc) Boolean Indicates if basic counter set authorization control is
set requested.
Default: false
access-problem-state- (w)(pc) Boolean Indicates if problem state counter set authorization
counter-set control is requested.
Default: false
access-crypto-activity- (w)(pc) Boolean Indicates is crypto activity counter set authorization
counter-set control is requested.
Default: false
access-extended- (w)(pc) Boolean Indicates if extended counter set authorization control is
counter-set requested.
Default: false
access-coprocessor- (w)(pc) Boolean Indicates if coprocessor group set authorization control is
group-set requested.
Default: false
access-basic-sampling (w)(pc) Boolean Indicates if basic CPU sampling authorization control is
requested.
Default: false
access-diagnostic- (w)(pc) Boolean Indicates if diagnostic sampling authorization control is
sampling requested.
Default: false
permit-des-key- (w)(pc) Boolean Enables/disables the importing of DES keys for the
import-functions associated partition.
Default: true
Default: true
threads-per-processor (pc) Integer The number of threads the operating system running in
this partition can use, for each processor allocated. If the
partition has never been activated, a value of 0 is
returned. After the initial activation of the partition, this
value is controlled by the SMT (Simultaneous
Multi-Threading) setting in the OS.
virtual-function-uris (pc) Array of String/ Array of URIs referring to virtual functions associated
URI with the partition.
Default: null
1
ssc-host-name (w)(pc) String/ Hostname The Secure Service Container host name. This string
meets the requirements of the String/Hostname data type
with the following exceptions:
v length is 1-64 characters
v valid characters are a-z, A-Z, 0-9, period(.), hyphen(-),
and underscore(_)
ssc-boot-selection1 (w)(pc) String Enum Indicates whether to run the Secure Service Container
appliance installer or the Secure Service Container
appliance itself. One of:
v "installer" - Boot the Secure Service Container
appliance installer to install the Secure Service
Container appliance and then start it.
v "appliance" - Start the most recently installed Secure
Service Container appliance and resume its execution
from where it was when the partition was stopped.
Default: "installer"
Default: null
ssc-ipv6-gateway (w)(pc) String/ IPv6 The default IPv6 Gateway to be used when there is at
Address least one NIC configured in static IPv6 mode.
Default: null
1
ssc-dns-servers (w)(pc) Array of String/ The DNS IP address information. A minimum of 0 entries
IPv4 or IPv6 and a maximum of 2 entries are permitted. On an Update
Address request, this property fully replaces the existing set.
Default: null
1
ssc-master-pw (wo)(pc) String (8-256) The Secure Service Container master user password. Valid
characters are: a-z, A-Z, 0-9, and !@#$%^&*()_+{}|<>?-=.
Default: null
| available-features-list — Array of The list of optional features or behavior supported by this
| partition-feature- Partition. If the Partition has no optional features, then an
| info objects empty array is provided.
1
On a Get request, this property is returned only when type is "ssc". On an Update request, this property can be
updated only when type is "ssc".
crypto-configuration object properties: The crypto configuration of a partition represents the elements
that are required to enable the partition to make use of crypto adapters. The configuration is a nested
structure, containing two pieces of information:
v A set of crypto adapters that will be used by this partition, and
A crypto configuration that contains no crypto adapters and no crypto domain configurations is valid
and is known as an empty crypto configuration. A non-empty configuration must contain at least 1 crypto
adapter and at least 1 crypto domain configuration with an access-mode of "control-usage".
Table 77. crypto-configuration nested object properties
Name Type Description
crypto-adapter-uris Array of Array of URIs listing all crypto adapters that this partition can use.
String/ URI
crypto-domain- Array of Array listing all crypto-domain-configuration objects for this partition. See
configurations crypto- Table 78.
domain-
configuration
objects
A crypto configuration conflict occurs when the crypto configuration of two (or more) partitions:
1. Have one (or more) adapter(s) in common, and
2. Specified "control-usage" for one (or more) identical domain index(es).
No more than one of the partitions involved in a given crypto configuration conflict may be active or
have reserved resources at any one point in time.
According to this definition, the crypto configuration of two partitions can have multiple conflicts
(regarding different adapters and/or different domains).
It is also possible for a partition to be involved in conflicts with multiple other partitions. For example,
Partition A has 3 crypto adapters in its configuration. Partition B has 2 of those and Partition C has the
other one. Assuming they all have a control-usage domain in common, Partition A is now involved in a
conflict with Partition B and a separate conflict with Partition C.
Such conflicts are only allowed for partitions that are in "stopped" state, and without reserved resources.
That means the system will prevent the creation of conflicting crypto configuration for the set of active
partitions, and the set of "stopped" partitions that have reserve-resources enabled.
Default: auto-generated.
Default: auto-generated.
If the associated SE is version 2.13.1, the only valid port for an OSA
backing adapter is port 0.
ssc-ip-address-type1 (w)(pc) String Secure Service Container IP address type. Valid types are:
Enum v "ipv4" - Network is configured in static IPv4 mode
v "ipv6" - Network is configured in static IPv6 mode
v "linklocal" - Network is configured in Link Local mode
v "dhcp" - Network is configured in DHCP mode.
When the partition's type is not "ssc", this property is not allowed
when the type of the NIC is "roce".
mac-address (w)(pc) String (17) The MAC address associated with this NIC. It must be unique
among all the NICs created in the CPC.
This value can not be set when the type of the NIC is "roce".
Default: Auto-generated
vlan-type (w)(pc) String The type of VLAN tagging to use for the VLAN associated with
Enum this NIC, or null, if the NIC is not associated with a VLAN. Valid
value:
v "enforced" - the network adapter only allows untagged packets
or packets tagged for the VLAN identified by vlan-id through to
the operating system running in the partition. The network
device in the operating system should also be configured with
the same vlan-id.
This value can not be set when the partition's type is "ssc" or when
the type of the NIC is "roce".
1
Only applicable if ssc-management-nic is true.
Default: auto-generated.
In this request, the URI variable {cpc-id} is the object ID of the target CPC.
Query parameters:
Description
This operation lists the partition objects that belong to a CPC. The object URI, display name, status, and
type are provided for each.
If the name query parameter is specified, the returned list is limited to those partition objects that have a
name property matching the specified filter pattern. If the status query parameter is specified, the
returned list is limited to those partition objects that have a status property matching the specified filter
value. If the type query parameter is specified, the returned list is limited to those partition objects that
have a type property matching the specified filter value. If no query parameters are provided, no filtering
is done.
An object is only included in the list if the API user has object-access permission for that object
On success, HTTP status code 200 (OK) is returned and the response body is provided as described in
“Response body contents.”
If the CPC is not in DPM mode, or there are no partitions defined to the CPC, or no partitions are to be
included in the response due to filtering or access permissions, an empty list is provided and the
operation completes successfully.
Authorization requirements
This operation has the following authorization requirements:
v Object-access permission to the CPC object designated by {cpc-id}.
v Object-access permission to any Partition object to be included in the result.
The following HTTP status codes are returned for the indicated errors. The response body is a standard
error response body providing the reason code indicated and associated error message.
Additional standard status and reason codes can be returned, as described in Chapter 3, “Invoking API
operations,” on page 35.
200 OK
server: zSeries management console API web server / 2.0
cache-control: no-cache
date: Mon, 06 Feb 2017 09:08:33 GMT
content-type: application/json;charset=UTF-8
content-length: 504
{
"partitions":[
{
"name":"testpweights",
"object-uri":"/api/partitions/2fa1f646-e9d9-11e6-a392-42f2e9cfe851",
"status":"stopped",
"type":"ssc"
},
{
"name":"testVnic",
"object-uri":"/api/partitions/bc09b56e-e88b-11e6-8715-42f2e9cfe851",
"status":"active",
"type":"linux"
},
{
"name":"testCrypto",
"object-uri":"/api/partitions/798167ba-ec4a-11e6-a040-42f2e9cfe851",
"status":"stopped",
"type":"linux"
},
{
"name":"test_ah",
"object-uri":"/api/partitions/fd93be7e-e928-11e6-bcc9-42f2e9cfe851",
"status":"stopped",
"type":"ssc"
}
]
}
Query parameters:
Description
This operation lists the Partition objects to which the API user has object-access permission. Some basic
properties are provided for each partition that is included in the response.
If the name query parameter is specified, the returned list is limited to those partitions that have a name
property matching the specified filter pattern. If the name parameter is omitted, no such filtering is
performed.
If the type query parameter is specified, the parameter is validated to ensure it is a valid partition type
property value. If the value is not valid, HTTP status code 400 (Bad Request) is returned. If the value is
valid, the returned list is limited to those partitions that have a type property matching the specified
value. If the type parameter is omitted, no such filtering is performed.
If the status query parameter is specified, the parameter is validated to ensure it is a valid partition
status property value. If the value is not valid, HTTP status code 400 (Bad Request) is returned. If the
value is valid, the returned list is limited to those partitions that have a status property matching the
specified value. If the status parameter is omitted, no such filtering is performed.
If the has-unacceptable-status query parameter is specified, the returned list is limited to those partitions
that have a has-unacceptable-status property matching the specified value. If the has-unacceptable-status
parameter is omitted, no such filtering is performed.
If the cpc-name query parameter is specified, the returned list is limited to those partitions whose parent
CPC's name property matches the specified filter pattern. If the cpc-name parameter is omitted, no such
filtering is performed.
A partition is included in the list only if the API user has object-access permission to that object. If there
is a partition to which the API user does not have permission, that object is omitted from the list, but no
error status code results.
If there are no partitions known to the HMC or if no partitions are to be included in the response due to
filtering or access permissions, an empty list is provided and the operation completes successfully.
Authorization requirements
This operation has the following authorization requirement:
v Object-access permission to the Partition objects included in the response body.
The following HTTP status codes are returned for the indicated errors. The response body is a standard
error response body providing the reason code indicated and associated error message.
Additional standard status and reason codes can be returned, as described in Chapter 3, “Invoking API
operations,” on page 35.
200 OK
server: Hardware management console API web server / 2.0
cache-control: no-cache
date: Mon, 28 Aug 2017 18:37:52 GMT
content-type: application/json;charset=UTF-8
content-length: 272
{
"partitions":[
{
"cpc-name":"SEDPM005",
"cpc-object-uri":"/api/cpcs/e4e18781-8063-3f2c-8222-044eb58988d9",
"has-unacceptable-status":true,
"name":"part1",
"object-uri":"/api/partitions/592125be-76dd-11e7-94f9-02c2000226b7",
"status":"communications-not-active",
"type":"linux"
}
]
}
Usage note
The response body of this operation is similar to that of the Get Inventory operation, but it returns only
a subset of partition properties. The response also includes some properties of the parent CPC, regardless
of whether the API user has object-access permission to that CPC.
Create Partition
The Create Partition operation creates a partition with the given properties on the identified CPC.
In this request, the URI variable {cpc-id} is the object ID of the CPC.
Description
This operation creates a partition with the values specified on the identified CPC and then returns its
object-uri in the response body. The response also includes a Location header that provides this URI. An
Inventory Change notification is emitted asynchronously to this operation.
Any properties identified as required must be included in the request body. Any properties identified as
optional may be excluded from the request body; if an optional property is not found in the request body,
its value will be set to its default value.
If the request body contents are valid, the partition is created on the target CPC and its properties are
defined to their corresponding request body content's properties' values. If a property is omitted from the
request body, its default value is used when creating the partition.
If the API user does not have action/task permission to the New Partition task, a 403 (Forbidden) status
code is returned. A 404 (Not Found) status code is returned if the object-id {cpc-id} does not identify a
CPC object for which the API user has object-access permission.
If the request body contents fail to validate, a 400 (Bad Request) status code is returned. This may occur
because the document fails to define a required property. This may also occur if the document fails to
define a single valid partition, for instance defining a property with an invalid value (e.g. an
initial-memory value less than zero, or a name that is already in use). If the status of the CPC is not
valid (The valid states are "active", "service-required", "degraded", "exceptions"), 409 (Conflict) status
code is returned.
Authorization requirements
This operation has the following authorization requirements:
v Object-access permission to the CPC identified by {cpc-id}.
v Action/task permission to the New Partition task.
The following HTTP status codes are returned for the indicated errors. The response body is a standard
error response body providing the reason code indicated and associated error message.
Additional standard status and reason codes can be returned, as described in Chapter 3, “Invoking API
operations,” on page 35.
201 Created
server: zSeries management console API web server / 2.0
location: /api/partitions/9cfdf912-89cf-11e5-8092-020000000056
cache-control: no-cache
date: Fri, 13 Nov 2015 06:26:42 GMT
content-type: application/json;charset=UTF-8
content-length: 69
{
"object-uri":"/api/partitions/9cfdf912-89cf-11e5-8092-020000000056"
}
Delete Partition
The Delete Partition operation deletes the identified partition.
In this request, the URI variable {partition-id} is the object ID of the Partition object.
Description
This operation deletes the designated partition, which includes the following actions:
v The partition's HBAs are disassociated from their backing physical adapters and deleted.
v The partition's NICs are disassociated from their backing virtual switches and deleted.
v The partition's virtual functions are disassociated from their backing physical adapters and deleted.
v The partition is disassociated from the crypto adapters and crypto domains for which it was
configured.
v The ISO image is deleted.
v An Inventory Change notification is emitted asynchronously to this operation.
A 404 (Not Found) status code is returned if the object-id {partition-id} does not identify a partition object
for which the API user has object-access permission. If the API user does not have action/task permission
to the Delete Partition operation, a 403 (Forbidden) status code is returned. A 409 (Conflict) status code is
returned if status of either the partition or the CPC is not valid to perform the operation. A 409 (Conflict)
status code is also returned if another operation targeting the partition is already underway.
Authorization requirements
This operation has the following authorization requirements:
v Object-access permission to the partition.
v Action/task permission to the Delete Partition task.
The following HTTP status codes are returned for the indicated errors. The response body is a standard
error response body providing the reason code indicated and associated error message.
Table 83. Delete Partition: HTTP status and reason codes
HTTP error status Reason
code code Description
400 (Bad Request) Various Errors were detected during common request validation. See “Common
request validation reason codes” on page 41 for a list of the possible reason
codes.
403 (Forbidden 1 API user does not have action permission to the Delete Partition task.
404 (Not Found) 1 The partition with the object ID {partition-id} does not exist, or the API user
does not have object-access permission to it.
409 (Conflict) 1 Partition status is not valid to perform the operation (must be "stopped").
2 The operation cannot be performed because the object designated by the
request URI is currently busy performing some other operation.
6 The state of the CPC hosting the partition is not valid to perform the
operation. The valid states are "active", "service-required", "degraded", and
"exceptions".
10 The operation cannot be performed because the affected SE is in the process
of being shut down.
110 The operation cannot be performed as the partition is a member of a
Capacity Group.
112 The operation cannot be performed as the partition is targeted in a
scheduled operation.
113 The operation cannot be performed as the partition is configured to be
automatically started when its hosting CPC starts.
503 (Service 1 The request could not be processed because the HMC is not currently
Unavailable) communicating with an SE needed to perform the requested operation.
Additional standard status and reason codes can be returned, as described in Chapter 3, “Invoking API
operations,” on page 35.
204 No Content
server: zSeries management console API web server / 2.0
cache-control: no-cache
date: Fri, 13 Nov 2015 06:30:12 GMT
Usage note
This is a synchronous operation and as such does not complete until the partition has been deleted.
Depending on the I/O configuration associated with the partition, this operation may take a considerable
amount of time to complete. API clients that are concerned about that should use the Delete Partition
Asynchronously operation instead.
In this request, the URI variable {partition-id} is the object ID of the Partition object.
Description
This operation asynchronously deletes the designated partition. When the operation is initiated, a 202
(Accepted) status code is returned. The response body contains a URI that may be queried to retrieve the
status of the operation. See “Query Job Status” on page 80 for information on how to query job status.
When the operation has completed, an asynchronous result message is sent, with Job Status and Reason
Codes described in “Job status and reason codes” on page 179.
A 404 (Not Found) status code is returned if the object-id {partition-id} does not identify a Partition object
for which the API user has object-access permission. If the API user does not have authority to perform
the Delete Partition operation, a 403 (Forbidden) status code is returned. A 409 (Conflict) status code is
returned if the status of either the partition or the CPC is not valid to perform the operation.
Authorization requirements
This operation has the following authorization requirements:
v Object-access permission to the partition.
v Action/task permission to the Delete Partition task.
The following HTTP status codes are returned for the indicated errors. The response body is a standard
error response body providing the reason code indicated and associated error message.
Table 84. Delete Partition Asynchronously: HTTP status and reason codes
HTTP error status Reason
code code Description
400 (Bad Request) Various Errors were detected during common request validation. See “Common
request validation reason codes” on page 41 for a list of the possible reason
codes.
403 (Forbidden 1 API user does not have the required permission for this operation.
404 (Not Found) 1 The object-id in the URI {partition-id} does not designate an existing Partition
object, or the API user does not have object-access permission to it.
409 (Conflict) 1 Partition status is not valid to perform the operation (must be "stopped" or
"reservation-error").
6 The state of the CPC hosting the partition is not valid to perform the
operation. It must be in one of the following states: "active",
"service-required", "degraded", and "exceptions".
503 (Service 1 The request could not be processed because the HMC is not currently
Unavailable) communicating with an SE needed to perform the requested operation.
Additional standard status and reason codes can be returned, as described in Chapter 3, “Invoking API
operations,” on page 35.
202 Accepted
server: Hardware management console API web server / 2.0
location: /api/jobs/3ae9a3c8-55b3-11e7-b883-fa163e6e13bb
cache-control: no-cache
date: Tue, 20 Jun 2017 12:23:13 GMT
content-type: application/json;charset=UTF-8
content-length: 60
{
"job-uri":"/api/jobs/3ae9a3c8-55b3-11e7-b883-fa163e6e13bb"
}
In this request, the URI variable {partition-id} is the object ID of the target Partition object.
Description
The Get Partition Properties operation returns the current values of the properties for the Partition object
as defined in the “Data model” on page 146.
The URI path must designate an existing Partition object and the API user must have object-access
permission to it. If either of these conditions is not met, status code 404 (Not Found) is returned.
On successful execution, HTTP status code 200 (OK) is returned and the response body contains all of the
current properties as defined in the “Data model” on page 146. A 404 (Not Found) status code is returned
if the object-id {partition-id} does not identify a partition object for which the API user has object-access
permission.
Authorization requirements
This operation has the following authorization requirement:
v Object-access permission to the Partition object designated by {partition-id}
The following HTTP status codes are returned for the indicated errors. The response body is a standard
error response body providing the reason code indicated and associated error message.
Additional standard status and reason codes can be returned, as described in Chapter 3, “Invoking API
operations,” on page 35.
200 OK
server: zSeries management console API web server / 2.0
cache-control: no-cache
date: Fri, 03 Feb 2017 09:26:58 GMT
content-type: application/json;charset=UTF-8
content-length: 2509
{
"acceptable-status":[
"active"
],
"access-basic-counter-set":false,
"access-basic-sampling":false,
"access-coprocessor-group-set":false,
"access-crypto-activity-counter-set":false,
"access-diagnostic-sampling":false,
"access-extended-counter-set":false,
"access-global-performance-data":false,
"access-problem-state-counter-set":false,
"auto-start":false,
"autogenerate-partition-id":true,
"available-features-list":[
{
"description":"The DPM storage management approach in which FCP and FICON storage
resources are defined in Storage Groups, which are attached to Partitions.",
"name":"dpm-storage-management",
"state":true
}
],
"boot-configuration-selector":0,
"boot-device":"test-operating-system",
"boot-ftp-host":null,
"boot-ftp-insfile":null,
"boot-ftp-username":null,
"boot-iso-image-name":null,
"boot-iso-ins-file":null,
"boot-logical-unit-number":"",
"boot-network-device":null,
"boot-os-specific-parameters":"",
"boot-record-lba":"0",
"boot-removable-media":null,
"boot-removable-media-type":null,
"boot-storage-device":null,
"boot-timeout":60,
"boot-world-wide-port-name":"",
"class":"partition",
"cp-absolute-processor-capping":false,
"cp-absolute-processor-capping-value":1.0,
"cp-processing-weight-capped":false,
"cp-processors":1,
"crypto-configuration":null,
"current-cp-processing-weight":1,
"current-ifl-processing-weight":1,
"degraded-adapters":[
"/api/partitions/aa245764-b64f-11e6-9ee6-42f2e9cfe851/hbas/526e0708-bbc3-11e6-9043-
42f2e9cfe851"
],
"description":"",
"has-unacceptable-status": true,
"hba-uris":[
"/api/partitions/aa245764-b64f-11e6-9ee6-42f2e9cfe851/hbas/526e0708-bbc3-11e6-9043-
42f2e9cfe851"
],
"ifl-absolute-processor-capping":false,
"ifl-absolute-processor-capping-value":1.0,
"ifl-processing-weight-capped":false,
"ifl-processors":0,
"initial-cp-processing-weight":100,
"initial-ifl-processing-weight":100,
"initial-memory":4096,
"is-locked":false,
"maximum-cp-processing-weight":999,
"maximum-ifl-processing-weight":999,
"maximum-memory":4096,
"minimum-cp-processing-weight":1,
"minimum-ifl-processing-weight":1,
"name":"sampleTest",
"nic-uris":[
"/api/partitions/aa245764-b64f-11e6-9ee6-42f2e9cfe851/nics/5217cc44-bbc3-11e6-9043-
42f2e9cfe851"
],
"object-id":"aa245764-b64f-11e6-9ee6-42f2e9cfe851",
"object-uri":"/api/partitions/aa245764-b64f-11e6-9ee6-42f2e9cfe851",
"os-name":"",
"os-type":"Linux",
"os-version":"3.10.0",
"parent":"/api/cpcs/93634ff4-0599-3f7d-b937-7673de7dfd0c",
"partition-id":"00",
"permit-aes-key-import-functions":true,
"permit-cross-partition-commands":false,
"permit-des-key-import-functions":true,
"processor-management-enabled":false,
"processor-mode":"shared",
"reserve-resources":false,
"reserved-memory":0,
"short-name":"SAMPLE",
"status":"degraded",
"threads-per-processor":1,
"type":"linux",
"virtual-function-uris":[]
}
In this request, the URI variable {partition-id} is the object ID of the target Partition object.
Description
The request body object is validated against the data model for the Partition object type to ensure that the
request body contains only writable properties and the data types of those properties are as required. If
the request body is not valid, status code 400 (Bad Request) is returned with a reason code indicating the
validation error encountered.
On successful execution, the value of each corresponding property of the object is updated with the value
provided by the input field, and status code 204 (No Content) is returned. When this operation changes
the value of any property for which property-change notifications are due, those notifications are emitted
asynchronously to this operation.
A 404 (Not Found) status code is returned if the object-id {partition-id} does not identify a partition object
for which the API user has object-access permission or if the URI in the request body does not designate
a resource of an expected type. If the API user does not have action/task permission to the Partition
Details operation, a 403 (Forbidden) status code is returned. If the status of the CPC hosting the partition
is not in a valid state, 409 (Conflict) status code is returned. A 409 (Conflict) status code is also returned if
the partition is in a transitional state ("starting" or "stopping") or if user sets boot-device to "iso-image",
but there is no ISO image mounted on the partition.
Authorization requirements
This operation has the following authorization requirements:
v Object-access permission to the partition
v Action/task permission to the Partition Details task.
The following HTTP status codes are returned for the indicated errors. The response body is a standard
error response body providing the reason code indicated and associated error message.
Table 86. Update Partition Properties: HTTP status and reason codes
HTTP error status Reason
code code Description
400 (Bad Request) Various Errors were detected during common request validation. See “Common
request validation reason codes” on page 41 for a list of the possible reason
codes.
7 The data type of a field in the request body is not as expected.
15 access-diagnostic-sampling cannot be true when access-basic-sampling is
false.
18 A property that is only valid for type "ssc" was provided, but the type is not
"ssc". type "ssc" only allows "none" for boot-device.
118 There is an error in the fields related to the partition ID. One of:
v autogenerate-partition-id is false and the partition-id specified in the
request body is already in use.
v autogenerate-partition-id is false and partition-id is not included in the
request body.
v autogenerate-partition-id is true and partition-id is included in the
request body.
403 (Forbidden) 1 API user does not have the required permission for this operation
404 (Not Found) 1 The object ID in the URI {partition-id} does not designate an existing Partition
object, or the API user does not have object-access permission to it.
2 A URI in the request body does not designate a resource of an expected
type.
Table 86. Update Partition Properties: HTTP status and reason codes (continued)
HTTP error status Reason
code code Description
409 (Conflict) 1 Partition status is not valid to perform the operation.
2 The operation cannot be performed because the object designated by the
request URI is currently busy performing some other operation.
6 The state of the CPC hosting the partition is not valid to perform the
operation (must be in one of the following states: "active",
"service-required", "degraded", or "exceptions".)
8 The operation cannot be completed because it would result in inconsistencies
between the boot-device property and the related properties that identify the
specific boot device for that boot-device value. For example, if boot-device
is "storage-adapter", then boot-storage-device must contain a valid HBA
URI.
Additional standard status and reason codes can be returned, as described in Chapter 3, “Invoking API
operations,” on page 35.
204 No Content
server: zSeries management console API web server / 2.0
cache-control: no-cache
date: Fri, 13 Nov 2015 06:43:45 GMT
Usage note
This is a synchronous operation and as such does not complete until the partition has been updated.
Depending on the I/O configuration associated with the partition, this operation may take a considerable
amount of time to complete. API clients that are concerned about that should use the Update Partition
Properties Asynchronously operation instead.
In this request, the URI variable {partition-id} is the object ID of the target Partition object.
Description
The request body object is validated against the data model for the Partition object type to ensure that the
request body contains only writable properties and the data types of those properties are as required. If
the request body is not valid, status code 400 (Bad Request) is returned with a reason code indicating the
validation error encountered.
This operation asynchronously updates the designated partition. When the operation is initiated, a 202
(Accepted) status code is returned. The response body contains a URI that may be queried to retrieve the
status of the operation. See “Query Job Status” on page 80 for information on how to query job status.
When the operation has completed, an asynchronous result message is sent, with Job Status and Reason
Codes described in “Job status and reason codes” on page 188.
On successful execution of the asynchronous portion of this operation, the value of each corresponding
property of the object is updated with the value provided by the input field, and status code 204 (No
Content) is returned in the asynchronous result document. When this operation changes the value of any
property for which property-change notifications are due, those notifications are emitted asynchronously
to this operation.
A 404 (Not Found) status code is returned if the object-id {partition-id} does not identify a Partition object
for which the API user has object-access permission or if the URI in the request body does not designate
a resource of an expected type. If the API user does not have action/task permission to the Partition
Details operation, a 403 (Forbidden) status code is returned. If the status of the CPC hosting the partition
is not in a valid state, 409 (Conflict) status code is returned. A 409 (Conflict) status code is also returned if
the partition is in a transitional state ("starting" or "stopping").
Authorization requirements
This operation has the following authorization requirements:
v Object-access permission to the partition
v Action/task permission to the Partition Details task.
The following HTTP status codes are returned for the indicated errors. The response body is a standard
error response body providing the reason code indicated and associated error message.
Table 87. Update Partition Properties Asynchronously: HTTP status and reason codes
HTTP error status Reason
code code Description
400 (Bad Request) Various Errors were detected during common request validation. See “Common
request validation reason codes” on page 41 for a list of the possible reason
codes.
403 (Forbidden) 1 API user does not have the required permission for this operation.
404 (Not Found) 1 The object ID in the URI {partition-id} does not designate an existing Partition
object, or the API user does not have object-access permission to it.
409 (Conflict) 1 Partition status is not valid to perform the operation.
6 The state of the CPC hosting the partition is not valid to perform the
operation (must be in one of the following states: "active",
"service-required", "degraded", or "exceptions".)
503 (Service 1 The request could not be processed because the HMC is not currently
Unavailable) communicating with an SE needed to perform the requested operation.
Additional standard status and reason codes can be returned, as described in Chapter 3, “Invoking API
operations,” on page 35.
The partition type "ssc" only allows "none" for the boot-device.
118 There is an error in the fields related to the partition ID. One of:
v autogenerate-partition-id is false and partition-id specified in the request
body is already in use.
v autogenerate-partition-id is false and partition-id is not included in the
request body.
v autogenerate-partition-id is true and partition-id is included in the
request body.
Table 88. Update Partition Properties Asynchronously: Job status and reason codes (continued)
HTTP error status Reason
code code Description
409 (Conflict) 1 Partition status is not valid to perform the operation.
2 The operation cannot be performed because the object designated by the
request URI is currently busy performing some other operation.
6 The state of the CPC hosting the partition is not valid to perform the
operation (must be in one of the following states: "active",
"service-required", "degraded", or "exceptions".)
8 boot-device can only be set if the boot device type ("network-adapter",
"storage-adapter", "ftp", "iso-image", etc.) points to a valid
URI/Hostname/ISO image. Boot device type cannot be set to null if the boot
device points to the corresponding boot device type.
202 Accepted
server: Hardware management console API web server / 2.0
location: /api/jobs/df6b825a-55b2-11e7-8f25-fa163e6e13bb
cache-control: no-cache
date: Tue, 20 Jun 2017 12:20:39 GMT
content-type: application/json;charset=UTF-8
content-length: 60
{
"job-uri":"/api/jobs/df6b825a-55b2-11e7-8f25-fa163e6e13bb"
}
Start Partition
The Start Partition operation allocates the physical resources required by the partition and begins its
execution on the CPC by booting the partition as configured by its boot-related properties.
In this request, the URI variable {partition-id} is the object ID of the target Partition object.
The result document returned by the Query Job Status operation is specified in the description for the
Query Job Status operation. When the status of the job is "complete", the results include a job
completion status code and reason code (fields job-status-code and job-reason-code) which are set as
indicated in “Job status and reason codes” on page 192. The job-results field contains an empty JSON
object when this operation is successful. When it is not successful, the job-results field contains an object
with the following field:
Description
This operation asynchronously starts the identified partition. When the operation is initiated, a 202
(Accepted) status code is returned. The response body includes a URI that may be queried to retrieve the
status of the operation. See “Query Job Status” on page 80 for information on how to query job status.
When the operation has completed, an asynchronous result message is sent, with Job Status and Reason
Codes described in “Job status and reason codes” on page 192.
If the Partition object's boot-device property is "none", then no program is started in the new partition.
However, other portions of the operation are performed and the partition is placed in the "paused" state.
A 404 (Not Found) status code is returned if the object-id {partition-id} does not identify a partition object
for which the API user has object-access permission. If the user does not have action/task permission to
the Start Partition action, a 403 (Forbidden) status code is returned. If the status of the partition is not
valid, 409 (Conflict) status code is returned. The valid states of the partition are "stopped", "paused" and
"terminated". A 409 (Conflict) status code is also returned if the CPC hosting the partition is not in a
valid state, or if the CPC does not have sufficient processors, memory or adapter resources to allocate to
the partition.
Authorization requirements
This operation has the following authorization requirements:
v Object-access permission to the partition
v Action/task permission for the Start Partition task.
The following HTTP status codes are returned for the indicated errors, and the response body is a
standard error response body providing the reason code indicated and associated error message.
Additional standard status and reason codes can be returned, as described in Chapter 3, “Invoking API
operations,” on page 35.
202 Accepted
server: zSeries management console API web server / 2.0
location: /api/jobs/913b0490-d537-11e5-a9b8-5ef3fcb21ee8
cache-control: no-cache
date: Wed, 17 Feb 2016 05:30:34 GMT
content-type: application/json;charset=UTF-8
content-length: 60
{
"job-uri":"/api/jobs/913b0490-d537-11e5-a9b8-5ef3fcb21ee8"
}
Stop Partition
The Stop Partition operation stops the Partition object designated by {partition-id}.
In this request, the URI variable {partition-id} is the object ID of the target Partition object.
The result document returned by the Query Job Status operation is specified in the description for the
Query Job Status operation. When the status of the job is "complete", the results include a job
completion status code and reason code (fields job-status-code and job-reason-code) which are set as
indicated in “Job status and reason codes” on page 195. The job-results field contains an empty JSON
object when this operation is successful. When it is not successful, the job-results field contains an object
with the following field:
Description
Stop Partition is an orderly process for terminating a partition.
The operation asynchronously stops the identified partition. When the operation is initiated, a 202
(Accepted) status code is returned. The response body includes a URI that may be queried to retrieve the
status of the operation. See “Query Job Status” on page 80 for information on how to query job status.
When the operation has completed, an asynchronous result message is sent, as described in “Job status
and reason codes” on page 195.
A 404 (Not Found) status code is returned if the object-id {partition-id} does not identify a partition object
for which the API user has object-access permission. If the user does not have action/task permission to
the Stop Partition action, a 403 (Forbidden) status code is returned. If the partition is not in a valid state
to perform the stop operation, 409 (Conflict) status code is returned. The valid states to perform Stop
Partition are "active", "paused", and "terminated" .
Authorization requirements
This operation has the following authorization requirements:
v Object-access permission to the partition.
v Action/task permission for the Stop Partition task.
The following HTTP status codes are returned for the indicated errors, and the response body is a
standard error response body providing the reason code indicated and associated error message.
Additional standard status and reason codes can be returned, as described in Chapter 3, “Invoking API
operations,” on page 35.
202 Accepted
server: zSeries management console API web server / 2.0
location: /api/jobs/eebbef94-d537-11e5-9e2e-5ef3fcb21ee8
cache-control: no-cache
date: Wed, 17 Feb 2016 05:33:10 GMT
content-type: application/json;charset=UTF-8
content-length: 60
{
"job-uri":"/api/jobs/eebbef94-d537-11e5-9e2e-5ef3fcb21ee8"
}
Dump Partition
| The Dump Partition operation loads a standalone dump program from a designated SCSI device. This
| operation is not supported when the "dpm-storage-management" feature is enabled on the target
| Partition object.
In this request, the URI variable {partition-id} is the object ID of the target Partition object.