airbrowser-client 1.13.1 → 1.14.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/esm/api.js CHANGED
@@ -46,6 +46,16 @@ export const CookiesRequestActionEnum = {
46
46
  Delete: 'delete',
47
47
  Clear: 'clear',
48
48
  };
49
+ export const DetectCoordinatesRequestHitTestEnum = {
50
+ Off: 'off',
51
+ Warn: 'warn',
52
+ Strict: 'strict',
53
+ };
54
+ export const DetectCoordinatesRequestAutoSnapEnum = {
55
+ Off: 'off',
56
+ NearestClickable: 'nearest_clickable',
57
+ NearestInteractive: 'nearest_interactive',
58
+ };
49
59
  export const DialogRequestActionEnum = {
50
60
  Get: 'get',
51
61
  Accept: 'accept',
@@ -56,6 +66,40 @@ export const EmulateRequestActionEnum = {
56
66
  Clear: 'clear',
57
67
  ListDevices: 'list_devices',
58
68
  };
69
+ export const GuiClickRequestPreClickValidateEnum = {
70
+ Off: 'off',
71
+ Warn: 'warn',
72
+ Strict: 'strict',
73
+ };
74
+ export const GuiClickRequestAutoSnapEnum = {
75
+ Off: 'off',
76
+ NearestClickable: 'nearest_clickable',
77
+ NearestInteractive: 'nearest_interactive',
78
+ };
79
+ export const GuiClickRequestPostClickFeedbackEnum = {
80
+ None: 'none',
81
+ Url: 'url',
82
+ Content: 'content',
83
+ Visible: 'visible',
84
+ Auto: 'auto',
85
+ };
86
+ export const GuiClickXYRequestPreClickValidateEnum = {
87
+ Off: 'off',
88
+ Warn: 'warn',
89
+ Strict: 'strict',
90
+ };
91
+ export const GuiClickXYRequestAutoSnapEnum = {
92
+ Off: 'off',
93
+ NearestClickable: 'nearest_clickable',
94
+ NearestInteractive: 'nearest_interactive',
95
+ };
96
+ export const GuiClickXYRequestPostClickFeedbackEnum = {
97
+ None: 'none',
98
+ Url: 'url',
99
+ Content: 'content',
100
+ Visible: 'visible',
101
+ Auto: 'auto',
102
+ };
59
103
  export const HistoryRequestActionEnum = {
60
104
  Back: 'back',
61
105
  Forward: 'forward',
@@ -341,8 +385,8 @@ export const BrowserApiAxiosParamCreator = function (configuration) {
341
385
  };
342
386
  }),
343
387
  /**
344
- * Args: browser_id: Browser instance identifier prompt: Natural language description of element to find fx: Fractional x offset for click point (0.0=left, 0.5=center, 1.0=right). If None, auto-bias is applied for wide elements (0.25 for aspect ratio > 10). fy: Fractional y offset for click point (0.0=top, 0.5=center, 1.0=bottom).
345
- * @summary Detect element coordinates using vision
388
+ * Args: browser_id: Browser instance identifier prompt: Natural language description of element to find fx: Fractional x offset for click point (0.0=left, 0.5=center, 1.0=right). If None, auto-bias is applied for wide elements (0.25 for aspect ratio > 10). fy: Fractional y offset for click point (0.0=top, 0.5=center, 1.0=bottom). model: Optional vision model override for this request. stream: Optional vision streaming override for this request. hit_test: Detect-time validation mode: off, warn, or strict. Recommended for agents: `strict`. auto_snap: Auto-snap mode: off, nearest_clickable, or nearest_interactive. Recommended for agents: `nearest_clickable`. snap_radius: Maximum snap radius in CSS pixels. include_debug: Include detect debug diagnostics when available.
389
+ * @summary Detect element coordinates using vision with optional smart targeting
346
390
  * @param {string} browserId
347
391
  * @param {DetectCoordinatesRequest} payload
348
392
  * @param {*} [options] Override http request option.
@@ -691,8 +735,8 @@ export const BrowserApiAxiosParamCreator = function (configuration) {
691
735
  };
692
736
  }),
693
737
  /**
694
- *
695
- * @summary GUI click by selector or coordinates
738
+ * Selector mode uses `selector` with optional `fx` / `fy` offsets. Coordinate mode uses `x` / `y` and supports smart targeting knobs such as `pre_click_validate`, `auto_snap`, and `post_click_feedback`. Recommended agent mode: - `pre_click_validate=\"strict\"` - `auto_snap=\"nearest_clickable\"` - `post_click_feedback=\"auto\"` MCP keeps `gui_click_xy` as a compatibility alias for coordinate-mode `gui_click`.
739
+ * @summary GUI click by selector or coordinates with smart validation
696
740
  * @param {string} browserId
697
741
  * @param {GuiClickRequest} payload
698
742
  * @param {*} [options] Override http request option.
@@ -725,6 +769,41 @@ export const BrowserApiAxiosParamCreator = function (configuration) {
725
769
  options: localVarRequestOptions,
726
770
  };
727
771
  }),
772
+ /**
773
+ * This mirrors coordinate-mode `gui_click`, accepts the same smart-click options, and returns the same response contract.
774
+ * @summary MCP compatibility alias for coordinate-mode `gui_click`
775
+ * @param {string} browserId
776
+ * @param {GuiClickXYRequest} payload
777
+ * @param {*} [options] Override http request option.
778
+ * @throws {RequiredError}
779
+ */
780
+ guiClickXy: (browserId_1, payload_1, ...args_1) => __awaiter(this, [browserId_1, payload_1, ...args_1], void 0, function* (browserId, payload, options = {}) {
781
+ // verify required parameter 'browserId' is not null or undefined
782
+ assertParamExists('guiClickXy', 'browserId', browserId);
783
+ // verify required parameter 'payload' is not null or undefined
784
+ assertParamExists('guiClickXy', 'payload', payload);
785
+ const localVarPath = `/browser/{browser_id}/gui_click_xy`
786
+ .replace(`{${"browser_id"}}`, encodeURIComponent(String(browserId)));
787
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
788
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
789
+ let baseOptions;
790
+ if (configuration) {
791
+ baseOptions = configuration.baseOptions;
792
+ }
793
+ const localVarRequestOptions = Object.assign(Object.assign({ method: 'POST' }, baseOptions), options);
794
+ const localVarHeaderParameter = {};
795
+ const localVarQueryParameter = {};
796
+ localVarHeaderParameter['Content-Type'] = 'application/json';
797
+ localVarHeaderParameter['Accept'] = 'application/json';
798
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
799
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
800
+ localVarRequestOptions.headers = Object.assign(Object.assign(Object.assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
801
+ localVarRequestOptions.data = serializeDataIfNeeded(payload, localVarRequestOptions, configuration);
802
+ return {
803
+ url: toPathString(localVarUrlObj),
804
+ options: localVarRequestOptions,
805
+ };
806
+ }),
728
807
  /**
729
808
  *
730
809
  * @summary GUI hover at coordinates
@@ -1359,12 +1438,15 @@ export const BrowserApiAxiosParamCreator = function (configuration) {
1359
1438
  *
1360
1439
  * @summary AI page analysis - what\'s visible
1361
1440
  * @param {string} browserId
1441
+ * @param {WhatIsVisibleRequest} payload
1362
1442
  * @param {*} [options] Override http request option.
1363
1443
  * @throws {RequiredError}
1364
1444
  */
1365
- whatIsVisible: (browserId_1, ...args_1) => __awaiter(this, [browserId_1, ...args_1], void 0, function* (browserId, options = {}) {
1445
+ whatIsVisible: (browserId_1, payload_1, ...args_1) => __awaiter(this, [browserId_1, payload_1, ...args_1], void 0, function* (browserId, payload, options = {}) {
1366
1446
  // verify required parameter 'browserId' is not null or undefined
1367
1447
  assertParamExists('whatIsVisible', 'browserId', browserId);
1448
+ // verify required parameter 'payload' is not null or undefined
1449
+ assertParamExists('whatIsVisible', 'payload', payload);
1368
1450
  const localVarPath = `/browser/{browser_id}/what_is_visible`
1369
1451
  .replace(`{${"browser_id"}}`, encodeURIComponent(String(browserId)));
1370
1452
  // use dummy base URL string because the URL constructor only accepts absolute URLs.
@@ -1376,10 +1458,12 @@ export const BrowserApiAxiosParamCreator = function (configuration) {
1376
1458
  const localVarRequestOptions = Object.assign(Object.assign({ method: 'POST' }, baseOptions), options);
1377
1459
  const localVarHeaderParameter = {};
1378
1460
  const localVarQueryParameter = {};
1461
+ localVarHeaderParameter['Content-Type'] = 'application/json';
1379
1462
  localVarHeaderParameter['Accept'] = 'application/json';
1380
1463
  setSearchParams(localVarUrlObj, localVarQueryParameter);
1381
1464
  let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
1382
1465
  localVarRequestOptions.headers = Object.assign(Object.assign(Object.assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
1466
+ localVarRequestOptions.data = serializeDataIfNeeded(payload, localVarRequestOptions, configuration);
1383
1467
  return {
1384
1468
  url: toPathString(localVarUrlObj),
1385
1469
  options: localVarRequestOptions,
@@ -1512,8 +1596,8 @@ export const BrowserApiFp = function (configuration) {
1512
1596
  });
1513
1597
  },
1514
1598
  /**
1515
- * Args: browser_id: Browser instance identifier prompt: Natural language description of element to find fx: Fractional x offset for click point (0.0=left, 0.5=center, 1.0=right). If None, auto-bias is applied for wide elements (0.25 for aspect ratio > 10). fy: Fractional y offset for click point (0.0=top, 0.5=center, 1.0=bottom).
1516
- * @summary Detect element coordinates using vision
1599
+ * Args: browser_id: Browser instance identifier prompt: Natural language description of element to find fx: Fractional x offset for click point (0.0=left, 0.5=center, 1.0=right). If None, auto-bias is applied for wide elements (0.25 for aspect ratio > 10). fy: Fractional y offset for click point (0.0=top, 0.5=center, 1.0=bottom). model: Optional vision model override for this request. stream: Optional vision streaming override for this request. hit_test: Detect-time validation mode: off, warn, or strict. Recommended for agents: `strict`. auto_snap: Auto-snap mode: off, nearest_clickable, or nearest_interactive. Recommended for agents: `nearest_clickable`. snap_radius: Maximum snap radius in CSS pixels. include_debug: Include detect debug diagnostics when available.
1600
+ * @summary Detect element coordinates using vision with optional smart targeting
1517
1601
  * @param {string} browserId
1518
1602
  * @param {DetectCoordinatesRequest} payload
1519
1603
  * @param {*} [options] Override http request option.
@@ -1682,8 +1766,8 @@ export const BrowserApiFp = function (configuration) {
1682
1766
  });
1683
1767
  },
1684
1768
  /**
1685
- *
1686
- * @summary GUI click by selector or coordinates
1769
+ * Selector mode uses `selector` with optional `fx` / `fy` offsets. Coordinate mode uses `x` / `y` and supports smart targeting knobs such as `pre_click_validate`, `auto_snap`, and `post_click_feedback`. Recommended agent mode: - `pre_click_validate=\"strict\"` - `auto_snap=\"nearest_clickable\"` - `post_click_feedback=\"auto\"` MCP keeps `gui_click_xy` as a compatibility alias for coordinate-mode `gui_click`.
1770
+ * @summary GUI click by selector or coordinates with smart validation
1687
1771
  * @param {string} browserId
1688
1772
  * @param {GuiClickRequest} payload
1689
1773
  * @param {*} [options] Override http request option.
@@ -1698,6 +1782,23 @@ export const BrowserApiFp = function (configuration) {
1698
1782
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
1699
1783
  });
1700
1784
  },
1785
+ /**
1786
+ * This mirrors coordinate-mode `gui_click`, accepts the same smart-click options, and returns the same response contract.
1787
+ * @summary MCP compatibility alias for coordinate-mode `gui_click`
1788
+ * @param {string} browserId
1789
+ * @param {GuiClickXYRequest} payload
1790
+ * @param {*} [options] Override http request option.
1791
+ * @throws {RequiredError}
1792
+ */
1793
+ guiClickXy(browserId, payload, options) {
1794
+ return __awaiter(this, void 0, void 0, function* () {
1795
+ var _a, _b, _c;
1796
+ const localVarAxiosArgs = yield localVarAxiosParamCreator.guiClickXy(browserId, payload, options);
1797
+ const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
1798
+ const localVarOperationServerBasePath = (_c = (_b = operationServerMap['BrowserApi.guiClickXy']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
1799
+ return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
1800
+ });
1801
+ },
1701
1802
  /**
1702
1803
  *
1703
1804
  * @summary GUI hover at coordinates
@@ -2008,13 +2109,14 @@ export const BrowserApiFp = function (configuration) {
2008
2109
  *
2009
2110
  * @summary AI page analysis - what\'s visible
2010
2111
  * @param {string} browserId
2112
+ * @param {WhatIsVisibleRequest} payload
2011
2113
  * @param {*} [options] Override http request option.
2012
2114
  * @throws {RequiredError}
2013
2115
  */
2014
- whatIsVisible(browserId, options) {
2116
+ whatIsVisible(browserId, payload, options) {
2015
2117
  return __awaiter(this, void 0, void 0, function* () {
2016
2118
  var _a, _b, _c;
2017
- const localVarAxiosArgs = yield localVarAxiosParamCreator.whatIsVisible(browserId, options);
2119
+ const localVarAxiosArgs = yield localVarAxiosParamCreator.whatIsVisible(browserId, payload, options);
2018
2120
  const localVarOperationServerIndex = (_a = configuration === null || configuration === void 0 ? void 0 : configuration.serverIndex) !== null && _a !== void 0 ? _a : 0;
2019
2121
  const localVarOperationServerBasePath = (_c = (_b = operationServerMap['BrowserApi.whatIsVisible']) === null || _b === void 0 ? void 0 : _b[localVarOperationServerIndex]) === null || _c === void 0 ? void 0 : _c.url;
2020
2122
  return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
@@ -2105,8 +2207,8 @@ export const BrowserApiFactory = function (configuration, basePath, axios) {
2105
2207
  return localVarFp.createBrowser(payload, options).then((request) => request(axios, basePath));
2106
2208
  },
2107
2209
  /**
2108
- * Args: browser_id: Browser instance identifier prompt: Natural language description of element to find fx: Fractional x offset for click point (0.0=left, 0.5=center, 1.0=right). If None, auto-bias is applied for wide elements (0.25 for aspect ratio > 10). fy: Fractional y offset for click point (0.0=top, 0.5=center, 1.0=bottom).
2109
- * @summary Detect element coordinates using vision
2210
+ * Args: browser_id: Browser instance identifier prompt: Natural language description of element to find fx: Fractional x offset for click point (0.0=left, 0.5=center, 1.0=right). If None, auto-bias is applied for wide elements (0.25 for aspect ratio > 10). fy: Fractional y offset for click point (0.0=top, 0.5=center, 1.0=bottom). model: Optional vision model override for this request. stream: Optional vision streaming override for this request. hit_test: Detect-time validation mode: off, warn, or strict. Recommended for agents: `strict`. auto_snap: Auto-snap mode: off, nearest_clickable, or nearest_interactive. Recommended for agents: `nearest_clickable`. snap_radius: Maximum snap radius in CSS pixels. include_debug: Include detect debug diagnostics when available.
2211
+ * @summary Detect element coordinates using vision with optional smart targeting
2110
2212
  * @param {string} browserId
2111
2213
  * @param {DetectCoordinatesRequest} payload
2112
2214
  * @param {*} [options] Override http request option.
@@ -2215,8 +2317,8 @@ export const BrowserApiFactory = function (configuration, basePath, axios) {
2215
2317
  return localVarFp.getUrl(browserId, options).then((request) => request(axios, basePath));
2216
2318
  },
2217
2319
  /**
2218
- *
2219
- * @summary GUI click by selector or coordinates
2320
+ * Selector mode uses `selector` with optional `fx` / `fy` offsets. Coordinate mode uses `x` / `y` and supports smart targeting knobs such as `pre_click_validate`, `auto_snap`, and `post_click_feedback`. Recommended agent mode: - `pre_click_validate=\"strict\"` - `auto_snap=\"nearest_clickable\"` - `post_click_feedback=\"auto\"` MCP keeps `gui_click_xy` as a compatibility alias for coordinate-mode `gui_click`.
2321
+ * @summary GUI click by selector or coordinates with smart validation
2220
2322
  * @param {string} browserId
2221
2323
  * @param {GuiClickRequest} payload
2222
2324
  * @param {*} [options] Override http request option.
@@ -2225,6 +2327,17 @@ export const BrowserApiFactory = function (configuration, basePath, axios) {
2225
2327
  guiClick(browserId, payload, options) {
2226
2328
  return localVarFp.guiClick(browserId, payload, options).then((request) => request(axios, basePath));
2227
2329
  },
2330
+ /**
2331
+ * This mirrors coordinate-mode `gui_click`, accepts the same smart-click options, and returns the same response contract.
2332
+ * @summary MCP compatibility alias for coordinate-mode `gui_click`
2333
+ * @param {string} browserId
2334
+ * @param {GuiClickXYRequest} payload
2335
+ * @param {*} [options] Override http request option.
2336
+ * @throws {RequiredError}
2337
+ */
2338
+ guiClickXy(browserId, payload, options) {
2339
+ return localVarFp.guiClickXy(browserId, payload, options).then((request) => request(axios, basePath));
2340
+ },
2228
2341
  /**
2229
2342
  *
2230
2343
  * @summary GUI hover at coordinates
@@ -2427,11 +2540,12 @@ export const BrowserApiFactory = function (configuration, basePath, axios) {
2427
2540
  *
2428
2541
  * @summary AI page analysis - what\'s visible
2429
2542
  * @param {string} browserId
2543
+ * @param {WhatIsVisibleRequest} payload
2430
2544
  * @param {*} [options] Override http request option.
2431
2545
  * @throws {RequiredError}
2432
2546
  */
2433
- whatIsVisible(browserId, options) {
2434
- return localVarFp.whatIsVisible(browserId, options).then((request) => request(axios, basePath));
2547
+ whatIsVisible(browserId, payload, options) {
2548
+ return localVarFp.whatIsVisible(browserId, payload, options).then((request) => request(axios, basePath));
2435
2549
  },
2436
2550
  };
2437
2551
  };
@@ -2516,8 +2630,8 @@ export class BrowserApi extends BaseAPI {
2516
2630
  return BrowserApiFp(this.configuration).createBrowser(payload, options).then((request) => request(this.axios, this.basePath));
2517
2631
  }
2518
2632
  /**
2519
- * Args: browser_id: Browser instance identifier prompt: Natural language description of element to find fx: Fractional x offset for click point (0.0=left, 0.5=center, 1.0=right). If None, auto-bias is applied for wide elements (0.25 for aspect ratio > 10). fy: Fractional y offset for click point (0.0=top, 0.5=center, 1.0=bottom).
2520
- * @summary Detect element coordinates using vision
2633
+ * Args: browser_id: Browser instance identifier prompt: Natural language description of element to find fx: Fractional x offset for click point (0.0=left, 0.5=center, 1.0=right). If None, auto-bias is applied for wide elements (0.25 for aspect ratio > 10). fy: Fractional y offset for click point (0.0=top, 0.5=center, 1.0=bottom). model: Optional vision model override for this request. stream: Optional vision streaming override for this request. hit_test: Detect-time validation mode: off, warn, or strict. Recommended for agents: `strict`. auto_snap: Auto-snap mode: off, nearest_clickable, or nearest_interactive. Recommended for agents: `nearest_clickable`. snap_radius: Maximum snap radius in CSS pixels. include_debug: Include detect debug diagnostics when available.
2634
+ * @summary Detect element coordinates using vision with optional smart targeting
2521
2635
  * @param {string} browserId
2522
2636
  * @param {DetectCoordinatesRequest} payload
2523
2637
  * @param {*} [options] Override http request option.
@@ -2626,8 +2740,8 @@ export class BrowserApi extends BaseAPI {
2626
2740
  return BrowserApiFp(this.configuration).getUrl(browserId, options).then((request) => request(this.axios, this.basePath));
2627
2741
  }
2628
2742
  /**
2629
- *
2630
- * @summary GUI click by selector or coordinates
2743
+ * Selector mode uses `selector` with optional `fx` / `fy` offsets. Coordinate mode uses `x` / `y` and supports smart targeting knobs such as `pre_click_validate`, `auto_snap`, and `post_click_feedback`. Recommended agent mode: - `pre_click_validate=\"strict\"` - `auto_snap=\"nearest_clickable\"` - `post_click_feedback=\"auto\"` MCP keeps `gui_click_xy` as a compatibility alias for coordinate-mode `gui_click`.
2744
+ * @summary GUI click by selector or coordinates with smart validation
2631
2745
  * @param {string} browserId
2632
2746
  * @param {GuiClickRequest} payload
2633
2747
  * @param {*} [options] Override http request option.
@@ -2636,6 +2750,17 @@ export class BrowserApi extends BaseAPI {
2636
2750
  guiClick(browserId, payload, options) {
2637
2751
  return BrowserApiFp(this.configuration).guiClick(browserId, payload, options).then((request) => request(this.axios, this.basePath));
2638
2752
  }
2753
+ /**
2754
+ * This mirrors coordinate-mode `gui_click`, accepts the same smart-click options, and returns the same response contract.
2755
+ * @summary MCP compatibility alias for coordinate-mode `gui_click`
2756
+ * @param {string} browserId
2757
+ * @param {GuiClickXYRequest} payload
2758
+ * @param {*} [options] Override http request option.
2759
+ * @throws {RequiredError}
2760
+ */
2761
+ guiClickXy(browserId, payload, options) {
2762
+ return BrowserApiFp(this.configuration).guiClickXy(browserId, payload, options).then((request) => request(this.axios, this.basePath));
2763
+ }
2639
2764
  /**
2640
2765
  *
2641
2766
  * @summary GUI hover at coordinates
@@ -2838,11 +2963,12 @@ export class BrowserApi extends BaseAPI {
2838
2963
  *
2839
2964
  * @summary AI page analysis - what\'s visible
2840
2965
  * @param {string} browserId
2966
+ * @param {WhatIsVisibleRequest} payload
2841
2967
  * @param {*} [options] Override http request option.
2842
2968
  * @throws {RequiredError}
2843
2969
  */
2844
- whatIsVisible(browserId, options) {
2845
- return BrowserApiFp(this.configuration).whatIsVisible(browserId, options).then((request) => request(this.axios, this.basePath));
2970
+ whatIsVisible(browserId, payload, options) {
2971
+ return BrowserApiFp(this.configuration).whatIsVisible(browserId, payload, options).then((request) => request(this.axios, this.basePath));
2846
2972
  }
2847
2973
  }
2848
2974
  /**
@@ -11,7 +11,7 @@ All URIs are relative to */api/v1*
11
11
  |[**consoleLogs**](#consolelogs) | **POST** /browser/{browser_id}/console_logs | Console logs: get or clear|
12
12
  |[**cookies**](#cookies) | **POST** /browser/{browser_id}/cookies | Manage browser cookies|
13
13
  |[**createBrowser**](#createbrowser) | **POST** /browser/create_browser | Create browser instance with optional persistent profile|
14
- |[**detectCoordinates**](#detectcoordinates) | **POST** /browser/{browser_id}/detect_coordinates | Detect element coordinates using vision|
14
+ |[**detectCoordinates**](#detectcoordinates) | **POST** /browser/{browser_id}/detect_coordinates | Detect element coordinates using vision with optional smart targeting|
15
15
  |[**dialog**](#dialog) | **POST** /browser/{browser_id}/dialog | Dialogs: get, accept, dismiss|
16
16
  |[**emulate**](#emulate) | **POST** /browser/{browser_id}/emulate | Emulation: set, clear, list_devices|
17
17
  |[**executeCdp**](#executecdp) | **POST** /browser/{browser_id}/execute_cdp | Execute a Chrome DevTools Protocol command|
@@ -21,7 +21,8 @@ All URIs are relative to */api/v1*
21
21
  |[**getContent**](#getcontent) | **GET** /browser/{browser_id}/get_content | Get page HTML|
22
22
  |[**getElementData**](#getelementdata) | **GET** /browser/{browser_id}/get_element_data | Get element text, attribute, or property|
23
23
  |[**getUrl**](#geturl) | **GET** /browser/{browser_id}/get_url | Get current URL|
24
- |[**guiClick**](#guiclick) | **POST** /browser/{browser_id}/gui_click | GUI click by selector or coordinates|
24
+ |[**guiClick**](#guiclick) | **POST** /browser/{browser_id}/gui_click | GUI click by selector or coordinates with smart validation|
25
+ |[**guiClickXy**](#guiclickxy) | **POST** /browser/{browser_id}/gui_click_xy | MCP compatibility alias for coordinate-mode `gui_click`|
25
26
  |[**guiHoverXy**](#guihoverxy) | **POST** /browser/{browser_id}/gui_hover_xy | GUI hover at coordinates|
26
27
  |[**guiPressKeysXy**](#guipresskeysxy) | **POST** /browser/{browser_id}/gui_press_keys_xy | Press keys at coordinates (click to focus, then send keys)|
27
28
  |[**guiTypeXy**](#guitypexy) | **POST** /browser/{browser_id}/gui_type_xy | GUI type at coordinates - clicks then types text|
@@ -418,9 +419,9 @@ No authorization required
418
419
  [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
419
420
 
420
421
  # **detectCoordinates**
421
- > GenericResponse detectCoordinates(payload)
422
+ > DetectCoordinatesResult detectCoordinates(payload)
422
423
 
423
- Args: browser_id: Browser instance identifier prompt: Natural language description of element to find fx: Fractional x offset for click point (0.0=left, 0.5=center, 1.0=right). If None, auto-bias is applied for wide elements (0.25 for aspect ratio > 10). fy: Fractional y offset for click point (0.0=top, 0.5=center, 1.0=bottom).
424
+ Args: browser_id: Browser instance identifier prompt: Natural language description of element to find fx: Fractional x offset for click point (0.0=left, 0.5=center, 1.0=right). If None, auto-bias is applied for wide elements (0.25 for aspect ratio > 10). fy: Fractional y offset for click point (0.0=top, 0.5=center, 1.0=bottom). model: Optional vision model override for this request. stream: Optional vision streaming override for this request. hit_test: Detect-time validation mode: off, warn, or strict. Recommended for agents: `strict`. auto_snap: Auto-snap mode: off, nearest_clickable, or nearest_interactive. Recommended for agents: `nearest_clickable`. snap_radius: Maximum snap radius in CSS pixels. include_debug: Include detect debug diagnostics when available.
424
425
 
425
426
  ### Example
426
427
 
@@ -453,7 +454,7 @@ const { status, data } = await apiInstance.detectCoordinates(
453
454
 
454
455
  ### Return type
455
456
 
456
- **GenericResponse**
457
+ **DetectCoordinatesResult**
457
458
 
458
459
  ### Authorization
459
460
 
@@ -957,8 +958,9 @@ No authorization required
957
958
  [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
958
959
 
959
960
  # **guiClick**
960
- > GenericResponse guiClick(payload)
961
+ > GuiClickResult guiClick(payload)
961
962
 
963
+ Selector mode uses `selector` with optional `fx` / `fy` offsets. Coordinate mode uses `x` / `y` and supports smart targeting knobs such as `pre_click_validate`, `auto_snap`, and `post_click_feedback`. Recommended agent mode: - `pre_click_validate=\"strict\"` - `auto_snap=\"nearest_clickable\"` - `post_click_feedback=\"auto\"` MCP keeps `gui_click_xy` as a compatibility alias for coordinate-mode `gui_click`.
962
964
 
963
965
  ### Example
964
966
 
@@ -991,7 +993,62 @@ const { status, data } = await apiInstance.guiClick(
991
993
 
992
994
  ### Return type
993
995
 
994
- **GenericResponse**
996
+ **GuiClickResult**
997
+
998
+ ### Authorization
999
+
1000
+ No authorization required
1001
+
1002
+ ### HTTP request headers
1003
+
1004
+ - **Content-Type**: application/json
1005
+ - **Accept**: application/json
1006
+
1007
+
1008
+ ### HTTP response details
1009
+ | Status code | Description | Response headers |
1010
+ |-------------|-------------|------------------|
1011
+ |**200** | Success | - |
1012
+
1013
+ [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
1014
+
1015
+ # **guiClickXy**
1016
+ > GuiClickResult guiClickXy(payload)
1017
+
1018
+ This mirrors coordinate-mode `gui_click`, accepts the same smart-click options, and returns the same response contract.
1019
+
1020
+ ### Example
1021
+
1022
+ ```typescript
1023
+ import {
1024
+ BrowserApi,
1025
+ Configuration,
1026
+ GuiClickXYRequest
1027
+ } from 'airbrowser-client';
1028
+
1029
+ const configuration = new Configuration();
1030
+ const apiInstance = new BrowserApi(configuration);
1031
+
1032
+ let browserId: string; // (default to undefined)
1033
+ let payload: GuiClickXYRequest; //
1034
+
1035
+ const { status, data } = await apiInstance.guiClickXy(
1036
+ browserId,
1037
+ payload
1038
+ );
1039
+ ```
1040
+
1041
+ ### Parameters
1042
+
1043
+ |Name | Type | Description | Notes|
1044
+ |------------- | ------------- | ------------- | -------------|
1045
+ | **payload** | **GuiClickXYRequest**| | |
1046
+ | **browserId** | [**string**] | | defaults to undefined|
1047
+
1048
+
1049
+ ### Return type
1050
+
1051
+ **GuiClickResult**
995
1052
 
996
1053
  ### Authorization
997
1054
 
@@ -1983,7 +2040,7 @@ No authorization required
1983
2040
  [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
1984
2041
 
1985
2042
  # **whatIsVisible**
1986
- > GenericResponse whatIsVisible()
2043
+ > GenericResponse whatIsVisible(payload)
1987
2044
 
1988
2045
 
1989
2046
  ### Example
@@ -1991,16 +2048,19 @@ No authorization required
1991
2048
  ```typescript
1992
2049
  import {
1993
2050
  BrowserApi,
1994
- Configuration
2051
+ Configuration,
2052
+ WhatIsVisibleRequest
1995
2053
  } from 'airbrowser-client';
1996
2054
 
1997
2055
  const configuration = new Configuration();
1998
2056
  const apiInstance = new BrowserApi(configuration);
1999
2057
 
2000
2058
  let browserId: string; // (default to undefined)
2059
+ let payload: WhatIsVisibleRequest; //
2001
2060
 
2002
2061
  const { status, data } = await apiInstance.whatIsVisible(
2003
- browserId
2062
+ browserId,
2063
+ payload
2004
2064
  );
2005
2065
  ```
2006
2066
 
@@ -2008,6 +2068,7 @@ const { status, data } = await apiInstance.whatIsVisible(
2008
2068
 
2009
2069
  |Name | Type | Description | Notes|
2010
2070
  |------------- | ------------- | ------------- | -------------|
2071
+ | **payload** | **WhatIsVisibleRequest**| | |
2011
2072
  | **browserId** | [**string**] | | defaults to undefined|
2012
2073
 
2013
2074
 
@@ -2021,7 +2082,7 @@ No authorization required
2021
2082
 
2022
2083
  ### HTTP request headers
2023
2084
 
2024
- - **Content-Type**: Not defined
2085
+ - **Content-Type**: application/json
2025
2086
  - **Accept**: application/json
2026
2087
 
2027
2088
 
@@ -2031,4 +2092,3 @@ No authorization required
2031
2092
  |**200** | Success | - |
2032
2093
 
2033
2094
  [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
2034
-
@@ -0,0 +1,48 @@
1
+ # DetectCoordinatesData
2
+
3
+
4
+ ## Properties
5
+
6
+ Name | Type | Description | Notes
7
+ ------------ | ------------- | ------------- | -------------
8
+ **prompt** | **string** | Element description used | [optional] [default to undefined]
9
+ **bounding_box** | **object** | Element bounding box {x, y, width, height} | [optional] [default to undefined]
10
+ **click_point** | **object** | Recommended click point {x, y} | [optional] [default to undefined]
11
+ **confidence** | **number** | Detection confidence (0.0-1.0) | [optional] [default to undefined]
12
+ **outcome_status** | **string** | Machine-readable detect outcome status | [optional] [default to undefined]
13
+ **reason** | **string** | Machine-readable detect reason code | [optional] [default to undefined]
14
+ **reason_detail** | **string** | Human-readable reason detail | [optional] [default to undefined]
15
+ **resolved_target** | **object** | Resolved target details after validation or snapping | [optional] [default to undefined]
16
+ **resolved_click_point** | **object** | Validated or snapped click point {x, y} | [optional] [default to undefined]
17
+ **snap_result** | **object** | Details about any snap candidate that was applied | [optional] [default to undefined]
18
+ **recommended_next_action** | **string** | Suggested next action for callers | [optional] [default to undefined]
19
+ **screenshot_url** | **string** | URL to the screenshot | [optional] [default to undefined]
20
+ **image_size** | **object** | Original screenshot dimensions | [optional] [default to undefined]
21
+ **transform_info** | **object** | Coordinate transform metadata | [optional] [default to undefined]
22
+ **debug** | **object** | Optional smart-targeting debug details | [optional] [default to undefined]
23
+
24
+ ## Example
25
+
26
+ ```typescript
27
+ import { DetectCoordinatesData } from 'airbrowser-client';
28
+
29
+ const instance: DetectCoordinatesData = {
30
+ prompt,
31
+ bounding_box,
32
+ click_point,
33
+ confidence,
34
+ outcome_status,
35
+ reason,
36
+ reason_detail,
37
+ resolved_target,
38
+ resolved_click_point,
39
+ snap_result,
40
+ recommended_next_action,
41
+ screenshot_url,
42
+ image_size,
43
+ transform_info,
44
+ debug,
45
+ };
46
+ ```
47
+
48
+ [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
@@ -5,9 +5,15 @@
5
5
 
6
6
  Name | Type | Description | Notes
7
7
  ------------ | ------------- | ------------- | -------------
8
- **prompt** | **string** | prompt | [default to undefined]
9
- **fx** | **number** | fx | [optional] [default to undefined]
10
- **fy** | **number** | fy | [optional] [default to undefined]
8
+ **prompt** | **string** | Natural language description of element to find | [default to undefined]
9
+ **fx** | **number** | Relative X (0..1) within the detected element | [optional] [default to undefined]
10
+ **fy** | **number** | Relative Y (0..1) within the detected element | [optional] [default to undefined]
11
+ **model** | **string** | Optional vision model override for this request | [optional] [default to undefined]
12
+ **stream** | **boolean** | Optional vision streaming override for this request | [optional] [default to undefined]
13
+ **hit_test** | **string** | Detect-time validation mode | [optional] [default to HitTestEnum_Off]
14
+ **auto_snap** | **string** | Auto-snap mode for nearby targets | [optional] [default to AutoSnapEnum_Off]
15
+ **snap_radius** | **number** | Maximum snap radius in CSS pixels | [optional] [default to undefined]
16
+ **include_debug** | **boolean** | Include smart-targeting debug details | [optional] [default to false]
11
17
 
12
18
  ## Example
13
19
 
@@ -18,6 +24,12 @@ const instance: DetectCoordinatesRequest = {
18
24
  prompt,
19
25
  fx,
20
26
  fy,
27
+ model,
28
+ stream,
29
+ hit_test,
30
+ auto_snap,
31
+ snap_radius,
32
+ include_debug,
21
33
  };
22
34
  ```
23
35
 
@@ -0,0 +1,24 @@
1
+ # DetectCoordinatesResult
2
+
3
+
4
+ ## Properties
5
+
6
+ Name | Type | Description | Notes
7
+ ------------ | ------------- | ------------- | -------------
8
+ **success** | **boolean** | Operation success | [optional] [default to undefined]
9
+ **message** | **string** | Success message | [optional] [default to undefined]
10
+ **data** | [**DetectCoordinatesData**](DetectCoordinatesData.md) | Detect response payload | [optional] [default to undefined]
11
+
12
+ ## Example
13
+
14
+ ```typescript
15
+ import { DetectCoordinatesResult } from 'airbrowser-client';
16
+
17
+ const instance: DetectCoordinatesResult = {
18
+ success,
19
+ message,
20
+ data,
21
+ };
22
+ ```
23
+
24
+ [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
@@ -0,0 +1,44 @@
1
+ # GuiClickData
2
+
3
+
4
+ ## Properties
5
+
6
+ Name | Type | Description | Notes
7
+ ------------ | ------------- | ------------- | -------------
8
+ **status** | **string** | Legacy inner status | [optional] [default to undefined]
9
+ **success** | **boolean** | Legacy inner success flag | [optional] [default to undefined]
10
+ **message** | **string** | Legacy inner message | [optional] [default to undefined]
11
+ **x** | **number** | Requested or resolved screen X coordinate | [optional] [default to undefined]
12
+ **y** | **number** | Requested or resolved screen Y coordinate | [optional] [default to undefined]
13
+ **outcome_status** | **string** | Machine-readable click outcome status | [optional] [default to undefined]
14
+ **reason** | **string** | Machine-readable click reason code | [optional] [default to undefined]
15
+ **reason_detail** | **string** | Human-readable reason detail | [optional] [default to undefined]
16
+ **precheck** | **object** | Pre-click validation details | [optional] [default to undefined]
17
+ **execution** | **object** | Click execution details | [optional] [default to undefined]
18
+ **postcheck** | **object** | Post-click feedback details | [optional] [default to undefined]
19
+ **recommended_next_action** | **string** | Suggested next action for callers | [optional] [default to undefined]
20
+ **debug** | **object** | Optional smart-click debug details | [optional] [default to undefined]
21
+
22
+ ## Example
23
+
24
+ ```typescript
25
+ import { GuiClickData } from 'airbrowser-client';
26
+
27
+ const instance: GuiClickData = {
28
+ status,
29
+ success,
30
+ message,
31
+ x,
32
+ y,
33
+ outcome_status,
34
+ reason,
35
+ reason_detail,
36
+ precheck,
37
+ execution,
38
+ postcheck,
39
+ recommended_next_action,
40
+ debug,
41
+ };
42
+ ```
43
+
44
+ [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)