@onkernel/sdk 0.68.0 → 0.70.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 (107) hide show
  1. package/CHANGELOG.md +31 -0
  2. package/client.d.mts +2 -2
  3. package/client.d.mts.map +1 -1
  4. package/client.d.ts +2 -2
  5. package/client.d.ts.map +1 -1
  6. package/client.js +9 -1
  7. package/client.js.map +1 -1
  8. package/client.mjs +9 -1
  9. package/client.mjs.map +1 -1
  10. package/lib/browser-routing.d.mts +1 -0
  11. package/lib/browser-routing.d.mts.map +1 -1
  12. package/lib/browser-routing.d.ts +1 -0
  13. package/lib/browser-routing.d.ts.map +1 -1
  14. package/lib/browser-routing.js +16 -3
  15. package/lib/browser-routing.js.map +1 -1
  16. package/lib/browser-routing.mjs +15 -3
  17. package/lib/browser-routing.mjs.map +1 -1
  18. package/package.json +1 -1
  19. package/resources/auth/connections.d.mts +4 -0
  20. package/resources/auth/connections.d.mts.map +1 -1
  21. package/resources/auth/connections.d.ts +4 -0
  22. package/resources/auth/connections.d.ts.map +1 -1
  23. package/resources/browser-pools.d.mts +22 -6
  24. package/resources/browser-pools.d.mts.map +1 -1
  25. package/resources/browser-pools.d.ts +22 -6
  26. package/resources/browser-pools.d.ts.map +1 -1
  27. package/resources/browsers/browsers.d.mts +2 -2
  28. package/resources/browsers/browsers.d.mts.map +1 -1
  29. package/resources/browsers/browsers.d.ts +2 -2
  30. package/resources/browsers/browsers.d.ts.map +1 -1
  31. package/resources/browsers/browsers.js.map +1 -1
  32. package/resources/browsers/browsers.mjs.map +1 -1
  33. package/resources/browsers/index.d.mts +1 -1
  34. package/resources/browsers/index.d.mts.map +1 -1
  35. package/resources/browsers/index.d.ts +1 -1
  36. package/resources/browsers/index.d.ts.map +1 -1
  37. package/resources/browsers/index.js.map +1 -1
  38. package/resources/browsers/index.mjs.map +1 -1
  39. package/resources/browsers/telemetry.d.mts +72 -4
  40. package/resources/browsers/telemetry.d.mts.map +1 -1
  41. package/resources/browsers/telemetry.d.ts +72 -4
  42. package/resources/browsers/telemetry.d.ts.map +1 -1
  43. package/resources/browsers/telemetry.js +24 -2
  44. package/resources/browsers/telemetry.js.map +1 -1
  45. package/resources/browsers/telemetry.mjs +24 -2
  46. package/resources/browsers/telemetry.mjs.map +1 -1
  47. package/resources/credential-providers.d.mts +4 -0
  48. package/resources/credential-providers.d.mts.map +1 -1
  49. package/resources/credential-providers.d.ts +4 -0
  50. package/resources/credential-providers.d.ts.map +1 -1
  51. package/resources/credentials.d.mts +4 -0
  52. package/resources/credentials.d.mts.map +1 -1
  53. package/resources/credentials.d.ts +4 -0
  54. package/resources/credentials.d.ts.map +1 -1
  55. package/resources/deployments.d.mts +4 -0
  56. package/resources/deployments.d.mts.map +1 -1
  57. package/resources/deployments.d.ts +4 -0
  58. package/resources/deployments.d.ts.map +1 -1
  59. package/resources/extensions.d.mts +41 -1
  60. package/resources/extensions.d.mts.map +1 -1
  61. package/resources/extensions.d.ts +41 -1
  62. package/resources/extensions.d.ts.map +1 -1
  63. package/resources/extensions.js +12 -0
  64. package/resources/extensions.js.map +1 -1
  65. package/resources/extensions.mjs +12 -0
  66. package/resources/extensions.mjs.map +1 -1
  67. package/resources/index.d.mts +1 -1
  68. package/resources/index.d.mts.map +1 -1
  69. package/resources/index.d.ts +1 -1
  70. package/resources/index.d.ts.map +1 -1
  71. package/resources/index.js.map +1 -1
  72. package/resources/index.mjs.map +1 -1
  73. package/resources/invocations.d.mts +4 -0
  74. package/resources/invocations.d.mts.map +1 -1
  75. package/resources/invocations.d.ts +4 -0
  76. package/resources/invocations.d.ts.map +1 -1
  77. package/resources/projects/projects.d.mts +1 -1
  78. package/resources/projects/projects.d.ts +1 -1
  79. package/resources/projects/projects.js +1 -1
  80. package/resources/projects/projects.mjs +1 -1
  81. package/resources/proxies.d.mts +4 -0
  82. package/resources/proxies.d.mts.map +1 -1
  83. package/resources/proxies.d.ts +4 -0
  84. package/resources/proxies.d.ts.map +1 -1
  85. package/resources/shared.d.mts +4 -4
  86. package/resources/shared.d.ts +4 -4
  87. package/src/client.ts +11 -1
  88. package/src/lib/browser-routing.ts +17 -4
  89. package/src/resources/auth/connections.ts +5 -0
  90. package/src/resources/browser-pools.ts +25 -7
  91. package/src/resources/browsers/browsers.ts +6 -0
  92. package/src/resources/browsers/index.ts +3 -0
  93. package/src/resources/browsers/telemetry.ts +105 -4
  94. package/src/resources/credential-providers.ts +6 -1
  95. package/src/resources/credentials.ts +5 -0
  96. package/src/resources/deployments.ts +5 -0
  97. package/src/resources/extensions.ts +51 -1
  98. package/src/resources/index.ts +1 -0
  99. package/src/resources/invocations.ts +5 -0
  100. package/src/resources/projects/projects.ts +1 -1
  101. package/src/resources/proxies.ts +6 -1
  102. package/src/resources/shared.ts +4 -4
  103. package/src/version.ts +1 -1
  104. package/version.d.mts +1 -1
  105. package/version.d.ts +1 -1
  106. package/version.js +1 -1
  107. package/version.mjs +1 -1
@@ -3,6 +3,7 @@
3
3
  import { APIResource } from '../../core/resource';
4
4
  import * as TelemetryAPI from './telemetry';
5
5
  import { APIPromise } from '../../core/api-promise';
6
+ import { OffsetPagination, type OffsetPaginationParams, PagePromise } from '../../core/pagination';
6
7
  import { Stream } from '../../core/streaming';
7
8
  import { buildHeaders } from '../../internal/headers';
8
9
  import { RequestOptions } from '../../internal/request-options';
@@ -12,6 +13,34 @@ import { path } from '../../internal/utils/path';
12
13
  * Stream live telemetry events from a browser session.
13
14
  */
14
15
  export class Telemetry extends APIResource {
16
+ /**
17
+ * Reads a page of telemetry events for the browser session in ascending sequence
18
+ * order. To page through results, pass the X-Next-Offset value from the previous
19
+ * response as offset and repeat while X-Has-More is true. Returns an empty list
20
+ * when telemetry data is unavailable.
21
+ *
22
+ * @example
23
+ * ```ts
24
+ * // Automatically fetches more pages as needed.
25
+ * for await (const telemetryEventsResponse of client.browsers.telemetry.events(
26
+ * 'id',
27
+ * )) {
28
+ * // ...
29
+ * }
30
+ * ```
31
+ */
32
+ events(
33
+ id: string,
34
+ query: TelemetryEventsParams | null | undefined = {},
35
+ options?: RequestOptions,
36
+ ): PagePromise<TelemetryEventsResponsesOffsetPagination, TelemetryEventsResponse> {
37
+ return this._client.getAPIList(
38
+ path`/browsers/${id}/telemetry/events`,
39
+ OffsetPagination<TelemetryEventsResponse>,
40
+ { query, ...options },
41
+ );
42
+ }
43
+
15
44
  /**
16
45
  * Streams browser telemetry events as a server-sent events (SSE) stream. The
17
46
  * stream closes when the browser session terminates. Each event frame includes an
@@ -20,7 +49,8 @@ export class Telemetry extends APIResource {
20
49
  * set; all frames carry JSON in the data: field. A keepalive comment frame is sent
21
50
  * every 15 seconds when no events arrive. Returns 404 if the browser session does
22
51
  * not exist. If telemetry was not enabled on the session, the stream opens but no
23
- * events are delivered.
52
+ * events are delivered. Fresh connections only see new events; pass replay=all to
53
+ * start from the oldest retained event instead.
24
54
  *
25
55
  * @example
26
56
  * ```ts
@@ -34,8 +64,9 @@ export class Telemetry extends APIResource {
34
64
  params: TelemetryStreamParams | undefined = {},
35
65
  options?: RequestOptions,
36
66
  ): APIPromise<Stream<TelemetryStreamResponse>> {
37
- const { 'Last-Event-ID': lastEventID } = params ?? {};
67
+ const { 'Last-Event-ID': lastEventID, ...query } = params ?? {};
38
68
  return this._client.get(path`/browsers/${id}/telemetry/stream`, {
69
+ query,
39
70
  ...options,
40
71
  headers: buildHeaders([
41
72
  {
@@ -49,6 +80,8 @@ export class Telemetry extends APIResource {
49
80
  }
50
81
  }
51
82
 
83
+ export type TelemetryEventsResponsesOffsetPagination = OffsetPagination<TelemetryEventsResponse>;
84
+
52
85
  /**
53
86
  * An agent-driven HTTP call handled by the in-VM API server.
54
87
  */
@@ -1973,6 +2006,32 @@ export type BrowserTelemetryEvent =
1973
2006
  | BrowserSystemOomKillEvent
1974
2007
  | BrowserServiceCrashedEvent;
1975
2008
 
2009
+ /**
2010
+ * Envelope wrapping a browser telemetry event with its monotonic sequence number.
2011
+ * Each SSE data: frame carries one envelope as JSON. The seq value is also emitted
2012
+ * as the SSE id: field so clients can pass it as Last-Event-ID on reconnect.
2013
+ */
2014
+ export interface TelemetryEventsResponse {
2015
+ /**
2016
+ * Union type representing any browser telemetry event. Discriminated on `type`.
2017
+ * Each event's `category` determines when it is captured. The CDP collector-health
2018
+ * events (monitor_disconnected, monitor_reconnected, monitor_reconnect_failed,
2019
+ * monitor_init_failed) use the `monitor` category, which is not user-configurable:
2020
+ * it flows automatically whenever any CDP category (console, network, page,
2021
+ * interaction) is captured, and is silent otherwise. monitor_screenshot uses the
2022
+ * opt-in `screenshot` category. All other event types are controlled by their
2023
+ * per-category enable/disable flags.
2024
+ */
2025
+ event: BrowserTelemetryEvent;
2026
+
2027
+ /**
2028
+ * Process-monotonic sequence number assigned by the browser VM. Pass as
2029
+ * Last-Event-ID on reconnect to resume without gaps. Gaps in received seq values
2030
+ * indicate dropped events.
2031
+ */
2032
+ seq: number;
2033
+ }
2034
+
1976
2035
  /**
1977
2036
  * Envelope wrapping a browser telemetry event with its monotonic sequence number.
1978
2037
  * Each SSE data: frame carries one envelope as JSON. The seq value is also emitted
@@ -1999,10 +2058,49 @@ export interface TelemetryStreamResponse {
1999
2058
  seq: number;
2000
2059
  }
2001
2060
 
2061
+ export interface TelemetryEventsParams extends OffsetPaginationParams {
2062
+ /**
2063
+ * Restrict results to these event categories. Repeat the parameter for multiple
2064
+ * values.
2065
+ */
2066
+ category?: Array<
2067
+ | 'console'
2068
+ | 'network'
2069
+ | 'page'
2070
+ | 'interaction'
2071
+ | 'control'
2072
+ | 'connection'
2073
+ | 'system'
2074
+ | 'screenshot'
2075
+ | 'captcha'
2076
+ | 'monitor'
2077
+ >;
2078
+
2079
+ /**
2080
+ * Start of the window: an RFC-3339 timestamp, or a duration like 5m meaning that
2081
+ * long ago. Defaults to 5m. Ignored when offset is set.
2082
+ */
2083
+ since?: string;
2084
+
2085
+ /**
2086
+ * End of the window (exclusive): an RFC-3339 timestamp, or a duration like 5m
2087
+ * meaning that long ago.
2088
+ */
2089
+ until?: string;
2090
+ }
2091
+
2002
2092
  export interface TelemetryStreamParams {
2003
2093
  /**
2004
- * Last event sequence number for SSE reconnection (sent by SSE clients on
2005
- * reconnect)
2094
+ * Query param: Pass `all` to start from the oldest retained event instead of only
2095
+ * new events; any other value is treated as from-now. The buffer is bounded, so
2096
+ * the first event id may be greater than 1 if older events were evicted.
2097
+ */
2098
+ replay?: string;
2099
+
2100
+ /**
2101
+ * Header param: Last event sequence number for SSE reconnection (sent by SSE
2102
+ * clients on reconnect). Takes precedence over replay when both are present, so
2103
+ * reconnect resumes instead of re-replaying.
2006
2104
  */
2007
2105
  'Last-Event-ID'?: string;
2008
2106
  }
@@ -2047,7 +2145,10 @@ export declare namespace Telemetry {
2047
2145
  type BrowserTelemetryCategoryConfig as BrowserTelemetryCategoryConfig,
2048
2146
  type BrowserTelemetryConfig as BrowserTelemetryConfig,
2049
2147
  type BrowserTelemetryEvent as BrowserTelemetryEvent,
2148
+ type TelemetryEventsResponse as TelemetryEventsResponse,
2050
2149
  type TelemetryStreamResponse as TelemetryStreamResponse,
2150
+ type TelemetryEventsResponsesOffsetPagination as TelemetryEventsResponsesOffsetPagination,
2151
+ type TelemetryEventsParams as TelemetryEventsParams,
2051
2152
  type TelemetryStreamParams as TelemetryStreamParams,
2052
2153
  };
2053
2154
  }
@@ -344,7 +344,12 @@ export interface CredentialProviderUpdateParams {
344
344
  priority?: number;
345
345
  }
346
346
 
347
- export interface CredentialProviderListParams extends OffsetPaginationParams {}
347
+ export interface CredentialProviderListParams extends OffsetPaginationParams {
348
+ /**
349
+ * Search credential providers by name or ID.
350
+ */
351
+ query?: string;
352
+ }
348
353
 
349
354
  export declare namespace CredentialProviders {
350
355
  export {
@@ -305,6 +305,11 @@ export interface CredentialListParams extends OffsetPaginationParams {
305
305
  * Filter by domain
306
306
  */
307
307
  domain?: string;
308
+
309
+ /**
310
+ * Search credentials by name, domain, or ID.
311
+ */
312
+ query?: string;
308
313
  }
309
314
 
310
315
  export declare namespace Credentials {
@@ -469,6 +469,11 @@ export interface DeploymentListParams extends OffsetPaginationParams {
469
469
  * Filter results by application version. Requires app_name to be set.
470
470
  */
471
471
  app_version?: string;
472
+
473
+ /**
474
+ * Search deployments by ID or app name.
475
+ */
476
+ query?: string;
472
477
  }
473
478
 
474
479
  export interface DeploymentFollowParams {
@@ -97,6 +97,19 @@ export class Extensions extends APIResource {
97
97
  });
98
98
  }
99
99
 
100
+ /**
101
+ * Get an extension's metadata (name, size, timestamps) by ID or name, without
102
+ * downloading the archive.
103
+ *
104
+ * @example
105
+ * ```ts
106
+ * const extension = await client.extensions.get('id_or_name');
107
+ * ```
108
+ */
109
+ get(idOrName: string, options?: RequestOptions): APIPromise<ExtensionGetResponse> {
110
+ return this._client.get(path`/extensions/${idOrName}/metadata`, options);
111
+ }
112
+
100
113
  /**
101
114
  * Upload a zip file containing an unpacked browser extension. Optionally provide a
102
115
  * unique name for later reference.
@@ -146,6 +159,37 @@ export interface ExtensionListResponse {
146
159
  name?: string | null;
147
160
  }
148
161
 
162
+ /**
163
+ * A browser extension uploaded to Kernel.
164
+ */
165
+ export interface ExtensionGetResponse {
166
+ /**
167
+ * Unique identifier for the extension
168
+ */
169
+ id: string;
170
+
171
+ /**
172
+ * Timestamp when the extension was created
173
+ */
174
+ created_at: string;
175
+
176
+ /**
177
+ * Size of the extension archive in bytes
178
+ */
179
+ size_bytes: number;
180
+
181
+ /**
182
+ * Timestamp when the extension was last used
183
+ */
184
+ last_used_at?: string | null;
185
+
186
+ /**
187
+ * Optional, easier-to-reference name for the extension. Must be unique within the
188
+ * project.
189
+ */
190
+ name?: string | null;
191
+ }
192
+
149
193
  /**
150
194
  * A browser extension uploaded to Kernel.
151
195
  */
@@ -177,7 +221,12 @@ export interface ExtensionUploadResponse {
177
221
  name?: string | null;
178
222
  }
179
223
 
180
- export interface ExtensionListParams extends OffsetPaginationParams {}
224
+ export interface ExtensionListParams extends OffsetPaginationParams {
225
+ /**
226
+ * Search extensions by name or ID.
227
+ */
228
+ query?: string;
229
+ }
181
230
 
182
231
  export interface ExtensionDownloadFromChromeStoreParams {
183
232
  /**
@@ -206,6 +255,7 @@ export interface ExtensionUploadParams {
206
255
  export declare namespace Extensions {
207
256
  export {
208
257
  type ExtensionListResponse as ExtensionListResponse,
258
+ type ExtensionGetResponse as ExtensionGetResponse,
209
259
  type ExtensionUploadResponse as ExtensionUploadResponse,
210
260
  type ExtensionListResponsesOffsetPagination as ExtensionListResponsesOffsetPagination,
211
261
  type ExtensionListParams as ExtensionListParams,
@@ -90,6 +90,7 @@ export {
90
90
  export {
91
91
  Extensions,
92
92
  type ExtensionListResponse,
93
+ type ExtensionGetResponse,
93
94
  type ExtensionUploadResponse,
94
95
  type ExtensionListParams,
95
96
  type ExtensionDownloadFromChromeStoreParams,
@@ -613,6 +613,11 @@ export interface InvocationListParams extends OffsetPaginationParams {
613
613
  */
614
614
  deployment_id?: string;
615
615
 
616
+ /**
617
+ * Search invocations by ID, app name, or action name.
618
+ */
619
+ query?: string;
620
+
616
621
  /**
617
622
  * Show invocations that have started since the given time (RFC timestamps or
618
623
  * durations like 5m).
@@ -30,7 +30,7 @@ export class Projects extends APIResource {
30
30
  }
31
31
 
32
32
  /**
33
- * Get a project by ID.
33
+ * Get a project by its ID or by its name. Names are unique within an organization.
34
34
  *
35
35
  * @example
36
36
  * ```ts
@@ -824,7 +824,12 @@ export namespace ProxyCreateParams {
824
824
  }
825
825
  }
826
826
 
827
- export interface ProxyListParams extends OffsetPaginationParams {}
827
+ export interface ProxyListParams extends OffsetPaginationParams {
828
+ /**
829
+ * Search proxies by name, host, IP address, or ID.
830
+ */
831
+ query?: string;
832
+ }
828
833
 
829
834
  export interface ProxyCheckParams {
830
835
  /**
@@ -79,18 +79,18 @@ export interface BrowserProfile {
79
79
  */
80
80
  export interface BrowserViewport {
81
81
  /**
82
- * Browser window height in pixels.
82
+ * Browser window height in pixels. Any positive integer is accepted.
83
83
  */
84
84
  height: number;
85
85
 
86
86
  /**
87
- * Browser window width in pixels.
87
+ * Browser window width in pixels. Any positive integer is accepted.
88
88
  */
89
89
  width: number;
90
90
 
91
91
  /**
92
- * Display refresh rate in Hz. If omitted, automatically determined from width and
93
- * height.
92
+ * Display refresh rate in Hz. Any positive integer is accepted; if omitted,
93
+ * automatically determined from width and height.
94
94
  */
95
95
  refresh_rate?: number;
96
96
  }
package/src/version.ts CHANGED
@@ -1 +1 @@
1
- export const VERSION = '0.68.0'; // x-release-please-version
1
+ export const VERSION = '0.70.0'; // x-release-please-version
package/version.d.mts CHANGED
@@ -1,2 +1,2 @@
1
- export declare const VERSION = "0.68.0";
1
+ export declare const VERSION = "0.70.0";
2
2
  //# sourceMappingURL=version.d.mts.map
package/version.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export declare const VERSION = "0.68.0";
1
+ export declare const VERSION = "0.70.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 = '0.68.0'; // x-release-please-version
4
+ exports.VERSION = '0.70.0'; // x-release-please-version
5
5
  //# sourceMappingURL=version.js.map
package/version.mjs CHANGED
@@ -1,2 +1,2 @@
1
- export const VERSION = '0.68.0'; // x-release-please-version
1
+ export const VERSION = '0.70.0'; // x-release-please-version
2
2
  //# sourceMappingURL=version.mjs.map