@tabstack/sdk 2.2.0 → 2.4.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 (86) hide show
  1. package/CHANGELOG.md +97 -0
  2. package/README.md +2 -2
  3. package/client.d.mts +3 -3
  4. package/client.d.mts.map +1 -1
  5. package/client.d.ts +3 -3
  6. package/client.d.ts.map +1 -1
  7. package/client.js +15 -17
  8. package/client.js.map +1 -1
  9. package/client.mjs +15 -17
  10. package/client.mjs.map +1 -1
  11. package/core/streaming.d.mts +1 -1
  12. package/core/streaming.d.mts.map +1 -1
  13. package/core/streaming.d.ts +1 -1
  14. package/core/streaming.d.ts.map +1 -1
  15. package/core/streaming.js +3 -2
  16. package/core/streaming.js.map +1 -1
  17. package/core/streaming.mjs +3 -2
  18. package/core/streaming.mjs.map +1 -1
  19. package/internal/parse.d.mts.map +1 -1
  20. package/internal/parse.d.ts.map +1 -1
  21. package/internal/parse.js +2 -2
  22. package/internal/parse.js.map +1 -1
  23. package/internal/parse.mjs +2 -2
  24. package/internal/parse.mjs.map +1 -1
  25. package/internal/request-options.d.mts +1 -0
  26. package/internal/request-options.d.mts.map +1 -1
  27. package/internal/request-options.d.ts +1 -0
  28. package/internal/request-options.d.ts.map +1 -1
  29. package/internal/request-options.js.map +1 -1
  30. package/internal/request-options.mjs.map +1 -1
  31. package/internal/utils/env.js +2 -2
  32. package/internal/utils/env.js.map +1 -1
  33. package/internal/utils/env.mjs +2 -2
  34. package/internal/utils/env.mjs.map +1 -1
  35. package/internal/utils/query.d.mts +5 -0
  36. package/internal/utils/query.d.mts.map +1 -0
  37. package/internal/utils/query.d.ts +5 -0
  38. package/internal/utils/query.d.ts.map +1 -0
  39. package/internal/utils/query.js +23 -0
  40. package/internal/utils/query.js.map +1 -0
  41. package/internal/utils/query.mjs +20 -0
  42. package/internal/utils/query.mjs.map +1 -0
  43. package/internal/utils.d.mts +1 -0
  44. package/internal/utils.d.ts +1 -0
  45. package/internal/utils.js +1 -0
  46. package/internal/utils.js.map +1 -1
  47. package/internal/utils.mjs +1 -0
  48. package/package.json +7 -1
  49. package/resources/agent.d.mts +46 -1
  50. package/resources/agent.d.mts.map +1 -1
  51. package/resources/agent.d.ts +46 -1
  52. package/resources/agent.d.ts.map +1 -1
  53. package/resources/agent.js +27 -0
  54. package/resources/agent.js.map +1 -1
  55. package/resources/agent.mjs +27 -0
  56. package/resources/agent.mjs.map +1 -1
  57. package/resources/extract.d.mts +12 -0
  58. package/resources/extract.d.mts.map +1 -1
  59. package/resources/extract.d.ts +12 -0
  60. package/resources/extract.d.ts.map +1 -1
  61. package/resources/generate.d.mts +7 -1
  62. package/resources/generate.d.mts.map +1 -1
  63. package/resources/generate.d.ts +7 -1
  64. package/resources/generate.d.ts.map +1 -1
  65. package/resources/index.d.mts +1 -1
  66. package/resources/index.d.mts.map +1 -1
  67. package/resources/index.d.ts +1 -1
  68. package/resources/index.d.ts.map +1 -1
  69. package/resources/index.js.map +1 -1
  70. package/resources/index.mjs.map +1 -1
  71. package/src/client.ts +22 -21
  72. package/src/core/streaming.ts +3 -1
  73. package/src/internal/parse.ts +12 -2
  74. package/src/internal/request-options.ts +1 -0
  75. package/src/internal/utils/env.ts +2 -2
  76. package/src/internal/utils/query.ts +23 -0
  77. package/src/internal/utils.ts +1 -0
  78. package/src/resources/agent.ts +63 -0
  79. package/src/resources/extract.ts +14 -0
  80. package/src/resources/generate.ts +8 -1
  81. package/src/resources/index.ts +2 -0
  82. package/src/version.ts +1 -1
  83. package/version.d.mts +1 -1
  84. package/version.d.ts +1 -1
  85. package/version.js +1 -1
  86. package/version.mjs +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/resources/agent.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;AAEtF,kDAA+C;AAG/C,oDAAmD;AAGnD,MAAa,KAAM,SAAQ,sBAAW;IACpC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+BG;IACH,QAAQ,CAAC,IAAyB,EAAE,OAAwB;QAC1D,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE;YACpC,IAAI;YACJ,GAAG,OAAO;YACV,OAAO,EAAE,IAAA,sBAAY,EAAC,CAAC,EAAE,MAAM,EAAE,mBAAmB,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YAC1E,MAAM,EAAE,IAAI;SACb,CAAsC,CAAC;IAC1C,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACH,QAAQ,CAAC,IAAyB,EAAE,OAAwB;QAC1D,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE;YACpC,IAAI;YACJ,GAAG,OAAO;YACV,OAAO,EAAE,IAAA,sBAAY,EAAC,CAAC,EAAE,MAAM,EAAE,mBAAmB,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YAC1E,MAAM,EAAE,IAAI;SACb,CAAsC,CAAC;IAC1C,CAAC;CACF;AAhFD,sBAgFC"}
1
+ {"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/resources/agent.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;AAEtF,kDAA+C;AAG/C,oDAAmD;AAEnD,oDAA8C;AAE9C,MAAa,KAAM,SAAQ,sBAAW;IACpC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+BG;IACH,QAAQ,CAAC,IAAyB,EAAE,OAAwB;QAC1D,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE;YACpC,IAAI;YACJ,GAAG,OAAO;YACV,OAAO,EAAE,IAAA,sBAAY,EAAC,CAAC,EAAE,MAAM,EAAE,mBAAmB,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YAC1E,MAAM,EAAE,IAAI;YACZ,qBAAqB,EAAE,IAAI;SAC5B,CAAsC,CAAC;IAC1C,CAAC;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,aAAa,CACX,SAAiB,EACjB,IAA8B,EAC9B,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAA,WAAI,EAAA,aAAa,SAAS,QAAQ,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACrF,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACH,QAAQ,CAAC,IAAyB,EAAE,OAAwB;QAC1D,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE;YACpC,IAAI;YACJ,GAAG,OAAO;YACV,OAAO,EAAE,IAAA,sBAAY,EAAC,CAAC,EAAE,MAAM,EAAE,mBAAmB,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YAC1E,MAAM,EAAE,IAAI;YACZ,qBAAqB,EAAE,IAAI;SAC5B,CAAsC,CAAC;IAC1C,CAAC;CACF;AA/GD,sBA+GC"}
@@ -1,6 +1,7 @@
1
1
  // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
  import { APIResource } from "../core/resource.mjs";
3
3
  import { buildHeaders } from "../internal/headers.mjs";
4
+ import { path } from "../internal/utils/path.mjs";
4
5
  export class Agent extends APIResource {
5
6
  /**
6
7
  * Execute AI-powered browser automation tasks using natural language with optional
@@ -40,8 +41,33 @@ export class Agent extends APIResource {
40
41
  ...options,
41
42
  headers: buildHeaders([{ Accept: 'text/event-stream' }, options?.headers]),
42
43
  stream: true,
44
+ __synthesizeEventData: true,
43
45
  });
44
46
  }
47
+ /**
48
+ * Submit a response to an interactive form data request from an in-progress
49
+ * automation task. When the AI agent encounters a form requiring user data, it
50
+ * emits an `interactive:form_data:request` or `interactive:form_data:error` SSE
51
+ * event containing a `requestId`. Use this endpoint to provide the requested data
52
+ * or cancel the request.
53
+ *
54
+ * **Lifecycle:**
55
+ *
56
+ * - Input requests expire after 2 minutes by default
57
+ * - Expired or already-answered requests return `410 Gone`
58
+ * - Successful submissions return `202 Accepted` (fire-and-forget from caller's
59
+ * perspective)
60
+ *
61
+ * @example
62
+ * ```ts
63
+ * const response = await client.agent.automateInput(
64
+ * 'requestID',
65
+ * );
66
+ * ```
67
+ */
68
+ automateInput(requestID, body, options) {
69
+ return this._client.post(path `/automate/${requestID}/input`, { body, ...options });
70
+ }
45
71
  /**
46
72
  * Execute AI-powered research queries that search the web, analyze sources, and
47
73
  * synthesize comprehensive answers. This endpoint **always streams** responses
@@ -78,6 +104,7 @@ export class Agent extends APIResource {
78
104
  ...options,
79
105
  headers: buildHeaders([{ Accept: 'text/event-stream' }, options?.headers]),
80
106
  stream: true,
107
+ __synthesizeEventData: true,
81
108
  });
82
109
  }
83
110
  }
@@ -1 +1 @@
1
- {"version":3,"file":"agent.mjs","sourceRoot":"","sources":["../src/resources/agent.ts"],"names":[],"mappings":"AAAA,sFAAsF;OAE/E,EAAE,WAAW,EAAE;OAGf,EAAE,YAAY,EAAE;AAGvB,MAAM,OAAO,KAAM,SAAQ,WAAW;IACpC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+BG;IACH,QAAQ,CAAC,IAAyB,EAAE,OAAwB;QAC1D,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE;YACpC,IAAI;YACJ,GAAG,OAAO;YACV,OAAO,EAAE,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,mBAAmB,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YAC1E,MAAM,EAAE,IAAI;SACb,CAAsC,CAAC;IAC1C,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACH,QAAQ,CAAC,IAAyB,EAAE,OAAwB;QAC1D,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE;YACpC,IAAI;YACJ,GAAG,OAAO;YACV,OAAO,EAAE,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,mBAAmB,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YAC1E,MAAM,EAAE,IAAI;SACb,CAAsC,CAAC;IAC1C,CAAC;CACF"}
1
+ {"version":3,"file":"agent.mjs","sourceRoot":"","sources":["../src/resources/agent.ts"],"names":[],"mappings":"AAAA,sFAAsF;OAE/E,EAAE,WAAW,EAAE;OAGf,EAAE,YAAY,EAAE;OAEhB,EAAE,IAAI,EAAE;AAEf,MAAM,OAAO,KAAM,SAAQ,WAAW;IACpC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+BG;IACH,QAAQ,CAAC,IAAyB,EAAE,OAAwB;QAC1D,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE;YACpC,IAAI;YACJ,GAAG,OAAO;YACV,OAAO,EAAE,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,mBAAmB,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YAC1E,MAAM,EAAE,IAAI;YACZ,qBAAqB,EAAE,IAAI;SAC5B,CAAsC,CAAC;IAC1C,CAAC;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,aAAa,CACX,SAAiB,EACjB,IAA8B,EAC9B,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAA,aAAa,SAAS,QAAQ,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IACrF,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACH,QAAQ,CAAC,IAAyB,EAAE,OAAwB;QAC1D,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE;YACpC,IAAI;YACJ,GAAG,OAAO;YACV,OAAO,EAAE,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,mBAAmB,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YAC1E,MAAM,EAAE,IAAI;YACZ,qBAAqB,EAAE,IAAI;SAC5B,CAAsC,CAAC;IAC1C,CAAC;CACF"}
@@ -149,6 +149,12 @@ export interface ExtractJsonParams {
149
149
  * URL to fetch and extract data from
150
150
  */
151
151
  url: string;
152
+ /**
153
+ * Fetch effort level controlling speed vs. capability tradeoff. "min": fastest, no
154
+ * fallback (1-5s). "standard": balanced with enhanced reliability (default,
155
+ * 3-15s). "max": full browser rendering for JS-heavy sites (15-60s).
156
+ */
157
+ effort?: 'min' | 'standard' | 'max';
152
158
  /**
153
159
  * Optional geotargeting parameters for proxy requests
154
160
  */
@@ -175,6 +181,12 @@ export interface ExtractMarkdownParams {
175
181
  * URL to fetch and convert to markdown
176
182
  */
177
183
  url: string;
184
+ /**
185
+ * Fetch effort level controlling speed vs. capability tradeoff. "min": fastest, no
186
+ * fallback (1-5s). "standard": balanced with enhanced reliability (default,
187
+ * 3-15s). "max": full browser rendering for JS-heavy sites (15-60s).
188
+ */
189
+ effort?: 'min' | 'standard' | 'max';
178
190
  /**
179
191
  * Optional geotargeting parameters for proxy requests
180
192
  */
@@ -1 +1 @@
1
- {"version":3,"file":"extract.d.mts","sourceRoot":"","sources":["../src/resources/extract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"extract.d.mts","sourceRoot":"","sources":["../src/resources/extract.ts"],"names":[],"mappings":"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"}
@@ -149,6 +149,12 @@ export interface ExtractJsonParams {
149
149
  * URL to fetch and extract data from
150
150
  */
151
151
  url: string;
152
+ /**
153
+ * Fetch effort level controlling speed vs. capability tradeoff. "min": fastest, no
154
+ * fallback (1-5s). "standard": balanced with enhanced reliability (default,
155
+ * 3-15s). "max": full browser rendering for JS-heavy sites (15-60s).
156
+ */
157
+ effort?: 'min' | 'standard' | 'max';
152
158
  /**
153
159
  * Optional geotargeting parameters for proxy requests
154
160
  */
@@ -175,6 +181,12 @@ export interface ExtractMarkdownParams {
175
181
  * URL to fetch and convert to markdown
176
182
  */
177
183
  url: string;
184
+ /**
185
+ * Fetch effort level controlling speed vs. capability tradeoff. "min": fastest, no
186
+ * fallback (1-5s). "standard": balanced with enhanced reliability (default,
187
+ * 3-15s). "max": full browser rendering for JS-heavy sites (15-60s).
188
+ */
189
+ effort?: 'min' | 'standard' | 'max';
178
190
  /**
179
191
  * Optional geotargeting parameters for proxy requests
180
192
  */
@@ -1 +1 @@
1
- {"version":3,"file":"extract.d.ts","sourceRoot":"","sources":["../src/resources/extract.ts"],"names":[],"mappings":"OAEO,EAAE,WAAW,EAAE;OACf,EAAE,UAAU,EAAE;OACd,EAAE,cAAc,EAAE;AAEzB,qBAAa,OAAQ,SAAQ,WAAW;IACtC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAkCG;IACH,IAAI,CAAC,IAAI,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,CAAC,mBAAmB,CAAC;IAIxF;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,IAAI,EAAE,qBAAqB,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,CAAC,uBAAuB,CAAC;CAGrG;AAED,MAAM,MAAM,mBAAmB,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,CAAC;AAE7D,MAAM,WAAW,uBAAuB;IACtC;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;OAEG;IACH,QAAQ,CAAC,EAAE,uBAAuB,CAAC,QAAQ,CAAC;CAC7C;AAED,yBAAiB,uBAAuB,CAAC;IACvC;;OAEG;IACH,UAAiB,QAAQ;QACvB;;WAEG;QACH,MAAM,CAAC,EAAE,MAAM,CAAC;QAEhB;;WAEG;QACH,UAAU,CAAC,EAAE,MAAM,CAAC;QAEpB;;WAEG;QACH,OAAO,CAAC,EAAE,MAAM,CAAC;QAEjB;;WAEG;QACH,WAAW,CAAC,EAAE,MAAM,CAAC;QAErB;;WAEG;QACH,KAAK,CAAC,EAAE,MAAM,CAAC;QAEf;;WAEG;QACH,QAAQ,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QAEzB;;WAEG;QACH,WAAW,CAAC,EAAE,MAAM,CAAC;QAErB;;WAEG;QACH,UAAU,CAAC,EAAE,MAAM,CAAC;QAEpB;;WAEG;QACH,WAAW,CAAC,EAAE,MAAM,CAAC;QAErB;;WAEG;QACH,QAAQ,CAAC,EAAE,MAAM,CAAC;QAElB;;WAEG;QACH,SAAS,CAAC,EAAE,MAAM,CAAC;QAEnB;;WAEG;QACH,SAAS,CAAC,EAAE,MAAM,CAAC;QAEnB;;;WAGG;QACH,OAAO,CAAC,EAAE,MAAM,CAAC;QAEjB;;WAEG;QACH,KAAK,CAAC,EAAE,MAAM,CAAC;QAEf;;WAEG;QACH,IAAI,CAAC,EAAE,MAAM,CAAC;QAEd;;WAEG;QACH,GAAG,CAAC,EAAE,MAAM,CAAC;KACd;CACF;AAED,MAAM,WAAW,iBAAiB;IAChC;;OAEG;IACH,WAAW,EAAE,OAAO,CAAC;IAErB;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;OAEG;IACH,UAAU,CAAC,EAAE,iBAAiB,CAAC,SAAS,CAAC;IAEzC;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,yBAAiB,iBAAiB,CAAC;IACjC;;OAEG;IACH,UAAiB,SAAS;QACxB;;;WAGG;QACH,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB;CACF;AAED,MAAM,WAAW,qBAAqB;IACpC;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;OAEG;IACH,UAAU,CAAC,EAAE,qBAAqB,CAAC,SAAS,CAAC;IAE7C;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,yBAAiB,qBAAqB,CAAC;IACrC;;OAEG;IACH,UAAiB,SAAS;QACxB;;;WAGG;QACH,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB;CACF;AAED,MAAM,CAAC,OAAO,WAAW,OAAO,CAAC;IAC/B,OAAO,EACL,KAAK,mBAAmB,IAAI,mBAAmB,EAC/C,KAAK,uBAAuB,IAAI,uBAAuB,EACvD,KAAK,iBAAiB,IAAI,iBAAiB,EAC3C,KAAK,qBAAqB,IAAI,qBAAqB,GACpD,CAAC;CACH"}
1
+ {"version":3,"file":"extract.d.ts","sourceRoot":"","sources":["../src/resources/extract.ts"],"names":[],"mappings":"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"}
@@ -41,7 +41,7 @@ export type GenerateJsonResponse = {
41
41
  };
42
42
  export interface GenerateJsonParams {
43
43
  /**
44
- * Instructions describing how to transform the data
44
+ * Instructions describing how to transform the data. Maximum 20,000 characters.
45
45
  */
46
46
  instructions: string;
47
47
  /**
@@ -52,6 +52,12 @@ export interface GenerateJsonParams {
52
52
  * URL to fetch content from
53
53
  */
54
54
  url: string;
55
+ /**
56
+ * Fetch effort level controlling speed vs. capability tradeoff. "min": fastest, no
57
+ * fallback (1-5s). "standard": balanced with enhanced reliability (default,
58
+ * 3-15s). "max": full browser rendering for JS-heavy sites (15-60s).
59
+ */
60
+ effort?: 'min' | 'standard' | 'max';
55
61
  /**
56
62
  * Optional geotargeting parameters for proxy requests
57
63
  */
@@ -1 +1 @@
1
- {"version":3,"file":"generate.d.mts","sourceRoot":"","sources":["../src/resources/generate.ts"],"names":[],"mappings":"OAEO,EAAE,WAAW,EAAE;OACf,EAAE,UAAU,EAAE;OACd,EAAE,cAAc,EAAE;AAEzB,qBAAa,QAAS,SAAQ,WAAW;IACvC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+BG;IACH,IAAI,CAAC,IAAI,EAAE,kBAAkB,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,CAAC,oBAAoB,CAAC;CAG3F;AAED,MAAM,MAAM,oBAAoB,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,CAAC;AAE9D,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,YAAY,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,WAAW,EAAE,OAAO,CAAC;IAErB;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;OAEG;IACH,UAAU,CAAC,EAAE,kBAAkB,CAAC,SAAS,CAAC;IAE1C;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,yBAAiB,kBAAkB,CAAC;IAClC;;OAEG;IACH,UAAiB,SAAS;QACxB;;;WAGG;QACH,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB;CACF;AAED,MAAM,CAAC,OAAO,WAAW,QAAQ,CAAC;IAChC,OAAO,EAAE,KAAK,oBAAoB,IAAI,oBAAoB,EAAE,KAAK,kBAAkB,IAAI,kBAAkB,EAAE,CAAC;CAC7G"}
1
+ {"version":3,"file":"generate.d.mts","sourceRoot":"","sources":["../src/resources/generate.ts"],"names":[],"mappings":"OAEO,EAAE,WAAW,EAAE;OACf,EAAE,UAAU,EAAE;OACd,EAAE,cAAc,EAAE;AAEzB,qBAAa,QAAS,SAAQ,WAAW;IACvC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+BG;IACH,IAAI,CAAC,IAAI,EAAE,kBAAkB,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,CAAC,oBAAoB,CAAC;CAG3F;AAED,MAAM,MAAM,oBAAoB,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,CAAC;AAE9D,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,YAAY,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,WAAW,EAAE,OAAO,CAAC;IAErB;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;;;OAIG;IACH,MAAM,CAAC,EAAE,KAAK,GAAG,UAAU,GAAG,KAAK,CAAC;IAEpC;;OAEG;IACH,UAAU,CAAC,EAAE,kBAAkB,CAAC,SAAS,CAAC;IAE1C;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,yBAAiB,kBAAkB,CAAC;IAClC;;OAEG;IACH,UAAiB,SAAS;QACxB;;;WAGG;QACH,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB;CACF;AAED,MAAM,CAAC,OAAO,WAAW,QAAQ,CAAC;IAChC,OAAO,EAAE,KAAK,oBAAoB,IAAI,oBAAoB,EAAE,KAAK,kBAAkB,IAAI,kBAAkB,EAAE,CAAC;CAC7G"}
@@ -41,7 +41,7 @@ export type GenerateJsonResponse = {
41
41
  };
42
42
  export interface GenerateJsonParams {
43
43
  /**
44
- * Instructions describing how to transform the data
44
+ * Instructions describing how to transform the data. Maximum 20,000 characters.
45
45
  */
46
46
  instructions: string;
47
47
  /**
@@ -52,6 +52,12 @@ export interface GenerateJsonParams {
52
52
  * URL to fetch content from
53
53
  */
54
54
  url: string;
55
+ /**
56
+ * Fetch effort level controlling speed vs. capability tradeoff. "min": fastest, no
57
+ * fallback (1-5s). "standard": balanced with enhanced reliability (default,
58
+ * 3-15s). "max": full browser rendering for JS-heavy sites (15-60s).
59
+ */
60
+ effort?: 'min' | 'standard' | 'max';
55
61
  /**
56
62
  * Optional geotargeting parameters for proxy requests
57
63
  */
@@ -1 +1 @@
1
- {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../src/resources/generate.ts"],"names":[],"mappings":"OAEO,EAAE,WAAW,EAAE;OACf,EAAE,UAAU,EAAE;OACd,EAAE,cAAc,EAAE;AAEzB,qBAAa,QAAS,SAAQ,WAAW;IACvC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+BG;IACH,IAAI,CAAC,IAAI,EAAE,kBAAkB,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,CAAC,oBAAoB,CAAC;CAG3F;AAED,MAAM,MAAM,oBAAoB,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,CAAC;AAE9D,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,YAAY,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,WAAW,EAAE,OAAO,CAAC;IAErB;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;OAEG;IACH,UAAU,CAAC,EAAE,kBAAkB,CAAC,SAAS,CAAC;IAE1C;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,yBAAiB,kBAAkB,CAAC;IAClC;;OAEG;IACH,UAAiB,SAAS;QACxB;;;WAGG;QACH,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB;CACF;AAED,MAAM,CAAC,OAAO,WAAW,QAAQ,CAAC;IAChC,OAAO,EAAE,KAAK,oBAAoB,IAAI,oBAAoB,EAAE,KAAK,kBAAkB,IAAI,kBAAkB,EAAE,CAAC;CAC7G"}
1
+ {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../src/resources/generate.ts"],"names":[],"mappings":"OAEO,EAAE,WAAW,EAAE;OACf,EAAE,UAAU,EAAE;OACd,EAAE,cAAc,EAAE;AAEzB,qBAAa,QAAS,SAAQ,WAAW;IACvC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+BG;IACH,IAAI,CAAC,IAAI,EAAE,kBAAkB,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,UAAU,CAAC,oBAAoB,CAAC;CAG3F;AAED,MAAM,MAAM,oBAAoB,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,CAAC;AAE9D,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,YAAY,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,WAAW,EAAE,OAAO,CAAC;IAErB;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;;;OAIG;IACH,MAAM,CAAC,EAAE,KAAK,GAAG,UAAU,GAAG,KAAK,CAAC;IAEpC;;OAEG;IACH,UAAU,CAAC,EAAE,kBAAkB,CAAC,SAAS,CAAC;IAE1C;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,yBAAiB,kBAAkB,CAAC;IAClC;;OAEG;IACH,UAAiB,SAAS;QACxB;;;WAGG;QACH,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB;CACF;AAED,MAAM,CAAC,OAAO,WAAW,QAAQ,CAAC;IAChC,OAAO,EAAE,KAAK,oBAAoB,IAAI,oBAAoB,EAAE,KAAK,kBAAkB,IAAI,kBAAkB,EAAE,CAAC;CAC7G"}
@@ -1,4 +1,4 @@
1
- export { Agent, type AutomateEvent, type ResearchEvent, type AgentAutomateParams, type AgentResearchParams, } from "./agent.mjs";
1
+ export { Agent, type AutomateEvent, type ResearchEvent, type AgentAutomateInputResponse, type AgentAutomateParams, type AgentAutomateInputParams, type AgentResearchParams, } from "./agent.mjs";
2
2
  export { Extract, type ExtractJsonResponse, type ExtractMarkdownResponse, type ExtractJsonParams, type ExtractMarkdownParams, } from "./extract.mjs";
3
3
  export { Generate, type GenerateJsonResponse, type GenerateJsonParams } from "./generate.mjs";
4
4
  //# sourceMappingURL=index.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../src/resources/index.ts"],"names":[],"mappings":"OAEO,EACL,KAAK,EACL,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,GACzB;OACM,EACL,OAAO,EACP,KAAK,mBAAmB,EACxB,KAAK,uBAAuB,EAC5B,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,GAC3B;OACM,EAAE,QAAQ,EAAE,KAAK,oBAAoB,EAAE,KAAK,kBAAkB,EAAE"}
1
+ {"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../src/resources/index.ts"],"names":[],"mappings":"OAEO,EACL,KAAK,EACL,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,0BAA0B,EAC/B,KAAK,mBAAmB,EACxB,KAAK,wBAAwB,EAC7B,KAAK,mBAAmB,GACzB;OACM,EACL,OAAO,EACP,KAAK,mBAAmB,EACxB,KAAK,uBAAuB,EAC5B,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,GAC3B;OACM,EAAE,QAAQ,EAAE,KAAK,oBAAoB,EAAE,KAAK,kBAAkB,EAAE"}
@@ -1,4 +1,4 @@
1
- export { Agent, type AutomateEvent, type ResearchEvent, type AgentAutomateParams, type AgentResearchParams, } from "./agent.js";
1
+ export { Agent, type AutomateEvent, type ResearchEvent, type AgentAutomateInputResponse, type AgentAutomateParams, type AgentAutomateInputParams, type AgentResearchParams, } from "./agent.js";
2
2
  export { Extract, type ExtractJsonResponse, type ExtractMarkdownResponse, type ExtractJsonParams, type ExtractMarkdownParams, } from "./extract.js";
3
3
  export { Generate, type GenerateJsonResponse, type GenerateJsonParams } from "./generate.js";
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/resources/index.ts"],"names":[],"mappings":"OAEO,EACL,KAAK,EACL,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,GACzB;OACM,EACL,OAAO,EACP,KAAK,mBAAmB,EACxB,KAAK,uBAAuB,EAC5B,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,GAC3B;OACM,EAAE,QAAQ,EAAE,KAAK,oBAAoB,EAAE,KAAK,kBAAkB,EAAE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/resources/index.ts"],"names":[],"mappings":"OAEO,EACL,KAAK,EACL,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,0BAA0B,EAC/B,KAAK,mBAAmB,EACxB,KAAK,wBAAwB,EAC7B,KAAK,mBAAmB,GACzB;OACM,EACL,OAAO,EACP,KAAK,mBAAmB,EACxB,KAAK,uBAAuB,EAC5B,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,GAC3B;OACM,EAAE,QAAQ,EAAE,KAAK,oBAAoB,EAAE,KAAK,kBAAkB,EAAE"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/resources/index.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;AAEtF,oCAMiB;AALf,8FAAA,KAAK,OAAA;AAMP,wCAMmB;AALjB,kGAAA,OAAO,OAAA;AAMT,0CAA0F;AAAjF,oGAAA,QAAQ,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/resources/index.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;AAEtF,oCAQiB;AAPf,8FAAA,KAAK,OAAA;AAQP,wCAMmB;AALjB,kGAAA,OAAO,OAAA;AAMT,0CAA0F;AAAjF,oGAAA,QAAQ,OAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sourceRoot":"","sources":["../src/resources/index.ts"],"names":[],"mappings":"AAAA,sFAAsF;OAE/E,EACL,KAAK,GAKN;OACM,EACL,OAAO,GAKR;OACM,EAAE,QAAQ,EAAsD"}
1
+ {"version":3,"file":"index.mjs","sourceRoot":"","sources":["../src/resources/index.ts"],"names":[],"mappings":"AAAA,sFAAsF;OAE/E,EACL,KAAK,GAON;OACM,EACL,OAAO,GAKR;OACM,EAAE,QAAQ,EAAsD"}
package/src/client.ts CHANGED
@@ -11,6 +11,7 @@ import type { APIResponseProps } from './internal/parse';
11
11
  import { getPlatformHeaders } from './internal/detect-platform';
12
12
  import * as Shims from './internal/shims';
13
13
  import * as Opts from './internal/request-options';
14
+ import { stringifyQuery } from './internal/utils/query';
14
15
  import { VERSION } from './version';
15
16
  import * as Errors from './core/error';
16
17
  import * as Uploads from './core/uploads';
@@ -18,6 +19,8 @@ import * as API from './resources/index';
18
19
  import { APIPromise } from './core/api-promise';
19
20
  import {
20
21
  Agent,
22
+ AgentAutomateInputParams,
23
+ AgentAutomateInputResponse,
21
24
  AgentAutomateParams,
22
25
  AgentResearchParams,
23
26
  AutomateEvent,
@@ -227,21 +230,8 @@ export class Tabstack {
227
230
  /**
228
231
  * Basic re-implementation of `qs.stringify` for primitive types.
229
232
  */
230
- protected stringifyQuery(query: Record<string, unknown>): string {
231
- return Object.entries(query)
232
- .filter(([_, value]) => typeof value !== 'undefined')
233
- .map(([key, value]) => {
234
- if (typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean') {
235
- return `${encodeURIComponent(key)}=${encodeURIComponent(value)}`;
236
- }
237
- if (value === null) {
238
- return `${encodeURIComponent(key)}=`;
239
- }
240
- throw new Errors.TabstackError(
241
- `Cannot stringify type ${typeof value}; Expected string, number, boolean, or null. If you need to pass nested query parameters, you can manually encode them, e.g. { query: { 'foo[key1]': value1, 'foo[key2]': value2 } }, and please open a GitHub issue requesting better support for your use case.`,
242
- );
243
- })
244
- .join('&');
233
+ protected stringifyQuery(query: object | Record<string, unknown>): string {
234
+ return stringifyQuery(query);
245
235
  }
246
236
 
247
237
  private getUserAgent(): string {
@@ -273,12 +263,13 @@ export class Tabstack {
273
263
  : new URL(baseURL + (baseURL.endsWith('/') && path.startsWith('/') ? path.slice(1) : path));
274
264
 
275
265
  const defaultQuery = this.defaultQuery();
276
- if (!isEmptyObj(defaultQuery)) {
277
- query = { ...defaultQuery, ...query };
266
+ const pathQuery = Object.fromEntries(url.searchParams);
267
+ if (!isEmptyObj(defaultQuery) || !isEmptyObj(pathQuery)) {
268
+ query = { ...pathQuery, ...defaultQuery, ...query };
278
269
  }
279
270
 
280
271
  if (typeof query === 'object' && query && !Array.isArray(query)) {
281
- url.search = this.stringifyQuery(query as Record<string, unknown>);
272
+ url.search = this.stringifyQuery(query);
282
273
  }
283
274
 
284
275
  return url.toString();
@@ -583,9 +574,9 @@ export class Tabstack {
583
574
  }
584
575
  }
585
576
 
586
- // If the API asks us to wait a certain amount of time (and it's a reasonable amount),
587
- // just do what it says, but otherwise calculate a default
588
- if (!(timeoutMillis && 0 <= timeoutMillis && timeoutMillis < 60 * 1000)) {
577
+ // If the API asks us to wait a certain amount of time, just do what it
578
+ // says, but otherwise calculate a default
579
+ if (timeoutMillis === undefined) {
589
580
  const maxRetries = options.maxRetries ?? this.maxRetries;
590
581
  timeoutMillis = this.calculateDefaultRetryTimeoutMillis(retriesRemaining, maxRetries);
591
582
  }
@@ -711,6 +702,14 @@ export class Tabstack {
711
702
  (Symbol.iterator in body && 'next' in body && typeof body.next === 'function'))
712
703
  ) {
713
704
  return { bodyHeaders: undefined, body: Shims.ReadableStreamFrom(body as AsyncIterable<Uint8Array>) };
705
+ } else if (
706
+ typeof body === 'object' &&
707
+ headers.values.get('content-type') === 'application/x-www-form-urlencoded'
708
+ ) {
709
+ return {
710
+ bodyHeaders: { 'content-type': 'application/x-www-form-urlencoded' },
711
+ body: this.stringifyQuery(body),
712
+ };
714
713
  } else {
715
714
  return this.#encoder({ body, headers });
716
715
  }
@@ -751,7 +750,9 @@ export declare namespace Tabstack {
751
750
  Agent as Agent,
752
751
  type AutomateEvent as AutomateEvent,
753
752
  type ResearchEvent as ResearchEvent,
753
+ type AgentAutomateInputResponse as AgentAutomateInputResponse,
754
754
  type AgentAutomateParams as AgentAutomateParams,
755
+ type AgentAutomateInputParams as AgentAutomateInputParams,
755
756
  type AgentResearchParams as AgentResearchParams,
756
757
  };
757
758
 
@@ -33,6 +33,7 @@ export class Stream<Item> implements AsyncIterable<Item> {
33
33
  response: Response,
34
34
  controller: AbortController,
35
35
  client?: Tabstack,
36
+ synthesizeEventData?: boolean,
36
37
  ): Stream<Item> {
37
38
  let consumed = false;
38
39
  const logger = client ? loggerFor(client) : console;
@@ -46,7 +47,8 @@ export class Stream<Item> implements AsyncIterable<Item> {
46
47
  try {
47
48
  for await (const sse of _iterSSEMessages(response, controller)) {
48
49
  try {
49
- yield JSON.parse(sse.data) as Item;
50
+ const data = JSON.parse(sse.data);
51
+ yield (synthesizeEventData ? { event: sse.event, data } : data) as Item;
50
52
  } catch (e) {
51
53
  logger.error(`Could not parse message into JSON:`, sse.data);
52
54
  logger.error(`From chunk:`, sse.raw);
@@ -24,10 +24,20 @@ export async function defaultParseResponse<T>(client: Tabstack, props: APIRespon
24
24
  // that if you set `stream: true` the response type must also be `Stream<T>`
25
25
 
26
26
  if (props.options.__streamClass) {
27
- return props.options.__streamClass.fromSSEResponse(response, props.controller, client) as any;
27
+ return props.options.__streamClass.fromSSEResponse(
28
+ response,
29
+ props.controller,
30
+ client,
31
+ props.options.__synthesizeEventData,
32
+ ) as any;
28
33
  }
29
34
 
30
- return Stream.fromSSEResponse(response, props.controller, client) as any;
35
+ return Stream.fromSSEResponse(
36
+ response,
37
+ props.controller,
38
+ client,
39
+ props.options.__synthesizeEventData,
40
+ ) as any;
31
41
  }
32
42
 
33
43
  // fetch refuses to read the body when the status code is 204.
@@ -78,6 +78,7 @@ export type RequestOptions = {
78
78
 
79
79
  __binaryResponse?: boolean | undefined;
80
80
  __streamClass?: typeof Stream;
81
+ __synthesizeEventData?: boolean;
81
82
  };
82
83
 
83
84
  export type EncodedContent = { bodyHeaders: HeadersLike; body: BodyInit };
@@ -9,10 +9,10 @@
9
9
  */
10
10
  export const readEnv = (env: string): string | undefined => {
11
11
  if (typeof (globalThis as any).process !== 'undefined') {
12
- return (globalThis as any).process.env?.[env]?.trim() ?? undefined;
12
+ return (globalThis as any).process.env?.[env]?.trim() || undefined;
13
13
  }
14
14
  if (typeof (globalThis as any).Deno !== 'undefined') {
15
- return (globalThis as any).Deno.env?.get?.(env)?.trim();
15
+ return (globalThis as any).Deno.env?.get?.(env)?.trim() || undefined;
16
16
  }
17
17
  return undefined;
18
18
  };
@@ -0,0 +1,23 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ import { TabstackError } from '../../core/error';
4
+
5
+ /**
6
+ * Basic re-implementation of `qs.stringify` for primitive types.
7
+ */
8
+ export function stringifyQuery(query: object | Record<string, unknown>) {
9
+ return Object.entries(query)
10
+ .filter(([_, value]) => typeof value !== 'undefined')
11
+ .map(([key, value]) => {
12
+ if (typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean') {
13
+ return `${encodeURIComponent(key)}=${encodeURIComponent(value)}`;
14
+ }
15
+ if (value === null) {
16
+ return `${encodeURIComponent(key)}=`;
17
+ }
18
+ throw new TabstackError(
19
+ `Cannot stringify type ${typeof value}; Expected string, number, boolean, or null. If you need to pass nested query parameters, you can manually encode them, e.g. { query: { 'foo[key1]': value1, 'foo[key2]': value2 } }, and please open a GitHub issue requesting better support for your use case.`,
20
+ );
21
+ })
22
+ .join('&');
23
+ }
@@ -6,3 +6,4 @@ export * from './utils/env';
6
6
  export * from './utils/log';
7
7
  export * from './utils/uuid';
8
8
  export * from './utils/sleep';
9
+ export * from './utils/query';
@@ -5,6 +5,7 @@ import { APIPromise } from '../core/api-promise';
5
5
  import { Stream } from '../core/streaming';
6
6
  import { buildHeaders } from '../internal/headers';
7
7
  import { RequestOptions } from '../internal/request-options';
8
+ import { path } from '../internal/utils/path';
8
9
 
9
10
  export class Agent extends APIResource {
10
11
  /**
@@ -45,9 +46,39 @@ export class Agent extends APIResource {
45
46
  ...options,
46
47
  headers: buildHeaders([{ Accept: 'text/event-stream' }, options?.headers]),
47
48
  stream: true,
49
+ __synthesizeEventData: true,
48
50
  }) as APIPromise<Stream<AutomateEvent>>;
49
51
  }
50
52
 
53
+ /**
54
+ * Submit a response to an interactive form data request from an in-progress
55
+ * automation task. When the AI agent encounters a form requiring user data, it
56
+ * emits an `interactive:form_data:request` or `interactive:form_data:error` SSE
57
+ * event containing a `requestId`. Use this endpoint to provide the requested data
58
+ * or cancel the request.
59
+ *
60
+ * **Lifecycle:**
61
+ *
62
+ * - Input requests expire after 2 minutes by default
63
+ * - Expired or already-answered requests return `410 Gone`
64
+ * - Successful submissions return `202 Accepted` (fire-and-forget from caller's
65
+ * perspective)
66
+ *
67
+ * @example
68
+ * ```ts
69
+ * const response = await client.agent.automateInput(
70
+ * 'requestID',
71
+ * );
72
+ * ```
73
+ */
74
+ automateInput(
75
+ requestID: string,
76
+ body: AgentAutomateInputParams,
77
+ options?: RequestOptions,
78
+ ): APIPromise<AgentAutomateInputResponse> {
79
+ return this._client.post(path`/automate/${requestID}/input`, { body, ...options });
80
+ }
81
+
51
82
  /**
52
83
  * Execute AI-powered research queries that search the web, analyze sources, and
53
84
  * synthesize comprehensive answers. This endpoint **always streams** responses
@@ -84,6 +115,7 @@ export class Agent extends APIResource {
84
115
  ...options,
85
116
  headers: buildHeaders([{ Accept: 'text/event-stream' }, options?.headers]),
86
117
  stream: true,
118
+ __synthesizeEventData: true,
87
119
  }) as APIPromise<Stream<ResearchEvent>>;
88
120
  }
89
121
  }
@@ -112,6 +144,10 @@ export interface ResearchEvent {
112
144
  event?: 'phase' | 'progress' | 'complete' | 'error';
113
145
  }
114
146
 
147
+ export interface AgentAutomateInputResponse {
148
+ status?: string;
149
+ }
150
+
115
151
  export interface AgentAutomateParams {
116
152
  /**
117
153
  * The task description in natural language
@@ -133,6 +169,11 @@ export interface AgentAutomateParams {
133
169
  */
134
170
  guardrails?: string;
135
171
 
172
+ /**
173
+ * Enable interactive mode to allow human-in-the-loop input during task execution
174
+ */
175
+ interactive?: boolean;
176
+
136
177
  /**
137
178
  * Maximum task iterations
138
179
  */
@@ -162,6 +203,26 @@ export namespace AgentAutomateParams {
162
203
  }
163
204
  }
164
205
 
206
+ export interface AgentAutomateInputParams {
207
+ /**
208
+ * Set to true to cancel/decline the request
209
+ */
210
+ cancelled?: boolean;
211
+
212
+ /**
213
+ * Field values as array of {ref, value} pairs (required when not cancelled)
214
+ */
215
+ fields?: Array<AgentAutomateInputParams.Field>;
216
+ }
217
+
218
+ export namespace AgentAutomateInputParams {
219
+ export interface Field {
220
+ ref?: string;
221
+
222
+ value?: string;
223
+ }
224
+ }
225
+
165
226
  export interface AgentResearchParams {
166
227
  /**
167
228
  * The research query or question to answer
@@ -188,7 +249,9 @@ export declare namespace Agent {
188
249
  export {
189
250
  type AutomateEvent as AutomateEvent,
190
251
  type ResearchEvent as ResearchEvent,
252
+ type AgentAutomateInputResponse as AgentAutomateInputResponse,
191
253
  type AgentAutomateParams as AgentAutomateParams,
254
+ type AgentAutomateInputParams as AgentAutomateInputParams,
192
255
  type AgentResearchParams as AgentResearchParams,
193
256
  };
194
257
  }
@@ -178,6 +178,13 @@ export interface ExtractJsonParams {
178
178
  */
179
179
  url: string;
180
180
 
181
+ /**
182
+ * Fetch effort level controlling speed vs. capability tradeoff. "min": fastest, no
183
+ * fallback (1-5s). "standard": balanced with enhanced reliability (default,
184
+ * 3-15s). "max": full browser rendering for JS-heavy sites (15-60s).
185
+ */
186
+ effort?: 'min' | 'standard' | 'max';
187
+
181
188
  /**
182
189
  * Optional geotargeting parameters for proxy requests
183
190
  */
@@ -208,6 +215,13 @@ export interface ExtractMarkdownParams {
208
215
  */
209
216
  url: string;
210
217
 
218
+ /**
219
+ * Fetch effort level controlling speed vs. capability tradeoff. "min": fastest, no
220
+ * fallback (1-5s). "standard": balanced with enhanced reliability (default,
221
+ * 3-15s). "max": full browser rendering for JS-heavy sites (15-60s).
222
+ */
223
+ effort?: 'min' | 'standard' | 'max';
224
+
211
225
  /**
212
226
  * Optional geotargeting parameters for proxy requests
213
227
  */
@@ -46,7 +46,7 @@ export type GenerateJsonResponse = { [key: string]: unknown };
46
46
 
47
47
  export interface GenerateJsonParams {
48
48
  /**
49
- * Instructions describing how to transform the data
49
+ * Instructions describing how to transform the data. Maximum 20,000 characters.
50
50
  */
51
51
  instructions: string;
52
52
 
@@ -60,6 +60,13 @@ export interface GenerateJsonParams {
60
60
  */
61
61
  url: string;
62
62
 
63
+ /**
64
+ * Fetch effort level controlling speed vs. capability tradeoff. "min": fastest, no
65
+ * fallback (1-5s). "standard": balanced with enhanced reliability (default,
66
+ * 3-15s). "max": full browser rendering for JS-heavy sites (15-60s).
67
+ */
68
+ effort?: 'min' | 'standard' | 'max';
69
+
63
70
  /**
64
71
  * Optional geotargeting parameters for proxy requests
65
72
  */
@@ -4,7 +4,9 @@ export {
4
4
  Agent,
5
5
  type AutomateEvent,
6
6
  type ResearchEvent,
7
+ type AgentAutomateInputResponse,
7
8
  type AgentAutomateParams,
9
+ type AgentAutomateInputParams,
8
10
  type AgentResearchParams,
9
11
  } from './agent';
10
12
  export {
package/src/version.ts CHANGED
@@ -1 +1 @@
1
- export const VERSION = '2.2.0'; // x-release-please-version
1
+ export const VERSION = '2.4.0'; // x-release-please-version
package/version.d.mts CHANGED
@@ -1,2 +1,2 @@
1
- export declare const VERSION = "2.2.0";
1
+ export declare const VERSION = "2.4.0";
2
2
  //# sourceMappingURL=version.d.mts.map
package/version.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export declare const VERSION = "2.2.0";
1
+ export declare const VERSION = "2.4.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 = '2.2.0'; // x-release-please-version
4
+ exports.VERSION = '2.4.0'; // x-release-please-version
5
5
  //# sourceMappingURL=version.js.map
package/version.mjs CHANGED
@@ -1,2 +1,2 @@
1
- export const VERSION = '2.2.0'; // x-release-please-version
1
+ export const VERSION = '2.4.0'; // x-release-please-version
2
2
  //# sourceMappingURL=version.mjs.map