@runpod/typescript-api-sdk 0.3.0 → 0.5.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.cts CHANGED
@@ -49,6 +49,52 @@ interface paths {
49
49
  patch?: never;
50
50
  trace?: never;
51
51
  };
52
+ "/v2/organization/users": {
53
+ parameters: {
54
+ query?: never;
55
+ header?: never;
56
+ path?: never;
57
+ cookie?: never;
58
+ };
59
+ /**
60
+ * List organization members
61
+ * @description Returns every member of the authenticated caller's organization with the role each holds. Any member can read the roster. The list is complete and takes no pagination parameters. Returns 404 when the caller does not belong to an organization, or 403 when organizations are unavailable to the caller.
62
+ */
63
+ get: operations["listOrganizationUsers"];
64
+ put?: never;
65
+ post?: never;
66
+ delete?: never;
67
+ options?: never;
68
+ head?: never;
69
+ patch?: never;
70
+ trace?: never;
71
+ };
72
+ "/v2/organization/users/{id}": {
73
+ parameters: {
74
+ query?: never;
75
+ header?: never;
76
+ path: {
77
+ /**
78
+ * @description User identifier
79
+ * @example user_id_abc_123
80
+ */
81
+ id: string;
82
+ };
83
+ cookie?: never;
84
+ };
85
+ /**
86
+ * Get an organization member
87
+ * @description Returns one member of the authenticated caller's organization by user ID, with the role they hold. Any member can read it. A user who is not a member, including one from another organization, returns 404. Returns 404 when the caller does not belong to an organization, or 403 when organizations are unavailable to the caller.
88
+ */
89
+ get: operations["getOrganizationUser"];
90
+ put?: never;
91
+ post?: never;
92
+ delete?: never;
93
+ options?: never;
94
+ head?: never;
95
+ patch?: never;
96
+ trace?: never;
97
+ };
52
98
  "/v2/account/secrets": {
53
99
  parameters: {
54
100
  query?: never;
@@ -207,8 +253,9 @@ interface paths {
207
253
  * | `429` | Rate limited. | Back off using `Retry-After`, then resume. |
208
254
  * | `5xx` | Transient upstream failure. | Retry the same candidate with backoff. |
209
255
  *
210
- * Requests larger than 102400 bytes receive `413` before authentication
211
- * or processing. Reduce the serialized JSON request body and retry.
256
+ * Requests larger than 102400 bytes receive `413` after authentication
257
+ * and rate limiting, before deployment processing. Reduce the serialized
258
+ * JSON request body and retry.
212
259
  *
213
260
  * This limit also applies to the deployment request built from your input
214
261
  * and any referenced template. A small request can therefore receive `413`
@@ -1221,6 +1268,26 @@ interface paths {
1221
1268
  patch?: never;
1222
1269
  trace?: never;
1223
1270
  };
1271
+ "/v2/audit-logs": {
1272
+ parameters: {
1273
+ query?: never;
1274
+ header?: never;
1275
+ path?: never;
1276
+ cookie?: never;
1277
+ };
1278
+ /**
1279
+ * List audit logs
1280
+ * @description Returns the account's audit trail, newest first, cursor-paginated; an omitted `limit` defaults to 200. Each entry records who acted (`actorId`, `email`), what they did (`action`), to which resource (`resourceType`, `resourceId`), and the details of the change (`value`). When the caller belongs to an organization the trail is the organization's, and `actorIds` narrows it to specific members; otherwise it is the trail of the account the request acts for. Filters combine with AND. Entries older than the account's audit log retention window are not returned, and an account whose plan does not include audit logs is answered 403. Follow `pagination.nextCursor` until `hasNextPage` is false.
1281
+ */
1282
+ get: operations["listAuditLogs"];
1283
+ put?: never;
1284
+ post?: never;
1285
+ delete?: never;
1286
+ options?: never;
1287
+ head?: never;
1288
+ patch?: never;
1289
+ trace?: never;
1290
+ };
1224
1291
  "/v2/billing": {
1225
1292
  parameters: {
1226
1293
  query?: never;
@@ -1357,6 +1424,38 @@ interface components {
1357
1424
  */
1358
1425
  name: string;
1359
1426
  };
1427
+ /** @description An organization role, by ID. */
1428
+ OrganizationRoleRef: {
1429
+ /**
1430
+ * @description Role ID. A built-in role's ID is `builtin:` followed by its name; a custom role carries its own ID.
1431
+ * @example builtin:dev
1432
+ */
1433
+ id: string;
1434
+ type: components["schemas"]["OrganizationRoleType"];
1435
+ };
1436
+ /**
1437
+ * @description Who defines the role. `builtin` roles are Runpod's: `builtin:admin`, `builtin:dev`, `builtin:billing` and `builtin:basic`. A `custom` role is one the organization defined, under its own ID.
1438
+ * @enum {string}
1439
+ */
1440
+ OrganizationRoleType: "builtin" | "custom";
1441
+ /** @description A member of the caller's organization. `id` is the member's user ID. */
1442
+ OrganizationUser: {
1443
+ /**
1444
+ * @description User ID.
1445
+ * @example user_id_abc_123
1446
+ */
1447
+ id: string;
1448
+ /**
1449
+ * @description The member's email address. Null for an account that has none.
1450
+ * @example member@example.com
1451
+ */
1452
+ email: string | null;
1453
+ role: components["schemas"]["OrganizationRoleRef"];
1454
+ };
1455
+ ListOrganizationUsersResponse: {
1456
+ /** @description Every member of the organization, in upstream's order. */
1457
+ users: components["schemas"]["OrganizationUser"][];
1458
+ };
1360
1459
  /** @description Cursor-pagination metadata, uniform across list endpoints. Every response carries it: follow `nextCursor` while `hasNextPage` is true to walk the full result set. */
1361
1460
  Pagination: {
1362
1461
  /**
@@ -1454,9 +1553,18 @@ interface components {
1454
1553
  /**
1455
1554
  * @description Storage mounts for a cluster create: `persistent` or `network`, not
1456
1555
  * both. Clusters cannot mount global volumes, so `global` is rejected
1457
- * with 422.
1556
+ * with 422. A mount `path` must not be empty (rejected with 422):
1557
+ * upstream reads an empty path as unset and would mount the volume at
1558
+ * the template's path, or `/workspace` without a template.
1458
1559
  */
1459
- ClusterMounts: components["schemas"]["BaseMounts"];
1560
+ ClusterMounts: components["schemas"]["BaseMounts"] & {
1561
+ persistent?: {
1562
+ path?: string;
1563
+ };
1564
+ network?: {
1565
+ path?: string;
1566
+ }[];
1567
+ };
1460
1568
  /**
1461
1569
  * @description Storage mounts attached to a pod. `persistent` is mutually exclusive
1462
1570
  * with both `network` and `global`: combining them is rejected with 400.
@@ -2519,7 +2627,7 @@ interface components {
2519
2627
  PodSsh: {
2520
2628
  /** @description Connection through Runpod's SSH proxy. Works without exposing a port and without a public IP, but carries an interactive shell only — SCP, SFTP, rsync, and port forwarding need `direct`. Null until the pod has a machine assignment. */
2521
2629
  proxy: components["schemas"]["PodSshEndpoint"] | null;
2522
- /** @description Connection straight to the pod's sshd over its published `22/tcp` mapping. Supports the full SSH feature set. Null unless `22/tcp` is in `ports` and the running pod has been assigned a public port for it — so it is absent while the pod is provisioning or stopped. */
2630
+ /** @description Connection straight to the pod's sshd over its published `22/tcp` mapping. Supports the full SSH feature set. Null unless `22/tcp` is in `ports` and the running pod has been assigned a public port for it — so it is usually absent while the pod is provisioning or stopped. It can still appear on a stopped pod, so check that `status` is `RUNNING` before connecting. Also null when listing pods with `GET /v2/pods`; fetch a single pod by ID to obtain the live mapping. */
2523
2631
  direct: components["schemas"]["PodSshEndpoint"] | null;
2524
2632
  };
2525
2633
  SshKeys: {
@@ -2679,7 +2787,7 @@ interface components {
2679
2787
  template: string | null;
2680
2788
  /**
2681
2789
  * Format: float
2682
- * @description Current cost in USD per hour (0.0 when EXITED or TERMINATED)
2790
+ * @description The pod's hourly compute rate in USD. It's returned in every status, including `EXITED`, so it isn't what you're paying right now: a stopped pod isn't billed for compute, only for its volume disk.
2683
2791
  * @example 0.35
2684
2792
  */
2685
2793
  cost: number;
@@ -2689,7 +2797,7 @@ interface components {
2689
2797
  */
2690
2798
  locked: boolean;
2691
2799
  globalNetworking: components["schemas"]["PodGlobalNetworking"];
2692
- /** @description Live utilization metrics. Null when the pod is not RUNNING. */
2800
+ /** @description Live utilization metrics. Null when the pod is not RUNNING, and when listing pods with `GET /v2/pods`; fetch a single pod by ID to obtain metrics. */
2693
2801
  runtime: components["schemas"]["PodRuntime"] | null;
2694
2802
  /**
2695
2803
  * Format: date-time
@@ -2947,7 +3055,9 @@ interface components {
2947
3055
  * env, ports) and the container registry credential for private
2948
3056
  * images — the only private-image path for clusters. Mutually
2949
3057
  * exclusive with `image`, `args`, `entrypoint`, `cmd`, `disk`,
2950
- * `env`, `ports`, and `mounts` (rejected with 400). The cluster
3058
+ * `env`, and `ports` (rejected with 400). `mounts` combines with
3059
+ * it: the volume in `mounts` is attached to every member pod,
3060
+ * overriding the template's volume settings. The cluster
2951
3061
  * retains the link: the `template` response field is set. Must be
2952
3062
  * a non-serverless pod template accessible to the caller.
2953
3063
  * @example 30zmvf89kd
@@ -3649,6 +3759,55 @@ interface components {
3649
3759
  ListDataCentersResponse: {
3650
3760
  dataCenters: components["schemas"]["DataCenter"][];
3651
3761
  };
3762
+ /** @description One recorded action on the account. */
3763
+ AuditLog: {
3764
+ /**
3765
+ * @description ID of the user who performed the action. Null when the action was not attributable to a user.
3766
+ * @example user_id_abc_123
3767
+ */
3768
+ actorId: string | null;
3769
+ /**
3770
+ * @description Email of the actor when the action was recorded. Null when unknown.
3771
+ * @example actor@example.com
3772
+ */
3773
+ email: string | null;
3774
+ /**
3775
+ * @description Kind of resource the action applied to, as recorded at write time. Not an enum: values are free-form, mostly lower camel case, and new kinds appear without an API version change. Current writers record values such as `pod`, `apiKey`, `sharedApiKey`, `secret`, `costCenter`, `paymentMethod`, `billingAccount`, `registryCredential`, `organization` and `group`, and `unknown` when the writer recorded no kind.
3776
+ * @example pod
3777
+ * @example apiKey
3778
+ * @example costCenter
3779
+ */
3780
+ resourceType: string;
3781
+ /**
3782
+ * @description ID of the affected resource. Empty when the action was not about one resource; a bulk action lists every affected ID, comma-separated.
3783
+ * @example abc123
3784
+ */
3785
+ resourceId: string;
3786
+ /**
3787
+ * @description Name of the action, as recorded at write time. Not an enum: values are free-form, mostly lower case verbs, and new actions appear without an API version change. Current writers record values such as `create`, `update`, `delete`, `rename`, `lock`, `unlock`, `start`, `reset`, `add` and `setBillingMode`.
3788
+ * @example create
3789
+ * @example delete
3790
+ * @example rename
3791
+ */
3792
+ action: string;
3793
+ /**
3794
+ * @description Details of the change as a JSON-encoded string. The structure varies by action; parse it as JSON for a structured view. A bulk action split across several entries adds an `auditChunk` object with `index` and `of`. Null when the action recorded no details.
3795
+ * @example {"status":"TERMINATED"}
3796
+ * @example {"name":"training-run-7"}
3797
+ * @example {"id":"sec_789","name":"HF_TOKEN","sharedWithOrganization":true}
3798
+ */
3799
+ value: string | null;
3800
+ /**
3801
+ * Format: date-time
3802
+ * @description When the action happened (UTC, whole seconds).
3803
+ * @example 2026-09-02T00:00:00Z
3804
+ */
3805
+ timestamp: string;
3806
+ };
3807
+ ListAuditLogsResponse: {
3808
+ auditLogs: components["schemas"]["AuditLog"][];
3809
+ pagination: components["schemas"]["Pagination"];
3810
+ };
3652
3811
  /** @description Half-open time range [startTime, endTime) in RFC 3339. On a record it is the time bucket; on a query echo it is the resolved window. */
3653
3812
  BillingTimeRange: {
3654
3813
  /**
@@ -4023,7 +4182,13 @@ interface components {
4023
4182
  * A structured-field list with one member per window (`minute`, `hour`,
4024
4183
  * `day`), each carrying the quota `q` and the window length in seconds `w`.
4025
4184
  * Returned on responses to authenticated requests, not only on 429s.
4026
- * @example "minute";q=60;w=60, "hour";q=3000;w=3600, "day";q=50000;w=86400
4185
+ *
4186
+ * Limits are per user, and every `/v2` route counts toward the same
4187
+ * limits; creating pods has no separate limit. Read the current quotas from
4188
+ * this header instead of hard-coding them, because they can change and some
4189
+ * accounts have higher limits. A 429 only slows you down: wait for the
4190
+ * `Retry-After` time and retry. Your account isn't suspended.
4191
+ * @example "minute";q=180;w=60, "hour";q=3600;w=3600, "day";q=43200;w=86400
4027
4192
  */
4028
4193
  RateLimitPolicyHeader: string;
4029
4194
  };
@@ -4081,6 +4246,38 @@ interface components {
4081
4246
  "application/problem+json": components["schemas"]["ErrorResponse"];
4082
4247
  };
4083
4248
  };
4249
+ /**
4250
+ * @description The incoming request body exceeds 1048576 bytes (1 MiB). Body size is
4251
+ * checked after authentication and rate limiting. GET and DELETE reject
4252
+ * any nonempty request body with `422` instead.
4253
+ *
4254
+ * An operation can also return this status when its expanded upstream
4255
+ * request is too large, even if the incoming body is within the limit.
4256
+ */
4257
+ RequestTooLargeError: {
4258
+ headers: {
4259
+ RateLimit: components["headers"]["RateLimit"];
4260
+ "RateLimit-Policy": components["headers"]["RateLimit-Policy"];
4261
+ [name: string]: unknown;
4262
+ };
4263
+ content: {
4264
+ "application/problem+json": components["schemas"]["ErrorResponse"];
4265
+ };
4266
+ };
4267
+ /**
4268
+ * @description The response would exceed the upstream response size cap. Request
4269
+ * fewer items and retry; on paginated operations, lower `limit`.
4270
+ */
4271
+ ResponseTooLargeError: {
4272
+ headers: {
4273
+ RateLimit: components["headers"]["RateLimit"];
4274
+ "RateLimit-Policy": components["headers"]["RateLimit-Policy"];
4275
+ [name: string]: unknown;
4276
+ };
4277
+ content: {
4278
+ "application/problem+json": components["schemas"]["ErrorResponse"];
4279
+ };
4280
+ };
4084
4281
  /** @description The request method is not supported for the target path. */
4085
4282
  MethodNotAllowedError: {
4086
4283
  headers: {
@@ -4147,6 +4344,42 @@ interface components {
4147
4344
  * @example 50
4148
4345
  */
4149
4346
  PaginationLimitBuilds: number;
4347
+ /**
4348
+ * @description Page size, 1–200. Defaults to 200 when omitted.
4349
+ * @example 50
4350
+ */
4351
+ PaginationLimitAuditLogs: number;
4352
+ /**
4353
+ * @description Only return entries performed by these users. Comma-separated user IDs. Available to organization accounts only; a personal or team account is answered 400.
4354
+ * @example [
4355
+ * "user_id_abc_123",
4356
+ * "user_id_def_456"
4357
+ * ]
4358
+ */
4359
+ AuditLogActorIdsFilter: string[];
4360
+ /**
4361
+ * @description Only return entries whose `action` is one of these names, matched exactly as recorded. Comma-separated.
4362
+ * @example [
4363
+ * "create",
4364
+ * "delete"
4365
+ * ]
4366
+ */
4367
+ AuditLogActionsFilter: string[];
4368
+ /**
4369
+ * @description Earliest instant to include, inclusive (RFC 3339). The account's audit log retention window still applies: entries that have aged out are not returned even when this reaches further back.
4370
+ * @example 2026-09-01T00:00:00Z
4371
+ */
4372
+ AuditLogStartTime: string;
4373
+ /**
4374
+ * @description Latest instant to include, inclusive (RFC 3339). Must be after `startTime` when both are given; 400 otherwise.
4375
+ * @example 2026-09-30T23:59:59Z
4376
+ */
4377
+ AuditLogEndTime: string;
4378
+ /**
4379
+ * @description Case-insensitive substring match against `email`, `resourceType`, `resourceId`, `action` and `value`; `actorId` is not searched. Surrounding whitespace is ignored.
4380
+ * @example abc123
4381
+ */
4382
+ AuditLogSearch: string;
4150
4383
  /**
4151
4384
  * @description Comma-separated optional expansions; see `CatalogInclude` for the supported values.
4152
4385
  * @example [
@@ -4324,8 +4557,10 @@ interface operations {
4324
4557
  "application/json": components["schemas"]["SshKeys"];
4325
4558
  };
4326
4559
  };
4560
+ 400: components["responses"]["BadRequestError"];
4327
4561
  401: components["responses"]["UnauthorizedError"];
4328
4562
  403: components["responses"]["ForbiddenError"];
4563
+ 413: components["responses"]["RequestTooLargeError"];
4329
4564
  422: components["responses"]["UnprocessableEntityError"];
4330
4565
  429: components["responses"]["TooManyRequestsError"];
4331
4566
  /** @description Error */
@@ -4341,6 +4576,86 @@ interface operations {
4341
4576
  };
4342
4577
  };
4343
4578
  };
4579
+ listOrganizationUsers: {
4580
+ parameters: {
4581
+ query?: never;
4582
+ header?: never;
4583
+ path?: never;
4584
+ cookie?: never;
4585
+ };
4586
+ requestBody?: never;
4587
+ responses: {
4588
+ /** @description OK */
4589
+ 200: {
4590
+ headers: {
4591
+ RateLimit: components["headers"]["RateLimit"];
4592
+ "RateLimit-Policy": components["headers"]["RateLimit-Policy"];
4593
+ [name: string]: unknown;
4594
+ };
4595
+ content: {
4596
+ "application/json": components["schemas"]["ListOrganizationUsersResponse"];
4597
+ };
4598
+ };
4599
+ 401: components["responses"]["UnauthorizedError"];
4600
+ 403: components["responses"]["ForbiddenError"];
4601
+ 404: components["responses"]["NotFoundError"];
4602
+ 429: components["responses"]["TooManyRequestsError"];
4603
+ /** @description Error */
4604
+ default: {
4605
+ headers: {
4606
+ RateLimit: components["headers"]["RateLimit"];
4607
+ "RateLimit-Policy": components["headers"]["RateLimit-Policy"];
4608
+ [name: string]: unknown;
4609
+ };
4610
+ content: {
4611
+ "application/problem+json": components["schemas"]["ErrorResponse"];
4612
+ };
4613
+ };
4614
+ };
4615
+ };
4616
+ getOrganizationUser: {
4617
+ parameters: {
4618
+ query?: never;
4619
+ header?: never;
4620
+ path: {
4621
+ /**
4622
+ * @description User identifier
4623
+ * @example user_id_abc_123
4624
+ */
4625
+ id: string;
4626
+ };
4627
+ cookie?: never;
4628
+ };
4629
+ requestBody?: never;
4630
+ responses: {
4631
+ /** @description OK */
4632
+ 200: {
4633
+ headers: {
4634
+ RateLimit: components["headers"]["RateLimit"];
4635
+ "RateLimit-Policy": components["headers"]["RateLimit-Policy"];
4636
+ [name: string]: unknown;
4637
+ };
4638
+ content: {
4639
+ "application/json": components["schemas"]["OrganizationUser"];
4640
+ };
4641
+ };
4642
+ 401: components["responses"]["UnauthorizedError"];
4643
+ 403: components["responses"]["ForbiddenError"];
4644
+ 404: components["responses"]["NotFoundError"];
4645
+ 429: components["responses"]["TooManyRequestsError"];
4646
+ /** @description Error */
4647
+ default: {
4648
+ headers: {
4649
+ RateLimit: components["headers"]["RateLimit"];
4650
+ "RateLimit-Policy": components["headers"]["RateLimit-Policy"];
4651
+ [name: string]: unknown;
4652
+ };
4653
+ content: {
4654
+ "application/problem+json": components["schemas"]["ErrorResponse"];
4655
+ };
4656
+ };
4657
+ };
4658
+ };
4344
4659
  listSecrets: {
4345
4660
  parameters: {
4346
4661
  query?: {
@@ -4416,6 +4731,7 @@ interface operations {
4416
4731
  "application/problem+json": components["schemas"]["ErrorResponse"];
4417
4732
  };
4418
4733
  };
4734
+ 413: components["responses"]["RequestTooLargeError"];
4419
4735
  422: components["responses"]["UnprocessableEntityError"];
4420
4736
  429: components["responses"]["TooManyRequestsError"];
4421
4737
  /** @description Error */
@@ -4549,6 +4865,7 @@ interface operations {
4549
4865
  401: components["responses"]["UnauthorizedError"];
4550
4866
  403: components["responses"]["ForbiddenError"];
4551
4867
  404: components["responses"]["NotFoundError"];
4868
+ 413: components["responses"]["RequestTooLargeError"];
4552
4869
  422: components["responses"]["UnprocessableEntityError"];
4553
4870
  429: components["responses"]["TooManyRequestsError"];
4554
4871
  /** @description Error */
@@ -4602,6 +4919,7 @@ interface operations {
4602
4919
  };
4603
4920
  401: components["responses"]["UnauthorizedError"];
4604
4921
  403: components["responses"]["ForbiddenError"];
4922
+ 413: components["responses"]["ResponseTooLargeError"];
4605
4923
  429: components["responses"]["TooManyRequestsError"];
4606
4924
  /** @description Error */
4607
4925
  default: {
@@ -4647,6 +4965,8 @@ interface operations {
4647
4965
  /** @description The incoming request body or expanded upstream request exceeds the 102400 byte limit, or the upstream rejects the request as too large. */
4648
4966
  413: {
4649
4967
  headers: {
4968
+ RateLimit: components["headers"]["RateLimit"];
4969
+ "RateLimit-Policy": components["headers"]["RateLimit-Policy"];
4650
4970
  [name: string]: unknown;
4651
4971
  };
4652
4972
  content: {
@@ -4804,6 +5124,7 @@ interface operations {
4804
5124
  "application/problem+json": components["schemas"]["ErrorResponse"];
4805
5125
  };
4806
5126
  };
5127
+ 413: components["responses"]["RequestTooLargeError"];
4807
5128
  422: components["responses"]["UnprocessableEntityError"];
4808
5129
  429: components["responses"]["TooManyRequestsError"];
4809
5130
  /** @description Error */
@@ -4942,6 +5263,7 @@ interface operations {
4942
5263
  "application/problem+json": components["schemas"]["ErrorResponse"];
4943
5264
  };
4944
5265
  };
5266
+ 413: components["responses"]["RequestTooLargeError"];
4945
5267
  422: components["responses"]["UnprocessableEntityError"];
4946
5268
  429: components["responses"]["TooManyRequestsError"];
4947
5269
  /** @description Error */
@@ -4988,6 +5310,7 @@ interface operations {
4988
5310
  };
4989
5311
  401: components["responses"]["UnauthorizedError"];
4990
5312
  403: components["responses"]["ForbiddenError"];
5313
+ 413: components["responses"]["ResponseTooLargeError"];
4991
5314
  429: components["responses"]["TooManyRequestsError"];
4992
5315
  /** @description Error */
4993
5316
  default: {
@@ -5025,6 +5348,7 @@ interface operations {
5025
5348
  400: components["responses"]["BadRequestError"];
5026
5349
  401: components["responses"]["UnauthorizedError"];
5027
5350
  403: components["responses"]["ForbiddenError"];
5351
+ 413: components["responses"]["RequestTooLargeError"];
5028
5352
  422: components["responses"]["UnprocessableEntityError"];
5029
5353
  429: components["responses"]["TooManyRequestsError"];
5030
5354
  /** @description Error */
@@ -5170,6 +5494,7 @@ interface operations {
5170
5494
  "application/problem+json": components["schemas"]["ErrorResponse"];
5171
5495
  };
5172
5496
  };
5497
+ 413: components["responses"]["RequestTooLargeError"];
5173
5498
  422: components["responses"]["UnprocessableEntityError"];
5174
5499
  429: components["responses"]["TooManyRequestsError"];
5175
5500
  /** @description Error */
@@ -5263,6 +5588,7 @@ interface operations {
5263
5588
  };
5264
5589
  401: components["responses"]["UnauthorizedError"];
5265
5590
  403: components["responses"]["ForbiddenError"];
5591
+ 413: components["responses"]["ResponseTooLargeError"];
5266
5592
  429: components["responses"]["TooManyRequestsError"];
5267
5593
  /** @description Error */
5268
5594
  default: {
@@ -5305,6 +5631,7 @@ interface operations {
5305
5631
  401: components["responses"]["UnauthorizedError"];
5306
5632
  403: components["responses"]["ForbiddenError"];
5307
5633
  404: components["responses"]["NotFoundError"];
5634
+ 413: components["responses"]["RequestTooLargeError"];
5308
5635
  422: components["responses"]["UnprocessableEntityError"];
5309
5636
  429: components["responses"]["TooManyRequestsError"];
5310
5637
  /** @description Error */
@@ -5438,6 +5765,7 @@ interface operations {
5438
5765
  401: components["responses"]["UnauthorizedError"];
5439
5766
  403: components["responses"]["ForbiddenError"];
5440
5767
  404: components["responses"]["NotFoundError"];
5768
+ 413: components["responses"]["RequestTooLargeError"];
5441
5769
  422: components["responses"]["UnprocessableEntityError"];
5442
5770
  429: components["responses"]["TooManyRequestsError"];
5443
5771
  /** @description Error */
@@ -5536,6 +5864,7 @@ interface operations {
5536
5864
  401: components["responses"]["UnauthorizedError"];
5537
5865
  403: components["responses"]["ForbiddenError"];
5538
5866
  404: components["responses"]["NotFoundError"];
5867
+ 413: components["responses"]["ResponseTooLargeError"];
5539
5868
  429: components["responses"]["TooManyRequestsError"];
5540
5869
  /** @description Error */
5541
5870
  default: {
@@ -5590,6 +5919,7 @@ interface operations {
5590
5919
  401: components["responses"]["UnauthorizedError"];
5591
5920
  403: components["responses"]["ForbiddenError"];
5592
5921
  404: components["responses"]["NotFoundError"];
5922
+ 413: components["responses"]["ResponseTooLargeError"];
5593
5923
  429: components["responses"]["TooManyRequestsError"];
5594
5924
  /** @description Error */
5595
5925
  default: {
@@ -5762,6 +6092,7 @@ interface operations {
5762
6092
  };
5763
6093
  401: components["responses"]["UnauthorizedError"];
5764
6094
  403: components["responses"]["ForbiddenError"];
6095
+ 413: components["responses"]["ResponseTooLargeError"];
5765
6096
  429: components["responses"]["TooManyRequestsError"];
5766
6097
  /** @description Error */
5767
6098
  default: {
@@ -5803,6 +6134,7 @@ interface operations {
5803
6134
  400: components["responses"]["BadRequestError"];
5804
6135
  401: components["responses"]["UnauthorizedError"];
5805
6136
  403: components["responses"]["ForbiddenError"];
6137
+ 413: components["responses"]["RequestTooLargeError"];
5806
6138
  422: components["responses"]["UnprocessableEntityError"];
5807
6139
  429: components["responses"]["TooManyRequestsError"];
5808
6140
  /** @description Error */
@@ -5938,6 +6270,7 @@ interface operations {
5938
6270
  401: components["responses"]["UnauthorizedError"];
5939
6271
  403: components["responses"]["ForbiddenError"];
5940
6272
  404: components["responses"]["NotFoundError"];
6273
+ 413: components["responses"]["RequestTooLargeError"];
5941
6274
  422: components["responses"]["UnprocessableEntityError"];
5942
6275
  429: components["responses"]["TooManyRequestsError"];
5943
6276
  /** @description Error */
@@ -5986,6 +6319,7 @@ interface operations {
5986
6319
  };
5987
6320
  401: components["responses"]["UnauthorizedError"];
5988
6321
  403: components["responses"]["ForbiddenError"];
6322
+ 413: components["responses"]["ResponseTooLargeError"];
5989
6323
  429: components["responses"]["TooManyRequestsError"];
5990
6324
  /** @description Error */
5991
6325
  default: {
@@ -6027,6 +6361,7 @@ interface operations {
6027
6361
  400: components["responses"]["BadRequestError"];
6028
6362
  401: components["responses"]["UnauthorizedError"];
6029
6363
  403: components["responses"]["ForbiddenError"];
6364
+ 413: components["responses"]["RequestTooLargeError"];
6030
6365
  422: components["responses"]["UnprocessableEntityError"];
6031
6366
  429: components["responses"]["TooManyRequestsError"];
6032
6367
  /** @description Error */
@@ -6170,6 +6505,7 @@ interface operations {
6170
6505
  401: components["responses"]["UnauthorizedError"];
6171
6506
  403: components["responses"]["ForbiddenError"];
6172
6507
  404: components["responses"]["NotFoundError"];
6508
+ 413: components["responses"]["RequestTooLargeError"];
6173
6509
  422: components["responses"]["UnprocessableEntityError"];
6174
6510
  429: components["responses"]["TooManyRequestsError"];
6175
6511
  /** @description Error */
@@ -6218,6 +6554,7 @@ interface operations {
6218
6554
  };
6219
6555
  401: components["responses"]["UnauthorizedError"];
6220
6556
  403: components["responses"]["ForbiddenError"];
6557
+ 413: components["responses"]["ResponseTooLargeError"];
6221
6558
  422: components["responses"]["UnprocessableEntityError"];
6222
6559
  429: components["responses"]["TooManyRequestsError"];
6223
6560
  /** @description Error */
@@ -6260,6 +6597,7 @@ interface operations {
6260
6597
  400: components["responses"]["BadRequestError"];
6261
6598
  401: components["responses"]["UnauthorizedError"];
6262
6599
  403: components["responses"]["ForbiddenError"];
6600
+ 413: components["responses"]["RequestTooLargeError"];
6263
6601
  422: components["responses"]["UnprocessableEntityError"];
6264
6602
  429: components["responses"]["TooManyRequestsError"];
6265
6603
  /** @description Error */
@@ -6404,6 +6742,7 @@ interface operations {
6404
6742
  401: components["responses"]["UnauthorizedError"];
6405
6743
  403: components["responses"]["ForbiddenError"];
6406
6744
  404: components["responses"]["NotFoundError"];
6745
+ 413: components["responses"]["RequestTooLargeError"];
6407
6746
  422: components["responses"]["UnprocessableEntityError"];
6408
6747
  429: components["responses"]["TooManyRequestsError"];
6409
6748
  /** @description Error */
@@ -6482,6 +6821,7 @@ interface operations {
6482
6821
  400: components["responses"]["BadRequestError"];
6483
6822
  401: components["responses"]["UnauthorizedError"];
6484
6823
  403: components["responses"]["ForbiddenError"];
6824
+ 413: components["responses"]["RequestTooLargeError"];
6485
6825
  422: components["responses"]["UnprocessableEntityError"];
6486
6826
  429: components["responses"]["TooManyRequestsError"];
6487
6827
  /** @description Error */
@@ -6646,8 +6986,10 @@ interface operations {
6646
6986
  "application/json": components["schemas"]["EcrDelegation"];
6647
6987
  };
6648
6988
  };
6989
+ 400: components["responses"]["BadRequestError"];
6649
6990
  401: components["responses"]["UnauthorizedError"];
6650
6991
  403: components["responses"]["ForbiddenError"];
6992
+ 413: components["responses"]["RequestTooLargeError"];
6651
6993
  429: components["responses"]["TooManyRequestsError"];
6652
6994
  /** @description Error */
6653
6995
  default: {
@@ -7118,6 +7460,87 @@ interface operations {
7118
7460
  };
7119
7461
  };
7120
7462
  };
7463
+ listAuditLogs: {
7464
+ parameters: {
7465
+ query?: {
7466
+ /**
7467
+ * @description Only return entries performed by these users. Comma-separated user IDs. Available to organization accounts only; a personal or team account is answered 400.
7468
+ * @example [
7469
+ * "user_id_abc_123",
7470
+ * "user_id_def_456"
7471
+ * ]
7472
+ */
7473
+ actorIds?: components["parameters"]["AuditLogActorIdsFilter"];
7474
+ /**
7475
+ * @description Only return entries whose `action` is one of these names, matched exactly as recorded. Comma-separated.
7476
+ * @example [
7477
+ * "create",
7478
+ * "delete"
7479
+ * ]
7480
+ */
7481
+ actions?: components["parameters"]["AuditLogActionsFilter"];
7482
+ /**
7483
+ * @description Earliest instant to include, inclusive (RFC 3339). The account's audit log retention window still applies: entries that have aged out are not returned even when this reaches further back.
7484
+ * @example 2026-09-01T00:00:00Z
7485
+ */
7486
+ startTime?: components["parameters"]["AuditLogStartTime"];
7487
+ /**
7488
+ * @description Latest instant to include, inclusive (RFC 3339). Must be after `startTime` when both are given; 400 otherwise.
7489
+ * @example 2026-09-30T23:59:59Z
7490
+ */
7491
+ endTime?: components["parameters"]["AuditLogEndTime"];
7492
+ /**
7493
+ * @description Case-insensitive substring match against `email`, `resourceType`, `resourceId`, `action` and `value`; `actorId` is not searched. Surrounding whitespace is ignored.
7494
+ * @example abc123
7495
+ */
7496
+ search?: components["parameters"]["AuditLogSearch"];
7497
+ /**
7498
+ * @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.
7499
+ * @example Y3JlYXRlZEF0PTE3NDg3ODA0MDA
7500
+ */
7501
+ cursor?: components["parameters"]["PaginationCursor"];
7502
+ /**
7503
+ * @description Page size, 1–200. Defaults to 200 when omitted.
7504
+ * @example 50
7505
+ */
7506
+ limit?: components["parameters"]["PaginationLimitAuditLogs"];
7507
+ };
7508
+ header?: never;
7509
+ path?: never;
7510
+ cookie?: never;
7511
+ };
7512
+ requestBody?: never;
7513
+ responses: {
7514
+ /** @description OK */
7515
+ 200: {
7516
+ headers: {
7517
+ RateLimit: components["headers"]["RateLimit"];
7518
+ "RateLimit-Policy": components["headers"]["RateLimit-Policy"];
7519
+ [name: string]: unknown;
7520
+ };
7521
+ content: {
7522
+ "application/json": components["schemas"]["ListAuditLogsResponse"];
7523
+ };
7524
+ };
7525
+ 400: components["responses"]["BadRequestError"];
7526
+ 401: components["responses"]["UnauthorizedError"];
7527
+ 403: components["responses"]["ForbiddenError"];
7528
+ 413: components["responses"]["ResponseTooLargeError"];
7529
+ 422: components["responses"]["UnprocessableEntityError"];
7530
+ 429: components["responses"]["TooManyRequestsError"];
7531
+ /** @description Error */
7532
+ default: {
7533
+ headers: {
7534
+ RateLimit: components["headers"]["RateLimit"];
7535
+ "RateLimit-Policy": components["headers"]["RateLimit-Policy"];
7536
+ [name: string]: unknown;
7537
+ };
7538
+ content: {
7539
+ "application/problem+json": components["schemas"]["ErrorResponse"];
7540
+ };
7541
+ };
7542
+ };
7543
+ };
7121
7544
  listBilling: {
7122
7545
  parameters: {
7123
7546
  query?: {
@@ -7496,7 +7919,7 @@ interface RetryOptions {
7496
7919
  /** Sleep implementation, injectable for fast tests. */
7497
7920
  sleep?: (ms: number) => Promise<void>;
7498
7921
  }
7499
- /** Wraps a fetch implementation with the RunPod retry policy. */
7922
+ /** Wraps a fetch implementation with the Runpod retry policy. */
7500
7923
  declare function createRetryFetch(options?: RetryOptions): typeof fetch;
7501
7924
 
7502
7925
  /** One deadline across fetch, retries, backoff and response-body consumption. */
@@ -7545,7 +7968,7 @@ interface RunpodClientOptions {
7545
7968
  }
7546
7969
  type RunpodClient = Client<paths>;
7547
7970
  /**
7548
- * Creates a typed RunPod API client with the shared retry policy wired in.
7971
+ * Creates a typed Runpod API client with the shared retry policy wired in.
7549
7972
  *
7550
7973
  * The API key comes from `options.apiKey` or `RUNPOD_API_KEY`; without either,
7551
7974
  * this throws. A blank `baseUrl` or `RUNPOD_API_BASE_URL` is treated as unset