@nirvana-labs/nirvana 1.57.0 → 1.58.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/CHANGELOG.md CHANGED
@@ -1,5 +1,14 @@
1
1
  # Changelog
2
2
 
3
+ ## 1.58.0 (2026-03-20)
4
+
5
+ Full Changelog: [v1.57.0...v1.58.0](https://github.com/nirvana-labs/nirvana-typescript/compare/v1.57.0...v1.58.0)
6
+
7
+ ### Features
8
+
9
+ * **api:** api update ([47855ce](https://github.com/nirvana-labs/nirvana-typescript/commit/47855ce0fd616316d47990ffbf91fef115fc0917))
10
+ * **api:** api update ([31b9e38](https://github.com/nirvana-labs/nirvana-typescript/commit/31b9e383f2e53d1fd7acc7e977e822612afe98c1))
11
+
3
12
  ## 1.57.0 (2026-03-20)
4
13
 
5
14
  Full Changelog: [v1.56.0...v1.57.0](https://github.com/nirvana-labs/nirvana-typescript/compare/v1.56.0...v1.57.0)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nirvana-labs/nirvana",
3
- "version": "1.57.0",
3
+ "version": "1.58.0",
4
4
  "description": "The official TypeScript library for the Nirvana Labs API",
5
5
  "author": "Nirvana Labs <engineering@nirvanalabs.io>",
6
6
  "types": "./index.d.ts",
@@ -1,4 +1,5 @@
1
1
  import { APIResource } from "../../core/resource.mjs";
2
+ import * as APIKeysAPI from "./api-keys.mjs";
2
3
  import * as Shared from "../shared.mjs";
3
4
  import { APIPromise } from "../../core/api-promise.mjs";
4
5
  import { Cursor, type CursorParams, PagePromise } from "../../core/pagination.mjs";
@@ -12,6 +13,13 @@ export declare class APIKeys extends APIResource {
12
13
  * const apiKey = await client.apiKeys.create({
13
14
  * expires_at: '2025-12-31T23:59:59Z',
14
15
  * name: 'My API Key',
16
+ * permissions: [
17
+ * { permission: 'edit', resource_type: 'vm' },
18
+ * ],
19
+ * project_ids: [
20
+ * '123e4567-e89b-12d3-a456-426614174000',
21
+ * '123e4567-e89b-12d3-a456-426614174001',
22
+ * ],
15
23
  * });
16
24
  * ```
17
25
  */
@@ -77,6 +85,14 @@ export interface APIKey {
77
85
  * API Key name.
78
86
  */
79
87
  name: string;
88
+ /**
89
+ * Scoped permissions for this API key.
90
+ */
91
+ permissions: Array<APIKeyPermission>;
92
+ /**
93
+ * Project IDs this API key is scoped to.
94
+ */
95
+ project_ids: Array<string>;
80
96
  /**
81
97
  * IP filter rules.
82
98
  */
@@ -109,6 +125,27 @@ export interface APIKeyList {
109
125
  */
110
126
  pagination: Shared.Pagination;
111
127
  }
128
+ /**
129
+ * API Key permission.
130
+ */
131
+ export interface APIKeyPermission {
132
+ /**
133
+ * Permission level: "read" or "edit".
134
+ */
135
+ permission: APIPermissionLevel;
136
+ /**
137
+ * Resource type this permission applies to.
138
+ */
139
+ resource_type: APIPermissionResourceType;
140
+ }
141
+ /**
142
+ * Permission level: "read" or "edit".
143
+ */
144
+ export type APIPermissionLevel = 'read' | 'edit';
145
+ /**
146
+ * Resource type this permission applies to.
147
+ */
148
+ export type APIPermissionResourceType = 'vm' | 'vpc' | 'volume' | 'connect_connection' | 'rpc_node_dedicated' | 'rpc_node_flex' | 'nks_cluster' | 'nks_node_pool' | 'project' | 'api_key';
112
149
  export interface APIKeyCreateParams {
113
150
  /**
114
151
  * When the API Key expires and is no longer valid.
@@ -118,6 +155,14 @@ export interface APIKeyCreateParams {
118
155
  * API Key name.
119
156
  */
120
157
  name: string;
158
+ /**
159
+ * Scoped permissions for this API key. At least one is required.
160
+ */
161
+ permissions: Array<APIKeyCreateParams.Permission>;
162
+ /**
163
+ * Project IDs this API key is scoped to. At least one is required.
164
+ */
165
+ project_ids: Array<string>;
121
166
  /**
122
167
  * IP filter rules.
123
168
  */
@@ -131,11 +176,36 @@ export interface APIKeyCreateParams {
131
176
  */
132
177
  tags?: Array<string>;
133
178
  }
179
+ export declare namespace APIKeyCreateParams {
180
+ /**
181
+ * API Key permission request.
182
+ */
183
+ interface Permission {
184
+ /**
185
+ * Permission level: "read" or "edit".
186
+ */
187
+ permission: APIKeysAPI.APIPermissionLevel;
188
+ /**
189
+ * Resource type this permission applies to.
190
+ */
191
+ resource_type: APIKeysAPI.APIPermissionResourceType;
192
+ }
193
+ }
134
194
  export interface APIKeyUpdateParams {
135
195
  /**
136
196
  * API Key name.
137
197
  */
138
198
  name?: string;
199
+ /**
200
+ * Scoped permissions for this API key. When provided, replaces the entire set. At
201
+ * least one is required.
202
+ */
203
+ permissions?: Array<APIKeyUpdateParams.Permission>;
204
+ /**
205
+ * Project IDs this API key is scoped to. When provided, replaces the entire set.
206
+ * At least one is required.
207
+ */
208
+ project_ids?: Array<string>;
139
209
  /**
140
210
  * IP filter rules.
141
211
  */
@@ -145,9 +215,24 @@ export interface APIKeyUpdateParams {
145
215
  */
146
216
  tags?: Array<string>;
147
217
  }
218
+ export declare namespace APIKeyUpdateParams {
219
+ /**
220
+ * API Key permission request.
221
+ */
222
+ interface Permission {
223
+ /**
224
+ * Permission level: "read" or "edit".
225
+ */
226
+ permission: APIKeysAPI.APIPermissionLevel;
227
+ /**
228
+ * Resource type this permission applies to.
229
+ */
230
+ resource_type: APIKeysAPI.APIPermissionResourceType;
231
+ }
232
+ }
148
233
  export interface APIKeyListParams extends CursorParams {
149
234
  }
150
235
  export declare namespace APIKeys {
151
- export { type APIKey as APIKey, type APIKeyList as APIKeyList, type APIKeysCursor as APIKeysCursor, type APIKeyCreateParams as APIKeyCreateParams, type APIKeyUpdateParams as APIKeyUpdateParams, type APIKeyListParams as APIKeyListParams, };
236
+ export { type APIKey as APIKey, type APIKeyList as APIKeyList, type APIKeyPermission as APIKeyPermission, type APIPermissionLevel as APIPermissionLevel, type APIPermissionResourceType as APIPermissionResourceType, type APIKeysCursor as APIKeysCursor, type APIKeyCreateParams as APIKeyCreateParams, type APIKeyUpdateParams as APIKeyUpdateParams, type APIKeyListParams as APIKeyListParams, };
152
237
  }
153
238
  //# sourceMappingURL=api-keys.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"api-keys.d.mts","sourceRoot":"","sources":["../../src/resources/api-keys/api-keys.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api-keys.d.mts","sourceRoot":"","sources":["../../src/resources/api-keys/api-keys.ts"],"names":[],"mappings":"OAEO,EAAE,WAAW,EAAE;OACf,KAAK,UAAU;OACf,KAAK,MAAM;OACX,EAAE,UAAU,EAAE;OACd,EAAE,MAAM,EAAE,KAAK,YAAY,EAAE,WAAW,EAAE;OAE1C,EAAE,cAAc,EAAE;AAGzB,qBAAa,OAAQ,SAAQ,WAAW;IACtC;;;;;;;;;;;;;;;;;OAiBG;IACH,MAAM,CAAC,IAAI,EAAE,kBAAkB,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,CAAC,MAAM,CAAC;IAI9E;;;;;;;OAOG;IACH,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,kBAAkB,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,CAAC,MAAM,CAAC;IAIhG;;;;;;;;;;OAUG;IACH,IAAI,CACF,KAAK,GAAE,gBAAgB,GAAG,IAAI,GAAG,SAAc,EAC/C,OAAO,CAAC,EAAE,cAAc,GACvB,WAAW,CAAC,aAAa,EAAE,MAAM,CAAC;IAIrC;;;;;;;OAOG;IACH,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,CAAC,IAAI,CAAC;IAOpE;;;;;;;OAOG;IACH,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,CAAC,MAAM,CAAC;CAGpE;AAED,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;AAE3C;;GAEG;AACH,MAAM,WAAW,MAAM;IACrB;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IAEX;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,WAAW,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC;IAErC;;OAEG;IACH,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAE3B;;OAEG;IACH,cAAc,EAAE,MAAM,CAAC,oBAAoB,CAAC;IAE5C;;OAEG;IACH,MAAM,EAAE,QAAQ,GAAG,UAAU,GAAG,SAAS,CAAC;IAE1C;;OAEG;IACH,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAEpB;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAErB;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,UAAU,EAAE,kBAAkB,CAAC;IAE/B;;OAEG;IACH,aAAa,EAAE,yBAAyB,CAAC;CAC1C;AAED;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,MAAM,CAAC;AAEjD;;GAEG;AACH,MAAM,MAAM,yBAAyB,GACjC,IAAI,GACJ,KAAK,GACL,QAAQ,GACR,oBAAoB,GACpB,oBAAoB,GACpB,eAAe,GACf,aAAa,GACb,eAAe,GACf,SAAS,GACT,SAAS,CAAC;AAEd,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,WAAW,EAAE,KAAK,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;IAElD;;OAEG;IACH,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAE3B;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC,YAAY,CAAC;IAErC;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,IAAI,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CACtB;AAED,yBAAiB,kBAAkB,CAAC;IAClC;;OAEG;IACH,UAAiB,UAAU;QACzB;;WAEG;QACH,UAAU,EAAE,UAAU,CAAC,kBAAkB,CAAC;QAE1C;;WAEG;QACH,aAAa,EAAE,UAAU,CAAC,yBAAyB,CAAC;KACrD;CACF;AAED,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;OAGG;IACH,WAAW,CAAC,EAAE,KAAK,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;IAEnD;;;OAGG;IACH,WAAW,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAE5B;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC,YAAY,CAAC;IAErC;;OAEG;IACH,IAAI,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CACtB;AAED,yBAAiB,kBAAkB,CAAC;IAClC;;OAEG;IACH,UAAiB,UAAU;QACzB;;WAEG;QACH,UAAU,EAAE,UAAU,CAAC,kBAAkB,CAAC;QAE1C;;WAEG;QACH,aAAa,EAAE,UAAU,CAAC,yBAAyB,CAAC;KACrD;CACF;AAED,MAAM,WAAW,gBAAiB,SAAQ,YAAY;CAAG;AAEzD,MAAM,CAAC,OAAO,WAAW,OAAO,CAAC;IAC/B,OAAO,EACL,KAAK,MAAM,IAAI,MAAM,EACrB,KAAK,UAAU,IAAI,UAAU,EAC7B,KAAK,gBAAgB,IAAI,gBAAgB,EACzC,KAAK,kBAAkB,IAAI,kBAAkB,EAC7C,KAAK,yBAAyB,IAAI,yBAAyB,EAC3D,KAAK,aAAa,IAAI,aAAa,EACnC,KAAK,kBAAkB,IAAI,kBAAkB,EAC7C,KAAK,kBAAkB,IAAI,kBAAkB,EAC7C,KAAK,gBAAgB,IAAI,gBAAgB,GAC1C,CAAC;CACH"}
@@ -1,4 +1,5 @@
1
1
  import { APIResource } from "../../core/resource.js";
2
+ import * as APIKeysAPI from "./api-keys.js";
2
3
  import * as Shared from "../shared.js";
3
4
  import { APIPromise } from "../../core/api-promise.js";
4
5
  import { Cursor, type CursorParams, PagePromise } from "../../core/pagination.js";
@@ -12,6 +13,13 @@ export declare class APIKeys extends APIResource {
12
13
  * const apiKey = await client.apiKeys.create({
13
14
  * expires_at: '2025-12-31T23:59:59Z',
14
15
  * name: 'My API Key',
16
+ * permissions: [
17
+ * { permission: 'edit', resource_type: 'vm' },
18
+ * ],
19
+ * project_ids: [
20
+ * '123e4567-e89b-12d3-a456-426614174000',
21
+ * '123e4567-e89b-12d3-a456-426614174001',
22
+ * ],
15
23
  * });
16
24
  * ```
17
25
  */
@@ -77,6 +85,14 @@ export interface APIKey {
77
85
  * API Key name.
78
86
  */
79
87
  name: string;
88
+ /**
89
+ * Scoped permissions for this API key.
90
+ */
91
+ permissions: Array<APIKeyPermission>;
92
+ /**
93
+ * Project IDs this API key is scoped to.
94
+ */
95
+ project_ids: Array<string>;
80
96
  /**
81
97
  * IP filter rules.
82
98
  */
@@ -109,6 +125,27 @@ export interface APIKeyList {
109
125
  */
110
126
  pagination: Shared.Pagination;
111
127
  }
128
+ /**
129
+ * API Key permission.
130
+ */
131
+ export interface APIKeyPermission {
132
+ /**
133
+ * Permission level: "read" or "edit".
134
+ */
135
+ permission: APIPermissionLevel;
136
+ /**
137
+ * Resource type this permission applies to.
138
+ */
139
+ resource_type: APIPermissionResourceType;
140
+ }
141
+ /**
142
+ * Permission level: "read" or "edit".
143
+ */
144
+ export type APIPermissionLevel = 'read' | 'edit';
145
+ /**
146
+ * Resource type this permission applies to.
147
+ */
148
+ export type APIPermissionResourceType = 'vm' | 'vpc' | 'volume' | 'connect_connection' | 'rpc_node_dedicated' | 'rpc_node_flex' | 'nks_cluster' | 'nks_node_pool' | 'project' | 'api_key';
112
149
  export interface APIKeyCreateParams {
113
150
  /**
114
151
  * When the API Key expires and is no longer valid.
@@ -118,6 +155,14 @@ export interface APIKeyCreateParams {
118
155
  * API Key name.
119
156
  */
120
157
  name: string;
158
+ /**
159
+ * Scoped permissions for this API key. At least one is required.
160
+ */
161
+ permissions: Array<APIKeyCreateParams.Permission>;
162
+ /**
163
+ * Project IDs this API key is scoped to. At least one is required.
164
+ */
165
+ project_ids: Array<string>;
121
166
  /**
122
167
  * IP filter rules.
123
168
  */
@@ -131,11 +176,36 @@ export interface APIKeyCreateParams {
131
176
  */
132
177
  tags?: Array<string>;
133
178
  }
179
+ export declare namespace APIKeyCreateParams {
180
+ /**
181
+ * API Key permission request.
182
+ */
183
+ interface Permission {
184
+ /**
185
+ * Permission level: "read" or "edit".
186
+ */
187
+ permission: APIKeysAPI.APIPermissionLevel;
188
+ /**
189
+ * Resource type this permission applies to.
190
+ */
191
+ resource_type: APIKeysAPI.APIPermissionResourceType;
192
+ }
193
+ }
134
194
  export interface APIKeyUpdateParams {
135
195
  /**
136
196
  * API Key name.
137
197
  */
138
198
  name?: string;
199
+ /**
200
+ * Scoped permissions for this API key. When provided, replaces the entire set. At
201
+ * least one is required.
202
+ */
203
+ permissions?: Array<APIKeyUpdateParams.Permission>;
204
+ /**
205
+ * Project IDs this API key is scoped to. When provided, replaces the entire set.
206
+ * At least one is required.
207
+ */
208
+ project_ids?: Array<string>;
139
209
  /**
140
210
  * IP filter rules.
141
211
  */
@@ -145,9 +215,24 @@ export interface APIKeyUpdateParams {
145
215
  */
146
216
  tags?: Array<string>;
147
217
  }
218
+ export declare namespace APIKeyUpdateParams {
219
+ /**
220
+ * API Key permission request.
221
+ */
222
+ interface Permission {
223
+ /**
224
+ * Permission level: "read" or "edit".
225
+ */
226
+ permission: APIKeysAPI.APIPermissionLevel;
227
+ /**
228
+ * Resource type this permission applies to.
229
+ */
230
+ resource_type: APIKeysAPI.APIPermissionResourceType;
231
+ }
232
+ }
148
233
  export interface APIKeyListParams extends CursorParams {
149
234
  }
150
235
  export declare namespace APIKeys {
151
- export { type APIKey as APIKey, type APIKeyList as APIKeyList, type APIKeysCursor as APIKeysCursor, type APIKeyCreateParams as APIKeyCreateParams, type APIKeyUpdateParams as APIKeyUpdateParams, type APIKeyListParams as APIKeyListParams, };
236
+ export { type APIKey as APIKey, type APIKeyList as APIKeyList, type APIKeyPermission as APIKeyPermission, type APIPermissionLevel as APIPermissionLevel, type APIPermissionResourceType as APIPermissionResourceType, type APIKeysCursor as APIKeysCursor, type APIKeyCreateParams as APIKeyCreateParams, type APIKeyUpdateParams as APIKeyUpdateParams, type APIKeyListParams as APIKeyListParams, };
152
237
  }
153
238
  //# sourceMappingURL=api-keys.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"api-keys.d.ts","sourceRoot":"","sources":["../../src/resources/api-keys/api-keys.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api-keys.d.ts","sourceRoot":"","sources":["../../src/resources/api-keys/api-keys.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,13 @@ class APIKeys extends resource_1.APIResource {
15
15
  * const apiKey = await client.apiKeys.create({
16
16
  * expires_at: '2025-12-31T23:59:59Z',
17
17
  * name: 'My API Key',
18
+ * permissions: [
19
+ * { permission: 'edit', resource_type: 'vm' },
20
+ * ],
21
+ * project_ids: [
22
+ * '123e4567-e89b-12d3-a456-426614174000',
23
+ * '123e4567-e89b-12d3-a456-426614174001',
24
+ * ],
18
25
  * });
19
26
  * ```
20
27
  */
@@ -1 +1 @@
1
- {"version":3,"file":"api-keys.js","sourceRoot":"","sources":["../../src/resources/api-keys/api-keys.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;AAEtF,qDAAkD;AAGlD,yDAA+E;AAC/E,uDAAsD;AAEtD,uDAAiD;AAEjD,MAAa,OAAQ,SAAQ,sBAAW;IACtC;;;;;;;;;;OAUG;IACH,MAAM,CAAC,IAAwB,EAAE,OAAwB;QACvD,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACjE,CAAC;IAED;;;;;;;OAOG;IACH,MAAM,CAAC,QAAgB,EAAE,IAAwB,EAAE,OAAwB;QACzE,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAA,WAAI,EAAA,gBAAgB,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IAClF,CAAC;IAED;;;;;;;;;;OAUG;IACH,IAAI,CACF,QAA6C,EAAE,EAC/C,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,cAAc,EAAE,CAAA,mBAAc,CAAA,EAAE,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACxF,CAAC;IAED;;;;;;;OAOG;IACH,MAAM,CAAC,QAAgB,EAAE,OAAwB;QAC/C,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAA,WAAI,EAAA,gBAAgB,QAAQ,EAAE,EAAE;YACzD,GAAG,OAAO;YACV,OAAO,EAAE,IAAA,sBAAY,EAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;SAC7D,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;OAOG;IACH,GAAG,CAAC,QAAgB,EAAE,OAAwB;QAC5C,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAA,WAAI,EAAA,gBAAgB,QAAQ,EAAE,EAAE,OAAO,CAAC,CAAC;IACnE,CAAC;CACF;AAxED,0BAwEC"}
1
+ {"version":3,"file":"api-keys.js","sourceRoot":"","sources":["../../src/resources/api-keys/api-keys.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;AAEtF,qDAAkD;AAIlD,yDAA+E;AAC/E,uDAAsD;AAEtD,uDAAiD;AAEjD,MAAa,OAAQ,SAAQ,sBAAW;IACtC;;;;;;;;;;;;;;;;;OAiBG;IACH,MAAM,CAAC,IAAwB,EAAE,OAAwB;QACvD,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACjE,CAAC;IAED;;;;;;;OAOG;IACH,MAAM,CAAC,QAAgB,EAAE,IAAwB,EAAE,OAAwB;QACzE,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAA,WAAI,EAAA,gBAAgB,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IAClF,CAAC;IAED;;;;;;;;;;OAUG;IACH,IAAI,CACF,QAA6C,EAAE,EAC/C,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,cAAc,EAAE,CAAA,mBAAc,CAAA,EAAE,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACxF,CAAC;IAED;;;;;;;OAOG;IACH,MAAM,CAAC,QAAgB,EAAE,OAAwB;QAC/C,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAA,WAAI,EAAA,gBAAgB,QAAQ,EAAE,EAAE;YACzD,GAAG,OAAO;YACV,OAAO,EAAE,IAAA,sBAAY,EAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;SAC7D,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;OAOG;IACH,GAAG,CAAC,QAAgB,EAAE,OAAwB;QAC5C,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAA,WAAI,EAAA,gBAAgB,QAAQ,EAAE,EAAE,OAAO,CAAC,CAAC;IACnE,CAAC;CACF;AA/ED,0BA+EC"}
@@ -12,6 +12,13 @@ export class APIKeys extends APIResource {
12
12
  * const apiKey = await client.apiKeys.create({
13
13
  * expires_at: '2025-12-31T23:59:59Z',
14
14
  * name: 'My API Key',
15
+ * permissions: [
16
+ * { permission: 'edit', resource_type: 'vm' },
17
+ * ],
18
+ * project_ids: [
19
+ * '123e4567-e89b-12d3-a456-426614174000',
20
+ * '123e4567-e89b-12d3-a456-426614174001',
21
+ * ],
15
22
  * });
16
23
  * ```
17
24
  */
@@ -1 +1 @@
1
- {"version":3,"file":"api-keys.mjs","sourceRoot":"","sources":["../../src/resources/api-keys/api-keys.ts"],"names":[],"mappings":"AAAA,sFAAsF;OAE/E,EAAE,WAAW,EAAE;OAGf,EAAE,MAAM,EAAkC;OAC1C,EAAE,YAAY,EAAE;OAEhB,EAAE,IAAI,EAAE;AAEf,MAAM,OAAO,OAAQ,SAAQ,WAAW;IACtC;;;;;;;;;;OAUG;IACH,MAAM,CAAC,IAAwB,EAAE,OAAwB;QACvD,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACjE,CAAC;IAED;;;;;;;OAOG;IACH,MAAM,CAAC,QAAgB,EAAE,IAAwB,EAAE,OAAwB;QACzE,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAA,gBAAgB,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IAClF,CAAC;IAED;;;;;;;;;;OAUG;IACH,IAAI,CACF,QAA6C,EAAE,EAC/C,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,cAAc,EAAE,CAAA,MAAc,CAAA,EAAE,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACxF,CAAC;IAED;;;;;;;OAOG;IACH,MAAM,CAAC,QAAgB,EAAE,OAAwB;QAC/C,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAA,gBAAgB,QAAQ,EAAE,EAAE;YACzD,GAAG,OAAO;YACV,OAAO,EAAE,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;SAC7D,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;OAOG;IACH,GAAG,CAAC,QAAgB,EAAE,OAAwB;QAC5C,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAA,gBAAgB,QAAQ,EAAE,EAAE,OAAO,CAAC,CAAC;IACnE,CAAC;CACF"}
1
+ {"version":3,"file":"api-keys.mjs","sourceRoot":"","sources":["../../src/resources/api-keys/api-keys.ts"],"names":[],"mappings":"AAAA,sFAAsF;OAE/E,EAAE,WAAW,EAAE;OAIf,EAAE,MAAM,EAAkC;OAC1C,EAAE,YAAY,EAAE;OAEhB,EAAE,IAAI,EAAE;AAEf,MAAM,OAAO,OAAQ,SAAQ,WAAW;IACtC;;;;;;;;;;;;;;;;;OAiBG;IACH,MAAM,CAAC,IAAwB,EAAE,OAAwB;QACvD,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACjE,CAAC;IAED;;;;;;;OAOG;IACH,MAAM,CAAC,QAAgB,EAAE,IAAwB,EAAE,OAAwB;QACzE,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAA,gBAAgB,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IAClF,CAAC;IAED;;;;;;;;;;OAUG;IACH,IAAI,CACF,QAA6C,EAAE,EAC/C,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,cAAc,EAAE,CAAA,MAAc,CAAA,EAAE,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACxF,CAAC;IAED;;;;;;;OAOG;IACH,MAAM,CAAC,QAAgB,EAAE,OAAwB;QAC/C,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAA,gBAAgB,QAAQ,EAAE,EAAE;YACzD,GAAG,OAAO;YACV,OAAO,EAAE,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;SAC7D,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;OAOG;IACH,GAAG,CAAC,QAAgB,EAAE,OAAwB;QAC5C,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAA,gBAAgB,QAAQ,EAAE,EAAE,OAAO,CAAC,CAAC;IACnE,CAAC;CACF"}
@@ -1,6 +1,7 @@
1
1
  // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
3
  import { APIResource } from '../../core/resource';
4
+ import * as APIKeysAPI from './api-keys';
4
5
  import * as Shared from '../shared';
5
6
  import { APIPromise } from '../../core/api-promise';
6
7
  import { Cursor, type CursorParams, PagePromise } from '../../core/pagination';
@@ -17,6 +18,13 @@ export class APIKeys extends APIResource {
17
18
  * const apiKey = await client.apiKeys.create({
18
19
  * expires_at: '2025-12-31T23:59:59Z',
19
20
  * name: 'My API Key',
21
+ * permissions: [
22
+ * { permission: 'edit', resource_type: 'vm' },
23
+ * ],
24
+ * project_ids: [
25
+ * '123e4567-e89b-12d3-a456-426614174000',
26
+ * '123e4567-e89b-12d3-a456-426614174001',
27
+ * ],
20
28
  * });
21
29
  * ```
22
30
  */
@@ -108,6 +116,16 @@ export interface APIKey {
108
116
  */
109
117
  name: string;
110
118
 
119
+ /**
120
+ * Scoped permissions for this API key.
121
+ */
122
+ permissions: Array<APIKeyPermission>;
123
+
124
+ /**
125
+ * Project IDs this API key is scoped to.
126
+ */
127
+ project_ids: Array<string>;
128
+
111
129
  /**
112
130
  * IP filter rules.
113
131
  */
@@ -148,6 +166,41 @@ export interface APIKeyList {
148
166
  pagination: Shared.Pagination;
149
167
  }
150
168
 
169
+ /**
170
+ * API Key permission.
171
+ */
172
+ export interface APIKeyPermission {
173
+ /**
174
+ * Permission level: "read" or "edit".
175
+ */
176
+ permission: APIPermissionLevel;
177
+
178
+ /**
179
+ * Resource type this permission applies to.
180
+ */
181
+ resource_type: APIPermissionResourceType;
182
+ }
183
+
184
+ /**
185
+ * Permission level: "read" or "edit".
186
+ */
187
+ export type APIPermissionLevel = 'read' | 'edit';
188
+
189
+ /**
190
+ * Resource type this permission applies to.
191
+ */
192
+ export type APIPermissionResourceType =
193
+ | 'vm'
194
+ | 'vpc'
195
+ | 'volume'
196
+ | 'connect_connection'
197
+ | 'rpc_node_dedicated'
198
+ | 'rpc_node_flex'
199
+ | 'nks_cluster'
200
+ | 'nks_node_pool'
201
+ | 'project'
202
+ | 'api_key';
203
+
151
204
  export interface APIKeyCreateParams {
152
205
  /**
153
206
  * When the API Key expires and is no longer valid.
@@ -159,6 +212,16 @@ export interface APIKeyCreateParams {
159
212
  */
160
213
  name: string;
161
214
 
215
+ /**
216
+ * Scoped permissions for this API key. At least one is required.
217
+ */
218
+ permissions: Array<APIKeyCreateParams.Permission>;
219
+
220
+ /**
221
+ * Project IDs this API key is scoped to. At least one is required.
222
+ */
223
+ project_ids: Array<string>;
224
+
162
225
  /**
163
226
  * IP filter rules.
164
227
  */
@@ -175,12 +238,41 @@ export interface APIKeyCreateParams {
175
238
  tags?: Array<string>;
176
239
  }
177
240
 
241
+ export namespace APIKeyCreateParams {
242
+ /**
243
+ * API Key permission request.
244
+ */
245
+ export interface Permission {
246
+ /**
247
+ * Permission level: "read" or "edit".
248
+ */
249
+ permission: APIKeysAPI.APIPermissionLevel;
250
+
251
+ /**
252
+ * Resource type this permission applies to.
253
+ */
254
+ resource_type: APIKeysAPI.APIPermissionResourceType;
255
+ }
256
+ }
257
+
178
258
  export interface APIKeyUpdateParams {
179
259
  /**
180
260
  * API Key name.
181
261
  */
182
262
  name?: string;
183
263
 
264
+ /**
265
+ * Scoped permissions for this API key. When provided, replaces the entire set. At
266
+ * least one is required.
267
+ */
268
+ permissions?: Array<APIKeyUpdateParams.Permission>;
269
+
270
+ /**
271
+ * Project IDs this API key is scoped to. When provided, replaces the entire set.
272
+ * At least one is required.
273
+ */
274
+ project_ids?: Array<string>;
275
+
184
276
  /**
185
277
  * IP filter rules.
186
278
  */
@@ -192,12 +284,32 @@ export interface APIKeyUpdateParams {
192
284
  tags?: Array<string>;
193
285
  }
194
286
 
287
+ export namespace APIKeyUpdateParams {
288
+ /**
289
+ * API Key permission request.
290
+ */
291
+ export interface Permission {
292
+ /**
293
+ * Permission level: "read" or "edit".
294
+ */
295
+ permission: APIKeysAPI.APIPermissionLevel;
296
+
297
+ /**
298
+ * Resource type this permission applies to.
299
+ */
300
+ resource_type: APIKeysAPI.APIPermissionResourceType;
301
+ }
302
+ }
303
+
195
304
  export interface APIKeyListParams extends CursorParams {}
196
305
 
197
306
  export declare namespace APIKeys {
198
307
  export {
199
308
  type APIKey as APIKey,
200
309
  type APIKeyList as APIKeyList,
310
+ type APIKeyPermission as APIKeyPermission,
311
+ type APIPermissionLevel as APIPermissionLevel,
312
+ type APIPermissionResourceType as APIPermissionResourceType,
201
313
  type APIKeysCursor as APIKeysCursor,
202
314
  type APIKeyCreateParams as APIKeyCreateParams,
203
315
  type APIKeyUpdateParams as APIKeyUpdateParams,
@@ -4,6 +4,9 @@ Types:
4
4
 
5
5
  - <code><a href="./src/resources/api-keys.ts">APIKey</a></code>
6
6
  - <code><a href="./src/resources/api-keys.ts">APIKeyList</a></code>
7
+ - <code><a href="./src/resources/api-keys.ts">APIKeyPermission</a></code>
8
+ - <code><a href="./src/resources/api-keys.ts">APIPermissionLevel</a></code>
9
+ - <code><a href="./src/resources/api-keys.ts">APIPermissionResourceType</a></code>
7
10
 
8
11
  Methods:
9
12
 
package/src/version.ts CHANGED
@@ -1 +1 @@
1
- export const VERSION = '1.57.0'; // x-release-please-version
1
+ export const VERSION = '1.58.0'; // x-release-please-version
package/version.d.mts CHANGED
@@ -1,2 +1,2 @@
1
- export declare const VERSION = "1.57.0";
1
+ export declare const VERSION = "1.58.0";
2
2
  //# sourceMappingURL=version.d.mts.map
package/version.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export declare const VERSION = "1.57.0";
1
+ export declare const VERSION = "1.58.0";
2
2
  //# sourceMappingURL=version.d.ts.map
package/version.js CHANGED
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.VERSION = void 0;
4
- exports.VERSION = '1.57.0'; // x-release-please-version
4
+ exports.VERSION = '1.58.0'; // x-release-please-version
5
5
  //# sourceMappingURL=version.js.map
package/version.mjs CHANGED
@@ -1,2 +1,2 @@
1
- export const VERSION = '1.57.0'; // x-release-please-version
1
+ export const VERSION = '1.58.0'; // x-release-please-version
2
2
  //# sourceMappingURL=version.mjs.map