@leaflow/sdk 0.2.0 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (378) hide show
  1. package/dist/generated/assistant/index.d.ts +53 -30
  2. package/dist/generated/assistant/index.js +87 -57
  3. package/dist/generated/assistant/models/checkSenderParams.d.ts +40 -0
  4. package/dist/generated/assistant/models/checkSenderParams.js +31 -0
  5. package/dist/generated/assistant/models/credentialFieldResource.d.ts +37 -0
  6. package/dist/generated/assistant/models/credentialFieldResource.js +31 -0
  7. package/dist/generated/assistant/models/earlierResponseBody.d.ts +36 -0
  8. package/dist/generated/assistant/models/earlierResponseBody.js +1 -0
  9. package/dist/generated/assistant/models/earlierResponseBodyItems.d.ts +32 -0
  10. package/dist/generated/assistant/models/earlierResponseBodyItems.js +1 -0
  11. package/dist/generated/assistant/models/index.d.ts +19 -5
  12. package/dist/generated/assistant/models/index.js +19 -5
  13. package/dist/generated/assistant/models/lengthAwarePageBindingResource.d.ts +41 -0
  14. package/dist/generated/assistant/models/lengthAwarePageBindingResource.js +1 -0
  15. package/dist/generated/assistant/models/lengthAwarePageChannelResource.d.ts +41 -0
  16. package/dist/generated/assistant/models/lengthAwarePageChannelResource.js +1 -0
  17. package/dist/generated/assistant/models/listBindingsParams.d.ts +10 -2
  18. package/dist/generated/assistant/models/listChannelsParams.d.ts +5 -2
  19. package/dist/generated/assistant/models/listEarlierItemsParams.d.ts +37 -0
  20. package/dist/generated/assistant/models/listEarlierItemsParams.js +31 -0
  21. package/dist/generated/assistant/models/listThreadsParams.d.ts +6 -1
  22. package/dist/generated/assistant/models/platformResource.d.ts +8 -0
  23. package/dist/generated/assistant/models/platformResourceCredentialFields.d.ts +32 -0
  24. package/dist/generated/assistant/models/platformResourceCredentialFields.js +1 -0
  25. package/dist/generated/assistant/models/platformResourceSecretSource.d.ts +36 -0
  26. package/dist/generated/assistant/models/platformResourceSecretSource.js +36 -0
  27. package/dist/generated/assistant/models/platformResourceSetupChallenge.d.ts +36 -0
  28. package/dist/generated/assistant/models/platformResourceSetupChallenge.js +36 -0
  29. package/dist/generated/assistant/models/platformResourceSetupMethod.d.ts +35 -0
  30. package/dist/generated/assistant/models/platformResourceSetupMethod.js +35 -0
  31. package/dist/generated/assistant/models/rejectionListResponseBodyRejections.d.ts +2 -2
  32. package/dist/generated/assistant/models/rejectionResource.d.ts +39 -0
  33. package/dist/generated/assistant/models/rejectionResource.js +31 -0
  34. package/dist/generated/assistant/models/rotateSecretRequestBody.d.ts +34 -0
  35. package/dist/generated/assistant/models/rotateSecretRequestBody.js +31 -0
  36. package/dist/generated/assistant/models/senderCheckResource.d.ts +40 -0
  37. package/dist/generated/assistant/models/senderCheckResource.js +1 -0
  38. package/dist/generated/assistant/models/senderCheckResourceAllowFrom.d.ts +31 -0
  39. package/dist/generated/assistant/models/senderCheckResourceAllowFrom.js +31 -0
  40. package/dist/generated/assistant/models/senderCheckResourceBindingId.d.ts +31 -0
  41. package/dist/generated/assistant/models/senderCheckResourceBindingId.js +31 -0
  42. package/dist/generated/assistant/models/senderCheckResourceVerdict.d.ts +37 -0
  43. package/dist/generated/assistant/models/senderCheckResourceVerdict.js +37 -0
  44. package/dist/generated/assistant/models/updateChannelRequestBody.d.ts +7 -0
  45. package/dist/generated/assistant/models/updateChannelRequestBodyAllowFrom.d.ts +34 -0
  46. package/dist/generated/assistant/models/updateChannelRequestBodyAllowFrom.js +31 -0
  47. package/dist/generated/assistant/models/updateChannelRequestBodyCredentials.d.ts +3 -0
  48. package/dist/generated/assistant/models/updateChannelRequestBodySenderPolicy.d.ts +38 -0
  49. package/dist/generated/assistant/models/updateChannelRequestBodySenderPolicy.js +35 -0
  50. package/dist/generated/compute/index.d.ts +234 -101
  51. package/dist/generated/compute/index.js +345 -164
  52. package/dist/generated/compute/models/actOnInstanceRequestBody.d.ts +7 -7
  53. package/dist/generated/compute/models/actOnInstanceRequestBodyAction.d.ts +5 -7
  54. package/dist/generated/compute/models/actOnInstanceRequestBodyAction.js +5 -7
  55. package/dist/generated/compute/models/allocateFloatingIPRequestBody.d.ts +5 -7
  56. package/dist/generated/compute/models/allocateFloatingIPRequestBody.js +5 -7
  57. package/dist/generated/compute/models/attachDiskRequestBody.d.ts +5 -7
  58. package/dist/generated/compute/models/attachDiskRequestBody.js +5 -7
  59. package/dist/generated/compute/models/attachFloatingIPRequestBody.d.ts +5 -7
  60. package/dist/generated/compute/models/attachFloatingIPRequestBody.js +5 -7
  61. package/dist/generated/compute/models/attachPortRequestBody.d.ts +5 -7
  62. package/dist/generated/compute/models/attachPortRequestBody.js +5 -7
  63. package/dist/generated/compute/models/backupListResponseBody.d.ts +27 -0
  64. package/dist/generated/compute/models/backupListResponseBody.js +1 -0
  65. package/dist/generated/compute/models/backupListResponseBodyItems.d.ts +25 -0
  66. package/dist/generated/compute/models/backupListResponseBodyItems.js +1 -0
  67. package/dist/generated/compute/models/backupResource.d.ts +37 -0
  68. package/dist/generated/compute/models/backupResource.js +1 -0
  69. package/dist/generated/compute/models/backupResourceStatus.d.ts +31 -0
  70. package/dist/generated/compute/models/backupResourceStatus.js +31 -0
  71. package/dist/generated/compute/models/bindFloatingIPRequestBody.d.ts +5 -7
  72. package/dist/generated/compute/models/bindFloatingIPRequestBody.js +5 -7
  73. package/dist/generated/compute/models/consoleOutputResponseBody.d.ts +27 -0
  74. package/dist/generated/compute/models/consoleOutputResponseBody.js +24 -0
  75. package/dist/generated/compute/models/consoleResponseBody.d.ts +7 -9
  76. package/dist/generated/compute/models/consoleResponseBody.js +5 -7
  77. package/dist/generated/compute/models/createBackupRequestBody.d.ts +28 -0
  78. package/dist/generated/compute/models/createBackupRequestBody.js +24 -0
  79. package/dist/generated/compute/models/createDiskRequestBody.d.ts +6 -8
  80. package/dist/generated/compute/models/createDiskRequestBody.js +5 -7
  81. package/dist/generated/compute/models/createPortRequestBody.d.ts +5 -7
  82. package/dist/generated/compute/models/createPortRequestBodySecurityGroupIds.d.ts +5 -7
  83. package/dist/generated/compute/models/createPortRequestBodySecurityGroupIds.js +5 -7
  84. package/dist/generated/compute/models/createPrivateImageRequestBody.d.ts +29 -0
  85. package/dist/generated/compute/models/createPrivateImageRequestBody.js +24 -0
  86. package/dist/generated/compute/models/createPrivateNetworkRequestBody.d.ts +5 -7
  87. package/dist/generated/compute/models/createPrivateNetworkRequestBody.js +5 -7
  88. package/dist/generated/compute/models/createRouteRequestBody.d.ts +5 -7
  89. package/dist/generated/compute/models/createRouteRequestBody.js +5 -7
  90. package/dist/generated/compute/models/createSecurityGroupRequestBody.d.ts +5 -7
  91. package/dist/generated/compute/models/createSecurityGroupRequestBody.js +5 -7
  92. package/dist/generated/compute/models/createSecurityRuleRequestBody.d.ts +7 -9
  93. package/dist/generated/compute/models/createSecurityRuleRequestBodyDirection.d.ts +5 -7
  94. package/dist/generated/compute/models/createSecurityRuleRequestBodyDirection.js +5 -7
  95. package/dist/generated/compute/models/createSecurityRuleRequestBodyEthertype.d.ts +5 -7
  96. package/dist/generated/compute/models/createSecurityRuleRequestBodyEthertype.js +5 -7
  97. package/dist/generated/compute/models/createSecurityRuleRequestBodyPortRangeMax.d.ts +6 -8
  98. package/dist/generated/compute/models/createSecurityRuleRequestBodyPortRangeMax.js +5 -7
  99. package/dist/generated/compute/models/createSecurityRuleRequestBodyPortRangeMin.d.ts +6 -8
  100. package/dist/generated/compute/models/createSecurityRuleRequestBodyPortRangeMin.js +5 -7
  101. package/dist/generated/compute/models/createSnapshotRequestBody.d.ts +5 -7
  102. package/dist/generated/compute/models/createSnapshotRequestBody.js +5 -7
  103. package/dist/generated/compute/models/createSubnetRequestBody.d.ts +5 -7
  104. package/dist/generated/compute/models/createSubnetRequestBody.js +5 -7
  105. package/dist/generated/compute/models/diskListResponseBody.d.ts +5 -7
  106. package/dist/generated/compute/models/diskListResponseBodyItems.d.ts +5 -7
  107. package/dist/generated/compute/models/diskResource.d.ts +9 -9
  108. package/dist/generated/compute/models/diskResourceAttachedInstanceId.d.ts +5 -7
  109. package/dist/generated/compute/models/diskResourceAttachedInstanceId.js +5 -7
  110. package/dist/generated/compute/models/diskResourceDevice.d.ts +5 -7
  111. package/dist/generated/compute/models/diskResourceDevice.js +5 -7
  112. package/dist/generated/compute/models/diskResourceStatus.d.ts +8 -7
  113. package/dist/generated/compute/models/diskResourceStatus.js +8 -7
  114. package/dist/generated/compute/models/diskTypeListResponseBody.d.ts +5 -7
  115. package/dist/generated/compute/models/diskTypeListResponseBodyItems.d.ts +5 -7
  116. package/dist/generated/compute/models/diskTypeResource.d.ts +6 -8
  117. package/dist/generated/compute/models/diskTypeResourceMedia.d.ts +5 -7
  118. package/dist/generated/compute/models/diskTypeResourceMedia.js +5 -7
  119. package/dist/generated/compute/models/error.d.ts +5 -7
  120. package/dist/generated/compute/models/errorMeta.d.ts +5 -7
  121. package/dist/generated/compute/models/errorMeta.js +5 -7
  122. package/dist/generated/compute/models/floatingIPListResponseBody.d.ts +5 -7
  123. package/dist/generated/compute/models/floatingIPListResponseBodyItems.d.ts +5 -7
  124. package/dist/generated/compute/models/floatingIPResource.d.ts +6 -7
  125. package/dist/generated/compute/models/floatingIPResourceAttachedFixedIp.d.ts +5 -7
  126. package/dist/generated/compute/models/floatingIPResourceAttachedFixedIp.js +5 -7
  127. package/dist/generated/compute/models/floatingIPResourceAttachedPortId.d.ts +5 -7
  128. package/dist/generated/compute/models/floatingIPResourceAttachedPortId.js +5 -7
  129. package/dist/generated/compute/models/floatingIPResourceBandwidthMbps.d.ts +5 -7
  130. package/dist/generated/compute/models/floatingIPResourceBandwidthMbps.js +5 -7
  131. package/dist/generated/compute/models/floatingIPResourceDetachedAt.d.ts +5 -7
  132. package/dist/generated/compute/models/floatingIPResourceDetachedAt.js +5 -7
  133. package/dist/generated/compute/models/floatingIPResourceStatus.d.ts +10 -11
  134. package/dist/generated/compute/models/floatingIPResourceStatus.js +7 -11
  135. package/dist/generated/compute/models/getInstanceConsoleOutputParams.d.ts +31 -0
  136. package/dist/generated/compute/models/getInstanceConsoleOutputParams.js +24 -0
  137. package/dist/generated/compute/models/iPv6ResponseBody.d.ts +5 -7
  138. package/dist/generated/compute/models/iPv6ResponseBodyStatus.d.ts +5 -7
  139. package/dist/generated/compute/models/iPv6ResponseBodyStatus.js +5 -7
  140. package/dist/generated/compute/models/imageListResponseBody.d.ts +5 -7
  141. package/dist/generated/compute/models/imageListResponseBodyItems.d.ts +5 -7
  142. package/dist/generated/compute/models/imageResource.d.ts +8 -8
  143. package/dist/generated/compute/models/imageResource.js +5 -7
  144. package/dist/generated/compute/models/index.d.ts +48 -9
  145. package/dist/generated/compute/models/index.js +48 -9
  146. package/dist/generated/compute/models/instanceListResponseBody.d.ts +5 -7
  147. package/dist/generated/compute/models/instanceListResponseBodyItems.d.ts +5 -7
  148. package/dist/generated/compute/models/instanceResource.d.ts +31 -9
  149. package/dist/generated/compute/models/instanceResourceImageId.d.ts +27 -0
  150. package/dist/generated/compute/models/instanceResourceImageId.js +24 -0
  151. package/dist/generated/compute/models/instanceResourceIpv6Address.d.ts +27 -0
  152. package/dist/generated/compute/models/instanceResourceIpv6Address.js +24 -0
  153. package/dist/generated/compute/models/instanceResourcePendingInstanceTypeId.d.ts +27 -0
  154. package/dist/generated/compute/models/instanceResourcePendingInstanceTypeId.js +24 -0
  155. package/dist/generated/compute/models/instanceResourcePrivateImageId.d.ts +27 -0
  156. package/dist/generated/compute/models/instanceResourcePrivateImageId.js +24 -0
  157. package/dist/generated/compute/models/instanceResourcePrivateIp.d.ts +27 -0
  158. package/dist/generated/compute/models/instanceResourcePrivateIp.js +24 -0
  159. package/dist/generated/compute/models/instanceResourcePrivateNetworkId.d.ts +27 -0
  160. package/dist/generated/compute/models/instanceResourcePrivateNetworkId.js +24 -0
  161. package/dist/generated/compute/models/instanceResourcePublicIps.d.ts +27 -0
  162. package/dist/generated/compute/models/instanceResourcePublicIps.js +24 -0
  163. package/dist/generated/compute/models/instanceResourceStatus.d.ts +6 -7
  164. package/dist/generated/compute/models/instanceResourceStatus.js +6 -7
  165. package/dist/generated/compute/models/instanceResourceSubnetId.d.ts +27 -0
  166. package/dist/generated/compute/models/instanceResourceSubnetId.js +24 -0
  167. package/dist/generated/compute/models/instanceResourceSuspendedAt.d.ts +5 -7
  168. package/dist/generated/compute/models/instanceResourceSuspendedAt.js +5 -7
  169. package/dist/generated/compute/models/instanceTypeListResponseBody.d.ts +5 -7
  170. package/dist/generated/compute/models/instanceTypeListResponseBodyItems.d.ts +5 -7
  171. package/dist/generated/compute/models/instanceTypeResource.d.ts +6 -8
  172. package/dist/generated/compute/models/instanceTypeResource.js +5 -7
  173. package/dist/generated/compute/models/launchInstanceRequestBody.d.ts +25 -10
  174. package/dist/generated/compute/models/launchInstanceRequestBodySecurityGroupIds.d.ts +5 -7
  175. package/dist/generated/compute/models/launchInstanceRequestBodySecurityGroupIds.js +5 -7
  176. package/dist/generated/compute/models/launchInstanceResponseBody.d.ts +12 -10
  177. package/dist/generated/compute/models/launchInstanceResponseBodyFailure.d.ts +27 -0
  178. package/dist/generated/compute/models/launchInstanceResponseBodyFailure.js +24 -0
  179. package/dist/generated/compute/models/launchInstanceResponseBodyInstances.d.ts +28 -0
  180. package/dist/generated/compute/models/launchInstanceResponseBodyInstances.js +1 -0
  181. package/dist/generated/compute/models/listBackupsParams.d.ts +29 -0
  182. package/dist/generated/compute/models/listBackupsParams.js +24 -0
  183. package/dist/generated/compute/models/listDiskTypesParams.d.ts +5 -7
  184. package/dist/generated/compute/models/listDiskTypesParams.js +5 -7
  185. package/dist/generated/compute/models/listDisksParams.d.ts +5 -7
  186. package/dist/generated/compute/models/listDisksParams.js +5 -7
  187. package/dist/generated/compute/models/listImagesParams.d.ts +5 -7
  188. package/dist/generated/compute/models/listImagesParams.js +5 -7
  189. package/dist/generated/compute/models/listInstanceTypesParams.d.ts +5 -7
  190. package/dist/generated/compute/models/listInstanceTypesParams.js +5 -7
  191. package/dist/generated/compute/models/listOperationLogsParams.d.ts +39 -0
  192. package/dist/generated/compute/models/listOperationLogsParams.js +24 -0
  193. package/dist/generated/compute/models/listPrivateImagesParams.d.ts +30 -0
  194. package/dist/generated/compute/models/listPrivateImagesParams.js +24 -0
  195. package/dist/generated/compute/models/listPrivateNetworksParams.d.ts +5 -7
  196. package/dist/generated/compute/models/listPrivateNetworksParams.js +5 -7
  197. package/dist/generated/compute/models/listSecurityGroupsParams.d.ts +5 -7
  198. package/dist/generated/compute/models/listSecurityGroupsParams.js +5 -7
  199. package/dist/generated/compute/models/listSnapshotsParams.d.ts +29 -0
  200. package/dist/generated/compute/models/listSnapshotsParams.js +24 -0
  201. package/dist/generated/compute/models/nextFreeCidrResponseBody.d.ts +5 -7
  202. package/dist/generated/compute/models/nextFreeCidrResponseBody.js +5 -7
  203. package/dist/generated/compute/models/operationLogListResponseBody.d.ts +28 -0
  204. package/dist/generated/compute/models/operationLogListResponseBody.js +1 -0
  205. package/dist/generated/compute/models/operationLogListResponseBodyItems.d.ts +25 -0
  206. package/dist/generated/compute/models/operationLogListResponseBodyItems.js +1 -0
  207. package/dist/generated/compute/models/operationLogResource.d.ts +46 -0
  208. package/dist/generated/compute/models/operationLogResource.js +1 -0
  209. package/dist/generated/compute/models/operationLogResourceActor.d.ts +27 -0
  210. package/dist/generated/compute/models/operationLogResourceActor.js +24 -0
  211. package/dist/generated/compute/models/operationLogResourceFailure.d.ts +27 -0
  212. package/dist/generated/compute/models/operationLogResourceFailure.js +24 -0
  213. package/dist/generated/compute/models/operationLogResourcePayload.d.ts +29 -0
  214. package/dist/generated/compute/models/operationLogResourcePayload.js +24 -0
  215. package/dist/generated/compute/models/operationLogResourceRegionCode.d.ts +24 -0
  216. package/dist/generated/compute/models/operationLogResourceRegionCode.js +24 -0
  217. package/dist/generated/compute/models/portListResponseBody.d.ts +5 -7
  218. package/dist/generated/compute/models/portListResponseBodyItems.d.ts +5 -7
  219. package/dist/generated/compute/models/portResource.d.ts +5 -7
  220. package/dist/generated/compute/models/portResourceAttachedInstanceId.d.ts +5 -7
  221. package/dist/generated/compute/models/portResourceAttachedInstanceId.js +5 -7
  222. package/dist/generated/compute/models/portResourceIpv6Address.d.ts +5 -7
  223. package/dist/generated/compute/models/portResourceIpv6Address.js +5 -7
  224. package/dist/generated/compute/models/portResourceMac.d.ts +5 -7
  225. package/dist/generated/compute/models/portResourceMac.js +5 -7
  226. package/dist/generated/compute/models/portResourcePrivateIp.d.ts +5 -7
  227. package/dist/generated/compute/models/portResourcePrivateIp.js +5 -7
  228. package/dist/generated/compute/models/privateImageListResponseBody.d.ts +27 -0
  229. package/dist/generated/compute/models/privateImageListResponseBody.js +1 -0
  230. package/dist/generated/compute/models/privateImageListResponseBodyItems.d.ts +25 -0
  231. package/dist/generated/compute/models/privateImageListResponseBodyItems.js +1 -0
  232. package/dist/generated/compute/models/privateImageResource.d.ts +49 -0
  233. package/dist/generated/compute/models/privateImageResource.js +1 -0
  234. package/dist/generated/compute/models/privateImageResourceFailure.d.ts +27 -0
  235. package/dist/generated/compute/models/privateImageResourceFailure.js +24 -0
  236. package/dist/generated/compute/models/privateImageResourceSourceInstanceId.d.ts +27 -0
  237. package/dist/generated/compute/models/privateImageResourceSourceInstanceId.js +24 -0
  238. package/dist/generated/compute/models/privateImageResourceStatus.d.ts +31 -0
  239. package/dist/generated/compute/models/privateImageResourceStatus.js +31 -0
  240. package/dist/generated/compute/models/privateNetworkListResponseBody.d.ts +5 -7
  241. package/dist/generated/compute/models/privateNetworkListResponseBodyItems.d.ts +5 -7
  242. package/dist/generated/compute/models/privateNetworkResource.d.ts +5 -7
  243. package/dist/generated/compute/models/privateNetworkResourceGatewayV4.d.ts +5 -7
  244. package/dist/generated/compute/models/privateNetworkResourceGatewayV4.js +5 -7
  245. package/dist/generated/compute/models/privateNetworkResourceGatewayV6.d.ts +5 -7
  246. package/dist/generated/compute/models/privateNetworkResourceGatewayV6.js +5 -7
  247. package/dist/generated/compute/models/privateNetworkResourceStatus.d.ts +5 -7
  248. package/dist/generated/compute/models/privateNetworkResourceStatus.js +5 -7
  249. package/dist/generated/compute/models/rebuildInstanceRequestBody.d.ts +12 -9
  250. package/dist/generated/compute/models/rebuildInstanceRequestBody.js +5 -7
  251. package/dist/generated/compute/models/rebuildInstanceResponseBody.d.ts +6 -8
  252. package/dist/generated/compute/models/regionListResponseBody.d.ts +5 -7
  253. package/dist/generated/compute/models/regionListResponseBodyItems.d.ts +5 -7
  254. package/dist/generated/compute/models/regionResource.d.ts +5 -7
  255. package/dist/generated/compute/models/regionResource.js +5 -7
  256. package/dist/generated/compute/models/renameBackupRequestBody.d.ts +27 -0
  257. package/dist/generated/compute/models/renameBackupRequestBody.js +24 -0
  258. package/dist/generated/compute/models/renameDiskRequestBody.d.ts +5 -7
  259. package/dist/generated/compute/models/renameDiskRequestBody.js +5 -7
  260. package/dist/generated/compute/models/renameInstanceRequestBody.d.ts +5 -7
  261. package/dist/generated/compute/models/renameInstanceRequestBody.js +5 -7
  262. package/dist/generated/compute/models/renamePrivateImageRequestBody.d.ts +27 -0
  263. package/dist/generated/compute/models/renamePrivateImageRequestBody.js +24 -0
  264. package/dist/generated/compute/models/renamePrivateNetworkRequestBody.d.ts +27 -0
  265. package/dist/generated/compute/models/renamePrivateNetworkRequestBody.js +24 -0
  266. package/dist/generated/compute/models/renameSnapshotRequestBody.d.ts +27 -0
  267. package/dist/generated/compute/models/renameSnapshotRequestBody.js +24 -0
  268. package/dist/generated/compute/models/resetPasswordRequestBody.d.ts +32 -0
  269. package/dist/generated/compute/models/resetPasswordRequestBody.js +24 -0
  270. package/dist/generated/compute/models/resetPasswordResponseBody.d.ts +27 -0
  271. package/dist/generated/compute/models/resetPasswordResponseBody.js +24 -0
  272. package/dist/generated/compute/models/resizeDiskRequestBody.d.ts +5 -7
  273. package/dist/generated/compute/models/resizeDiskRequestBody.js +5 -7
  274. package/dist/generated/compute/models/resizeInstanceRequestBody.d.ts +6 -8
  275. package/dist/generated/compute/models/resizeInstanceRequestBody.js +5 -7
  276. package/dist/generated/compute/models/restoreBackupRequestBody.d.ts +37 -0
  277. package/dist/generated/compute/models/restoreBackupRequestBody.js +24 -0
  278. package/dist/generated/compute/models/revertDiskRequestBody.d.ts +27 -0
  279. package/dist/generated/compute/models/revertDiskRequestBody.js +24 -0
  280. package/dist/generated/compute/models/routeListResponseBody.d.ts +5 -7
  281. package/dist/generated/compute/models/routeListResponseBodyItems.d.ts +5 -7
  282. package/dist/generated/compute/models/routeResource.d.ts +5 -7
  283. package/dist/generated/compute/models/routeResource.js +5 -7
  284. package/dist/generated/compute/models/securityGroupListResponseBody.d.ts +5 -7
  285. package/dist/generated/compute/models/securityGroupListResponseBodyItems.d.ts +5 -7
  286. package/dist/generated/compute/models/securityGroupResource.d.ts +5 -7
  287. package/dist/generated/compute/models/securityGroupResource.js +5 -7
  288. package/dist/generated/compute/models/securityRuleListResponseBody.d.ts +5 -7
  289. package/dist/generated/compute/models/securityRuleListResponseBodyItems.d.ts +5 -7
  290. package/dist/generated/compute/models/securityRuleResource.d.ts +5 -7
  291. package/dist/generated/compute/models/securityRuleResourceDirection.d.ts +5 -7
  292. package/dist/generated/compute/models/securityRuleResourceDirection.js +5 -7
  293. package/dist/generated/compute/models/securityRuleResourceEthertype.d.ts +5 -7
  294. package/dist/generated/compute/models/securityRuleResourceEthertype.js +5 -7
  295. package/dist/generated/compute/models/securityRuleResourcePortRangeMax.d.ts +5 -7
  296. package/dist/generated/compute/models/securityRuleResourcePortRangeMax.js +5 -7
  297. package/dist/generated/compute/models/securityRuleResourcePortRangeMin.d.ts +5 -7
  298. package/dist/generated/compute/models/securityRuleResourcePortRangeMin.js +5 -7
  299. package/dist/generated/compute/models/securityRuleResourceProtocol.d.ts +5 -7
  300. package/dist/generated/compute/models/securityRuleResourceProtocol.js +5 -7
  301. package/dist/generated/compute/models/securityRuleResourceRemoteIpPrefix.d.ts +5 -7
  302. package/dist/generated/compute/models/securityRuleResourceRemoteIpPrefix.js +5 -7
  303. package/dist/generated/compute/models/setBandwidthRequestBody.d.ts +6 -8
  304. package/dist/generated/compute/models/setBandwidthRequestBody.js +5 -7
  305. package/dist/generated/compute/models/snapshotListResponseBody.d.ts +5 -7
  306. package/dist/generated/compute/models/snapshotListResponseBodyItems.d.ts +5 -7
  307. package/dist/generated/compute/models/snapshotResource.d.ts +7 -7
  308. package/dist/generated/compute/models/snapshotResourceStatus.d.ts +6 -7
  309. package/dist/generated/compute/models/snapshotResourceStatus.js +6 -7
  310. package/dist/generated/compute/models/subnetListResponseBody.d.ts +5 -7
  311. package/dist/generated/compute/models/subnetListResponseBodyItems.d.ts +5 -7
  312. package/dist/generated/compute/models/subnetResource.d.ts +5 -7
  313. package/dist/generated/compute/models/subnetResourceGatewayIp.d.ts +5 -7
  314. package/dist/generated/compute/models/subnetResourceGatewayIp.js +5 -7
  315. package/dist/generated/compute/models/subnetResourceIpVersion.d.ts +5 -7
  316. package/dist/generated/compute/models/subnetResourceIpVersion.js +5 -7
  317. package/dist/generated/compute/models/suggestSubnetCidrParams.d.ts +5 -7
  318. package/dist/generated/compute/models/suggestSubnetCidrParams.js +5 -7
  319. package/dist/generated/compute/models/zoneListResponseBody.d.ts +5 -7
  320. package/dist/generated/compute/models/zoneListResponseBodyItems.d.ts +5 -7
  321. package/dist/generated/compute/models/zoneResource.d.ts +5 -7
  322. package/dist/generated/compute/models/zoneResource.js +5 -7
  323. package/dist/generated/iam/index.d.ts +53 -73
  324. package/dist/generated/iam/index.js +81 -119
  325. package/dist/generated/iam/models/createSSHKeyRequestBody.d.ts +39 -0
  326. package/dist/generated/iam/models/createSSHKeyRequestBody.js +1 -0
  327. package/dist/generated/iam/models/createSSHKeyRequestBodyOwner.d.ts +29 -0
  328. package/dist/generated/iam/models/createSSHKeyRequestBodyOwner.js +26 -0
  329. package/dist/generated/iam/models/createSSHKeyRequestBodyPurposes.d.ts +26 -0
  330. package/dist/generated/iam/models/createSSHKeyRequestBodyPurposes.js +22 -0
  331. package/dist/generated/iam/models/index.d.ts +11 -16
  332. package/dist/generated/iam/models/index.js +11 -16
  333. package/dist/generated/iam/models/lengthAwarePageInvitationResource.d.ts +32 -0
  334. package/dist/generated/iam/models/lengthAwarePageInvitationResource.js +1 -0
  335. package/dist/generated/iam/models/lengthAwarePageMemberResource.d.ts +32 -0
  336. package/dist/generated/iam/models/lengthAwarePageMemberResource.js +1 -0
  337. package/dist/generated/iam/models/lengthAwarePageProjectAccessResource.d.ts +32 -0
  338. package/dist/generated/iam/models/lengthAwarePageProjectAccessResource.js +1 -0
  339. package/dist/generated/iam/models/lengthAwarePageSSHKeyResource.d.ts +32 -0
  340. package/dist/generated/iam/models/lengthAwarePageSSHKeyResource.js +1 -0
  341. package/dist/generated/iam/models/listMembersParams.d.ts +5 -4
  342. package/dist/generated/iam/models/listMyInvitationsParams.d.ts +5 -4
  343. package/dist/generated/iam/models/listProjectInvitationsParams.d.ts +5 -4
  344. package/dist/generated/iam/models/listProjectsParams.d.ts +5 -4
  345. package/dist/generated/iam/models/listSshKeysParams.d.ts +45 -0
  346. package/dist/generated/iam/models/listSshKeysParams.js +1 -0
  347. package/dist/generated/iam/models/listSshKeysStatus.d.ts +26 -0
  348. package/dist/generated/iam/models/listSshKeysStatus.js +26 -0
  349. package/dist/generated/iam/models/renameSSHKeyRequestBody.d.ts +25 -0
  350. package/dist/generated/iam/models/renameSSHKeyRequestBody.js +22 -0
  351. package/dist/generated/iam/models/sSHKeyResource.d.ts +7 -0
  352. package/dist/generated/iam/models/sSHKeyResourcePurposes.d.ts +25 -0
  353. package/dist/generated/iam/models/sSHKeyResourcePurposes.js +22 -0
  354. package/dist/generated/monitoring/index.d.ts +38 -35
  355. package/dist/generated/monitoring/index.js +68 -68
  356. package/dist/generated/monitoring/models/cursorPageIncidentActivityResource.d.ts +31 -0
  357. package/dist/generated/monitoring/models/cursorPageIncidentActivityResource.js +1 -0
  358. package/dist/generated/monitoring/models/index.d.ts +3 -6
  359. package/dist/generated/monitoring/models/index.js +3 -6
  360. package/dist/generated/monitoring/models/lengthAwarePageIncidentResource.d.ts +35 -0
  361. package/dist/generated/monitoring/models/lengthAwarePageIncidentResource.js +1 -0
  362. package/dist/generated/monitoring/models/lengthAwarePageServerResource.d.ts +35 -0
  363. package/dist/generated/monitoring/models/lengthAwarePageServerResource.js +1 -0
  364. package/dist/generated/monitoring/models/listIncidentsParams.d.ts +5 -4
  365. package/dist/generated/monitoring/models/listServersParams.d.ts +5 -4
  366. package/dist/http.d.ts +76 -23
  367. package/dist/http.js +105 -24
  368. package/dist/index.d.ts +2 -2
  369. package/dist/index.js +5 -5
  370. package/openapi/assistant.version +1 -1
  371. package/openapi/assistant.yaml +351 -259
  372. package/openapi/compute.version +1 -1
  373. package/openapi/compute.yaml +1198 -761
  374. package/openapi/iam.version +1 -1
  375. package/openapi/iam.yaml +199 -318
  376. package/openapi/monitoring.version +1 -1
  377. package/openapi/monitoring.yaml +92 -305
  378. package/package.json +1 -1
@@ -9,6 +9,9 @@ components:
9
9
  - stop
10
10
  - reboot
11
11
  type: string
12
+ force:
13
+ description: 仅适用于 reboot。强制重启不等待操作系统正常关闭,未落盘的数据会丢失,用于系统已无响应的情况
14
+ type: boolean
12
15
  required:
13
16
  - action
14
17
  type: object
@@ -52,6 +55,60 @@ components:
52
55
  required:
53
56
  - port_id
54
57
  type: object
58
+ BackupListResponseBody:
59
+ additionalProperties: false
60
+ properties:
61
+ items:
62
+ items:
63
+ $ref: "#/components/schemas/BackupResource"
64
+ type:
65
+ - array
66
+ - "null"
67
+ required:
68
+ - items
69
+ type: object
70
+ BackupResource:
71
+ additionalProperties: false
72
+ properties:
73
+ availability_zone:
74
+ description: 源云硬盘所在的可用区。恢复时可选择本地区的其他可用区
75
+ type: string
76
+ created_at:
77
+ format: date-time
78
+ type: string
79
+ id:
80
+ format: uuid
81
+ type: string
82
+ name:
83
+ type: string
84
+ region_code:
85
+ type: string
86
+ size_gb:
87
+ description: 创建备份时源云硬盘的容量。恢复出的云硬盘不能小于此容量
88
+ format: int64
89
+ type: integer
90
+ source_disk_id:
91
+ description: 备份来源。该云硬盘删除后本备份仍然可用
92
+ format: uuid
93
+ type: string
94
+ status:
95
+ enum:
96
+ - provisioning
97
+ - available
98
+ - restoring
99
+ - deleting
100
+ - error
101
+ type: string
102
+ required:
103
+ - id
104
+ - source_disk_id
105
+ - name
106
+ - size_gb
107
+ - status
108
+ - region_code
109
+ - availability_zone
110
+ - created_at
111
+ type: object
55
112
  BindFloatingIPRequestBody:
56
113
  additionalProperties: false
57
114
  properties:
@@ -61,19 +118,42 @@ components:
61
118
  required:
62
119
  - port_id
63
120
  type: object
121
+ ConsoleOutputResponseBody:
122
+ additionalProperties: false
123
+ properties:
124
+ output:
125
+ description: 串口输出的原始文本,行序与云服务器内一致
126
+ type: string
127
+ required:
128
+ - output
129
+ type: object
64
130
  ConsoleResponseBody:
65
131
  additionalProperties: false
66
132
  properties:
67
- websocket_url:
68
- description: VNC 的 WebSocket 地址,一次性使用且很快失效
133
+ console_url:
134
+ description: 远程控制台的连接地址,一次性使用且数分钟后失效
135
+ type: string
136
+ required:
137
+ - console_url
138
+ type: object
139
+ CreateBackupRequestBody:
140
+ additionalProperties: false
141
+ properties:
142
+ disk_id:
143
+ format: uuid
144
+ type: string
145
+ name:
146
+ maxLength: 128
69
147
  type: string
70
148
  required:
71
- - websocket_url
149
+ - disk_id
150
+ - name
72
151
  type: object
73
152
  CreateDiskRequestBody:
74
153
  additionalProperties: false
75
154
  properties:
76
- disk_type_sku:
155
+ disk_type_id:
156
+ format: uuid
77
157
  maxLength: 64
78
158
  type: string
79
159
  name:
@@ -87,28 +167,10 @@ components:
87
167
  description: 从该快照恢复。提供时容量只需不小于快照本身
88
168
  type: string
89
169
  required:
90
- - disk_type_sku
170
+ - disk_type_id
91
171
  - name
92
172
  - size_gb
93
173
  type: object
94
- CreateInstanceImageRequestBody:
95
- additionalProperties: false
96
- properties:
97
- name:
98
- maxLength: 128
99
- type: string
100
- required:
101
- - name
102
- type: object
103
- CreateInstanceImageResponseBody:
104
- additionalProperties: false
105
- properties:
106
- image_id:
107
- description: 新建镜像的 id。该镜像尚未上架为可售镜像
108
- type: string
109
- required:
110
- - image_id
111
- type: object
112
174
  CreatePortRequestBody:
113
175
  additionalProperties: false
114
176
  properties:
@@ -134,6 +196,20 @@ components:
134
196
  - subnet_id
135
197
  - security_group_ids
136
198
  type: object
199
+ CreatePrivateImageRequestBody:
200
+ additionalProperties: false
201
+ properties:
202
+ instance_id:
203
+ description: 制作依据其系统盘,数据盘不包含在内
204
+ format: uuid
205
+ type: string
206
+ name:
207
+ maxLength: 128
208
+ type: string
209
+ required:
210
+ - instance_id
211
+ - name
212
+ type: object
137
213
  CreatePrivateNetworkRequestBody:
138
214
  additionalProperties: false
139
215
  properties:
@@ -203,13 +279,13 @@ components:
203
279
  - IPv6
204
280
  type: string
205
281
  port_range_max:
206
- description: ICMP 上这是 code(0–255),不是端口
282
+ description: ICMP 协议下表示 code(0–255),而非端口
207
283
  format: int64
208
284
  type:
209
285
  - integer
210
286
  - "null"
211
287
  port_range_min:
212
- description: ICMP 上这是 type(0–255),不是端口
288
+ description: ICMP 协议下表示 type(0–255),而非端口
213
289
  format: int64
214
290
  type:
215
291
  - integer
@@ -273,7 +349,7 @@ components:
273
349
  - string
274
350
  - "null"
275
351
  availability_zone:
276
- description: 以存储服务返回的为准。挂载时云服务器必须位于同一可用区
352
+ description: 云硬盘实际所在的可用区。挂载时云服务器必须位于同一可用区
277
353
  type: string
278
354
  created_at:
279
355
  format: date-time
@@ -283,11 +359,15 @@ components:
283
359
  type:
284
360
  - string
285
361
  - "null"
286
- disk_type_sku:
362
+ disk_type_id:
363
+ format: uuid
287
364
  type: string
288
365
  id:
289
366
  format: uuid
290
367
  type: string
368
+ is_system:
369
+ description: 系统盘随云服务器一并释放,不能卸载也不能单独删除
370
+ type: boolean
291
371
  name:
292
372
  type: string
293
373
  region_code:
@@ -303,6 +383,9 @@ components:
303
383
  - in_use
304
384
  - detaching
305
385
  - resizing
386
+ - reverting
387
+ - restoring
388
+ - releasing
306
389
  - deleting
307
390
  - error
308
391
  type: string
@@ -311,9 +394,10 @@ components:
311
394
  - name
312
395
  - region_code
313
396
  - availability_zone
314
- - disk_type_sku
397
+ - disk_type_id
315
398
  - size_gb
316
399
  - status
400
+ - is_system
317
401
  - attached_instance_id
318
402
  - device
319
403
  - created_at
@@ -335,6 +419,9 @@ components:
335
419
  properties:
336
420
  availability_zone_code:
337
421
  type: string
422
+ id:
423
+ format: uuid
424
+ type: string
338
425
  iops_display:
339
426
  type: string
340
427
  max_size_gb:
@@ -353,15 +440,13 @@ components:
353
440
  type: string
354
441
  region_code:
355
442
  type: string
356
- sku:
357
- type: string
358
443
  step_gb:
359
444
  format: int64
360
445
  type: integer
361
446
  throughput_display:
362
447
  type: string
363
448
  required:
364
- - sku
449
+ - id
365
450
  - name
366
451
  - media
367
452
  - region_code
@@ -433,11 +518,10 @@ components:
433
518
  region_code:
434
519
  type: string
435
520
  status:
521
+ description: idle 表示尚未绑定到网卡
436
522
  enum:
437
- - available
438
- - associated
439
- - blackholed
440
- - scrubbing
523
+ - idle
524
+ - bound
441
525
  type: string
442
526
  required:
443
527
  - id
@@ -487,6 +571,9 @@ components:
487
571
  properties:
488
572
  architecture:
489
573
  type: string
574
+ id:
575
+ format: uuid
576
+ type: string
490
577
  min_disk_gb:
491
578
  format: int64
492
579
  type: integer
@@ -501,10 +588,11 @@ components:
501
588
  type: string
502
589
  region_code:
503
590
  type: string
504
- sku:
505
- type: string
591
+ supports_password_reset:
592
+ description: false 表示由该镜像创建的云服务器只能通过重装系统设置新密码
593
+ type: boolean
506
594
  required:
507
- - sku
595
+ - id
508
596
  - name
509
597
  - os_family
510
598
  - os_version
@@ -512,6 +600,7 @@ components:
512
600
  - region_code
513
601
  - min_disk_gb
514
602
  - min_ram_mb
603
+ - supports_password_reset
515
604
  type: object
516
605
  InstanceListResponseBody:
517
606
  additionalProperties: false
@@ -539,12 +628,52 @@ components:
539
628
  id:
540
629
  format: uuid
541
630
  type: string
542
- image_sku:
543
- type: string
544
- instance_type_sku:
631
+ image_id:
632
+ description: 从平台提供的镜像创建时非空
633
+ format: uuid
634
+ type:
635
+ - string
636
+ - "null"
637
+ instance_type_id:
638
+ description: 当前生效的机型,即当前计费依据
639
+ format: uuid
545
640
  type: string
641
+ ipv6_address:
642
+ description: 云服务器主网卡的 IPv6 地址。私有网络启用 IPv6 后自动下发
643
+ type:
644
+ - string
645
+ - "null"
546
646
  name:
547
647
  type: string
648
+ pending_instance_type_id:
649
+ description: 非空表示存在待确认的变配。确认后该机型生效,回滚则丢弃
650
+ format: uuid
651
+ type:
652
+ - string
653
+ - "null"
654
+ private_image_id:
655
+ description: 从自制的私有镜像创建时非空
656
+ format: uuid
657
+ type:
658
+ - string
659
+ - "null"
660
+ private_ip:
661
+ description: 云服务器的内网地址
662
+ type:
663
+ - string
664
+ - "null"
665
+ private_network_id:
666
+ description: 云服务器主网卡所在的私有网络
667
+ type:
668
+ - string
669
+ - "null"
670
+ public_ips:
671
+ description: 云服务器主网卡上绑定的公网 IPv4,未绑定时为空数组
672
+ items:
673
+ type: string
674
+ type:
675
+ - array
676
+ - "null"
548
677
  region_code:
549
678
  type: string
550
679
  status:
@@ -554,10 +683,16 @@ components:
554
683
  - stopped
555
684
  - rebooting
556
685
  - resizing
686
+ - resize_verifying
557
687
  - error
558
688
  - deleting
559
689
  - suspended
560
690
  type: string
691
+ subnet_id:
692
+ description: 云服务器主网卡所在的子网
693
+ type:
694
+ - string
695
+ - "null"
561
696
  suspended_at:
562
697
  description: 非空表示已被平台停服,需先解除后才能操作
563
698
  format: date-time
@@ -573,8 +708,15 @@ components:
573
708
  - hostname
574
709
  - region_code
575
710
  - availability_zone
576
- - instance_type_sku
577
- - image_sku
711
+ - private_network_id
712
+ - subnet_id
713
+ - private_ip
714
+ - public_ips
715
+ - ipv6_address
716
+ - instance_type_id
717
+ - pending_instance_type_id
718
+ - image_id
719
+ - private_image_id
578
720
  - status
579
721
  - suspended_at
580
722
  - created_at
@@ -598,6 +740,9 @@ components:
598
740
  availability_zone_code:
599
741
  description: 该机型所属的可用区。云硬盘必须位于同一可用区才能挂载
600
742
  type: string
743
+ id:
744
+ format: uuid
745
+ type: string
601
746
  max_bandwidth_mbps:
602
747
  format: int64
603
748
  type: integer
@@ -614,13 +759,11 @@ components:
614
759
  type: integer
615
760
  region_code:
616
761
  type: string
617
- sku:
618
- type: string
619
762
  vcpus:
620
763
  format: int64
621
764
  type: integer
622
765
  required:
623
- - sku
766
+ - id
624
767
  - name
625
768
  - vcpus
626
769
  - ram_mb
@@ -633,13 +776,22 @@ components:
633
776
  LaunchInstanceRequestBody:
634
777
  additionalProperties: false
635
778
  properties:
779
+ count:
780
+ description: 一次创建的台数,留空为 1。多台时名称自动编号
781
+ format: int64
782
+ maximum: 20
783
+ minimum: 0
784
+ type: integer
636
785
  generate_password:
637
786
  description: 由平台生成随机密码,仅在本次响应中返回
638
787
  type: boolean
639
- image_sku:
788
+ image_id:
789
+ description: 平台提供的镜像。与 private_image_id 二选一
790
+ format: uuid
640
791
  maxLength: 64
641
792
  type: string
642
- instance_type_sku:
793
+ instance_type_id:
794
+ format: uuid
643
795
  maxLength: 64
644
796
  type: string
645
797
  name:
@@ -649,6 +801,16 @@ components:
649
801
  description: root 的登录密码。留空时仅使用项目的 SSH 公钥
650
802
  maxLength: 128
651
803
  type: string
804
+ private_image_id:
805
+ description: 自制镜像。与 image_id 二选一
806
+ format: uuid
807
+ type: string
808
+ root_disk_gb:
809
+ description: 系统盘容量(GB)。留空时按镜像要求与平台下限自动选择
810
+ format: int64
811
+ maximum: 32768
812
+ minimum: 0
813
+ type: integer
652
814
  security_group_ids:
653
815
  description: 至少一个。不会自动使用默认安全组,需显式指定
654
816
  items:
@@ -662,22 +824,32 @@ components:
662
824
  type: string
663
825
  required:
664
826
  - name
665
- - instance_type_sku
666
- - image_sku
827
+ - instance_type_id
667
828
  - subnet_id
668
829
  - security_group_ids
669
830
  type: object
670
831
  LaunchInstanceResponseBody:
671
832
  additionalProperties: false
672
833
  properties:
673
- instance:
674
- $ref: "#/components/schemas/InstanceResource"
834
+ failure:
835
+ description: 非空表示只成功创建了部分云服务器,其余因该原因中止
836
+ type:
837
+ - string
838
+ - "null"
839
+ instances:
840
+ description: 按请求顺序返回,单台创建时也是数组
841
+ items:
842
+ $ref: "#/components/schemas/InstanceResource"
843
+ type:
844
+ - array
845
+ - "null"
675
846
  password:
676
- description: 只在创建时返回这一次,请立刻保存
847
+ description: 仅在本次响应中返回,请及时保存。批量创建时所有云服务器共用它
677
848
  type: string
678
849
  required:
679
- - instance
850
+ - instances
680
851
  - password
852
+ - failure
681
853
  type: object
682
854
  NextFreeCidrResponseBody:
683
855
  additionalProperties: false
@@ -688,6 +860,75 @@ components:
688
860
  required:
689
861
  - cidr
690
862
  type: object
863
+ OperationLogListResponseBody:
864
+ additionalProperties: false
865
+ properties:
866
+ items:
867
+ items:
868
+ $ref: "#/components/schemas/OperationLogResource"
869
+ type:
870
+ - array
871
+ - "null"
872
+ total:
873
+ format: int64
874
+ type: integer
875
+ required:
876
+ - items
877
+ - total
878
+ type: object
879
+ OperationLogResource:
880
+ additionalProperties: false
881
+ properties:
882
+ action:
883
+ description: 操作名,与接口的 operation id 一致
884
+ type: string
885
+ actor:
886
+ description: 发起该操作的用户。平台执行时为空
887
+ type:
888
+ - string
889
+ - "null"
890
+ by_platform:
891
+ description: true 表示由平台代为执行
892
+ type: boolean
893
+ created_at:
894
+ format: date-time
895
+ type: string
896
+ failure:
897
+ description: 失败时的简要原因
898
+ type:
899
+ - string
900
+ - "null"
901
+ id:
902
+ format: uuid
903
+ type: string
904
+ payload:
905
+ additionalProperties: {}
906
+ description: 该次请求的路径与查询参数。密码一类的字段已被隐去
907
+ type: object
908
+ region_code:
909
+ type:
910
+ - string
911
+ - "null"
912
+ subject_id:
913
+ description: 创建类操作为空:新资源的 id 在响应中,不在请求路径上
914
+ type: string
915
+ subject_type:
916
+ type: string
917
+ succeeded:
918
+ type: boolean
919
+ required:
920
+ - id
921
+ - action
922
+ - by_platform
923
+ - actor
924
+ - subject_type
925
+ - subject_id
926
+ - region_code
927
+ - payload
928
+ - succeeded
929
+ - failure
930
+ - created_at
931
+ type: object
691
932
  PortListResponseBody:
692
933
  additionalProperties: false
693
934
  properties:
@@ -744,78 +985,164 @@ components:
744
985
  - private_ip
745
986
  - ipv6_address
746
987
  type: object
747
- PrivateNetworkListResponseBody:
988
+ PrivateImageListResponseBody:
748
989
  additionalProperties: false
749
990
  properties:
750
991
  items:
751
992
  items:
752
- $ref: "#/components/schemas/PrivateNetworkResource"
993
+ $ref: "#/components/schemas/PrivateImageResource"
753
994
  type:
754
995
  - array
755
996
  - "null"
756
997
  required:
757
998
  - items
758
999
  type: object
759
- PrivateNetworkResource:
1000
+ PrivateImageResource:
760
1001
  additionalProperties: false
761
1002
  properties:
762
- cidr:
1003
+ architecture:
763
1004
  type: string
764
1005
  created_at:
765
1006
  format: date-time
766
1007
  type: string
767
- gateway_v4:
768
- description: 该私有网络出口的 v4 地址
769
- type:
770
- - string
771
- - "null"
772
- gateway_v6:
773
- description: 该私有网络出口的 v6 地址,未启用 IPv6 时为空
1008
+ failure:
1009
+ description: 制作失败的原因,仅在 status 为 error 时非空
774
1010
  type:
775
1011
  - string
776
1012
  - "null"
777
- has_internet_gateway:
778
- type: boolean
779
1013
  id:
780
1014
  format: uuid
781
1015
  type: string
1016
+ min_disk_gb:
1017
+ description: 使用本镜像创建云服务器时,系统盘不能小于此容量
1018
+ format: int64
1019
+ type: integer
1020
+ min_ram_mb:
1021
+ description: 使用本镜像创建云服务器时,机型内存不能小于此容量
1022
+ format: int64
1023
+ type: integer
782
1024
  name:
783
1025
  type: string
1026
+ os_family:
1027
+ type: string
1028
+ os_version:
1029
+ type: string
784
1030
  region_code:
1031
+ description: 镜像只能用于所在地区
785
1032
  type: string
1033
+ size_bytes:
1034
+ description: 镜像占用的存储容量,制作完成前为 0
1035
+ format: int64
1036
+ type: integer
1037
+ source_instance_id:
1038
+ description: 制作来源。该云服务器释放后本镜像仍然可用
1039
+ format: uuid
1040
+ type:
1041
+ - string
1042
+ - "null"
786
1043
  status:
787
1044
  enum:
1045
+ - provisioning
1046
+ - uploading
788
1047
  - available
1048
+ - deleting
789
1049
  - error
790
1050
  type: string
791
- updated_at:
792
- format: date-time
793
- type: string
1051
+ supports_password_reset:
1052
+ description: false 表示由该镜像创建的云服务器只能通过重装系统设置新密码
1053
+ type: boolean
794
1054
  required:
795
1055
  - id
796
1056
  - name
1057
+ - source_instance_id
797
1058
  - region_code
798
- - cidr
799
1059
  - status
800
- - has_internet_gateway
801
- - gateway_v4
802
- - gateway_v6
803
- - created_at
804
- - updated_at
805
- type: object
1060
+ - failure
1061
+ - min_disk_gb
1062
+ - min_ram_mb
1063
+ - supports_password_reset
1064
+ - size_bytes
1065
+ - os_family
1066
+ - os_version
1067
+ - architecture
1068
+ - created_at
1069
+ type: object
1070
+ PrivateNetworkListResponseBody:
1071
+ additionalProperties: false
1072
+ properties:
1073
+ items:
1074
+ items:
1075
+ $ref: "#/components/schemas/PrivateNetworkResource"
1076
+ type:
1077
+ - array
1078
+ - "null"
1079
+ required:
1080
+ - items
1081
+ type: object
1082
+ PrivateNetworkResource:
1083
+ additionalProperties: false
1084
+ properties:
1085
+ cidr:
1086
+ type: string
1087
+ created_at:
1088
+ format: date-time
1089
+ type: string
1090
+ gateway_v4:
1091
+ description: 该私有网络出口的 v4 地址
1092
+ type:
1093
+ - string
1094
+ - "null"
1095
+ gateway_v6:
1096
+ description: 该私有网络出口的 v6 地址,未启用 IPv6 时为空
1097
+ type:
1098
+ - string
1099
+ - "null"
1100
+ has_internet_gateway:
1101
+ type: boolean
1102
+ id:
1103
+ format: uuid
1104
+ type: string
1105
+ name:
1106
+ type: string
1107
+ region_code:
1108
+ type: string
1109
+ status:
1110
+ enum:
1111
+ - available
1112
+ - error
1113
+ type: string
1114
+ updated_at:
1115
+ format: date-time
1116
+ type: string
1117
+ required:
1118
+ - id
1119
+ - name
1120
+ - region_code
1121
+ - cidr
1122
+ - status
1123
+ - has_internet_gateway
1124
+ - gateway_v4
1125
+ - gateway_v6
1126
+ - created_at
1127
+ - updated_at
1128
+ type: object
806
1129
  RebuildInstanceRequestBody:
807
1130
  additionalProperties: false
808
1131
  properties:
809
1132
  generate_password:
810
1133
  type: boolean
811
- image_sku:
1134
+ image_id:
1135
+ description: 平台提供的镜像。与 private_image_id 二选一
1136
+ format: uuid
812
1137
  maxLength: 64
813
1138
  type: string
814
1139
  password:
815
1140
  maxLength: 128
816
1141
  type: string
817
- required:
818
- - image_sku
1142
+ private_image_id:
1143
+ description: 自制镜像。与 image_id 二选一
1144
+ format: uuid
1145
+ type: string
819
1146
  type: object
820
1147
  RebuildInstanceResponseBody:
821
1148
  additionalProperties: false
@@ -823,7 +1150,7 @@ components:
823
1150
  instance:
824
1151
  $ref: "#/components/schemas/InstanceResource"
825
1152
  password:
826
- description: 只在这一次返回
1153
+ description: 仅在本次响应中返回,请及时保存
827
1154
  type: string
828
1155
  required:
829
1156
  - instance
@@ -855,6 +1182,15 @@ components:
855
1182
  - name
856
1183
  - country_code
857
1184
  type: object
1185
+ RenameBackupRequestBody:
1186
+ additionalProperties: false
1187
+ properties:
1188
+ name:
1189
+ maxLength: 128
1190
+ type: string
1191
+ required:
1192
+ - name
1193
+ type: object
858
1194
  RenameDiskRequestBody:
859
1195
  additionalProperties: false
860
1196
  properties:
@@ -873,6 +1209,53 @@ components:
873
1209
  required:
874
1210
  - name
875
1211
  type: object
1212
+ RenamePrivateImageRequestBody:
1213
+ additionalProperties: false
1214
+ properties:
1215
+ name:
1216
+ maxLength: 128
1217
+ type: string
1218
+ required:
1219
+ - name
1220
+ type: object
1221
+ RenamePrivateNetworkRequestBody:
1222
+ additionalProperties: false
1223
+ properties:
1224
+ name:
1225
+ maxLength: 128
1226
+ type: string
1227
+ required:
1228
+ - name
1229
+ type: object
1230
+ RenameSnapshotRequestBody:
1231
+ additionalProperties: false
1232
+ properties:
1233
+ name:
1234
+ maxLength: 128
1235
+ type: string
1236
+ required:
1237
+ - name
1238
+ type: object
1239
+ ResetPasswordRequestBody:
1240
+ additionalProperties: false
1241
+ properties:
1242
+ generate_password:
1243
+ description: 由平台生成随机密码,仅在本次响应中返回
1244
+ type: boolean
1245
+ password:
1246
+ description: 新的 root 密码。与 generate_password 二选一
1247
+ maxLength: 128
1248
+ type: string
1249
+ type: object
1250
+ ResetPasswordResponseBody:
1251
+ additionalProperties: false
1252
+ properties:
1253
+ password:
1254
+ description: 平台生成的密码,仅本次返回。自行设置密码时为空
1255
+ type: string
1256
+ required:
1257
+ - password
1258
+ type: object
876
1259
  ResizeDiskRequestBody:
877
1260
  additionalProperties: false
878
1261
  properties:
@@ -887,12 +1270,43 @@ components:
887
1270
  ResizeInstanceRequestBody:
888
1271
  additionalProperties: false
889
1272
  properties:
890
- instance_type_sku:
1273
+ instance_type_id:
891
1274
  description: 必须与当前机型位于同一地区和可用区
1275
+ format: uuid
892
1276
  maxLength: 64
893
1277
  type: string
894
1278
  required:
895
- - instance_type_sku
1279
+ - instance_type_id
1280
+ type: object
1281
+ RestoreBackupRequestBody:
1282
+ additionalProperties: false
1283
+ properties:
1284
+ disk_type_id:
1285
+ description: 可选择与源云硬盘不同的可用区,但必须在同一地区
1286
+ format: uuid
1287
+ maxLength: 64
1288
+ type: string
1289
+ name:
1290
+ maxLength: 128
1291
+ type: string
1292
+ size_gb:
1293
+ description: 留空时与备份等大。给出时不能小于备份
1294
+ format: int64
1295
+ minimum: 0
1296
+ type: integer
1297
+ required:
1298
+ - disk_type_id
1299
+ - name
1300
+ type: object
1301
+ RevertDiskRequestBody:
1302
+ additionalProperties: false
1303
+ properties:
1304
+ snapshot_id:
1305
+ description: 必须是该云硬盘最新的一个快照
1306
+ format: uuid
1307
+ type: string
1308
+ required:
1309
+ - snapshot_id
896
1310
  type: object
897
1311
  RouteListResponseBody:
898
1312
  additionalProperties: false
@@ -1035,7 +1449,7 @@ components:
1035
1449
  additionalProperties: false
1036
1450
  properties:
1037
1451
  mbps:
1038
- description: 出入两个方向都会限到这个值
1452
+ description: 出入方向均限制为该值
1039
1453
  format: int64
1040
1454
  minimum: 1
1041
1455
  type: integer
@@ -1057,6 +1471,9 @@ components:
1057
1471
  SnapshotResource:
1058
1472
  additionalProperties: false
1059
1473
  properties:
1474
+ availability_zone:
1475
+ description: 由该快照恢复的云硬盘必须位于此可用区
1476
+ type: string
1060
1477
  created_at:
1061
1478
  format: date-time
1062
1479
  type: string
@@ -1078,6 +1495,7 @@ components:
1078
1495
  enum:
1079
1496
  - provisioning
1080
1497
  - available
1498
+ - restoring
1081
1499
  - deleting
1082
1500
  - error
1083
1501
  type: string
@@ -1087,6 +1505,7 @@ components:
1087
1505
  - name
1088
1506
  - size_gb
1089
1507
  - status
1508
+ - availability_zone
1090
1509
  - region_code
1091
1510
  - created_at
1092
1511
  type: object
@@ -1156,97 +1575,53 @@ components:
1156
1575
  - code
1157
1576
  - name
1158
1577
  type: object
1578
+ securitySchemes:
1579
+ bearerAuth:
1580
+ bearerFormat: JWT
1581
+ description: 项目令牌。先在 auth.leaflow.net 登录拿到账号令牌,再用它向 IAM 换取项目令牌(POST /api/v1/projects/{projectId}/token)——一张项目令牌同时说明当前用户和当前项目。
1582
+ scheme: bearer
1583
+ type: http
1159
1584
  info:
1160
1585
  description: |-
1161
- 用户自己用的接口:云服务器、云硬盘、快照、私有网络、子网、路由、安全组、网卡、公网 IP。
1586
+ Leaflow 计算的用户接口,用于管理云服务器、云硬盘、快照、备份、自制镜像、私有网络、子网、路由、安全组、网卡与公网 IP。
1162
1587
 
1163
- ## 怎么带身份
1588
+ ## 身份与鉴权
1164
1589
 
1165
- 每个请求都要带 `Authorization: Bearer <项目令牌>`。先在 auth.leaflow.net 登录拿到账号令牌,再用它向 IAM 换取项目令牌(`POST /api/v1/projects/{projectId}/token`)。一张项目令牌同时说明当前用户和当前项目。
1590
+ 每个请求需携带 `Authorization: Bearer <项目令牌>`。先在 auth.leaflow.net 登录获取账号令牌,再用它向 IAM 换取项目令牌(`POST /api/v1/projects/{projectId}/token`)。一张项目令牌同时说明当前用户和当前项目。
1166
1591
 
1167
1592
  **路径和请求头上都没有 `project_id`**:当前项目由令牌决定。
1168
1593
 
1169
- 失败时按出路区分:`IDENTITY_EXPIRED` 表示令牌过期,重新换取即可,无需重新登录;`PROJECT_FORBIDDEN` 表示当前账号不是该项目成员;`PROJECT_UNAVAILABLE` 表示项目欠费或正在删除;`PROJECT_NOT_WRITABLE` 表示项目仍可访问但不再接受写入。
1170
-
1171
- **欠费停服的项目仍然可以删除资源。** 新建和修改会返回 `PROJECT_NOT_WRITABLE`,`DELETE` 照常放行——云硬盘和公网 IP 在停服期间仍然计费,删除是止损手段。
1594
+ 鉴权在网关完成,失败的请求不会到达这些接口。按错误码区分处理方式:`PROJECT_TOKEN_MISSING` 表示没带令牌;`PROJECT_TOKEN_EXPIRED` 表示令牌过期,用账号令牌重新换取即可,无需重新登录;`PROJECT_TOKEN_INVALID` 表示令牌验不过;`NOT_A_MEMBER` 表示当前账号不是该项目成员;`USER_SUSPENDED` / `USER_BANNED` 表示账号本身不能操作。
1172
1595
 
1173
1596
  ## 通用约定
1174
1597
 
1175
1598
  - **操作是异步的。** 创建云服务器、创建云硬盘、变更配置在返回时尚未完成,资源处于 `provisioning` 等中间状态,需轮询 GET 确认结果。查询单个资源时会同步一次当前状态。
1176
1599
  - **可用区。** 云硬盘与云服务器必须位于同一可用区才能挂载。机型和硬盘类型各自绑定在一个可用区上,选定类型即选定可用区。
1177
- - **IPv6 不单独售卖。** IPv6 地址通过 SLAAC 下发到网卡,启用 IPv6 是私有网络上的一个开关,而非一次购买。
1600
+ - **IPv6 不单独售卖。** 在私有网络上启用后,IPv6 地址会自动下发至该网络内的云服务器,无需也无法单独申领。
1178
1601
  - **公网 IP 有冷却期。** 释放后短时间内既不能重新申领,也不会分配给其他用户,以免仍指向该地址的 DNS 记录和访问白名单立即失效。
1179
1602
  - **密码只返回一次。** 创建或重装时若由平台生成密码,它仅出现在该次响应中,请及时保存。
1180
1603
  title: Leaflow 计算用户 API
1181
1604
  version: 1.0.0
1182
1605
  openapi: 3.1.0
1183
1606
  paths:
1184
- /api/v1/disk-types:
1185
- get:
1186
- operationId: list-disk-types
1187
- parameters:
1188
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1189
- in: header
1190
- name: Authorization
1191
- required: true
1192
- schema:
1193
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1194
- type: string
1195
- - explode: false
1196
- in: query
1197
- name: region_code
1198
- required: true
1199
- schema:
1200
- maxLength: 32
1201
- type: string
1202
- responses:
1203
- "200":
1204
- content:
1205
- application/json:
1206
- schema:
1207
- $ref: "#/components/schemas/DiskTypeListResponseBody"
1208
- description: OK
1209
- default:
1210
- content:
1211
- application/json:
1212
- schema:
1213
- $ref: "#/components/schemas/Error"
1214
- description: Error
1215
- summary: 列出在售硬盘类型
1216
- tags:
1217
- - Catalog
1218
- /api/v1/disks:
1607
+ /api/v1/backups:
1219
1608
  get:
1220
- description: 同时提供 region_code 与 availability_zone 时,只返回可挂载到该位置云服务器的云硬盘。
1221
- operationId: list-disks
1609
+ operationId: list-backups
1222
1610
  parameters:
1223
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1224
- in: header
1225
- name: Authorization
1226
- required: true
1227
- schema:
1228
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1229
- type: string
1230
- - explode: false
1231
- in: query
1232
- name: region_code
1233
- schema:
1234
- maxLength: 32
1235
- type: string
1236
- - description: 与 region_code 同时提供,用于筛选可挂载的云硬盘
1611
+ - description: 只返回该云硬盘的备份
1237
1612
  explode: false
1238
1613
  in: query
1239
- name: availability_zone
1614
+ name: disk_id
1240
1615
  schema:
1241
- description: 与 region_code 同时提供,用于筛选可挂载的云硬盘
1242
- maxLength: 64
1616
+ description: 只返回该云硬盘的备份
1617
+ format: uuid
1243
1618
  type: string
1244
1619
  responses:
1245
1620
  "200":
1246
1621
  content:
1247
1622
  application/json:
1248
1623
  schema:
1249
- $ref: "#/components/schemas/DiskListResponseBody"
1624
+ $ref: "#/components/schemas/BackupListResponseBody"
1250
1625
  description: OK
1251
1626
  default:
1252
1627
  content:
@@ -1254,32 +1629,29 @@ paths:
1254
1629
  schema:
1255
1630
  $ref: "#/components/schemas/Error"
1256
1631
  description: Error
1257
- summary: 列出云硬盘
1632
+ summary: 列出备份
1258
1633
  tags:
1259
- - Disk
1634
+ - Backup
1260
1635
  post:
1261
- description: 云硬盘创建在所选硬盘类型所属的可用区,云服务器必须位于同一可用区才能挂载。因此选定硬盘类型即确定了可用区。
1262
- operationId: create-disk
1263
- parameters:
1264
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1265
- in: header
1266
- name: Authorization
1267
- required: true
1268
- schema:
1269
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1270
- type: string
1636
+ description: |-
1637
+ 备份是云硬盘在独立存储中的一份完整副本:**源云硬盘删除后仍可恢复,且可恢复到本地区的其他可用区。**快照不具备这两项能力,它与源云硬盘位于同一存储,且源云硬盘存在快照时无法删除。
1638
+
1639
+ 运行中云服务器上挂载的云硬盘、以及系统盘,均可创建备份。
1640
+
1641
+ 备份耗时取决于数据量。接口返回时尚未完成,请轮询查看接口。
1642
+ operationId: create-backup
1271
1643
  requestBody:
1272
1644
  content:
1273
1645
  application/json:
1274
1646
  schema:
1275
- $ref: "#/components/schemas/CreateDiskRequestBody"
1647
+ $ref: "#/components/schemas/CreateBackupRequestBody"
1276
1648
  required: true
1277
1649
  responses:
1278
1650
  "201":
1279
1651
  content:
1280
1652
  application/json:
1281
1653
  schema:
1282
- $ref: "#/components/schemas/DiskResource"
1654
+ $ref: "#/components/schemas/BackupResource"
1283
1655
  description: Created
1284
1656
  default:
1285
1657
  content:
@@ -1287,23 +1659,16 @@ paths:
1287
1659
  schema:
1288
1660
  $ref: "#/components/schemas/Error"
1289
1661
  description: Error
1290
- summary: 创建云硬盘
1662
+ summary: 创建备份
1291
1663
  tags:
1292
- - Disk
1293
- /api/v1/disks/{diskId}:
1664
+ - Backup
1665
+ /api/v1/backups/{backupId}:
1294
1666
  delete:
1295
- description: 云硬盘仍处于挂载状态,或仍存在快照时,删除会被拒绝。
1296
- operationId: delete-disk
1667
+ description: 与源云硬盘无关,源云硬盘是否存在都不影响删除。
1668
+ operationId: delete-backup
1297
1669
  parameters:
1298
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1299
- in: header
1300
- name: Authorization
1301
- required: true
1302
- schema:
1303
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1304
- type: string
1305
1670
  - in: path
1306
- name: diskId
1671
+ name: backupId
1307
1672
  required: true
1308
1673
  schema:
1309
1674
  format: uuid
@@ -1317,22 +1682,15 @@ paths:
1317
1682
  schema:
1318
1683
  $ref: "#/components/schemas/Error"
1319
1684
  description: Error
1320
- summary: 删除云硬盘
1685
+ summary: 删除备份
1321
1686
  tags:
1322
- - Disk
1687
+ - Backup
1323
1688
  get:
1324
- description: 会同步一次底层的当前状态,因此比列表接口慢但更准确。
1325
- operationId: get-disk
1689
+ description: 会实时查询备份的当前状态,因此比列表接口慢但更准确。轮询创建进度请使用本接口。
1690
+ operationId: get-backup
1326
1691
  parameters:
1327
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1328
- in: header
1329
- name: Authorization
1330
- required: true
1331
- schema:
1332
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1333
- type: string
1334
1692
  - in: path
1335
- name: diskId
1693
+ name: backupId
1336
1694
  required: true
1337
1695
  schema:
1338
1696
  format: uuid
@@ -1342,7 +1700,7 @@ paths:
1342
1700
  content:
1343
1701
  application/json:
1344
1702
  schema:
1345
- $ref: "#/components/schemas/DiskResource"
1703
+ $ref: "#/components/schemas/BackupResource"
1346
1704
  description: OK
1347
1705
  default:
1348
1706
  content:
@@ -1350,22 +1708,14 @@ paths:
1350
1708
  schema:
1351
1709
  $ref: "#/components/schemas/Error"
1352
1710
  description: Error
1353
- summary: 查看云硬盘
1711
+ summary: 查看备份
1354
1712
  tags:
1355
- - Disk
1713
+ - Backup
1356
1714
  patch:
1357
- description: 仅可修改名称。容量请使用扩容接口,类型与可用区不可修改。
1358
- operationId: rename-disk
1715
+ operationId: rename-backup
1359
1716
  parameters:
1360
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1361
- in: header
1362
- name: Authorization
1363
- required: true
1364
- schema:
1365
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1366
- type: string
1367
1717
  - in: path
1368
- name: diskId
1718
+ name: backupId
1369
1719
  required: true
1370
1720
  schema:
1371
1721
  format: uuid
@@ -1374,14 +1724,14 @@ paths:
1374
1724
  content:
1375
1725
  application/json:
1376
1726
  schema:
1377
- $ref: "#/components/schemas/RenameDiskRequestBody"
1727
+ $ref: "#/components/schemas/RenameBackupRequestBody"
1378
1728
  required: true
1379
1729
  responses:
1380
1730
  "200":
1381
1731
  content:
1382
1732
  application/json:
1383
1733
  schema:
1384
- $ref: "#/components/schemas/DiskResource"
1734
+ $ref: "#/components/schemas/BackupResource"
1385
1735
  description: OK
1386
1736
  default:
1387
1737
  content:
@@ -1389,23 +1739,19 @@ paths:
1389
1739
  schema:
1390
1740
  $ref: "#/components/schemas/Error"
1391
1741
  description: Error
1392
- summary: 重命名云硬盘
1742
+ summary: 重命名备份
1393
1743
  tags:
1394
- - Disk
1395
- /api/v1/disks/{diskId}/resize:
1744
+ - Backup
1745
+ /api/v1/backups/{backupId}/restore:
1396
1746
  post:
1397
- description: 容量只能增加,不支持缩容。扩容完成后需在云服务器内自行扩展文件系统。
1398
- operationId: resize-disk
1747
+ description: |-
1748
+ 恢复到一块**新建的**云硬盘上,源云硬盘不受影响,也不要求它仍然存在。
1749
+
1750
+ 目标硬盘类型可位于本地区的其他可用区,容量不能小于备份。恢复完成前该云硬盘不可挂载,请轮询云硬盘查看接口。
1751
+ operationId: restore-backup
1399
1752
  parameters:
1400
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1401
- in: header
1402
- name: Authorization
1403
- required: true
1404
- schema:
1405
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1406
- type: string
1407
1753
  - in: path
1408
- name: diskId
1754
+ name: backupId
1409
1755
  required: true
1410
1756
  schema:
1411
1757
  format: uuid
@@ -1414,35 +1760,266 @@ paths:
1414
1760
  content:
1415
1761
  application/json:
1416
1762
  schema:
1417
- $ref: "#/components/schemas/ResizeDiskRequestBody"
1763
+ $ref: "#/components/schemas/RestoreBackupRequestBody"
1418
1764
  required: true
1419
1765
  responses:
1420
- "200":
1766
+ "201":
1421
1767
  content:
1422
1768
  application/json:
1423
1769
  schema:
1424
1770
  $ref: "#/components/schemas/DiskResource"
1425
- description: OK
1771
+ description: Created
1426
1772
  default:
1427
1773
  content:
1428
1774
  application/json:
1429
1775
  schema:
1430
1776
  $ref: "#/components/schemas/Error"
1431
1777
  description: Error
1432
- summary: 扩容
1778
+ summary: 由备份恢复
1433
1779
  tags:
1434
- - Disk
1435
- /api/v1/floating-ips:
1780
+ - Backup
1781
+ /api/v1/disk-types:
1436
1782
  get:
1437
- operationId: list-floating-ips
1783
+ operationId: list-disk-types
1438
1784
  parameters:
1439
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1440
- in: header
1441
- name: Authorization
1442
- required: true
1443
- schema:
1444
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1785
+ - explode: false
1786
+ in: query
1787
+ name: region_code
1788
+ required: true
1789
+ schema:
1790
+ maxLength: 32
1791
+ type: string
1792
+ responses:
1793
+ "200":
1794
+ content:
1795
+ application/json:
1796
+ schema:
1797
+ $ref: "#/components/schemas/DiskTypeListResponseBody"
1798
+ description: OK
1799
+ default:
1800
+ content:
1801
+ application/json:
1802
+ schema:
1803
+ $ref: "#/components/schemas/Error"
1804
+ description: Error
1805
+ summary: 列出在售硬盘类型
1806
+ tags:
1807
+ - Catalog
1808
+ /api/v1/disks:
1809
+ get:
1810
+ description: 同时提供 region_code 与 availability_zone 时,只返回可挂载到该位置云服务器的云硬盘。
1811
+ operationId: list-disks
1812
+ parameters:
1813
+ - explode: false
1814
+ in: query
1815
+ name: region_code
1816
+ schema:
1817
+ maxLength: 32
1818
+ type: string
1819
+ - description: 与 region_code 同时提供,用于筛选可挂载的云硬盘
1820
+ explode: false
1821
+ in: query
1822
+ name: availability_zone
1823
+ schema:
1824
+ description: 与 region_code 同时提供,用于筛选可挂载的云硬盘
1825
+ maxLength: 64
1826
+ type: string
1827
+ responses:
1828
+ "200":
1829
+ content:
1830
+ application/json:
1831
+ schema:
1832
+ $ref: "#/components/schemas/DiskListResponseBody"
1833
+ description: OK
1834
+ default:
1835
+ content:
1836
+ application/json:
1837
+ schema:
1838
+ $ref: "#/components/schemas/Error"
1839
+ description: Error
1840
+ summary: 列出云硬盘
1841
+ tags:
1842
+ - Disk
1843
+ post:
1844
+ description: 云硬盘创建在所选硬盘类型所属的可用区,云服务器必须位于同一可用区才能挂载。因此选定硬盘类型即确定了可用区。
1845
+ operationId: create-disk
1846
+ requestBody:
1847
+ content:
1848
+ application/json:
1849
+ schema:
1850
+ $ref: "#/components/schemas/CreateDiskRequestBody"
1851
+ required: true
1852
+ responses:
1853
+ "201":
1854
+ content:
1855
+ application/json:
1856
+ schema:
1857
+ $ref: "#/components/schemas/DiskResource"
1858
+ description: Created
1859
+ default:
1860
+ content:
1861
+ application/json:
1862
+ schema:
1863
+ $ref: "#/components/schemas/Error"
1864
+ description: Error
1865
+ summary: 创建云硬盘
1866
+ tags:
1867
+ - Disk
1868
+ /api/v1/disks/{diskId}:
1869
+ delete:
1870
+ description: 云硬盘处于挂载状态,或仍存在基于它创建的快照时,删除会被拒绝。
1871
+ operationId: delete-disk
1872
+ parameters:
1873
+ - in: path
1874
+ name: diskId
1875
+ required: true
1876
+ schema:
1877
+ format: uuid
1878
+ type: string
1879
+ responses:
1880
+ "204":
1881
+ description: No Content
1882
+ default:
1883
+ content:
1884
+ application/json:
1885
+ schema:
1886
+ $ref: "#/components/schemas/Error"
1887
+ description: Error
1888
+ summary: 删除云硬盘
1889
+ tags:
1890
+ - Disk
1891
+ get:
1892
+ description: 会实时查询云硬盘的当前状态,因此比列表接口慢但更准确。
1893
+ operationId: get-disk
1894
+ parameters:
1895
+ - in: path
1896
+ name: diskId
1897
+ required: true
1898
+ schema:
1899
+ format: uuid
1900
+ type: string
1901
+ responses:
1902
+ "200":
1903
+ content:
1904
+ application/json:
1905
+ schema:
1906
+ $ref: "#/components/schemas/DiskResource"
1907
+ description: OK
1908
+ default:
1909
+ content:
1910
+ application/json:
1911
+ schema:
1912
+ $ref: "#/components/schemas/Error"
1913
+ description: Error
1914
+ summary: 查看云硬盘
1915
+ tags:
1916
+ - Disk
1917
+ patch:
1918
+ description: 仅可修改名称。容量请使用扩容接口,类型与可用区不可修改。
1919
+ operationId: rename-disk
1920
+ parameters:
1921
+ - in: path
1922
+ name: diskId
1923
+ required: true
1924
+ schema:
1925
+ format: uuid
1926
+ type: string
1927
+ requestBody:
1928
+ content:
1929
+ application/json:
1930
+ schema:
1931
+ $ref: "#/components/schemas/RenameDiskRequestBody"
1932
+ required: true
1933
+ responses:
1934
+ "200":
1935
+ content:
1936
+ application/json:
1937
+ schema:
1938
+ $ref: "#/components/schemas/DiskResource"
1939
+ description: OK
1940
+ default:
1941
+ content:
1942
+ application/json:
1943
+ schema:
1944
+ $ref: "#/components/schemas/Error"
1945
+ description: Error
1946
+ summary: 重命名云硬盘
1947
+ tags:
1948
+ - Disk
1949
+ /api/v1/disks/{diskId}/resize:
1950
+ post:
1951
+ description: 容量只能增加,不支持缩容。扩容完成后需在云服务器内自行扩展文件系统。
1952
+ operationId: resize-disk
1953
+ parameters:
1954
+ - in: path
1955
+ name: diskId
1956
+ required: true
1957
+ schema:
1958
+ format: uuid
1445
1959
  type: string
1960
+ requestBody:
1961
+ content:
1962
+ application/json:
1963
+ schema:
1964
+ $ref: "#/components/schemas/ResizeDiskRequestBody"
1965
+ required: true
1966
+ responses:
1967
+ "200":
1968
+ content:
1969
+ application/json:
1970
+ schema:
1971
+ $ref: "#/components/schemas/DiskResource"
1972
+ description: OK
1973
+ default:
1974
+ content:
1975
+ application/json:
1976
+ schema:
1977
+ $ref: "#/components/schemas/Error"
1978
+ description: Error
1979
+ summary: 扩容
1980
+ tags:
1981
+ - Disk
1982
+ /api/v1/disks/{diskId}/revert:
1983
+ post:
1984
+ description: |-
1985
+ 将云硬盘的内容恢复到创建该快照的时刻。**该时刻之后写入的数据全部丢失,且无法撤销。**
1986
+
1987
+ 三项限制:只能回滚到该云硬盘最新的一个快照;云硬盘必须先从云服务器上卸载;创建快照后扩容过的云硬盘不能回滚。需要回到更早的时刻,或需要保留现有云硬盘时,请改用由快照创建一块新的云硬盘。
1988
+
1989
+ 接口返回时回滚尚未完成,请轮询查看接口。
1990
+ operationId: revert-disk
1991
+ parameters:
1992
+ - in: path
1993
+ name: diskId
1994
+ required: true
1995
+ schema:
1996
+ format: uuid
1997
+ type: string
1998
+ requestBody:
1999
+ content:
2000
+ application/json:
2001
+ schema:
2002
+ $ref: "#/components/schemas/RevertDiskRequestBody"
2003
+ required: true
2004
+ responses:
2005
+ "200":
2006
+ content:
2007
+ application/json:
2008
+ schema:
2009
+ $ref: "#/components/schemas/DiskResource"
2010
+ description: OK
2011
+ default:
2012
+ content:
2013
+ application/json:
2014
+ schema:
2015
+ $ref: "#/components/schemas/Error"
2016
+ description: Error
2017
+ summary: 回滚到快照
2018
+ tags:
2019
+ - Disk
2020
+ /api/v1/floating-ips:
2021
+ get:
2022
+ operationId: list-floating-ips
1446
2023
  responses:
1447
2024
  "200":
1448
2025
  content:
@@ -1463,16 +2040,8 @@ paths:
1463
2040
  description: |-
1464
2041
  若该私有网络尚未连通外网,会一并为其接入外网。
1465
2042
 
1466
- IPv6 不通过本接口申请:IPv6 地址由 SLAAC 下发到网卡,启用 IPv6 是私有网络上的一个开关。
2043
+ IPv6 不通过本接口申请。IPv6 地址由私有网络自动下发至云服务器,在私有网络上启用即可。
1467
2044
  operationId: allocate-floating-ip
1468
- parameters:
1469
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1470
- in: header
1471
- name: Authorization
1472
- required: true
1473
- schema:
1474
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1475
- type: string
1476
2045
  requestBody:
1477
2046
  content:
1478
2047
  application/json:
@@ -1500,13 +2069,6 @@ paths:
1500
2069
  description: 地址释放后进入冷却期才会重新分配,以免仍指向它的 DNS 记录和访问白名单立即失效。因此释放后的短时间内**无法重新申领同一个地址**,请谨慎操作。
1501
2070
  operationId: release-floating-ip
1502
2071
  parameters:
1503
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1504
- in: header
1505
- name: Authorization
1506
- required: true
1507
- schema:
1508
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1509
- type: string
1510
2072
  - in: path
1511
2073
  name: floatingIpId
1512
2074
  required: true
@@ -1528,13 +2090,6 @@ paths:
1528
2090
  get:
1529
2091
  operationId: get-floating-ip
1530
2092
  parameters:
1531
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1532
- in: header
1533
- name: Authorization
1534
- required: true
1535
- schema:
1536
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1537
- type: string
1538
2093
  - in: path
1539
2094
  name: floatingIpId
1540
2095
  required: true
@@ -1562,13 +2117,6 @@ paths:
1562
2117
  description: 出入两个方向同时限速。仅限制出方向无法防止入方向流量打满上联带宽。
1563
2118
  operationId: set-floating-ip-bandwidth
1564
2119
  parameters:
1565
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1566
- in: header
1567
- name: Authorization
1568
- required: true
1569
- schema:
1570
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1571
- type: string
1572
2120
  - in: path
1573
2121
  name: floatingIpId
1574
2122
  required: true
@@ -1602,13 +2150,6 @@ paths:
1602
2150
  description: 地址仍归本项目持有,只是不再指向任何网卡。
1603
2151
  operationId: unbind-floating-ip
1604
2152
  parameters:
1605
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1606
- in: header
1607
- name: Authorization
1608
- required: true
1609
- schema:
1610
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1611
- type: string
1612
2153
  - in: path
1613
2154
  name: floatingIpId
1614
2155
  required: true
@@ -1634,13 +2175,6 @@ paths:
1634
2175
  put:
1635
2176
  operationId: bind-floating-ip
1636
2177
  parameters:
1637
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1638
- in: header
1639
- name: Authorization
1640
- required: true
1641
- schema:
1642
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1643
- type: string
1644
2178
  - in: path
1645
2179
  name: floatingIpId
1646
2180
  required: true
@@ -1674,13 +2208,6 @@ paths:
1674
2208
  description: min_ram_mb 超过所选机型内存的镜像无法启动,请据此过滤可选项。
1675
2209
  operationId: list-images
1676
2210
  parameters:
1677
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1678
- in: header
1679
- name: Authorization
1680
- required: true
1681
- schema:
1682
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1683
- type: string
1684
2211
  - explode: false
1685
2212
  in: query
1686
2213
  name: region_code
@@ -1708,13 +2235,6 @@ paths:
1708
2235
  get:
1709
2236
  operationId: list-instance-types
1710
2237
  parameters:
1711
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1712
- in: header
1713
- name: Authorization
1714
- required: true
1715
- schema:
1716
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1717
- type: string
1718
2238
  - explode: false
1719
2239
  in: query
1720
2240
  name: region_code
@@ -1741,14 +2261,6 @@ paths:
1741
2261
  /api/v1/instances:
1742
2262
  get:
1743
2263
  operationId: list-instances
1744
- parameters:
1745
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1746
- in: header
1747
- name: Authorization
1748
- required: true
1749
- schema:
1750
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1751
- type: string
1752
2264
  responses:
1753
2265
  "200":
1754
2266
  content:
@@ -1767,20 +2279,18 @@ paths:
1767
2279
  - Instance
1768
2280
  post:
1769
2281
  description: |-
1770
- **必须提供一种登录方式**:项目上已有 SSH 公钥,或在请求中设置密码。两者都没有时请求会被拒绝,否则创建出的云服务器将无法登录。
2282
+ **必须在请求中设置密码**:不设置时请求会被拒绝,否则创建出的云服务器将无法登录。密码可由平台生成,此时仅在本次响应中返回一次。
2283
+
2284
+ `count` 可一次创建多台(最多 20 台),名称自动加 `-1`、`-2` 编号,所有云服务器共用同一个密码。**响应中的 `instances` 始终是数组**,单台创建时也是。
2285
+
2286
+ 批量创建按顺序逐台进行。若中途失败(例如配额不足),**已创建的云服务器会保留**,响应中的 `failure` 给出中止原因;第一台就失败时视为整次请求失败,不会创建任何云服务器。
2287
+
2288
+ 镜像二选一:`image_id` 使用平台提供的镜像,`private_image_id` 使用自制镜像。两者都给或都不给都会被拒绝。
1771
2289
 
1772
2290
  云服务器创建在机型所属的可用区。后续要挂载的云硬盘必须位于同一可用区。
1773
2291
 
1774
2292
  接口返回时创建尚未完成(status 为 provisioning),请轮询 GET 确认结果。
1775
2293
  operationId: launch-instance
1776
- parameters:
1777
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1778
- in: header
1779
- name: Authorization
1780
- required: true
1781
- schema:
1782
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1783
- type: string
1784
2294
  requestBody:
1785
2295
  content:
1786
2296
  application/json:
@@ -1805,16 +2315,12 @@ paths:
1805
2315
  - Instance
1806
2316
  /api/v1/instances/{instanceId}:
1807
2317
  delete:
1808
- description: 系统盘随云服务器一并删除。数据盘会被卸载并保留。主网卡随云服务器一并释放。
2318
+ description: |-
2319
+ 系统盘随云服务器一并删除,**基于系统盘创建的快照也会一并删除**。数据盘会被卸载并保留,其快照与备份不受影响。主网卡随云服务器一并释放。
2320
+
2321
+ 正在制作镜像的云服务器无法释放,请等待制作完成或先删除该镜像。
1809
2322
  operationId: delete-instance
1810
- parameters:
1811
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1812
- in: header
1813
- name: Authorization
1814
- required: true
1815
- schema:
1816
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1817
- type: string
2323
+ parameters:
1818
2324
  - in: path
1819
2325
  name: instanceId
1820
2326
  required: true
@@ -1834,16 +2340,9 @@ paths:
1834
2340
  tags:
1835
2341
  - Instance
1836
2342
  get:
1837
- description: 会同步一次底层的当前状态,因此比列表接口慢但更准确。轮询创建进度请使用本接口。
2343
+ description: 会实时查询云服务器的当前状态,因此比列表接口慢但更准确。轮询创建进度请使用本接口。
1838
2344
  operationId: get-instance
1839
2345
  parameters:
1840
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1841
- in: header
1842
- name: Authorization
1843
- required: true
1844
- schema:
1845
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1846
- type: string
1847
2346
  - in: path
1848
2347
  name: instanceId
1849
2348
  required: true
@@ -1870,13 +2369,6 @@ paths:
1870
2369
  description: 仅修改显示名称。云服务器内的主机名不变,它等于云服务器 id。
1871
2370
  operationId: rename-instance
1872
2371
  parameters:
1873
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1874
- in: header
1875
- name: Authorization
1876
- required: true
1877
- schema:
1878
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1879
- type: string
1880
2372
  - in: path
1881
2373
  name: instanceId
1882
2374
  required: true
@@ -1907,16 +2399,14 @@ paths:
1907
2399
  - Instance
1908
2400
  /api/v1/instances/{instanceId}/actions:
1909
2401
  post:
1910
- description: 重启为软重启,由操作系统正常关闭后重新启动。已被平台停服的云服务器需先解除停服。
2402
+ description: |-
2403
+ 重启默认为软重启,由操作系统正常关闭后重新启动。
2404
+
2405
+ 系统已无响应时软重启不会生效,此时可设置 `force` 强制重启。强制重启不等待操作系统关闭,**未落盘的数据会丢失**。`force` 仅适用于 reboot。
2406
+
2407
+ 已被平台停服的云服务器需先解除停服。
1911
2408
  operationId: act-on-instance
1912
2409
  parameters:
1913
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1914
- in: header
1915
- name: Authorization
1916
- required: true
1917
- schema:
1918
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1919
- type: string
1920
2410
  - in: path
1921
2411
  name: instanceId
1922
2412
  required: true
@@ -1947,28 +2437,65 @@ paths:
1947
2437
  - Instance
1948
2438
  /api/v1/instances/{instanceId}/console:
1949
2439
  post:
1950
- description: 返回的地址一次性使用,数分钟后失效。**请勿缓存**,每次使用前重新获取。
2440
+ description: |-
2441
+ 在浏览器中直接操作云服务器,无需网络可达,适用于网络配置失误导致无法登录的情况。
2442
+
2443
+ 返回的地址一次性使用,数分钟后失效。**请勿缓存**,每次使用前重新获取。
1951
2444
  operationId: open-instance-console
1952
2445
  parameters:
1953
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1954
- in: header
1955
- name: Authorization
2446
+ - in: path
2447
+ name: instanceId
1956
2448
  required: true
1957
2449
  schema:
1958
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2450
+ format: uuid
1959
2451
  type: string
2452
+ responses:
2453
+ "200":
2454
+ content:
2455
+ application/json:
2456
+ schema:
2457
+ $ref: "#/components/schemas/ConsoleResponseBody"
2458
+ description: OK
2459
+ default:
2460
+ content:
2461
+ application/json:
2462
+ schema:
2463
+ $ref: "#/components/schemas/Error"
2464
+ description: Error
2465
+ summary: 打开远程控制台
2466
+ tags:
2467
+ - Instance
2468
+ /api/v1/instances/{instanceId}/console-output:
2469
+ get:
2470
+ description: |-
2471
+ 云服务器启动过程与内核输出的原始文本。无法登录或远程控制台无输出时,应首先查看本接口。其中可查看启动停止于哪一步、系统盘是否正常挂载、初始化过程是否报错。
2472
+
2473
+ 处于错误状态或已被平台停服的云服务器同样可以读取。
2474
+ operationId: get-instance-console-output
2475
+ parameters:
1960
2476
  - in: path
1961
2477
  name: instanceId
1962
2478
  required: true
1963
2479
  schema:
1964
2480
  format: uuid
1965
2481
  type: string
2482
+ - description: 返回末尾多少行,0 表示全部
2483
+ explode: false
2484
+ in: query
2485
+ name: lines
2486
+ schema:
2487
+ default: 200
2488
+ description: 返回末尾多少行,0 表示全部
2489
+ format: int64
2490
+ maximum: 10000
2491
+ minimum: 0
2492
+ type: integer
1966
2493
  responses:
1967
2494
  "200":
1968
2495
  content:
1969
2496
  application/json:
1970
2497
  schema:
1971
- $ref: "#/components/schemas/ConsoleResponseBody"
2498
+ $ref: "#/components/schemas/ConsoleOutputResponseBody"
1972
2499
  description: OK
1973
2500
  default:
1974
2501
  content:
@@ -1976,20 +2503,13 @@ paths:
1976
2503
  schema:
1977
2504
  $ref: "#/components/schemas/Error"
1978
2505
  description: Error
1979
- summary: 打开 VNC 控制台
2506
+ summary: 读取串口输出
1980
2507
  tags:
1981
2508
  - Instance
1982
2509
  /api/v1/instances/{instanceId}/disks:
1983
2510
  get:
1984
2511
  operationId: list-instance-disks
1985
2512
  parameters:
1986
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1987
- in: header
1988
- name: Authorization
1989
- required: true
1990
- schema:
1991
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
1992
- type: string
1993
2513
  - in: path
1994
2514
  name: instanceId
1995
2515
  required: true
@@ -2016,13 +2536,6 @@ paths:
2016
2536
  description: 云硬盘必须与云服务器位于同一地区和可用区。挂载后需在云服务器内自行分区并挂载文件系统。
2017
2537
  operationId: attach-disk
2018
2538
  parameters:
2019
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2020
- in: header
2021
- name: Authorization
2022
- required: true
2023
- schema:
2024
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2025
- type: string
2026
2539
  - in: path
2027
2540
  name: instanceId
2028
2541
  required: true
@@ -2056,13 +2569,6 @@ paths:
2056
2569
  description: 请先在云服务器内卸载(umount)该设备再调用本接口,正在写入的文件系统被强制卸载会损坏数据。
2057
2570
  operationId: detach-disk
2058
2571
  parameters:
2059
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2060
- in: header
2061
- name: Authorization
2062
- required: true
2063
- schema:
2064
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2065
- type: string
2066
2572
  - in: path
2067
2573
  name: instanceId
2068
2574
  required: true
@@ -2096,13 +2602,6 @@ paths:
2096
2602
  description: 公网 IP 绑定在云服务器的主网卡上。
2097
2603
  operationId: attach-instance-floating-ip
2098
2604
  parameters:
2099
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2100
- in: header
2101
- name: Authorization
2102
- required: true
2103
- schema:
2104
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2105
- type: string
2106
2605
  - in: path
2107
2606
  name: instanceId
2108
2607
  required: true
@@ -2135,13 +2634,6 @@ paths:
2135
2634
  delete:
2136
2635
  operationId: detach-instance-floating-ip
2137
2636
  parameters:
2138
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2139
- in: header
2140
- name: Authorization
2141
- required: true
2142
- schema:
2143
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2144
- type: string
2145
2637
  - in: path
2146
2638
  name: instanceId
2147
2639
  required: true
@@ -2170,18 +2662,16 @@ paths:
2170
2662
  summary: 解绑云服务器的公网 IP
2171
2663
  tags:
2172
2664
  - Attachment
2173
- /api/v1/instances/{instanceId}/image:
2665
+ /api/v1/instances/{instanceId}/password:
2174
2666
  post:
2175
- description: 创建出的镜像不会自动上架,仅归本项目所有。
2176
- operationId: create-instance-image
2667
+ description: |-
2668
+ 在不重启的情况下改掉 root 的密码,云服务器必须处于运行中。
2669
+
2670
+ **并非所有镜像都支持**:镜像列表中 `supports_password_reset` 为 false 的镜像做不到,此时只能通过重装系统设置新密码,而重装会清除系统盘上的全部数据。
2671
+
2672
+ 镜像标记为支持、但云服务器内相应组件已被卸载或停止时,本接口同样会被拒绝。
2673
+ operationId: reset-instance-password
2177
2674
  parameters:
2178
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2179
- in: header
2180
- name: Authorization
2181
- required: true
2182
- schema:
2183
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2184
- type: string
2185
2675
  - in: path
2186
2676
  name: instanceId
2187
2677
  required: true
@@ -2192,14 +2682,14 @@ paths:
2192
2682
  content:
2193
2683
  application/json:
2194
2684
  schema:
2195
- $ref: "#/components/schemas/CreateInstanceImageRequestBody"
2685
+ $ref: "#/components/schemas/ResetPasswordRequestBody"
2196
2686
  required: true
2197
2687
  responses:
2198
2688
  "200":
2199
2689
  content:
2200
2690
  application/json:
2201
2691
  schema:
2202
- $ref: "#/components/schemas/CreateInstanceImageResponseBody"
2692
+ $ref: "#/components/schemas/ResetPasswordResponseBody"
2203
2693
  description: OK
2204
2694
  default:
2205
2695
  content:
@@ -2207,20 +2697,13 @@ paths:
2207
2697
  schema:
2208
2698
  $ref: "#/components/schemas/Error"
2209
2699
  description: Error
2210
- summary: 将云服务器创建为镜像
2700
+ summary: 重置登录密码
2211
2701
  tags:
2212
2702
  - Instance
2213
2703
  /api/v1/instances/{instanceId}/ports:
2214
2704
  get:
2215
2705
  operationId: list-instance-ports
2216
2706
  parameters:
2217
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2218
- in: header
2219
- name: Authorization
2220
- required: true
2221
- schema:
2222
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2223
- type: string
2224
2707
  - in: path
2225
2708
  name: instanceId
2226
2709
  required: true
@@ -2246,13 +2729,6 @@ paths:
2246
2729
  post:
2247
2730
  operationId: attach-port
2248
2731
  parameters:
2249
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2250
- in: header
2251
- name: Authorization
2252
- required: true
2253
- schema:
2254
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2255
- type: string
2256
2732
  - in: path
2257
2733
  name: instanceId
2258
2734
  required: true
@@ -2286,13 +2762,6 @@ paths:
2286
2762
  description: 主网卡不可卸载,卸载后云服务器将失去网络地址。
2287
2763
  operationId: detach-port
2288
2764
  parameters:
2289
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2290
- in: header
2291
- name: Authorization
2292
- required: true
2293
- schema:
2294
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2295
- type: string
2296
2765
  - in: path
2297
2766
  name: instanceId
2298
2767
  required: true
@@ -2323,16 +2792,9 @@ paths:
2323
2792
  - Attachment
2324
2793
  /api/v1/instances/{instanceId}/rebuild:
2325
2794
  post:
2326
- description: "**系统盘数据将被清除且无法恢复。** 数据盘不受影响。"
2795
+ description: "**系统盘数据将被清除且无法恢复。** 已挂载的数据盘不受影响。"
2327
2796
  operationId: rebuild-instance
2328
2797
  parameters:
2329
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2330
- in: header
2331
- name: Authorization
2332
- required: true
2333
- schema:
2334
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2335
- type: string
2336
2798
  - in: path
2337
2799
  name: instanceId
2338
2800
  required: true
@@ -2366,34 +2828,229 @@ paths:
2366
2828
  description: |-
2367
2829
  只能变更为同一地区、同一可用区的机型,否则已挂载的云硬盘无法随之迁移。
2368
2830
 
2369
- 变配后需调用确认接口才算完成;未确认时原规格占用的资源不会释放。
2831
+ 变配分两步:本接口下发后云服务器会在新规格上重新启动,状态变为 `resize_verifying`,此时**必须**调用确认或回滚接口。目标机型在确认前记在 `pending_instance_type_id` 上,`instance_type_id` 仍为当前生效并计费的机型。
2832
+
2833
+ **未确认期间新旧两份规格同时占用资源。** 请在状态变为 `resize_verifying` 后尽快确认。
2370
2834
  operationId: resize-instance
2371
2835
  parameters:
2372
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2373
- in: header
2374
- name: Authorization
2836
+ - in: path
2837
+ name: instanceId
2838
+ required: true
2839
+ schema:
2840
+ format: uuid
2841
+ type: string
2842
+ requestBody:
2843
+ content:
2844
+ application/json:
2845
+ schema:
2846
+ $ref: "#/components/schemas/ResizeInstanceRequestBody"
2847
+ required: true
2848
+ responses:
2849
+ "200":
2850
+ content:
2851
+ application/json:
2852
+ schema:
2853
+ $ref: "#/components/schemas/InstanceResource"
2854
+ description: OK
2855
+ default:
2856
+ content:
2857
+ application/json:
2858
+ schema:
2859
+ $ref: "#/components/schemas/Error"
2860
+ description: Error
2861
+ summary: 变配
2862
+ tags:
2863
+ - Instance
2864
+ /api/v1/instances/{instanceId}/resize/confirm:
2865
+ post:
2866
+ description: 释放原规格占用的资源,`pending_instance_type_id` 成为生效机型并从此按它计费。
2867
+ operationId: confirm-instance-resize
2868
+ parameters:
2869
+ - in: path
2870
+ name: instanceId
2375
2871
  required: true
2376
2872
  schema:
2377
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2873
+ format: uuid
2378
2874
  type: string
2875
+ responses:
2876
+ "200":
2877
+ content:
2878
+ application/json:
2879
+ schema:
2880
+ $ref: "#/components/schemas/InstanceResource"
2881
+ description: OK
2882
+ default:
2883
+ content:
2884
+ application/json:
2885
+ schema:
2886
+ $ref: "#/components/schemas/Error"
2887
+ description: Error
2888
+ summary: 确认变配
2889
+ tags:
2890
+ - Instance
2891
+ /api/v1/instances/{instanceId}/resize/revert:
2892
+ post:
2893
+ description: 云服务器回到原规格,`pending_instance_type_id` 被丢弃,计费不受本次变配影响。
2894
+ operationId: revert-instance-resize
2895
+ parameters:
2379
2896
  - in: path
2380
2897
  name: instanceId
2381
2898
  required: true
2382
2899
  schema:
2383
- format: uuid
2900
+ format: uuid
2901
+ type: string
2902
+ responses:
2903
+ "200":
2904
+ content:
2905
+ application/json:
2906
+ schema:
2907
+ $ref: "#/components/schemas/InstanceResource"
2908
+ description: OK
2909
+ default:
2910
+ content:
2911
+ application/json:
2912
+ schema:
2913
+ $ref: "#/components/schemas/Error"
2914
+ description: Error
2915
+ summary: 回滚变配
2916
+ tags:
2917
+ - Instance
2918
+ /api/v1/operation-logs:
2919
+ get:
2920
+ description: |-
2921
+ 记录本项目内的每一次写操作:谁、在什么时候、对什么做了什么、成功还是失败。读取操作不记录。
2922
+
2923
+ **平台代为执行的操作也在其中,但不显示具体执行人**,`by_platform` 为 true。例如欠费停机、违规封禁:需要知道机器何时被平台停止,但执行人属于平台内部信息。
2924
+
2925
+ 密码一类的字段在写入时即被替换为占位符,不会出现在 `payload` 中。
2926
+ operationId: list-operation-logs
2927
+ parameters:
2928
+ - description: 只看某一种操作,取值与接口的 operation id 一致
2929
+ explode: false
2930
+ in: query
2931
+ name: action
2932
+ schema:
2933
+ description: 只看某一种操作,取值与接口的 operation id 一致
2934
+ maxLength: 64
2935
+ type: string
2936
+ - explode: false
2937
+ in: query
2938
+ name: limit
2939
+ schema:
2940
+ default: 50
2941
+ format: int64
2942
+ maximum: 200
2943
+ minimum: 1
2944
+ type: integer
2945
+ - explode: false
2946
+ in: query
2947
+ name: offset
2948
+ schema:
2949
+ default: 0
2950
+ format: int64
2951
+ minimum: 0
2952
+ type: integer
2953
+ responses:
2954
+ "200":
2955
+ content:
2956
+ application/json:
2957
+ schema:
2958
+ $ref: "#/components/schemas/OperationLogListResponseBody"
2959
+ description: OK
2960
+ default:
2961
+ content:
2962
+ application/json:
2963
+ schema:
2964
+ $ref: "#/components/schemas/Error"
2965
+ description: Error
2966
+ summary: 列出本项目的操作记录
2967
+ tags:
2968
+ - OperationLog
2969
+ /api/v1/ports:
2970
+ get:
2971
+ operationId: list-ports
2972
+ responses:
2973
+ "200":
2974
+ content:
2975
+ application/json:
2976
+ schema:
2977
+ $ref: "#/components/schemas/PortListResponseBody"
2978
+ description: OK
2979
+ default:
2980
+ content:
2981
+ application/json:
2982
+ schema:
2983
+ $ref: "#/components/schemas/Error"
2984
+ description: Error
2985
+ summary: 列出网卡
2986
+ tags:
2987
+ - Port
2988
+ post:
2989
+ description: 创建出的网卡尚未挂载到任何云服务器。主网卡不由本接口创建,它随云服务器一并创建。
2990
+ operationId: create-port
2991
+ requestBody:
2992
+ content:
2993
+ application/json:
2994
+ schema:
2995
+ $ref: "#/components/schemas/CreatePortRequestBody"
2996
+ required: true
2997
+ responses:
2998
+ "201":
2999
+ content:
3000
+ application/json:
3001
+ schema:
3002
+ $ref: "#/components/schemas/PortResource"
3003
+ description: Created
3004
+ default:
3005
+ content:
3006
+ application/json:
3007
+ schema:
3008
+ $ref: "#/components/schemas/Error"
3009
+ description: Error
3010
+ summary: 创建网卡
3011
+ tags:
3012
+ - Port
3013
+ /api/v1/ports/{portId}:
3014
+ delete:
3015
+ description: 主网卡不可单独删除,它随云服务器一并释放。仍挂载在云服务器上的网卡也无法删除。
3016
+ operationId: delete-port
3017
+ parameters:
3018
+ - in: path
3019
+ name: portId
3020
+ required: true
3021
+ schema:
3022
+ format: uuid
3023
+ type: string
3024
+ responses:
3025
+ "204":
3026
+ description: No Content
3027
+ default:
3028
+ content:
3029
+ application/json:
3030
+ schema:
3031
+ $ref: "#/components/schemas/Error"
3032
+ description: Error
3033
+ summary: 删除网卡
3034
+ tags:
3035
+ - Port
3036
+ /api/v1/private-images:
3037
+ get:
3038
+ operationId: list-private-images
3039
+ parameters:
3040
+ - description: 只返回该地区的镜像。镜像只能用于所在地区
3041
+ explode: false
3042
+ in: query
3043
+ name: region_code
3044
+ schema:
3045
+ description: 只返回该地区的镜像。镜像只能用于所在地区
3046
+ maxLength: 32
2384
3047
  type: string
2385
- requestBody:
2386
- content:
2387
- application/json:
2388
- schema:
2389
- $ref: "#/components/schemas/ResizeInstanceRequestBody"
2390
- required: true
2391
3048
  responses:
2392
3049
  "200":
2393
3050
  content:
2394
3051
  application/json:
2395
3052
  schema:
2396
- $ref: "#/components/schemas/InstanceResource"
3053
+ $ref: "#/components/schemas/PrivateImageListResponseBody"
2397
3054
  description: OK
2398
3055
  default:
2399
3056
  content:
@@ -2401,92 +3058,88 @@ paths:
2401
3058
  schema:
2402
3059
  $ref: "#/components/schemas/Error"
2403
3060
  description: Error
2404
- summary: 变配
3061
+ summary: 列出自制镜像
2405
3062
  tags:
2406
- - Instance
2407
- /api/v1/instances/{instanceId}/resize/confirm:
3063
+ - PrivateImage
2408
3064
  post:
2409
- operationId: confirm-instance-resize
2410
- parameters:
2411
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2412
- in: header
2413
- name: Authorization
2414
- required: true
2415
- schema:
2416
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2417
- type: string
2418
- - in: path
2419
- name: instanceId
2420
- required: true
2421
- schema:
2422
- format: uuid
2423
- type: string
3065
+ description: |-
3066
+ 依据云服务器的系统盘制作,数据盘不包含在内。制作出的镜像可用于创建云服务器或重装系统,并在源云服务器释放后继续可用。
3067
+
3068
+ **镜像内容取自开始制作的那一刻,此后对云服务器的改动不会包含在内。**
3069
+
3070
+ 制作分两个阶段,请轮询查看接口:
3071
+
3072
+ - `provisioning` 正在读取系统盘,通常数十秒。此阶段云服务器可以继续使用,但为保证一致性建议先关机。
3073
+ - `uploading` 已与系统盘无关,**此时即可开机,无需等待制作完成**。该阶段耗时与系统盘容量成正比,20 GB 约需 3 分钟。
3074
+
3075
+ 运行中的云服务器其文件系统可能处于写入中间状态,制作出的镜像等同于一次断电后的磁盘内容。对一致性有要求时,请在开始制作前关机,并在状态变为 `uploading` 后开机。
3076
+
3077
+ 制作期间该云服务器可以正常启停与使用,但无法释放。
3078
+ operationId: create-private-image
3079
+ requestBody:
3080
+ content:
3081
+ application/json:
3082
+ schema:
3083
+ $ref: "#/components/schemas/CreatePrivateImageRequestBody"
3084
+ required: true
2424
3085
  responses:
2425
- "200":
3086
+ "201":
2426
3087
  content:
2427
3088
  application/json:
2428
3089
  schema:
2429
- $ref: "#/components/schemas/InstanceResource"
2430
- description: OK
3090
+ $ref: "#/components/schemas/PrivateImageResource"
3091
+ description: Created
2431
3092
  default:
2432
3093
  content:
2433
3094
  application/json:
2434
3095
  schema:
2435
3096
  $ref: "#/components/schemas/Error"
2436
3097
  description: Error
2437
- summary: 确认变配
3098
+ summary: 将云服务器制作为镜像
2438
3099
  tags:
2439
- - Instance
2440
- /api/v1/instances/{instanceId}/resize/revert:
2441
- post:
2442
- operationId: revert-instance-resize
3100
+ - PrivateImage
3101
+ /api/v1/private-images/{privateImageId}:
3102
+ delete:
3103
+ description: |-
3104
+ 仍有云服务器由该镜像创建时,删除会被拒绝:这些云服务器需要它才能重装系统。
3105
+
3106
+ 制作尚未完成的镜像也可以删除,制作会被终止。
3107
+ operationId: delete-private-image
2443
3108
  parameters:
2444
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2445
- in: header
2446
- name: Authorization
2447
- required: true
2448
- schema:
2449
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2450
- type: string
2451
3109
  - in: path
2452
- name: instanceId
3110
+ name: privateImageId
2453
3111
  required: true
2454
3112
  schema:
2455
3113
  format: uuid
2456
3114
  type: string
2457
3115
  responses:
2458
- "200":
2459
- content:
2460
- application/json:
2461
- schema:
2462
- $ref: "#/components/schemas/InstanceResource"
2463
- description: OK
3116
+ "204":
3117
+ description: No Content
2464
3118
  default:
2465
3119
  content:
2466
3120
  application/json:
2467
3121
  schema:
2468
3122
  $ref: "#/components/schemas/Error"
2469
3123
  description: Error
2470
- summary: 回滚变配
3124
+ summary: 删除自制镜像
2471
3125
  tags:
2472
- - Instance
2473
- /api/v1/ports:
3126
+ - PrivateImage
2474
3127
  get:
2475
- operationId: list-ports
3128
+ description: 轮询制作进度请使用本接口。status 为 error 时,failure 给出失败原因。
3129
+ operationId: get-private-image
2476
3130
  parameters:
2477
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2478
- in: header
2479
- name: Authorization
3131
+ - in: path
3132
+ name: privateImageId
2480
3133
  required: true
2481
3134
  schema:
2482
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
3135
+ format: uuid
2483
3136
  type: string
2484
3137
  responses:
2485
3138
  "200":
2486
3139
  content:
2487
3140
  application/json:
2488
3141
  schema:
2489
- $ref: "#/components/schemas/PortListResponseBody"
3142
+ $ref: "#/components/schemas/PrivateImageResource"
2490
3143
  description: OK
2491
3144
  default:
2492
3145
  content:
@@ -2494,83 +3147,44 @@ paths:
2494
3147
  schema:
2495
3148
  $ref: "#/components/schemas/Error"
2496
3149
  description: Error
2497
- summary: 列出网卡
3150
+ summary: 查看自制镜像
2498
3151
  tags:
2499
- - Port
2500
- post:
2501
- description: 创建出的网卡尚未挂载到任何云服务器。主网卡不由本接口创建,它随云服务器一并创建。
2502
- operationId: create-port
3152
+ - PrivateImage
3153
+ patch:
3154
+ operationId: rename-private-image
2503
3155
  parameters:
2504
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2505
- in: header
2506
- name: Authorization
3156
+ - in: path
3157
+ name: privateImageId
2507
3158
  required: true
2508
3159
  schema:
2509
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
3160
+ format: uuid
2510
3161
  type: string
2511
3162
  requestBody:
2512
3163
  content:
2513
3164
  application/json:
2514
3165
  schema:
2515
- $ref: "#/components/schemas/CreatePortRequestBody"
3166
+ $ref: "#/components/schemas/RenamePrivateImageRequestBody"
2516
3167
  required: true
2517
3168
  responses:
2518
- "201":
2519
- content:
2520
- application/json:
2521
- schema:
2522
- $ref: "#/components/schemas/PortResource"
2523
- description: Created
2524
- default:
3169
+ "200":
2525
3170
  content:
2526
3171
  application/json:
2527
3172
  schema:
2528
- $ref: "#/components/schemas/Error"
2529
- description: Error
2530
- summary: 创建网卡
2531
- tags:
2532
- - Port
2533
- /api/v1/ports/{portId}:
2534
- delete:
2535
- description: 主网卡不可单独删除,它随云服务器一并释放。仍挂载在云服务器上的网卡也无法删除。
2536
- operationId: delete-port
2537
- parameters:
2538
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2539
- in: header
2540
- name: Authorization
2541
- required: true
2542
- schema:
2543
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2544
- type: string
2545
- - in: path
2546
- name: portId
2547
- required: true
2548
- schema:
2549
- format: uuid
2550
- type: string
2551
- responses:
2552
- "204":
2553
- description: No Content
3173
+ $ref: "#/components/schemas/PrivateImageResource"
3174
+ description: OK
2554
3175
  default:
2555
3176
  content:
2556
3177
  application/json:
2557
3178
  schema:
2558
3179
  $ref: "#/components/schemas/Error"
2559
3180
  description: Error
2560
- summary: 删除网卡
3181
+ summary: 重命名自制镜像
2561
3182
  tags:
2562
- - Port
3183
+ - PrivateImage
2563
3184
  /api/v1/private-networks:
2564
3185
  get:
2565
3186
  operationId: list-private-networks
2566
3187
  parameters:
2567
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2568
- in: header
2569
- name: Authorization
2570
- required: true
2571
- schema:
2572
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2573
- type: string
2574
3188
  - description: 不传时返回全部地区
2575
3189
  explode: false
2576
3190
  in: query
@@ -2598,14 +3212,6 @@ paths:
2598
3212
  post:
2599
3213
  description: 同时创建一张网络、一台路由器和一个默认安全组。默认安全组拒绝全部入站流量、放行全部出站流量。
2600
3214
  operationId: create-private-network
2601
- parameters:
2602
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2603
- in: header
2604
- name: Authorization
2605
- required: true
2606
- schema:
2607
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2608
- type: string
2609
3215
  requestBody:
2610
3216
  content:
2611
3217
  application/json:
@@ -2633,13 +3239,6 @@ paths:
2633
3239
  description: 其中仍有云服务器或网卡时,释放会被拒绝。IPv6、路由器与安全组随之一并释放。
2634
3240
  operationId: delete-private-network
2635
3241
  parameters:
2636
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2637
- in: header
2638
- name: Authorization
2639
- required: true
2640
- schema:
2641
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2642
- type: string
2643
3242
  - in: path
2644
3243
  name: privateNetworkId
2645
3244
  required: true
@@ -2661,13 +3260,6 @@ paths:
2661
3260
  get:
2662
3261
  operationId: get-private-network
2663
3262
  parameters:
2664
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2665
- in: header
2666
- name: Authorization
2667
- required: true
2668
- schema:
2669
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2670
- type: string
2671
3263
  - in: path
2672
3264
  name: privateNetworkId
2673
3265
  required: true
@@ -2690,57 +3282,22 @@ paths:
2690
3282
  summary: 查看私有网络
2691
3283
  tags:
2692
3284
  - PrivateNetwork
2693
- /api/v1/private-networks/{privateNetworkId}/internet-gateway:
2694
- delete:
2695
- description: 项目中仍有已绑定的公网 IP 时会被拒绝:断开外网接入会使这些地址立即不可达。
2696
- operationId: detach-internet-gateway
2697
- parameters:
2698
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2699
- in: header
2700
- name: Authorization
2701
- required: true
2702
- schema:
2703
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2704
- type: string
2705
- - in: path
2706
- name: privateNetworkId
2707
- required: true
2708
- schema:
2709
- format: uuid
2710
- type: string
2711
- responses:
2712
- "200":
2713
- content:
2714
- application/json:
2715
- schema:
2716
- $ref: "#/components/schemas/PrivateNetworkResource"
2717
- description: OK
2718
- default:
2719
- content:
2720
- application/json:
2721
- schema:
2722
- $ref: "#/components/schemas/Error"
2723
- description: Error
2724
- summary: 断开私有网络的外网接入
2725
- tags:
2726
- - PrivateNetwork
2727
- post:
2728
- description: 申领公网 IP 时会自动完成此步骤,通常无需单独调用。启用 IPv6 前必须先接入外网。
2729
- operationId: attach-internet-gateway
3285
+ patch:
3286
+ description: 仅修改显示名称。网段、路由与外网网关均不可修改。
3287
+ operationId: rename-private-network
2730
3288
  parameters:
2731
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2732
- in: header
2733
- name: Authorization
2734
- required: true
2735
- schema:
2736
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2737
- type: string
2738
3289
  - in: path
2739
3290
  name: privateNetworkId
2740
3291
  required: true
2741
3292
  schema:
2742
3293
  format: uuid
2743
3294
  type: string
3295
+ requestBody:
3296
+ content:
3297
+ application/json:
3298
+ schema:
3299
+ $ref: "#/components/schemas/RenamePrivateNetworkRequestBody"
3300
+ required: true
2744
3301
  responses:
2745
3302
  "200":
2746
3303
  content:
@@ -2754,7 +3311,7 @@ paths:
2754
3311
  schema:
2755
3312
  $ref: "#/components/schemas/Error"
2756
3313
  description: Error
2757
- summary: 为私有网络接入外网
3314
+ summary: 重命名私有网络
2758
3315
  tags:
2759
3316
  - PrivateNetwork
2760
3317
  /api/v1/private-networks/{privateNetworkId}/ipv6:
@@ -2762,13 +3319,6 @@ paths:
2762
3319
  description: 释放的前缀不会立即重新分配。
2763
3320
  operationId: disable-private-network-ipv6
2764
3321
  parameters:
2765
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2766
- in: header
2767
- name: Authorization
2768
- required: true
2769
- schema:
2770
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2771
- type: string
2772
3322
  - in: path
2773
3323
  name: privateNetworkId
2774
3324
  required: true
@@ -2790,13 +3340,6 @@ paths:
2790
3340
  get:
2791
3341
  operationId: get-private-network-ipv6
2792
3342
  parameters:
2793
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2794
- in: header
2795
- name: Authorization
2796
- required: true
2797
- schema:
2798
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2799
- type: string
2800
3343
  - in: path
2801
3344
  name: privateNetworkId
2802
3345
  required: true
@@ -2821,18 +3364,11 @@ paths:
2821
3364
  - PrivateNetwork
2822
3365
  post:
2823
3366
  description: |-
2824
- 为该私有网络分配一个 /64 前缀。IPv6 地址由 SLAAC 下发到网卡,无需也无法单独申领。
3367
+ 为该私有网络分配一段 IPv6 地址。地址由私有网络自动下发至云服务器,无需也无法单独申领,也不占用公网 IPv4。
2825
3368
 
2826
- 前提是该私有网络已接入外网。
3369
+ 该私有网络尚未接入外网时会自动接入,无需单独操作。
2827
3370
  operationId: enable-private-network-ipv6
2828
3371
  parameters:
2829
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2830
- in: header
2831
- name: Authorization
2832
- required: true
2833
- schema:
2834
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2835
- type: string
2836
3372
  - in: path
2837
3373
  name: privateNetworkId
2838
3374
  required: true
@@ -2859,13 +3395,6 @@ paths:
2859
3395
  get:
2860
3396
  operationId: list-routes
2861
3397
  parameters:
2862
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2863
- in: header
2864
- name: Authorization
2865
- required: true
2866
- schema:
2867
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2868
- type: string
2869
3398
  - in: path
2870
3399
  name: privateNetworkId
2871
3400
  required: true
@@ -2892,13 +3421,6 @@ paths:
2892
3421
  description: 以下三种会导致网络中断的写法会被拒绝:目的网段为 0.0.0.0/0(覆盖默认路由,所有公网 IP 立即失效)、目的网段为某个子网自身(覆盖直连路由)、下一跳为某个子网的网关(指回路由器自身)。
2893
3422
  operationId: create-route
2894
3423
  parameters:
2895
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2896
- in: header
2897
- name: Authorization
2898
- required: true
2899
- schema:
2900
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2901
- type: string
2902
3424
  - in: path
2903
3425
  name: privateNetworkId
2904
3426
  required: true
@@ -2931,13 +3453,6 @@ paths:
2931
3453
  delete:
2932
3454
  operationId: delete-route
2933
3455
  parameters:
2934
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2935
- in: header
2936
- name: Authorization
2937
- required: true
2938
- schema:
2939
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2940
- type: string
2941
3456
  - in: path
2942
3457
  name: privateNetworkId
2943
3458
  required: true
@@ -2967,13 +3482,6 @@ paths:
2967
3482
  description: IPv6 子网也在返回结果中,ip_version 为 6。它在启用 IPv6 时自动创建,不可单独删除。
2968
3483
  operationId: list-subnets
2969
3484
  parameters:
2970
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2971
- in: header
2972
- name: Authorization
2973
- required: true
2974
- schema:
2975
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
2976
- type: string
2977
3485
  - in: path
2978
3486
  name: privateNetworkId
2979
3487
  required: true
@@ -2999,13 +3507,6 @@ paths:
2999
3507
  post:
3000
3508
  operationId: create-subnet
3001
3509
  parameters:
3002
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
3003
- in: header
3004
- name: Authorization
3005
- required: true
3006
- schema:
3007
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
3008
- type: string
3009
3510
  - in: path
3010
3511
  name: privateNetworkId
3011
3512
  required: true
@@ -3039,13 +3540,6 @@ paths:
3039
3540
  description: 返回的只是建议值,创建子网时仍会重新校验。用于避免手工计算下一个空闲网段时出错。
3040
3541
  operationId: suggest-subnet-cidr
3041
3542
  parameters:
3042
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
3043
- in: header
3044
- name: Authorization
3045
- required: true
3046
- schema:
3047
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
3048
- type: string
3049
3543
  - in: path
3050
3544
  name: privateNetworkId
3051
3545
  required: true
@@ -3082,13 +3576,6 @@ paths:
3082
3576
  description: 该子网中仍有网卡,或仍有静态路由的下一跳落在该网段内时,删除会被拒绝。
3083
3577
  operationId: delete-subnet
3084
3578
  parameters:
3085
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
3086
- in: header
3087
- name: Authorization
3088
- required: true
3089
- schema:
3090
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
3091
- type: string
3092
3579
  - in: path
3093
3580
  name: privateNetworkId
3094
3581
  required: true
@@ -3116,14 +3603,6 @@ paths:
3116
3603
  /api/v1/regions:
3117
3604
  get:
3118
3605
  operationId: list-regions
3119
- parameters:
3120
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
3121
- in: header
3122
- name: Authorization
3123
- required: true
3124
- schema:
3125
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
3126
- type: string
3127
3606
  responses:
3128
3607
  "200":
3129
3608
  content:
@@ -3145,13 +3624,6 @@ paths:
3145
3624
  description: 云硬盘与云服务器必须位于同一可用区才能挂载,创建前请确认所选可用区。
3146
3625
  operationId: list-availability-zones
3147
3626
  parameters:
3148
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
3149
- in: header
3150
- name: Authorization
3151
- required: true
3152
- schema:
3153
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
3154
- type: string
3155
3627
  - in: path
3156
3628
  name: regionCode
3157
3629
  required: true
@@ -3178,13 +3650,6 @@ paths:
3178
3650
  get:
3179
3651
  operationId: list-security-groups
3180
3652
  parameters:
3181
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
3182
- in: header
3183
- name: Authorization
3184
- required: true
3185
- schema:
3186
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
3187
- type: string
3188
3653
  - explode: false
3189
3654
  in: query
3190
3655
  name: region_code
@@ -3217,14 +3682,6 @@ paths:
3217
3682
  post:
3218
3683
  description: 新建的安全组带有一条规则:放行 ICMP 需要分片(type 3 code 4)。缺少该规则会导致路径 MTU 发现失败,表现为连接建立后传输大数据包时卡住。
3219
3684
  operationId: create-security-group
3220
- parameters:
3221
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
3222
- in: header
3223
- name: Authorization
3224
- required: true
3225
- schema:
3226
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
3227
- type: string
3228
3685
  requestBody:
3229
3686
  content:
3230
3687
  application/json:
@@ -3252,13 +3709,6 @@ paths:
3252
3709
  description: 默认安全组不可删除,它随私有网络一并释放。仍被网卡引用的安全组也无法删除。
3253
3710
  operationId: delete-security-group
3254
3711
  parameters:
3255
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
3256
- in: header
3257
- name: Authorization
3258
- required: true
3259
- schema:
3260
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
3261
- type: string
3262
3712
  - in: path
3263
3713
  name: securityGroupId
3264
3714
  required: true
@@ -3280,13 +3730,6 @@ paths:
3280
3730
  get:
3281
3731
  operationId: get-security-group
3282
3732
  parameters:
3283
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
3284
- in: header
3285
- name: Authorization
3286
- required: true
3287
- schema:
3288
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
3289
- type: string
3290
3733
  - in: path
3291
3734
  name: securityGroupId
3292
3735
  required: true
@@ -3313,13 +3756,6 @@ paths:
3313
3756
  get:
3314
3757
  operationId: list-security-group-rules
3315
3758
  parameters:
3316
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
3317
- in: header
3318
- name: Authorization
3319
- required: true
3320
- schema:
3321
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
3322
- type: string
3323
3759
  - in: path
3324
3760
  name: securityGroupId
3325
3761
  required: true
@@ -3346,13 +3782,6 @@ paths:
3346
3782
  description: 重复添加同一条规则会被拒绝。判重时 `0.0.0.0/0`、`::/0` 与留空视为等同。
3347
3783
  operationId: create-security-group-rule
3348
3784
  parameters:
3349
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
3350
- in: header
3351
- name: Authorization
3352
- required: true
3353
- schema:
3354
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
3355
- type: string
3356
3785
  - in: path
3357
3786
  name: securityGroupId
3358
3787
  required: true
@@ -3385,13 +3814,6 @@ paths:
3385
3814
  delete:
3386
3815
  operationId: delete-security-group-rule
3387
3816
  parameters:
3388
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
3389
- in: header
3390
- name: Authorization
3391
- required: true
3392
- schema:
3393
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
3394
- type: string
3395
3817
  - in: path
3396
3818
  name: securityGroupId
3397
3819
  required: true
@@ -3420,12 +3842,13 @@ paths:
3420
3842
  get:
3421
3843
  operationId: list-snapshots
3422
3844
  parameters:
3423
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
3424
- in: header
3425
- name: Authorization
3426
- required: true
3845
+ - description: 只返回该云硬盘的快照
3846
+ explode: false
3847
+ in: query
3848
+ name: disk_id
3427
3849
  schema:
3428
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
3850
+ description: 只返回该云硬盘的快照
3851
+ format: uuid
3429
3852
  type: string
3430
3853
  responses:
3431
3854
  "200":
@@ -3444,16 +3867,11 @@ paths:
3444
3867
  tags:
3445
3868
  - Snapshot
3446
3869
  post:
3447
- description: 运行中云服务器上挂载的云硬盘同样可以创建快照。快照记录的是某一时刻的块设备状态,文件系统层面可能不一致,重要数据建议先在云服务器内执行 sync。
3870
+ description: |-
3871
+ 运行中云服务器上挂载的云硬盘同样可以创建快照。快照记录的是某一时刻的块设备状态,文件系统层面可能不一致,重要数据建议先在云服务器内执行 sync。
3872
+
3873
+ **系统盘的快照不能用于回滚该系统盘**:回滚要求先从云服务器上卸载,而系统盘不可卸载。它可用于创建一块新的数据盘。需要保留并恢复整个系统时,请使用自制镜像;需要可跨可用区、且在云硬盘删除后仍可恢复的副本时,请使用备份。
3448
3874
  operationId: create-snapshot
3449
- parameters:
3450
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
3451
- in: header
3452
- name: Authorization
3453
- required: true
3454
- schema:
3455
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
3456
- type: string
3457
3875
  requestBody:
3458
3876
  content:
3459
3877
  application/json:
@@ -3480,13 +3898,6 @@ paths:
3480
3898
  delete:
3481
3899
  operationId: delete-snapshot
3482
3900
  parameters:
3483
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
3484
- in: header
3485
- name: Authorization
3486
- required: true
3487
- schema:
3488
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
3489
- type: string
3490
3901
  - in: path
3491
3902
  name: snapshotId
3492
3903
  required: true
@@ -3508,19 +3919,43 @@ paths:
3508
3919
  get:
3509
3920
  operationId: get-snapshot
3510
3921
  parameters:
3511
- - description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
3512
- in: header
3513
- name: Authorization
3922
+ - in: path
3923
+ name: snapshotId
3514
3924
  required: true
3515
3925
  schema:
3516
- description: IAM 签发的项目令牌,形如 Bearer <token>。当前项目由令牌决定,路径和请求头上都没有 project_id
3926
+ format: uuid
3517
3927
  type: string
3928
+ responses:
3929
+ "200":
3930
+ content:
3931
+ application/json:
3932
+ schema:
3933
+ $ref: "#/components/schemas/SnapshotResource"
3934
+ description: OK
3935
+ default:
3936
+ content:
3937
+ application/json:
3938
+ schema:
3939
+ $ref: "#/components/schemas/Error"
3940
+ description: Error
3941
+ summary: 查看快照
3942
+ tags:
3943
+ - Snapshot
3944
+ patch:
3945
+ operationId: rename-snapshot
3946
+ parameters:
3518
3947
  - in: path
3519
3948
  name: snapshotId
3520
3949
  required: true
3521
3950
  schema:
3522
3951
  format: uuid
3523
3952
  type: string
3953
+ requestBody:
3954
+ content:
3955
+ application/json:
3956
+ schema:
3957
+ $ref: "#/components/schemas/RenameSnapshotRequestBody"
3958
+ required: true
3524
3959
  responses:
3525
3960
  "200":
3526
3961
  content:
@@ -3534,7 +3969,9 @@ paths:
3534
3969
  schema:
3535
3970
  $ref: "#/components/schemas/Error"
3536
3971
  description: Error
3537
- summary: 查看快照
3972
+ summary: 重命名快照
3538
3973
  tags:
3539
3974
  - Snapshot
3975
+ security:
3976
+ - bearerAuth: []
3540
3977