@openrouter/sdk 0.9.11 → 0.10.2

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 (274) hide show
  1. package/FUNCTIONS.md +2 -1
  2. package/_speakeasy/.github/action-inputs-config.json +4 -0
  3. package/esm/funcs/analyticsGetUserActivity.js +2 -1
  4. package/esm/funcs/apiKeysCreate.js +2 -1
  5. package/esm/funcs/apiKeysDelete.js +2 -1
  6. package/esm/funcs/apiKeysGet.js +2 -1
  7. package/esm/funcs/apiKeysGetCurrentKeyMetadata.js +2 -1
  8. package/esm/funcs/apiKeysList.js +2 -1
  9. package/esm/funcs/apiKeysUpdate.js +2 -1
  10. package/esm/funcs/betaResponsesSend.js +2 -1
  11. package/esm/funcs/call-model.d.ts +19 -70
  12. package/esm/funcs/call-model.js +29 -71
  13. package/esm/funcs/chatSend.js +2 -1
  14. package/esm/funcs/creditsCreateCoinbaseCharge.js +2 -1
  15. package/esm/funcs/creditsGetCredits.js +2 -1
  16. package/esm/funcs/embeddingsGenerate.js +2 -1
  17. package/esm/funcs/embeddingsListModels.js +2 -1
  18. package/esm/funcs/endpointsList.js +2 -1
  19. package/esm/funcs/endpointsListZdrEndpoints.js +2 -1
  20. package/esm/funcs/generationsGetGeneration.js +2 -1
  21. package/esm/funcs/guardrailsBulkAssignKeys.js +2 -1
  22. package/esm/funcs/guardrailsBulkAssignMembers.js +2 -1
  23. package/esm/funcs/guardrailsBulkUnassignKeys.js +2 -1
  24. package/esm/funcs/guardrailsBulkUnassignMembers.js +2 -1
  25. package/esm/funcs/guardrailsCreate.js +2 -1
  26. package/esm/funcs/guardrailsDelete.js +2 -1
  27. package/esm/funcs/guardrailsGet.js +2 -1
  28. package/esm/funcs/guardrailsList.js +2 -1
  29. package/esm/funcs/guardrailsListGuardrailKeyAssignments.js +2 -1
  30. package/esm/funcs/guardrailsListGuardrailMemberAssignments.js +2 -1
  31. package/esm/funcs/guardrailsListKeyAssignments.js +2 -1
  32. package/esm/funcs/guardrailsListMemberAssignments.js +2 -1
  33. package/esm/funcs/guardrailsUpdate.js +2 -1
  34. package/esm/funcs/modelsCount.d.ts +1 -1
  35. package/esm/funcs/modelsCount.js +9 -4
  36. package/esm/funcs/modelsList.js +3 -1
  37. package/esm/funcs/modelsListForUser.js +2 -1
  38. package/esm/funcs/oAuthCreateAuthCode.d.ts +1 -1
  39. package/esm/funcs/oAuthCreateAuthCode.js +4 -3
  40. package/esm/funcs/oAuthExchangeAuthCodeForAPIKey.js +2 -1
  41. package/esm/funcs/providersList.js +2 -1
  42. package/esm/index.d.ts +22 -23
  43. package/esm/index.js +20 -17
  44. package/esm/lib/anthropic-compat.d.ts +2 -1
  45. package/esm/lib/anthropic-compat.js +1 -2
  46. package/esm/lib/async-params.d.ts +19 -5
  47. package/esm/lib/async-params.js +5 -1
  48. package/esm/lib/chat-compat.d.ts +1 -1
  49. package/esm/lib/chat-compat.js +1 -2
  50. package/esm/lib/claude-type-guards.d.ts +2 -2
  51. package/esm/lib/config.d.ts +8 -10
  52. package/esm/lib/config.js +2 -2
  53. package/esm/lib/conversation-state.d.ts +1 -1
  54. package/esm/lib/conversation-state.js +35 -32
  55. package/esm/lib/env.d.ts +6 -2
  56. package/esm/lib/env.js +7 -3
  57. package/esm/lib/model-result.d.ts +73 -17
  58. package/esm/lib/model-result.js +329 -125
  59. package/esm/lib/sdks.d.ts +1 -1
  60. package/esm/lib/sdks.js +8 -28
  61. package/esm/lib/stream-transformers.d.ts +5 -4
  62. package/esm/lib/stream-transformers.js +24 -29
  63. package/esm/lib/stream-type-guards.js +8 -32
  64. package/esm/lib/tool-context.d.ts +68 -0
  65. package/esm/lib/tool-context.js +175 -0
  66. package/esm/lib/tool-executor.d.ts +9 -5
  67. package/esm/lib/tool-executor.js +26 -16
  68. package/esm/lib/tool-orchestrator.d.ts +2 -2
  69. package/esm/lib/tool-types.d.ts +101 -14
  70. package/esm/lib/tool-types.js +17 -0
  71. package/esm/lib/tool.d.ts +49 -60
  72. package/esm/lib/tool.js +15 -19
  73. package/esm/lib/turn-context.d.ts +1 -1
  74. package/esm/models/assistantmessage.d.ts +6 -0
  75. package/esm/models/assistantmessage.js +3 -0
  76. package/esm/models/chatcompletionaudiooutput.d.ts +38 -0
  77. package/esm/models/chatcompletionaudiooutput.js +36 -0
  78. package/esm/models/chatgenerationparams.d.ts +75 -6
  79. package/esm/models/chatgenerationparams.js +42 -0
  80. package/esm/models/chatmessagecontentitem.d.ts +3 -2
  81. package/esm/models/chatmessagecontentitem.js +3 -0
  82. package/esm/models/chatmessagecontentitemcachecontrol.d.ts +5 -5
  83. package/esm/models/chatmessagecontentitemcachecontrol.js +5 -7
  84. package/esm/models/chatmessagecontentitemfile.d.ts +57 -0
  85. package/esm/models/chatmessagecontentitemfile.js +59 -0
  86. package/esm/models/chatmessagetokenlogprobs.d.ts +1 -1
  87. package/esm/models/chatmessagetokenlogprobs.js +2 -1
  88. package/esm/models/chatresponse.d.ts +1 -1
  89. package/esm/models/chatresponse.js +1 -1
  90. package/esm/models/chatstreamingmessagechunk.d.ts +2 -0
  91. package/esm/models/chatstreamingmessagechunk.js +2 -0
  92. package/esm/models/chatstreamingresponsechunk.d.ts +1 -1
  93. package/esm/models/chatstreamingresponsechunk.js +1 -1
  94. package/esm/models/compoundfilter.d.ts +36 -0
  95. package/esm/models/compoundfilter.js +32 -0
  96. package/esm/models/conflictresponseerrordata.d.ts +17 -0
  97. package/esm/models/conflictresponseerrordata.js +16 -0
  98. package/esm/models/contextcompressionengine.d.ts +15 -0
  99. package/esm/models/contextcompressionengine.js +14 -0
  100. package/esm/models/datetimeservertool.d.ts +30 -0
  101. package/esm/models/datetimeservertool.js +22 -0
  102. package/esm/models/defaultparameters.d.ts +3 -0
  103. package/esm/models/defaultparameters.js +6 -0
  104. package/esm/models/errors/conflictresponseerror.d.ts +33 -0
  105. package/esm/models/errors/conflictresponseerror.js +42 -0
  106. package/esm/models/errors/index.d.ts +1 -0
  107. package/esm/models/errors/index.js +1 -0
  108. package/esm/models/index.d.ts +23 -4
  109. package/esm/models/index.js +23 -4
  110. package/esm/models/openairesponsesinputunion.d.ts +32 -1
  111. package/esm/models/openairesponsesinputunion.js +53 -1
  112. package/esm/models/openresponsesapplypatchtool.d.ts +20 -0
  113. package/esm/models/openresponsesapplypatchtool.js +21 -0
  114. package/esm/models/openresponsescodeinterpretertool.d.ts +68 -0
  115. package/esm/models/openresponsescodeinterpretertool.js +85 -0
  116. package/esm/models/openresponsescomputertool.d.ts +39 -0
  117. package/esm/models/openresponsescomputertool.js +50 -0
  118. package/esm/models/openresponsescustomtool.d.ts +75 -0
  119. package/esm/models/openresponsescustomtool.js +95 -0
  120. package/esm/models/openresponseseasyinputmessage.d.ts +30 -4
  121. package/esm/models/openresponseseasyinputmessage.js +28 -2
  122. package/esm/models/openresponsesfilesearchtool.d.ts +111 -0
  123. package/esm/models/openresponsesfilesearchtool.js +180 -0
  124. package/esm/models/openresponsesfunctioncalloutput.d.ts +46 -7
  125. package/esm/models/openresponsesfunctioncalloutput.js +56 -4
  126. package/esm/models/openresponsesfunctionshelltool.d.ts +20 -0
  127. package/esm/models/openresponsesfunctionshelltool.js +21 -0
  128. package/esm/models/openresponsesimagegenerationtool.d.ts +125 -0
  129. package/esm/models/openresponsesimagegenerationtool.js +153 -0
  130. package/esm/models/openresponsesinputmessageitem.d.ts +2 -2
  131. package/esm/models/openresponsesinputmessageitem.js +2 -2
  132. package/esm/models/openresponsesinputunion.d.ts +207 -0
  133. package/esm/models/openresponsesinputunion.js +225 -0
  134. package/esm/models/openresponseslocalshelltool.d.ts +20 -0
  135. package/esm/models/openresponseslocalshelltool.js +21 -0
  136. package/esm/models/openresponsesmcptool.d.ts +128 -0
  137. package/esm/models/openresponsesmcptool.js +173 -0
  138. package/esm/models/openresponsesnonstreamingresponse.d.ts +11 -2
  139. package/esm/models/openresponsesnonstreamingresponse.js +27 -0
  140. package/esm/models/openresponsesrequest.d.ts +53 -11
  141. package/esm/models/openresponsesrequest.js +51 -2
  142. package/esm/models/openresponsesstreamevent.d.ts +52 -4
  143. package/esm/models/openresponsesstreamevent.js +54 -3
  144. package/esm/models/openresponseswebsearch20250826tool.d.ts +29 -0
  145. package/esm/models/openresponseswebsearch20250826tool.js +23 -0
  146. package/esm/models/openresponseswebsearchcallcompleted.d.ts +16 -0
  147. package/esm/models/openresponseswebsearchcallcompleted.js +24 -0
  148. package/esm/models/openresponseswebsearchcallinprogress.d.ts +16 -0
  149. package/esm/models/openresponseswebsearchcallinprogress.js +24 -0
  150. package/esm/models/openresponseswebsearchcallsearching.d.ts +16 -0
  151. package/esm/models/openresponseswebsearchcallsearching.js +24 -0
  152. package/esm/models/openresponseswebsearchpreview20250311tool.d.ts +44 -0
  153. package/esm/models/openresponseswebsearchpreview20250311tool.js +51 -0
  154. package/esm/models/openresponseswebsearchpreviewtool.d.ts +44 -0
  155. package/esm/models/openresponseswebsearchpreviewtool.js +47 -0
  156. package/esm/models/openresponseswebsearchtool.d.ts +29 -0
  157. package/esm/models/openresponseswebsearchtool.js +23 -0
  158. package/esm/models/operations/bulkassignkeystoguardrail.d.ts +16 -3
  159. package/esm/models/operations/bulkassignkeystoguardrail.js +2 -2
  160. package/esm/models/operations/bulkassignmemberstoguardrail.d.ts +16 -3
  161. package/esm/models/operations/bulkassignmemberstoguardrail.js +2 -2
  162. package/esm/models/operations/bulkunassignkeysfromguardrail.d.ts +16 -3
  163. package/esm/models/operations/bulkunassignkeysfromguardrail.js +2 -2
  164. package/esm/models/operations/bulkunassignmembersfromguardrail.d.ts +16 -3
  165. package/esm/models/operations/bulkunassignmembersfromguardrail.js +2 -2
  166. package/esm/models/operations/createauthkeyscode.d.ts +16 -3
  167. package/esm/models/operations/createauthkeyscode.js +2 -2
  168. package/esm/models/operations/createcoinbasecharge.d.ts +16 -3
  169. package/esm/models/operations/createcoinbasecharge.js +2 -2
  170. package/esm/models/operations/createembeddings.d.ts +16 -3
  171. package/esm/models/operations/createembeddings.js +2 -2
  172. package/esm/models/operations/createguardrail.d.ts +25 -3
  173. package/esm/models/operations/createguardrail.js +6 -2
  174. package/esm/models/operations/createkeys.d.ts +16 -3
  175. package/esm/models/operations/createkeys.js +2 -2
  176. package/esm/models/operations/createresponses.d.ts +16 -3
  177. package/esm/models/operations/createresponses.js +2 -2
  178. package/esm/models/operations/deleteguardrail.d.ts +16 -3
  179. package/esm/models/operations/deleteguardrail.js +2 -2
  180. package/esm/models/operations/deletekeys.d.ts +16 -3
  181. package/esm/models/operations/deletekeys.js +2 -2
  182. package/esm/models/operations/exchangeauthcodeforapikey.d.ts +16 -3
  183. package/esm/models/operations/exchangeauthcodeforapikey.js +2 -2
  184. package/esm/models/operations/getcredits.d.ts +16 -3
  185. package/esm/models/operations/getcredits.js +2 -2
  186. package/esm/models/operations/getcurrentkey.d.ts +16 -3
  187. package/esm/models/operations/getcurrentkey.js +2 -2
  188. package/esm/models/operations/getgeneration.d.ts +25 -3
  189. package/esm/models/operations/getgeneration.js +7 -2
  190. package/esm/models/operations/getguardrail.d.ts +20 -3
  191. package/esm/models/operations/getguardrail.js +4 -2
  192. package/esm/models/operations/getkey.d.ts +16 -3
  193. package/esm/models/operations/getkey.js +2 -2
  194. package/esm/models/operations/getmodels.d.ts +21 -3
  195. package/esm/models/operations/getmodels.js +4 -2
  196. package/esm/models/operations/getuseractivity.d.ts +16 -3
  197. package/esm/models/operations/getuseractivity.js +2 -2
  198. package/esm/models/operations/list.d.ts +16 -3
  199. package/esm/models/operations/list.js +2 -2
  200. package/esm/models/operations/listembeddingsmodels.d.ts +16 -3
  201. package/esm/models/operations/listembeddingsmodels.js +2 -2
  202. package/esm/models/operations/listendpoints.d.ts +16 -3
  203. package/esm/models/operations/listendpoints.js +2 -2
  204. package/esm/models/operations/listendpointszdr.d.ts +16 -3
  205. package/esm/models/operations/listendpointszdr.js +2 -2
  206. package/esm/models/operations/listguardrailkeyassignments.d.ts +16 -3
  207. package/esm/models/operations/listguardrailkeyassignments.js +2 -2
  208. package/esm/models/operations/listguardrailmemberassignments.d.ts +16 -3
  209. package/esm/models/operations/listguardrailmemberassignments.js +2 -2
  210. package/esm/models/operations/listguardrails.d.ts +20 -3
  211. package/esm/models/operations/listguardrails.js +4 -2
  212. package/esm/models/operations/listkeyassignments.d.ts +16 -3
  213. package/esm/models/operations/listkeyassignments.js +2 -2
  214. package/esm/models/operations/listmemberassignments.d.ts +16 -3
  215. package/esm/models/operations/listmemberassignments.js +2 -2
  216. package/esm/models/operations/listmodelscount.d.ts +21 -3
  217. package/esm/models/operations/listmodelscount.js +4 -2
  218. package/esm/models/operations/listmodelsuser.d.ts +16 -3
  219. package/esm/models/operations/listmodelsuser.js +2 -2
  220. package/esm/models/operations/listproviders.d.ts +16 -3
  221. package/esm/models/operations/listproviders.js +2 -2
  222. package/esm/models/operations/sendchatcompletionrequest.d.ts +16 -3
  223. package/esm/models/operations/sendchatcompletionrequest.js +2 -2
  224. package/esm/models/operations/updateguardrail.d.ts +25 -3
  225. package/esm/models/operations/updateguardrail.js +6 -2
  226. package/esm/models/operations/updatekeys.d.ts +16 -3
  227. package/esm/models/operations/updatekeys.js +2 -2
  228. package/esm/models/outputmessage.d.ts +23 -0
  229. package/esm/models/outputmessage.js +24 -0
  230. package/esm/models/outputmodality.d.ts +1 -0
  231. package/esm/models/outputmodality.js +1 -0
  232. package/esm/models/providername.d.ts +1 -0
  233. package/esm/models/providername.js +1 -0
  234. package/esm/models/providerpreferences.d.ts +4 -0
  235. package/esm/models/providerpreferences.js +4 -0
  236. package/esm/models/providersort.d.ts +1 -0
  237. package/esm/models/providersort.js +1 -0
  238. package/esm/models/providersortconfig.d.ts +1 -0
  239. package/esm/models/providersortconfig.js +1 -0
  240. package/esm/models/responseoutputtext.d.ts +8 -8
  241. package/esm/models/responseoutputtext.js +10 -9
  242. package/esm/models/responsesoutputitem.d.ts +2 -13
  243. package/esm/models/responsesoutputitem.js +8 -6
  244. package/esm/models/responsesoutputitemreasoning.d.ts +2 -31
  245. package/esm/models/responsesoutputitemreasoning.js +2 -44
  246. package/esm/models/responsesoutputmessage.d.ts +24 -32
  247. package/esm/models/responsesoutputmessage.js +26 -47
  248. package/esm/models/responsesservertooloutput.d.ts +42 -0
  249. package/esm/models/responsesservertooloutput.js +44 -0
  250. package/esm/models/responseswebsearchcalloutput.d.ts +90 -5
  251. package/esm/models/responseswebsearchcalloutput.js +113 -5
  252. package/esm/models/responseswebsearchservertool.d.ts +35 -0
  253. package/esm/models/responseswebsearchservertool.js +28 -0
  254. package/esm/models/tooldefinitionjson.d.ts +38 -20
  255. package/esm/models/tooldefinitionjson.js +22 -11
  256. package/esm/models/websearchengine.d.ts +2 -0
  257. package/esm/models/websearchengine.js +2 -0
  258. package/esm/models/websearchservertool.d.ts +116 -0
  259. package/esm/models/websearchservertool.js +77 -0
  260. package/esm/models/websearchshorthand.d.ts +215 -0
  261. package/esm/models/websearchshorthand.js +138 -0
  262. package/esm/sdk/sdk.d.ts +4 -1
  263. package/esm/sdk/sdk.js +0 -1
  264. package/esm/types/index.d.ts +0 -2
  265. package/esm/types/index.js +0 -1
  266. package/jsr.json +1 -1
  267. package/package.json +11 -6
  268. package/turbo.json +10 -0
  269. package/esm/models/openresponsesinput.d.ts +0 -28
  270. package/esm/models/openresponsesinput.js +0 -54
  271. package/esm/models/openresponseslogprobs.d.ts +0 -16
  272. package/esm/models/openresponseslogprobs.js +0 -22
  273. package/esm/models/openresponsestoplogprobs.d.ts +0 -14
  274. package/esm/models/openresponsestoplogprobs.js +0 -15
@@ -5,22 +5,35 @@
5
5
  import * as z from "zod/v4";
6
6
  import { remap as remap$ } from "../lib/primitives.js";
7
7
  import { safeParse } from "../lib/schemas.js";
8
+ import * as openEnums from "../types/enums.js";
8
9
  import { ResponsesSearchContextSize$inboundSchema, ResponsesSearchContextSize$outboundSchema, } from "./responsessearchcontextsize.js";
9
10
  import { ResponsesWebSearchUserLocation$inboundSchema, ResponsesWebSearchUserLocation$outboundSchema, } from "./responseswebsearchuserlocation.js";
11
+ /**
12
+ * Which search engine to use. "auto" (default) uses native if the provider supports it, otherwise Exa. "native" forces the provider's built-in search. "exa" forces the Exa search API.
13
+ */
14
+ export const OpenResponsesWebSearch20250826ToolEngine = {
15
+ Auto: "auto",
16
+ Native: "native",
17
+ Exa: "exa",
18
+ };
10
19
  /** @internal */
11
20
  export const OpenResponsesWebSearch20250826ToolFilters$inboundSchema = z.object({
12
21
  allowed_domains: z.nullable(z.array(z.string())).optional(),
22
+ excluded_domains: z.nullable(z.array(z.string())).optional(),
13
23
  }).transform((v) => {
14
24
  return remap$(v, {
15
25
  "allowed_domains": "allowedDomains",
26
+ "excluded_domains": "excludedDomains",
16
27
  });
17
28
  });
18
29
  /** @internal */
19
30
  export const OpenResponsesWebSearch20250826ToolFilters$outboundSchema = z.object({
20
31
  allowedDomains: z.nullable(z.array(z.string())).optional(),
32
+ excludedDomains: z.nullable(z.array(z.string())).optional(),
21
33
  }).transform((v) => {
22
34
  return remap$(v, {
23
35
  allowedDomains: "allowed_domains",
36
+ excludedDomains: "excluded_domains",
24
37
  });
25
38
  });
26
39
  export function openResponsesWebSearch20250826ToolFiltersToJSON(openResponsesWebSearch20250826ToolFilters) {
@@ -30,16 +43,23 @@ export function openResponsesWebSearch20250826ToolFiltersFromJSON(jsonString) {
30
43
  return safeParse(jsonString, (x) => OpenResponsesWebSearch20250826ToolFilters$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'OpenResponsesWebSearch20250826ToolFilters' from JSON`);
31
44
  }
32
45
  /** @internal */
46
+ export const OpenResponsesWebSearch20250826ToolEngine$inboundSchema = openEnums.inboundSchema(OpenResponsesWebSearch20250826ToolEngine);
47
+ /** @internal */
48
+ export const OpenResponsesWebSearch20250826ToolEngine$outboundSchema = openEnums.outboundSchema(OpenResponsesWebSearch20250826ToolEngine);
49
+ /** @internal */
33
50
  export const OpenResponsesWebSearch20250826Tool$inboundSchema = z.object({
34
51
  type: z.literal("web_search_2025_08_26"),
35
52
  filters: z.nullable(z.lazy(() => OpenResponsesWebSearch20250826ToolFilters$inboundSchema)).optional(),
36
53
  search_context_size: ResponsesSearchContextSize$inboundSchema.optional(),
37
54
  user_location: z.nullable(ResponsesWebSearchUserLocation$inboundSchema)
38
55
  .optional(),
56
+ engine: OpenResponsesWebSearch20250826ToolEngine$inboundSchema.optional(),
57
+ max_results: z.number().optional(),
39
58
  }).transform((v) => {
40
59
  return remap$(v, {
41
60
  "search_context_size": "searchContextSize",
42
61
  "user_location": "userLocation",
62
+ "max_results": "maxResults",
43
63
  });
44
64
  });
45
65
  /** @internal */
@@ -49,10 +69,13 @@ export const OpenResponsesWebSearch20250826Tool$outboundSchema = z.object({
49
69
  searchContextSize: ResponsesSearchContextSize$outboundSchema.optional(),
50
70
  userLocation: z.nullable(ResponsesWebSearchUserLocation$outboundSchema)
51
71
  .optional(),
72
+ engine: OpenResponsesWebSearch20250826ToolEngine$outboundSchema.optional(),
73
+ maxResults: z.number().optional(),
52
74
  }).transform((v) => {
53
75
  return remap$(v, {
54
76
  searchContextSize: "search_context_size",
55
77
  userLocation: "user_location",
78
+ maxResults: "max_results",
56
79
  });
57
80
  });
58
81
  export function openResponsesWebSearch20250826ToolToJSON(openResponsesWebSearch20250826Tool) {
@@ -0,0 +1,16 @@
1
+ import * as z from "zod/v4";
2
+ import { Result as SafeParseResult } from "../types/fp.js";
3
+ import { SDKValidationError } from "./errors/sdkvalidationerror.js";
4
+ /**
5
+ * Web search call completed
6
+ */
7
+ export type OpenResponsesWebSearchCallCompleted = {
8
+ type: "response.web_search_call.completed";
9
+ itemId: string;
10
+ outputIndex: number;
11
+ sequenceNumber: number;
12
+ };
13
+ /** @internal */
14
+ export declare const OpenResponsesWebSearchCallCompleted$inboundSchema: z.ZodType<OpenResponsesWebSearchCallCompleted, unknown>;
15
+ export declare function openResponsesWebSearchCallCompletedFromJSON(jsonString: string): SafeParseResult<OpenResponsesWebSearchCallCompleted, SDKValidationError>;
16
+ //# sourceMappingURL=openresponseswebsearchcallcompleted.d.ts.map
@@ -0,0 +1,24 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ * @generated-id: 4ad49b3f7a3d
4
+ */
5
+ import * as z from "zod/v4";
6
+ import { remap as remap$ } from "../lib/primitives.js";
7
+ import { safeParse } from "../lib/schemas.js";
8
+ /** @internal */
9
+ export const OpenResponsesWebSearchCallCompleted$inboundSchema = z.object({
10
+ type: z.literal("response.web_search_call.completed"),
11
+ item_id: z.string(),
12
+ output_index: z.number(),
13
+ sequence_number: z.number(),
14
+ }).transform((v) => {
15
+ return remap$(v, {
16
+ "item_id": "itemId",
17
+ "output_index": "outputIndex",
18
+ "sequence_number": "sequenceNumber",
19
+ });
20
+ });
21
+ export function openResponsesWebSearchCallCompletedFromJSON(jsonString) {
22
+ return safeParse(jsonString, (x) => OpenResponsesWebSearchCallCompleted$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'OpenResponsesWebSearchCallCompleted' from JSON`);
23
+ }
24
+ //# sourceMappingURL=openresponseswebsearchcallcompleted.js.map
@@ -0,0 +1,16 @@
1
+ import * as z from "zod/v4";
2
+ import { Result as SafeParseResult } from "../types/fp.js";
3
+ import { SDKValidationError } from "./errors/sdkvalidationerror.js";
4
+ /**
5
+ * Web search call in progress
6
+ */
7
+ export type OpenResponsesWebSearchCallInProgress = {
8
+ type: "response.web_search_call.in_progress";
9
+ itemId: string;
10
+ outputIndex: number;
11
+ sequenceNumber: number;
12
+ };
13
+ /** @internal */
14
+ export declare const OpenResponsesWebSearchCallInProgress$inboundSchema: z.ZodType<OpenResponsesWebSearchCallInProgress, unknown>;
15
+ export declare function openResponsesWebSearchCallInProgressFromJSON(jsonString: string): SafeParseResult<OpenResponsesWebSearchCallInProgress, SDKValidationError>;
16
+ //# sourceMappingURL=openresponseswebsearchcallinprogress.d.ts.map
@@ -0,0 +1,24 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ * @generated-id: 5ca24ba4cf86
4
+ */
5
+ import * as z from "zod/v4";
6
+ import { remap as remap$ } from "../lib/primitives.js";
7
+ import { safeParse } from "../lib/schemas.js";
8
+ /** @internal */
9
+ export const OpenResponsesWebSearchCallInProgress$inboundSchema = z.object({
10
+ type: z.literal("response.web_search_call.in_progress"),
11
+ item_id: z.string(),
12
+ output_index: z.number(),
13
+ sequence_number: z.number(),
14
+ }).transform((v) => {
15
+ return remap$(v, {
16
+ "item_id": "itemId",
17
+ "output_index": "outputIndex",
18
+ "sequence_number": "sequenceNumber",
19
+ });
20
+ });
21
+ export function openResponsesWebSearchCallInProgressFromJSON(jsonString) {
22
+ return safeParse(jsonString, (x) => OpenResponsesWebSearchCallInProgress$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'OpenResponsesWebSearchCallInProgress' from JSON`);
23
+ }
24
+ //# sourceMappingURL=openresponseswebsearchcallinprogress.js.map
@@ -0,0 +1,16 @@
1
+ import * as z from "zod/v4";
2
+ import { Result as SafeParseResult } from "../types/fp.js";
3
+ import { SDKValidationError } from "./errors/sdkvalidationerror.js";
4
+ /**
5
+ * Web search call is searching
6
+ */
7
+ export type OpenResponsesWebSearchCallSearching = {
8
+ type: "response.web_search_call.searching";
9
+ itemId: string;
10
+ outputIndex: number;
11
+ sequenceNumber: number;
12
+ };
13
+ /** @internal */
14
+ export declare const OpenResponsesWebSearchCallSearching$inboundSchema: z.ZodType<OpenResponsesWebSearchCallSearching, unknown>;
15
+ export declare function openResponsesWebSearchCallSearchingFromJSON(jsonString: string): SafeParseResult<OpenResponsesWebSearchCallSearching, SDKValidationError>;
16
+ //# sourceMappingURL=openresponseswebsearchcallsearching.d.ts.map
@@ -0,0 +1,24 @@
1
+ /*
2
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
3
+ * @generated-id: 9701019db8ec
4
+ */
5
+ import * as z from "zod/v4";
6
+ import { remap as remap$ } from "../lib/primitives.js";
7
+ import { safeParse } from "../lib/schemas.js";
8
+ /** @internal */
9
+ export const OpenResponsesWebSearchCallSearching$inboundSchema = z.object({
10
+ type: z.literal("response.web_search_call.searching"),
11
+ item_id: z.string(),
12
+ output_index: z.number(),
13
+ sequence_number: z.number(),
14
+ }).transform((v) => {
15
+ return remap$(v, {
16
+ "item_id": "itemId",
17
+ "output_index": "outputIndex",
18
+ "sequence_number": "sequenceNumber",
19
+ });
20
+ });
21
+ export function openResponsesWebSearchCallSearchingFromJSON(jsonString) {
22
+ return safeParse(jsonString, (x) => OpenResponsesWebSearchCallSearching$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'OpenResponsesWebSearchCallSearching' from JSON`);
23
+ }
24
+ //# sourceMappingURL=openresponseswebsearchcallsearching.js.map
@@ -1,8 +1,25 @@
1
1
  import * as z from "zod/v4";
2
+ import { OpenEnum } from "../types/enums.js";
2
3
  import { Result as SafeParseResult } from "../types/fp.js";
3
4
  import { SDKValidationError } from "./errors/sdkvalidationerror.js";
4
5
  import { ResponsesSearchContextSize } from "./responsessearchcontextsize.js";
5
6
  import { WebSearchPreviewToolUserLocation, WebSearchPreviewToolUserLocation$Outbound } from "./websearchpreviewtooluserlocation.js";
7
+ /**
8
+ * Which search engine to use. "auto" (default) uses native if the provider supports it, otherwise Exa. "native" forces the provider's built-in search. "exa" forces the Exa search API.
9
+ */
10
+ export declare const OpenResponsesWebSearchPreview20250311ToolEngine: {
11
+ readonly Auto: "auto";
12
+ readonly Native: "native";
13
+ readonly Exa: "exa";
14
+ };
15
+ /**
16
+ * Which search engine to use. "auto" (default) uses native if the provider supports it, otherwise Exa. "native" forces the provider's built-in search. "exa" forces the Exa search API.
17
+ */
18
+ export type OpenResponsesWebSearchPreview20250311ToolEngine = OpenEnum<typeof OpenResponsesWebSearchPreview20250311ToolEngine>;
19
+ export type OpenResponsesWebSearchPreview20250311ToolFilters = {
20
+ allowedDomains?: Array<string> | null | undefined;
21
+ excludedDomains?: Array<string> | null | undefined;
22
+ };
6
23
  /**
7
24
  * Web search preview tool configuration (2025-03-11 version)
8
25
  */
@@ -13,14 +30,41 @@ export type OpenResponsesWebSearchPreview20250311Tool = {
13
30
  */
14
31
  searchContextSize?: ResponsesSearchContextSize | undefined;
15
32
  userLocation?: WebSearchPreviewToolUserLocation | null | undefined;
33
+ /**
34
+ * Which search engine to use. "auto" (default) uses native if the provider supports it, otherwise Exa. "native" forces the provider's built-in search. "exa" forces the Exa search API.
35
+ */
36
+ engine?: OpenResponsesWebSearchPreview20250311ToolEngine | undefined;
37
+ /**
38
+ * Maximum number of search results to return per search call. Defaults to 5.
39
+ */
40
+ maxResults?: number | undefined;
41
+ filters?: OpenResponsesWebSearchPreview20250311ToolFilters | null | undefined;
42
+ };
43
+ /** @internal */
44
+ export declare const OpenResponsesWebSearchPreview20250311ToolEngine$inboundSchema: z.ZodType<OpenResponsesWebSearchPreview20250311ToolEngine, unknown>;
45
+ /** @internal */
46
+ export declare const OpenResponsesWebSearchPreview20250311ToolEngine$outboundSchema: z.ZodType<string, OpenResponsesWebSearchPreview20250311ToolEngine>;
47
+ /** @internal */
48
+ export declare const OpenResponsesWebSearchPreview20250311ToolFilters$inboundSchema: z.ZodType<OpenResponsesWebSearchPreview20250311ToolFilters, unknown>;
49
+ /** @internal */
50
+ export type OpenResponsesWebSearchPreview20250311ToolFilters$Outbound = {
51
+ allowed_domains?: Array<string> | null | undefined;
52
+ excluded_domains?: Array<string> | null | undefined;
16
53
  };
17
54
  /** @internal */
55
+ export declare const OpenResponsesWebSearchPreview20250311ToolFilters$outboundSchema: z.ZodType<OpenResponsesWebSearchPreview20250311ToolFilters$Outbound, OpenResponsesWebSearchPreview20250311ToolFilters>;
56
+ export declare function openResponsesWebSearchPreview20250311ToolFiltersToJSON(openResponsesWebSearchPreview20250311ToolFilters: OpenResponsesWebSearchPreview20250311ToolFilters): string;
57
+ export declare function openResponsesWebSearchPreview20250311ToolFiltersFromJSON(jsonString: string): SafeParseResult<OpenResponsesWebSearchPreview20250311ToolFilters, SDKValidationError>;
58
+ /** @internal */
18
59
  export declare const OpenResponsesWebSearchPreview20250311Tool$inboundSchema: z.ZodType<OpenResponsesWebSearchPreview20250311Tool, unknown>;
19
60
  /** @internal */
20
61
  export type OpenResponsesWebSearchPreview20250311Tool$Outbound = {
21
62
  type: "web_search_preview_2025_03_11";
22
63
  search_context_size?: string | undefined;
23
64
  user_location?: WebSearchPreviewToolUserLocation$Outbound | null | undefined;
65
+ engine?: string | undefined;
66
+ max_results?: number | undefined;
67
+ filters?: OpenResponsesWebSearchPreview20250311ToolFilters$Outbound | null | undefined;
24
68
  };
25
69
  /** @internal */
26
70
  export declare const OpenResponsesWebSearchPreview20250311Tool$outboundSchema: z.ZodType<OpenResponsesWebSearchPreview20250311Tool$Outbound, OpenResponsesWebSearchPreview20250311Tool>;
@@ -5,18 +5,64 @@
5
5
  import * as z from "zod/v4";
6
6
  import { remap as remap$ } from "../lib/primitives.js";
7
7
  import { safeParse } from "../lib/schemas.js";
8
+ import * as openEnums from "../types/enums.js";
8
9
  import { ResponsesSearchContextSize$inboundSchema, ResponsesSearchContextSize$outboundSchema, } from "./responsessearchcontextsize.js";
9
10
  import { WebSearchPreviewToolUserLocation$inboundSchema, WebSearchPreviewToolUserLocation$outboundSchema, } from "./websearchpreviewtooluserlocation.js";
11
+ /**
12
+ * Which search engine to use. "auto" (default) uses native if the provider supports it, otherwise Exa. "native" forces the provider's built-in search. "exa" forces the Exa search API.
13
+ */
14
+ export const OpenResponsesWebSearchPreview20250311ToolEngine = {
15
+ Auto: "auto",
16
+ Native: "native",
17
+ Exa: "exa",
18
+ };
19
+ /** @internal */
20
+ export const OpenResponsesWebSearchPreview20250311ToolEngine$inboundSchema = openEnums.inboundSchema(OpenResponsesWebSearchPreview20250311ToolEngine);
21
+ /** @internal */
22
+ export const OpenResponsesWebSearchPreview20250311ToolEngine$outboundSchema = openEnums
23
+ .outboundSchema(OpenResponsesWebSearchPreview20250311ToolEngine);
24
+ /** @internal */
25
+ export const OpenResponsesWebSearchPreview20250311ToolFilters$inboundSchema = z
26
+ .object({
27
+ allowed_domains: z.nullable(z.array(z.string())).optional(),
28
+ excluded_domains: z.nullable(z.array(z.string())).optional(),
29
+ }).transform((v) => {
30
+ return remap$(v, {
31
+ "allowed_domains": "allowedDomains",
32
+ "excluded_domains": "excludedDomains",
33
+ });
34
+ });
35
+ /** @internal */
36
+ export const OpenResponsesWebSearchPreview20250311ToolFilters$outboundSchema = z.object({
37
+ allowedDomains: z.nullable(z.array(z.string())).optional(),
38
+ excludedDomains: z.nullable(z.array(z.string())).optional(),
39
+ }).transform((v) => {
40
+ return remap$(v, {
41
+ allowedDomains: "allowed_domains",
42
+ excludedDomains: "excluded_domains",
43
+ });
44
+ });
45
+ export function openResponsesWebSearchPreview20250311ToolFiltersToJSON(openResponsesWebSearchPreview20250311ToolFilters) {
46
+ return JSON.stringify(OpenResponsesWebSearchPreview20250311ToolFilters$outboundSchema.parse(openResponsesWebSearchPreview20250311ToolFilters));
47
+ }
48
+ export function openResponsesWebSearchPreview20250311ToolFiltersFromJSON(jsonString) {
49
+ return safeParse(jsonString, (x) => OpenResponsesWebSearchPreview20250311ToolFilters$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'OpenResponsesWebSearchPreview20250311ToolFilters' from JSON`);
50
+ }
10
51
  /** @internal */
11
52
  export const OpenResponsesWebSearchPreview20250311Tool$inboundSchema = z.object({
12
53
  type: z.literal("web_search_preview_2025_03_11"),
13
54
  search_context_size: ResponsesSearchContextSize$inboundSchema.optional(),
14
55
  user_location: z.nullable(WebSearchPreviewToolUserLocation$inboundSchema)
15
56
  .optional(),
57
+ engine: OpenResponsesWebSearchPreview20250311ToolEngine$inboundSchema
58
+ .optional(),
59
+ max_results: z.number().optional(),
60
+ filters: z.nullable(z.lazy(() => OpenResponsesWebSearchPreview20250311ToolFilters$inboundSchema)).optional(),
16
61
  }).transform((v) => {
17
62
  return remap$(v, {
18
63
  "search_context_size": "searchContextSize",
19
64
  "user_location": "userLocation",
65
+ "max_results": "maxResults",
20
66
  });
21
67
  });
22
68
  /** @internal */
@@ -25,10 +71,15 @@ export const OpenResponsesWebSearchPreview20250311Tool$outboundSchema = z.object
25
71
  searchContextSize: ResponsesSearchContextSize$outboundSchema.optional(),
26
72
  userLocation: z.nullable(WebSearchPreviewToolUserLocation$outboundSchema)
27
73
  .optional(),
74
+ engine: OpenResponsesWebSearchPreview20250311ToolEngine$outboundSchema
75
+ .optional(),
76
+ maxResults: z.number().optional(),
77
+ filters: z.nullable(z.lazy(() => OpenResponsesWebSearchPreview20250311ToolFilters$outboundSchema)).optional(),
28
78
  }).transform((v) => {
29
79
  return remap$(v, {
30
80
  searchContextSize: "search_context_size",
31
81
  userLocation: "user_location",
82
+ maxResults: "max_results",
32
83
  });
33
84
  });
34
85
  export function openResponsesWebSearchPreview20250311ToolToJSON(openResponsesWebSearchPreview20250311Tool) {
@@ -1,8 +1,25 @@
1
1
  import * as z from "zod/v4";
2
+ import { OpenEnum } from "../types/enums.js";
2
3
  import { Result as SafeParseResult } from "../types/fp.js";
3
4
  import { SDKValidationError } from "./errors/sdkvalidationerror.js";
4
5
  import { ResponsesSearchContextSize } from "./responsessearchcontextsize.js";
5
6
  import { WebSearchPreviewToolUserLocation, WebSearchPreviewToolUserLocation$Outbound } from "./websearchpreviewtooluserlocation.js";
7
+ /**
8
+ * Which search engine to use. "auto" (default) uses native if the provider supports it, otherwise Exa. "native" forces the provider's built-in search. "exa" forces the Exa search API.
9
+ */
10
+ export declare const OpenResponsesWebSearchPreviewToolEngine: {
11
+ readonly Auto: "auto";
12
+ readonly Native: "native";
13
+ readonly Exa: "exa";
14
+ };
15
+ /**
16
+ * Which search engine to use. "auto" (default) uses native if the provider supports it, otherwise Exa. "native" forces the provider's built-in search. "exa" forces the Exa search API.
17
+ */
18
+ export type OpenResponsesWebSearchPreviewToolEngine = OpenEnum<typeof OpenResponsesWebSearchPreviewToolEngine>;
19
+ export type OpenResponsesWebSearchPreviewToolFilters = {
20
+ allowedDomains?: Array<string> | null | undefined;
21
+ excludedDomains?: Array<string> | null | undefined;
22
+ };
6
23
  /**
7
24
  * Web search preview tool configuration
8
25
  */
@@ -13,14 +30,41 @@ export type OpenResponsesWebSearchPreviewTool = {
13
30
  */
14
31
  searchContextSize?: ResponsesSearchContextSize | undefined;
15
32
  userLocation?: WebSearchPreviewToolUserLocation | null | undefined;
33
+ /**
34
+ * Which search engine to use. "auto" (default) uses native if the provider supports it, otherwise Exa. "native" forces the provider's built-in search. "exa" forces the Exa search API.
35
+ */
36
+ engine?: OpenResponsesWebSearchPreviewToolEngine | undefined;
37
+ /**
38
+ * Maximum number of search results to return per search call. Defaults to 5.
39
+ */
40
+ maxResults?: number | undefined;
41
+ filters?: OpenResponsesWebSearchPreviewToolFilters | null | undefined;
42
+ };
43
+ /** @internal */
44
+ export declare const OpenResponsesWebSearchPreviewToolEngine$inboundSchema: z.ZodType<OpenResponsesWebSearchPreviewToolEngine, unknown>;
45
+ /** @internal */
46
+ export declare const OpenResponsesWebSearchPreviewToolEngine$outboundSchema: z.ZodType<string, OpenResponsesWebSearchPreviewToolEngine>;
47
+ /** @internal */
48
+ export declare const OpenResponsesWebSearchPreviewToolFilters$inboundSchema: z.ZodType<OpenResponsesWebSearchPreviewToolFilters, unknown>;
49
+ /** @internal */
50
+ export type OpenResponsesWebSearchPreviewToolFilters$Outbound = {
51
+ allowed_domains?: Array<string> | null | undefined;
52
+ excluded_domains?: Array<string> | null | undefined;
16
53
  };
17
54
  /** @internal */
55
+ export declare const OpenResponsesWebSearchPreviewToolFilters$outboundSchema: z.ZodType<OpenResponsesWebSearchPreviewToolFilters$Outbound, OpenResponsesWebSearchPreviewToolFilters>;
56
+ export declare function openResponsesWebSearchPreviewToolFiltersToJSON(openResponsesWebSearchPreviewToolFilters: OpenResponsesWebSearchPreviewToolFilters): string;
57
+ export declare function openResponsesWebSearchPreviewToolFiltersFromJSON(jsonString: string): SafeParseResult<OpenResponsesWebSearchPreviewToolFilters, SDKValidationError>;
58
+ /** @internal */
18
59
  export declare const OpenResponsesWebSearchPreviewTool$inboundSchema: z.ZodType<OpenResponsesWebSearchPreviewTool, unknown>;
19
60
  /** @internal */
20
61
  export type OpenResponsesWebSearchPreviewTool$Outbound = {
21
62
  type: "web_search_preview";
22
63
  search_context_size?: string | undefined;
23
64
  user_location?: WebSearchPreviewToolUserLocation$Outbound | null | undefined;
65
+ engine?: string | undefined;
66
+ max_results?: number | undefined;
67
+ filters?: OpenResponsesWebSearchPreviewToolFilters$Outbound | null | undefined;
24
68
  };
25
69
  /** @internal */
26
70
  export declare const OpenResponsesWebSearchPreviewTool$outboundSchema: z.ZodType<OpenResponsesWebSearchPreviewTool$Outbound, OpenResponsesWebSearchPreviewTool>;
@@ -5,18 +5,61 @@
5
5
  import * as z from "zod/v4";
6
6
  import { remap as remap$ } from "../lib/primitives.js";
7
7
  import { safeParse } from "../lib/schemas.js";
8
+ import * as openEnums from "../types/enums.js";
8
9
  import { ResponsesSearchContextSize$inboundSchema, ResponsesSearchContextSize$outboundSchema, } from "./responsessearchcontextsize.js";
9
10
  import { WebSearchPreviewToolUserLocation$inboundSchema, WebSearchPreviewToolUserLocation$outboundSchema, } from "./websearchpreviewtooluserlocation.js";
11
+ /**
12
+ * Which search engine to use. "auto" (default) uses native if the provider supports it, otherwise Exa. "native" forces the provider's built-in search. "exa" forces the Exa search API.
13
+ */
14
+ export const OpenResponsesWebSearchPreviewToolEngine = {
15
+ Auto: "auto",
16
+ Native: "native",
17
+ Exa: "exa",
18
+ };
19
+ /** @internal */
20
+ export const OpenResponsesWebSearchPreviewToolEngine$inboundSchema = openEnums.inboundSchema(OpenResponsesWebSearchPreviewToolEngine);
21
+ /** @internal */
22
+ export const OpenResponsesWebSearchPreviewToolEngine$outboundSchema = openEnums.outboundSchema(OpenResponsesWebSearchPreviewToolEngine);
23
+ /** @internal */
24
+ export const OpenResponsesWebSearchPreviewToolFilters$inboundSchema = z.object({
25
+ allowed_domains: z.nullable(z.array(z.string())).optional(),
26
+ excluded_domains: z.nullable(z.array(z.string())).optional(),
27
+ }).transform((v) => {
28
+ return remap$(v, {
29
+ "allowed_domains": "allowedDomains",
30
+ "excluded_domains": "excludedDomains",
31
+ });
32
+ });
33
+ /** @internal */
34
+ export const OpenResponsesWebSearchPreviewToolFilters$outboundSchema = z.object({
35
+ allowedDomains: z.nullable(z.array(z.string())).optional(),
36
+ excludedDomains: z.nullable(z.array(z.string())).optional(),
37
+ }).transform((v) => {
38
+ return remap$(v, {
39
+ allowedDomains: "allowed_domains",
40
+ excludedDomains: "excluded_domains",
41
+ });
42
+ });
43
+ export function openResponsesWebSearchPreviewToolFiltersToJSON(openResponsesWebSearchPreviewToolFilters) {
44
+ return JSON.stringify(OpenResponsesWebSearchPreviewToolFilters$outboundSchema.parse(openResponsesWebSearchPreviewToolFilters));
45
+ }
46
+ export function openResponsesWebSearchPreviewToolFiltersFromJSON(jsonString) {
47
+ return safeParse(jsonString, (x) => OpenResponsesWebSearchPreviewToolFilters$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'OpenResponsesWebSearchPreviewToolFilters' from JSON`);
48
+ }
10
49
  /** @internal */
11
50
  export const OpenResponsesWebSearchPreviewTool$inboundSchema = z.object({
12
51
  type: z.literal("web_search_preview"),
13
52
  search_context_size: ResponsesSearchContextSize$inboundSchema.optional(),
14
53
  user_location: z.nullable(WebSearchPreviewToolUserLocation$inboundSchema)
15
54
  .optional(),
55
+ engine: OpenResponsesWebSearchPreviewToolEngine$inboundSchema.optional(),
56
+ max_results: z.number().optional(),
57
+ filters: z.nullable(z.lazy(() => OpenResponsesWebSearchPreviewToolFilters$inboundSchema)).optional(),
16
58
  }).transform((v) => {
17
59
  return remap$(v, {
18
60
  "search_context_size": "searchContextSize",
19
61
  "user_location": "userLocation",
62
+ "max_results": "maxResults",
20
63
  });
21
64
  });
22
65
  /** @internal */
@@ -25,10 +68,14 @@ export const OpenResponsesWebSearchPreviewTool$outboundSchema = z.object({
25
68
  searchContextSize: ResponsesSearchContextSize$outboundSchema.optional(),
26
69
  userLocation: z.nullable(WebSearchPreviewToolUserLocation$outboundSchema)
27
70
  .optional(),
71
+ engine: OpenResponsesWebSearchPreviewToolEngine$outboundSchema.optional(),
72
+ maxResults: z.number().optional(),
73
+ filters: z.nullable(z.lazy(() => OpenResponsesWebSearchPreviewToolFilters$outboundSchema)).optional(),
28
74
  }).transform((v) => {
29
75
  return remap$(v, {
30
76
  searchContextSize: "search_context_size",
31
77
  userLocation: "user_location",
78
+ maxResults: "max_results",
32
79
  });
33
80
  });
34
81
  export function openResponsesWebSearchPreviewToolToJSON(openResponsesWebSearchPreviewTool) {
@@ -1,11 +1,25 @@
1
1
  import * as z from "zod/v4";
2
+ import { OpenEnum } from "../types/enums.js";
2
3
  import { Result as SafeParseResult } from "../types/fp.js";
3
4
  import { SDKValidationError } from "./errors/sdkvalidationerror.js";
4
5
  import { ResponsesSearchContextSize } from "./responsessearchcontextsize.js";
5
6
  import { ResponsesWebSearchUserLocation, ResponsesWebSearchUserLocation$Outbound } from "./responseswebsearchuserlocation.js";
6
7
  export type OpenResponsesWebSearchToolFilters = {
7
8
  allowedDomains?: Array<string> | null | undefined;
9
+ excludedDomains?: Array<string> | null | undefined;
8
10
  };
11
+ /**
12
+ * Which search engine to use. "auto" (default) uses native if the provider supports it, otherwise Exa. "native" forces the provider's built-in search. "exa" forces the Exa search API.
13
+ */
14
+ export declare const OpenResponsesWebSearchToolEngine: {
15
+ readonly Auto: "auto";
16
+ readonly Native: "native";
17
+ readonly Exa: "exa";
18
+ };
19
+ /**
20
+ * Which search engine to use. "auto" (default) uses native if the provider supports it, otherwise Exa. "native" forces the provider's built-in search. "exa" forces the Exa search API.
21
+ */
22
+ export type OpenResponsesWebSearchToolEngine = OpenEnum<typeof OpenResponsesWebSearchToolEngine>;
9
23
  /**
10
24
  * Web search tool configuration
11
25
  */
@@ -20,18 +34,31 @@ export type OpenResponsesWebSearchTool = {
20
34
  * User location information for web search
21
35
  */
22
36
  userLocation?: ResponsesWebSearchUserLocation | null | undefined;
37
+ /**
38
+ * Which search engine to use. "auto" (default) uses native if the provider supports it, otherwise Exa. "native" forces the provider's built-in search. "exa" forces the Exa search API.
39
+ */
40
+ engine?: OpenResponsesWebSearchToolEngine | undefined;
41
+ /**
42
+ * Maximum number of search results to return per search call. Defaults to 5.
43
+ */
44
+ maxResults?: number | undefined;
23
45
  };
24
46
  /** @internal */
25
47
  export declare const OpenResponsesWebSearchToolFilters$inboundSchema: z.ZodType<OpenResponsesWebSearchToolFilters, unknown>;
26
48
  /** @internal */
27
49
  export type OpenResponsesWebSearchToolFilters$Outbound = {
28
50
  allowed_domains?: Array<string> | null | undefined;
51
+ excluded_domains?: Array<string> | null | undefined;
29
52
  };
30
53
  /** @internal */
31
54
  export declare const OpenResponsesWebSearchToolFilters$outboundSchema: z.ZodType<OpenResponsesWebSearchToolFilters$Outbound, OpenResponsesWebSearchToolFilters>;
32
55
  export declare function openResponsesWebSearchToolFiltersToJSON(openResponsesWebSearchToolFilters: OpenResponsesWebSearchToolFilters): string;
33
56
  export declare function openResponsesWebSearchToolFiltersFromJSON(jsonString: string): SafeParseResult<OpenResponsesWebSearchToolFilters, SDKValidationError>;
34
57
  /** @internal */
58
+ export declare const OpenResponsesWebSearchToolEngine$inboundSchema: z.ZodType<OpenResponsesWebSearchToolEngine, unknown>;
59
+ /** @internal */
60
+ export declare const OpenResponsesWebSearchToolEngine$outboundSchema: z.ZodType<string, OpenResponsesWebSearchToolEngine>;
61
+ /** @internal */
35
62
  export declare const OpenResponsesWebSearchTool$inboundSchema: z.ZodType<OpenResponsesWebSearchTool, unknown>;
36
63
  /** @internal */
37
64
  export type OpenResponsesWebSearchTool$Outbound = {
@@ -39,6 +66,8 @@ export type OpenResponsesWebSearchTool$Outbound = {
39
66
  filters?: OpenResponsesWebSearchToolFilters$Outbound | null | undefined;
40
67
  search_context_size?: string | undefined;
41
68
  user_location?: ResponsesWebSearchUserLocation$Outbound | null | undefined;
69
+ engine?: string | undefined;
70
+ max_results?: number | undefined;
42
71
  };
43
72
  /** @internal */
44
73
  export declare const OpenResponsesWebSearchTool$outboundSchema: z.ZodType<OpenResponsesWebSearchTool$Outbound, OpenResponsesWebSearchTool>;
@@ -5,22 +5,35 @@
5
5
  import * as z from "zod/v4";
6
6
  import { remap as remap$ } from "../lib/primitives.js";
7
7
  import { safeParse } from "../lib/schemas.js";
8
+ import * as openEnums from "../types/enums.js";
8
9
  import { ResponsesSearchContextSize$inboundSchema, ResponsesSearchContextSize$outboundSchema, } from "./responsessearchcontextsize.js";
9
10
  import { ResponsesWebSearchUserLocation$inboundSchema, ResponsesWebSearchUserLocation$outboundSchema, } from "./responseswebsearchuserlocation.js";
11
+ /**
12
+ * Which search engine to use. "auto" (default) uses native if the provider supports it, otherwise Exa. "native" forces the provider's built-in search. "exa" forces the Exa search API.
13
+ */
14
+ export const OpenResponsesWebSearchToolEngine = {
15
+ Auto: "auto",
16
+ Native: "native",
17
+ Exa: "exa",
18
+ };
10
19
  /** @internal */
11
20
  export const OpenResponsesWebSearchToolFilters$inboundSchema = z.object({
12
21
  allowed_domains: z.nullable(z.array(z.string())).optional(),
22
+ excluded_domains: z.nullable(z.array(z.string())).optional(),
13
23
  }).transform((v) => {
14
24
  return remap$(v, {
15
25
  "allowed_domains": "allowedDomains",
26
+ "excluded_domains": "excludedDomains",
16
27
  });
17
28
  });
18
29
  /** @internal */
19
30
  export const OpenResponsesWebSearchToolFilters$outboundSchema = z.object({
20
31
  allowedDomains: z.nullable(z.array(z.string())).optional(),
32
+ excludedDomains: z.nullable(z.array(z.string())).optional(),
21
33
  }).transform((v) => {
22
34
  return remap$(v, {
23
35
  allowedDomains: "allowed_domains",
36
+ excludedDomains: "excluded_domains",
24
37
  });
25
38
  });
26
39
  export function openResponsesWebSearchToolFiltersToJSON(openResponsesWebSearchToolFilters) {
@@ -30,16 +43,23 @@ export function openResponsesWebSearchToolFiltersFromJSON(jsonString) {
30
43
  return safeParse(jsonString, (x) => OpenResponsesWebSearchToolFilters$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'OpenResponsesWebSearchToolFilters' from JSON`);
31
44
  }
32
45
  /** @internal */
46
+ export const OpenResponsesWebSearchToolEngine$inboundSchema = openEnums.inboundSchema(OpenResponsesWebSearchToolEngine);
47
+ /** @internal */
48
+ export const OpenResponsesWebSearchToolEngine$outboundSchema = openEnums.outboundSchema(OpenResponsesWebSearchToolEngine);
49
+ /** @internal */
33
50
  export const OpenResponsesWebSearchTool$inboundSchema = z.object({
34
51
  type: z.literal("web_search"),
35
52
  filters: z.nullable(z.lazy(() => OpenResponsesWebSearchToolFilters$inboundSchema)).optional(),
36
53
  search_context_size: ResponsesSearchContextSize$inboundSchema.optional(),
37
54
  user_location: z.nullable(ResponsesWebSearchUserLocation$inboundSchema)
38
55
  .optional(),
56
+ engine: OpenResponsesWebSearchToolEngine$inboundSchema.optional(),
57
+ max_results: z.number().optional(),
39
58
  }).transform((v) => {
40
59
  return remap$(v, {
41
60
  "search_context_size": "searchContextSize",
42
61
  "user_location": "userLocation",
62
+ "max_results": "maxResults",
43
63
  });
44
64
  });
45
65
  /** @internal */
@@ -49,10 +69,13 @@ export const OpenResponsesWebSearchTool$outboundSchema = z.object({
49
69
  searchContextSize: ResponsesSearchContextSize$outboundSchema.optional(),
50
70
  userLocation: z.nullable(ResponsesWebSearchUserLocation$outboundSchema)
51
71
  .optional(),
72
+ engine: OpenResponsesWebSearchToolEngine$outboundSchema.optional(),
73
+ maxResults: z.number().optional(),
52
74
  }).transform((v) => {
53
75
  return remap$(v, {
54
76
  searchContextSize: "search_context_size",
55
77
  userLocation: "user_location",
78
+ maxResults: "max_results",
56
79
  });
57
80
  });
58
81
  export function openResponsesWebSearchToolToJSON(openResponsesWebSearchTool) {