browser-use-sdk 2.0.13 → 2.0.15
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/cjs/Client.d.ts +0 -3
- package/dist/cjs/Client.js +2 -7
- package/dist/cjs/api/resources/browsers/client/requests/CreateBrowserSessionRequest.d.ts +2 -0
- package/dist/cjs/api/resources/index.d.ts +0 -2
- package/dist/cjs/api/resources/index.js +1 -3
- package/dist/cjs/api/resources/sessions/client/Client.d.ts +1 -0
- package/dist/cjs/api/resources/sessions/client/Client.js +3 -0
- package/dist/cjs/api/resources/sessions/client/requests/CreateSessionRequest.d.ts +4 -0
- package/dist/cjs/api/resources/skills/client/Client.d.ts +37 -0
- package/dist/cjs/api/resources/skills/client/Client.js +160 -0
- package/dist/cjs/api/resources/skills/client/requests/GetSkillExecutionOutputSkillsSkillIdExecutionsExecutionIdOutputGetRequest.d.ts +11 -0
- package/dist/cjs/api/resources/skills/client/requests/GetSkillExecutionOutputSkillsSkillIdExecutionsExecutionIdOutputGetRequest.js +3 -0
- package/dist/cjs/api/resources/skills/client/requests/ListSkillExecutionsSkillsSkillIdExecutionsGetRequest.d.ts +11 -0
- package/dist/cjs/api/resources/skills/client/requests/ListSkillExecutionsSkillsSkillIdExecutionsGetRequest.js +3 -0
- package/dist/cjs/api/resources/skills/client/requests/index.d.ts +2 -0
- package/dist/cjs/api/resources/tasks/client/Client.d.ts +32 -4
- package/dist/cjs/api/resources/tasks/client/Client.js +83 -4
- package/dist/cjs/api/resources/tasks/client/requests/GetTaskStatusTasksTaskIdStatusGetRequest.d.ts +9 -0
- package/dist/cjs/api/resources/tasks/client/requests/GetTaskStatusTasksTaskIdStatusGetRequest.js +3 -0
- package/dist/cjs/api/resources/tasks/client/requests/index.d.ts +1 -0
- package/dist/cjs/api/types/BrowserSessionItemView.d.ts +6 -0
- package/dist/cjs/api/types/BrowserSessionView.d.ts +6 -0
- package/dist/cjs/api/types/CustomProxy.d.ts +13 -0
- package/dist/cjs/api/types/CustomProxy.js +3 -0
- package/dist/cjs/api/types/ExecuteSkillRequest.d.ts +2 -0
- package/dist/cjs/api/types/InsufficientCreditsError.d.ts +1 -1
- package/dist/cjs/api/types/SessionItemView.d.ts +6 -0
- package/dist/cjs/api/types/SessionView.d.ts +6 -0
- package/dist/cjs/api/types/SkillExecutionListResponse.d.ts +14 -0
- package/dist/cjs/api/types/SkillExecutionListResponse.js +3 -0
- package/dist/cjs/api/types/SkillExecutionOutputResponse.d.ts +7 -0
- package/dist/cjs/api/types/SkillExecutionOutputResponse.js +3 -0
- package/dist/cjs/api/types/SkillExecutionView.d.ts +21 -0
- package/dist/cjs/api/types/SkillExecutionView.js +3 -0
- package/dist/cjs/api/types/SupportedLlMs.d.ts +2 -0
- package/dist/cjs/api/types/SupportedLlMs.js +2 -0
- package/dist/cjs/api/types/TaskItemView.d.ts +4 -0
- package/dist/cjs/api/types/TaskStatusView.d.ts +19 -0
- package/dist/cjs/api/types/TaskStatusView.js +3 -0
- package/dist/cjs/api/types/TaskView.d.ts +4 -0
- package/dist/cjs/api/types/index.d.ts +6 -20
- package/dist/cjs/api/types/index.js +6 -20
- package/dist/cjs/version.d.ts +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/esm/Client.d.mts +0 -3
- package/dist/esm/Client.mjs +2 -7
- package/dist/esm/api/resources/browsers/client/requests/CreateBrowserSessionRequest.d.mts +2 -0
- package/dist/esm/api/resources/index.d.mts +0 -2
- package/dist/esm/api/resources/index.mjs +0 -2
- package/dist/esm/api/resources/sessions/client/Client.d.mts +1 -0
- package/dist/esm/api/resources/sessions/client/Client.mjs +3 -0
- package/dist/esm/api/resources/sessions/client/requests/CreateSessionRequest.d.mts +4 -0
- package/dist/esm/api/resources/skills/client/Client.d.mts +37 -0
- package/dist/esm/api/resources/skills/client/Client.mjs +160 -0
- package/dist/esm/api/resources/skills/client/requests/GetSkillExecutionOutputSkillsSkillIdExecutionsExecutionIdOutputGetRequest.d.mts +11 -0
- package/dist/esm/api/resources/skills/client/requests/GetSkillExecutionOutputSkillsSkillIdExecutionsExecutionIdOutputGetRequest.mjs +2 -0
- package/dist/esm/api/resources/skills/client/requests/ListSkillExecutionsSkillsSkillIdExecutionsGetRequest.d.mts +11 -0
- package/dist/esm/api/resources/skills/client/requests/ListSkillExecutionsSkillsSkillIdExecutionsGetRequest.mjs +2 -0
- package/dist/esm/api/resources/skills/client/requests/index.d.mts +2 -0
- package/dist/esm/api/resources/tasks/client/Client.d.mts +32 -4
- package/dist/esm/api/resources/tasks/client/Client.mjs +83 -4
- package/dist/esm/api/resources/tasks/client/requests/GetTaskStatusTasksTaskIdStatusGetRequest.d.mts +9 -0
- package/dist/esm/api/resources/tasks/client/requests/GetTaskStatusTasksTaskIdStatusGetRequest.mjs +2 -0
- package/dist/esm/api/resources/tasks/client/requests/index.d.mts +1 -0
- package/dist/esm/api/types/BrowserSessionItemView.d.mts +6 -0
- package/dist/esm/api/types/BrowserSessionView.d.mts +6 -0
- package/dist/esm/api/types/CustomProxy.d.mts +13 -0
- package/dist/esm/api/types/CustomProxy.mjs +2 -0
- package/dist/esm/api/types/ExecuteSkillRequest.d.mts +2 -0
- package/dist/esm/api/types/InsufficientCreditsError.d.mts +1 -1
- package/dist/esm/api/types/SessionItemView.d.mts +6 -0
- package/dist/esm/api/types/SessionView.d.mts +6 -0
- package/dist/esm/api/types/SkillExecutionListResponse.d.mts +14 -0
- package/dist/esm/api/types/SkillExecutionListResponse.mjs +2 -0
- package/dist/esm/api/types/SkillExecutionOutputResponse.d.mts +7 -0
- package/dist/esm/api/types/SkillExecutionOutputResponse.mjs +2 -0
- package/dist/esm/api/types/SkillExecutionView.d.mts +21 -0
- package/dist/esm/api/types/SkillExecutionView.mjs +2 -0
- package/dist/esm/api/types/SupportedLlMs.d.mts +2 -0
- package/dist/esm/api/types/SupportedLlMs.mjs +2 -0
- package/dist/esm/api/types/TaskItemView.d.mts +4 -0
- package/dist/esm/api/types/TaskStatusView.d.mts +19 -0
- package/dist/esm/api/types/TaskStatusView.mjs +2 -0
- package/dist/esm/api/types/TaskView.d.mts +4 -0
- package/dist/esm/api/types/index.d.mts +6 -20
- package/dist/esm/api/types/index.mjs +6 -20
- package/dist/esm/version.d.mts +1 -1
- package/dist/esm/version.mjs +1 -1
- package/package.json +82 -83
- package/reference.md +117 -1051
package/dist/cjs/Client.d.ts
CHANGED
|
@@ -6,7 +6,6 @@ import { Sessions } from "./api/resources/sessions/client/Client.js";
|
|
|
6
6
|
import { Skills } from "./api/resources/skills/client/Client.js";
|
|
7
7
|
import { SkillsMarketplace } from "./api/resources/skillsMarketplace/client/Client.js";
|
|
8
8
|
import { Tasks } from "./api/resources/tasks/client/Client.js";
|
|
9
|
-
import { Workflows } from "./api/resources/workflows/client/Client.js";
|
|
10
9
|
import type { BaseClientOptions, BaseRequestOptions } from "./BaseClient.js";
|
|
11
10
|
export declare namespace BrowserUseClient {
|
|
12
11
|
interface Options extends BaseClientOptions {
|
|
@@ -24,7 +23,6 @@ export declare class BrowserUseClient {
|
|
|
24
23
|
protected _browsers: Browsers | undefined;
|
|
25
24
|
protected _skills: Skills | undefined;
|
|
26
25
|
protected _skillsMarketplace: SkillsMarketplace | undefined;
|
|
27
|
-
protected _workflows: Workflows | undefined;
|
|
28
26
|
constructor(_options?: BrowserUseClient.Options);
|
|
29
27
|
get billing(): Billing;
|
|
30
28
|
get tasks(): Tasks;
|
|
@@ -34,5 +32,4 @@ export declare class BrowserUseClient {
|
|
|
34
32
|
get browsers(): Browsers;
|
|
35
33
|
get skills(): Skills;
|
|
36
34
|
get skillsMarketplace(): SkillsMarketplace;
|
|
37
|
-
get workflows(): Workflows;
|
|
38
35
|
}
|
package/dist/cjs/Client.js
CHANGED
|
@@ -43,7 +43,6 @@ const Client_js_5 = require("./api/resources/sessions/client/Client.js");
|
|
|
43
43
|
const Client_js_6 = require("./api/resources/skills/client/Client.js");
|
|
44
44
|
const Client_js_7 = require("./api/resources/skillsMarketplace/client/Client.js");
|
|
45
45
|
const Client_js_8 = require("./api/resources/tasks/client/Client.js");
|
|
46
|
-
const Client_js_9 = require("./api/resources/workflows/client/Client.js");
|
|
47
46
|
const headers_js_1 = require("./core/headers.js");
|
|
48
47
|
const core = __importStar(require("./core/index.js"));
|
|
49
48
|
class BrowserUseClient {
|
|
@@ -51,8 +50,8 @@ class BrowserUseClient {
|
|
|
51
50
|
this._options = Object.assign(Object.assign({}, _options), { logging: core.logging.createLogger(_options === null || _options === void 0 ? void 0 : _options.logging), headers: (0, headers_js_1.mergeHeaders)({
|
|
52
51
|
"X-Fern-Language": "JavaScript",
|
|
53
52
|
"X-Fern-SDK-Name": "browser-use-sdk",
|
|
54
|
-
"X-Fern-SDK-Version": "2.0.
|
|
55
|
-
"User-Agent": "browser-use-sdk/2.0.
|
|
53
|
+
"X-Fern-SDK-Version": "2.0.15",
|
|
54
|
+
"User-Agent": "browser-use-sdk/2.0.15",
|
|
56
55
|
"X-Fern-Runtime": core.RUNTIME.type,
|
|
57
56
|
"X-Fern-Runtime-Version": core.RUNTIME.version,
|
|
58
57
|
}, _options === null || _options === void 0 ? void 0 : _options.headers) });
|
|
@@ -89,9 +88,5 @@ class BrowserUseClient {
|
|
|
89
88
|
var _a;
|
|
90
89
|
return ((_a = this._skillsMarketplace) !== null && _a !== void 0 ? _a : (this._skillsMarketplace = new Client_js_7.SkillsMarketplace(this._options)));
|
|
91
90
|
}
|
|
92
|
-
get workflows() {
|
|
93
|
-
var _a;
|
|
94
|
-
return ((_a = this._workflows) !== null && _a !== void 0 ? _a : (this._workflows = new Client_js_9.Workflows(this._options)));
|
|
95
|
-
}
|
|
96
91
|
}
|
|
97
92
|
exports.BrowserUseClient = BrowserUseClient;
|
|
@@ -16,4 +16,6 @@ export interface CreateBrowserSessionRequest {
|
|
|
16
16
|
browserScreenHeight?: number | null;
|
|
17
17
|
/** Whether to allow the browser to be resized during the session (not recommended since it reduces stealthiness). */
|
|
18
18
|
allowResizing?: boolean;
|
|
19
|
+
/** Custom proxy settings to use for the session. If not provided, our proxies will be used. Custom proxies are only available for Business and Scaleup subscribers. */
|
|
20
|
+
customProxy?: BrowserUse.CustomProxy | null;
|
|
19
21
|
}
|
|
@@ -13,5 +13,3 @@ export * from "./skillsMarketplace/client/requests/index.js";
|
|
|
13
13
|
export * as skillsMarketplace from "./skillsMarketplace/index.js";
|
|
14
14
|
export * from "./tasks/client/requests/index.js";
|
|
15
15
|
export * as tasks from "./tasks/index.js";
|
|
16
|
-
export * from "./workflows/client/requests/index.js";
|
|
17
|
-
export * as workflows from "./workflows/index.js";
|
|
@@ -36,7 +36,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
36
36
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
37
37
|
};
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
exports.
|
|
39
|
+
exports.tasks = exports.skillsMarketplace = exports.skills = exports.sessions = exports.profiles = exports.files = exports.browsers = exports.billing = void 0;
|
|
40
40
|
exports.billing = __importStar(require("./billing/index.js"));
|
|
41
41
|
__exportStar(require("./browsers/client/requests/index.js"), exports);
|
|
42
42
|
exports.browsers = __importStar(require("./browsers/index.js"));
|
|
@@ -52,5 +52,3 @@ __exportStar(require("./skillsMarketplace/client/requests/index.js"), exports);
|
|
|
52
52
|
exports.skillsMarketplace = __importStar(require("./skillsMarketplace/index.js"));
|
|
53
53
|
__exportStar(require("./tasks/client/requests/index.js"), exports);
|
|
54
54
|
exports.tasks = __importStar(require("./tasks/index.js"));
|
|
55
|
-
__exportStar(require("./workflows/client/requests/index.js"), exports);
|
|
56
|
-
exports.workflows = __importStar(require("./workflows/index.js"));
|
|
@@ -29,6 +29,7 @@ export declare class Sessions {
|
|
|
29
29
|
* @param {BrowserUse.CreateSessionRequest} request
|
|
30
30
|
* @param {Sessions.RequestOptions} requestOptions - Request-specific configuration.
|
|
31
31
|
*
|
|
32
|
+
* @throws {@link BrowserUse.PaymentRequiredError}
|
|
32
33
|
* @throws {@link BrowserUse.NotFoundError}
|
|
33
34
|
* @throws {@link BrowserUse.UnprocessableEntityError}
|
|
34
35
|
* @throws {@link BrowserUse.TooManyRequestsError}
|
|
@@ -142,6 +142,7 @@ class Sessions {
|
|
|
142
142
|
* @param {BrowserUse.CreateSessionRequest} request
|
|
143
143
|
* @param {Sessions.RequestOptions} requestOptions - Request-specific configuration.
|
|
144
144
|
*
|
|
145
|
+
* @throws {@link BrowserUse.PaymentRequiredError}
|
|
145
146
|
* @throws {@link BrowserUse.NotFoundError}
|
|
146
147
|
* @throws {@link BrowserUse.UnprocessableEntityError}
|
|
147
148
|
* @throws {@link BrowserUse.TooManyRequestsError}
|
|
@@ -175,6 +176,8 @@ class Sessions {
|
|
|
175
176
|
}
|
|
176
177
|
if (_response.error.reason === "status-code") {
|
|
177
178
|
switch (_response.error.statusCode) {
|
|
179
|
+
case 402:
|
|
180
|
+
throw new BrowserUse.PaymentRequiredError(_response.error.body, _response.rawResponse);
|
|
178
181
|
case 404:
|
|
179
182
|
throw new BrowserUse.NotFoundError(_response.error.body, _response.rawResponse);
|
|
180
183
|
case 422:
|
|
@@ -16,4 +16,8 @@ export interface CreateSessionRequest {
|
|
|
16
16
|
browserScreenHeight?: number | null;
|
|
17
17
|
/** If True (default), tasks in this session share memory and history with each other, allowing follow-up tasks to continue from previous context. If False, each task runs as a standalone task without any previous task context. */
|
|
18
18
|
persistMemory?: boolean;
|
|
19
|
+
/** If True (default), the browser session stays alive after tasks complete, allowing follow-up tasks. If False, the session is closed immediately after task completion. Set to False for simple one-off tasks to reduce session idle time. */
|
|
20
|
+
keepAlive?: boolean;
|
|
21
|
+
/** Custom proxy settings to use for the session. If not provided, our proxies will be used. Custom proxies are only available for Business and Scaleup subscribers. */
|
|
22
|
+
customProxy?: BrowserUse.CustomProxy | null;
|
|
19
23
|
}
|
|
@@ -30,7 +30,9 @@ export declare class Skills {
|
|
|
30
30
|
* @param {Skills.RequestOptions} requestOptions - Request-specific configuration.
|
|
31
31
|
*
|
|
32
32
|
* @throws {@link BrowserUse.BadRequestError}
|
|
33
|
+
* @throws {@link BrowserUse.PaymentRequiredError}
|
|
33
34
|
* @throws {@link BrowserUse.UnprocessableEntityError}
|
|
35
|
+
* @throws {@link BrowserUse.TooManyRequestsError}
|
|
34
36
|
*
|
|
35
37
|
* @example
|
|
36
38
|
* await client.skills.createSkill({
|
|
@@ -134,6 +136,7 @@ export declare class Skills {
|
|
|
134
136
|
* @throws {@link BrowserUse.PaymentRequiredError}
|
|
135
137
|
* @throws {@link BrowserUse.NotFoundError}
|
|
136
138
|
* @throws {@link BrowserUse.UnprocessableEntityError}
|
|
139
|
+
* @throws {@link BrowserUse.TooManyRequestsError}
|
|
137
140
|
*
|
|
138
141
|
* @example
|
|
139
142
|
* await client.skills.executeSkill({
|
|
@@ -152,6 +155,7 @@ export declare class Skills {
|
|
|
152
155
|
* @throws {@link BrowserUse.BadRequestError}
|
|
153
156
|
* @throws {@link BrowserUse.NotFoundError}
|
|
154
157
|
* @throws {@link BrowserUse.UnprocessableEntityError}
|
|
158
|
+
* @throws {@link BrowserUse.TooManyRequestsError}
|
|
155
159
|
*
|
|
156
160
|
* @example
|
|
157
161
|
* await client.skills.refineSkill({
|
|
@@ -161,5 +165,38 @@ export declare class Skills {
|
|
|
161
165
|
*/
|
|
162
166
|
refineSkill(request: BrowserUse.RefineSkillRequest, requestOptions?: Skills.RequestOptions): core.HttpResponsePromise<BrowserUse.RefineSkillResponse>;
|
|
163
167
|
private __refineSkill;
|
|
168
|
+
/**
|
|
169
|
+
* List executions for a specific skill.
|
|
170
|
+
*
|
|
171
|
+
* @param {BrowserUse.ListSkillExecutionsSkillsSkillIdExecutionsGetRequest} request
|
|
172
|
+
* @param {Skills.RequestOptions} requestOptions - Request-specific configuration.
|
|
173
|
+
*
|
|
174
|
+
* @throws {@link BrowserUse.NotFoundError}
|
|
175
|
+
* @throws {@link BrowserUse.UnprocessableEntityError}
|
|
176
|
+
*
|
|
177
|
+
* @example
|
|
178
|
+
* await client.skills.listSkillExecutions({
|
|
179
|
+
* skill_id: "skill_id"
|
|
180
|
+
* })
|
|
181
|
+
*/
|
|
182
|
+
listSkillExecutions(request: BrowserUse.ListSkillExecutionsSkillsSkillIdExecutionsGetRequest, requestOptions?: Skills.RequestOptions): core.HttpResponsePromise<BrowserUse.SkillExecutionListResponse>;
|
|
183
|
+
private __listSkillExecutions;
|
|
184
|
+
/**
|
|
185
|
+
* Get presigned URL for downloading skill execution output.
|
|
186
|
+
*
|
|
187
|
+
* @param {BrowserUse.GetSkillExecutionOutputSkillsSkillIdExecutionsExecutionIdOutputGetRequest} request
|
|
188
|
+
* @param {Skills.RequestOptions} requestOptions - Request-specific configuration.
|
|
189
|
+
*
|
|
190
|
+
* @throws {@link BrowserUse.NotFoundError}
|
|
191
|
+
* @throws {@link BrowserUse.UnprocessableEntityError}
|
|
192
|
+
*
|
|
193
|
+
* @example
|
|
194
|
+
* await client.skills.getSkillExecutionOutput({
|
|
195
|
+
* skill_id: "skill_id",
|
|
196
|
+
* execution_id: "execution_id"
|
|
197
|
+
* })
|
|
198
|
+
*/
|
|
199
|
+
getSkillExecutionOutput(request: BrowserUse.GetSkillExecutionOutputSkillsSkillIdExecutionsExecutionIdOutputGetRequest, requestOptions?: Skills.RequestOptions): core.HttpResponsePromise<BrowserUse.SkillExecutionOutputResponse>;
|
|
200
|
+
private __getSkillExecutionOutput;
|
|
164
201
|
protected _getCustomAuthorizationHeaders(): Promise<Record<string, string | undefined>>;
|
|
165
202
|
}
|
|
@@ -158,7 +158,9 @@ class Skills {
|
|
|
158
158
|
* @param {Skills.RequestOptions} requestOptions - Request-specific configuration.
|
|
159
159
|
*
|
|
160
160
|
* @throws {@link BrowserUse.BadRequestError}
|
|
161
|
+
* @throws {@link BrowserUse.PaymentRequiredError}
|
|
161
162
|
* @throws {@link BrowserUse.UnprocessableEntityError}
|
|
163
|
+
* @throws {@link BrowserUse.TooManyRequestsError}
|
|
162
164
|
*
|
|
163
165
|
* @example
|
|
164
166
|
* await client.skills.createSkill({
|
|
@@ -194,8 +196,12 @@ class Skills {
|
|
|
194
196
|
switch (_response.error.statusCode) {
|
|
195
197
|
case 400:
|
|
196
198
|
throw new BrowserUse.BadRequestError(_response.error.body, _response.rawResponse);
|
|
199
|
+
case 402:
|
|
200
|
+
throw new BrowserUse.PaymentRequiredError(_response.error.body, _response.rawResponse);
|
|
197
201
|
case 422:
|
|
198
202
|
throw new BrowserUse.UnprocessableEntityError(_response.error.body, _response.rawResponse);
|
|
203
|
+
case 429:
|
|
204
|
+
throw new BrowserUse.TooManyRequestsError(_response.error.body, _response.rawResponse);
|
|
199
205
|
default:
|
|
200
206
|
throw new errors.BrowserUseError({
|
|
201
207
|
statusCode: _response.error.statusCode,
|
|
@@ -581,6 +587,7 @@ class Skills {
|
|
|
581
587
|
* @throws {@link BrowserUse.PaymentRequiredError}
|
|
582
588
|
* @throws {@link BrowserUse.NotFoundError}
|
|
583
589
|
* @throws {@link BrowserUse.UnprocessableEntityError}
|
|
590
|
+
* @throws {@link BrowserUse.TooManyRequestsError}
|
|
584
591
|
*
|
|
585
592
|
* @example
|
|
586
593
|
* await client.skills.executeSkill({
|
|
@@ -623,6 +630,8 @@ class Skills {
|
|
|
623
630
|
throw new BrowserUse.NotFoundError(_response.error.body, _response.rawResponse);
|
|
624
631
|
case 422:
|
|
625
632
|
throw new BrowserUse.UnprocessableEntityError(_response.error.body, _response.rawResponse);
|
|
633
|
+
case 429:
|
|
634
|
+
throw new BrowserUse.TooManyRequestsError(_response.error.body, _response.rawResponse);
|
|
626
635
|
default:
|
|
627
636
|
throw new errors.BrowserUseError({
|
|
628
637
|
statusCode: _response.error.statusCode,
|
|
@@ -657,6 +666,7 @@ class Skills {
|
|
|
657
666
|
* @throws {@link BrowserUse.BadRequestError}
|
|
658
667
|
* @throws {@link BrowserUse.NotFoundError}
|
|
659
668
|
* @throws {@link BrowserUse.UnprocessableEntityError}
|
|
669
|
+
* @throws {@link BrowserUse.TooManyRequestsError}
|
|
660
670
|
*
|
|
661
671
|
* @example
|
|
662
672
|
* await client.skills.refineSkill({
|
|
@@ -697,6 +707,8 @@ class Skills {
|
|
|
697
707
|
throw new BrowserUse.NotFoundError(_response.error.body, _response.rawResponse);
|
|
698
708
|
case 422:
|
|
699
709
|
throw new BrowserUse.UnprocessableEntityError(_response.error.body, _response.rawResponse);
|
|
710
|
+
case 429:
|
|
711
|
+
throw new BrowserUse.TooManyRequestsError(_response.error.body, _response.rawResponse);
|
|
700
712
|
default:
|
|
701
713
|
throw new errors.BrowserUseError({
|
|
702
714
|
statusCode: _response.error.statusCode,
|
|
@@ -722,6 +734,154 @@ class Skills {
|
|
|
722
734
|
}
|
|
723
735
|
});
|
|
724
736
|
}
|
|
737
|
+
/**
|
|
738
|
+
* List executions for a specific skill.
|
|
739
|
+
*
|
|
740
|
+
* @param {BrowserUse.ListSkillExecutionsSkillsSkillIdExecutionsGetRequest} request
|
|
741
|
+
* @param {Skills.RequestOptions} requestOptions - Request-specific configuration.
|
|
742
|
+
*
|
|
743
|
+
* @throws {@link BrowserUse.NotFoundError}
|
|
744
|
+
* @throws {@link BrowserUse.UnprocessableEntityError}
|
|
745
|
+
*
|
|
746
|
+
* @example
|
|
747
|
+
* await client.skills.listSkillExecutions({
|
|
748
|
+
* skill_id: "skill_id"
|
|
749
|
+
* })
|
|
750
|
+
*/
|
|
751
|
+
listSkillExecutions(request, requestOptions) {
|
|
752
|
+
return core.HttpResponsePromise.fromPromise(this.__listSkillExecutions(request, requestOptions));
|
|
753
|
+
}
|
|
754
|
+
__listSkillExecutions(request, requestOptions) {
|
|
755
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
756
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
|
|
757
|
+
const { skill_id: skillId, pageSize, pageNumber } = request;
|
|
758
|
+
const _queryParams = {};
|
|
759
|
+
if (pageSize != null) {
|
|
760
|
+
_queryParams.pageSize = pageSize.toString();
|
|
761
|
+
}
|
|
762
|
+
if (pageNumber != null) {
|
|
763
|
+
_queryParams.pageNumber = pageNumber.toString();
|
|
764
|
+
}
|
|
765
|
+
const _headers = (0, headers_js_1.mergeHeaders)((_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, (0, headers_js_1.mergeOnlyDefinedHeaders)(Object.assign({}, (yield this._getCustomAuthorizationHeaders()))), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
|
|
766
|
+
const _response = yield core.fetcher({
|
|
767
|
+
url: core.url.join((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.BrowserUseEnvironment.Production, `skills/${core.url.encodePathParam(skillId)}/executions`),
|
|
768
|
+
method: "GET",
|
|
769
|
+
headers: _headers,
|
|
770
|
+
queryParameters: Object.assign(Object.assign({}, _queryParams), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.queryParams),
|
|
771
|
+
timeoutMs: ((_f = (_d = requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) !== null && _d !== void 0 ? _d : (_e = this._options) === null || _e === void 0 ? void 0 : _e.timeoutInSeconds) !== null && _f !== void 0 ? _f : 60) * 1000,
|
|
772
|
+
maxRetries: (_g = requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.maxRetries) !== null && _g !== void 0 ? _g : (_h = this._options) === null || _h === void 0 ? void 0 : _h.maxRetries,
|
|
773
|
+
abortSignal: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal,
|
|
774
|
+
fetchFn: (_j = this._options) === null || _j === void 0 ? void 0 : _j.fetch,
|
|
775
|
+
logging: this._options.logging,
|
|
776
|
+
});
|
|
777
|
+
if (_response.ok) {
|
|
778
|
+
return {
|
|
779
|
+
data: _response.body,
|
|
780
|
+
rawResponse: _response.rawResponse,
|
|
781
|
+
};
|
|
782
|
+
}
|
|
783
|
+
if (_response.error.reason === "status-code") {
|
|
784
|
+
switch (_response.error.statusCode) {
|
|
785
|
+
case 404:
|
|
786
|
+
throw new BrowserUse.NotFoundError(_response.error.body, _response.rawResponse);
|
|
787
|
+
case 422:
|
|
788
|
+
throw new BrowserUse.UnprocessableEntityError(_response.error.body, _response.rawResponse);
|
|
789
|
+
default:
|
|
790
|
+
throw new errors.BrowserUseError({
|
|
791
|
+
statusCode: _response.error.statusCode,
|
|
792
|
+
body: _response.error.body,
|
|
793
|
+
rawResponse: _response.rawResponse,
|
|
794
|
+
});
|
|
795
|
+
}
|
|
796
|
+
}
|
|
797
|
+
switch (_response.error.reason) {
|
|
798
|
+
case "non-json":
|
|
799
|
+
throw new errors.BrowserUseError({
|
|
800
|
+
statusCode: _response.error.statusCode,
|
|
801
|
+
body: _response.error.rawBody,
|
|
802
|
+
rawResponse: _response.rawResponse,
|
|
803
|
+
});
|
|
804
|
+
case "timeout":
|
|
805
|
+
throw new errors.BrowserUseTimeoutError("Timeout exceeded when calling GET /skills/{skill_id}/executions.");
|
|
806
|
+
case "unknown":
|
|
807
|
+
throw new errors.BrowserUseError({
|
|
808
|
+
message: _response.error.errorMessage,
|
|
809
|
+
rawResponse: _response.rawResponse,
|
|
810
|
+
});
|
|
811
|
+
}
|
|
812
|
+
});
|
|
813
|
+
}
|
|
814
|
+
/**
|
|
815
|
+
* Get presigned URL for downloading skill execution output.
|
|
816
|
+
*
|
|
817
|
+
* @param {BrowserUse.GetSkillExecutionOutputSkillsSkillIdExecutionsExecutionIdOutputGetRequest} request
|
|
818
|
+
* @param {Skills.RequestOptions} requestOptions - Request-specific configuration.
|
|
819
|
+
*
|
|
820
|
+
* @throws {@link BrowserUse.NotFoundError}
|
|
821
|
+
* @throws {@link BrowserUse.UnprocessableEntityError}
|
|
822
|
+
*
|
|
823
|
+
* @example
|
|
824
|
+
* await client.skills.getSkillExecutionOutput({
|
|
825
|
+
* skill_id: "skill_id",
|
|
826
|
+
* execution_id: "execution_id"
|
|
827
|
+
* })
|
|
828
|
+
*/
|
|
829
|
+
getSkillExecutionOutput(request, requestOptions) {
|
|
830
|
+
return core.HttpResponsePromise.fromPromise(this.__getSkillExecutionOutput(request, requestOptions));
|
|
831
|
+
}
|
|
832
|
+
__getSkillExecutionOutput(request, requestOptions) {
|
|
833
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
834
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
|
|
835
|
+
const { skill_id: skillId, execution_id: executionId } = request;
|
|
836
|
+
const _headers = (0, headers_js_1.mergeHeaders)((_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, (0, headers_js_1.mergeOnlyDefinedHeaders)(Object.assign({}, (yield this._getCustomAuthorizationHeaders()))), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
|
|
837
|
+
const _response = yield core.fetcher({
|
|
838
|
+
url: core.url.join((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.BrowserUseEnvironment.Production, `skills/${core.url.encodePathParam(skillId)}/executions/${core.url.encodePathParam(executionId)}/output`),
|
|
839
|
+
method: "GET",
|
|
840
|
+
headers: _headers,
|
|
841
|
+
queryParameters: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.queryParams,
|
|
842
|
+
timeoutMs: ((_f = (_d = requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) !== null && _d !== void 0 ? _d : (_e = this._options) === null || _e === void 0 ? void 0 : _e.timeoutInSeconds) !== null && _f !== void 0 ? _f : 60) * 1000,
|
|
843
|
+
maxRetries: (_g = requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.maxRetries) !== null && _g !== void 0 ? _g : (_h = this._options) === null || _h === void 0 ? void 0 : _h.maxRetries,
|
|
844
|
+
abortSignal: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal,
|
|
845
|
+
fetchFn: (_j = this._options) === null || _j === void 0 ? void 0 : _j.fetch,
|
|
846
|
+
logging: this._options.logging,
|
|
847
|
+
});
|
|
848
|
+
if (_response.ok) {
|
|
849
|
+
return {
|
|
850
|
+
data: _response.body,
|
|
851
|
+
rawResponse: _response.rawResponse,
|
|
852
|
+
};
|
|
853
|
+
}
|
|
854
|
+
if (_response.error.reason === "status-code") {
|
|
855
|
+
switch (_response.error.statusCode) {
|
|
856
|
+
case 404:
|
|
857
|
+
throw new BrowserUse.NotFoundError(_response.error.body, _response.rawResponse);
|
|
858
|
+
case 422:
|
|
859
|
+
throw new BrowserUse.UnprocessableEntityError(_response.error.body, _response.rawResponse);
|
|
860
|
+
default:
|
|
861
|
+
throw new errors.BrowserUseError({
|
|
862
|
+
statusCode: _response.error.statusCode,
|
|
863
|
+
body: _response.error.body,
|
|
864
|
+
rawResponse: _response.rawResponse,
|
|
865
|
+
});
|
|
866
|
+
}
|
|
867
|
+
}
|
|
868
|
+
switch (_response.error.reason) {
|
|
869
|
+
case "non-json":
|
|
870
|
+
throw new errors.BrowserUseError({
|
|
871
|
+
statusCode: _response.error.statusCode,
|
|
872
|
+
body: _response.error.rawBody,
|
|
873
|
+
rawResponse: _response.rawResponse,
|
|
874
|
+
});
|
|
875
|
+
case "timeout":
|
|
876
|
+
throw new errors.BrowserUseTimeoutError("Timeout exceeded when calling GET /skills/{skill_id}/executions/{execution_id}/output.");
|
|
877
|
+
case "unknown":
|
|
878
|
+
throw new errors.BrowserUseError({
|
|
879
|
+
message: _response.error.errorMessage,
|
|
880
|
+
rawResponse: _response.rawResponse,
|
|
881
|
+
});
|
|
882
|
+
}
|
|
883
|
+
});
|
|
884
|
+
}
|
|
725
885
|
_getCustomAuthorizationHeaders() {
|
|
726
886
|
return __awaiter(this, void 0, void 0, function* () {
|
|
727
887
|
const apiKeyValue = yield core.Supplier.get(this._options.apiKey);
|
|
@@ -2,7 +2,9 @@ export type { CancelGenerationSkillsSkillIdCancelPostRequest } from "./CancelGen
|
|
|
2
2
|
export type { CreateSkillRequest } from "./CreateSkillRequest.js";
|
|
3
3
|
export type { DeleteSkillSkillsSkillIdDeleteRequest } from "./DeleteSkillSkillsSkillIdDeleteRequest.js";
|
|
4
4
|
export type { ExecuteSkillSkillsSkillIdExecutePostRequest } from "./ExecuteSkillSkillsSkillIdExecutePostRequest.js";
|
|
5
|
+
export type { GetSkillExecutionOutputSkillsSkillIdExecutionsExecutionIdOutputGetRequest } from "./GetSkillExecutionOutputSkillsSkillIdExecutionsExecutionIdOutputGetRequest.js";
|
|
5
6
|
export type { GetSkillSkillsSkillIdGetRequest } from "./GetSkillSkillsSkillIdGetRequest.js";
|
|
7
|
+
export type { ListSkillExecutionsSkillsSkillIdExecutionsGetRequest } from "./ListSkillExecutionsSkillsSkillIdExecutionsGetRequest.js";
|
|
6
8
|
export type { ListSkillsSkillsGetRequest } from "./ListSkillsSkillsGetRequest.js";
|
|
7
9
|
export type { RefineSkillRequest } from "./RefineSkillRequest.js";
|
|
8
10
|
export type { RollbackSkillSkillsSkillIdRollbackPostRequest } from "./RollbackSkillSkillsSkillIdRollbackPostRequest.js";
|
|
@@ -27,12 +27,15 @@ export declare class Tasks {
|
|
|
27
27
|
* Create and start a new task.
|
|
28
28
|
*
|
|
29
29
|
* You can either:
|
|
30
|
-
* 1. Start a new task without a sessionId (auto-creates a session with US proxy by default)
|
|
30
|
+
* 1. Start a new task without a sessionId (auto-creates a session with US proxy by default).
|
|
31
|
+
* Note: Tasks without a sessionId are one-off tasks that automatically close the session
|
|
32
|
+
* upon completion (keep_alive=false).
|
|
31
33
|
* 2. Start a new task in an existing session (reuse for follow-up tasks or custom configuration)
|
|
32
34
|
*
|
|
33
|
-
* Important: Proxy configuration (proxyCountryCode)
|
|
34
|
-
*
|
|
35
|
-
* then pass that sessionId
|
|
35
|
+
* Important: Proxy configuration (proxyCountryCode) and other session settings (like keep_alive) are
|
|
36
|
+
* session-level settings, not task-level settings. For full control over session configuration,
|
|
37
|
+
* create a session first via POST /sessions with your desired settings, then pass that sessionId
|
|
38
|
+
* when creating tasks.
|
|
36
39
|
*
|
|
37
40
|
* @param {BrowserUse.CreateTaskRequest} request
|
|
38
41
|
* @param {Tasks.RequestOptions} requestOptions - Request-specific configuration.
|
|
@@ -82,6 +85,31 @@ export declare class Tasks {
|
|
|
82
85
|
*/
|
|
83
86
|
updateTask(request: BrowserUse.UpdateTaskRequest, requestOptions?: Tasks.RequestOptions): core.HttpResponsePromise<BrowserUse.TaskView>;
|
|
84
87
|
private __updateTask;
|
|
88
|
+
/**
|
|
89
|
+
* Lightweight endpoint optimized for polling task status.
|
|
90
|
+
*
|
|
91
|
+
* Returns only the task status, output, and cost without loading steps,
|
|
92
|
+
* files, or session details. Use this endpoint for efficient polling
|
|
93
|
+
* instead of GET /tasks/{task_id}.
|
|
94
|
+
*
|
|
95
|
+
* Recommended polling pattern:
|
|
96
|
+
* 1. POST /tasks to create a task
|
|
97
|
+
* 2. Poll GET /tasks/{task_id}/status until status is 'finished' or 'stopped'
|
|
98
|
+
* 3. GET /tasks/{task_id} once at the end for full details including steps
|
|
99
|
+
*
|
|
100
|
+
* @param {BrowserUse.GetTaskStatusTasksTaskIdStatusGetRequest} request
|
|
101
|
+
* @param {Tasks.RequestOptions} requestOptions - Request-specific configuration.
|
|
102
|
+
*
|
|
103
|
+
* @throws {@link BrowserUse.NotFoundError}
|
|
104
|
+
* @throws {@link BrowserUse.UnprocessableEntityError}
|
|
105
|
+
*
|
|
106
|
+
* @example
|
|
107
|
+
* await client.tasks.getTaskStatus({
|
|
108
|
+
* task_id: "task_id"
|
|
109
|
+
* })
|
|
110
|
+
*/
|
|
111
|
+
getTaskStatus(request: BrowserUse.GetTaskStatusTasksTaskIdStatusGetRequest, requestOptions?: Tasks.RequestOptions): core.HttpResponsePromise<BrowserUse.TaskStatusView>;
|
|
112
|
+
private __getTaskStatus;
|
|
85
113
|
/**
|
|
86
114
|
* Get secure download URL for task execution logs with step-by-step details.
|
|
87
115
|
*
|
|
@@ -149,12 +149,15 @@ class Tasks {
|
|
|
149
149
|
* Create and start a new task.
|
|
150
150
|
*
|
|
151
151
|
* You can either:
|
|
152
|
-
* 1. Start a new task without a sessionId (auto-creates a session with US proxy by default)
|
|
152
|
+
* 1. Start a new task without a sessionId (auto-creates a session with US proxy by default).
|
|
153
|
+
* Note: Tasks without a sessionId are one-off tasks that automatically close the session
|
|
154
|
+
* upon completion (keep_alive=false).
|
|
153
155
|
* 2. Start a new task in an existing session (reuse for follow-up tasks or custom configuration)
|
|
154
156
|
*
|
|
155
|
-
* Important: Proxy configuration (proxyCountryCode)
|
|
156
|
-
*
|
|
157
|
-
* then pass that sessionId
|
|
157
|
+
* Important: Proxy configuration (proxyCountryCode) and other session settings (like keep_alive) are
|
|
158
|
+
* session-level settings, not task-level settings. For full control over session configuration,
|
|
159
|
+
* create a session first via POST /sessions with your desired settings, then pass that sessionId
|
|
160
|
+
* when creating tasks.
|
|
158
161
|
*
|
|
159
162
|
* @param {BrowserUse.CreateTaskRequest} request
|
|
160
163
|
* @param {Tasks.RequestOptions} requestOptions - Request-specific configuration.
|
|
@@ -366,6 +369,82 @@ class Tasks {
|
|
|
366
369
|
}
|
|
367
370
|
});
|
|
368
371
|
}
|
|
372
|
+
/**
|
|
373
|
+
* Lightweight endpoint optimized for polling task status.
|
|
374
|
+
*
|
|
375
|
+
* Returns only the task status, output, and cost without loading steps,
|
|
376
|
+
* files, or session details. Use this endpoint for efficient polling
|
|
377
|
+
* instead of GET /tasks/{task_id}.
|
|
378
|
+
*
|
|
379
|
+
* Recommended polling pattern:
|
|
380
|
+
* 1. POST /tasks to create a task
|
|
381
|
+
* 2. Poll GET /tasks/{task_id}/status until status is 'finished' or 'stopped'
|
|
382
|
+
* 3. GET /tasks/{task_id} once at the end for full details including steps
|
|
383
|
+
*
|
|
384
|
+
* @param {BrowserUse.GetTaskStatusTasksTaskIdStatusGetRequest} request
|
|
385
|
+
* @param {Tasks.RequestOptions} requestOptions - Request-specific configuration.
|
|
386
|
+
*
|
|
387
|
+
* @throws {@link BrowserUse.NotFoundError}
|
|
388
|
+
* @throws {@link BrowserUse.UnprocessableEntityError}
|
|
389
|
+
*
|
|
390
|
+
* @example
|
|
391
|
+
* await client.tasks.getTaskStatus({
|
|
392
|
+
* task_id: "task_id"
|
|
393
|
+
* })
|
|
394
|
+
*/
|
|
395
|
+
getTaskStatus(request, requestOptions) {
|
|
396
|
+
return core.HttpResponsePromise.fromPromise(this.__getTaskStatus(request, requestOptions));
|
|
397
|
+
}
|
|
398
|
+
__getTaskStatus(request, requestOptions) {
|
|
399
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
400
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
|
|
401
|
+
const { task_id: taskId } = request;
|
|
402
|
+
const _headers = (0, headers_js_1.mergeHeaders)((_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, (0, headers_js_1.mergeOnlyDefinedHeaders)(Object.assign({}, (yield this._getCustomAuthorizationHeaders()))), requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
|
|
403
|
+
const _response = yield core.fetcher({
|
|
404
|
+
url: core.url.join((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.BrowserUseEnvironment.Production, `tasks/${core.url.encodePathParam(taskId)}/status`),
|
|
405
|
+
method: "GET",
|
|
406
|
+
headers: _headers,
|
|
407
|
+
queryParameters: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.queryParams,
|
|
408
|
+
timeoutMs: ((_f = (_d = requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) !== null && _d !== void 0 ? _d : (_e = this._options) === null || _e === void 0 ? void 0 : _e.timeoutInSeconds) !== null && _f !== void 0 ? _f : 60) * 1000,
|
|
409
|
+
maxRetries: (_g = requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.maxRetries) !== null && _g !== void 0 ? _g : (_h = this._options) === null || _h === void 0 ? void 0 : _h.maxRetries,
|
|
410
|
+
abortSignal: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal,
|
|
411
|
+
fetchFn: (_j = this._options) === null || _j === void 0 ? void 0 : _j.fetch,
|
|
412
|
+
logging: this._options.logging,
|
|
413
|
+
});
|
|
414
|
+
if (_response.ok) {
|
|
415
|
+
return { data: _response.body, rawResponse: _response.rawResponse };
|
|
416
|
+
}
|
|
417
|
+
if (_response.error.reason === "status-code") {
|
|
418
|
+
switch (_response.error.statusCode) {
|
|
419
|
+
case 404:
|
|
420
|
+
throw new BrowserUse.NotFoundError(_response.error.body, _response.rawResponse);
|
|
421
|
+
case 422:
|
|
422
|
+
throw new BrowserUse.UnprocessableEntityError(_response.error.body, _response.rawResponse);
|
|
423
|
+
default:
|
|
424
|
+
throw new errors.BrowserUseError({
|
|
425
|
+
statusCode: _response.error.statusCode,
|
|
426
|
+
body: _response.error.body,
|
|
427
|
+
rawResponse: _response.rawResponse,
|
|
428
|
+
});
|
|
429
|
+
}
|
|
430
|
+
}
|
|
431
|
+
switch (_response.error.reason) {
|
|
432
|
+
case "non-json":
|
|
433
|
+
throw new errors.BrowserUseError({
|
|
434
|
+
statusCode: _response.error.statusCode,
|
|
435
|
+
body: _response.error.rawBody,
|
|
436
|
+
rawResponse: _response.rawResponse,
|
|
437
|
+
});
|
|
438
|
+
case "timeout":
|
|
439
|
+
throw new errors.BrowserUseTimeoutError("Timeout exceeded when calling GET /tasks/{task_id}/status.");
|
|
440
|
+
case "unknown":
|
|
441
|
+
throw new errors.BrowserUseError({
|
|
442
|
+
message: _response.error.errorMessage,
|
|
443
|
+
rawResponse: _response.rawResponse,
|
|
444
|
+
});
|
|
445
|
+
}
|
|
446
|
+
});
|
|
447
|
+
}
|
|
369
448
|
/**
|
|
370
449
|
* Get secure download URL for task execution logs with step-by-step details.
|
|
371
450
|
*
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export type { CreateTaskRequest } from "./CreateTaskRequest.js";
|
|
2
2
|
export type { GetTaskLogsTasksTaskIdLogsGetRequest } from "./GetTaskLogsTasksTaskIdLogsGetRequest.js";
|
|
3
|
+
export type { GetTaskStatusTasksTaskIdStatusGetRequest } from "./GetTaskStatusTasksTaskIdStatusGetRequest.js";
|
|
3
4
|
export type { GetTaskTasksTaskIdGetRequest } from "./GetTaskTasksTaskIdGetRequest.js";
|
|
4
5
|
export type { ListTasksTasksGetRequest } from "./ListTasksTasksGetRequest.js";
|
|
5
6
|
export type { UpdateTaskRequest } from "./UpdateTaskRequest.js";
|
|
@@ -17,4 +17,10 @@ export interface BrowserSessionItemView {
|
|
|
17
17
|
startedAt: string;
|
|
18
18
|
/** Timestamp when the session was stopped (None if still active) */
|
|
19
19
|
finishedAt?: string | null;
|
|
20
|
+
/** Amount of proxy data used in MB */
|
|
21
|
+
proxyUsedMb?: string;
|
|
22
|
+
/** Cost of proxy usage in USD */
|
|
23
|
+
proxyCost?: string;
|
|
24
|
+
/** Cost of browser session hosting in USD */
|
|
25
|
+
browserCost?: string;
|
|
20
26
|
}
|
|
@@ -17,4 +17,10 @@ export interface BrowserSessionView {
|
|
|
17
17
|
startedAt: string;
|
|
18
18
|
/** Timestamp when the session was stopped (None if still active) */
|
|
19
19
|
finishedAt?: string | null;
|
|
20
|
+
/** Amount of proxy data used in MB */
|
|
21
|
+
proxyUsedMb?: string;
|
|
22
|
+
/** Cost of proxy usage in USD */
|
|
23
|
+
proxyCost?: string;
|
|
24
|
+
/** Cost of browser session hosting in USD */
|
|
25
|
+
browserCost?: string;
|
|
20
26
|
}
|