@runpod/typescript-api-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.
package/dist/index.d.ts CHANGED
@@ -5,6 +5,26 @@ import { Client } from 'openapi-fetch';
5
5
  * Do not make direct changes to the file.
6
6
  */
7
7
  interface paths {
8
+ "/v2/organization": {
9
+ parameters: {
10
+ query?: never;
11
+ header?: never;
12
+ path?: never;
13
+ cookie?: never;
14
+ };
15
+ /**
16
+ * Get your current organization
17
+ * @description Returns the authenticated caller's current organization. Organization context comes from the caller's membership; no organization selector is required. Returns 404 when the caller does not belong to an organization, or 403 when organizations are unavailable to the caller.
18
+ */
19
+ get: operations["getOrganization"];
20
+ put?: never;
21
+ post?: never;
22
+ delete?: never;
23
+ options?: never;
24
+ head?: never;
25
+ patch?: never;
26
+ trace?: never;
27
+ };
8
28
  "/v2/account/ssh-keys": {
9
29
  parameters: {
10
30
  query?: never;
@@ -123,10 +143,9 @@ interface paths {
123
143
  * them (each carries a non-null `cluster` membership block).
124
144
  *
125
145
  * Results are cursor-paginated newest-first; an omitted `limit`
126
- * defaults to 1000. When cluster member pods are excluded, the
127
- * exclusion applies to each page after it is cut, so a page may hold
128
- * fewer than `limit` pods — follow `pagination.nextCursor` until
129
- * `hasNextPage` is false rather than counting items.
146
+ * defaults to 1000. The cluster-member exclusion is applied before the
147
+ * page is cut, so a page holds `limit` pods whenever that many remain.
148
+ * Follow `pagination.nextCursor` until `hasNextPage` is false.
130
149
  */
131
150
  get: operations["listPods"];
132
151
  put?: never;
@@ -350,7 +369,9 @@ interface paths {
350
369
  };
351
370
  /**
352
371
  * List clusters
353
- * @description Returns all clusters owned by the authenticated user.
372
+ * @description Returns clusters owned by the authenticated user, cursor-paginated
373
+ * newest-first; an omitted `limit` defaults to 1000. Follow
374
+ * `pagination.nextCursor` until `hasNextPage` is false.
354
375
  */
355
376
  get: operations["listClusters"];
356
377
  put?: never;
@@ -536,8 +557,9 @@ interface paths {
536
557
  *
537
558
  * Mutable fields: `name`, `gpu`, `cpu`, `workers` (`min`/`max`),
538
559
  * `scaling` (`type`/`value`/`idleTimeout`), `dataCenterIds`,
539
- * `networkVolumes`, `timeout`, `flashboot`, and the container settings
540
- * (`image`, `args`, `disk`, `ports`, `env`, `registry`).
560
+ * `networkVolumes`, `timeout`, `flashboot`, and the
561
+ * container settings (`image`, `args`, `disk`, `ports`, `env`,
562
+ * `registry`).
541
563
  *
542
564
  * Omitted compute preserves the current selection. `cpu` completely
543
565
  * replaces a CPU endpoint's selection; compute family is immutable.
@@ -814,7 +836,9 @@ interface paths {
814
836
  };
815
837
  /**
816
838
  * List network volumes
817
- * @description Returns all network volumes owned by the authenticated user.
839
+ * @description Returns network volumes owned by the authenticated user,
840
+ * cursor-paginated newest-first; an omitted `limit` defaults to 1000.
841
+ * Follow `pagination.nextCursor` until `hasNextPage` is false.
818
842
  */
819
843
  get: operations["listNetworkVolumes"];
820
844
  put?: never;
@@ -873,6 +897,75 @@ interface paths {
873
897
  patch: operations["updateNetworkVolume"];
874
898
  trace?: never;
875
899
  };
900
+ "/v2/global-volumes": {
901
+ parameters: {
902
+ query?: never;
903
+ header?: never;
904
+ path?: never;
905
+ cookie?: never;
906
+ };
907
+ /**
908
+ * List global volumes
909
+ * @description Returns global volumes owned by the authenticated user,
910
+ * cursor-paginated newest-first; an omitted `limit` defaults to 1000.
911
+ * Follow `pagination.nextCursor` until `hasNextPage` is false.
912
+ */
913
+ get: operations["listGlobalVolumes"];
914
+ put?: never;
915
+ /**
916
+ * Create a global volume
917
+ * @description Provisions a new global volume — storage that mounts into workloads
918
+ * in any data center. Only a `name` is required; storage is provisioned
919
+ * for you. Accounts have a cap on how many global volumes they can
920
+ * hold; creating one past it fails with `400`.
921
+ *
922
+ * Returns `201` with the created global volume, including its assigned
923
+ * `id`.
924
+ */
925
+ post: operations["createGlobalVolume"];
926
+ delete?: never;
927
+ options?: never;
928
+ head?: never;
929
+ patch?: never;
930
+ trace?: never;
931
+ };
932
+ "/v2/global-volumes/{id}": {
933
+ parameters: {
934
+ query?: never;
935
+ header?: never;
936
+ path: {
937
+ /**
938
+ * @description Global volume identifier
939
+ * @example gsb_abc
940
+ */
941
+ id: string;
942
+ };
943
+ cookie?: never;
944
+ };
945
+ /**
946
+ * Get a global volume
947
+ * @description Returns a single global volume by ID.
948
+ */
949
+ get: operations["getGlobalVolume"];
950
+ put?: never;
951
+ post?: never;
952
+ /**
953
+ * Delete a global volume
954
+ * @description Permanently deletes a global volume and its stored data. Fails with
955
+ * `409` while the volume is still mounted: terminate every pod that
956
+ * mounts it (stopped pods count) and detach it from every serverless
957
+ * endpoint first. Nothing is detached or terminated on your behalf.
958
+ */
959
+ delete: operations["deleteGlobalVolume"];
960
+ options?: never;
961
+ head?: never;
962
+ /**
963
+ * Update a global volume
964
+ * @description Updates mutable fields on a global volume. Only provided fields are changed.
965
+ */
966
+ patch: operations["updateGlobalVolume"];
967
+ trace?: never;
968
+ };
876
969
  "/v2/registries": {
877
970
  parameters: {
878
971
  query?: never;
@@ -1251,6 +1344,19 @@ interface paths {
1251
1344
  }
1252
1345
  interface components {
1253
1346
  schemas: {
1347
+ /** @description The authenticated caller's current organization. */
1348
+ Organization: {
1349
+ /**
1350
+ * @description Organization ID.
1351
+ * @example org_id_abc_123
1352
+ */
1353
+ id: string;
1354
+ /**
1355
+ * @description Organization name.
1356
+ * @example my-org
1357
+ */
1358
+ name: string;
1359
+ };
1254
1360
  /** @description Cursor-pagination metadata, uniform across list endpoints. Every response carries it: follow `nextCursor` while `hasNextPage` is true to walk the full result set. */
1255
1361
  Pagination: {
1256
1362
  /**
@@ -1336,9 +1442,25 @@ interface components {
1336
1442
  registry?: string | null;
1337
1443
  };
1338
1444
  /**
1339
- * @description Storage mounts attached to a pod. At most one of `persistent` or
1340
- * `network` may be set: sending both is rejected with 400. The
1341
- * `network` field is an array for forward compatibility with
1445
+ * @description The mount kinds every resource that takes `mounts` shares. At most one
1446
+ * of `persistent` or `network` may be set: combining them is rejected
1447
+ * with 400. The `network` field is an array for forward compatibility
1448
+ * with multi-network-volume support; `maxItems` is 1.
1449
+ */
1450
+ BaseMounts: {
1451
+ persistent?: components["schemas"]["PersistentMount"];
1452
+ network?: components["schemas"]["NetworkMount"][];
1453
+ };
1454
+ /**
1455
+ * @description Storage mounts for a cluster create: `persistent` or `network`, not
1456
+ * both. Clusters cannot mount global volumes, so `global` is rejected
1457
+ * with 422.
1458
+ */
1459
+ ClusterMounts: components["schemas"]["BaseMounts"];
1460
+ /**
1461
+ * @description Storage mounts attached to a pod. `persistent` is mutually exclusive
1462
+ * with both `network` and `global`: combining them is rejected with 400.
1463
+ * The `network` field is an array for forward compatibility with
1342
1464
  * multi-network-volume support; `maxItems` is 1.
1343
1465
  *
1344
1466
  * PATCH semantics:
@@ -1356,9 +1478,17 @@ interface components {
1356
1478
  * include the full schema (`size` + `path` for persistent,
1357
1479
  * `volumeId` + `path` for network). Missing required fields → 422.
1358
1480
  */
1359
- Mounts: {
1360
- persistent?: components["schemas"]["PersistentMount"];
1361
- network?: components["schemas"]["NetworkMount"][];
1481
+ Mounts: components["schemas"]["BaseMounts"] & {
1482
+ /**
1483
+ * @description At most one global volume, on GPU and CPU pods, with no data
1484
+ * center constraint. Combinable with `network` but not with
1485
+ * `persistent` (rejected with 400): upstream drops a persistent
1486
+ * disk whenever a volume is attached. Same PATCH rules as
1487
+ * `network`: global mounts are fixed at create, `global: []` is
1488
+ * rejected with 400, and `volumeId` is immutable; only `path` may
1489
+ * change.
1490
+ */
1491
+ global?: components["schemas"]["GlobalMount"][];
1362
1492
  };
1363
1493
  /**
1364
1494
  * @description Storage mounts attached to a template. Templates support a single
@@ -1405,6 +1535,23 @@ interface components {
1405
1535
  */
1406
1536
  path: string;
1407
1537
  };
1538
+ /**
1539
+ * @description Reference to a GlobalVolume. Usage-billed, so it has no size. The
1540
+ * underlying `volumeId` is immutable post-create; the mount `path` may be
1541
+ * changed via PATCH.
1542
+ */
1543
+ GlobalMount: {
1544
+ /**
1545
+ * @description ID of an existing GlobalVolume.
1546
+ * @example gsb_abc
1547
+ */
1548
+ volumeId: string;
1549
+ /**
1550
+ * @description Mount path inside the container. Optional on create, where a default is chosen for you; a PATCH that omits it leaves the path unchanged.
1551
+ * @example /data
1552
+ */
1553
+ path?: string;
1554
+ };
1408
1555
  BaseGpuConfig: {
1409
1556
  /**
1410
1557
  * @description GPU type identifier
@@ -1886,11 +2033,13 @@ interface components {
1886
2033
  */
1887
2034
  dataCenterIds: string[];
1888
2035
  /**
2036
+ * @deprecated
1889
2037
  * @example [
1890
2038
  * "vol_abc"
1891
2039
  * ]
1892
2040
  */
1893
2041
  networkVolumes: string[];
2042
+ mounts: components["schemas"]["EndpointMounts"];
1894
2043
  /**
1895
2044
  * @description Per-request execution timeout in milliseconds
1896
2045
  * @example 300000
@@ -2180,7 +2329,12 @@ interface components {
2180
2329
  dataCenterIds?: string[];
2181
2330
  /** @default OFF */
2182
2331
  flashboot?: components["schemas"]["FlashBoot"];
2332
+ /**
2333
+ * @deprecated
2334
+ * @description Network volume IDs.
2335
+ */
2183
2336
  networkVolumes?: string[];
2337
+ mounts?: components["schemas"]["EndpointMountsInput"];
2184
2338
  /**
2185
2339
  * @description ID of a serverless template to base this endpoint on. The
2186
2340
  * template is resolved at create time into the same container
@@ -2224,7 +2378,12 @@ interface components {
2224
2378
  flashboot?: components["schemas"]["FlashBoot"];
2225
2379
  gpu?: components["schemas"]["UpdateEndpointGpuConfig"];
2226
2380
  name?: string;
2381
+ /**
2382
+ * @deprecated
2383
+ * @description Network volume IDs. Pass `[]` to detach.
2384
+ */
2227
2385
  networkVolumes?: string[];
2386
+ mounts?: components["schemas"]["EndpointMountsInput"];
2228
2387
  scaling?: components["schemas"]["EndpointScaling"];
2229
2388
  /**
2230
2389
  * @description ID of a serverless template whose container settings are
@@ -2803,7 +2962,7 @@ interface components {
2803
2962
  * ]
2804
2963
  */
2805
2964
  dataCenterIds?: string[];
2806
- mounts?: components["schemas"]["Mounts"];
2965
+ mounts?: components["schemas"]["ClusterMounts"];
2807
2966
  /**
2808
2967
  * @description Start Jupyter on every member pod, as on pod create.
2809
2968
  * @default false
@@ -2826,6 +2985,7 @@ interface components {
2826
2985
  };
2827
2986
  ListClustersResponse: {
2828
2987
  clusters: components["schemas"]["Cluster"][];
2988
+ pagination: components["schemas"]["Pagination"];
2829
2989
  };
2830
2990
  Template: {
2831
2991
  /**
@@ -3047,6 +3207,79 @@ interface components {
3047
3207
  };
3048
3208
  ListNetworkVolumesResponse: {
3049
3209
  networkVolumes: components["schemas"]["NetworkVolume"][];
3210
+ pagination: components["schemas"]["Pagination"];
3211
+ };
3212
+ GlobalVolume: {
3213
+ /**
3214
+ * @description Unique global volume identifier
3215
+ * @example gsb_abc
3216
+ */
3217
+ id: string;
3218
+ /**
3219
+ * @description Human-readable name (not required to be unique)
3220
+ * @example training-data
3221
+ */
3222
+ name: string;
3223
+ /**
3224
+ * Format: date-time
3225
+ * @description When the volume was created
3226
+ */
3227
+ createdAt: string;
3228
+ /**
3229
+ * @description ID of the user who created the volume, if known
3230
+ * @example user_123
3231
+ */
3232
+ createdByUserId: string | null;
3233
+ };
3234
+ CreateGlobalVolumeRequest: {
3235
+ /**
3236
+ * @description Human-readable name, 1–191 characters with at least one non-whitespace character. Leading and trailing whitespace is trimmed.
3237
+ * @example training-data
3238
+ */
3239
+ name: string;
3240
+ };
3241
+ /**
3242
+ * @description Only the provided fields are updated. At least one field must be
3243
+ * present; an empty body is rejected.
3244
+ */
3245
+ UpdateGlobalVolumeRequest: {
3246
+ /**
3247
+ * @description New human-readable name, 1–191 characters with at least one non-whitespace character. Leading and trailing whitespace is trimmed.
3248
+ * @example renamed-volume
3249
+ */
3250
+ name?: string;
3251
+ };
3252
+ ListGlobalVolumesResponse: {
3253
+ globalVolumes: components["schemas"]["GlobalVolume"][];
3254
+ pagination: components["schemas"]["Pagination"];
3255
+ };
3256
+ /** @description A volume mounted on every worker, always at `/runpod-volume`. */
3257
+ EndpointMount: {
3258
+ /**
3259
+ * @description ID of a NetworkVolume (under `network`) or GlobalVolume (under `global`).
3260
+ * @example vol_abc
3261
+ */
3262
+ volumeId: string;
3263
+ };
3264
+ /** @description Volumes mounted on every worker of the endpoint. */
3265
+ EndpointMounts: {
3266
+ network: components["schemas"]["EndpointMount"][];
3267
+ global: components["schemas"]["EndpointMount"][];
3268
+ };
3269
+ /**
3270
+ * @description Volumes to mount on the endpoint's workers. A `network` or `global`
3271
+ * list that is present replaces the endpoint's current list of that kind;
3272
+ * an empty list detaches it, and an omitted list is left unchanged. Both
3273
+ * kinds cannot be present on the endpoint at once, so to switch kinds send
3274
+ * `[]` for one and the new list for the other in the same request. Changes
3275
+ * apply to workers created afterwards. At most one global volume, GPU
3276
+ * endpoints only. `network` may accompany the deprecated `networkVolumes` field
3277
+ * only if the two agree exactly.
3278
+ */
3279
+ EndpointMountsInput: {
3280
+ /** @description Network volumes, at most one per data center. */
3281
+ network?: components["schemas"]["EndpointMount"][];
3282
+ global?: components["schemas"]["EndpointMount"][];
3050
3283
  };
3051
3284
  Registry: {
3052
3285
  /** @example reg_abc */
@@ -3994,6 +4227,43 @@ interface components {
3994
4227
  pathItems: never;
3995
4228
  }
3996
4229
  interface operations {
4230
+ getOrganization: {
4231
+ parameters: {
4232
+ query?: never;
4233
+ header?: never;
4234
+ path?: never;
4235
+ cookie?: never;
4236
+ };
4237
+ requestBody?: never;
4238
+ responses: {
4239
+ /** @description OK */
4240
+ 200: {
4241
+ headers: {
4242
+ RateLimit: components["headers"]["RateLimit"];
4243
+ "RateLimit-Policy": components["headers"]["RateLimit-Policy"];
4244
+ [name: string]: unknown;
4245
+ };
4246
+ content: {
4247
+ "application/json": components["schemas"]["Organization"];
4248
+ };
4249
+ };
4250
+ 401: components["responses"]["UnauthorizedError"];
4251
+ 403: components["responses"]["ForbiddenError"];
4252
+ 404: components["responses"]["NotFoundError"];
4253
+ 429: components["responses"]["TooManyRequestsError"];
4254
+ /** @description Error */
4255
+ default: {
4256
+ headers: {
4257
+ RateLimit: components["headers"]["RateLimit"];
4258
+ "RateLimit-Policy": components["headers"]["RateLimit-Policy"];
4259
+ [name: string]: unknown;
4260
+ };
4261
+ content: {
4262
+ "application/problem+json": components["schemas"]["ErrorResponse"];
4263
+ };
4264
+ };
4265
+ };
4266
+ };
3997
4267
  getSshKeys: {
3998
4268
  parameters: {
3999
4269
  query?: never;
@@ -4689,7 +4959,18 @@ interface operations {
4689
4959
  };
4690
4960
  listClusters: {
4691
4961
  parameters: {
4692
- query?: never;
4962
+ query?: {
4963
+ /**
4964
+ * @description Opaque resume cursor — pass the previous response's `pagination.nextCursor` through verbatim; omit for the first page. A cursor is only valid for the operation and parameters that issued it; a malformed or foreign cursor is rejected with 422.
4965
+ * @example Y3JlYXRlZEF0PTE3NDg3ODA0MDA
4966
+ */
4967
+ cursor?: components["parameters"]["PaginationCursor"];
4968
+ /**
4969
+ * @description Page size, 1–1000. Defaults to 1000 when omitted.
4970
+ * @example 50
4971
+ */
4972
+ limit?: components["parameters"]["PaginationLimit"];
4973
+ };
4693
4974
  header?: never;
4694
4975
  path?: never;
4695
4976
  cookie?: never;
@@ -5674,7 +5955,18 @@ interface operations {
5674
5955
  };
5675
5956
  listNetworkVolumes: {
5676
5957
  parameters: {
5677
- query?: never;
5958
+ query?: {
5959
+ /**
5960
+ * @description Opaque resume cursor — pass the previous response's `pagination.nextCursor` through verbatim; omit for the first page. A cursor is only valid for the operation and parameters that issued it; a malformed or foreign cursor is rejected with 422.
5961
+ * @example Y3JlYXRlZEF0PTE3NDg3ODA0MDA
5962
+ */
5963
+ cursor?: components["parameters"]["PaginationCursor"];
5964
+ /**
5965
+ * @description Page size, 1–1000. Defaults to 1000 when omitted.
5966
+ * @example 50
5967
+ */
5968
+ limit?: components["parameters"]["PaginationLimit"];
5969
+ };
5678
5970
  header?: never;
5679
5971
  path?: never;
5680
5972
  cookie?: never;
@@ -5893,6 +6185,240 @@ interface operations {
5893
6185
  };
5894
6186
  };
5895
6187
  };
6188
+ listGlobalVolumes: {
6189
+ parameters: {
6190
+ query?: {
6191
+ /**
6192
+ * @description Opaque resume cursor — pass the previous response's `pagination.nextCursor` through verbatim; omit for the first page. A cursor is only valid for the operation and parameters that issued it; a malformed or foreign cursor is rejected with 422.
6193
+ * @example Y3JlYXRlZEF0PTE3NDg3ODA0MDA
6194
+ */
6195
+ cursor?: components["parameters"]["PaginationCursor"];
6196
+ /**
6197
+ * @description Page size, 1–1000. Defaults to 1000 when omitted.
6198
+ * @example 50
6199
+ */
6200
+ limit?: components["parameters"]["PaginationLimit"];
6201
+ };
6202
+ header?: never;
6203
+ path?: never;
6204
+ cookie?: never;
6205
+ };
6206
+ requestBody?: never;
6207
+ responses: {
6208
+ /** @description OK */
6209
+ 200: {
6210
+ headers: {
6211
+ RateLimit: components["headers"]["RateLimit"];
6212
+ "RateLimit-Policy": components["headers"]["RateLimit-Policy"];
6213
+ [name: string]: unknown;
6214
+ };
6215
+ content: {
6216
+ "application/json": components["schemas"]["ListGlobalVolumesResponse"];
6217
+ };
6218
+ };
6219
+ 401: components["responses"]["UnauthorizedError"];
6220
+ 403: components["responses"]["ForbiddenError"];
6221
+ 422: components["responses"]["UnprocessableEntityError"];
6222
+ 429: components["responses"]["TooManyRequestsError"];
6223
+ /** @description Error */
6224
+ default: {
6225
+ headers: {
6226
+ RateLimit: components["headers"]["RateLimit"];
6227
+ "RateLimit-Policy": components["headers"]["RateLimit-Policy"];
6228
+ [name: string]: unknown;
6229
+ };
6230
+ content: {
6231
+ "application/problem+json": components["schemas"]["ErrorResponse"];
6232
+ };
6233
+ };
6234
+ };
6235
+ };
6236
+ createGlobalVolume: {
6237
+ parameters: {
6238
+ query?: never;
6239
+ header?: never;
6240
+ path?: never;
6241
+ cookie?: never;
6242
+ };
6243
+ requestBody: {
6244
+ content: {
6245
+ "application/json": components["schemas"]["CreateGlobalVolumeRequest"];
6246
+ };
6247
+ };
6248
+ responses: {
6249
+ /** @description Created */
6250
+ 201: {
6251
+ headers: {
6252
+ RateLimit: components["headers"]["RateLimit"];
6253
+ "RateLimit-Policy": components["headers"]["RateLimit-Policy"];
6254
+ [name: string]: unknown;
6255
+ };
6256
+ content: {
6257
+ "application/json": components["schemas"]["GlobalVolume"];
6258
+ };
6259
+ };
6260
+ 400: components["responses"]["BadRequestError"];
6261
+ 401: components["responses"]["UnauthorizedError"];
6262
+ 403: components["responses"]["ForbiddenError"];
6263
+ 422: components["responses"]["UnprocessableEntityError"];
6264
+ 429: components["responses"]["TooManyRequestsError"];
6265
+ /** @description Error */
6266
+ default: {
6267
+ headers: {
6268
+ RateLimit: components["headers"]["RateLimit"];
6269
+ "RateLimit-Policy": components["headers"]["RateLimit-Policy"];
6270
+ [name: string]: unknown;
6271
+ };
6272
+ content: {
6273
+ "application/problem+json": components["schemas"]["ErrorResponse"];
6274
+ };
6275
+ };
6276
+ };
6277
+ };
6278
+ getGlobalVolume: {
6279
+ parameters: {
6280
+ query?: never;
6281
+ header?: never;
6282
+ path: {
6283
+ /**
6284
+ * @description Global volume identifier
6285
+ * @example gsb_abc
6286
+ */
6287
+ id: string;
6288
+ };
6289
+ cookie?: never;
6290
+ };
6291
+ requestBody?: never;
6292
+ responses: {
6293
+ /** @description OK */
6294
+ 200: {
6295
+ headers: {
6296
+ RateLimit: components["headers"]["RateLimit"];
6297
+ "RateLimit-Policy": components["headers"]["RateLimit-Policy"];
6298
+ [name: string]: unknown;
6299
+ };
6300
+ content: {
6301
+ "application/json": components["schemas"]["GlobalVolume"];
6302
+ };
6303
+ };
6304
+ 401: components["responses"]["UnauthorizedError"];
6305
+ 403: components["responses"]["ForbiddenError"];
6306
+ 404: components["responses"]["NotFoundError"];
6307
+ 429: components["responses"]["TooManyRequestsError"];
6308
+ /** @description Error */
6309
+ default: {
6310
+ headers: {
6311
+ RateLimit: components["headers"]["RateLimit"];
6312
+ "RateLimit-Policy": components["headers"]["RateLimit-Policy"];
6313
+ [name: string]: unknown;
6314
+ };
6315
+ content: {
6316
+ "application/problem+json": components["schemas"]["ErrorResponse"];
6317
+ };
6318
+ };
6319
+ };
6320
+ };
6321
+ deleteGlobalVolume: {
6322
+ parameters: {
6323
+ query?: never;
6324
+ header?: never;
6325
+ path: {
6326
+ /**
6327
+ * @description Global volume identifier
6328
+ * @example gsb_abc
6329
+ */
6330
+ id: string;
6331
+ };
6332
+ cookie?: never;
6333
+ };
6334
+ requestBody?: never;
6335
+ responses: {
6336
+ /** @description Deleted. Response has no body. */
6337
+ 204: {
6338
+ headers: {
6339
+ RateLimit: components["headers"]["RateLimit"];
6340
+ "RateLimit-Policy": components["headers"]["RateLimit-Policy"];
6341
+ [name: string]: unknown;
6342
+ };
6343
+ content?: never;
6344
+ };
6345
+ 401: components["responses"]["UnauthorizedError"];
6346
+ 403: components["responses"]["ForbiddenError"];
6347
+ 404: components["responses"]["NotFoundError"];
6348
+ /** @description The volume is still mounted by a pod or serverless endpoint. */
6349
+ 409: {
6350
+ headers: {
6351
+ RateLimit: components["headers"]["RateLimit"];
6352
+ "RateLimit-Policy": components["headers"]["RateLimit-Policy"];
6353
+ [name: string]: unknown;
6354
+ };
6355
+ content: {
6356
+ "application/problem+json": components["schemas"]["ErrorResponse"];
6357
+ };
6358
+ };
6359
+ 429: components["responses"]["TooManyRequestsError"];
6360
+ /** @description Error */
6361
+ default: {
6362
+ headers: {
6363
+ RateLimit: components["headers"]["RateLimit"];
6364
+ "RateLimit-Policy": components["headers"]["RateLimit-Policy"];
6365
+ [name: string]: unknown;
6366
+ };
6367
+ content: {
6368
+ "application/problem+json": components["schemas"]["ErrorResponse"];
6369
+ };
6370
+ };
6371
+ };
6372
+ };
6373
+ updateGlobalVolume: {
6374
+ parameters: {
6375
+ query?: never;
6376
+ header?: never;
6377
+ path: {
6378
+ /**
6379
+ * @description Global volume identifier
6380
+ * @example gsb_abc
6381
+ */
6382
+ id: string;
6383
+ };
6384
+ cookie?: never;
6385
+ };
6386
+ requestBody: {
6387
+ content: {
6388
+ "application/json": components["schemas"]["UpdateGlobalVolumeRequest"];
6389
+ };
6390
+ };
6391
+ responses: {
6392
+ /** @description OK */
6393
+ 200: {
6394
+ headers: {
6395
+ RateLimit: components["headers"]["RateLimit"];
6396
+ "RateLimit-Policy": components["headers"]["RateLimit-Policy"];
6397
+ [name: string]: unknown;
6398
+ };
6399
+ content: {
6400
+ "application/json": components["schemas"]["GlobalVolume"];
6401
+ };
6402
+ };
6403
+ 400: components["responses"]["BadRequestError"];
6404
+ 401: components["responses"]["UnauthorizedError"];
6405
+ 403: components["responses"]["ForbiddenError"];
6406
+ 404: components["responses"]["NotFoundError"];
6407
+ 422: components["responses"]["UnprocessableEntityError"];
6408
+ 429: components["responses"]["TooManyRequestsError"];
6409
+ /** @description Error */
6410
+ default: {
6411
+ headers: {
6412
+ RateLimit: components["headers"]["RateLimit"];
6413
+ "RateLimit-Policy": components["headers"]["RateLimit-Policy"];
6414
+ [name: string]: unknown;
6415
+ };
6416
+ content: {
6417
+ "application/problem+json": components["schemas"]["ErrorResponse"];
6418
+ };
6419
+ };
6420
+ };
6421
+ };
5896
6422
  listRegistries: {
5897
6423
  parameters: {
5898
6424
  query?: never;