@tai42/api-client 20.0.0 → 22.0.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 (401) hide show
  1. package/README.md +29 -0
  2. package/dist/agents.d.ts.map +1 -1
  3. package/dist/agents.js +6 -4
  4. package/dist/agents.js.map +1 -1
  5. package/dist/client/agents-client.d.ts.map +1 -1
  6. package/dist/client/agents-client.js +3 -2
  7. package/dist/client/agents-client.js.map +1 -1
  8. package/dist/client/auth-client.d.ts +129 -127
  9. package/dist/client/auth-client.d.ts.map +1 -1
  10. package/dist/client/auth-client.js +68 -28
  11. package/dist/client/auth-client.js.map +1 -1
  12. package/dist/client/backend-client.d.ts +14 -13
  13. package/dist/client/backend-client.d.ts.map +1 -1
  14. package/dist/client/backend-client.js +7 -3
  15. package/dist/client/backend-client.js.map +1 -1
  16. package/dist/client/backup-client.d.ts +45 -19
  17. package/dist/client/backup-client.d.ts.map +1 -1
  18. package/dist/client/backup-client.js +8 -3
  19. package/dist/client/backup-client.js.map +1 -1
  20. package/dist/client/capabilities-client.d.ts +20 -16
  21. package/dist/client/capabilities-client.d.ts.map +1 -1
  22. package/dist/client/capabilities-client.js +3 -2
  23. package/dist/client/capabilities-client.js.map +1 -1
  24. package/dist/client/channels-client.d.ts.map +1 -1
  25. package/dist/client/channels-client.js +2 -1
  26. package/dist/client/channels-client.js.map +1 -1
  27. package/dist/client/config-client.d.ts +44 -17
  28. package/dist/client/config-client.d.ts.map +1 -1
  29. package/dist/client/config-client.js +10 -4
  30. package/dist/client/config-client.js.map +1 -1
  31. package/dist/client/connectors-client.d.ts +270 -81
  32. package/dist/client/connectors-client.d.ts.map +1 -1
  33. package/dist/client/connectors-client.js +38 -10
  34. package/dist/client/connectors-client.js.map +1 -1
  35. package/dist/client/conversations-client.d.ts +440 -86
  36. package/dist/client/conversations-client.d.ts.map +1 -1
  37. package/dist/client/conversations-client.js +46 -17
  38. package/dist/client/conversations-client.js.map +1 -1
  39. package/dist/client/hooks-client.d.ts +3 -3
  40. package/dist/client/hooks-client.d.ts.map +1 -1
  41. package/dist/client/hooks-client.js +12 -7
  42. package/dist/client/hooks-client.js.map +1 -1
  43. package/dist/client/index.d.ts +2272 -914
  44. package/dist/client/index.d.ts.map +1 -1
  45. package/dist/client/index.js +10 -2
  46. package/dist/client/index.js.map +1 -1
  47. package/dist/client/interactions-client.d.ts +19 -14
  48. package/dist/client/interactions-client.d.ts.map +1 -1
  49. package/dist/client/interactions-client.js +21 -9
  50. package/dist/client/interactions-client.js.map +1 -1
  51. package/dist/client/login-client.d.ts +18 -17
  52. package/dist/client/login-client.d.ts.map +1 -1
  53. package/dist/client/login-client.js +8 -4
  54. package/dist/client/login-client.js.map +1 -1
  55. package/dist/client/manifest-client.d.ts +276 -105
  56. package/dist/client/manifest-client.d.ts.map +1 -1
  57. package/dist/client/manifest-client.js +22 -16
  58. package/dist/client/manifest-client.js.map +1 -1
  59. package/dist/client/marketplace-client.d.ts +181 -51
  60. package/dist/client/marketplace-client.d.ts.map +1 -1
  61. package/dist/client/marketplace-client.js +23 -12
  62. package/dist/client/marketplace-client.js.map +1 -1
  63. package/dist/client/mcp-config-schema-client.d.ts.map +1 -1
  64. package/dist/client/mcp-config-schema-client.js +2 -1
  65. package/dist/client/mcp-config-schema-client.js.map +1 -1
  66. package/dist/client/notifications-client.d.ts +43 -6
  67. package/dist/client/notifications-client.d.ts.map +1 -1
  68. package/dist/client/notifications-client.js +2 -1
  69. package/dist/client/notifications-client.js.map +1 -1
  70. package/dist/client/observability-client.d.ts +78 -38
  71. package/dist/client/observability-client.d.ts.map +1 -1
  72. package/dist/client/observability-client.js +29 -6
  73. package/dist/client/observability-client.js.map +1 -1
  74. package/dist/client/plugins-client.d.ts +8 -6
  75. package/dist/client/plugins-client.d.ts.map +1 -1
  76. package/dist/client/plugins-client.js +2 -1
  77. package/dist/client/plugins-client.js.map +1 -1
  78. package/dist/client/policy-client.d.ts +4 -4
  79. package/dist/client/policy-client.d.ts.map +1 -1
  80. package/dist/client/policy-client.js +11 -4
  81. package/dist/client/policy-client.js.map +1 -1
  82. package/dist/client/presets-client.d.ts +84 -39
  83. package/dist/client/presets-client.d.ts.map +1 -1
  84. package/dist/client/presets-client.js +25 -13
  85. package/dist/client/presets-client.js.map +1 -1
  86. package/dist/client/profiles-client.d.ts +40 -33
  87. package/dist/client/profiles-client.d.ts.map +1 -1
  88. package/dist/client/profiles-client.js +15 -10
  89. package/dist/client/profiles-client.js.map +1 -1
  90. package/dist/client/schedules-client.d.ts +21 -17
  91. package/dist/client/schedules-client.d.ts.map +1 -1
  92. package/dist/client/schedules-client.js +8 -5
  93. package/dist/client/schedules-client.js.map +1 -1
  94. package/dist/client/settings-schema-client.d.ts +1 -1
  95. package/dist/client/settings-schema-client.d.ts.map +1 -1
  96. package/dist/client/settings-schema-client.js +2 -1
  97. package/dist/client/settings-schema-client.js.map +1 -1
  98. package/dist/client/states-client.d.ts +215 -87
  99. package/dist/client/states-client.d.ts.map +1 -1
  100. package/dist/client/states-client.js +98 -37
  101. package/dist/client/states-client.js.map +1 -1
  102. package/dist/client/storage-client.d.ts +5 -5
  103. package/dist/client/storage-client.d.ts.map +1 -1
  104. package/dist/client/storage-client.js +24 -12
  105. package/dist/client/storage-client.js.map +1 -1
  106. package/dist/client/sub-mcp-client.d.ts +3 -1
  107. package/dist/client/sub-mcp-client.d.ts.map +1 -1
  108. package/dist/client/sub-mcp-client.js +9 -4
  109. package/dist/client/sub-mcp-client.js.map +1 -1
  110. package/dist/client/system-client.d.ts +2 -2
  111. package/dist/client/system-client.d.ts.map +1 -1
  112. package/dist/client/system-client.js +2 -1
  113. package/dist/client/system-client.js.map +1 -1
  114. package/dist/client/templates-client.d.ts +65 -6
  115. package/dist/client/templates-client.d.ts.map +1 -1
  116. package/dist/client/templates-client.js +25 -7
  117. package/dist/client/templates-client.js.map +1 -1
  118. package/dist/client/tool-extensions-client.d.ts +41 -16
  119. package/dist/client/tool-extensions-client.d.ts.map +1 -1
  120. package/dist/client/tool-extensions-client.js +6 -4
  121. package/dist/client/tool-extensions-client.js.map +1 -1
  122. package/dist/client/tool-meta-client.d.ts +8 -8
  123. package/dist/client/tool-meta-client.d.ts.map +1 -1
  124. package/dist/client/tool-meta-client.js +12 -8
  125. package/dist/client/tool-meta-client.js.map +1 -1
  126. package/dist/client/tools-client.d.ts +150 -23
  127. package/dist/client/tools-client.d.ts.map +1 -1
  128. package/dist/client/tools-client.js +8 -8
  129. package/dist/client/tools-client.js.map +1 -1
  130. package/dist/client/trigger-links-client.d.ts +11 -9
  131. package/dist/client/trigger-links-client.d.ts.map +1 -1
  132. package/dist/client/trigger-links-client.js +4 -4
  133. package/dist/client/trigger-links-client.js.map +1 -1
  134. package/dist/fleet-report.d.ts +21 -5
  135. package/dist/fleet-report.d.ts.map +1 -1
  136. package/dist/fleet-report.js +31 -6
  137. package/dist/fleet-report.js.map +1 -1
  138. package/dist/generated/api-routes.d.ts +1014 -0
  139. package/dist/generated/api-routes.d.ts.map +1 -0
  140. package/dist/generated/api-routes.js +322 -0
  141. package/dist/generated/api-routes.js.map +1 -0
  142. package/dist/generated/openapi-schemas.d.ts +12425 -0
  143. package/dist/generated/openapi-schemas.d.ts.map +1 -0
  144. package/dist/generated/openapi-schemas.js +671 -0
  145. package/dist/generated/openapi-schemas.js.map +1 -0
  146. package/dist/generated/served-schemas.d.ts +6698 -349
  147. package/dist/generated/served-schemas.d.ts.map +1 -1
  148. package/dist/generated/served-schemas.js +7062 -21
  149. package/dist/generated/served-schemas.js.map +1 -1
  150. package/dist/headers.d.ts +4 -0
  151. package/dist/headers.d.ts.map +1 -0
  152. package/dist/headers.js +4 -0
  153. package/dist/headers.js.map +1 -0
  154. package/dist/http.d.ts.map +1 -1
  155. package/dist/http.js +4 -3
  156. package/dist/http.js.map +1 -1
  157. package/dist/index.d.ts +7 -3
  158. package/dist/index.d.ts.map +1 -1
  159. package/dist/index.js +3 -0
  160. package/dist/index.js.map +1 -1
  161. package/dist/schemas/api-keys.d.ts +14 -12
  162. package/dist/schemas/api-keys.d.ts.map +1 -1
  163. package/dist/schemas/api-keys.js +9 -23
  164. package/dist/schemas/api-keys.js.map +1 -1
  165. package/dist/schemas/auth-routes.d.ts +34 -29
  166. package/dist/schemas/auth-routes.d.ts.map +1 -1
  167. package/dist/schemas/auth-routes.js +22 -27
  168. package/dist/schemas/auth-routes.js.map +1 -1
  169. package/dist/schemas/backup.d.ts +157 -36
  170. package/dist/schemas/backup.d.ts.map +1 -1
  171. package/dist/schemas/backup.js +27 -26
  172. package/dist/schemas/backup.js.map +1 -1
  173. package/dist/schemas/capabilities.d.ts +32 -22
  174. package/dist/schemas/capabilities.d.ts.map +1 -1
  175. package/dist/schemas/capabilities.js +15 -40
  176. package/dist/schemas/capabilities.js.map +1 -1
  177. package/dist/schemas/channels.d.ts +1 -1
  178. package/dist/schemas/channels.d.ts.map +1 -1
  179. package/dist/schemas/channels.js +2 -5
  180. package/dist/schemas/channels.js.map +1 -1
  181. package/dist/schemas/config.d.ts.map +1 -1
  182. package/dist/schemas/config.js +4 -6
  183. package/dist/schemas/config.js.map +1 -1
  184. package/dist/schemas/connectors.d.ts +381 -185
  185. package/dist/schemas/connectors.d.ts.map +1 -1
  186. package/dist/schemas/connectors.js +54 -101
  187. package/dist/schemas/connectors.js.map +1 -1
  188. package/dist/schemas/conversations.d.ts +977 -248
  189. package/dist/schemas/conversations.d.ts.map +1 -1
  190. package/dist/schemas/conversations.js +40 -134
  191. package/dist/schemas/conversations.js.map +1 -1
  192. package/dist/schemas/extensions.d.ts +9 -6
  193. package/dist/schemas/extensions.d.ts.map +1 -1
  194. package/dist/schemas/extensions.js +6 -4
  195. package/dist/schemas/extensions.js.map +1 -1
  196. package/dist/schemas/fleet.d.ts +153 -99
  197. package/dist/schemas/fleet.d.ts.map +1 -1
  198. package/dist/schemas/fleet.js +41 -51
  199. package/dist/schemas/fleet.js.map +1 -1
  200. package/dist/schemas/hooks.d.ts +34 -34
  201. package/dist/schemas/hooks.d.ts.map +1 -1
  202. package/dist/schemas/hooks.js +15 -34
  203. package/dist/schemas/hooks.js.map +1 -1
  204. package/dist/schemas/index.d.ts +0 -1
  205. package/dist/schemas/index.d.ts.map +1 -1
  206. package/dist/schemas/index.js +0 -1
  207. package/dist/schemas/index.js.map +1 -1
  208. package/dist/schemas/interactions.d.ts +400 -128
  209. package/dist/schemas/interactions.d.ts.map +1 -1
  210. package/dist/schemas/interactions.js +202 -131
  211. package/dist/schemas/interactions.js.map +1 -1
  212. package/dist/schemas/login.d.ts +36 -37
  213. package/dist/schemas/login.d.ts.map +1 -1
  214. package/dist/schemas/login.js +8 -42
  215. package/dist/schemas/login.js.map +1 -1
  216. package/dist/schemas/manifest-mcp.d.ts +61 -35
  217. package/dist/schemas/manifest-mcp.d.ts.map +1 -1
  218. package/dist/schemas/manifest-mcp.js +13 -19
  219. package/dist/schemas/manifest-mcp.js.map +1 -1
  220. package/dist/schemas/marketplace.d.ts +219 -133
  221. package/dist/schemas/marketplace.d.ts.map +1 -1
  222. package/dist/schemas/marketplace.js +35 -120
  223. package/dist/schemas/marketplace.js.map +1 -1
  224. package/dist/schemas/members.d.ts +59 -52
  225. package/dist/schemas/members.d.ts.map +1 -1
  226. package/dist/schemas/members.js +20 -52
  227. package/dist/schemas/members.js.map +1 -1
  228. package/dist/schemas/notifications.d.ts +115 -17
  229. package/dist/schemas/notifications.d.ts.map +1 -1
  230. package/dist/schemas/notifications.js +9 -35
  231. package/dist/schemas/notifications.js.map +1 -1
  232. package/dist/schemas/observability.d.ts +174 -72
  233. package/dist/schemas/observability.d.ts.map +1 -1
  234. package/dist/schemas/observability.js +23 -76
  235. package/dist/schemas/observability.js.map +1 -1
  236. package/dist/schemas/policy.d.ts +11 -11
  237. package/dist/schemas/policy.d.ts.map +1 -1
  238. package/dist/schemas/policy.js +5 -12
  239. package/dist/schemas/policy.js.map +1 -1
  240. package/dist/schemas/presets.d.ts +109 -64
  241. package/dist/schemas/presets.d.ts.map +1 -1
  242. package/dist/schemas/presets.js +12 -48
  243. package/dist/schemas/presets.js.map +1 -1
  244. package/dist/schemas/principals.d.ts +28 -21
  245. package/dist/schemas/principals.d.ts.map +1 -1
  246. package/dist/schemas/principals.js +13 -25
  247. package/dist/schemas/principals.js.map +1 -1
  248. package/dist/schemas/profiles.d.ts +75 -63
  249. package/dist/schemas/profiles.d.ts.map +1 -1
  250. package/dist/schemas/profiles.js +24 -54
  251. package/dist/schemas/profiles.js.map +1 -1
  252. package/dist/schemas/roles.d.ts +22 -22
  253. package/dist/schemas/roles.d.ts.map +1 -1
  254. package/dist/schemas/roles.js +10 -17
  255. package/dist/schemas/roles.js.map +1 -1
  256. package/dist/schemas/schedules.d.ts +21 -15
  257. package/dist/schemas/schedules.d.ts.map +1 -1
  258. package/dist/schemas/schedules.js +4 -13
  259. package/dist/schemas/schedules.js.map +1 -1
  260. package/dist/schemas/served.d.ts +6373 -181
  261. package/dist/schemas/served.d.ts.map +1 -1
  262. package/dist/schemas/served.js +21 -0
  263. package/dist/schemas/served.js.map +1 -1
  264. package/dist/schemas/settings-schema.d.ts +1 -1
  265. package/dist/schemas/settings-schema.d.ts.map +1 -1
  266. package/dist/schemas/settings-schema.js +17 -19
  267. package/dist/schemas/settings-schema.js.map +1 -1
  268. package/dist/schemas/setup.d.ts +6 -6
  269. package/dist/schemas/setup.d.ts.map +1 -1
  270. package/dist/schemas/setup.js +2 -11
  271. package/dist/schemas/setup.js.map +1 -1
  272. package/dist/schemas/states.d.ts +450 -135
  273. package/dist/schemas/states.d.ts.map +1 -1
  274. package/dist/schemas/states.js +76 -140
  275. package/dist/schemas/states.js.map +1 -1
  276. package/dist/schemas/storage.d.ts +7 -8
  277. package/dist/schemas/storage.d.ts.map +1 -1
  278. package/dist/schemas/storage.js +8 -17
  279. package/dist/schemas/storage.js.map +1 -1
  280. package/dist/schemas/studio-plugins.d.ts +24 -18
  281. package/dist/schemas/studio-plugins.d.ts.map +1 -1
  282. package/dist/schemas/studio-plugins.js +5 -19
  283. package/dist/schemas/studio-plugins.js.map +1 -1
  284. package/dist/schemas/sub-mcp.d.ts +11 -8
  285. package/dist/schemas/sub-mcp.d.ts.map +1 -1
  286. package/dist/schemas/sub-mcp.js +10 -19
  287. package/dist/schemas/sub-mcp.js.map +1 -1
  288. package/dist/schemas/system-kinds.d.ts +76 -46
  289. package/dist/schemas/system-kinds.d.ts.map +1 -1
  290. package/dist/schemas/system-kinds.js +11 -28
  291. package/dist/schemas/system-kinds.js.map +1 -1
  292. package/dist/schemas/templates.d.ts +83 -25
  293. package/dist/schemas/templates.d.ts.map +1 -1
  294. package/dist/schemas/templates.js +8 -9
  295. package/dist/schemas/templates.js.map +1 -1
  296. package/dist/schemas/tool-meta.d.ts +15 -15
  297. package/dist/schemas/tool-meta.d.ts.map +1 -1
  298. package/dist/schemas/tool-meta.js +6 -21
  299. package/dist/schemas/tool-meta.js.map +1 -1
  300. package/dist/schemas/tools.d.ts +177 -56
  301. package/dist/schemas/tools.d.ts.map +1 -1
  302. package/dist/schemas/tools.js +20 -41
  303. package/dist/schemas/tools.js.map +1 -1
  304. package/dist/schemas/trigger-links.d.ts +22 -17
  305. package/dist/schemas/trigger-links.d.ts.map +1 -1
  306. package/dist/schemas/trigger-links.js +7 -27
  307. package/dist/schemas/trigger-links.js.map +1 -1
  308. package/dist/tool-runs.d.ts +175 -54
  309. package/dist/tool-runs.d.ts.map +1 -1
  310. package/dist/tool-runs.js +33 -34
  311. package/dist/tool-runs.js.map +1 -1
  312. package/package.json +4 -3
  313. package/src/agents.ts +16 -4
  314. package/src/client/agents-client.ts +3 -2
  315. package/src/client/auth-client.ts +102 -37
  316. package/src/client/backend-client.ts +8 -3
  317. package/src/client/backup-client.ts +8 -3
  318. package/src/client/capabilities-client.ts +4 -2
  319. package/src/client/channels-client.ts +3 -1
  320. package/src/client/config-client.ts +13 -5
  321. package/src/client/connectors-client.ts +91 -16
  322. package/src/client/conversations-client.ts +79 -30
  323. package/src/client/hooks-client.ts +25 -12
  324. package/src/client/index.ts +16 -4
  325. package/src/client/interactions-client.ts +40 -16
  326. package/src/client/login-client.ts +8 -4
  327. package/src/client/manifest-client.ts +48 -24
  328. package/src/client/marketplace-client.ts +23 -12
  329. package/src/client/mcp-config-schema-client.ts +2 -1
  330. package/src/client/notifications-client.ts +2 -1
  331. package/src/client/observability-client.ts +60 -8
  332. package/src/client/plugins-client.ts +2 -1
  333. package/src/client/policy-client.ts +24 -9
  334. package/src/client/presets-client.ts +26 -13
  335. package/src/client/profiles-client.ts +53 -24
  336. package/src/client/schedules-client.ts +14 -20
  337. package/src/client/settings-schema-client.ts +2 -1
  338. package/src/client/states-client.ts +151 -49
  339. package/src/client/storage-client.ts +43 -14
  340. package/src/client/sub-mcp-client.ts +10 -4
  341. package/src/client/system-client.ts +2 -1
  342. package/src/client/templates-client.ts +26 -7
  343. package/src/client/tool-extensions-client.ts +14 -7
  344. package/src/client/tool-meta-client.ts +46 -21
  345. package/src/client/tools-client.ts +13 -8
  346. package/src/client/trigger-links-client.ts +10 -6
  347. package/src/fleet-report.ts +48 -7
  348. package/src/generated/api-routes.ts +327 -0
  349. package/src/generated/openapi-schemas.ts +1508 -0
  350. package/src/generated/served-schemas.ts +7120 -40
  351. package/src/headers.ts +4 -0
  352. package/src/http.ts +4 -3
  353. package/src/index.ts +54 -10
  354. package/src/schemas/api-keys.ts +9 -25
  355. package/src/schemas/auth-routes.ts +27 -28
  356. package/src/schemas/backup.ts +33 -31
  357. package/src/schemas/capabilities.ts +16 -39
  358. package/src/schemas/channels.ts +4 -4
  359. package/src/schemas/config.ts +6 -6
  360. package/src/schemas/connectors.ts +61 -102
  361. package/src/schemas/conversations.ts +43 -133
  362. package/src/schemas/extensions.ts +7 -4
  363. package/src/schemas/fleet.ts +51 -51
  364. package/src/schemas/hooks.ts +18 -37
  365. package/src/schemas/index.ts +0 -1
  366. package/src/schemas/interactions.ts +227 -131
  367. package/src/schemas/login.ts +10 -41
  368. package/src/schemas/manifest-mcp.ts +13 -19
  369. package/src/schemas/marketplace.ts +37 -120
  370. package/src/schemas/members.ts +21 -51
  371. package/src/schemas/notifications.ts +10 -34
  372. package/src/schemas/observability.ts +34 -79
  373. package/src/schemas/policy.ts +5 -12
  374. package/src/schemas/presets.ts +13 -48
  375. package/src/schemas/principals.ts +17 -24
  376. package/src/schemas/profiles.ts +25 -55
  377. package/src/schemas/roles.ts +11 -17
  378. package/src/schemas/schedules.ts +4 -15
  379. package/src/schemas/served.ts +33 -0
  380. package/src/schemas/settings-schema.ts +18 -23
  381. package/src/schemas/setup.ts +4 -10
  382. package/src/schemas/states.ts +88 -139
  383. package/src/schemas/storage.ts +10 -16
  384. package/src/schemas/studio-plugins.ts +8 -19
  385. package/src/schemas/sub-mcp.ts +12 -18
  386. package/src/schemas/system-kinds.ts +12 -29
  387. package/src/schemas/templates.ts +8 -10
  388. package/src/schemas/tool-meta.ts +8 -20
  389. package/src/schemas/tools.ts +22 -45
  390. package/src/schemas/trigger-links.ts +8 -26
  391. package/src/tool-runs.ts +47 -38
  392. package/dist/client/web-entry-gate-client.d.ts +0 -34
  393. package/dist/client/web-entry-gate-client.d.ts.map +0 -1
  394. package/dist/client/web-entry-gate-client.js +0 -25
  395. package/dist/client/web-entry-gate-client.js.map +0 -1
  396. package/dist/schemas/web-entry.d.ts +0 -45
  397. package/dist/schemas/web-entry.d.ts.map +0 -1
  398. package/dist/schemas/web-entry.js +0 -36
  399. package/dist/schemas/web-entry.js.map +0 -1
  400. package/src/client/web-entry-gate-client.ts +0 -45
  401. package/src/schemas/web-entry.ts +0 -46
package/src/headers.ts ADDED
@@ -0,0 +1,4 @@
1
+ /** The platform's request header names the browser sends. */
2
+
3
+ /** The platform's API-key header (contract `tai42_contract.access_control.API_KEY_HEADER`). */
4
+ export const API_KEY_HEADER = 'x-api-key';
package/src/http.ts CHANGED
@@ -10,6 +10,7 @@
10
10
  import type { z } from 'zod';
11
11
 
12
12
  import { ApiConflictError, ApiError, ApiSchemaError, ApiUnauthorizedError } from './errors';
13
+ import { API_KEY_HEADER } from './headers';
13
14
 
14
15
  /** Supplies the current API key (in-memory or sessionStorage-backed) + base URL. */
15
16
  export interface ApiConfig {
@@ -153,7 +154,7 @@ export async function apiRequest<S extends z.ZodType>(
153
154
  const doFetch = config.fetch ?? globalThis.fetch;
154
155
  const token = config.getToken();
155
156
  const headers: Record<string, string> = { ...JSON_HEADERS };
156
- if (token) headers['x-api-key'] = token;
157
+ if (token) headers[API_KEY_HEADER] = token;
157
158
 
158
159
  const response = await doFetch(buildUrl(config.baseUrl ?? '', path, options.query), {
159
160
  method: options.method ?? 'GET',
@@ -183,7 +184,7 @@ export async function apiText(
183
184
  const doFetch = config.fetch ?? globalThis.fetch;
184
185
  const token = config.getToken();
185
186
  const headers: Record<string, string> = {};
186
- if (token) headers['x-api-key'] = token;
187
+ if (token) headers[API_KEY_HEADER] = token;
187
188
 
188
189
  const response = await doFetch(buildUrl(config.baseUrl ?? '', path, options.query), {
189
190
  method: options.method ?? 'GET',
@@ -211,7 +212,7 @@ export async function apiDownload(
211
212
  const token = config.getToken();
212
213
  const headers: Record<string, string> = {};
213
214
  if (options.body !== undefined) Object.assign(headers, JSON_HEADERS);
214
- if (token) headers['x-api-key'] = token;
215
+ if (token) headers[API_KEY_HEADER] = token;
215
216
 
216
217
  const response = await doFetch(buildUrl(config.baseUrl ?? '', path, options.query), {
217
218
  method: options.method ?? 'GET',
package/src/index.ts CHANGED
@@ -8,6 +8,7 @@
8
8
  export type { AgentEvent, AgentSummary, ParsedAgentEvent, UnknownAgentEvent } from './agents';
9
9
  export { agentEventSchema, parseAgentFrame, parseAgentTranscript } from './agents';
10
10
  export type {
11
+ AddServerArgs,
11
12
  AddUrlToScopeBody,
12
13
  ApiClient,
13
14
  ApiKeyBody,
@@ -18,6 +19,7 @@ export type {
18
19
  ConversationThreadMessageBody,
19
20
  ConversationTranscriptQuery,
20
21
  CreatePresetBody,
22
+ DiscoverServerTarget,
21
23
  MarketplaceInstallBody,
22
24
  MarketplaceInstallPreviewBody,
23
25
  MarketplaceSearchQuery,
@@ -29,6 +31,7 @@ export type {
29
31
  RunsQuery,
30
32
  RunToolArgs,
31
33
  SavePresetVersionBody,
34
+ SetProviderClientArgs,
32
35
  StartConnectArgs,
33
36
  StateAttachmentBody,
34
37
  StateDeclarationBody,
@@ -42,7 +45,6 @@ export type {
42
45
  TriggerLinkCreateBody,
43
46
  ValidateConditionBody,
44
47
  ValidatePresetBody,
45
- WebEntryCodeMintBody,
46
48
  } from './client';
47
49
  export { createApiClient, isSafeApiPath } from './client';
48
50
  export {
@@ -58,6 +60,7 @@ export type {
58
60
  FleetFailureOutcome,
59
61
  FleetReportStatus,
60
62
  FleetReportSummary,
63
+ FleetWorkerAwaitingRespawn,
61
64
  FleetWorkerFailure,
62
65
  } from './fleet-report';
63
66
  export {
@@ -66,10 +69,16 @@ export {
66
69
  summarizeFleetFanout,
67
70
  summarizeFleetResult,
68
71
  } from './fleet-report';
72
+ export type { ApiOperationId, ApiPathPrefix, ApiPathTemplate } from './generated/api-routes';
73
+ export { apiPathPrefixes, apiRoutes, buildPath } from './generated/api-routes';
74
+ export { API_KEY_HEADER } from './headers';
69
75
  export type { ApiConfig, RequestOptions } from './http';
70
76
  export { apiDownload, apiRequest, apiText } from './http';
71
77
  export type {
72
78
  AnswerFormat,
79
+ AnswerPageWording,
80
+ AnswerWording,
81
+ ApiConversationRouteCreate,
73
82
  ApplyResult,
74
83
  AttachmentMediaItem,
75
84
  AttachmentMediaKind,
@@ -78,9 +87,12 @@ export type {
78
87
  BackendInfo,
79
88
  BackupDocument,
80
89
  BackupImportReport,
81
- CallerAsksEnvelope,
90
+ BackupNewApiKeys,
91
+ BackupSectionReport,
92
+ ChannelConversationRouteCreate,
82
93
  Channels,
83
94
  ChannelTemplate,
95
+ ChoiceWording,
84
96
  ClaimLinkCreated,
85
97
  CompletedOrigin,
86
98
  ConnectionView,
@@ -104,6 +116,7 @@ export type {
104
116
  ConversationRouteCreate,
105
117
  ConversationRouteDeleted,
106
118
  ConversationRoutes,
119
+ ConversationRouteView,
107
120
  ConversationRouteWritten,
108
121
  ConversationTargetKind,
109
122
  ConversationThread,
@@ -113,10 +126,13 @@ export type {
113
126
  ConversationThreadModeState,
114
127
  ConversationThreadsPage,
115
128
  ConversationTranscriptPage,
129
+ CountdownWording,
116
130
  DashboardMetrics,
131
+ DiscoveredServer,
117
132
  DisplayBlock,
118
133
  DisplayBlockKind,
119
134
  Extension,
135
+ FieldWording,
120
136
  FleetOutcome,
121
137
  FleetReloadResult,
122
138
  FleetReportFanout,
@@ -132,7 +148,10 @@ export type {
132
148
  FormPages,
133
149
  FormReactions,
134
150
  FormUpdate,
151
+ FormWording,
152
+ FreshLife,
135
153
  GrantLevel,
154
+ HeldPendingSave,
136
155
  HookList,
137
156
  HookParams,
138
157
  HookRegister,
@@ -141,10 +160,12 @@ export type {
141
160
  InteractionAnswered,
142
161
  InteractionCancelled,
143
162
  InteractionMediaItem,
163
+ InteractionReaction,
144
164
  InteractionsPage,
145
165
  InviteRow,
146
166
  InvokeMemberActionResult,
147
167
  KindStatus,
168
+ LineWording,
148
169
  LoginFormField,
149
170
  LoginMethod,
150
171
  LoginMethods,
@@ -192,9 +213,15 @@ export type {
192
213
  Notification,
193
214
  Notifications,
194
215
  OAuthCompleteResult,
216
+ ObservabilityCapabilities,
217
+ PageCopy,
195
218
  ParkedCallerAsk,
196
219
  ParkedStatus,
197
220
  PatternEntry,
221
+ PendingSave,
222
+ PendingSaveRetried,
223
+ PendingSavesPage,
224
+ PendingSaveStatus,
198
225
  PolicyBody,
199
226
  PolicyVersion,
200
227
  PresetBody,
@@ -206,14 +233,22 @@ export type {
206
233
  PresetValidation,
207
234
  PresetVersion,
208
235
  PresetVersionTags,
236
+ PreviousProfileName,
209
237
  Principal,
238
+ PrincipalKind,
210
239
  PrincipalRef,
211
240
  ProviderCatalogResponse,
241
+ ProviderMutationResult,
212
242
  ProviderView,
213
243
  ReactionEvent,
214
244
  ReactionEventKind,
215
245
  RecordSearchPage,
246
+ RecycleEntry,
247
+ RecycleRoll,
248
+ RecycleStop,
216
249
  ReloadConfigResult,
250
+ RemoveProviderResult,
251
+ ResolvedSpanValue,
217
252
  RoleAuditEvent,
218
253
  RoleBody,
219
254
  RoleGrants,
@@ -222,12 +257,20 @@ export type {
222
257
  RouteAction,
223
258
  RouteEntry,
224
259
  Run,
260
+ RunAnswer,
225
261
  RunSpan,
262
+ RunSpanOutline,
226
263
  RunTrace,
227
- ScheduleItem,
264
+ RunTraceOutline,
265
+ ScheduleCreate,
266
+ ScheduleListRow,
267
+ ScheduleRecord,
268
+ ServedConstants,
269
+ SettingsProfileName,
228
270
  SettingsSchema,
229
271
  SetupBody,
230
272
  SetupResult,
273
+ SpanKind,
231
274
  StateAttach,
232
275
  StateAttached,
233
276
  StateAttachment,
@@ -235,26 +278,30 @@ export type {
235
278
  StateBinding,
236
279
  StateConsumers,
237
280
  StateDeclaration,
281
+ StateDeclarationSaved,
238
282
  StateDetached,
239
283
  StateDetail,
240
284
  StateFoldReport,
241
285
  StateInjection,
242
286
  StateListItem,
243
287
  StateRecord,
288
+ StateRegimeRule,
244
289
  StateRetentionPruned,
245
290
  StateStats,
246
291
  StateSubject,
247
292
  StateTemplateDocument,
248
293
  StateTemplateListItem,
294
+ StateTemplateParameter,
295
+ StateTemplateTrace,
249
296
  StateUpdate,
297
+ StatusWording,
250
298
  StorageInfo,
251
299
  StorageResourceStat,
252
- StudioPluginManifest,
300
+ StudioPluginListingEntry,
253
301
  SubjectPage,
254
302
  SubjectRow,
255
303
  SubMcpEntry,
256
304
  SubMcpMount,
257
- SuspendedRunReceipt,
258
305
  TargetConversationConfig,
259
306
  TemplateDeclarations,
260
307
  TemplatedText,
@@ -278,17 +325,14 @@ export type {
278
325
  TriggerLinkRecord,
279
326
  ValidateConditionResult,
280
327
  VisitOutcome,
281
- WebEntryCode,
282
- WebEntryCodeMinted,
283
- WebEntryCodeRevoked,
284
- WebEntryGate,
285
- WebEntryGateState,
328
+ Wording,
286
329
  WorkerKind,
287
330
  WorkerLastOp,
288
331
  WorkerState,
289
332
  WriteEntry,
290
333
  WritesPage,
291
334
  } from './schemas';
335
+ export { runAnswer, servedConstants, servedDocumentsJson, servedVectors } from './schemas';
292
336
  export * as schemas from './schemas';
293
337
  export type { SseFrame } from './sse';
294
338
  export { readSseFrames, SseFrameParser } from './sse';
@@ -1,34 +1,18 @@
1
1
  /** API-key payload and mint/edit/revoke response schemas. */
2
2
  import { z } from 'zod';
3
3
 
4
- import { principalRef } from './principals';
5
- import { templatedText } from './served';
6
- import { jsonValue } from './shared';
4
+ import * as openapi from '../generated/openapi-schemas';
7
5
 
8
6
  /** The per-key payloads (`GET /api/auth/tokens-payload`). The stable per-mint
9
- * `key_fingerprint` is nested under `policy_data`; the picker reads it there. */
10
- export const tokensPayload = z.array(
11
- z.object({
12
- // The value an `execution_key` binding names.
13
- user_id: z.string().min(1),
14
- description: z.string(),
15
- scopes: z.array(z.string()),
16
- policy_data: jsonValue,
17
- condition: templatedText.nullable().optional(),
18
- // The key's OWNER principal (kind + display name); `null` for a key whose
19
- // principal row is absent (an orphaned restore state).
20
- principal: principalRef.nullable().optional(),
21
- // `true` for a key whose owning principal row is gone (an orphaned key that a
22
- // backup restore left without its principal).
23
- orphaned: z.boolean().optional(),
24
- }),
25
- );
7
+ * `key_fingerprint` is nested under `policy_data`; the picker reads it there. `principal`
8
+ * is the key's OWNER (`null` for a key whose principal row is absent), `orphaned` is `true`
9
+ * for a key whose owning principal row is gone. */
10
+ export const tokensPayload = openapi.tokenPayloadList;
26
11
  export type TokensPayload = z.infer<typeof tokensPayload>;
27
12
 
13
+ // Hand-written: the client narrows the mint reply to the raw key it shows once.
28
14
  /** Mint reply `{ api_key, key_fingerprint }` narrowed to the raw `sk-…` key,
29
15
  * returned once at creation and never again. */
30
- export const createdApiKey = z
31
- .object({ api_key: z.string(), key_fingerprint: z.string() })
32
- .transform((minted) => minted.api_key);
33
- export const editApiKeyResult = z.object({ user_id: z.string(), updated: z.boolean() });
34
- export const revokeApiKeyResult = z.object({ user_id: z.string(), revoked: z.boolean() });
16
+ export const createdApiKey = openapi.apiKeyCreateResult.transform((minted) => minted.api_key);
17
+ export const editApiKeyResult = openapi.userUpdateAck;
18
+ export const revokeApiKeyResult = openapi.revokeAck;
@@ -1,22 +1,14 @@
1
1
  /** Route catalog, scope mapping and public-route response schemas. */
2
- import { z } from 'zod';
2
+ import type { z } from 'zod';
3
3
 
4
- /** `{ url: scope_id }` — every URL currently mapped to a scope. */
5
- export const authScopes = z.record(z.string(), z.string());
4
+ import * as openapi from '../generated/openapi-schemas';
6
5
 
7
- export const addUrlToScopeResult = z.object({ scope_id: z.string(), url: z.string() });
8
- export const removeUrlFromScopeResult = z.object({ url: z.string() });
9
- export const removeScopeResult = z.object({ scope_id: z.string(), deleted_keys: z.number() });
6
+ /** `{ url: scope_id }` — every URL currently mapped to a scope. */
7
+ export const authScopes = openapi.scopeUrlMap;
10
8
 
11
- /**
12
- * A route's authorization ACTION class, joined onto the catalog from the route
13
- * registry. `read`/`write` routes are GRANTABLE — a role's per-tag level opens
14
- * them; `fenced`/`secret` routes are ADMIN-ONLY and never grantable (no per-tag
15
- * level reaches them). `null` marks a path the registry carries no metadata for
16
- * (an unregistered/ungated path — no feature tags, no action).
17
- */
18
- export const routeAction = z.enum(['read', 'write', 'fenced', 'secret']);
19
- export type RouteAction = z.infer<typeof routeAction>;
9
+ export const addUrlToScopeResult = openapi.scopeUrlAck;
10
+ export const removeUrlFromScopeResult = openapi.urlAck;
11
+ export const removeScopeResult = openapi.scopeDeleteResult;
20
12
 
21
13
  /**
22
14
  * One row of the route catalog (`GET /api/auth/routes`) — a plain HTTP route with
@@ -27,22 +19,29 @@ export type RouteAction = z.infer<typeof routeAction>;
27
19
  * description, and `action` its authorization class — the join fields the Roles
28
20
  * grant editor reads to derive grantable feature groups and mark the admin-only
29
21
  * (fenced/secret) routes it must never offer a grant for. An unregistered path
30
- * carries `tags: []`, `summary: ''`, `action: null`.
22
+ * carries `tags: []`, `summary: ''`, `action: null`. `declared_public` is `true` for
23
+ * a route its registration declares public: it is served without authentication
24
+ * and no scope mapping or public pin changes that, so the mapper never offers it
25
+ * for a scope.
31
26
  */
32
- export const authRoute = z.object({
33
- path: z.string(),
34
- methods: z.array(z.string()),
35
- mapped: z.string().nullable(),
36
- tags: z.array(z.string()),
37
- summary: z.string(),
38
- action: routeAction.nullable(),
39
- });
27
+ export const authRoute = openapi.routeMappingRow;
40
28
  export type AuthRoute = z.infer<typeof authRoute>;
41
- export const authRoutes = z.array(authRoute);
29
+ export const authRoutes = openapi.routeMappingList;
30
+
31
+ /**
32
+ * A route's authorization ACTION class, joined onto the catalog from the route
33
+ * registry. `read`/`write` routes are GRANTABLE — a role's per-tag level opens
34
+ * them; `fenced`/`secret` routes are ADMIN-ONLY and never grantable (no per-tag
35
+ * level reaches them). `null` on a row marks a path the registry carries no metadata
36
+ * for (an unregistered/ungated path — no feature tags, no action).
37
+ */
38
+ export const routeAction = openapi.routeMappingRow.shape.action.unwrap();
39
+ export type RouteAction = z.infer<typeof routeAction>;
40
+
42
41
  /** `GET /api/auth/public-routes` — the sorted urls pinned to the public marker. */
43
- export const publicRoutes = z.array(z.string());
42
+ export const publicRoutes = openapi.stringList;
44
43
 
45
44
  /** `POST /api/auth/public-routes` — the pinned url. */
46
- export const pinPublicResult = z.object({ url: z.string() });
45
+ export const pinPublicResult = openapi.urlAck;
47
46
  /** `DELETE /api/auth/public-routes` — the unpinned url (404 when not pinned). */
48
- export const unpinPublicResult = z.object({ url: z.string() });
47
+ export const unpinPublicResult = openapi.urlAck;
@@ -1,43 +1,45 @@
1
1
  /** Backup section, document and import-report response schemas. */
2
2
  import { z } from 'zod';
3
3
 
4
+ import * as openapi from '../generated/openapi-schemas';
4
5
  import { fleetReportFanout } from './fleet';
5
6
 
6
- export const backupSections = z.array(z.object({ name: z.string(), secret: z.boolean() }));
7
+ export const backupSections = openapi.backupSectionListing;
7
8
 
8
- /** The exported backup document — validated when the UI reads a picked file. */
9
- export const backupDocument = z.object({
9
+ /**
10
+ * A backup document as the import door accepts it — validated when the UI reads a picked
11
+ * file. Hand-written over the export's document: the import door takes `version` 1 and a
12
+ * `sections` object, and the export's `errors` map is optional there.
13
+ */
14
+ export const backupDocument = openapi.backupExportDocument.extend({
10
15
  version: z.literal(1),
11
- created_at: z.string(),
12
- sections: z.record(z.string(), z.unknown()),
13
- errors: z.record(z.string(), z.string()).optional(),
16
+ errors: openapi.backupExportDocument.shape.errors.optional(),
14
17
  });
15
18
  export type BackupDocument = z.infer<typeof backupDocument>;
16
19
 
17
- export const backupImportReport = z.object({
18
- ok: z.boolean(),
19
- sections: z.record(
20
- z.string(),
21
- z.object({
22
- created: z.number(),
23
- updated: z.number(),
24
- skipped: z.number(),
25
- errors: z.array(z.string()),
26
- new_api_keys: z
27
- .array(
28
- z.object({
29
- user_id: z.string(),
30
- description: z.string(),
31
- api_key: z.string(),
32
- }),
33
- )
34
- .optional(),
35
- // The `manifest` and `env` sections apply through the config pipeline, so their
36
- // report carries the mode-wrapped fleet `fanout` of the restore's reload; other
37
- // sections omit it. Parsed EXPLICITLY so the shared fleet-report handler can
38
- // surface a failed restore propagation — otherwise zod would strip it silently.
39
- fanout: fleetReportFanout.optional(),
40
- }),
41
- ),
20
+ // Hand-written: the spec publishes a section's fan-out as one object with optional fields
21
+ // and its `details` as an open map; the client discriminates the fan-out's modes and reads
22
+ // the keys a restore minted.
23
+ /** The api keys a restore minted, shown once: carried in a section report's `details`. */
24
+ export const backupNewApiKeys = z.array(
25
+ z.object({ user_id: z.string(), description: z.string(), api_key: z.string() }),
26
+ );
27
+ export type BackupNewApiKeys = z.infer<typeof backupNewApiKeys>;
28
+
29
+ export const backupSectionReport = openapi.backupSectionReport.extend({
30
+ // The `manifest` and `env` sections apply through the config pipeline, so their
31
+ // report carries the mode-wrapped fleet `fanout` of the restore's reload; other
32
+ // sections carry `null`. Parsed EXPLICITLY so the shared fleet-report handler can
33
+ // surface a failed restore propagation.
34
+ fanout: fleetReportFanout.nullable().default(null),
35
+ details: z
36
+ .object({ new_api_keys: backupNewApiKeys.optional() })
37
+ .catchall(z.unknown())
38
+ .default({}),
39
+ });
40
+ export type BackupSectionReport = z.infer<typeof backupSectionReport>;
41
+
42
+ export const backupImportReport = openapi.backupImportResult.extend({
43
+ sections: z.record(z.string(), backupSectionReport),
42
44
  });
43
45
  export type BackupImportReport = z.infer<typeof backupImportReport>;
@@ -1,32 +1,27 @@
1
1
  /** Caller capability projection and auth-capabilities schemas. */
2
- import { z } from 'zod';
2
+ import type { z } from 'zod';
3
3
 
4
- import { principalRef } from './principals';
5
- import { subMcpMount } from './sub-mcp';
4
+ import * as openapi from '../generated/openapi-schemas';
6
5
 
7
6
  /** A concrete route the caller can reach, with the methods that pass its jq fence. */
8
- export const routeEntry = z.object({
9
- path: z.string(),
10
- methods: z.array(z.string()),
11
- });
7
+ export const routeEntry = openapi.routeEntry;
12
8
  export type RouteEntry = z.infer<typeof routeEntry>;
13
9
 
14
10
  /**
15
11
  * A dynamic route pattern the caller can reach — a mount/pattern surface not
16
12
  * enumerable into concrete paths, projected only when its scope AND jq admit it.
13
+ * `open_prefix` is the literal path prefix the pattern opens, or `null` when the pattern
14
+ * opens none a prefix test can read.
17
15
  */
18
- export const patternEntry = z.object({
19
- pattern: z.string(),
20
- scope_id: z.string(),
21
- });
16
+ export const patternEntry = openapi.patternEntry;
22
17
  export type PatternEntry = z.infer<typeof patternEntry>;
23
18
 
24
19
  /**
25
- * A sub-MCP mount the caller can reach, with the tools it exposes and its
26
- * transport. Shares the {@link subMcpMount} shape with the registry list, adding
27
- * the `slug` the projection carries inline (the list keys mounts by slug instead).
20
+ * A sub-MCP mount the caller can reach, with the tools it exposes, its transport and
21
+ * its served mount URL and access pattern, and the `slug` the projection carries inline
22
+ * (the registry list keys mounts by slug instead).
28
23
  */
29
- export const subMcpEntry = subMcpMount.extend({ slug: z.string() });
24
+ export const subMcpEntry = openapi.subMcpEntry;
30
25
  export type SubMcpEntry = z.infer<typeof subMcpEntry>;
31
26
 
32
27
  /**
@@ -37,23 +32,12 @@ export type SubMcpEntry = z.infer<typeof subMcpEntry>;
37
32
  * session carries `admin: false` and a jq-exact `routes` list. `owner_user_id` is
38
33
  * the key's owner claim, `null` for a key with no owner claim. `principal` is the
39
34
  * caller's principal (kind + display name), `null` when no principal row backs the
40
- * credential. The invariant is projection ⊆ gate: every projected surface is one
35
+ * credential. `public_resource_id` is the deployment's reserved public marker (the
36
+ * route-table id a public route maps to — never a scope). The invariant is projection ⊆ gate: every projected surface is one
41
37
  * the server would admit, so the UI can filter on it without ever advertising a
42
38
  * door the gate denies.
43
39
  */
44
- export const meProjection = z.object({
45
- user_id: z.string(),
46
- owner_user_id: z.string().nullable(),
47
- principal: principalRef.nullable().optional(),
48
- admin: z.boolean(),
49
- scopes: z.array(z.string()),
50
- routes: z.array(routeEntry),
51
- route_patterns: z.array(patternEntry),
52
- sub_mcp: z.array(subMcpEntry),
53
- tools: z.array(z.string()),
54
- agents: z.array(z.string()),
55
- mintable: z.boolean(),
56
- });
40
+ export const meProjection = openapi.projectionResult;
57
41
  export type MeProjection = z.infer<typeof meProjection>;
58
42
 
59
43
  /**
@@ -62,11 +46,7 @@ export type MeProjection = z.infer<typeof meProjection>;
62
46
  * absolute URL — the Studio composes the origin); `token` is the raw claim token
63
47
  * returned exactly ONCE; `expires_at` is an ISO-8601 instant.
64
48
  */
65
- export const claimLinkCreated = z.object({
66
- claim_path: z.string(),
67
- token: z.string(),
68
- expires_at: z.string(),
69
- });
49
+ export const claimLinkCreated = openapi.claimLinkResult;
70
50
  export type ClaimLinkCreated = z.infer<typeof claimLinkCreated>;
71
51
 
72
52
  /**
@@ -76,7 +56,7 @@ export type ClaimLinkCreated = z.infer<typeof claimLinkCreated>;
76
56
  * `revoked: false` body. Non-strict, so a SUCCESSFUL logout never throws
77
57
  * `ApiSchemaError` on an additive field.
78
58
  */
79
- export const logoutResult = z.object({ revoked: z.boolean() });
59
+ export const logoutResult = openapi.logoutResult;
80
60
  export type LogoutResult = z.infer<typeof logoutResult>;
81
61
 
82
62
  /**
@@ -85,8 +65,5 @@ export type LogoutResult = z.infer<typeof logoutResult>;
85
65
  * validator-only (keys are issued at an external issuer), so the key-creation
86
66
  * UI disables up front instead of surfacing a raw mint failure. Non-strict.
87
67
  */
88
- export const authCapabilities = z.object({
89
- mintable: z.boolean(),
90
- providers: z.array(z.object({ name: z.string(), mintable: z.boolean() })),
91
- });
68
+ export const authCapabilities = openapi.mintCapabilities;
92
69
  export type AuthCapabilities = z.infer<typeof authCapabilities>;
@@ -1,11 +1,11 @@
1
1
  /** Installed channel-plugin catalog response schema. */
2
- import { z } from 'zod';
2
+ import type { z } from 'zod';
3
+
4
+ import * as openapi from '../generated/openapi-schemas';
3
5
 
4
6
  // The installed channel-plugin catalog: names registered via the manifest's
5
7
  // channel modules. A deployment with none bound answers questions only in this
6
8
  // inbox (the Studio default).
7
9
 
8
- export const channels = z.object({
9
- channels: z.array(z.string()),
10
- });
10
+ export const channels = openapi.channelListing;
11
11
  export type Channels = z.infer<typeof channels>;
@@ -1,10 +1,11 @@
1
1
  /** Environment-config and config-mode response schemas. */
2
2
  import { z } from 'zod';
3
3
 
4
- export const envConfig = z.object({
5
- env: z.record(z.string(), z.string()),
6
- secret_keys: z.array(z.string()),
7
- });
4
+ import * as openapi from '../generated/openapi-schemas';
5
+
6
+ export const envConfig = openapi.envView;
7
+
8
+ // `read_only` is hand-written: a UI-side gate the server does not publish.
8
9
  /**
9
10
  * `GET /api/config/mode` — the active config backend mode: `file`, or an installed
10
11
  * provider's mode name such as `kubernetes`. The skeleton emits only `config_mode`;
@@ -12,7 +13,6 @@ export const envConfig = z.object({
12
13
  * so a normal response never drifts, while a genuinely read-only deployment can opt in
13
14
  * by emitting `read_only: true`.
14
15
  */
15
- export const configMode = z.object({
16
- config_mode: z.string(),
16
+ export const configMode = openapi.configModeView.extend({
17
17
  read_only: z.boolean().default(false),
18
18
  });