openai 7.4.0 → 7.6.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 (2108) hide show
  1. package/CHANGELOG.md +424 -0
  2. package/README.md +59 -12
  3. package/_vendor/partial-json-parser/parser.d.mts.map +1 -1
  4. package/_vendor/partial-json-parser/parser.d.ts.map +1 -1
  5. package/_vendor/partial-json-parser/parser.js +52 -36
  6. package/_vendor/partial-json-parser/parser.js.map +1 -1
  7. package/_vendor/partial-json-parser/parser.mjs +52 -36
  8. package/_vendor/partial-json-parser/parser.mjs.map +1 -1
  9. package/_vendor/zod-to-json-schema/Options.d.mts +3 -3
  10. package/_vendor/zod-to-json-schema/Options.d.mts.map +1 -1
  11. package/_vendor/zod-to-json-schema/Options.d.ts +3 -3
  12. package/_vendor/zod-to-json-schema/Options.d.ts.map +1 -1
  13. package/_vendor/zod-to-json-schema/Options.js +9 -2
  14. package/_vendor/zod-to-json-schema/Options.js.map +1 -1
  15. package/_vendor/zod-to-json-schema/Options.mjs +9 -2
  16. package/_vendor/zod-to-json-schema/Options.mjs.map +1 -1
  17. package/_vendor/zod-to-json-schema/Refs.d.mts +2 -2
  18. package/_vendor/zod-to-json-schema/Refs.d.mts.map +1 -1
  19. package/_vendor/zod-to-json-schema/Refs.d.ts +2 -2
  20. package/_vendor/zod-to-json-schema/Refs.d.ts.map +1 -1
  21. package/_vendor/zod-to-json-schema/Refs.js +4 -4
  22. package/_vendor/zod-to-json-schema/Refs.js.map +1 -1
  23. package/_vendor/zod-to-json-schema/Refs.mjs +4 -4
  24. package/_vendor/zod-to-json-schema/Refs.mjs.map +1 -1
  25. package/_vendor/zod-to-json-schema/errorMessages.d.mts +2 -2
  26. package/_vendor/zod-to-json-schema/errorMessages.d.mts.map +1 -1
  27. package/_vendor/zod-to-json-schema/errorMessages.d.ts +2 -2
  28. package/_vendor/zod-to-json-schema/errorMessages.d.ts.map +1 -1
  29. package/_vendor/zod-to-json-schema/errorMessages.js +2 -1
  30. package/_vendor/zod-to-json-schema/errorMessages.js.map +1 -1
  31. package/_vendor/zod-to-json-schema/errorMessages.mjs +2 -1
  32. package/_vendor/zod-to-json-schema/errorMessages.mjs.map +1 -1
  33. package/_vendor/zod-to-json-schema/index.d.mts +1 -1
  34. package/_vendor/zod-to-json-schema/index.d.mts.map +1 -1
  35. package/_vendor/zod-to-json-schema/index.d.ts +1 -1
  36. package/_vendor/zod-to-json-schema/index.d.ts.map +1 -1
  37. package/_vendor/zod-to-json-schema/index.js +1 -1
  38. package/_vendor/zod-to-json-schema/index.js.map +1 -1
  39. package/_vendor/zod-to-json-schema/index.mjs +1 -1
  40. package/_vendor/zod-to-json-schema/index.mjs.map +1 -1
  41. package/_vendor/zod-to-json-schema/parseDef.d.mts +24 -24
  42. package/_vendor/zod-to-json-schema/parseDef.d.mts.map +1 -1
  43. package/_vendor/zod-to-json-schema/parseDef.d.ts +24 -24
  44. package/_vendor/zod-to-json-schema/parseDef.d.ts.map +1 -1
  45. package/_vendor/zod-to-json-schema/parseDef.js +98 -40
  46. package/_vendor/zod-to-json-schema/parseDef.js.map +1 -1
  47. package/_vendor/zod-to-json-schema/parseDef.mjs +98 -40
  48. package/_vendor/zod-to-json-schema/parseDef.mjs.map +1 -1
  49. package/_vendor/zod-to-json-schema/parsers/array.d.mts +4 -4
  50. package/_vendor/zod-to-json-schema/parsers/array.d.mts.map +1 -1
  51. package/_vendor/zod-to-json-schema/parsers/array.d.ts +4 -4
  52. package/_vendor/zod-to-json-schema/parsers/array.d.ts.map +1 -1
  53. package/_vendor/zod-to-json-schema/parsers/array.js +1 -1
  54. package/_vendor/zod-to-json-schema/parsers/array.js.map +1 -1
  55. package/_vendor/zod-to-json-schema/parsers/array.mjs +1 -1
  56. package/_vendor/zod-to-json-schema/parsers/array.mjs.map +1 -1
  57. package/_vendor/zod-to-json-schema/parsers/bigint.d.mts +8 -8
  58. package/_vendor/zod-to-json-schema/parsers/bigint.d.mts.map +1 -1
  59. package/_vendor/zod-to-json-schema/parsers/bigint.d.ts +8 -8
  60. package/_vendor/zod-to-json-schema/parsers/bigint.d.ts.map +1 -1
  61. package/_vendor/zod-to-json-schema/parsers/bigint.js +8 -4
  62. package/_vendor/zod-to-json-schema/parsers/bigint.js.map +1 -1
  63. package/_vendor/zod-to-json-schema/parsers/bigint.mjs +8 -4
  64. package/_vendor/zod-to-json-schema/parsers/bigint.mjs.map +1 -1
  65. package/_vendor/zod-to-json-schema/parsers/branded.d.mts +3 -3
  66. package/_vendor/zod-to-json-schema/parsers/branded.d.mts.map +1 -1
  67. package/_vendor/zod-to-json-schema/parsers/branded.d.ts +3 -3
  68. package/_vendor/zod-to-json-schema/parsers/branded.d.ts.map +1 -1
  69. package/_vendor/zod-to-json-schema/parsers/catch.d.mts +3 -3
  70. package/_vendor/zod-to-json-schema/parsers/catch.d.mts.map +1 -1
  71. package/_vendor/zod-to-json-schema/parsers/catch.d.ts +3 -3
  72. package/_vendor/zod-to-json-schema/parsers/catch.d.ts.map +1 -1
  73. package/_vendor/zod-to-json-schema/parsers/catch.js +1 -3
  74. package/_vendor/zod-to-json-schema/parsers/catch.js.map +1 -1
  75. package/_vendor/zod-to-json-schema/parsers/catch.mjs +1 -3
  76. package/_vendor/zod-to-json-schema/parsers/catch.mjs.map +1 -1
  77. package/_vendor/zod-to-json-schema/parsers/date.d.mts +5 -5
  78. package/_vendor/zod-to-json-schema/parsers/date.d.mts.map +1 -1
  79. package/_vendor/zod-to-json-schema/parsers/date.d.ts +5 -5
  80. package/_vendor/zod-to-json-schema/parsers/date.d.ts.map +1 -1
  81. package/_vendor/zod-to-json-schema/parsers/date.js +10 -5
  82. package/_vendor/zod-to-json-schema/parsers/date.js.map +1 -1
  83. package/_vendor/zod-to-json-schema/parsers/date.mjs +10 -5
  84. package/_vendor/zod-to-json-schema/parsers/date.mjs.map +1 -1
  85. package/_vendor/zod-to-json-schema/parsers/default.d.mts +3 -3
  86. package/_vendor/zod-to-json-schema/parsers/default.d.mts.map +1 -1
  87. package/_vendor/zod-to-json-schema/parsers/default.d.ts +3 -3
  88. package/_vendor/zod-to-json-schema/parsers/default.d.ts.map +1 -1
  89. package/_vendor/zod-to-json-schema/parsers/default.js.map +1 -1
  90. package/_vendor/zod-to-json-schema/parsers/default.mjs.map +1 -1
  91. package/_vendor/zod-to-json-schema/parsers/effects.d.mts +3 -3
  92. package/_vendor/zod-to-json-schema/parsers/effects.d.mts.map +1 -1
  93. package/_vendor/zod-to-json-schema/parsers/effects.d.ts +3 -3
  94. package/_vendor/zod-to-json-schema/parsers/effects.d.ts.map +1 -1
  95. package/_vendor/zod-to-json-schema/parsers/effects.js.map +1 -1
  96. package/_vendor/zod-to-json-schema/parsers/effects.mjs.map +1 -1
  97. package/_vendor/zod-to-json-schema/parsers/enum.d.mts +1 -1
  98. package/_vendor/zod-to-json-schema/parsers/enum.d.mts.map +1 -1
  99. package/_vendor/zod-to-json-schema/parsers/enum.d.ts +1 -1
  100. package/_vendor/zod-to-json-schema/parsers/enum.d.ts.map +1 -1
  101. package/_vendor/zod-to-json-schema/parsers/intersection.d.mts +3 -3
  102. package/_vendor/zod-to-json-schema/parsers/intersection.d.mts.map +1 -1
  103. package/_vendor/zod-to-json-schema/parsers/intersection.d.ts +3 -3
  104. package/_vendor/zod-to-json-schema/parsers/intersection.d.ts.map +1 -1
  105. package/_vendor/zod-to-json-schema/parsers/intersection.js +6 -5
  106. package/_vendor/zod-to-json-schema/parsers/intersection.js.map +1 -1
  107. package/_vendor/zod-to-json-schema/parsers/intersection.mjs +6 -5
  108. package/_vendor/zod-to-json-schema/parsers/intersection.mjs.map +1 -1
  109. package/_vendor/zod-to-json-schema/parsers/literal.d.mts +5 -2
  110. package/_vendor/zod-to-json-schema/parsers/literal.d.mts.map +1 -1
  111. package/_vendor/zod-to-json-schema/parsers/literal.d.ts +5 -2
  112. package/_vendor/zod-to-json-schema/parsers/literal.d.ts.map +1 -1
  113. package/_vendor/zod-to-json-schema/parsers/literal.js +4 -0
  114. package/_vendor/zod-to-json-schema/parsers/literal.js.map +1 -1
  115. package/_vendor/zod-to-json-schema/parsers/literal.mjs +4 -0
  116. package/_vendor/zod-to-json-schema/parsers/literal.mjs.map +1 -1
  117. package/_vendor/zod-to-json-schema/parsers/map.d.mts +4 -4
  118. package/_vendor/zod-to-json-schema/parsers/map.d.mts.map +1 -1
  119. package/_vendor/zod-to-json-schema/parsers/map.d.ts +4 -4
  120. package/_vendor/zod-to-json-schema/parsers/map.d.ts.map +1 -1
  121. package/_vendor/zod-to-json-schema/parsers/map.js.map +1 -1
  122. package/_vendor/zod-to-json-schema/parsers/map.mjs.map +1 -1
  123. package/_vendor/zod-to-json-schema/parsers/nativeEnum.d.mts +1 -1
  124. package/_vendor/zod-to-json-schema/parsers/nativeEnum.d.mts.map +1 -1
  125. package/_vendor/zod-to-json-schema/parsers/nativeEnum.d.ts +1 -1
  126. package/_vendor/zod-to-json-schema/parsers/nativeEnum.d.ts.map +1 -1
  127. package/_vendor/zod-to-json-schema/parsers/nativeEnum.js +7 -9
  128. package/_vendor/zod-to-json-schema/parsers/nativeEnum.js.map +1 -1
  129. package/_vendor/zod-to-json-schema/parsers/nativeEnum.mjs +7 -9
  130. package/_vendor/zod-to-json-schema/parsers/nativeEnum.mjs.map +1 -1
  131. package/_vendor/zod-to-json-schema/parsers/null.d.mts +1 -1
  132. package/_vendor/zod-to-json-schema/parsers/null.d.mts.map +1 -1
  133. package/_vendor/zod-to-json-schema/parsers/null.d.ts +1 -1
  134. package/_vendor/zod-to-json-schema/parsers/null.d.ts.map +1 -1
  135. package/_vendor/zod-to-json-schema/parsers/null.js +2 -2
  136. package/_vendor/zod-to-json-schema/parsers/null.js.map +1 -1
  137. package/_vendor/zod-to-json-schema/parsers/null.mjs +2 -2
  138. package/_vendor/zod-to-json-schema/parsers/null.mjs.map +1 -1
  139. package/_vendor/zod-to-json-schema/parsers/nullable.d.mts +4 -4
  140. package/_vendor/zod-to-json-schema/parsers/nullable.d.mts.map +1 -1
  141. package/_vendor/zod-to-json-schema/parsers/nullable.d.ts +4 -4
  142. package/_vendor/zod-to-json-schema/parsers/nullable.d.ts.map +1 -1
  143. package/_vendor/zod-to-json-schema/parsers/nullable.js +2 -1
  144. package/_vendor/zod-to-json-schema/parsers/nullable.js.map +1 -1
  145. package/_vendor/zod-to-json-schema/parsers/nullable.mjs +2 -1
  146. package/_vendor/zod-to-json-schema/parsers/nullable.mjs.map +1 -1
  147. package/_vendor/zod-to-json-schema/parsers/number.d.mts +3 -3
  148. package/_vendor/zod-to-json-schema/parsers/number.d.mts.map +1 -1
  149. package/_vendor/zod-to-json-schema/parsers/number.d.ts +3 -3
  150. package/_vendor/zod-to-json-schema/parsers/number.d.ts.map +1 -1
  151. package/_vendor/zod-to-json-schema/parsers/number.js +10 -5
  152. package/_vendor/zod-to-json-schema/parsers/number.js.map +1 -1
  153. package/_vendor/zod-to-json-schema/parsers/number.mjs +10 -5
  154. package/_vendor/zod-to-json-schema/parsers/number.mjs.map +1 -1
  155. package/_vendor/zod-to-json-schema/parsers/object.d.mts +3 -3
  156. package/_vendor/zod-to-json-schema/parsers/object.d.mts.map +1 -1
  157. package/_vendor/zod-to-json-schema/parsers/object.d.ts +3 -3
  158. package/_vendor/zod-to-json-schema/parsers/object.d.ts.map +1 -1
  159. package/_vendor/zod-to-json-schema/parsers/object.js +43 -38
  160. package/_vendor/zod-to-json-schema/parsers/object.js.map +1 -1
  161. package/_vendor/zod-to-json-schema/parsers/object.mjs +43 -38
  162. package/_vendor/zod-to-json-schema/parsers/object.mjs.map +1 -1
  163. package/_vendor/zod-to-json-schema/parsers/optional.d.mts +3 -3
  164. package/_vendor/zod-to-json-schema/parsers/optional.d.mts.map +1 -1
  165. package/_vendor/zod-to-json-schema/parsers/optional.d.ts +3 -3
  166. package/_vendor/zod-to-json-schema/parsers/optional.d.ts.map +1 -1
  167. package/_vendor/zod-to-json-schema/parsers/optional.js +2 -2
  168. package/_vendor/zod-to-json-schema/parsers/optional.js.map +1 -1
  169. package/_vendor/zod-to-json-schema/parsers/optional.mjs +2 -2
  170. package/_vendor/zod-to-json-schema/parsers/optional.mjs.map +1 -1
  171. package/_vendor/zod-to-json-schema/parsers/pipeline.d.mts +4 -4
  172. package/_vendor/zod-to-json-schema/parsers/pipeline.d.mts.map +1 -1
  173. package/_vendor/zod-to-json-schema/parsers/pipeline.d.ts +4 -4
  174. package/_vendor/zod-to-json-schema/parsers/pipeline.d.ts.map +1 -1
  175. package/_vendor/zod-to-json-schema/parsers/pipeline.js.map +1 -1
  176. package/_vendor/zod-to-json-schema/parsers/pipeline.mjs.map +1 -1
  177. package/_vendor/zod-to-json-schema/parsers/promise.d.mts +3 -3
  178. package/_vendor/zod-to-json-schema/parsers/promise.d.mts.map +1 -1
  179. package/_vendor/zod-to-json-schema/parsers/promise.d.ts +3 -3
  180. package/_vendor/zod-to-json-schema/parsers/promise.d.ts.map +1 -1
  181. package/_vendor/zod-to-json-schema/parsers/promise.js.map +1 -1
  182. package/_vendor/zod-to-json-schema/parsers/promise.mjs.map +1 -1
  183. package/_vendor/zod-to-json-schema/parsers/readonly.d.mts +3 -3
  184. package/_vendor/zod-to-json-schema/parsers/readonly.d.mts.map +1 -1
  185. package/_vendor/zod-to-json-schema/parsers/readonly.d.ts +3 -3
  186. package/_vendor/zod-to-json-schema/parsers/readonly.d.ts.map +1 -1
  187. package/_vendor/zod-to-json-schema/parsers/readonly.js +1 -3
  188. package/_vendor/zod-to-json-schema/parsers/readonly.js.map +1 -1
  189. package/_vendor/zod-to-json-schema/parsers/readonly.mjs +1 -3
  190. package/_vendor/zod-to-json-schema/parsers/readonly.mjs.map +1 -1
  191. package/_vendor/zod-to-json-schema/parsers/record.d.mts +5 -5
  192. package/_vendor/zod-to-json-schema/parsers/record.d.mts.map +1 -1
  193. package/_vendor/zod-to-json-schema/parsers/record.d.ts +5 -5
  194. package/_vendor/zod-to-json-schema/parsers/record.d.ts.map +1 -1
  195. package/_vendor/zod-to-json-schema/parsers/record.js +5 -5
  196. package/_vendor/zod-to-json-schema/parsers/record.js.map +1 -1
  197. package/_vendor/zod-to-json-schema/parsers/record.mjs +5 -5
  198. package/_vendor/zod-to-json-schema/parsers/record.mjs.map +1 -1
  199. package/_vendor/zod-to-json-schema/parsers/set.d.mts +4 -4
  200. package/_vendor/zod-to-json-schema/parsers/set.d.mts.map +1 -1
  201. package/_vendor/zod-to-json-schema/parsers/set.d.ts +4 -4
  202. package/_vendor/zod-to-json-schema/parsers/set.d.ts.map +1 -1
  203. package/_vendor/zod-to-json-schema/parsers/set.js.map +1 -1
  204. package/_vendor/zod-to-json-schema/parsers/set.mjs.map +1 -1
  205. package/_vendor/zod-to-json-schema/parsers/string.d.mts +3 -3
  206. package/_vendor/zod-to-json-schema/parsers/string.d.mts.map +1 -1
  207. package/_vendor/zod-to-json-schema/parsers/string.d.ts +3 -3
  208. package/_vendor/zod-to-json-schema/parsers/string.d.ts.map +1 -1
  209. package/_vendor/zod-to-json-schema/parsers/string.js +55 -33
  210. package/_vendor/zod-to-json-schema/parsers/string.js.map +1 -1
  211. package/_vendor/zod-to-json-schema/parsers/string.mjs +55 -33
  212. package/_vendor/zod-to-json-schema/parsers/string.mjs.map +1 -1
  213. package/_vendor/zod-to-json-schema/parsers/tuple.d.mts +3 -3
  214. package/_vendor/zod-to-json-schema/parsers/tuple.d.mts.map +1 -1
  215. package/_vendor/zod-to-json-schema/parsers/tuple.d.ts +3 -3
  216. package/_vendor/zod-to-json-schema/parsers/tuple.d.ts.map +1 -1
  217. package/_vendor/zod-to-json-schema/parsers/tuple.js +12 -14
  218. package/_vendor/zod-to-json-schema/parsers/tuple.js.map +1 -1
  219. package/_vendor/zod-to-json-schema/parsers/tuple.mjs +12 -14
  220. package/_vendor/zod-to-json-schema/parsers/tuple.mjs.map +1 -1
  221. package/_vendor/zod-to-json-schema/parsers/union.d.mts +3 -3
  222. package/_vendor/zod-to-json-schema/parsers/union.d.mts.map +1 -1
  223. package/_vendor/zod-to-json-schema/parsers/union.d.ts +3 -3
  224. package/_vendor/zod-to-json-schema/parsers/union.d.ts.map +1 -1
  225. package/_vendor/zod-to-json-schema/parsers/union.js +43 -24
  226. package/_vendor/zod-to-json-schema/parsers/union.js.map +1 -1
  227. package/_vendor/zod-to-json-schema/parsers/union.mjs +43 -24
  228. package/_vendor/zod-to-json-schema/parsers/union.mjs.map +1 -1
  229. package/_vendor/zod-to-json-schema/util.d.mts +1 -1
  230. package/_vendor/zod-to-json-schema/util.d.mts.map +1 -1
  231. package/_vendor/zod-to-json-schema/util.d.ts +1 -1
  232. package/_vendor/zod-to-json-schema/util.d.ts.map +1 -1
  233. package/_vendor/zod-to-json-schema/util.js +6 -5
  234. package/_vendor/zod-to-json-schema/util.js.map +1 -1
  235. package/_vendor/zod-to-json-schema/util.mjs +6 -5
  236. package/_vendor/zod-to-json-schema/util.mjs.map +1 -1
  237. package/_vendor/zod-to-json-schema/zodToJsonSchema.d.mts +4 -6
  238. package/_vendor/zod-to-json-schema/zodToJsonSchema.d.mts.map +1 -1
  239. package/_vendor/zod-to-json-schema/zodToJsonSchema.d.ts +4 -6
  240. package/_vendor/zod-to-json-schema/zodToJsonSchema.d.ts.map +1 -1
  241. package/_vendor/zod-to-json-schema/zodToJsonSchema.js +102 -36
  242. package/_vendor/zod-to-json-schema/zodToJsonSchema.js.map +1 -1
  243. package/_vendor/zod-to-json-schema/zodToJsonSchema.mjs +102 -36
  244. package/_vendor/zod-to-json-schema/zodToJsonSchema.mjs.map +1 -1
  245. package/auth/index.d.mts +1 -1
  246. package/auth/index.d.mts.map +1 -1
  247. package/auth/index.d.ts +1 -1
  248. package/auth/index.d.ts.map +1 -1
  249. package/auth/index.js.map +1 -1
  250. package/auth/index.mjs.map +1 -1
  251. package/auth/subject-token-providers.d.mts +52 -0
  252. package/auth/subject-token-providers.d.mts.map +1 -1
  253. package/auth/subject-token-providers.d.ts +52 -0
  254. package/auth/subject-token-providers.d.ts.map +1 -1
  255. package/auth/subject-token-providers.js +222 -7
  256. package/auth/subject-token-providers.js.map +1 -1
  257. package/auth/subject-token-providers.mjs +222 -7
  258. package/auth/subject-token-providers.mjs.map +1 -1
  259. package/auth/types.d.mts +31 -5
  260. package/auth/types.d.mts.map +1 -1
  261. package/auth/types.d.ts +31 -5
  262. package/auth/types.d.ts.map +1 -1
  263. package/auth/workload-identity-auth.d.mts +26 -1
  264. package/auth/workload-identity-auth.d.mts.map +1 -1
  265. package/auth/workload-identity-auth.d.ts +26 -1
  266. package/auth/workload-identity-auth.d.ts.map +1 -1
  267. package/auth/workload-identity-auth.js +139 -22
  268. package/auth/workload-identity-auth.js.map +1 -1
  269. package/auth/workload-identity-auth.mjs +139 -22
  270. package/auth/workload-identity-auth.mjs.map +1 -1
  271. package/auth/x509-transport.d.mts +5 -0
  272. package/auth/x509-transport.d.mts.map +1 -0
  273. package/auth/x509-transport.d.ts +5 -0
  274. package/auth/x509-transport.d.ts.map +1 -0
  275. package/auth/x509-transport.js +39 -0
  276. package/auth/x509-transport.js.map +1 -0
  277. package/auth/x509-transport.mjs +36 -0
  278. package/auth/x509-transport.mjs.map +1 -0
  279. package/azure.d.mts +38 -16
  280. package/azure.d.mts.map +1 -1
  281. package/azure.d.ts +38 -16
  282. package/azure.d.ts.map +1 -1
  283. package/azure.js +36 -19
  284. package/azure.js.map +1 -1
  285. package/azure.mjs +36 -19
  286. package/azure.mjs.map +1 -1
  287. package/bedrock.d.mts +23 -5
  288. package/bedrock.d.mts.map +1 -1
  289. package/bedrock.d.ts +23 -5
  290. package/bedrock.d.ts.map +1 -1
  291. package/bedrock.js +69 -8
  292. package/bedrock.js.map +1 -1
  293. package/bedrock.mjs +69 -8
  294. package/bedrock.mjs.map +1 -1
  295. package/beta/realtime/internal-base.d.mts +47 -4
  296. package/beta/realtime/internal-base.d.mts.map +1 -1
  297. package/beta/realtime/internal-base.d.ts +47 -4
  298. package/beta/realtime/internal-base.d.ts.map +1 -1
  299. package/beta/realtime/internal-base.js +53 -10
  300. package/beta/realtime/internal-base.js.map +1 -1
  301. package/beta/realtime/internal-base.mjs +52 -10
  302. package/beta/realtime/internal-base.mjs.map +1 -1
  303. package/beta/realtime/websocket.d.mts +63 -4
  304. package/beta/realtime/websocket.d.mts.map +1 -1
  305. package/beta/realtime/websocket.d.ts +63 -4
  306. package/beta/realtime/websocket.d.ts.map +1 -1
  307. package/beta/realtime/websocket.js +161 -26
  308. package/beta/realtime/websocket.js.map +1 -1
  309. package/beta/realtime/websocket.mjs +162 -27
  310. package/beta/realtime/websocket.mjs.map +1 -1
  311. package/beta/realtime/ws.d.mts +51 -3
  312. package/beta/realtime/ws.d.mts.map +1 -1
  313. package/beta/realtime/ws.d.ts +51 -3
  314. package/beta/realtime/ws.d.ts.map +1 -1
  315. package/beta/realtime/ws.js +82 -9
  316. package/beta/realtime/ws.js.map +1 -1
  317. package/beta/realtime/ws.mjs +83 -10
  318. package/beta/realtime/ws.mjs.map +1 -1
  319. package/client.d.mts +40 -2
  320. package/client.d.mts.map +1 -1
  321. package/client.d.ts +40 -2
  322. package/client.d.ts.map +1 -1
  323. package/client.js +597 -75
  324. package/client.js.map +1 -1
  325. package/client.mjs +598 -76
  326. package/client.mjs.map +1 -1
  327. package/core/EventEmitter.d.mts +10 -6
  328. package/core/EventEmitter.d.mts.map +1 -1
  329. package/core/EventEmitter.d.ts +10 -6
  330. package/core/EventEmitter.d.ts.map +1 -1
  331. package/core/EventEmitter.js +98 -16
  332. package/core/EventEmitter.js.map +1 -1
  333. package/core/EventEmitter.mjs +99 -17
  334. package/core/EventEmitter.mjs.map +1 -1
  335. package/core/api-promise.d.mts.map +1 -1
  336. package/core/api-promise.d.ts.map +1 -1
  337. package/core/api-promise.js +0 -1
  338. package/core/api-promise.js.map +1 -1
  339. package/core/api-promise.mjs +0 -1
  340. package/core/api-promise.mjs.map +1 -1
  341. package/core/error.d.mts.map +1 -1
  342. package/core/error.d.ts.map +1 -1
  343. package/core/error.js +5 -5
  344. package/core/error.js.map +1 -1
  345. package/core/error.mjs +5 -5
  346. package/core/error.mjs.map +1 -1
  347. package/core/pagination.d.mts.map +1 -1
  348. package/core/pagination.d.ts.map +1 -1
  349. package/core/pagination.js +0 -1
  350. package/core/pagination.js.map +1 -1
  351. package/core/pagination.mjs +0 -1
  352. package/core/pagination.mjs.map +1 -1
  353. package/core/resource.d.mts.map +1 -1
  354. package/core/resource.d.ts.map +1 -1
  355. package/core/resource.js +0 -1
  356. package/core/resource.js.map +1 -1
  357. package/core/resource.mjs +0 -1
  358. package/core/resource.mjs.map +1 -1
  359. package/core/streaming.d.mts +29 -2
  360. package/core/streaming.d.mts.map +1 -1
  361. package/core/streaming.d.ts +29 -2
  362. package/core/streaming.d.ts.map +1 -1
  363. package/core/streaming.js +177 -75
  364. package/core/streaming.js.map +1 -1
  365. package/core/streaming.mjs +177 -75
  366. package/core/streaming.mjs.map +1 -1
  367. package/helpers/audio.d.mts +29 -0
  368. package/helpers/audio.d.mts.map +1 -1
  369. package/helpers/audio.d.ts +29 -0
  370. package/helpers/audio.d.ts.map +1 -1
  371. package/helpers/audio.js +163 -28
  372. package/helpers/audio.js.map +1 -1
  373. package/helpers/audio.mjs +163 -28
  374. package/helpers/audio.mjs.map +1 -1
  375. package/helpers/standard-schema.d.mts +154 -18
  376. package/helpers/standard-schema.d.mts.map +1 -1
  377. package/helpers/standard-schema.d.ts +154 -18
  378. package/helpers/standard-schema.d.ts.map +1 -1
  379. package/helpers/standard-schema.js +92 -29
  380. package/helpers/standard-schema.js.map +1 -1
  381. package/helpers/standard-schema.mjs +93 -30
  382. package/helpers/standard-schema.mjs.map +1 -1
  383. package/helpers/zod-v3-strict-schema.d.mts +7 -0
  384. package/helpers/zod-v3-strict-schema.d.mts.map +1 -0
  385. package/helpers/zod-v3-strict-schema.d.ts +7 -0
  386. package/helpers/zod-v3-strict-schema.d.ts.map +1 -0
  387. package/helpers/zod-v3-strict-schema.js +403 -0
  388. package/helpers/zod-v3-strict-schema.js.map +1 -0
  389. package/helpers/zod-v3-strict-schema.mjs +399 -0
  390. package/helpers/zod-v3-strict-schema.mjs.map +1 -0
  391. package/helpers/zod.d.mts +79 -5
  392. package/helpers/zod.d.mts.map +1 -1
  393. package/helpers/zod.d.ts +79 -5
  394. package/helpers/zod.d.ts.map +1 -1
  395. package/helpers/zod.js +84 -23
  396. package/helpers/zod.js.map +1 -1
  397. package/helpers/zod.mjs +86 -25
  398. package/helpers/zod.mjs.map +1 -1
  399. package/index.d.mts +2 -2
  400. package/index.d.mts.map +1 -1
  401. package/index.d.ts +2 -2
  402. package/index.d.ts.map +1 -1
  403. package/index.js +0 -1
  404. package/index.js.map +1 -1
  405. package/index.mjs +0 -1
  406. package/index.mjs.map +1 -1
  407. package/internal/assistant-stream-delta.d.mts +7 -0
  408. package/internal/assistant-stream-delta.d.mts.map +1 -0
  409. package/internal/assistant-stream-delta.d.ts +7 -0
  410. package/internal/assistant-stream-delta.d.ts.map +1 -0
  411. package/internal/assistant-stream-delta.js +309 -0
  412. package/internal/assistant-stream-delta.js.map +1 -0
  413. package/internal/assistant-stream-delta.mjs +301 -0
  414. package/internal/assistant-stream-delta.mjs.map +1 -0
  415. package/internal/auth/x509-token-exchange.d.mts +16 -0
  416. package/internal/auth/x509-token-exchange.d.mts.map +1 -0
  417. package/internal/auth/x509-token-exchange.d.ts +16 -0
  418. package/internal/auth/x509-token-exchange.d.ts.map +1 -0
  419. package/internal/auth/x509-token-exchange.js +246 -0
  420. package/internal/auth/x509-token-exchange.js.map +1 -0
  421. package/internal/auth/x509-token-exchange.mjs +243 -0
  422. package/internal/auth/x509-token-exchange.mjs.map +1 -0
  423. package/internal/auth/x509-transport-capability.d.mts +37 -0
  424. package/internal/auth/x509-transport-capability.d.mts.map +1 -0
  425. package/internal/auth/x509-transport-capability.d.ts +37 -0
  426. package/internal/auth/x509-transport-capability.d.ts.map +1 -0
  427. package/internal/auth/x509-transport-capability.js +169 -0
  428. package/internal/auth/x509-transport-capability.js.map +1 -0
  429. package/internal/auth/x509-transport-capability.mjs +164 -0
  430. package/internal/auth/x509-transport-capability.mjs.map +1 -0
  431. package/internal/auth/x509-transport-registry.d.mts +63 -0
  432. package/internal/auth/x509-transport-registry.d.mts.map +1 -0
  433. package/internal/auth/x509-transport-registry.d.ts +63 -0
  434. package/internal/auth/x509-transport-registry.d.ts.map +1 -0
  435. package/internal/auth/x509-transport-registry.js +53 -0
  436. package/internal/auth/x509-transport-registry.js.map +1 -0
  437. package/internal/auth/x509-transport-registry.mjs +48 -0
  438. package/internal/auth/x509-transport-registry.mjs.map +1 -0
  439. package/internal/auth/x509-transport-state-browser.d.mts +21 -0
  440. package/internal/auth/x509-transport-state-browser.d.mts.map +1 -0
  441. package/internal/auth/x509-transport-state-browser.d.ts +21 -0
  442. package/internal/auth/x509-transport-state-browser.d.ts.map +1 -0
  443. package/internal/auth/x509-transport-state-browser.js +30 -0
  444. package/internal/auth/x509-transport-state-browser.js.map +1 -0
  445. package/internal/auth/x509-transport-state-browser.mjs +27 -0
  446. package/internal/auth/x509-transport-state-browser.mjs.map +1 -0
  447. package/internal/auth/x509-transport-state.cjs +30 -0
  448. package/internal/auth/x509-transport-state.cjs.map +1 -0
  449. package/internal/auth/x509-transport-state.d.cts +21 -0
  450. package/internal/auth/x509-transport-state.d.cts.map +1 -0
  451. package/internal/auth/x509-workload-identity-auth.d.mts +128 -0
  452. package/internal/auth/x509-workload-identity-auth.d.mts.map +1 -0
  453. package/internal/auth/x509-workload-identity-auth.d.ts +128 -0
  454. package/internal/auth/x509-workload-identity-auth.d.ts.map +1 -0
  455. package/internal/auth/x509-workload-identity-auth.js +767 -0
  456. package/internal/auth/x509-workload-identity-auth.js.map +1 -0
  457. package/internal/auth/x509-workload-identity-auth.mjs +757 -0
  458. package/internal/auth/x509-workload-identity-auth.mjs.map +1 -0
  459. package/internal/bedrock.d.mts +82 -5
  460. package/internal/bedrock.d.mts.map +1 -1
  461. package/internal/bedrock.d.ts +82 -5
  462. package/internal/bedrock.d.ts.map +1 -1
  463. package/internal/bedrock.js +312 -13
  464. package/internal/bedrock.js.map +1 -1
  465. package/internal/bedrock.mjs +307 -13
  466. package/internal/bedrock.mjs.map +1 -1
  467. package/internal/builtin-types.d.mts.map +1 -1
  468. package/internal/builtin-types.d.ts.map +1 -1
  469. package/internal/builtin-types.js +0 -1
  470. package/internal/builtin-types.js.map +1 -1
  471. package/internal/builtin-types.mjs +0 -1
  472. package/internal/builtin-types.mjs.map +1 -1
  473. package/internal/data-residency.d.mts +12 -0
  474. package/internal/data-residency.d.mts.map +1 -0
  475. package/internal/data-residency.d.ts +12 -0
  476. package/internal/data-residency.d.ts.map +1 -0
  477. package/internal/data-residency.js +34 -0
  478. package/internal/data-residency.js.map +1 -0
  479. package/internal/data-residency.mjs +30 -0
  480. package/internal/data-residency.mjs.map +1 -0
  481. package/internal/decoders/line.d.mts +25 -2
  482. package/internal/decoders/line.d.mts.map +1 -1
  483. package/internal/decoders/line.d.ts +25 -2
  484. package/internal/decoders/line.d.ts.map +1 -1
  485. package/internal/decoders/line.js +139 -54
  486. package/internal/decoders/line.js.map +1 -1
  487. package/internal/decoders/line.mjs +140 -55
  488. package/internal/decoders/line.mjs.map +1 -1
  489. package/internal/detect-platform.d.mts.map +1 -1
  490. package/internal/detect-platform.d.ts.map +1 -1
  491. package/internal/detect-platform.js +1 -2
  492. package/internal/detect-platform.js.map +1 -1
  493. package/internal/detect-platform.mjs +1 -2
  494. package/internal/detect-platform.mjs.map +1 -1
  495. package/internal/errors.d.mts.map +1 -1
  496. package/internal/errors.d.ts.map +1 -1
  497. package/internal/errors.js +0 -1
  498. package/internal/errors.js.map +1 -1
  499. package/internal/errors.mjs +0 -1
  500. package/internal/errors.mjs.map +1 -1
  501. package/internal/headers.d.mts.map +1 -1
  502. package/internal/headers.d.ts.map +1 -1
  503. package/internal/headers.js +0 -1
  504. package/internal/headers.js.map +1 -1
  505. package/internal/headers.mjs +0 -1
  506. package/internal/headers.mjs.map +1 -1
  507. package/internal/multipart-encoding.d.mts +8 -0
  508. package/internal/multipart-encoding.d.mts.map +1 -0
  509. package/internal/multipart-encoding.d.ts +8 -0
  510. package/internal/multipart-encoding.d.ts.map +1 -0
  511. package/internal/multipart-encoding.js +51 -0
  512. package/internal/multipart-encoding.js.map +1 -0
  513. package/internal/multipart-encoding.mjs +48 -0
  514. package/internal/multipart-encoding.mjs.map +1 -0
  515. package/internal/parse.d.mts.map +1 -1
  516. package/internal/parse.d.ts.map +1 -1
  517. package/internal/parse.js +23 -3
  518. package/internal/parse.js.map +1 -1
  519. package/internal/parse.mjs +23 -3
  520. package/internal/parse.mjs.map +1 -1
  521. package/internal/provider.d.mts +26 -0
  522. package/internal/provider.d.mts.map +1 -1
  523. package/internal/provider.d.ts +26 -0
  524. package/internal/provider.d.ts.map +1 -1
  525. package/internal/provider.js +11 -0
  526. package/internal/provider.js.map +1 -1
  527. package/internal/provider.mjs +11 -0
  528. package/internal/provider.mjs.map +1 -1
  529. package/internal/qs/formats.d.mts +1 -1
  530. package/internal/qs/formats.d.mts.map +1 -1
  531. package/internal/qs/formats.d.ts +1 -1
  532. package/internal/qs/formats.d.ts.map +1 -1
  533. package/internal/qs/formats.js +1 -2
  534. package/internal/qs/formats.js.map +1 -1
  535. package/internal/qs/formats.mjs +1 -1
  536. package/internal/qs/formats.mjs.map +1 -1
  537. package/internal/qs/stringify.d.mts.map +1 -1
  538. package/internal/qs/stringify.d.ts.map +1 -1
  539. package/internal/qs/stringify.js +57 -51
  540. package/internal/qs/stringify.js.map +1 -1
  541. package/internal/qs/stringify.mjs +57 -51
  542. package/internal/qs/stringify.mjs.map +1 -1
  543. package/internal/qs/types.d.mts +1 -1
  544. package/internal/qs/types.d.mts.map +1 -1
  545. package/internal/qs/types.d.ts +1 -1
  546. package/internal/qs/types.d.ts.map +1 -1
  547. package/internal/qs/utils.d.mts +1 -1
  548. package/internal/qs/utils.d.mts.map +1 -1
  549. package/internal/qs/utils.d.ts +1 -1
  550. package/internal/qs/utils.d.ts.map +1 -1
  551. package/internal/qs/utils.js +356 -50
  552. package/internal/qs/utils.js.map +1 -1
  553. package/internal/qs/utils.mjs +356 -50
  554. package/internal/qs/utils.mjs.map +1 -1
  555. package/internal/request-options.d.mts +7 -0
  556. package/internal/request-options.d.mts.map +1 -1
  557. package/internal/request-options.d.ts +7 -0
  558. package/internal/request-options.d.ts.map +1 -1
  559. package/internal/request-options.js +43 -2
  560. package/internal/request-options.js.map +1 -1
  561. package/internal/request-options.mjs +42 -2
  562. package/internal/request-options.mjs.map +1 -1
  563. package/internal/responses/canonical-output-text.d.mts +16 -0
  564. package/internal/responses/canonical-output-text.d.mts.map +1 -0
  565. package/internal/responses/canonical-output-text.d.ts +16 -0
  566. package/internal/responses/canonical-output-text.d.ts.map +1 -0
  567. package/internal/responses/canonical-output-text.js +123 -0
  568. package/internal/responses/canonical-output-text.js.map +1 -0
  569. package/internal/responses/canonical-output-text.mjs +115 -0
  570. package/internal/responses/canonical-output-text.mjs.map +1 -0
  571. package/internal/responses/output-text-index.d.mts +18 -0
  572. package/internal/responses/output-text-index.d.mts.map +1 -0
  573. package/internal/responses/output-text-index.d.ts +18 -0
  574. package/internal/responses/output-text-index.d.ts.map +1 -0
  575. package/internal/responses/output-text-index.js +77 -0
  576. package/internal/responses/output-text-index.js.map +1 -0
  577. package/internal/responses/output-text-index.mjs +73 -0
  578. package/internal/responses/output-text-index.mjs.map +1 -0
  579. package/internal/responses/response-accumulator.d.mts +11 -0
  580. package/internal/responses/response-accumulator.d.mts.map +1 -0
  581. package/internal/responses/response-accumulator.d.ts +11 -0
  582. package/internal/responses/response-accumulator.d.ts.map +1 -0
  583. package/internal/responses/response-accumulator.js +925 -0
  584. package/internal/responses/response-accumulator.js.map +1 -0
  585. package/internal/responses/response-accumulator.mjs +921 -0
  586. package/internal/responses/response-accumulator.mjs.map +1 -0
  587. package/internal/shim-types.d.mts.map +1 -1
  588. package/internal/shim-types.d.ts.map +1 -1
  589. package/internal/shim-types.js +6 -1
  590. package/internal/shim-types.js.map +1 -1
  591. package/internal/shim-types.mjs +6 -1
  592. package/internal/shim-types.mjs.map +1 -1
  593. package/internal/shims.d.mts.map +1 -1
  594. package/internal/shims.d.ts.map +1 -1
  595. package/internal/shims.js +6 -1
  596. package/internal/shims.js.map +1 -1
  597. package/internal/shims.mjs +6 -1
  598. package/internal/shims.mjs.map +1 -1
  599. package/internal/stream-utils.d.mts +10 -3
  600. package/internal/stream-utils.d.mts.map +1 -1
  601. package/internal/stream-utils.d.ts +10 -3
  602. package/internal/stream-utils.d.ts.map +1 -1
  603. package/internal/stream-utils.js +35 -7
  604. package/internal/stream-utils.js.map +1 -1
  605. package/internal/stream-utils.mjs +35 -7
  606. package/internal/stream-utils.mjs.map +1 -1
  607. package/internal/to-file.d.mts +39 -17
  608. package/internal/to-file.d.mts.map +1 -1
  609. package/internal/to-file.d.ts +39 -17
  610. package/internal/to-file.d.ts.map +1 -1
  611. package/internal/to-file.js +44 -22
  612. package/internal/to-file.js.map +1 -1
  613. package/internal/to-file.mjs +44 -22
  614. package/internal/to-file.mjs.map +1 -1
  615. package/internal/tslib.js +6 -0
  616. package/internal/tslib.mjs +6 -1
  617. package/internal/types.d.mts +4 -4
  618. package/internal/types.d.mts.map +1 -1
  619. package/internal/types.d.ts +4 -4
  620. package/internal/types.d.ts.map +1 -1
  621. package/internal/types.js +0 -1
  622. package/internal/types.js.map +1 -1
  623. package/internal/types.mjs +0 -1
  624. package/internal/types.mjs.map +1 -1
  625. package/internal/uploads.d.mts +84 -14
  626. package/internal/uploads.d.mts.map +1 -1
  627. package/internal/uploads.d.ts +84 -14
  628. package/internal/uploads.d.ts.map +1 -1
  629. package/internal/uploads.js +212 -75
  630. package/internal/uploads.js.map +1 -1
  631. package/internal/uploads.mjs +212 -75
  632. package/internal/uploads.mjs.map +1 -1
  633. package/internal/utils/base64.d.mts.map +1 -1
  634. package/internal/utils/base64.d.ts.map +1 -1
  635. package/internal/utils/base64.js +0 -1
  636. package/internal/utils/base64.js.map +1 -1
  637. package/internal/utils/base64.mjs +0 -1
  638. package/internal/utils/base64.mjs.map +1 -1
  639. package/internal/utils/bytes.d.mts +3 -0
  640. package/internal/utils/bytes.d.mts.map +1 -1
  641. package/internal/utils/bytes.d.ts +3 -0
  642. package/internal/utils/bytes.d.ts.map +1 -1
  643. package/internal/utils/bytes.js +3 -0
  644. package/internal/utils/bytes.js.map +1 -1
  645. package/internal/utils/bytes.mjs +3 -0
  646. package/internal/utils/bytes.mjs.map +1 -1
  647. package/internal/utils/env.d.mts.map +1 -1
  648. package/internal/utils/env.d.ts.map +1 -1
  649. package/internal/utils/env.js +9 -5
  650. package/internal/utils/env.js.map +1 -1
  651. package/internal/utils/env.mjs +9 -5
  652. package/internal/utils/env.mjs.map +1 -1
  653. package/internal/utils/log.d.mts.map +1 -1
  654. package/internal/utils/log.d.ts.map +1 -1
  655. package/internal/utils/log.js +3 -4
  656. package/internal/utils/log.js.map +1 -1
  657. package/internal/utils/log.mjs +3 -4
  658. package/internal/utils/log.mjs.map +1 -1
  659. package/internal/utils/path.d.mts +14 -2
  660. package/internal/utils/path.d.mts.map +1 -1
  661. package/internal/utils/path.d.ts +14 -2
  662. package/internal/utils/path.d.ts.map +1 -1
  663. package/internal/utils/path.js +48 -30
  664. package/internal/utils/path.js.map +1 -1
  665. package/internal/utils/path.mjs +48 -30
  666. package/internal/utils/path.mjs.map +1 -1
  667. package/internal/utils/query.d.mts.map +1 -1
  668. package/internal/utils/query.d.ts.map +1 -1
  669. package/internal/utils/query.js +0 -1
  670. package/internal/utils/query.js.map +1 -1
  671. package/internal/utils/query.mjs +0 -1
  672. package/internal/utils/query.mjs.map +1 -1
  673. package/internal/utils/sleep.d.mts.map +1 -1
  674. package/internal/utils/sleep.d.ts.map +1 -1
  675. package/internal/utils/sleep.js +0 -1
  676. package/internal/utils/sleep.js.map +1 -1
  677. package/internal/utils/sleep.mjs +0 -1
  678. package/internal/utils/sleep.mjs.map +1 -1
  679. package/internal/utils/uuid.d.mts.map +1 -1
  680. package/internal/utils/uuid.d.ts.map +1 -1
  681. package/internal/utils/uuid.js +0 -1
  682. package/internal/utils/uuid.js.map +1 -1
  683. package/internal/utils/uuid.mjs +0 -1
  684. package/internal/utils/uuid.mjs.map +1 -1
  685. package/internal/utils/values.d.mts.map +1 -1
  686. package/internal/utils/values.d.ts.map +1 -1
  687. package/internal/utils/values.js +0 -1
  688. package/internal/utils/values.js.map +1 -1
  689. package/internal/utils/values.mjs +0 -1
  690. package/internal/utils/values.mjs.map +1 -1
  691. package/internal/utils.d.mts.map +1 -1
  692. package/internal/utils.d.ts.map +1 -1
  693. package/internal/utils.js +0 -1
  694. package/internal/utils.js.map +1 -1
  695. package/internal/utils.mjs +0 -1
  696. package/internal/utils.mjs.map +1 -1
  697. package/internal/ws-adapter-browser.d.mts +26 -3
  698. package/internal/ws-adapter-browser.d.mts.map +1 -1
  699. package/internal/ws-adapter-browser.d.ts +26 -3
  700. package/internal/ws-adapter-browser.d.ts.map +1 -1
  701. package/internal/ws-adapter-browser.js +64 -21
  702. package/internal/ws-adapter-browser.js.map +1 -1
  703. package/internal/ws-adapter-browser.mjs +64 -21
  704. package/internal/ws-adapter-browser.mjs.map +1 -1
  705. package/internal/ws-adapter-node.d.mts +18 -3
  706. package/internal/ws-adapter-node.d.mts.map +1 -1
  707. package/internal/ws-adapter-node.d.ts +18 -3
  708. package/internal/ws-adapter-node.d.ts.map +1 -1
  709. package/internal/ws-adapter-node.js +90 -24
  710. package/internal/ws-adapter-node.js.map +1 -1
  711. package/internal/ws-adapter-node.mjs +90 -24
  712. package/internal/ws-adapter-node.mjs.map +1 -1
  713. package/internal/ws-adapter.d.mts +14 -0
  714. package/internal/ws-adapter.d.mts.map +1 -1
  715. package/internal/ws-adapter.d.ts +14 -0
  716. package/internal/ws-adapter.d.ts.map +1 -1
  717. package/internal/ws-adapter.js +4 -0
  718. package/internal/ws-adapter.js.map +1 -1
  719. package/internal/ws-adapter.mjs +4 -0
  720. package/internal/ws-adapter.mjs.map +1 -1
  721. package/internal/ws.d.mts +36 -8
  722. package/internal/ws.d.mts.map +1 -1
  723. package/internal/ws.d.ts +36 -8
  724. package/internal/ws.d.ts.map +1 -1
  725. package/internal/ws.js +116 -47
  726. package/internal/ws.js.map +1 -1
  727. package/internal/ws.mjs +115 -47
  728. package/internal/ws.mjs.map +1 -1
  729. package/lib/AbstractChatCompletionRunner.d.mts +26 -5
  730. package/lib/AbstractChatCompletionRunner.d.mts.map +1 -1
  731. package/lib/AbstractChatCompletionRunner.d.ts +26 -5
  732. package/lib/AbstractChatCompletionRunner.d.ts.map +1 -1
  733. package/lib/AbstractChatCompletionRunner.js +89 -39
  734. package/lib/AbstractChatCompletionRunner.js.map +1 -1
  735. package/lib/AbstractChatCompletionRunner.mjs +92 -42
  736. package/lib/AbstractChatCompletionRunner.mjs.map +1 -1
  737. package/lib/AssistantStream.d.mts +49 -8
  738. package/lib/AssistantStream.d.mts.map +1 -1
  739. package/lib/AssistantStream.d.ts +49 -8
  740. package/lib/AssistantStream.d.ts.map +1 -1
  741. package/lib/AssistantStream.js +388 -227
  742. package/lib/AssistantStream.js.map +1 -1
  743. package/lib/AssistantStream.mjs +389 -228
  744. package/lib/AssistantStream.mjs.map +1 -1
  745. package/lib/ChatCompletionRunner.d.mts +16 -5
  746. package/lib/ChatCompletionRunner.d.mts.map +1 -1
  747. package/lib/ChatCompletionRunner.d.ts +16 -5
  748. package/lib/ChatCompletionRunner.d.ts.map +1 -1
  749. package/lib/ChatCompletionRunner.js +4 -1
  750. package/lib/ChatCompletionRunner.js.map +1 -1
  751. package/lib/ChatCompletionRunner.mjs +5 -2
  752. package/lib/ChatCompletionRunner.mjs.map +1 -1
  753. package/lib/ChatCompletionStream.d.mts +137 -35
  754. package/lib/ChatCompletionStream.d.mts.map +1 -1
  755. package/lib/ChatCompletionStream.d.ts +137 -35
  756. package/lib/ChatCompletionStream.d.ts.map +1 -1
  757. package/lib/ChatCompletionStream.js +1252 -162
  758. package/lib/ChatCompletionStream.js.map +1 -1
  759. package/lib/ChatCompletionStream.mjs +1255 -165
  760. package/lib/ChatCompletionStream.mjs.map +1 -1
  761. package/lib/ChatCompletionStreamingRunner.d.mts +20 -7
  762. package/lib/ChatCompletionStreamingRunner.d.mts.map +1 -1
  763. package/lib/ChatCompletionStreamingRunner.d.ts +20 -7
  764. package/lib/ChatCompletionStreamingRunner.d.ts.map +1 -1
  765. package/lib/ChatCompletionStreamingRunner.js +27 -67
  766. package/lib/ChatCompletionStreamingRunner.js.map +1 -1
  767. package/lib/ChatCompletionStreamingRunner.mjs +28 -68
  768. package/lib/ChatCompletionStreamingRunner.mjs.map +1 -1
  769. package/lib/EventEmitter.d.mts +9 -6
  770. package/lib/EventEmitter.d.mts.map +1 -1
  771. package/lib/EventEmitter.d.ts +9 -6
  772. package/lib/EventEmitter.d.ts.map +1 -1
  773. package/lib/EventEmitter.js +89 -20
  774. package/lib/EventEmitter.js.map +1 -1
  775. package/lib/EventEmitter.mjs +90 -21
  776. package/lib/EventEmitter.mjs.map +1 -1
  777. package/lib/EventStream.d.mts +49 -9
  778. package/lib/EventStream.d.mts.map +1 -1
  779. package/lib/EventStream.d.ts +49 -9
  780. package/lib/EventStream.d.ts.map +1 -1
  781. package/lib/EventStream.js +1257 -51
  782. package/lib/EventStream.js.map +1 -1
  783. package/lib/EventStream.mjs +1258 -52
  784. package/lib/EventStream.mjs.map +1 -1
  785. package/lib/ResponsesParser.d.mts +52 -5
  786. package/lib/ResponsesParser.d.mts.map +1 -1
  787. package/lib/ResponsesParser.d.ts +52 -5
  788. package/lib/ResponsesParser.d.ts.map +1 -1
  789. package/lib/ResponsesParser.js +32 -17
  790. package/lib/ResponsesParser.js.map +1 -1
  791. package/lib/ResponsesParser.mjs +33 -18
  792. package/lib/ResponsesParser.mjs.map +1 -1
  793. package/lib/RunnableFunction.d.mts +38 -10
  794. package/lib/RunnableFunction.d.mts.map +1 -1
  795. package/lib/RunnableFunction.d.ts +38 -10
  796. package/lib/RunnableFunction.d.ts.map +1 -1
  797. package/lib/RunnableFunction.js +3 -0
  798. package/lib/RunnableFunction.js.map +1 -1
  799. package/lib/RunnableFunction.mjs +3 -0
  800. package/lib/RunnableFunction.mjs.map +1 -1
  801. package/lib/Util.d.mts +2 -0
  802. package/lib/Util.d.mts.map +1 -1
  803. package/lib/Util.d.ts +2 -0
  804. package/lib/Util.d.ts.map +1 -1
  805. package/lib/Util.js +7 -4
  806. package/lib/Util.js.map +1 -1
  807. package/lib/Util.mjs +7 -4
  808. package/lib/Util.mjs.map +1 -1
  809. package/lib/assistant-run-polling.d.mts +12 -0
  810. package/lib/assistant-run-polling.d.mts.map +1 -0
  811. package/lib/assistant-run-polling.d.ts +12 -0
  812. package/lib/assistant-run-polling.d.ts.map +1 -0
  813. package/lib/assistant-run-polling.js +17 -0
  814. package/lib/assistant-run-polling.js.map +1 -0
  815. package/lib/assistant-run-polling.mjs +14 -0
  816. package/lib/assistant-run-polling.mjs.map +1 -0
  817. package/lib/chatCompletionUtils.d.mts +4 -1
  818. package/lib/chatCompletionUtils.d.mts.map +1 -1
  819. package/lib/chatCompletionUtils.d.ts +4 -1
  820. package/lib/chatCompletionUtils.d.ts.map +1 -1
  821. package/lib/chatCompletionUtils.js +5 -6
  822. package/lib/chatCompletionUtils.js.map +1 -1
  823. package/lib/chatCompletionUtils.mjs +5 -6
  824. package/lib/chatCompletionUtils.mjs.map +1 -1
  825. package/lib/embeddings.d.mts +18 -0
  826. package/lib/embeddings.d.mts.map +1 -0
  827. package/lib/embeddings.d.ts +18 -0
  828. package/lib/embeddings.d.ts.map +1 -0
  829. package/lib/embeddings.js +50 -0
  830. package/lib/embeddings.js.map +1 -0
  831. package/lib/embeddings.mjs +47 -0
  832. package/lib/embeddings.mjs.map +1 -0
  833. package/lib/file-processing.d.mts +10 -0
  834. package/lib/file-processing.d.mts.map +1 -0
  835. package/lib/file-processing.d.ts +10 -0
  836. package/lib/file-processing.d.ts.map +1 -0
  837. package/lib/file-processing.js +30 -0
  838. package/lib/file-processing.js.map +1 -0
  839. package/lib/file-processing.mjs +27 -0
  840. package/lib/file-processing.mjs.map +1 -0
  841. package/lib/jsonschema.d.mts +70 -14
  842. package/lib/jsonschema.d.mts.map +1 -1
  843. package/lib/jsonschema.d.ts +70 -14
  844. package/lib/jsonschema.d.ts.map +1 -1
  845. package/lib/parser.d.mts +97 -6
  846. package/lib/parser.d.mts.map +1 -1
  847. package/lib/parser.d.ts +97 -6
  848. package/lib/parser.d.ts.map +1 -1
  849. package/lib/parser.js +128 -41
  850. package/lib/parser.js.map +1 -1
  851. package/lib/parser.mjs +126 -41
  852. package/lib/parser.mjs.map +1 -1
  853. package/lib/polling.d.mts +20 -0
  854. package/lib/polling.d.mts.map +1 -0
  855. package/lib/polling.d.ts +20 -0
  856. package/lib/polling.d.ts.map +1 -0
  857. package/lib/polling.js +130 -0
  858. package/lib/polling.js.map +1 -0
  859. package/lib/polling.mjs +127 -0
  860. package/lib/polling.mjs.map +1 -0
  861. package/lib/responses/EventTypes.d.mts +7 -2
  862. package/lib/responses/EventTypes.d.mts.map +1 -1
  863. package/lib/responses/EventTypes.d.ts +7 -2
  864. package/lib/responses/EventTypes.d.ts.map +1 -1
  865. package/lib/responses/ResponseAccumulator.d.mts +4 -1
  866. package/lib/responses/ResponseAccumulator.d.mts.map +1 -1
  867. package/lib/responses/ResponseAccumulator.d.ts +4 -1
  868. package/lib/responses/ResponseAccumulator.d.ts.map +1 -1
  869. package/lib/responses/ResponseAccumulator.js +2 -390
  870. package/lib/responses/ResponseAccumulator.js.map +1 -1
  871. package/lib/responses/ResponseAccumulator.mjs +2 -390
  872. package/lib/responses/ResponseAccumulator.mjs.map +1 -1
  873. package/lib/responses/ResponseInputItems.d.mts +1 -0
  874. package/lib/responses/ResponseInputItems.d.mts.map +1 -1
  875. package/lib/responses/ResponseInputItems.d.ts +1 -0
  876. package/lib/responses/ResponseInputItems.d.ts.map +1 -1
  877. package/lib/responses/ResponseInputItems.js.map +1 -1
  878. package/lib/responses/ResponseInputItems.mjs.map +1 -1
  879. package/lib/responses/ResponseStream.d.mts +29 -10
  880. package/lib/responses/ResponseStream.d.mts.map +1 -1
  881. package/lib/responses/ResponseStream.d.ts +29 -10
  882. package/lib/responses/ResponseStream.d.ts.map +1 -1
  883. package/lib/responses/ResponseStream.js +57 -71
  884. package/lib/responses/ResponseStream.js.map +1 -1
  885. package/lib/responses/ResponseStream.mjs +58 -72
  886. package/lib/responses/ResponseStream.mjs.map +1 -1
  887. package/lib/transform.d.mts +21 -0
  888. package/lib/transform.d.mts.map +1 -1
  889. package/lib/transform.d.ts +21 -0
  890. package/lib/transform.d.ts.map +1 -1
  891. package/lib/transform.js +126 -76
  892. package/lib/transform.js.map +1 -1
  893. package/lib/transform.mjs +126 -76
  894. package/lib/transform.mjs.map +1 -1
  895. package/lib/vector-store-polling.d.mts +22 -0
  896. package/lib/vector-store-polling.d.mts.map +1 -0
  897. package/lib/vector-store-polling.d.ts +22 -0
  898. package/lib/vector-store-polling.d.ts.map +1 -0
  899. package/lib/vector-store-polling.js +24 -0
  900. package/lib/vector-store-polling.js.map +1 -0
  901. package/lib/vector-store-polling.mjs +20 -0
  902. package/lib/vector-store-polling.mjs.map +1 -0
  903. package/lib/vector-store-upload.d.mts +17 -0
  904. package/lib/vector-store-upload.d.mts.map +1 -0
  905. package/lib/vector-store-upload.d.ts +17 -0
  906. package/lib/vector-store-upload.d.ts.map +1 -0
  907. package/lib/vector-store-upload.js +37 -0
  908. package/lib/vector-store-upload.js.map +1 -0
  909. package/lib/vector-store-upload.mjs +34 -0
  910. package/lib/vector-store-upload.mjs.map +1 -0
  911. package/lib/webhook-signature.d.mts +15 -0
  912. package/lib/webhook-signature.d.mts.map +1 -0
  913. package/lib/webhook-signature.d.ts +15 -0
  914. package/lib/webhook-signature.d.ts.map +1 -0
  915. package/lib/webhook-signature.js +125 -0
  916. package/lib/webhook-signature.js.map +1 -0
  917. package/lib/webhook-signature.mjs +121 -0
  918. package/lib/webhook-signature.mjs.map +1 -0
  919. package/package.json +23 -3
  920. package/providers/bedrock/aws.d.mts +35 -8
  921. package/providers/bedrock/aws.d.mts.map +1 -1
  922. package/providers/bedrock/aws.d.ts +35 -8
  923. package/providers/bedrock/aws.d.ts.map +1 -1
  924. package/providers/bedrock/aws.js +60 -21
  925. package/providers/bedrock/aws.js.map +1 -1
  926. package/providers/bedrock/aws.mjs +61 -22
  927. package/providers/bedrock/aws.mjs.map +1 -1
  928. package/providers/bedrock.d.mts +17 -2
  929. package/providers/bedrock.d.mts.map +1 -1
  930. package/providers/bedrock.d.ts +17 -2
  931. package/providers/bedrock.d.ts.map +1 -1
  932. package/providers/bedrock.js +19 -2
  933. package/providers/bedrock.js.map +1 -1
  934. package/providers/bedrock.mjs +20 -3
  935. package/providers/bedrock.mjs.map +1 -1
  936. package/realtime/internal-base.d.mts +99 -10
  937. package/realtime/internal-base.d.mts.map +1 -1
  938. package/realtime/internal-base.d.ts +99 -10
  939. package/realtime/internal-base.d.ts.map +1 -1
  940. package/realtime/internal-base.js +94 -29
  941. package/realtime/internal-base.js.map +1 -1
  942. package/realtime/internal-base.mjs +93 -29
  943. package/realtime/internal-base.mjs.map +1 -1
  944. package/realtime/websocket.d.mts +63 -4
  945. package/realtime/websocket.d.mts.map +1 -1
  946. package/realtime/websocket.d.ts +63 -4
  947. package/realtime/websocket.d.ts.map +1 -1
  948. package/realtime/websocket.js +152 -27
  949. package/realtime/websocket.js.map +1 -1
  950. package/realtime/websocket.mjs +153 -28
  951. package/realtime/websocket.mjs.map +1 -1
  952. package/realtime/ws.d.mts +58 -3
  953. package/realtime/ws.d.mts.map +1 -1
  954. package/realtime/ws.d.ts +58 -3
  955. package/realtime/ws.d.ts.map +1 -1
  956. package/realtime/ws.js +72 -8
  957. package/realtime/ws.js.map +1 -1
  958. package/realtime/ws.mjs +73 -9
  959. package/realtime/ws.mjs.map +1 -1
  960. package/resources/admin/admin.js +1 -1
  961. package/resources/admin/admin.js.map +1 -1
  962. package/resources/admin/admin.mjs +1 -1
  963. package/resources/admin/admin.mjs.map +1 -1
  964. package/resources/admin/index.js +1 -1
  965. package/resources/admin/index.js.map +1 -1
  966. package/resources/admin/index.mjs +1 -1
  967. package/resources/admin/index.mjs.map +1 -1
  968. package/resources/admin/organization/admin-api-keys.js +1 -1
  969. package/resources/admin/organization/admin-api-keys.js.map +1 -1
  970. package/resources/admin/organization/admin-api-keys.mjs +1 -1
  971. package/resources/admin/organization/admin-api-keys.mjs.map +1 -1
  972. package/resources/admin/organization/audit-logs.d.mts +2 -2
  973. package/resources/admin/organization/audit-logs.d.mts.map +1 -1
  974. package/resources/admin/organization/audit-logs.d.ts +2 -2
  975. package/resources/admin/organization/audit-logs.d.ts.map +1 -1
  976. package/resources/admin/organization/audit-logs.js +1 -1
  977. package/resources/admin/organization/audit-logs.js.map +1 -1
  978. package/resources/admin/organization/audit-logs.mjs +1 -1
  979. package/resources/admin/organization/audit-logs.mjs.map +1 -1
  980. package/resources/admin/organization/certificates.js +1 -1
  981. package/resources/admin/organization/certificates.js.map +1 -1
  982. package/resources/admin/organization/certificates.mjs +1 -1
  983. package/resources/admin/organization/certificates.mjs.map +1 -1
  984. package/resources/admin/organization/data-retention.js +1 -1
  985. package/resources/admin/organization/data-retention.js.map +1 -1
  986. package/resources/admin/organization/data-retention.mjs +1 -1
  987. package/resources/admin/organization/data-retention.mjs.map +1 -1
  988. package/resources/admin/organization/groups/groups.js +1 -1
  989. package/resources/admin/organization/groups/groups.js.map +1 -1
  990. package/resources/admin/organization/groups/groups.mjs +1 -1
  991. package/resources/admin/organization/groups/groups.mjs.map +1 -1
  992. package/resources/admin/organization/groups/index.js +1 -1
  993. package/resources/admin/organization/groups/index.js.map +1 -1
  994. package/resources/admin/organization/groups/index.mjs +1 -1
  995. package/resources/admin/organization/groups/index.mjs.map +1 -1
  996. package/resources/admin/organization/groups/roles.js +1 -1
  997. package/resources/admin/organization/groups/roles.js.map +1 -1
  998. package/resources/admin/organization/groups/roles.mjs +1 -1
  999. package/resources/admin/organization/groups/roles.mjs.map +1 -1
  1000. package/resources/admin/organization/groups/users.js +1 -1
  1001. package/resources/admin/organization/groups/users.js.map +1 -1
  1002. package/resources/admin/organization/groups/users.mjs +1 -1
  1003. package/resources/admin/organization/groups/users.mjs.map +1 -1
  1004. package/resources/admin/organization/groups.js +1 -1
  1005. package/resources/admin/organization/groups.js.map +1 -1
  1006. package/resources/admin/organization/groups.mjs +1 -1
  1007. package/resources/admin/organization/groups.mjs.map +1 -1
  1008. package/resources/admin/organization/index.d.mts +2 -2
  1009. package/resources/admin/organization/index.d.mts.map +1 -1
  1010. package/resources/admin/organization/index.d.ts +2 -2
  1011. package/resources/admin/organization/index.d.ts.map +1 -1
  1012. package/resources/admin/organization/index.js +1 -1
  1013. package/resources/admin/organization/index.js.map +1 -1
  1014. package/resources/admin/organization/index.mjs +1 -1
  1015. package/resources/admin/organization/index.mjs.map +1 -1
  1016. package/resources/admin/organization/invites.js +1 -1
  1017. package/resources/admin/organization/invites.js.map +1 -1
  1018. package/resources/admin/organization/invites.mjs +1 -1
  1019. package/resources/admin/organization/invites.mjs.map +1 -1
  1020. package/resources/admin/organization/organization.d.mts +4 -4
  1021. package/resources/admin/organization/organization.d.mts.map +1 -1
  1022. package/resources/admin/organization/organization.d.ts +4 -4
  1023. package/resources/admin/organization/organization.d.ts.map +1 -1
  1024. package/resources/admin/organization/organization.js +1 -1
  1025. package/resources/admin/organization/organization.js.map +1 -1
  1026. package/resources/admin/organization/organization.mjs +1 -1
  1027. package/resources/admin/organization/organization.mjs.map +1 -1
  1028. package/resources/admin/organization/projects/api-keys.js +1 -1
  1029. package/resources/admin/organization/projects/api-keys.js.map +1 -1
  1030. package/resources/admin/organization/projects/api-keys.mjs +1 -1
  1031. package/resources/admin/organization/projects/api-keys.mjs.map +1 -1
  1032. package/resources/admin/organization/projects/certificates.js +1 -1
  1033. package/resources/admin/organization/projects/certificates.js.map +1 -1
  1034. package/resources/admin/organization/projects/certificates.mjs +1 -1
  1035. package/resources/admin/organization/projects/certificates.mjs.map +1 -1
  1036. package/resources/admin/organization/projects/data-retention.js +1 -1
  1037. package/resources/admin/organization/projects/data-retention.js.map +1 -1
  1038. package/resources/admin/organization/projects/data-retention.mjs +1 -1
  1039. package/resources/admin/organization/projects/data-retention.mjs.map +1 -1
  1040. package/resources/admin/organization/projects/groups/groups.js +1 -1
  1041. package/resources/admin/organization/projects/groups/groups.js.map +1 -1
  1042. package/resources/admin/organization/projects/groups/groups.mjs +1 -1
  1043. package/resources/admin/organization/projects/groups/groups.mjs.map +1 -1
  1044. package/resources/admin/organization/projects/groups/index.js +1 -1
  1045. package/resources/admin/organization/projects/groups/index.js.map +1 -1
  1046. package/resources/admin/organization/projects/groups/index.mjs +1 -1
  1047. package/resources/admin/organization/projects/groups/index.mjs.map +1 -1
  1048. package/resources/admin/organization/projects/groups/roles.js +1 -1
  1049. package/resources/admin/organization/projects/groups/roles.js.map +1 -1
  1050. package/resources/admin/organization/projects/groups/roles.mjs +1 -1
  1051. package/resources/admin/organization/projects/groups/roles.mjs.map +1 -1
  1052. package/resources/admin/organization/projects/groups.js +1 -1
  1053. package/resources/admin/organization/projects/groups.js.map +1 -1
  1054. package/resources/admin/organization/projects/groups.mjs +1 -1
  1055. package/resources/admin/organization/projects/groups.mjs.map +1 -1
  1056. package/resources/admin/organization/projects/hosted-tool-permissions.js +1 -1
  1057. package/resources/admin/organization/projects/hosted-tool-permissions.js.map +1 -1
  1058. package/resources/admin/organization/projects/hosted-tool-permissions.mjs +1 -1
  1059. package/resources/admin/organization/projects/hosted-tool-permissions.mjs.map +1 -1
  1060. package/resources/admin/organization/projects/index.d.mts +1 -1
  1061. package/resources/admin/organization/projects/index.d.mts.map +1 -1
  1062. package/resources/admin/organization/projects/index.d.ts +1 -1
  1063. package/resources/admin/organization/projects/index.d.ts.map +1 -1
  1064. package/resources/admin/organization/projects/index.js +1 -1
  1065. package/resources/admin/organization/projects/index.js.map +1 -1
  1066. package/resources/admin/organization/projects/index.mjs +1 -1
  1067. package/resources/admin/organization/projects/index.mjs.map +1 -1
  1068. package/resources/admin/organization/projects/model-permissions.js +1 -1
  1069. package/resources/admin/organization/projects/model-permissions.js.map +1 -1
  1070. package/resources/admin/organization/projects/model-permissions.mjs +1 -1
  1071. package/resources/admin/organization/projects/model-permissions.mjs.map +1 -1
  1072. package/resources/admin/organization/projects/projects.d.mts +22 -5
  1073. package/resources/admin/organization/projects/projects.d.mts.map +1 -1
  1074. package/resources/admin/organization/projects/projects.d.ts +22 -5
  1075. package/resources/admin/organization/projects/projects.d.ts.map +1 -1
  1076. package/resources/admin/organization/projects/projects.js +1 -1
  1077. package/resources/admin/organization/projects/projects.js.map +1 -1
  1078. package/resources/admin/organization/projects/projects.mjs +1 -1
  1079. package/resources/admin/organization/projects/projects.mjs.map +1 -1
  1080. package/resources/admin/organization/projects/rate-limits.js +1 -1
  1081. package/resources/admin/organization/projects/rate-limits.js.map +1 -1
  1082. package/resources/admin/organization/projects/rate-limits.mjs +1 -1
  1083. package/resources/admin/organization/projects/rate-limits.mjs.map +1 -1
  1084. package/resources/admin/organization/projects/roles.js +1 -1
  1085. package/resources/admin/organization/projects/roles.js.map +1 -1
  1086. package/resources/admin/organization/projects/roles.mjs +1 -1
  1087. package/resources/admin/organization/projects/roles.mjs.map +1 -1
  1088. package/resources/admin/organization/projects/service-accounts/api-keys.js +1 -1
  1089. package/resources/admin/organization/projects/service-accounts/api-keys.js.map +1 -1
  1090. package/resources/admin/organization/projects/service-accounts/api-keys.mjs +1 -1
  1091. package/resources/admin/organization/projects/service-accounts/api-keys.mjs.map +1 -1
  1092. package/resources/admin/organization/projects/service-accounts/index.js +1 -1
  1093. package/resources/admin/organization/projects/service-accounts/index.js.map +1 -1
  1094. package/resources/admin/organization/projects/service-accounts/index.mjs +1 -1
  1095. package/resources/admin/organization/projects/service-accounts/index.mjs.map +1 -1
  1096. package/resources/admin/organization/projects/service-accounts/service-accounts.js +1 -1
  1097. package/resources/admin/organization/projects/service-accounts/service-accounts.js.map +1 -1
  1098. package/resources/admin/organization/projects/service-accounts/service-accounts.mjs +1 -1
  1099. package/resources/admin/organization/projects/service-accounts/service-accounts.mjs.map +1 -1
  1100. package/resources/admin/organization/projects/service-accounts.js +1 -1
  1101. package/resources/admin/organization/projects/service-accounts.js.map +1 -1
  1102. package/resources/admin/organization/projects/service-accounts.mjs +1 -1
  1103. package/resources/admin/organization/projects/service-accounts.mjs.map +1 -1
  1104. package/resources/admin/organization/projects/spend-alerts.js +1 -1
  1105. package/resources/admin/organization/projects/spend-alerts.js.map +1 -1
  1106. package/resources/admin/organization/projects/spend-alerts.mjs +1 -1
  1107. package/resources/admin/organization/projects/spend-alerts.mjs.map +1 -1
  1108. package/resources/admin/organization/projects/spend-limit.js +1 -1
  1109. package/resources/admin/organization/projects/spend-limit.js.map +1 -1
  1110. package/resources/admin/organization/projects/spend-limit.mjs +1 -1
  1111. package/resources/admin/organization/projects/spend-limit.mjs.map +1 -1
  1112. package/resources/admin/organization/projects/users/index.js +1 -1
  1113. package/resources/admin/organization/projects/users/index.js.map +1 -1
  1114. package/resources/admin/organization/projects/users/index.mjs +1 -1
  1115. package/resources/admin/organization/projects/users/index.mjs.map +1 -1
  1116. package/resources/admin/organization/projects/users/roles.js +1 -1
  1117. package/resources/admin/organization/projects/users/roles.js.map +1 -1
  1118. package/resources/admin/organization/projects/users/roles.mjs +1 -1
  1119. package/resources/admin/organization/projects/users/roles.mjs.map +1 -1
  1120. package/resources/admin/organization/projects/users/users.js +1 -1
  1121. package/resources/admin/organization/projects/users/users.js.map +1 -1
  1122. package/resources/admin/organization/projects/users/users.mjs +1 -1
  1123. package/resources/admin/organization/projects/users/users.mjs.map +1 -1
  1124. package/resources/admin/organization/projects/users.js +1 -1
  1125. package/resources/admin/organization/projects/users.js.map +1 -1
  1126. package/resources/admin/organization/projects/users.mjs +1 -1
  1127. package/resources/admin/organization/projects/users.mjs.map +1 -1
  1128. package/resources/admin/organization/projects.js +1 -1
  1129. package/resources/admin/organization/projects.js.map +1 -1
  1130. package/resources/admin/organization/projects.mjs +1 -1
  1131. package/resources/admin/organization/projects.mjs.map +1 -1
  1132. package/resources/admin/organization/roles.js +1 -1
  1133. package/resources/admin/organization/roles.js.map +1 -1
  1134. package/resources/admin/organization/roles.mjs +1 -1
  1135. package/resources/admin/organization/roles.mjs.map +1 -1
  1136. package/resources/admin/organization/spend-alerts.js +1 -1
  1137. package/resources/admin/organization/spend-alerts.js.map +1 -1
  1138. package/resources/admin/organization/spend-alerts.mjs +1 -1
  1139. package/resources/admin/organization/spend-alerts.mjs.map +1 -1
  1140. package/resources/admin/organization/spend-limit.js +1 -1
  1141. package/resources/admin/organization/spend-limit.js.map +1 -1
  1142. package/resources/admin/organization/spend-limit.mjs +1 -1
  1143. package/resources/admin/organization/spend-limit.mjs.map +1 -1
  1144. package/resources/admin/organization/usage.d.mts +62 -1
  1145. package/resources/admin/organization/usage.d.mts.map +1 -1
  1146. package/resources/admin/organization/usage.d.ts +62 -1
  1147. package/resources/admin/organization/usage.d.ts.map +1 -1
  1148. package/resources/admin/organization/usage.js +1 -1
  1149. package/resources/admin/organization/usage.js.map +1 -1
  1150. package/resources/admin/organization/usage.mjs +1 -1
  1151. package/resources/admin/organization/usage.mjs.map +1 -1
  1152. package/resources/admin/organization/users/index.js +1 -1
  1153. package/resources/admin/organization/users/index.js.map +1 -1
  1154. package/resources/admin/organization/users/index.mjs +1 -1
  1155. package/resources/admin/organization/users/index.mjs.map +1 -1
  1156. package/resources/admin/organization/users/roles.js +1 -1
  1157. package/resources/admin/organization/users/roles.js.map +1 -1
  1158. package/resources/admin/organization/users/roles.mjs +1 -1
  1159. package/resources/admin/organization/users/roles.mjs.map +1 -1
  1160. package/resources/admin/organization/users/users.js +1 -1
  1161. package/resources/admin/organization/users/users.js.map +1 -1
  1162. package/resources/admin/organization/users/users.mjs +1 -1
  1163. package/resources/admin/organization/users/users.mjs.map +1 -1
  1164. package/resources/admin/organization/users.js +1 -1
  1165. package/resources/admin/organization/users.js.map +1 -1
  1166. package/resources/admin/organization/users.mjs +1 -1
  1167. package/resources/admin/organization/users.mjs.map +1 -1
  1168. package/resources/admin/organization.js +1 -1
  1169. package/resources/admin/organization.js.map +1 -1
  1170. package/resources/admin/organization.mjs +1 -1
  1171. package/resources/admin/organization.mjs.map +1 -1
  1172. package/resources/admin.js +1 -1
  1173. package/resources/admin.js.map +1 -1
  1174. package/resources/admin.mjs +1 -1
  1175. package/resources/admin.mjs.map +1 -1
  1176. package/resources/audio/audio.js +1 -1
  1177. package/resources/audio/audio.js.map +1 -1
  1178. package/resources/audio/audio.mjs +1 -1
  1179. package/resources/audio/audio.mjs.map +1 -1
  1180. package/resources/audio/index.js +1 -1
  1181. package/resources/audio/index.js.map +1 -1
  1182. package/resources/audio/index.mjs +1 -1
  1183. package/resources/audio/index.mjs.map +1 -1
  1184. package/resources/audio/speech.js +1 -1
  1185. package/resources/audio/speech.js.map +1 -1
  1186. package/resources/audio/speech.mjs +1 -1
  1187. package/resources/audio/speech.mjs.map +1 -1
  1188. package/resources/audio/transcriptions.d.mts +3 -1
  1189. package/resources/audio/transcriptions.d.mts.map +1 -1
  1190. package/resources/audio/transcriptions.d.ts +3 -1
  1191. package/resources/audio/transcriptions.d.ts.map +1 -1
  1192. package/resources/audio/transcriptions.js +1 -1
  1193. package/resources/audio/transcriptions.js.map +1 -1
  1194. package/resources/audio/transcriptions.mjs +1 -1
  1195. package/resources/audio/transcriptions.mjs.map +1 -1
  1196. package/resources/audio/translations.d.mts +3 -1
  1197. package/resources/audio/translations.d.mts.map +1 -1
  1198. package/resources/audio/translations.d.ts +3 -1
  1199. package/resources/audio/translations.d.ts.map +1 -1
  1200. package/resources/audio/translations.js +1 -1
  1201. package/resources/audio/translations.js.map +1 -1
  1202. package/resources/audio/translations.mjs +1 -1
  1203. package/resources/audio/translations.mjs.map +1 -1
  1204. package/resources/audio.js +1 -1
  1205. package/resources/audio.js.map +1 -1
  1206. package/resources/audio.mjs +1 -1
  1207. package/resources/audio.mjs.map +1 -1
  1208. package/resources/batches.js +1 -1
  1209. package/resources/batches.js.map +1 -1
  1210. package/resources/batches.mjs +1 -1
  1211. package/resources/batches.mjs.map +1 -1
  1212. package/resources/beta/assistants.js +1 -1
  1213. package/resources/beta/assistants.js.map +1 -1
  1214. package/resources/beta/assistants.mjs +1 -1
  1215. package/resources/beta/assistants.mjs.map +1 -1
  1216. package/resources/beta/beta.d.mts +2 -2
  1217. package/resources/beta/beta.d.mts.map +1 -1
  1218. package/resources/beta/beta.d.ts +2 -2
  1219. package/resources/beta/beta.d.ts.map +1 -1
  1220. package/resources/beta/beta.js +1 -1
  1221. package/resources/beta/beta.js.map +1 -1
  1222. package/resources/beta/beta.mjs +1 -1
  1223. package/resources/beta/beta.mjs.map +1 -1
  1224. package/resources/beta/chatkit/chatkit.js +1 -1
  1225. package/resources/beta/chatkit/chatkit.js.map +1 -1
  1226. package/resources/beta/chatkit/chatkit.mjs +1 -1
  1227. package/resources/beta/chatkit/chatkit.mjs.map +1 -1
  1228. package/resources/beta/chatkit/index.js +1 -1
  1229. package/resources/beta/chatkit/index.js.map +1 -1
  1230. package/resources/beta/chatkit/index.mjs +1 -1
  1231. package/resources/beta/chatkit/index.mjs.map +1 -1
  1232. package/resources/beta/chatkit/sessions.js +1 -1
  1233. package/resources/beta/chatkit/sessions.js.map +1 -1
  1234. package/resources/beta/chatkit/sessions.mjs +1 -1
  1235. package/resources/beta/chatkit/sessions.mjs.map +1 -1
  1236. package/resources/beta/chatkit/threads.js +1 -1
  1237. package/resources/beta/chatkit/threads.js.map +1 -1
  1238. package/resources/beta/chatkit/threads.mjs +1 -1
  1239. package/resources/beta/chatkit/threads.mjs.map +1 -1
  1240. package/resources/beta/chatkit.js +1 -1
  1241. package/resources/beta/chatkit.js.map +1 -1
  1242. package/resources/beta/chatkit.mjs +1 -1
  1243. package/resources/beta/chatkit.mjs.map +1 -1
  1244. package/resources/beta/index.d.mts +1 -1
  1245. package/resources/beta/index.d.mts.map +1 -1
  1246. package/resources/beta/index.d.ts +1 -1
  1247. package/resources/beta/index.d.ts.map +1 -1
  1248. package/resources/beta/index.js +1 -1
  1249. package/resources/beta/index.js.map +1 -1
  1250. package/resources/beta/index.mjs +1 -1
  1251. package/resources/beta/index.mjs.map +1 -1
  1252. package/resources/beta/realtime/index.d.mts.map +1 -1
  1253. package/resources/beta/realtime/index.d.ts.map +1 -1
  1254. package/resources/beta/realtime/index.js +0 -1
  1255. package/resources/beta/realtime/index.js.map +1 -1
  1256. package/resources/beta/realtime/index.mjs +0 -1
  1257. package/resources/beta/realtime/index.mjs.map +1 -1
  1258. package/resources/beta/realtime/realtime.d.mts.map +1 -1
  1259. package/resources/beta/realtime/realtime.d.ts.map +1 -1
  1260. package/resources/beta/realtime/realtime.js +0 -1
  1261. package/resources/beta/realtime/realtime.js.map +1 -1
  1262. package/resources/beta/realtime/realtime.mjs +0 -1
  1263. package/resources/beta/realtime/realtime.mjs.map +1 -1
  1264. package/resources/beta/realtime/sessions.d.mts.map +1 -1
  1265. package/resources/beta/realtime/sessions.d.ts.map +1 -1
  1266. package/resources/beta/realtime/sessions.js +0 -1
  1267. package/resources/beta/realtime/sessions.js.map +1 -1
  1268. package/resources/beta/realtime/sessions.mjs +0 -1
  1269. package/resources/beta/realtime/sessions.mjs.map +1 -1
  1270. package/resources/beta/realtime/transcription-sessions.d.mts.map +1 -1
  1271. package/resources/beta/realtime/transcription-sessions.d.ts.map +1 -1
  1272. package/resources/beta/realtime/transcription-sessions.js +0 -1
  1273. package/resources/beta/realtime/transcription-sessions.js.map +1 -1
  1274. package/resources/beta/realtime/transcription-sessions.mjs +0 -1
  1275. package/resources/beta/realtime/transcription-sessions.mjs.map +1 -1
  1276. package/resources/beta/realtime.d.mts.map +1 -1
  1277. package/resources/beta/realtime.d.ts.map +1 -1
  1278. package/resources/beta/realtime.js +0 -1
  1279. package/resources/beta/realtime.js.map +1 -1
  1280. package/resources/beta/realtime.mjs +0 -1
  1281. package/resources/beta/realtime.mjs.map +1 -1
  1282. package/resources/beta/responses/index.d.mts +1 -1
  1283. package/resources/beta/responses/index.d.mts.map +1 -1
  1284. package/resources/beta/responses/index.d.ts +1 -1
  1285. package/resources/beta/responses/index.d.ts.map +1 -1
  1286. package/resources/beta/responses/index.js +1 -1
  1287. package/resources/beta/responses/index.js.map +1 -1
  1288. package/resources/beta/responses/index.mjs +1 -1
  1289. package/resources/beta/responses/index.mjs.map +1 -1
  1290. package/resources/beta/responses/input-items.js +1 -1
  1291. package/resources/beta/responses/input-items.js.map +1 -1
  1292. package/resources/beta/responses/input-items.mjs +1 -1
  1293. package/resources/beta/responses/input-items.mjs.map +1 -1
  1294. package/resources/beta/responses/input-tokens.js +1 -1
  1295. package/resources/beta/responses/input-tokens.js.map +1 -1
  1296. package/resources/beta/responses/input-tokens.mjs +1 -1
  1297. package/resources/beta/responses/input-tokens.mjs.map +1 -1
  1298. package/resources/beta/responses/internal-base.d.mts +6 -3
  1299. package/resources/beta/responses/internal-base.d.mts.map +1 -1
  1300. package/resources/beta/responses/internal-base.d.ts +6 -3
  1301. package/resources/beta/responses/internal-base.d.ts.map +1 -1
  1302. package/resources/beta/responses/internal-base.js +5 -2
  1303. package/resources/beta/responses/internal-base.js.map +1 -1
  1304. package/resources/beta/responses/internal-base.mjs +5 -2
  1305. package/resources/beta/responses/internal-base.mjs.map +1 -1
  1306. package/resources/beta/responses/responses.d.mts +1243 -132
  1307. package/resources/beta/responses/responses.d.mts.map +1 -1
  1308. package/resources/beta/responses/responses.d.ts +1243 -132
  1309. package/resources/beta/responses/responses.d.ts.map +1 -1
  1310. package/resources/beta/responses/responses.js +1 -1
  1311. package/resources/beta/responses/responses.js.map +1 -1
  1312. package/resources/beta/responses/responses.mjs +1 -1
  1313. package/resources/beta/responses/responses.mjs.map +1 -1
  1314. package/resources/beta/responses/ws-base.js +1 -1
  1315. package/resources/beta/responses/ws-base.js.map +1 -1
  1316. package/resources/beta/responses/ws-base.mjs +1 -1
  1317. package/resources/beta/responses/ws-base.mjs.map +1 -1
  1318. package/resources/beta/responses/ws.js +1 -1
  1319. package/resources/beta/responses/ws.js.map +1 -1
  1320. package/resources/beta/responses/ws.mjs +1 -1
  1321. package/resources/beta/responses/ws.mjs.map +1 -1
  1322. package/resources/beta/responses.js +1 -1
  1323. package/resources/beta/responses.js.map +1 -1
  1324. package/resources/beta/responses.mjs +1 -1
  1325. package/resources/beta/responses.mjs.map +1 -1
  1326. package/resources/beta/threads/index.js +1 -1
  1327. package/resources/beta/threads/index.js.map +1 -1
  1328. package/resources/beta/threads/index.mjs +1 -1
  1329. package/resources/beta/threads/index.mjs.map +1 -1
  1330. package/resources/beta/threads/messages.js +1 -1
  1331. package/resources/beta/threads/messages.js.map +1 -1
  1332. package/resources/beta/threads/messages.mjs +1 -1
  1333. package/resources/beta/threads/messages.mjs.map +1 -1
  1334. package/resources/beta/threads/runs/index.d.mts +1 -1
  1335. package/resources/beta/threads/runs/index.d.mts.map +1 -1
  1336. package/resources/beta/threads/runs/index.d.ts +1 -1
  1337. package/resources/beta/threads/runs/index.d.ts.map +1 -1
  1338. package/resources/beta/threads/runs/index.js +1 -1
  1339. package/resources/beta/threads/runs/index.js.map +1 -1
  1340. package/resources/beta/threads/runs/index.mjs +1 -1
  1341. package/resources/beta/threads/runs/index.mjs.map +1 -1
  1342. package/resources/beta/threads/runs/runs.d.mts.map +1 -1
  1343. package/resources/beta/threads/runs/runs.d.ts.map +1 -1
  1344. package/resources/beta/threads/runs/runs.js +3 -44
  1345. package/resources/beta/threads/runs/runs.js.map +1 -1
  1346. package/resources/beta/threads/runs/runs.mjs +3 -44
  1347. package/resources/beta/threads/runs/runs.mjs.map +1 -1
  1348. package/resources/beta/threads/runs/steps.js +1 -1
  1349. package/resources/beta/threads/runs/steps.js.map +1 -1
  1350. package/resources/beta/threads/runs/steps.mjs +1 -1
  1351. package/resources/beta/threads/runs/steps.mjs.map +1 -1
  1352. package/resources/beta/threads/runs.js +1 -1
  1353. package/resources/beta/threads/runs.js.map +1 -1
  1354. package/resources/beta/threads/runs.mjs +1 -1
  1355. package/resources/beta/threads/runs.mjs.map +1 -1
  1356. package/resources/beta/threads/threads.js +1 -1
  1357. package/resources/beta/threads/threads.js.map +1 -1
  1358. package/resources/beta/threads/threads.mjs +1 -1
  1359. package/resources/beta/threads/threads.mjs.map +1 -1
  1360. package/resources/beta/threads.js +1 -1
  1361. package/resources/beta/threads.js.map +1 -1
  1362. package/resources/beta/threads.mjs +1 -1
  1363. package/resources/beta/threads.mjs.map +1 -1
  1364. package/resources/beta.js +1 -1
  1365. package/resources/beta.js.map +1 -1
  1366. package/resources/beta.mjs +1 -1
  1367. package/resources/beta.mjs.map +1 -1
  1368. package/resources/chat/chat.js +1 -1
  1369. package/resources/chat/chat.js.map +1 -1
  1370. package/resources/chat/chat.mjs +1 -1
  1371. package/resources/chat/chat.mjs.map +1 -1
  1372. package/resources/chat/completions/completions.d.mts +36 -3
  1373. package/resources/chat/completions/completions.d.mts.map +1 -1
  1374. package/resources/chat/completions/completions.d.ts +36 -3
  1375. package/resources/chat/completions/completions.d.ts.map +1 -1
  1376. package/resources/chat/completions/completions.js +2 -5
  1377. package/resources/chat/completions/completions.js.map +1 -1
  1378. package/resources/chat/completions/completions.mjs +2 -5
  1379. package/resources/chat/completions/completions.mjs.map +1 -1
  1380. package/resources/chat/completions/index.js +1 -1
  1381. package/resources/chat/completions/index.js.map +1 -1
  1382. package/resources/chat/completions/index.mjs +1 -1
  1383. package/resources/chat/completions/index.mjs.map +1 -1
  1384. package/resources/chat/completions/messages.js +1 -1
  1385. package/resources/chat/completions/messages.js.map +1 -1
  1386. package/resources/chat/completions/messages.mjs +1 -1
  1387. package/resources/chat/completions/messages.mjs.map +1 -1
  1388. package/resources/chat/completions.js +1 -1
  1389. package/resources/chat/completions.js.map +1 -1
  1390. package/resources/chat/completions.mjs +1 -1
  1391. package/resources/chat/completions.mjs.map +1 -1
  1392. package/resources/chat/index.js +1 -1
  1393. package/resources/chat/index.js.map +1 -1
  1394. package/resources/chat/index.mjs +1 -1
  1395. package/resources/chat/index.mjs.map +1 -1
  1396. package/resources/chat.js +1 -1
  1397. package/resources/chat.js.map +1 -1
  1398. package/resources/chat.mjs +1 -1
  1399. package/resources/chat.mjs.map +1 -1
  1400. package/resources/completions.d.mts +12 -0
  1401. package/resources/completions.d.mts.map +1 -1
  1402. package/resources/completions.d.ts +12 -0
  1403. package/resources/completions.d.ts.map +1 -1
  1404. package/resources/completions.js +1 -1
  1405. package/resources/completions.js.map +1 -1
  1406. package/resources/completions.mjs +1 -1
  1407. package/resources/completions.mjs.map +1 -1
  1408. package/resources/containers/containers.js +1 -1
  1409. package/resources/containers/containers.js.map +1 -1
  1410. package/resources/containers/containers.mjs +1 -1
  1411. package/resources/containers/containers.mjs.map +1 -1
  1412. package/resources/containers/files/content.js +1 -1
  1413. package/resources/containers/files/content.js.map +1 -1
  1414. package/resources/containers/files/content.mjs +1 -1
  1415. package/resources/containers/files/content.mjs.map +1 -1
  1416. package/resources/containers/files/files.js +1 -1
  1417. package/resources/containers/files/files.js.map +1 -1
  1418. package/resources/containers/files/files.mjs +1 -1
  1419. package/resources/containers/files/files.mjs.map +1 -1
  1420. package/resources/containers/files/index.js +1 -1
  1421. package/resources/containers/files/index.js.map +1 -1
  1422. package/resources/containers/files/index.mjs +1 -1
  1423. package/resources/containers/files/index.mjs.map +1 -1
  1424. package/resources/containers/files.js +1 -1
  1425. package/resources/containers/files.js.map +1 -1
  1426. package/resources/containers/files.mjs +1 -1
  1427. package/resources/containers/files.mjs.map +1 -1
  1428. package/resources/containers/index.js +1 -1
  1429. package/resources/containers/index.js.map +1 -1
  1430. package/resources/containers/index.mjs +1 -1
  1431. package/resources/containers/index.mjs.map +1 -1
  1432. package/resources/containers.js +1 -1
  1433. package/resources/containers.js.map +1 -1
  1434. package/resources/containers.mjs +1 -1
  1435. package/resources/containers.mjs.map +1 -1
  1436. package/resources/content-provenance-checks.js +1 -1
  1437. package/resources/content-provenance-checks.js.map +1 -1
  1438. package/resources/content-provenance-checks.mjs +1 -1
  1439. package/resources/content-provenance-checks.mjs.map +1 -1
  1440. package/resources/conversations/conversations.d.mts +1 -1
  1441. package/resources/conversations/conversations.d.mts.map +1 -1
  1442. package/resources/conversations/conversations.d.ts +1 -1
  1443. package/resources/conversations/conversations.d.ts.map +1 -1
  1444. package/resources/conversations/conversations.js +1 -1
  1445. package/resources/conversations/conversations.js.map +1 -1
  1446. package/resources/conversations/conversations.mjs +1 -1
  1447. package/resources/conversations/conversations.mjs.map +1 -1
  1448. package/resources/conversations/index.js +1 -1
  1449. package/resources/conversations/index.js.map +1 -1
  1450. package/resources/conversations/index.mjs +1 -1
  1451. package/resources/conversations/index.mjs.map +1 -1
  1452. package/resources/conversations/items.d.mts +1 -1
  1453. package/resources/conversations/items.d.mts.map +1 -1
  1454. package/resources/conversations/items.d.ts +1 -1
  1455. package/resources/conversations/items.d.ts.map +1 -1
  1456. package/resources/conversations/items.js +1 -1
  1457. package/resources/conversations/items.js.map +1 -1
  1458. package/resources/conversations/items.mjs +1 -1
  1459. package/resources/conversations/items.mjs.map +1 -1
  1460. package/resources/conversations.js +1 -1
  1461. package/resources/conversations.js.map +1 -1
  1462. package/resources/conversations.mjs +1 -1
  1463. package/resources/conversations.mjs.map +1 -1
  1464. package/resources/embeddings.d.mts +9 -0
  1465. package/resources/embeddings.d.mts.map +1 -1
  1466. package/resources/embeddings.d.ts +9 -0
  1467. package/resources/embeddings.d.ts.map +1 -1
  1468. package/resources/embeddings.js +3 -47
  1469. package/resources/embeddings.js.map +1 -1
  1470. package/resources/embeddings.mjs +3 -47
  1471. package/resources/embeddings.mjs.map +1 -1
  1472. package/resources/evals/evals.js +1 -1
  1473. package/resources/evals/evals.js.map +1 -1
  1474. package/resources/evals/evals.mjs +1 -1
  1475. package/resources/evals/evals.mjs.map +1 -1
  1476. package/resources/evals/index.js +1 -1
  1477. package/resources/evals/index.js.map +1 -1
  1478. package/resources/evals/index.mjs +1 -1
  1479. package/resources/evals/index.mjs.map +1 -1
  1480. package/resources/evals/runs/index.js +1 -1
  1481. package/resources/evals/runs/index.js.map +1 -1
  1482. package/resources/evals/runs/index.mjs +1 -1
  1483. package/resources/evals/runs/index.mjs.map +1 -1
  1484. package/resources/evals/runs/output-items.js +1 -1
  1485. package/resources/evals/runs/output-items.js.map +1 -1
  1486. package/resources/evals/runs/output-items.mjs +1 -1
  1487. package/resources/evals/runs/output-items.mjs.map +1 -1
  1488. package/resources/evals/runs/runs.js +1 -1
  1489. package/resources/evals/runs/runs.js.map +1 -1
  1490. package/resources/evals/runs/runs.mjs +1 -1
  1491. package/resources/evals/runs/runs.mjs.map +1 -1
  1492. package/resources/evals/runs.js +1 -1
  1493. package/resources/evals/runs.js.map +1 -1
  1494. package/resources/evals/runs.mjs +1 -1
  1495. package/resources/evals/runs.mjs.map +1 -1
  1496. package/resources/evals.js +1 -1
  1497. package/resources/evals.js.map +1 -1
  1498. package/resources/evals.mjs +1 -1
  1499. package/resources/evals.mjs.map +1 -1
  1500. package/resources/files.d.mts +1 -1
  1501. package/resources/files.d.mts.map +1 -1
  1502. package/resources/files.d.ts +1 -1
  1503. package/resources/files.d.ts.map +1 -1
  1504. package/resources/files.js +4 -17
  1505. package/resources/files.js.map +1 -1
  1506. package/resources/files.mjs +4 -17
  1507. package/resources/files.mjs.map +1 -1
  1508. package/resources/fine-tuning/alpha/alpha.js +1 -1
  1509. package/resources/fine-tuning/alpha/alpha.js.map +1 -1
  1510. package/resources/fine-tuning/alpha/alpha.mjs +1 -1
  1511. package/resources/fine-tuning/alpha/alpha.mjs.map +1 -1
  1512. package/resources/fine-tuning/alpha/graders.js +1 -1
  1513. package/resources/fine-tuning/alpha/graders.js.map +1 -1
  1514. package/resources/fine-tuning/alpha/graders.mjs +1 -1
  1515. package/resources/fine-tuning/alpha/graders.mjs.map +1 -1
  1516. package/resources/fine-tuning/alpha/index.js +1 -1
  1517. package/resources/fine-tuning/alpha/index.js.map +1 -1
  1518. package/resources/fine-tuning/alpha/index.mjs +1 -1
  1519. package/resources/fine-tuning/alpha/index.mjs.map +1 -1
  1520. package/resources/fine-tuning/alpha.js +1 -1
  1521. package/resources/fine-tuning/alpha.js.map +1 -1
  1522. package/resources/fine-tuning/alpha.mjs +1 -1
  1523. package/resources/fine-tuning/alpha.mjs.map +1 -1
  1524. package/resources/fine-tuning/checkpoints/checkpoints.js +1 -1
  1525. package/resources/fine-tuning/checkpoints/checkpoints.js.map +1 -1
  1526. package/resources/fine-tuning/checkpoints/checkpoints.mjs +1 -1
  1527. package/resources/fine-tuning/checkpoints/checkpoints.mjs.map +1 -1
  1528. package/resources/fine-tuning/checkpoints/index.js +1 -1
  1529. package/resources/fine-tuning/checkpoints/index.js.map +1 -1
  1530. package/resources/fine-tuning/checkpoints/index.mjs +1 -1
  1531. package/resources/fine-tuning/checkpoints/index.mjs.map +1 -1
  1532. package/resources/fine-tuning/checkpoints/permissions.js +1 -1
  1533. package/resources/fine-tuning/checkpoints/permissions.js.map +1 -1
  1534. package/resources/fine-tuning/checkpoints/permissions.mjs +1 -1
  1535. package/resources/fine-tuning/checkpoints/permissions.mjs.map +1 -1
  1536. package/resources/fine-tuning/checkpoints.js +1 -1
  1537. package/resources/fine-tuning/checkpoints.js.map +1 -1
  1538. package/resources/fine-tuning/checkpoints.mjs +1 -1
  1539. package/resources/fine-tuning/checkpoints.mjs.map +1 -1
  1540. package/resources/fine-tuning/fine-tuning.js +1 -1
  1541. package/resources/fine-tuning/fine-tuning.js.map +1 -1
  1542. package/resources/fine-tuning/fine-tuning.mjs +1 -1
  1543. package/resources/fine-tuning/fine-tuning.mjs.map +1 -1
  1544. package/resources/fine-tuning/index.js +1 -1
  1545. package/resources/fine-tuning/index.js.map +1 -1
  1546. package/resources/fine-tuning/index.mjs +1 -1
  1547. package/resources/fine-tuning/index.mjs.map +1 -1
  1548. package/resources/fine-tuning/jobs/checkpoints.js +1 -1
  1549. package/resources/fine-tuning/jobs/checkpoints.js.map +1 -1
  1550. package/resources/fine-tuning/jobs/checkpoints.mjs +1 -1
  1551. package/resources/fine-tuning/jobs/checkpoints.mjs.map +1 -1
  1552. package/resources/fine-tuning/jobs/index.js +1 -1
  1553. package/resources/fine-tuning/jobs/index.js.map +1 -1
  1554. package/resources/fine-tuning/jobs/index.mjs +1 -1
  1555. package/resources/fine-tuning/jobs/index.mjs.map +1 -1
  1556. package/resources/fine-tuning/jobs/jobs.js +1 -1
  1557. package/resources/fine-tuning/jobs/jobs.js.map +1 -1
  1558. package/resources/fine-tuning/jobs/jobs.mjs +1 -1
  1559. package/resources/fine-tuning/jobs/jobs.mjs.map +1 -1
  1560. package/resources/fine-tuning/jobs.js +1 -1
  1561. package/resources/fine-tuning/jobs.js.map +1 -1
  1562. package/resources/fine-tuning/jobs.mjs +1 -1
  1563. package/resources/fine-tuning/jobs.mjs.map +1 -1
  1564. package/resources/fine-tuning/methods.js +1 -1
  1565. package/resources/fine-tuning/methods.js.map +1 -1
  1566. package/resources/fine-tuning/methods.mjs +1 -1
  1567. package/resources/fine-tuning/methods.mjs.map +1 -1
  1568. package/resources/fine-tuning.js +1 -1
  1569. package/resources/fine-tuning.js.map +1 -1
  1570. package/resources/fine-tuning.mjs +1 -1
  1571. package/resources/fine-tuning.mjs.map +1 -1
  1572. package/resources/graders/grader-models.js +1 -1
  1573. package/resources/graders/grader-models.js.map +1 -1
  1574. package/resources/graders/grader-models.mjs +1 -1
  1575. package/resources/graders/grader-models.mjs.map +1 -1
  1576. package/resources/graders/graders.js +1 -1
  1577. package/resources/graders/graders.js.map +1 -1
  1578. package/resources/graders/graders.mjs +1 -1
  1579. package/resources/graders/graders.mjs.map +1 -1
  1580. package/resources/graders/index.js +1 -1
  1581. package/resources/graders/index.js.map +1 -1
  1582. package/resources/graders/index.mjs +1 -1
  1583. package/resources/graders/index.mjs.map +1 -1
  1584. package/resources/graders.js +1 -1
  1585. package/resources/graders.js.map +1 -1
  1586. package/resources/graders.mjs +1 -1
  1587. package/resources/graders.mjs.map +1 -1
  1588. package/resources/images.d.mts +12 -22
  1589. package/resources/images.d.mts.map +1 -1
  1590. package/resources/images.d.ts +12 -22
  1591. package/resources/images.d.ts.map +1 -1
  1592. package/resources/images.js +8 -2
  1593. package/resources/images.js.map +1 -1
  1594. package/resources/images.mjs +8 -2
  1595. package/resources/images.mjs.map +1 -1
  1596. package/resources/index.js +1 -1
  1597. package/resources/index.js.map +1 -1
  1598. package/resources/index.mjs +1 -1
  1599. package/resources/index.mjs.map +1 -1
  1600. package/resources/models.d.mts +4 -0
  1601. package/resources/models.d.mts.map +1 -1
  1602. package/resources/models.d.ts +4 -0
  1603. package/resources/models.d.ts.map +1 -1
  1604. package/resources/models.js +1 -1
  1605. package/resources/models.js.map +1 -1
  1606. package/resources/models.mjs +1 -1
  1607. package/resources/models.mjs.map +1 -1
  1608. package/resources/moderations.js +1 -1
  1609. package/resources/moderations.js.map +1 -1
  1610. package/resources/moderations.mjs +1 -1
  1611. package/resources/moderations.mjs.map +1 -1
  1612. package/resources/realtime/calls.d.mts +23 -1
  1613. package/resources/realtime/calls.d.mts.map +1 -1
  1614. package/resources/realtime/calls.d.ts +23 -1
  1615. package/resources/realtime/calls.d.ts.map +1 -1
  1616. package/resources/realtime/calls.js +25 -1
  1617. package/resources/realtime/calls.js.map +1 -1
  1618. package/resources/realtime/calls.mjs +25 -1
  1619. package/resources/realtime/calls.mjs.map +1 -1
  1620. package/resources/realtime/client-secrets.js +1 -1
  1621. package/resources/realtime/client-secrets.js.map +1 -1
  1622. package/resources/realtime/client-secrets.mjs +1 -1
  1623. package/resources/realtime/client-secrets.mjs.map +1 -1
  1624. package/resources/realtime/index.d.mts +1 -1
  1625. package/resources/realtime/index.d.mts.map +1 -1
  1626. package/resources/realtime/index.d.ts +1 -1
  1627. package/resources/realtime/index.d.ts.map +1 -1
  1628. package/resources/realtime/index.js +1 -1
  1629. package/resources/realtime/index.js.map +1 -1
  1630. package/resources/realtime/index.mjs +2 -2
  1631. package/resources/realtime/index.mjs.map +1 -1
  1632. package/resources/realtime/realtime.d.mts +5 -4
  1633. package/resources/realtime/realtime.d.mts.map +1 -1
  1634. package/resources/realtime/realtime.d.ts +5 -4
  1635. package/resources/realtime/realtime.d.ts.map +1 -1
  1636. package/resources/realtime/realtime.js +1 -1
  1637. package/resources/realtime/realtime.js.map +1 -1
  1638. package/resources/realtime/realtime.mjs +1 -1
  1639. package/resources/realtime/realtime.mjs.map +1 -1
  1640. package/resources/realtime.js +1 -1
  1641. package/resources/realtime.js.map +1 -1
  1642. package/resources/realtime.mjs +1 -1
  1643. package/resources/realtime.mjs.map +1 -1
  1644. package/resources/responses/index.js +1 -1
  1645. package/resources/responses/index.js.map +1 -1
  1646. package/resources/responses/index.mjs +1 -1
  1647. package/resources/responses/index.mjs.map +1 -1
  1648. package/resources/responses/input-items.js +1 -1
  1649. package/resources/responses/input-items.js.map +1 -1
  1650. package/resources/responses/input-items.mjs +1 -1
  1651. package/resources/responses/input-items.mjs.map +1 -1
  1652. package/resources/responses/input-tokens.js +1 -1
  1653. package/resources/responses/input-tokens.js.map +1 -1
  1654. package/resources/responses/input-tokens.mjs +1 -1
  1655. package/resources/responses/input-tokens.mjs.map +1 -1
  1656. package/resources/responses/internal-base.d.mts +6 -3
  1657. package/resources/responses/internal-base.d.mts.map +1 -1
  1658. package/resources/responses/internal-base.d.ts +6 -3
  1659. package/resources/responses/internal-base.d.ts.map +1 -1
  1660. package/resources/responses/internal-base.js +5 -2
  1661. package/resources/responses/internal-base.js.map +1 -1
  1662. package/resources/responses/internal-base.mjs +5 -2
  1663. package/resources/responses/internal-base.mjs.map +1 -1
  1664. package/resources/responses/responses.d.mts +1059 -32
  1665. package/resources/responses/responses.d.mts.map +1 -1
  1666. package/resources/responses/responses.d.ts +1059 -32
  1667. package/resources/responses/responses.d.ts.map +1 -1
  1668. package/resources/responses/responses.js +1 -1
  1669. package/resources/responses/responses.js.map +1 -1
  1670. package/resources/responses/responses.mjs +1 -1
  1671. package/resources/responses/responses.mjs.map +1 -1
  1672. package/resources/responses/ws-base.js +1 -1
  1673. package/resources/responses/ws-base.js.map +1 -1
  1674. package/resources/responses/ws-base.mjs +1 -1
  1675. package/resources/responses/ws-base.mjs.map +1 -1
  1676. package/resources/responses/ws.js +1 -1
  1677. package/resources/responses/ws.js.map +1 -1
  1678. package/resources/responses/ws.mjs +1 -1
  1679. package/resources/responses/ws.mjs.map +1 -1
  1680. package/resources/responses.js +1 -1
  1681. package/resources/responses.js.map +1 -1
  1682. package/resources/responses.mjs +1 -1
  1683. package/resources/responses.mjs.map +1 -1
  1684. package/resources/shared.d.mts +3 -3
  1685. package/resources/shared.d.mts.map +1 -1
  1686. package/resources/shared.d.ts +3 -3
  1687. package/resources/shared.d.ts.map +1 -1
  1688. package/resources/shared.js +1 -1
  1689. package/resources/shared.js.map +1 -1
  1690. package/resources/shared.mjs +1 -1
  1691. package/resources/shared.mjs.map +1 -1
  1692. package/resources/skills/content.js +1 -1
  1693. package/resources/skills/content.js.map +1 -1
  1694. package/resources/skills/content.mjs +1 -1
  1695. package/resources/skills/content.mjs.map +1 -1
  1696. package/resources/skills/index.js +1 -1
  1697. package/resources/skills/index.js.map +1 -1
  1698. package/resources/skills/index.mjs +1 -1
  1699. package/resources/skills/index.mjs.map +1 -1
  1700. package/resources/skills/skills.d.mts.map +1 -1
  1701. package/resources/skills/skills.d.ts.map +1 -1
  1702. package/resources/skills/skills.js +4 -2
  1703. package/resources/skills/skills.js.map +1 -1
  1704. package/resources/skills/skills.mjs +4 -2
  1705. package/resources/skills/skills.mjs.map +1 -1
  1706. package/resources/skills/versions/content.js +1 -1
  1707. package/resources/skills/versions/content.js.map +1 -1
  1708. package/resources/skills/versions/content.mjs +1 -1
  1709. package/resources/skills/versions/content.mjs.map +1 -1
  1710. package/resources/skills/versions/index.js +1 -1
  1711. package/resources/skills/versions/index.js.map +1 -1
  1712. package/resources/skills/versions/index.mjs +1 -1
  1713. package/resources/skills/versions/index.mjs.map +1 -1
  1714. package/resources/skills/versions/versions.d.mts.map +1 -1
  1715. package/resources/skills/versions/versions.d.ts.map +1 -1
  1716. package/resources/skills/versions/versions.js +4 -2
  1717. package/resources/skills/versions/versions.js.map +1 -1
  1718. package/resources/skills/versions/versions.mjs +4 -2
  1719. package/resources/skills/versions/versions.mjs.map +1 -1
  1720. package/resources/skills/versions.js +1 -1
  1721. package/resources/skills/versions.js.map +1 -1
  1722. package/resources/skills/versions.mjs +1 -1
  1723. package/resources/skills/versions.mjs.map +1 -1
  1724. package/resources/skills.js +1 -1
  1725. package/resources/skills.js.map +1 -1
  1726. package/resources/skills.mjs +1 -1
  1727. package/resources/skills.mjs.map +1 -1
  1728. package/resources/uploads/index.js +1 -1
  1729. package/resources/uploads/index.js.map +1 -1
  1730. package/resources/uploads/index.mjs +1 -1
  1731. package/resources/uploads/index.mjs.map +1 -1
  1732. package/resources/uploads/parts.js +1 -1
  1733. package/resources/uploads/parts.js.map +1 -1
  1734. package/resources/uploads/parts.mjs +1 -1
  1735. package/resources/uploads/parts.mjs.map +1 -1
  1736. package/resources/uploads/uploads.js +1 -1
  1737. package/resources/uploads/uploads.js.map +1 -1
  1738. package/resources/uploads/uploads.mjs +1 -1
  1739. package/resources/uploads/uploads.mjs.map +1 -1
  1740. package/resources/uploads.js +1 -1
  1741. package/resources/uploads.js.map +1 -1
  1742. package/resources/uploads.mjs +1 -1
  1743. package/resources/uploads.mjs.map +1 -1
  1744. package/resources/vector-stores/file-batches.d.mts.map +1 -1
  1745. package/resources/vector-stores/file-batches.d.ts.map +1 -1
  1746. package/resources/vector-stores/file-batches.js +6 -63
  1747. package/resources/vector-stores/file-batches.js.map +1 -1
  1748. package/resources/vector-stores/file-batches.mjs +6 -63
  1749. package/resources/vector-stores/file-batches.mjs.map +1 -1
  1750. package/resources/vector-stores/files.d.mts +1 -1
  1751. package/resources/vector-stores/files.d.mts.map +1 -1
  1752. package/resources/vector-stores/files.d.ts +1 -1
  1753. package/resources/vector-stores/files.d.ts.map +1 -1
  1754. package/resources/vector-stores/files.js +3 -36
  1755. package/resources/vector-stores/files.js.map +1 -1
  1756. package/resources/vector-stores/files.mjs +3 -36
  1757. package/resources/vector-stores/files.mjs.map +1 -1
  1758. package/resources/vector-stores/index.js +1 -1
  1759. package/resources/vector-stores/index.js.map +1 -1
  1760. package/resources/vector-stores/index.mjs +1 -1
  1761. package/resources/vector-stores/index.mjs.map +1 -1
  1762. package/resources/vector-stores/vector-stores.js +1 -1
  1763. package/resources/vector-stores/vector-stores.js.map +1 -1
  1764. package/resources/vector-stores/vector-stores.mjs +1 -1
  1765. package/resources/vector-stores/vector-stores.mjs.map +1 -1
  1766. package/resources/vector-stores.js +1 -1
  1767. package/resources/vector-stores.js.map +1 -1
  1768. package/resources/vector-stores.mjs +1 -1
  1769. package/resources/vector-stores.mjs.map +1 -1
  1770. package/resources/videos.d.mts +23 -0
  1771. package/resources/videos.d.mts.map +1 -1
  1772. package/resources/videos.d.ts +23 -0
  1773. package/resources/videos.d.ts.map +1 -1
  1774. package/resources/videos.js +24 -1
  1775. package/resources/videos.js.map +1 -1
  1776. package/resources/videos.mjs +24 -1
  1777. package/resources/videos.mjs.map +1 -1
  1778. package/resources/webhooks/index.js +1 -1
  1779. package/resources/webhooks/index.js.map +1 -1
  1780. package/resources/webhooks/index.mjs +1 -1
  1781. package/resources/webhooks/index.mjs.map +1 -1
  1782. package/resources/webhooks/webhooks.d.mts.map +1 -1
  1783. package/resources/webhooks/webhooks.d.ts.map +1 -1
  1784. package/resources/webhooks/webhooks.js +6 -43
  1785. package/resources/webhooks/webhooks.js.map +1 -1
  1786. package/resources/webhooks/webhooks.mjs +6 -43
  1787. package/resources/webhooks/webhooks.mjs.map +1 -1
  1788. package/resources/webhooks.js +1 -1
  1789. package/resources/webhooks.js.map +1 -1
  1790. package/resources/webhooks.mjs +1 -1
  1791. package/resources/webhooks.mjs.map +1 -1
  1792. package/src/_vendor/partial-json-parser/parser.ts +63 -33
  1793. package/src/_vendor/zod-to-json-schema/Options.ts +30 -18
  1794. package/src/_vendor/zod-to-json-schema/Refs.ts +7 -6
  1795. package/src/_vendor/zod-to-json-schema/errorMessages.ts +5 -3
  1796. package/src/_vendor/zod-to-json-schema/index.ts +3 -1
  1797. package/src/_vendor/zod-to-json-schema/parseDef.ts +150 -64
  1798. package/src/_vendor/zod-to-json-schema/parsers/array.ts +8 -5
  1799. package/src/_vendor/zod-to-json-schema/parsers/bigint.ts +18 -12
  1800. package/src/_vendor/zod-to-json-schema/parsers/branded.ts +2 -2
  1801. package/src/_vendor/zod-to-json-schema/parsers/catch.ts +4 -5
  1802. package/src/_vendor/zod-to-json-schema/parsers/date.ts +16 -10
  1803. package/src/_vendor/zod-to-json-schema/parsers/default.ts +4 -3
  1804. package/src/_vendor/zod-to-json-schema/parsers/effects.ts +4 -3
  1805. package/src/_vendor/zod-to-json-schema/parsers/enum.ts +1 -1
  1806. package/src/_vendor/zod-to-json-schema/parsers/intersection.ts +12 -9
  1807. package/src/_vendor/zod-to-json-schema/parsers/literal.ts +11 -2
  1808. package/src/_vendor/zod-to-json-schema/parsers/map.ts +6 -4
  1809. package/src/_vendor/zod-to-json-schema/parsers/nativeEnum.ts +10 -11
  1810. package/src/_vendor/zod-to-json-schema/parsers/null.ts +3 -3
  1811. package/src/_vendor/zod-to-json-schema/parsers/nullable.ts +8 -5
  1812. package/src/_vendor/zod-to-json-schema/parsers/number.ts +15 -8
  1813. package/src/_vendor/zod-to-json-schema/parsers/object.ts +57 -54
  1814. package/src/_vendor/zod-to-json-schema/parsers/optional.ts +6 -5
  1815. package/src/_vendor/zod-to-json-schema/parsers/pipeline.ts +5 -4
  1816. package/src/_vendor/zod-to-json-schema/parsers/promise.ts +4 -3
  1817. package/src/_vendor/zod-to-json-schema/parsers/readonly.ts +4 -5
  1818. package/src/_vendor/zod-to-json-schema/parsers/record.ts +20 -19
  1819. package/src/_vendor/zod-to-json-schema/parsers/set.ts +6 -4
  1820. package/src/_vendor/zod-to-json-schema/parsers/string.ts +60 -36
  1821. package/src/_vendor/zod-to-json-schema/parsers/tuple.ts +18 -18
  1822. package/src/_vendor/zod-to-json-schema/parsers/union.ts +48 -33
  1823. package/src/_vendor/zod-to-json-schema/util.ts +10 -6
  1824. package/src/_vendor/zod-to-json-schema/zodToJsonSchema.ts +119 -45
  1825. package/src/auth/index.ts +6 -1
  1826. package/src/auth/subject-token-providers.ts +267 -12
  1827. package/src/auth/types.ts +42 -5
  1828. package/src/auth/workload-identity-auth.ts +164 -22
  1829. package/src/auth/x509-transport.ts +49 -0
  1830. package/src/azure.ts +81 -26
  1831. package/src/bedrock.ts +93 -9
  1832. package/src/beta/realtime/internal-base.ts +94 -15
  1833. package/src/beta/realtime/websocket.ts +237 -44
  1834. package/src/beta/realtime/ws.ts +124 -23
  1835. package/src/client.ts +760 -104
  1836. package/src/core/EventEmitter.ts +136 -24
  1837. package/src/core/api-promise.ts +0 -2
  1838. package/src/core/error.ts +6 -8
  1839. package/src/core/pagination.ts +3 -5
  1840. package/src/core/resource.ts +0 -2
  1841. package/src/core/streaming.ts +216 -83
  1842. package/src/helpers/audio.ts +177 -31
  1843. package/src/helpers/standard-schema.ts +294 -57
  1844. package/src/helpers/zod-v3-strict-schema.ts +514 -0
  1845. package/src/helpers/zod.ts +151 -41
  1846. package/src/index.ts +2 -4
  1847. package/src/internal/assistant-stream-delta.ts +434 -0
  1848. package/src/internal/auth/x509-token-exchange.ts +310 -0
  1849. package/src/internal/auth/x509-transport-capability.ts +219 -0
  1850. package/src/internal/auth/x509-transport-registry.ts +118 -0
  1851. package/src/internal/auth/x509-transport-state-browser.ts +36 -0
  1852. package/src/internal/auth/x509-transport-state.cts +36 -0
  1853. package/src/internal/auth/x509-workload-identity-auth.ts +958 -0
  1854. package/src/internal/bedrock.ts +410 -18
  1855. package/src/internal/builtin-types.ts +0 -2
  1856. package/src/internal/data-residency.ts +44 -0
  1857. package/src/internal/decoders/line.ts +144 -61
  1858. package/src/internal/detect-platform.ts +1 -3
  1859. package/src/internal/errors.ts +0 -2
  1860. package/src/internal/headers.ts +0 -2
  1861. package/src/internal/multipart-encoding.ts +53 -0
  1862. package/src/internal/parse.ts +31 -8
  1863. package/src/internal/provider.ts +29 -0
  1864. package/src/internal/qs/formats.ts +1 -1
  1865. package/src/internal/qs/stringify.ts +54 -53
  1866. package/src/internal/qs/types.ts +1 -1
  1867. package/src/internal/qs/utils.ts +432 -54
  1868. package/src/internal/request-options.ts +52 -3
  1869. package/src/internal/responses/canonical-output-text.ts +160 -0
  1870. package/src/internal/responses/output-text-index.ts +84 -0
  1871. package/src/internal/responses/response-accumulator.ts +1232 -0
  1872. package/src/internal/shim-types.ts +3 -4
  1873. package/src/internal/shims.ts +0 -2
  1874. package/src/internal/stream-utils.ts +37 -5
  1875. package/src/internal/to-file.ts +87 -33
  1876. package/src/internal/types.ts +21 -29
  1877. package/src/internal/uploads.ts +323 -86
  1878. package/src/internal/utils/base64.ts +0 -2
  1879. package/src/internal/utils/bytes.ts +5 -0
  1880. package/src/internal/utils/env.ts +9 -7
  1881. package/src/internal/utils/log.ts +8 -12
  1882. package/src/internal/utils/path.ts +51 -32
  1883. package/src/internal/utils/query.ts +0 -2
  1884. package/src/internal/utils/sleep.ts +0 -2
  1885. package/src/internal/utils/uuid.ts +0 -2
  1886. package/src/internal/utils/values.ts +0 -2
  1887. package/src/internal/utils.ts +0 -2
  1888. package/src/internal/ws-adapter-browser.ts +81 -24
  1889. package/src/internal/ws-adapter-node.ts +105 -26
  1890. package/src/internal/ws-adapter.ts +23 -0
  1891. package/src/internal/ws.ts +153 -50
  1892. package/src/lib/.keep +2 -2
  1893. package/src/lib/AbstractChatCompletionRunner.ts +140 -62
  1894. package/src/lib/AssistantStream.ts +498 -239
  1895. package/src/lib/ChatCompletionRunner.ts +24 -16
  1896. package/src/lib/ChatCompletionStream.ts +1783 -249
  1897. package/src/lib/ChatCompletionStreamingRunner.ts +54 -94
  1898. package/src/lib/EventEmitter.ts +127 -27
  1899. package/src/lib/EventStream.ts +1704 -62
  1900. package/src/lib/ResponsesParser.ts +95 -40
  1901. package/src/lib/RunnableFunction.ts +62 -32
  1902. package/src/lib/Util.ts +7 -5
  1903. package/src/lib/assistant-run-polling.ts +27 -0
  1904. package/src/lib/chatCompletionUtils.ts +9 -10
  1905. package/src/lib/embeddings.ts +65 -0
  1906. package/src/lib/file-processing.ts +36 -0
  1907. package/src/lib/jsonschema.ts +74 -34
  1908. package/src/lib/parser.ts +197 -61
  1909. package/src/lib/polling.ts +144 -0
  1910. package/src/lib/responses/EventTypes.ts +16 -1
  1911. package/src/lib/responses/ResponseAccumulator.ts +8 -402
  1912. package/src/lib/responses/ResponseInputItems.ts +1 -0
  1913. package/src/lib/responses/ResponseStream.ts +105 -91
  1914. package/src/lib/transform.ts +160 -108
  1915. package/src/lib/vector-store-polling.ts +46 -0
  1916. package/src/lib/vector-store-upload.ts +53 -0
  1917. package/src/lib/webhook-signature.ts +164 -0
  1918. package/src/providers/bedrock/aws.ts +114 -41
  1919. package/src/providers/bedrock.ts +22 -4
  1920. package/src/realtime/internal-base.ts +206 -41
  1921. package/src/realtime/websocket.ts +226 -41
  1922. package/src/realtime/ws.ts +112 -18
  1923. package/src/resources/admin/admin.ts +1 -1
  1924. package/src/resources/admin/index.ts +1 -1
  1925. package/src/resources/admin/organization/admin-api-keys.ts +1 -1
  1926. package/src/resources/admin/organization/audit-logs.ts +5 -1
  1927. package/src/resources/admin/organization/certificates.ts +1 -1
  1928. package/src/resources/admin/organization/data-retention.ts +1 -1
  1929. package/src/resources/admin/organization/groups/groups.ts +1 -1
  1930. package/src/resources/admin/organization/groups/index.ts +1 -1
  1931. package/src/resources/admin/organization/groups/roles.ts +1 -1
  1932. package/src/resources/admin/organization/groups/users.ts +1 -1
  1933. package/src/resources/admin/organization/groups.ts +1 -1
  1934. package/src/resources/admin/organization/index.ts +3 -1
  1935. package/src/resources/admin/organization/invites.ts +1 -1
  1936. package/src/resources/admin/organization/organization.ts +5 -1
  1937. package/src/resources/admin/organization/projects/api-keys.ts +1 -1
  1938. package/src/resources/admin/organization/projects/certificates.ts +1 -1
  1939. package/src/resources/admin/organization/projects/data-retention.ts +1 -1
  1940. package/src/resources/admin/organization/projects/groups/groups.ts +1 -1
  1941. package/src/resources/admin/organization/projects/groups/index.ts +1 -1
  1942. package/src/resources/admin/organization/projects/groups/roles.ts +1 -1
  1943. package/src/resources/admin/organization/projects/groups.ts +1 -1
  1944. package/src/resources/admin/organization/projects/hosted-tool-permissions.ts +1 -1
  1945. package/src/resources/admin/organization/projects/index.ts +2 -1
  1946. package/src/resources/admin/organization/projects/model-permissions.ts +1 -1
  1947. package/src/resources/admin/organization/projects/projects.ts +38 -5
  1948. package/src/resources/admin/organization/projects/rate-limits.ts +1 -1
  1949. package/src/resources/admin/organization/projects/roles.ts +1 -1
  1950. package/src/resources/admin/organization/projects/service-accounts/api-keys.ts +1 -1
  1951. package/src/resources/admin/organization/projects/service-accounts/index.ts +1 -1
  1952. package/src/resources/admin/organization/projects/service-accounts/service-accounts.ts +1 -1
  1953. package/src/resources/admin/organization/projects/service-accounts.ts +1 -1
  1954. package/src/resources/admin/organization/projects/spend-alerts.ts +1 -1
  1955. package/src/resources/admin/organization/projects/spend-limit.ts +1 -1
  1956. package/src/resources/admin/organization/projects/users/index.ts +1 -1
  1957. package/src/resources/admin/organization/projects/users/roles.ts +1 -1
  1958. package/src/resources/admin/organization/projects/users/users.ts +1 -1
  1959. package/src/resources/admin/organization/projects/users.ts +1 -1
  1960. package/src/resources/admin/organization/projects.ts +1 -1
  1961. package/src/resources/admin/organization/roles.ts +1 -1
  1962. package/src/resources/admin/organization/spend-alerts.ts +1 -1
  1963. package/src/resources/admin/organization/spend-limit.ts +1 -1
  1964. package/src/resources/admin/organization/usage.ts +84 -1
  1965. package/src/resources/admin/organization/users/index.ts +1 -1
  1966. package/src/resources/admin/organization/users/roles.ts +1 -1
  1967. package/src/resources/admin/organization/users/users.ts +1 -1
  1968. package/src/resources/admin/organization/users.ts +1 -1
  1969. package/src/resources/admin/organization.ts +1 -1
  1970. package/src/resources/admin.ts +1 -1
  1971. package/src/resources/audio/audio.ts +1 -1
  1972. package/src/resources/audio/index.ts +1 -1
  1973. package/src/resources/audio/speech.ts +1 -1
  1974. package/src/resources/audio/transcriptions.ts +4 -2
  1975. package/src/resources/audio/translations.ts +4 -2
  1976. package/src/resources/audio.ts +1 -1
  1977. package/src/resources/batches.ts +1 -1
  1978. package/src/resources/beta/assistants.ts +1 -1
  1979. package/src/resources/beta/beta.ts +17 -1
  1980. package/src/resources/beta/chatkit/chatkit.ts +1 -1
  1981. package/src/resources/beta/chatkit/index.ts +1 -1
  1982. package/src/resources/beta/chatkit/sessions.ts +1 -1
  1983. package/src/resources/beta/chatkit/threads.ts +1 -1
  1984. package/src/resources/beta/chatkit.ts +1 -1
  1985. package/src/resources/beta/index.ts +9 -1
  1986. package/src/resources/beta/realtime/index.ts +0 -2
  1987. package/src/resources/beta/realtime/realtime.ts +0 -2
  1988. package/src/resources/beta/realtime/sessions.ts +0 -2
  1989. package/src/resources/beta/realtime/transcription-sessions.ts +0 -2
  1990. package/src/resources/beta/realtime.ts +0 -2
  1991. package/src/resources/beta/responses/index.ts +9 -1
  1992. package/src/resources/beta/responses/input-items.ts +1 -1
  1993. package/src/resources/beta/responses/input-tokens.ts +1 -1
  1994. package/src/resources/beta/responses/internal-base.ts +11 -10
  1995. package/src/resources/beta/responses/responses.ts +2276 -956
  1996. package/src/resources/beta/responses/ws-base.ts +1 -1
  1997. package/src/resources/beta/responses/ws.ts +1 -1
  1998. package/src/resources/beta/responses.ts +1 -1
  1999. package/src/resources/beta/threads/index.ts +1 -1
  2000. package/src/resources/beta/threads/messages.ts +1 -1
  2001. package/src/resources/beta/threads/runs/index.ts +2 -2
  2002. package/src/resources/beta/threads/runs/runs.ts +3 -46
  2003. package/src/resources/beta/threads/runs/steps.ts +1 -1
  2004. package/src/resources/beta/threads/runs.ts +1 -1
  2005. package/src/resources/beta/threads/threads.ts +1 -1
  2006. package/src/resources/beta/threads.ts +1 -1
  2007. package/src/resources/beta.ts +1 -1
  2008. package/src/resources/chat/chat.ts +1 -1
  2009. package/src/resources/chat/completions/completions.ts +46 -8
  2010. package/src/resources/chat/completions/index.ts +1 -1
  2011. package/src/resources/chat/completions/messages.ts +1 -1
  2012. package/src/resources/chat/completions.ts +1 -1
  2013. package/src/resources/chat/index.ts +1 -1
  2014. package/src/resources/chat.ts +1 -1
  2015. package/src/resources/completions.ts +16 -1
  2016. package/src/resources/containers/containers.ts +1 -1
  2017. package/src/resources/containers/files/content.ts +1 -1
  2018. package/src/resources/containers/files/files.ts +1 -1
  2019. package/src/resources/containers/files/index.ts +1 -1
  2020. package/src/resources/containers/files.ts +1 -1
  2021. package/src/resources/containers/index.ts +1 -1
  2022. package/src/resources/containers.ts +1 -1
  2023. package/src/resources/content-provenance-checks.ts +1 -1
  2024. package/src/resources/conversations/conversations.ts +2 -2
  2025. package/src/resources/conversations/index.ts +1 -1
  2026. package/src/resources/conversations/items.ts +2 -2
  2027. package/src/resources/conversations.ts +1 -1
  2028. package/src/resources/embeddings.ts +16 -43
  2029. package/src/resources/evals/evals.ts +1 -1
  2030. package/src/resources/evals/index.ts +1 -1
  2031. package/src/resources/evals/runs/index.ts +1 -1
  2032. package/src/resources/evals/runs/output-items.ts +1 -1
  2033. package/src/resources/evals/runs/runs.ts +1 -1
  2034. package/src/resources/evals/runs.ts +1 -1
  2035. package/src/resources/evals.ts +1 -1
  2036. package/src/resources/files.ts +4 -21
  2037. package/src/resources/fine-tuning/alpha/alpha.ts +1 -1
  2038. package/src/resources/fine-tuning/alpha/graders.ts +1 -1
  2039. package/src/resources/fine-tuning/alpha/index.ts +1 -1
  2040. package/src/resources/fine-tuning/alpha.ts +1 -1
  2041. package/src/resources/fine-tuning/checkpoints/checkpoints.ts +1 -1
  2042. package/src/resources/fine-tuning/checkpoints/index.ts +1 -1
  2043. package/src/resources/fine-tuning/checkpoints/permissions.ts +1 -1
  2044. package/src/resources/fine-tuning/checkpoints.ts +1 -1
  2045. package/src/resources/fine-tuning/fine-tuning.ts +1 -1
  2046. package/src/resources/fine-tuning/index.ts +1 -1
  2047. package/src/resources/fine-tuning/jobs/checkpoints.ts +1 -1
  2048. package/src/resources/fine-tuning/jobs/index.ts +1 -1
  2049. package/src/resources/fine-tuning/jobs/jobs.ts +1 -1
  2050. package/src/resources/fine-tuning/jobs.ts +1 -1
  2051. package/src/resources/fine-tuning/methods.ts +1 -1
  2052. package/src/resources/fine-tuning.ts +1 -1
  2053. package/src/resources/graders/grader-models.ts +1 -1
  2054. package/src/resources/graders/graders.ts +1 -1
  2055. package/src/resources/graders/index.ts +1 -1
  2056. package/src/resources/graders.ts +1 -1
  2057. package/src/resources/images.ts +20 -24
  2058. package/src/resources/index.ts +1 -1
  2059. package/src/resources/models.ts +6 -1
  2060. package/src/resources/moderations.ts +1 -1
  2061. package/src/resources/realtime/api.md +1 -0
  2062. package/src/resources/realtime/calls.ts +47 -1
  2063. package/src/resources/realtime/client-secrets.ts +1 -1
  2064. package/src/resources/realtime/index.ts +8 -2
  2065. package/src/resources/realtime/realtime.ts +6 -4
  2066. package/src/resources/realtime.ts +1 -1
  2067. package/src/resources/responses/api.md +8 -0
  2068. package/src/resources/responses/index.ts +1 -1
  2069. package/src/resources/responses/input-items.ts +1 -1
  2070. package/src/resources/responses/input-tokens.ts +1 -1
  2071. package/src/resources/responses/internal-base.ts +11 -10
  2072. package/src/resources/responses/responses.ts +1530 -332
  2073. package/src/resources/responses/ws-base.ts +1 -1
  2074. package/src/resources/responses/ws.ts +1 -1
  2075. package/src/resources/responses.ts +1 -1
  2076. package/src/resources/shared.ts +14 -3
  2077. package/src/resources/skills/content.ts +1 -1
  2078. package/src/resources/skills/index.ts +1 -1
  2079. package/src/resources/skills/skills.ts +4 -2
  2080. package/src/resources/skills/versions/content.ts +1 -1
  2081. package/src/resources/skills/versions/index.ts +1 -1
  2082. package/src/resources/skills/versions/versions.ts +4 -2
  2083. package/src/resources/skills/versions.ts +1 -1
  2084. package/src/resources/skills.ts +1 -1
  2085. package/src/resources/uploads/index.ts +1 -1
  2086. package/src/resources/uploads/parts.ts +1 -1
  2087. package/src/resources/uploads/uploads.ts +1 -1
  2088. package/src/resources/uploads.ts +1 -1
  2089. package/src/resources/vector-stores/file-batches.ts +13 -78
  2090. package/src/resources/vector-stores/files.ts +4 -44
  2091. package/src/resources/vector-stores/index.ts +1 -1
  2092. package/src/resources/vector-stores/vector-stores.ts +1 -1
  2093. package/src/resources/vector-stores.ts +1 -1
  2094. package/src/resources/videos.ts +24 -1
  2095. package/src/resources/webhooks/index.ts +1 -1
  2096. package/src/resources/webhooks/webhooks.ts +6 -65
  2097. package/src/resources/webhooks.ts +1 -1
  2098. package/src/tsconfig.dist-src.d.ts +29 -0
  2099. package/src/tsconfig.json +6 -3
  2100. package/src/version.ts +2 -1
  2101. package/version.d.mts +2 -1
  2102. package/version.d.mts.map +1 -1
  2103. package/version.d.ts +2 -1
  2104. package/version.d.ts.map +1 -1
  2105. package/version.js +2 -1
  2106. package/version.js.map +1 -1
  2107. package/version.mjs +2 -1
  2108. package/version.mjs.map +1 -1
package/src/client.ts CHANGED
@@ -1,25 +1,36 @@
1
- // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
1
+ // File generated from our OpenAPI spec by Castiron. See CONTRIBUTING.md for details.
2
2
 
3
3
  import type { RequestInit, RequestInfo, BodyInit } from './internal/builtin-types';
4
4
  import type { HTTPMethod, PromiseOrValue, MergedRequestInit, FinalizedRequestInit } from './internal/types';
5
5
  import { uuid4 } from './internal/utils/uuid';
6
- import { validatePositiveInteger, isAbsoluteURL, safeJSON } from './internal/utils/values';
6
+ import { validatePositiveInteger, isAbsoluteURL, safeJSON, hasOwn } from './internal/utils/values';
7
7
  import { sleep } from './internal/utils/sleep';
8
8
  export type { Logger, LogLevel } from './internal/utils/log';
9
9
  import { castToError, isAbortError } from './internal/errors';
10
- import type { APIResponseProps } from './internal/parse';
10
+ import { addRequestID, defaultParseResponse, 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
14
  import { stringifyQuery } from './internal/utils/query';
15
15
  import { VERSION } from './version';
16
+ import { resolveDataResidency, type DataResidency } from './internal/data-residency';
17
+ export type { DataResidency } from './internal/data-residency';
16
18
  import * as Errors from './core/error';
17
19
  import * as Pagination from './core/pagination';
18
- import type { WorkloadIdentity } from './auth/types';
20
+ import type { WorkloadIdentity, X509WorkloadIdentity } from './auth/types';
19
21
  import { WorkloadIdentityAuth } from './auth/workload-identity-auth';
22
+ import {
23
+ X509_API_BASE_URL,
24
+ X509WorkloadIdentityAuth,
25
+ assertX509APIOrigin,
26
+ assertX509RequestOptions,
27
+ isX509WorkloadIdentity,
28
+ snapshotX509RequestOptions,
29
+ } from './internal/auth/x509-workload-identity-auth';
30
+ import type { X509Transport } from './internal/auth/x509-transport-registry';
31
+ import { isTransientX509ConnectionError, markApprovedX509Client } from '#x509-transport-state';
20
32
  import { OAuthError, SubjectTokenProviderError } from './core/error';
21
33
  import {
22
- AbstractPage,
23
34
  type ConversationCursorPageParams,
24
35
  ConversationCursorPageResponse,
25
36
  type CursorPageParams,
@@ -250,7 +261,28 @@ import {
250
261
  } from './internal/utils/log';
251
262
  import { isEmptyObj } from './internal/utils/values';
252
263
 
264
+ function isRunningInBrowserOrBrowserWorker(): boolean {
265
+ if (isRunningInBrowser()) return true;
266
+
267
+ const scope = globalThis as any;
268
+ return (
269
+ typeof scope.WorkerGlobalScope === 'function' &&
270
+ scope instanceof scope.WorkerGlobalScope &&
271
+ typeof scope.WorkerNavigator === 'function' &&
272
+ scope.navigator instanceof scope.WorkerNavigator &&
273
+ typeof scope.navigator?.userAgent === 'string' &&
274
+ scope.navigator.userAgent !== 'Cloudflare-Workers' &&
275
+ scope.process?.versions?.node === undefined &&
276
+ scope.Deno === undefined &&
277
+ scope.Bun === undefined &&
278
+ scope.EdgeRuntime === undefined &&
279
+ scope.WebSocketPair === undefined
280
+ );
281
+ }
282
+
253
283
  const WORKLOAD_IDENTITY_API_KEY_PLACEHOLDER = 'workload-identity-auth';
284
+ const inheritedDataResidencySelection = Symbol('inheritedDataResidencySelection');
285
+ type InternalClientOptions = ClientOptions & { [inheritedDataResidencySelection]?: boolean };
254
286
 
255
287
  export type ApiKeySetter = () => Promise<string>;
256
288
 
@@ -296,6 +328,14 @@ export interface ClientOptions {
296
328
  */
297
329
  baseURL?: string | null | undefined;
298
330
 
331
+ /**
332
+ * Select an OpenAI regional endpoint. This overrides an inherited or environment
333
+ * base URL and is mutually exclusive with an explicit `baseURL` or `provider`.
334
+ * Availability depends on your project and model; no fallback is performed.
335
+ * `null` and `undefined` leave ordinary base URL resolution unchanged.
336
+ */
337
+ dataResidency?: DataResidency | null | undefined;
338
+
299
339
  /**
300
340
  * The maximum amount of time (in milliseconds) that the client should wait for a response
301
341
  * from the server before timing out a single request.
@@ -303,6 +343,23 @@ export interface ClientOptions {
303
343
  * Note that request timeouts are retried by default, so in a worst-case scenario you may wait
304
344
  * much longer than this timeout before the promise succeeds or fails.
305
345
  *
346
+ * Node.js fetch enforces independent response-header and body-inactivity timeouts, typically
347
+ * defaulting to five minutes, even when this timeout is longer. To increase them, install
348
+ * `undici` and configure an Agent with the matching fetch implementation:
349
+ *
350
+ * ```ts
351
+ * import { Agent, fetch } from 'undici';
352
+ *
353
+ * const timeout = 20 * 60 * 1000;
354
+ * const client = new OpenAI({
355
+ * timeout,
356
+ * fetch,
357
+ * fetchOptions: {
358
+ * dispatcher: new Agent({ headersTimeout: timeout, bodyTimeout: timeout }),
359
+ * },
360
+ * });
361
+ * ```
362
+ *
306
363
  * @unit milliseconds
307
364
  */
308
365
  timeout?: number | undefined;
@@ -368,7 +425,10 @@ export interface ClientOptions {
368
425
  * Workload identity configuration for OAuth2 token exchange authentication.
369
426
  * Mutually exclusive with `apiKey`.
370
427
  */
371
- workloadIdentity?: WorkloadIdentity | undefined;
428
+ workloadIdentity?: WorkloadIdentity | X509WorkloadIdentity | undefined;
429
+
430
+ /** Approved, frozen Node.js certificate transport required only for X.509 workload identity. */
431
+ x509Transport?: X509Transport | undefined;
372
432
 
373
433
  /**
374
434
  * Configure this client to use a third-party API provider.
@@ -396,10 +456,25 @@ export class OpenAI {
396
456
 
397
457
  private fetch: Fetch;
398
458
  #encoder: Opts.RequestEncoder;
459
+ #x509Authentication: X509WorkloadIdentityAuth | undefined;
460
+ #x509Fetch: Fetch | undefined;
461
+ // Preserve an explicit global selection without storing a second routing URL.
462
+ #explicitDataResidency = false;
463
+ #responseAttempts = new WeakMap<
464
+ AbortController,
465
+ {
466
+ timeout: number;
467
+ retriesRemaining: number;
468
+ hasStreamingBody: boolean;
469
+ authentication?: X509WorkloadIdentityAuth;
470
+ helperMethod?: unknown;
471
+ continueRequest?: <T>(operation: () => Promise<T>) => Promise<T>;
472
+ }
473
+ >();
399
474
  protected idempotencyHeader?: string;
400
475
  protected _options: ClientOptions;
401
476
  private _provider: ProviderRuntime | undefined;
402
- private _workloadIdentityAuth?: WorkloadIdentityAuth;
477
+ private _workloadIdentityAuth?: WorkloadIdentityAuth | X509WorkloadIdentityAuth;
403
478
 
404
479
  /**
405
480
  * API Client for interfacing with the OpenAI API.
@@ -420,11 +495,25 @@ export class OpenAI {
420
495
  * @param {boolean} [opts.dangerouslyAllowBrowser=false] - By default, client-side use of this library is not allowed, as it risks exposing your secret API credentials to attackers.
421
496
  */
422
497
  constructor(clientOptions: ClientOptions = {}) {
498
+ const residencyBaseURL = resolveDataResidency(clientOptions);
423
499
  const provider = clientOptions.provider;
500
+ const {
501
+ baseURL = provider ? null : readEnv('OPENAI_BASE_URL'),
502
+ dataResidency: _dataResidency,
503
+ [inheritedDataResidencySelection]: inheritedResidencySelection = false,
504
+ apiKey = provider ? null : (readEnv('OPENAI_API_KEY') ?? null),
505
+ adminAPIKey = provider ? null : (readEnv('OPENAI_ADMIN_KEY') ?? null),
506
+ organization = provider ? null : (readEnv('OPENAI_ORG_ID') ?? null),
507
+ project = provider ? null : (readEnv('OPENAI_PROJECT_ID') ?? null),
508
+ webhookSecret = readEnv('OPENAI_WEBHOOK_SECRET') ?? null,
509
+ workloadIdentity,
510
+ x509Transport,
511
+ ...opts
512
+ } = clientOptions as InternalClientOptions;
424
513
  if (provider) {
425
- const conflictingOptions = (['apiKey', 'adminAPIKey', 'workloadIdentity', 'baseURL'] as const).filter(
426
- (key) => clientOptions[key] != null,
427
- );
514
+ const conflictingOptions = (
515
+ ['apiKey', 'adminAPIKey', 'workloadIdentity', 'x509Transport', 'baseURL', 'dataResidency'] as const
516
+ ).filter((key) => (key === 'workloadIdentity' ? workloadIdentity : clientOptions[key]) != null);
428
517
  if (conflictingOptions.length) {
429
518
  throw new Errors.OpenAIError(
430
519
  `The \`provider\` option cannot be used with ${conflictingOptions
@@ -433,17 +522,11 @@ export class OpenAI {
433
522
  );
434
523
  }
435
524
  }
436
-
437
- const {
438
- baseURL = provider ? null : readEnv('OPENAI_BASE_URL'),
439
- apiKey = provider ? null : readEnv('OPENAI_API_KEY') ?? null,
440
- adminAPIKey = provider ? null : readEnv('OPENAI_ADMIN_KEY') ?? null,
441
- organization = provider ? null : readEnv('OPENAI_ORG_ID') ?? null,
442
- project = provider ? null : readEnv('OPENAI_PROJECT_ID') ?? null,
443
- webhookSecret = readEnv('OPENAI_WEBHOOK_SECRET') ?? null,
444
- workloadIdentity,
445
- ...opts
446
- } = clientOptions;
525
+ const identity = isX509WorkloadIdentity(workloadIdentity)
526
+ ? { x509: workloadIdentity, legacy: undefined }
527
+ : { x509: undefined, legacy: workloadIdentity };
528
+ const x509Identity = identity.x509;
529
+ const usesX509Identity = x509Identity !== undefined;
447
530
  const providerRuntime = provider ? configureProvider(provider) : undefined;
448
531
  const options: ClientOptions = {
449
532
  apiKey,
@@ -452,11 +535,40 @@ export class OpenAI {
452
535
  project,
453
536
  webhookSecret,
454
537
  workloadIdentity,
538
+ x509Transport,
455
539
  provider,
456
540
  ...opts,
457
- baseURL: providerRuntime?.baseURL ?? (baseURL || `https://api.openai.com/v1`),
541
+ baseURL:
542
+ providerRuntime?.baseURL ??
543
+ residencyBaseURL ??
544
+ (baseURL || (usesX509Identity ? X509_API_BASE_URL : `https://api.openai.com/v1`)),
458
545
  };
459
546
 
547
+ if (x509Transport && !usesX509Identity) {
548
+ throw new Errors.OpenAIError('An X.509 transport requires an X.509 workload identity.');
549
+ }
550
+
551
+ if (usesX509Identity) {
552
+ if (residencyBaseURL !== undefined || inheritedResidencySelection) {
553
+ throw new Errors.OpenAIError('X.509 workload identity does not support data residency selection.');
554
+ }
555
+ if (clientOptions.fetch !== undefined) {
556
+ throw new Errors.OpenAIError(
557
+ 'X.509 workload identity does not support a custom fetch implementation.',
558
+ );
559
+ }
560
+ assertX509APIOrigin(options.baseURL!);
561
+ assertX509RequestOptions(options.fetchOptions);
562
+ if (
563
+ this.fetchWithAuth !== OpenAI.prototype.fetchWithAuth ||
564
+ this.fetchWithTimeout !== OpenAI.prototype.fetchWithTimeout
565
+ ) {
566
+ throw new Errors.OpenAIError(
567
+ 'X.509 workload identity does not support overridden fetch dispatch hooks.',
568
+ );
569
+ }
570
+ }
571
+
460
572
  if (apiKey && workloadIdentity) {
461
573
  throw new Errors.OpenAIError('The `apiKey` and `workloadIdentity` options are mutually exclusive');
462
574
  }
@@ -467,14 +579,15 @@ export class OpenAI {
467
579
  );
468
580
  }
469
581
 
470
- if (!options.dangerouslyAllowBrowser && isRunningInBrowser()) {
582
+ if (!options.dangerouslyAllowBrowser && isRunningInBrowserOrBrowserWorker()) {
471
583
  throw new Errors.OpenAIError(
472
584
  "It looks like you're running in a browser-like environment.\n\nThis is disabled by default, as it risks exposing your secret API credentials to attackers.\nIf you understand the risks and have appropriate mitigations in place,\nyou can set the `dangerouslyAllowBrowser` option to `true`, e.g.,\n\nnew OpenAI({ apiKey, dangerouslyAllowBrowser: true });\n\nhttps://help.openai.com/en/articles/5112595-best-practices-for-api-key-safety\n",
473
585
  );
474
586
  }
475
587
 
476
588
  this.baseURL = options.baseURL!;
477
- this.timeout = options.timeout ?? OpenAI.DEFAULT_TIMEOUT /* 10 minutes */;
589
+ this.#explicitDataResidency = residencyBaseURL !== undefined || inheritedResidencySelection;
590
+ this.timeout = options.timeout ?? OpenAI.DEFAULT_TIMEOUT; /* 10 minutes */
478
591
  this.logger = options.logger ?? console;
479
592
  const defaultLogLevel = 'warn';
480
593
  // Set default logLevel early so that we can log a warning in parseLogLevel.
@@ -503,8 +616,15 @@ export class OpenAI {
503
616
  this._options = options;
504
617
  this._provider = providerRuntime;
505
618
 
506
- if (workloadIdentity) {
507
- this._workloadIdentityAuth = new WorkloadIdentityAuth(workloadIdentity, this.fetch);
619
+ if (x509Identity) {
620
+ const authentication = new X509WorkloadIdentityAuth(x509Identity, x509Transport, organization, project);
621
+ this._workloadIdentityAuth = authentication;
622
+ this.#x509Authentication = authentication;
623
+ this.#x509Fetch = authentication.fetch();
624
+ this.fetch = this.#x509Fetch;
625
+ markApprovedX509Client(this);
626
+ } else if (identity.legacy) {
627
+ this._workloadIdentityAuth = new WorkloadIdentityAuth(identity.legacy, this.fetch);
508
628
  }
509
629
 
510
630
  this.apiKey = typeof apiKey === 'string' ? apiKey : null;
@@ -518,8 +638,10 @@ export class OpenAI {
518
638
  * Create a new client instance re-using the same options given to the current client with optional overriding.
519
639
  */
520
640
  withOptions(options: Partial<ClientOptions>): this {
641
+ const residencyBaseURL = resolveDataResidency(options);
521
642
  const inheritedProvider = this._options.provider;
522
643
  const provider = options.provider ?? inheritedProvider;
644
+ const x509Authentication = this.#x509Authentication;
523
645
  const inheritedOptions: ClientOptions = {
524
646
  ...this._options,
525
647
  baseURL: this.baseURL,
@@ -527,19 +649,38 @@ export class OpenAI {
527
649
  timeout: this.timeout,
528
650
  logger: this.logger,
529
651
  logLevel: this.logLevel,
530
- fetch: this.fetch,
652
+ fetch: this.#x509Authentication ? undefined : this.fetch,
531
653
  fetchOptions: this.fetchOptions,
532
654
  apiKey: this._options.apiKey,
533
655
  adminAPIKey: this.adminAPIKey,
534
- workloadIdentity: this._options.workloadIdentity,
656
+ workloadIdentity: x509Authentication?.identitySnapshot() ?? this._options.workloadIdentity,
657
+ x509Transport: this._options.x509Transport,
535
658
  organization: this.organization,
536
659
  project: this.project,
537
660
  webhookSecret: this.webhookSecret,
538
661
  };
662
+ const currentlyX509 = x509Authentication !== undefined;
663
+ const nextIdentity = hasOwn(options, 'workloadIdentity')
664
+ ? options.workloadIdentity
665
+ : inheritedOptions.workloadIdentity;
666
+ const nextX509 = isX509WorkloadIdentity(nextIdentity);
667
+ if (currentlyX509 !== nextX509) {
668
+ delete inheritedOptions.fetch;
669
+ delete inheritedOptions.baseURL;
670
+ if (nextX509) {
671
+ inheritedOptions.apiKey = null;
672
+ } else {
673
+ delete inheritedOptions.x509Transport;
674
+ }
675
+ }
676
+ if (residencyBaseURL !== undefined) {
677
+ delete inheritedOptions.baseURL;
678
+ }
539
679
  if (provider) {
540
680
  delete inheritedOptions.apiKey;
541
681
  delete inheritedOptions.adminAPIKey;
542
682
  delete inheritedOptions.workloadIdentity;
683
+ delete inheritedOptions.x509Transport;
543
684
  delete inheritedOptions.baseURL;
544
685
  if (provider !== inheritedProvider) {
545
686
  delete inheritedOptions.organization;
@@ -548,11 +689,27 @@ export class OpenAI {
548
689
  }
549
690
  }
550
691
 
551
- const client = new (this.constructor as any as new (props: ClientOptions) => typeof this)({
692
+ const clientOptions: InternalClientOptions = {
552
693
  ...inheritedOptions,
553
694
  ...options,
554
695
  provider,
555
- });
696
+ [inheritedDataResidencySelection]:
697
+ this.#explicitDataResidency &&
698
+ residencyBaseURL === undefined &&
699
+ !hasOwn(options, 'baseURL') &&
700
+ !provider,
701
+ };
702
+ const client = new (this.constructor as any as new (props: ClientOptions) => typeof this)(clientOptions);
703
+ if (
704
+ this.#x509Authentication &&
705
+ client.#x509Authentication &&
706
+ this.baseURL === client.baseURL &&
707
+ this.#x509Authentication.matches(client.#x509Authentication)
708
+ ) {
709
+ client._workloadIdentityAuth = this.#x509Authentication;
710
+ client.#x509Authentication = this.#x509Authentication;
711
+ client.#x509Fetch = this.#x509Fetch;
712
+ }
556
713
  return client;
557
714
  }
558
715
 
@@ -560,7 +717,11 @@ export class OpenAI {
560
717
  * Check whether the base URL is set to its default.
561
718
  */
562
719
  #baseURLOverridden(): boolean {
563
- return this._provider !== undefined || this.baseURL !== 'https://api.openai.com/v1';
720
+ return (
721
+ this.#explicitDataResidency ||
722
+ this._provider !== undefined ||
723
+ this.baseURL !== 'https://api.openai.com/v1'
724
+ );
564
725
  }
565
726
 
566
727
  protected defaultQuery(): Record<string, string | undefined> | undefined {
@@ -597,6 +758,14 @@ export class OpenAI {
597
758
  adminAPIKeyAuth: true,
598
759
  },
599
760
  ): Promise<NullableHeaders | undefined> {
761
+ const authentication = this.#x509Authentication ?? this._workloadIdentityAuth;
762
+ if (
763
+ authentication instanceof X509WorkloadIdentityAuth &&
764
+ schemes.adminAPIKeyAuth &&
765
+ this.adminAPIKey !== null
766
+ ) {
767
+ return await this.adminAPIKeyAuth(opts);
768
+ }
600
769
  return buildHeaders([
601
770
  schemes.bearerAuth ? await this.bearerAuth(opts) : null,
602
771
  schemes.adminAPIKeyAuth ? await this.adminAPIKeyAuth(opts) : null,
@@ -604,8 +773,40 @@ export class OpenAI {
604
773
  }
605
774
 
606
775
  protected async bearerAuth(opts: FinalRequestOptions): Promise<NullableHeaders | undefined> {
607
- if (this._workloadIdentityAuth) {
608
- return buildHeaders([{ Authorization: `Bearer ${await this._workloadIdentityAuth.getToken()}` }]);
776
+ const authentication = this.#x509Authentication ?? this._workloadIdentityAuth;
777
+ if (authentication) {
778
+ if (authentication instanceof X509WorkloadIdentityAuth) {
779
+ if (
780
+ authentication === this._workloadIdentityAuth &&
781
+ (this.fetchWithAuth !== OpenAI.prototype.fetchWithAuth ||
782
+ this.fetchWithTimeout !== OpenAI.prototype.fetchWithTimeout)
783
+ ) {
784
+ throw new Errors.OpenAIError(
785
+ 'X.509 workload identity does not support overridden fetch dispatch hooks.',
786
+ );
787
+ }
788
+ const snapshots = authentication.headerSnapshots();
789
+ if (
790
+ !X509WorkloadIdentityAuth.shouldAuthenticate(
791
+ opts,
792
+ snapshots.defaultHeaders,
793
+ snapshots.requestHeaders,
794
+ )
795
+ ) {
796
+ return undefined;
797
+ }
798
+ }
799
+ const token =
800
+ authentication instanceof X509WorkloadIdentityAuth
801
+ ? await authentication.getToken(opts, {
802
+ apiURL: authentication.requestAPIURL(),
803
+ ...authentication.headerSnapshots(),
804
+ ...authentication.requestSnapshot(),
805
+ signal: authentication.effectiveSignal(),
806
+ ...authentication.tenantSnapshot(),
807
+ })
808
+ : await authentication.getToken();
809
+ return buildHeaders([{ Authorization: `Bearer ${token}` }]);
609
810
  }
610
811
  if (this.apiKey == null) {
611
812
  return undefined;
@@ -638,7 +839,9 @@ export class OpenAI {
638
839
  message: string | undefined,
639
840
  headers: Headers,
640
841
  ): Errors.APIError {
641
- return Errors.APIError.generate(status, error, message, headers);
842
+ const normalizedError =
843
+ error && typeof error === 'object' && (error as { error?: unknown }).error == null ? { error } : error;
844
+ return Errors.APIError.generate(status, normalizedError, message, headers);
642
845
  }
643
846
 
644
847
  async _callApiKey(): Promise<boolean> {
@@ -674,9 +877,8 @@ export class OpenAI {
674
877
  defaultBaseURL?: string | undefined,
675
878
  ): string {
676
879
  const baseURL = (!this.#baseURLOverridden() && defaultBaseURL) || this.baseURL;
677
- const url =
678
- isAbsoluteURL(path) ?
679
- new URL(path)
880
+ const url = isAbsoluteURL(path)
881
+ ? new URL(path)
680
882
  : new URL(baseURL + (baseURL.endsWith('/') && path.startsWith('/') ? path.slice(1) : path));
681
883
 
682
884
  const defaultQuery = this.defaultQuery();
@@ -751,7 +953,191 @@ export class OpenAI {
751
953
  options: PromiseOrValue<FinalRequestOptions>,
752
954
  remainingRetries: number | null = null,
753
955
  ): APIPromise<Rsp> {
754
- return new APIPromise(this, this.makeRequest(options, remainingRetries, undefined));
956
+ const authentication = this.#x509Authentication ?? this._workloadIdentityAuth;
957
+ const request =
958
+ authentication instanceof X509WorkloadIdentityAuth
959
+ ? Promise.resolve(options).then((resolved) =>
960
+ authentication.runRequest(() => this.makeRequest(resolved, remainingRetries, undefined), this),
961
+ )
962
+ : this.makeRequest(options, remainingRetries, undefined);
963
+ return this.responsePromise<Rsp>(request);
964
+ }
965
+
966
+ private responsePromise<Rsp>(
967
+ request: Promise<APIResponseProps>,
968
+ parse: (client: OpenAI, props: APIResponseProps) => Promise<any> = (client, props) =>
969
+ this.parseResponseWithTimeout<Rsp>(client, props),
970
+ ): APIPromise<Rsp> {
971
+ const promise = new APIPromise<Rsp>(this, request, (client, props) => {
972
+ const resume = this.#responseAttempts.get(props.controller)?.continueRequest;
973
+ return resume ? resume(() => parse(client, props)) : parse(client, props);
974
+ });
975
+
976
+ // A body timeout can retry after the original raw response has arrived. Wait for
977
+ // parsing before selecting the response so withResponse() reports the retry.
978
+ promise.withResponse = async () => {
979
+ const data = await promise;
980
+ const { response } = await request;
981
+ return { data, response, request_id: response.headers.get('x-request-id') };
982
+ };
983
+ promise._thenUnwrap = <Next>(transform: (data: Rsp, props: APIResponseProps) => Next) =>
984
+ this.responsePromise<Next>(request, async (client, props) =>
985
+ addRequestID(transform(await parse(client, props), props), props.response),
986
+ );
987
+
988
+ return promise;
989
+ }
990
+
991
+ private async parseResponseWithTimeout<Rsp>(client: OpenAI, props: APIResponseProps): Promise<any> {
992
+ if (
993
+ props.options.stream ||
994
+ props.options.__binaryResponse ||
995
+ props.response.status === 204 ||
996
+ props.response.headers.get('content-length') === '0'
997
+ ) {
998
+ return defaultParseResponse<Rsp>(client, props);
999
+ }
1000
+
1001
+ while (true) {
1002
+ const attempt = this.#responseAttempts.get(props.controller);
1003
+ const timeout = attempt?.timeout ?? props.options.timeout ?? this.timeout;
1004
+ const x509Authentication = attempt?.authentication;
1005
+ const callerSignal = x509Authentication ? props.controller.signal : props.options.signal;
1006
+ const abortError = () =>
1007
+ x509Authentication && callerSignal
1008
+ ? this._makeUserAbortError(callerSignal)
1009
+ : new Errors.APIUserAbortError();
1010
+ let remaining: number;
1011
+ try {
1012
+ remaining =
1013
+ x509Authentication?.remainingTimeout(props.options, timeout) ??
1014
+ Math.max(0, props.startTime + timeout - Date.now());
1015
+ } catch (error) {
1016
+ const cancellation = callerSignal?.aborted ? abortError() : undefined;
1017
+ props.controller.abort();
1018
+ void Shims.CancelReadableStream(props.response.body).catch(() => undefined);
1019
+ throw cancellation ?? error;
1020
+ }
1021
+ let timer: ReturnType<typeof setTimeout> | undefined;
1022
+ let abortListener: (() => void) | undefined;
1023
+ let timedOut = false;
1024
+
1025
+ try {
1026
+ // Tool runners preserve a completed buffered turn before cancellation stops the next request.
1027
+ if (callerSignal?.aborted && attempt?.helperMethod !== 'runTools') {
1028
+ throw abortError();
1029
+ }
1030
+
1031
+ const timeoutPromise = new Promise<never>((_, reject) => {
1032
+ timer = setTimeout(() => {
1033
+ timedOut = true;
1034
+ props.controller.abort();
1035
+ reject(new Errors.APIConnectionTimeoutError());
1036
+ }, remaining);
1037
+
1038
+ if (callerSignal) {
1039
+ abortListener = () => {
1040
+ if (!timedOut) reject(abortError());
1041
+ };
1042
+ callerSignal.addEventListener('abort', abortListener, { once: true });
1043
+ }
1044
+ });
1045
+
1046
+ return await Promise.race([defaultParseResponse<Rsp>(client, props), timeoutPromise]);
1047
+ } catch (error) {
1048
+ if (callerSignal?.aborted && !timedOut) {
1049
+ throw abortError();
1050
+ }
1051
+ if (!timedOut) {
1052
+ if (x509Authentication && error instanceof SyntaxError) {
1053
+ throw new SyntaxError('X.509 workload identity API response contains invalid JSON.');
1054
+ }
1055
+ if (x509Authentication && !(error instanceof Errors.OpenAIError)) {
1056
+ throw new Errors.APIConnectionError({
1057
+ message: 'X.509 workload identity API response body could not be read.',
1058
+ });
1059
+ }
1060
+ throw error;
1061
+ }
1062
+
1063
+ const retriesRemaining = attempt?.retriesRemaining ?? 0;
1064
+ if (
1065
+ !retriesRemaining ||
1066
+ attempt?.hasStreamingBody ||
1067
+ props.options.__metadata?.['hasStreamingBody'] ||
1068
+ ((globalThis as any).ReadableStream &&
1069
+ props.options.body instanceof (globalThis as any).ReadableStream) ||
1070
+ (typeof props.options.body === 'object' &&
1071
+ props.options.body !== null &&
1072
+ (Symbol.asyncIterator in props.options.body ||
1073
+ (Symbol.iterator in props.options.body &&
1074
+ 'next' in props.options.body &&
1075
+ typeof props.options.body.next === 'function')))
1076
+ ) {
1077
+ throw new Errors.APIConnectionTimeoutError();
1078
+ }
1079
+
1080
+ if (timer !== undefined) clearTimeout(timer);
1081
+ if (abortListener) callerSignal?.removeEventListener('abort', abortListener);
1082
+ abortListener = undefined;
1083
+
1084
+ const next = await this.retryRequest(
1085
+ props.options,
1086
+ retriesRemaining,
1087
+ props.retryOfRequestLogID ?? props.requestLogID,
1088
+ );
1089
+ Object.assign(props, next);
1090
+ } finally {
1091
+ if (timer !== undefined) clearTimeout(timer);
1092
+ if (abortListener) callerSignal?.removeEventListener('abort', abortListener);
1093
+ }
1094
+ }
1095
+ }
1096
+
1097
+ /** Keeps terminal X.509 error-body consumption inside the original logical request deadline. */
1098
+ private async readX509ResponseError(
1099
+ response: Response,
1100
+ options: FinalRequestOptions,
1101
+ timeout: number,
1102
+ controller: AbortController,
1103
+ authentication: X509WorkloadIdentityAuth,
1104
+ ): Promise<string> {
1105
+ const deadline = new AbortController();
1106
+ const callerSignal = controller.signal;
1107
+ let timedOut = false;
1108
+ const cancel = () => deadline.abort(callerSignal.reason);
1109
+ callerSignal.addEventListener('abort', cancel, { once: true });
1110
+ if (callerSignal.aborted) {
1111
+ cancel();
1112
+ }
1113
+
1114
+ try {
1115
+ const remaining = authentication.remainingTimeout(options, timeout);
1116
+ const expiration = authentication.waitForRetry(remaining, deadline.signal).then(() => {
1117
+ throw new Errors.APIConnectionTimeoutError();
1118
+ });
1119
+ const body = await Promise.race([
1120
+ response.text().catch(() => 'X.509 workload identity API response body could not be read.'),
1121
+ expiration,
1122
+ ]);
1123
+ if (callerSignal.aborted) {
1124
+ throw this._makeUserAbortError(callerSignal);
1125
+ }
1126
+ return body;
1127
+ } catch (error) {
1128
+ if (error instanceof Errors.APIConnectionTimeoutError) {
1129
+ timedOut = !callerSignal.aborted;
1130
+ controller.abort();
1131
+ void Shims.CancelReadableStream(response.body).catch(() => undefined);
1132
+ }
1133
+ if (callerSignal.aborted && !timedOut) {
1134
+ throw this._makeUserAbortError(callerSignal);
1135
+ }
1136
+ throw error;
1137
+ } finally {
1138
+ callerSignal.removeEventListener('abort', cancel);
1139
+ deadline.abort();
1140
+ }
755
1141
  }
756
1142
 
757
1143
  private async makeRequest(
@@ -767,18 +1153,85 @@ export class OpenAI {
767
1153
 
768
1154
  await this.prepareOptions(options);
769
1155
 
770
- const { req, url, timeout } = await this.buildRequest(options, {
771
- retryCount: maxRetries - retriesRemaining,
772
- });
773
- const hasStreamingBody = options.__metadata?.['hasStreamingBody'] === true;
774
-
775
- await this.prepareRequest(req, { url, options });
776
- await this._provider?.prepareRequest?.(req, { url, options });
1156
+ const x509Authentication = this.#x509Authentication;
1157
+ x509Authentication?.beginRequestPlanning();
1158
+ let built: { req: FinalizedRequestInit; url: string; timeout: number };
1159
+ try {
1160
+ const candidate = await this.buildRequest(options, {
1161
+ retryCount: maxRetries - retriesRemaining,
1162
+ });
1163
+ built = { req: candidate.req, url: candidate.url, timeout: candidate.timeout };
1164
+ if (x509Authentication) {
1165
+ validatePositiveInteger('timeout', built.timeout);
1166
+ x509Authentication.authorizePlannedRequest(built.url, built.req, built.timeout);
1167
+ if (X509WorkloadIdentityAuth.isStreamingRequestBody(built.req.body)) {
1168
+ options.__metadata = { ...options.__metadata, hasStreamingBody: true };
1169
+ }
1170
+ await this.prepareRequest(built.req, { url: built.url, options });
1171
+ await this._provider?.prepareRequest?.(built.req, { url: built.url, options });
1172
+ x509Authentication.beginRequestPlanning();
1173
+ x509Authentication.authorizePlannedRequest(built.url, built.req, built.timeout, true);
1174
+ if (X509WorkloadIdentityAuth.isStreamingRequestBody(built.req.body)) {
1175
+ options.__metadata = { ...options.__metadata, hasStreamingBody: true };
1176
+ }
1177
+ const callerSignal = x509Authentication.requestSnapshot().signal;
1178
+ if (callerSignal?.aborted || built.req.signal?.aborted) {
1179
+ throw this._makeUserAbortError(callerSignal?.aborted ? callerSignal : built.req.signal!);
1180
+ }
1181
+ x509Authentication.setEffectiveSignal(
1182
+ built.req.signal || callerSignal
1183
+ ? createRequestController(built.req.signal ?? callerSignal, callerSignal).signal
1184
+ : undefined,
1185
+ );
1186
+ x509Authentication.beginRequestNetwork();
1187
+ const security = options.__security ?? { bearerAuth: true };
1188
+ const authenticationHeaders = await this.authHeaders(options, security);
1189
+ const suppliedHeaders = x509Authentication.headerSnapshots();
1190
+ const supplied = buildHeaders([suppliedHeaders.defaultHeaders, suppliedHeaders.requestHeaders]);
1191
+ for (const [name, value] of authenticationHeaders?.values ?? []) {
1192
+ if (!supplied.nulls.has(name) && !built.req.headers.has(name)) {
1193
+ built.req.headers.set(name, value);
1194
+ }
1195
+ }
1196
+ this.validateHeaders(buildHeaders([supplied, built.req.headers]), security);
1197
+ }
1198
+ } catch (error) {
1199
+ x509Authentication?.retireRequestBody();
1200
+ if (
1201
+ x509Authentication &&
1202
+ retriesRemaining &&
1203
+ !options.__metadata?.['hasStreamingBody'] &&
1204
+ X509WorkloadIdentityAuth.isRetryableFailure(error)
1205
+ ) {
1206
+ return await this.retryRequest(
1207
+ options,
1208
+ retriesRemaining,
1209
+ retryOfRequestLogID ?? 'x509-token-exchange',
1210
+ X509WorkloadIdentityAuth.retryHeaders(error),
1211
+ );
1212
+ }
1213
+ throw error;
1214
+ }
1215
+ const { req, url } = built;
1216
+ const timeout = x509Authentication
1217
+ ? Math.min(built.timeout, x509Authentication.requestSnapshot().timeout)
1218
+ : built.timeout;
1219
+ x509Authentication?.bindRequest(options, req, this.adminAPIKey);
1220
+ let hasStreamingBody = options.__metadata?.['hasStreamingBody'] === true;
1221
+
1222
+ if (!x509Authentication) {
1223
+ await this.prepareRequest(req, { url, options });
1224
+ await this._provider?.prepareRequest?.(req, { url, options });
1225
+ }
1226
+ x509Authentication?.adoptRequestHeaders(req);
1227
+ if (x509Authentication && X509WorkloadIdentityAuth.isStreamingRequestBody(req.body)) {
1228
+ hasStreamingBody = true;
1229
+ }
777
1230
 
778
1231
  /** Not an API request ID, just for correlating local log entries. */
779
1232
  const requestLogID = 'log_' + ((Math.random() * (1 << 24)) | 0).toString(16).padStart(6, '0');
780
1233
  const retryLogStr = retryOfRequestLogID === undefined ? '' : `, retryOf: ${retryOfRequestLogID}`;
781
- const startTime = Date.now();
1234
+ const startTime = x509Authentication?.requestStartedAt(options) ?? Date.now();
782
1235
 
783
1236
  loggerFor(this).debug(
784
1237
  `[${requestLogID}] sending request`,
@@ -786,24 +1239,36 @@ export class OpenAI {
786
1239
  retryOfRequestLogID,
787
1240
  method: options.method,
788
1241
  url,
789
- options,
1242
+ options: x509Authentication ? { body: req.body, ...x509Authentication.requestSnapshot() } : options,
790
1243
  headers: req.headers,
791
1244
  }),
792
1245
  );
793
1246
 
794
- if (options.signal?.aborted) {
795
- throw new Errors.APIUserAbortError();
1247
+ const callerSignal = x509Authentication ? x509Authentication.requestSnapshot().signal : options.signal;
1248
+ if (callerSignal?.aborted || req.signal?.aborted) {
1249
+ throw this._makeUserAbortError(callerSignal?.aborted ? callerSignal : req.signal!);
796
1250
  }
797
-
798
1251
  const security = options.__security ?? { bearerAuth: true };
799
- const controller = new AbortController();
800
- const response = await this.fetchWithAuth(url, req, timeout, controller, security).catch(castToError);
1252
+ // Request hooks may replace the caller signal before it reaches fetch.
1253
+ const controller =
1254
+ x509Authentication || this.fetchWithTimeout === OpenAI.prototype.fetchWithTimeout
1255
+ ? createRequestController(
1256
+ req.signal ?? (x509Authentication ? callerSignal : undefined),
1257
+ x509Authentication ? callerSignal : undefined,
1258
+ )
1259
+ : new AbortController();
1260
+ const remainingTimeout = x509Authentication?.remainingTimeout(options, timeout) ?? timeout;
1261
+ const fetchWithAuth = x509Authentication ? OpenAI.prototype.fetchWithAuth : this.fetchWithAuth;
1262
+ x509Authentication?.releaseRequestBody(req.body);
1263
+ const response = await fetchWithAuth
1264
+ .call(this, url, req, remainingTimeout, controller, security)
1265
+ .catch(castToError);
801
1266
  const headersTime = Date.now();
802
1267
 
803
1268
  if (response instanceof globalThis.Error) {
804
1269
  const retryMessage = `retrying, ${retriesRemaining} attempts remaining`;
805
- if (options.signal?.aborted) {
806
- throw new Errors.APIUserAbortError();
1270
+ if (callerSignal?.aborted || req.signal?.aborted) {
1271
+ throw this._makeUserAbortError(callerSignal?.aborted ? callerSignal : req.signal!);
807
1272
  }
808
1273
  // detect native connection timeout errors
809
1274
  // deno throws "TypeError: error sending request for url (https://example/): client error (Connect): tcp connect error: Operation timed out (os error 60): Operation timed out (os error 60)"
@@ -812,7 +1277,11 @@ export class OpenAI {
812
1277
  const isTimeout =
813
1278
  isAbortError(response) ||
814
1279
  /timed? ?out/i.test(String(response) + ('cause' in response ? String(response.cause) : ''));
815
- if (retriesRemaining && !hasStreamingBody) {
1280
+ if (
1281
+ retriesRemaining &&
1282
+ !hasStreamingBody &&
1283
+ (!x509Authentication || isTransientX509ConnectionError(response))
1284
+ ) {
816
1285
  loggerFor(this).info(
817
1286
  `[${requestLogID}] connection ${isTimeout ? 'timed out' : 'failed'} - ${retryMessage}`,
818
1287
  );
@@ -822,13 +1291,14 @@ export class OpenAI {
822
1291
  retryOfRequestLogID,
823
1292
  url,
824
1293
  durationMs: headersTime - startTime,
825
- message: response.message,
1294
+ message: x509Authentication ? 'X.509 workload identity API connection failed.' : response.message,
826
1295
  }),
827
1296
  );
828
1297
  return this.retryRequest(options, retriesRemaining, retryOfRequestLogID ?? requestLogID);
829
1298
  }
830
- const terminalMessage =
831
- hasStreamingBody ? 'error; streaming body cannot be retried' : 'error; no more retries left';
1299
+ const terminalMessage = hasStreamingBody
1300
+ ? 'error; streaming body cannot be retried'
1301
+ : 'error; no more retries left';
832
1302
  loggerFor(this).info(
833
1303
  `[${requestLogID}] connection ${isTimeout ? 'timed out' : 'failed'} - ${terminalMessage}`,
834
1304
  );
@@ -838,14 +1308,33 @@ export class OpenAI {
838
1308
  retryOfRequestLogID,
839
1309
  url,
840
1310
  durationMs: headersTime - startTime,
841
- message: response.message,
1311
+ message: x509Authentication ? 'X.509 workload identity API connection failed.' : response.message,
842
1312
  }),
843
1313
  );
844
1314
  if (response instanceof OAuthError || response instanceof SubjectTokenProviderError) {
845
1315
  throw response;
846
1316
  }
847
1317
  if (isTimeout) {
848
- throw new Errors.APIConnectionTimeoutError();
1318
+ const transportCause = 'cause' in response ? response.cause : undefined;
1319
+ const isHeadersTimeout =
1320
+ typeof transportCause === 'object' &&
1321
+ transportCause !== null &&
1322
+ 'code' in transportCause &&
1323
+ transportCause.code === 'UND_ERR_HEADERS_TIMEOUT';
1324
+ const timeoutError = isHeadersTimeout
1325
+ ? new Errors.APIConnectionTimeoutError({
1326
+ message:
1327
+ 'Request timed out. Node.js fetch timed out waiting for response headers; ' +
1328
+ 'configure a matching undici fetch and fetchOptions.dispatcher with an Agent whose headersTimeout is at least the SDK timeout.',
1329
+ })
1330
+ : new Errors.APIConnectionTimeoutError();
1331
+ if (x509Authentication) {
1332
+ throw new Errors.APIConnectionTimeoutError();
1333
+ }
1334
+ throw Object.assign(timeoutError, { cause: response });
1335
+ }
1336
+ if (x509Authentication) {
1337
+ throw new Errors.APIConnectionError({ message: 'X.509 workload identity API connection failed.' });
849
1338
  }
850
1339
  throw new Errors.APIConnectionError({
851
1340
  message: getConnectionErrorMessage(response),
@@ -862,35 +1351,57 @@ export class OpenAI {
862
1351
  } with status ${response.status} in ${headersTime - startTime}ms`;
863
1352
 
864
1353
  if (!response.ok) {
1354
+ const rejectedX509Credential =
1355
+ response.status === 401 &&
1356
+ x509Authentication &&
1357
+ security.bearerAuth &&
1358
+ x509Authentication.usedWorkloadToken(options);
1359
+ if (rejectedX509Credential) {
1360
+ x509Authentication.invalidateToken();
1361
+ }
865
1362
  if (
866
1363
  response.status === 401 &&
867
- this._workloadIdentityAuth &&
1364
+ (x509Authentication || this._workloadIdentityAuth) &&
868
1365
  security.bearerAuth &&
869
- !options.__metadata?.['hasStreamingBody'] &&
1366
+ (!x509Authentication || x509Authentication.usedWorkloadToken(options)) &&
1367
+ (!x509Authentication || retriesRemaining > 0) &&
1368
+ !hasStreamingBody &&
870
1369
  !options.__metadata?.['workloadIdentityTokenRefreshed']
871
1370
  ) {
872
- await Shims.CancelReadableStream(response.body);
873
- this._workloadIdentityAuth.invalidateToken();
1371
+ if (x509Authentication) {
1372
+ void Shims.CancelReadableStream(response.body).catch(() => undefined);
1373
+ } else {
1374
+ await Shims.CancelReadableStream(response.body);
1375
+ this._workloadIdentityAuth?.invalidateToken();
1376
+ }
874
1377
 
875
- return this.makeRequest(
876
- {
877
- ...options,
878
- __metadata: {
879
- ...options.__metadata,
880
- workloadIdentityTokenRefreshed: true,
881
- },
1378
+ const replayOptions = {
1379
+ ...options,
1380
+ __metadata: {
1381
+ ...options.__metadata,
1382
+ workloadIdentityTokenRefreshed: true,
882
1383
  },
883
- retriesRemaining,
1384
+ };
1385
+ return this.makeRequest(
1386
+ replayOptions,
1387
+ x509Authentication ? retriesRemaining - 1 : retriesRemaining,
884
1388
  retryOfRequestLogID ?? requestLogID,
885
1389
  );
886
1390
  }
887
1391
 
888
- const shouldRetry = await this.shouldRetry(response);
1392
+ const shouldRetry =
1393
+ rejectedX509Credential && options.__metadata?.['workloadIdentityTokenRefreshed']
1394
+ ? false
1395
+ : await this.shouldRetry(response);
889
1396
  if (retriesRemaining && shouldRetry && !hasStreamingBody) {
890
1397
  const retryMessage = `retrying, ${retriesRemaining} attempts remaining`;
891
1398
 
892
1399
  // We don't need the body of this response.
893
- await Shims.CancelReadableStream(response.body);
1400
+ if (x509Authentication) {
1401
+ void Shims.CancelReadableStream(response.body).catch(() => undefined);
1402
+ } else {
1403
+ await Shims.CancelReadableStream(response.body);
1404
+ }
894
1405
  loggerFor(this).info(`${responseInfo} - ${retryMessage}`);
895
1406
  loggerFor(this).debug(
896
1407
  `[${requestLogID}] response error (${retryMessage})`,
@@ -910,15 +1421,17 @@ export class OpenAI {
910
1421
  );
911
1422
  }
912
1423
 
913
- const retryMessage =
914
- shouldRetry ?
915
- hasStreamingBody ? `error; streaming body cannot be retried`
1424
+ const retryMessage = shouldRetry
1425
+ ? hasStreamingBody
1426
+ ? `error; streaming body cannot be retried`
916
1427
  : `error; no more retries left`
917
1428
  : `error; not retryable`;
918
1429
 
919
1430
  loggerFor(this).info(`${responseInfo} - ${retryMessage}`);
920
1431
 
921
- const errText = await response.text().catch((err: any) => castToError(err).message);
1432
+ const errText = x509Authentication
1433
+ ? await this.readX509ResponseError(response, options, timeout, controller, x509Authentication)
1434
+ : await response.text().catch((err: any) => castToError(err).message);
922
1435
  const errJSON = safeJSON(errText) as any;
923
1436
  const errMessage = errJSON ? undefined : errText;
924
1437
 
@@ -950,6 +1463,16 @@ export class OpenAI {
950
1463
  }),
951
1464
  );
952
1465
 
1466
+ const continueRequest = x509Authentication?.continuation();
1467
+ x509Authentication?.releaseRequestCredentials();
1468
+ this.#responseAttempts.set(controller, {
1469
+ timeout,
1470
+ retriesRemaining,
1471
+ hasStreamingBody,
1472
+ ...(x509Authentication ? { authentication: x509Authentication } : {}),
1473
+ helperMethod: options.__metadata?.['helperMethod'],
1474
+ ...(continueRequest ? { continueRequest } : {}),
1475
+ });
953
1476
  return { response, options, controller, requestLogID, retryOfRequestLogID, startTime };
954
1477
  }
955
1478
 
@@ -960,9 +1483,9 @@ export class OpenAI {
960
1483
  ): Pagination.PagePromise<PageClass, Item> {
961
1484
  return this.requestAPIList(
962
1485
  Page,
963
- opts && 'then' in opts ?
964
- opts.then((opts) => ({ method: 'get', path, ...opts }))
965
- : { method: 'get', path, ...opts },
1486
+ opts && 'then' in opts
1487
+ ? opts.then((opts) => ({ method: 'get', path, ...opts }))
1488
+ : { method: 'get', path, ...opts },
966
1489
  );
967
1490
  }
968
1491
 
@@ -973,8 +1496,24 @@ export class OpenAI {
973
1496
  Page: new (...args: ConstructorParameters<typeof Pagination.AbstractPage>) => PageClass,
974
1497
  options: PromiseOrValue<FinalRequestOptions>,
975
1498
  ): Pagination.PagePromise<PageClass, Item> {
976
- const request = this.makeRequest(options, null, undefined);
977
- return new Pagination.PagePromise<PageClass, Item>(this as any as OpenAI, request, Page);
1499
+ const authentication = this.#x509Authentication ?? this._workloadIdentityAuth;
1500
+ const request =
1501
+ authentication instanceof X509WorkloadIdentityAuth
1502
+ ? Promise.resolve(options).then((resolved) =>
1503
+ authentication.runRequest(() => this.makeRequest(resolved, null, undefined), this),
1504
+ )
1505
+ : this.makeRequest(options, null, undefined);
1506
+ const page = new Pagination.PagePromise<PageClass, Item>(this as any as OpenAI, request, Page);
1507
+ const guarded = this.responsePromise<PageClass>(request, async (client, props) => {
1508
+ const body = await this.parseResponseWithTimeout(client, props);
1509
+ return new Page(client, props.response, body, props.options);
1510
+ });
1511
+ page.then = guarded.then.bind(guarded);
1512
+ page.catch = guarded.catch.bind(guarded);
1513
+ page.finally = guarded.finally.bind(guarded);
1514
+ page.withResponse = guarded.withResponse.bind(guarded);
1515
+ page._thenUnwrap = guarded._thenUnwrap.bind(guarded);
1516
+ return page;
978
1517
  }
979
1518
 
980
1519
  protected async fetchWithAuth(
@@ -987,7 +1526,7 @@ export class OpenAI {
987
1526
  adminAPIKeyAuth: true,
988
1527
  },
989
1528
  ): Promise<Response> {
990
- if (this._workloadIdentityAuth && schemes.bearerAuth) {
1529
+ if (this._workloadIdentityAuth && !this.#x509Fetch && schemes.bearerAuth) {
991
1530
  const headers = init.headers as Headers;
992
1531
  const authHeader = headers.get('Authorization');
993
1532
  if (!authHeader || authHeader === `Bearer ${WORKLOAD_IDENTITY_API_KEY_PLACEHOLDER}`) {
@@ -996,7 +1535,8 @@ export class OpenAI {
996
1535
  }
997
1536
  }
998
1537
 
999
- const response = await this.fetchWithTimeout(url, init, timeout, controller);
1538
+ const fetchWithTimeout = this.#x509Fetch ? OpenAI.prototype.fetchWithTimeout : this.fetchWithTimeout;
1539
+ const response = await fetchWithTimeout.call(this, url, init, timeout, controller);
1000
1540
 
1001
1541
  return response;
1002
1542
  }
@@ -1009,7 +1549,8 @@ export class OpenAI {
1009
1549
  ): Promise<Response> {
1010
1550
  const { signal, method, ...options } = init || {};
1011
1551
  const abort = this._makeAbort(controller);
1012
- if (signal) signal.addEventListener('abort', abort, { once: true });
1552
+ const composed = !!signal && composedCallerSignals.get(controller) === signal;
1553
+ if (signal && !composed) signal.addEventListener('abort', abort, { once: true });
1013
1554
 
1014
1555
  const timeout = setTimeout(abort, ms);
1015
1556
 
@@ -1031,7 +1572,10 @@ export class OpenAI {
1031
1572
 
1032
1573
  try {
1033
1574
  // use undefined this binding; fetch errors if bound to something else in browser/cloudflare
1034
- return await this.fetch.call(undefined, url, fetchOptions);
1575
+ return await (this.#x509Fetch ?? this.fetch).call(undefined, url, fetchOptions);
1576
+ } catch (err) {
1577
+ if (signal && !composed) signal.removeEventListener('abort', abort);
1578
+ throw err;
1035
1579
  } finally {
1036
1580
  clearTimeout(timeout);
1037
1581
  }
@@ -1079,7 +1623,7 @@ export class OpenAI {
1079
1623
 
1080
1624
  // About the Retry-After header: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Retry-After
1081
1625
  const retryAfterHeader = responseHeaders?.get('retry-after');
1082
- if (retryAfterHeader && !timeoutMillis) {
1626
+ if (retryAfterHeader && timeoutMillis === undefined) {
1083
1627
  const timeoutSeconds = parseFloat(retryAfterHeader);
1084
1628
  if (!Number.isNaN(timeoutSeconds)) {
1085
1629
  timeoutMillis = timeoutSeconds * 1000;
@@ -1090,11 +1634,30 @@ export class OpenAI {
1090
1634
 
1091
1635
  // If the API asks us to wait a certain amount of time, just do what it
1092
1636
  // says, but otherwise calculate a default
1093
- if (timeoutMillis === undefined) {
1637
+ if (
1638
+ timeoutMillis === undefined ||
1639
+ !Number.isFinite(timeoutMillis) ||
1640
+ timeoutMillis < 0 ||
1641
+ timeoutMillis > 60 * 1000
1642
+ ) {
1094
1643
  const maxRetries = options.maxRetries ?? this.maxRetries;
1095
1644
  timeoutMillis = this.calculateDefaultRetryTimeoutMillis(retriesRemaining, maxRetries);
1096
1645
  }
1097
- await sleep(timeoutMillis);
1646
+ const x509Authentication = this.#x509Authentication;
1647
+ if (x509Authentication) {
1648
+ const remaining = x509Authentication.remainingTimeout(
1649
+ options,
1650
+ x509Authentication.requestSnapshot().timeout,
1651
+ );
1652
+ if (timeoutMillis >= remaining) {
1653
+ throw new Errors.APIConnectionTimeoutError();
1654
+ }
1655
+ }
1656
+ if (x509Authentication) {
1657
+ await x509Authentication.waitForRetry(timeoutMillis, x509Authentication.effectiveSignal());
1658
+ } else {
1659
+ await sleep(timeoutMillis);
1660
+ }
1098
1661
 
1099
1662
  return this.makeRequest(options, retriesRemaining - 1, requestLogID);
1100
1663
  }
@@ -1118,12 +1681,46 @@ export class OpenAI {
1118
1681
  inputOptions: FinalRequestOptions,
1119
1682
  { retryCount = 0 }: { retryCount?: number } = {},
1120
1683
  ): Promise<{ req: FinalizedRequestInit; url: string; timeout: number }> {
1684
+ if (this.#x509Authentication && !this.#x509Authentication.inRequest(this)) {
1685
+ const authentication = this.#x509Authentication;
1686
+ return await authentication.runRequest(async () => {
1687
+ const built = await OpenAI.prototype.buildRequest.call(this, inputOptions, { retryCount });
1688
+ authentication.releaseRequestBody(built.req.body);
1689
+ return built;
1690
+ }, this);
1691
+ }
1121
1692
  const options = { ...inputOptions };
1693
+ const x509Authentication = this.#x509Authentication;
1694
+ const x509Tenant = x509Authentication?.snapshotTenant(this.organization, this.project);
1695
+ const x509Headers = x509Authentication?.snapshotHeaders(this._options.defaultHeaders, options.headers);
1696
+ if (x509Headers) {
1697
+ options.headers = x509Headers.requestHeaders;
1698
+ }
1699
+ const x509ClientFetchOptions = x509Authentication
1700
+ ? snapshotX509RequestOptions(this.fetchOptions)
1701
+ : undefined;
1702
+ const x509RequestFetchOptions = x509Authentication
1703
+ ? snapshotX509RequestOptions(options.fetchOptions)
1704
+ : undefined;
1122
1705
  const { method, path, query, defaultBaseURL } = options;
1123
1706
 
1124
1707
  const url = this.buildURL(path!, query as Record<string, unknown>, defaultBaseURL);
1125
- if ('timeout' in options) validatePositiveInteger('timeout', options.timeout);
1708
+ x509Authentication?.snapshotAPIURL(url);
1709
+ const explicitTimeout = 'timeout' in options;
1710
+ if (explicitTimeout) validatePositiveInteger('timeout', options.timeout);
1126
1711
  options.timeout = options.timeout ?? this.timeout;
1712
+ if (x509Authentication && x509RequestFetchOptions) {
1713
+ x509Authentication.snapshotRequest(options.signal, options.timeout, x509RequestFetchOptions);
1714
+ }
1715
+ if (x509Authentication) {
1716
+ const snapshot = x509Authentication.requestSnapshot();
1717
+ options.timeout = snapshot.timeout;
1718
+ if (snapshot.signal === undefined) {
1719
+ delete options.signal;
1720
+ } else {
1721
+ options.signal = snapshot.signal;
1722
+ }
1723
+ }
1127
1724
  const { bodyHeaders, body, isStreamingBody } = this.buildBody({ options });
1128
1725
 
1129
1726
  if (isStreamingBody) {
@@ -1131,9 +1728,18 @@ export class OpenAI {
1131
1728
  ...inputOptions.__metadata,
1132
1729
  hasStreamingBody: true,
1133
1730
  };
1731
+ x509Authentication?.ownRequestBody(body, options.body);
1134
1732
  }
1135
1733
 
1136
- const reqHeaders = await this.buildHeaders({ options: inputOptions, method, bodyHeaders, retryCount });
1734
+ const reqHeaders = await this.buildHeaders({
1735
+ options: inputOptions,
1736
+ method,
1737
+ bodyHeaders,
1738
+ retryCount,
1739
+ x509Headers,
1740
+ x509Timeout: explicitTimeout ? options.timeout : undefined,
1741
+ x509Tenant,
1742
+ });
1137
1743
 
1138
1744
  const req: FinalizedRequestInit = {
1139
1745
  method,
@@ -1142,8 +1748,8 @@ export class OpenAI {
1142
1748
  ...((globalThis as any).ReadableStream &&
1143
1749
  body instanceof (globalThis as any).ReadableStream && { duplex: 'half' }),
1144
1750
  ...(body && { body }),
1145
- ...((this.fetchOptions as any) ?? {}),
1146
- ...((options.fetchOptions as any) ?? {}),
1751
+ ...(((x509Authentication ? x509ClientFetchOptions : this.fetchOptions) as any) ?? {}),
1752
+ ...(((x509Authentication ? x509RequestFetchOptions : options.fetchOptions) as any) ?? {}),
1147
1753
  };
1148
1754
 
1149
1755
  return { req, url, timeout: options.timeout };
@@ -1154,11 +1760,17 @@ export class OpenAI {
1154
1760
  method,
1155
1761
  bodyHeaders,
1156
1762
  retryCount,
1763
+ x509Headers,
1764
+ x509Timeout,
1765
+ x509Tenant,
1157
1766
  }: {
1158
1767
  options: FinalRequestOptions;
1159
1768
  method: HTTPMethod;
1160
1769
  bodyHeaders: HeadersLike;
1161
1770
  retryCount: number;
1771
+ x509Headers?: { defaultHeaders: NullableHeaders; requestHeaders: NullableHeaders } | undefined;
1772
+ x509Timeout: number | undefined;
1773
+ x509Tenant?: { organization: string | null; project: string | null } | undefined;
1162
1774
  }): Promise<Headers> {
1163
1775
  let idempotencyHeaders: HeadersLike = {};
1164
1776
  if (this.idempotencyHeader && method !== 'get') {
@@ -1166,26 +1778,29 @@ export class OpenAI {
1166
1778
  idempotencyHeaders[this.idempotencyHeader] = options.idempotencyKey;
1167
1779
  }
1168
1780
 
1781
+ const helperMethod = options.__metadata?.['helperMethod'];
1782
+ const timeout = x509Headers ? x509Timeout : options.timeout;
1169
1783
  const headers = buildHeaders([
1170
1784
  idempotencyHeaders,
1171
1785
  {
1172
1786
  Accept: 'application/json',
1173
- 'User-Agent': this.getUserAgent(),
1787
+ ...(!isRunningInBrowserOrBrowserWorker() ? { 'User-Agent': this.getUserAgent() } : undefined),
1174
1788
  'X-Stainless-Retry-Count': String(retryCount),
1175
- ...(options.timeout ? { 'X-Stainless-Timeout': String(Math.trunc(options.timeout / 1000)) } : {}),
1789
+ ...(timeout ? { 'X-Stainless-Timeout': String(Math.trunc(timeout / 1000)) } : {}),
1176
1790
  ...getPlatformHeaders(),
1177
- 'OpenAI-Organization': this.organization,
1178
- 'OpenAI-Project': this.project,
1791
+ ...(typeof helperMethod === 'string' ? { 'X-Stainless-Helper-Method': helperMethod } : {}),
1792
+ 'OpenAI-Organization': x509Tenant ? x509Tenant.organization : this.organization,
1793
+ 'OpenAI-Project': x509Tenant ? x509Tenant.project : this.project,
1179
1794
  },
1180
- this._provider ? undefined : (
1181
- await this.authHeaders(options, options.__security ?? { bearerAuth: true })
1182
- ),
1183
- this._options.defaultHeaders,
1795
+ this._provider || this.#x509Authentication?.isPlanningRequest()
1796
+ ? undefined
1797
+ : await this.authHeaders(options, options.__security ?? { bearerAuth: true }),
1798
+ x509Headers?.defaultHeaders ?? this._options.defaultHeaders,
1184
1799
  bodyHeaders,
1185
- options.headers,
1800
+ x509Headers?.requestHeaders ?? options.headers,
1186
1801
  ]);
1187
1802
 
1188
- if (!this._provider) {
1803
+ if (!this._provider && !this.#x509Authentication?.isPlanningRequest()) {
1189
1804
  this.validateHeaders(headers, options.__security ?? { bearerAuth: true });
1190
1805
  }
1191
1806
 
@@ -1198,6 +1813,12 @@ export class OpenAI {
1198
1813
  return () => controller.abort();
1199
1814
  }
1200
1815
 
1816
+ private _makeUserAbortError(signal: NonNullable<RequestInit['signal']>): Errors.APIUserAbortError {
1817
+ const error = new Errors.APIUserAbortError();
1818
+ Object.defineProperty(error, 'cause', { value: signal.reason, writable: true, configurable: true });
1819
+ return error;
1820
+ }
1821
+
1201
1822
  private buildBody({ options }: { options: FinalRequestOptions }): {
1202
1823
  bodyHeaders: HeadersLike;
1203
1824
  body: BodyInit | undefined;
@@ -1345,6 +1966,9 @@ export class OpenAI {
1345
1966
  evals: API.Evals = new API.Evals(this);
1346
1967
  containers: API.Containers = new API.Containers(this);
1347
1968
  skills: API.Skills = new API.Skills(this);
1969
+ /**
1970
+ * @deprecated The Sora API is scheduled to permanently shut down on September 24, 2026.
1971
+ */
1348
1972
  videos: API.Videos = new API.Videos(this);
1349
1973
  }
1350
1974
 
@@ -1373,6 +1997,37 @@ OpenAI.Containers = Containers;
1373
1997
  OpenAI.Skills = Skills;
1374
1998
  OpenAI.Videos = Videos;
1375
1999
 
2000
+ const composedCallerSignals = new WeakMap<AbortController, AbortSignal>();
2001
+
2002
+ function createRequestController(
2003
+ callerSignal: AbortSignal | null | undefined,
2004
+ originalSignal?: AbortSignal | null,
2005
+ ): AbortController {
2006
+ const controller = new AbortController();
2007
+ if (!callerSignal) return controller;
2008
+
2009
+ const nativeAbortSignal = (globalThis as any).AbortSignal;
2010
+ if (typeof nativeAbortSignal?.any !== 'function' || !(callerSignal instanceof nativeAbortSignal)) {
2011
+ return controller;
2012
+ }
2013
+
2014
+ try {
2015
+ // Native composition keeps cancellation active after response headers without
2016
+ // retaining an abort listener on the caller's signal or changing its reason.
2017
+ const signals = [controller.signal, callerSignal];
2018
+ if (originalSignal && originalSignal !== callerSignal) {
2019
+ signals.push(originalSignal);
2020
+ }
2021
+ const composed = nativeAbortSignal.any(signals) as AbortSignal;
2022
+ Object.defineProperty(controller, 'signal', { value: composed, configurable: true });
2023
+ composedCallerSignals.set(controller, callerSignal);
2024
+ } catch {
2025
+ // Older or incompatible runtimes retain the existing listener-based fallback.
2026
+ }
2027
+
2028
+ return controller;
2029
+ }
2030
+
1376
2031
  function getConnectionErrorMessage(error: Error): string | undefined {
1377
2032
  if (isUndiciDispatcherVersionMismatchError(error)) {
1378
2033
  return `Connection error. This may be caused by passing an undici dispatcher, such as ProxyAgent, that is incompatible with the fetch implementation. If you are using undici's ProxyAgent, pass the fetch implementation from the same undici package: import { fetch, ProxyAgent } from 'undici'; new OpenAI({ fetch, fetchOptions: { dispatcher: new ProxyAgent(...) } });`;
@@ -1407,6 +2062,7 @@ function isUndiciDispatcherVersionMismatchError(error: unknown): boolean {
1407
2062
  }
1408
2063
 
1409
2064
  export declare namespace OpenAI {
2065
+ export { type DataResidency as DataResidency };
1410
2066
  export type RequestOptions = Opts.RequestOptions;
1411
2067
 
1412
2068
  export import Page = Pagination.Page;