@composio/client 2.0.0-rc.11 → 2.0.0-rc.12

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 (500) hide show
  1. package/README.md +336 -4
  2. package/dist/{api-key-revocation-Dh-KSokR.mjs → api-key-revocation-DJF8KL2o.mjs} +1 -1
  3. package/dist/{auth-Drov-jN8.mjs → auth-CHlaMfu-.mjs} +1 -1
  4. package/dist/{auth-configs-yM05-r6r.mjs → auth-configs-sKOQG2Yw.mjs} +1 -1
  5. package/dist/{clanker-BYmc69WC.mjs → clanker-DyM265dK.mjs} +1 -1
  6. package/dist/{cli-Ce8RT7yp.mjs → cli-zrk9Qew1.mjs} +2 -2
  7. package/dist/{connected-accounts-D__sOoNZ.mjs → connected-accounts-a6ezLeaq.mjs} +1 -1
  8. package/dist/{consumer-DTh50Hih.mjs → consumer-B0qaosDp.mjs} +2 -2
  9. package/dist/{custom-CdC-6Y_i.mjs → custom-99mj4dPN.mjs} +1 -1
  10. package/dist/{custom-nlGufiDz.mjs → custom-Ddfc8mtR.mjs} +1 -1
  11. package/dist/effect/schemas/api-key-revocation/create.d.mts +8 -0
  12. package/dist/effect/schemas/api-key-revocation/create.mjs +8 -0
  13. package/dist/effect/schemas/auth/session/retrieve-info.d.mts +56 -0
  14. package/dist/effect/schemas/auth/session/retrieve-info.mjs +174 -0
  15. package/dist/effect/schemas/auth-configs/create.d.mts +16 -0
  16. package/dist/effect/schemas/auth-configs/create.mjs +22 -0
  17. package/dist/effect/schemas/auth-configs/delete.d.mts +10 -0
  18. package/dist/effect/schemas/auth-configs/delete.mjs +15 -0
  19. package/dist/effect/schemas/auth-configs/list.d.mts +54 -0
  20. package/dist/effect/schemas/auth-configs/list.mjs +66 -0
  21. package/dist/effect/schemas/auth-configs/retrieve.d.mts +48 -0
  22. package/dist/effect/schemas/auth-configs/retrieve.mjs +60 -0
  23. package/dist/effect/schemas/auth-configs/update-status.d.mts +9 -0
  24. package/dist/effect/schemas/auth-configs/update-status.mjs +11 -0
  25. package/dist/effect/schemas/auth-configs/update.d.mts +9 -0
  26. package/dist/effect/schemas/auth-configs/update.mjs +11 -0
  27. package/dist/effect/schemas/cli/create-codact-failure.d.mts +9 -0
  28. package/dist/effect/schemas/cli/create-codact-failure.mjs +17 -0
  29. package/dist/effect/schemas/cli/create-session.d.mts +12 -0
  30. package/dist/effect/schemas/cli/create-session.mjs +26 -0
  31. package/dist/effect/schemas/cli/get-session.d.mts +18 -0
  32. package/dist/effect/schemas/cli/get-session.mjs +48 -0
  33. package/dist/effect/schemas/cli/realtime/auth.d.mts +9 -0
  34. package/dist/effect/schemas/cli/realtime/auth.mjs +11 -0
  35. package/dist/effect/schemas/cli/realtime/credentials.d.mts +10 -0
  36. package/dist/effect/schemas/cli/realtime/credentials.mjs +12 -0
  37. package/dist/effect/schemas/components/auth-config-retrieve-response-expected-input-fields.d.mts +17 -0
  38. package/dist/effect/schemas/components/auth-config-retrieve-response-expected-input-fields.mjs +22 -0
  39. package/dist/effect/schemas/components/auth-config-retrieve-response-tool-access-config.d.mts +9 -0
  40. package/dist/effect/schemas/components/auth-config-retrieve-response-tool-access-config.mjs +20 -0
  41. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option1-val-option1.d.mts +31 -0
  42. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option1-val-option1.mjs +33 -0
  43. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option1-val-option4.d.mts +33 -0
  44. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option1-val-option4.mjs +35 -0
  45. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option1-val-option5.d.mts +32 -0
  46. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option1-val-option5.mjs +34 -0
  47. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option1.d.mts +179 -0
  48. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option1.mjs +113 -0
  49. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option10.d.mts +168 -0
  50. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option10.mjs +104 -0
  51. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option11.d.mts +140 -0
  52. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option11.mjs +76 -0
  53. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option12.d.mts +162 -0
  54. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option12.mjs +12 -0
  55. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option13.d.mts +202 -0
  56. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option13.mjs +130 -0
  57. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option14.d.mts +193 -0
  58. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option14.mjs +211 -0
  59. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option15.d.mts +176 -0
  60. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option15.mjs +86 -0
  61. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option2-val-option1.d.mts +33 -0
  62. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option2-val-option1.mjs +35 -0
  63. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option2-val-option5.d.mts +35 -0
  64. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option2-val-option5.mjs +37 -0
  65. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option2-val-option6.d.mts +34 -0
  66. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option2-val-option6.mjs +36 -0
  67. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option2.d.mts +231 -0
  68. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option2.mjs +160 -0
  69. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option3-val-option2.d.mts +31 -0
  70. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option3-val-option2.mjs +33 -0
  71. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option3-val-option6.d.mts +31 -0
  72. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option3-val-option6.mjs +33 -0
  73. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option3.d.mts +171 -0
  74. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option3.mjs +108 -0
  75. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option4.d.mts +139 -0
  76. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option4.mjs +74 -0
  77. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option5.d.mts +136 -0
  78. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option5.mjs +72 -0
  79. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option6.d.mts +139 -0
  80. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option6.mjs +98 -0
  81. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option7-val.d.mts +159 -0
  82. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option7-val.mjs +69 -0
  83. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option7.d.mts +162 -0
  84. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option7.mjs +12 -0
  85. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option8.d.mts +162 -0
  86. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option8.mjs +12 -0
  87. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option9.d.mts +167 -0
  88. package/dist/effect/schemas/components/connected-account-create-response-connection-data-option9.mjs +101 -0
  89. package/dist/effect/schemas/components/connected-account-retrieve-response-state.d.mts +2443 -0
  90. package/dist/effect/schemas/components/connected-account-retrieve-response-state.mjs +42 -0
  91. package/dist/effect/schemas/components/deprecated-toolkit-info.d.mts +8 -0
  92. package/dist/effect/schemas/components/deprecated-toolkit-info.mjs +12 -0
  93. package/dist/effect/schemas/components/execute-completed.d.mts +16 -0
  94. package/dist/effect/schemas/components/execute-completed.mjs +27 -0
  95. package/dist/effect/schemas/components/execute-failed.d.mts +16 -0
  96. package/dist/effect/schemas/components/execute-failed.mjs +27 -0
  97. package/dist/effect/schemas/components/execute-requires-user-input.d.mts +15 -0
  98. package/dist/effect/schemas/components/execute-requires-user-input.mjs +16 -0
  99. package/dist/effect/schemas/components/instant-account.d.mts +12 -0
  100. package/dist/effect/schemas/components/instant-account.mjs +15 -0
  101. package/dist/effect/schemas/components/mcp-create-response-commands.d.mts +10 -0
  102. package/dist/effect/schemas/components/mcp-create-response-commands.mjs +24 -0
  103. package/dist/effect/schemas/components/mcp-list-response-items.d.mts +23 -0
  104. package/dist/effect/schemas/components/mcp-list-response-items.mjs +96 -0
  105. package/dist/effect/schemas/components/project-list-response-data.d.mts +21 -0
  106. package/dist/effect/schemas/components/project-list-response-data.mjs +74 -0
  107. package/dist/effect/schemas/components/proxy-execute-completed.d.mts +17 -0
  108. package/dist/effect/schemas/components/proxy-execute-completed.mjs +36 -0
  109. package/dist/effect/schemas/components/session-create-response-config.d.mts +83 -0
  110. package/dist/effect/schemas/components/session-create-response-config.mjs +130 -0
  111. package/dist/effect/schemas/components/session-create-response-experimental-custom-toolkits.d.mts +20 -0
  112. package/dist/effect/schemas/components/session-create-response-experimental-custom-toolkits.mjs +25 -0
  113. package/dist/effect/schemas/components/session-create-response-warnings.d.mts +9 -0
  114. package/dist/effect/schemas/components/session-create-response-warnings.mjs +25 -0
  115. package/dist/effect/schemas/components/session-link-response-experimental.d.mts +13 -0
  116. package/dist/effect/schemas/components/session-link-response-experimental.mjs +18 -0
  117. package/dist/effect/schemas/components/session-retrieve-response-experimental.d.mts +37 -0
  118. package/dist/effect/schemas/components/session-retrieve-response-experimental.mjs +27 -0
  119. package/dist/effect/schemas/components/tool-details.d.mts +51 -0
  120. package/dist/effect/schemas/components/tool-details.mjs +144 -0
  121. package/dist/effect/schemas/components/tool-pricing.d.mts +9 -0
  122. package/dist/effect/schemas/components/tool-pricing.mjs +14 -0
  123. package/dist/effect/schemas/components/tool-router-session-v31-config-history-list-response.d.mts +94 -0
  124. package/dist/effect/schemas/components/tool-router-session-v31-config-history-list-response.mjs +141 -0
  125. package/dist/effect/schemas/components/tool-router-toolkits-list-response.d.mts +34 -0
  126. package/dist/effect/schemas/components/tool-router-toolkits-list-response.mjs +45 -0
  127. package/dist/effect/schemas/components/tool.d.mts +51 -0
  128. package/dist/effect/schemas/components/tool.mjs +144 -0
  129. package/dist/effect/schemas/components/toolkit-list-response-items.d.mts +36 -0
  130. package/dist/effect/schemas/components/toolkit-list-response-items.mjs +101 -0
  131. package/dist/effect/schemas/components/tools-paginated.d.mts +57 -0
  132. package/dist/effect/schemas/components/tools-paginated.mjs +15 -0
  133. package/dist/effect/schemas/components/trigger-retrieve-response-log.d.mts +31 -0
  134. package/dist/effect/schemas/components/trigger-retrieve-response-log.mjs +39 -0
  135. package/dist/effect/schemas/components/user-input-request.d.mts +11 -0
  136. package/dist/effect/schemas/components/user-input-request.mjs +19 -0
  137. package/dist/effect/schemas/connected-accounts/complete-auth.d.mts +9 -0
  138. package/dist/effect/schemas/connected-accounts/complete-auth.mjs +11 -0
  139. package/dist/effect/schemas/connected-accounts/create.d.mts +2457 -0
  140. package/dist/effect/schemas/connected-accounts/create.mjs +58 -0
  141. package/dist/effect/schemas/connected-accounts/delete.d.mts +9 -0
  142. package/dist/effect/schemas/connected-accounts/delete.mjs +17 -0
  143. package/dist/effect/schemas/connected-accounts/list.d.mts +2480 -0
  144. package/dist/effect/schemas/connected-accounts/list.mjs +84 -0
  145. package/dist/effect/schemas/connected-accounts/patch.d.mts +10 -0
  146. package/dist/effect/schemas/connected-accounts/patch.mjs +19 -0
  147. package/dist/effect/schemas/connected-accounts/refresh.d.mts +10 -0
  148. package/dist/effect/schemas/connected-accounts/refresh.mjs +27 -0
  149. package/dist/effect/schemas/connected-accounts/retrieve.d.mts +2477 -0
  150. package/dist/effect/schemas/connected-accounts/retrieve.mjs +81 -0
  151. package/dist/effect/schemas/connected-accounts/revoke.d.mts +12 -0
  152. package/dist/effect/schemas/connected-accounts/revoke.mjs +35 -0
  153. package/dist/effect/schemas/connected-accounts/update-status.d.mts +8 -0
  154. package/dist/effect/schemas/connected-accounts/update-status.mjs +11 -0
  155. package/dist/effect/schemas/custom/delete-toolkit.d.mts +12 -0
  156. package/dist/effect/schemas/custom/delete-toolkit.mjs +17 -0
  157. package/dist/effect/schemas/custom/sync.d.mts +10 -0
  158. package/dist/effect/schemas/custom/sync.mjs +21 -0
  159. package/dist/effect/schemas/custom/upsert.d.mts +8 -0
  160. package/dist/effect/schemas/custom/upsert.mjs +11 -0
  161. package/dist/effect/schemas/files/create-presigned-url.d.mts +15 -0
  162. package/dist/effect/schemas/files/create-presigned-url.mjs +15 -0
  163. package/dist/effect/schemas/files/list.d.mts +18 -0
  164. package/dist/effect/schemas/files/list.mjs +20 -0
  165. package/dist/effect/schemas/keyring/list-transfer-keys.d.mts +17 -0
  166. package/dist/effect/schemas/keyring/list-transfer-keys.mjs +19 -0
  167. package/dist/effect/schemas/link/create.d.mts +19 -0
  168. package/dist/effect/schemas/link/create.mjs +18 -0
  169. package/dist/effect/schemas/logs/create-tool-execution.d.mts +25 -0
  170. package/dist/effect/schemas/logs/create-tool-execution.mjs +39 -0
  171. package/dist/effect/schemas/logs/retrieve-tool-execution.d.mts +37 -0
  172. package/dist/effect/schemas/logs/retrieve-tool-execution.mjs +51 -0
  173. package/dist/effect/schemas/logs/tools/list-fields.d.mts +13 -0
  174. package/dist/effect/schemas/logs/tools/list-fields.mjs +13 -0
  175. package/dist/effect/schemas/logs/tools/list.d.mts +28 -0
  176. package/dist/effect/schemas/logs/tools/list.mjs +33 -0
  177. package/dist/effect/schemas/logs/tools/retrieve.d.mts +60 -0
  178. package/dist/effect/schemas/logs/tools/retrieve.mjs +74 -0
  179. package/dist/effect/schemas/logs/triggers/list.d.mts +34 -0
  180. package/dist/effect/schemas/logs/triggers/list.mjs +12 -0
  181. package/dist/effect/schemas/logs/triggers/retrieve.d.mts +33 -0
  182. package/dist/effect/schemas/logs/triggers/retrieve.mjs +9 -0
  183. package/dist/effect/schemas/mcp/create-instance.d.mts +12 -0
  184. package/dist/effect/schemas/mcp/create-instance.mjs +29 -0
  185. package/dist/effect/schemas/mcp/create.d.mts +23 -0
  186. package/dist/effect/schemas/mcp/create.mjs +67 -0
  187. package/dist/effect/schemas/mcp/custom/create.d.mts +17 -0
  188. package/dist/effect/schemas/mcp/custom/create.mjs +48 -0
  189. package/dist/effect/schemas/mcp/delete-instance.d.mts +9 -0
  190. package/dist/effect/schemas/mcp/delete-instance.mjs +11 -0
  191. package/dist/effect/schemas/mcp/delete.d.mts +9 -0
  192. package/dist/effect/schemas/mcp/delete.mjs +17 -0
  193. package/dist/effect/schemas/mcp/generate/url.d.mts +10 -0
  194. package/dist/effect/schemas/mcp/generate/url.mjs +21 -0
  195. package/dist/effect/schemas/mcp/list-instances.d.mts +18 -0
  196. package/dist/effect/schemas/mcp/list-instances.mjs +56 -0
  197. package/dist/effect/schemas/mcp/list.d.mts +27 -0
  198. package/dist/effect/schemas/mcp/list.mjs +19 -0
  199. package/dist/effect/schemas/mcp/retrieve-app.d.mts +27 -0
  200. package/dist/effect/schemas/mcp/retrieve-app.mjs +19 -0
  201. package/dist/effect/schemas/mcp/retrieve.d.mts +24 -0
  202. package/dist/effect/schemas/mcp/retrieve.mjs +68 -0
  203. package/dist/effect/schemas/mcp/update.d.mts +24 -0
  204. package/dist/effect/schemas/mcp/update.mjs +68 -0
  205. package/dist/effect/schemas/org/clanker/create-claim.d.mts +9 -0
  206. package/dist/effect/schemas/org/clanker/create-claim.mjs +14 -0
  207. package/dist/effect/schemas/org/consumer/list-connected-toolkits.d.mts +8 -0
  208. package/dist/effect/schemas/org/consumer/list-connected-toolkits.mjs +8 -0
  209. package/dist/effect/schemas/org/consumer/project/resolve.d.mts +19 -0
  210. package/dist/effect/schemas/org/consumer/project/resolve.mjs +30 -0
  211. package/dist/effect/schemas/org/list.d.mts +17 -0
  212. package/dist/effect/schemas/org/list.mjs +22 -0
  213. package/dist/effect/schemas/org/owner/project/create.d.mts +10 -0
  214. package/dist/effect/schemas/org/owner/project/create.mjs +22 -0
  215. package/dist/effect/schemas/org/owner/project/delete.d.mts +9 -0
  216. package/dist/effect/schemas/org/owner/project/delete.mjs +17 -0
  217. package/dist/effect/schemas/org/owner/project/list.d.mts +27 -0
  218. package/dist/effect/schemas/org/owner/project/list.mjs +15 -0
  219. package/dist/effect/schemas/org/owner/project/regenerate-api-key.d.mts +14 -0
  220. package/dist/effect/schemas/org/owner/project/regenerate-api-key.mjs +31 -0
  221. package/dist/effect/schemas/org/owner/project/retrieve.d.mts +27 -0
  222. package/dist/effect/schemas/org/owner/project/retrieve.mjs +93 -0
  223. package/dist/effect/schemas/org/project/list.d.mts +27 -0
  224. package/dist/effect/schemas/org/project/list.mjs +15 -0
  225. package/dist/effect/schemas/org/usage/retrieve-summary.d.mts +13 -0
  226. package/dist/effect/schemas/org/usage/retrieve-summary.mjs +15 -0
  227. package/dist/effect/schemas/org/usage/retrieve.d.mts +16 -0
  228. package/dist/effect/schemas/org/usage/retrieve.mjs +18 -0
  229. package/dist/effect/schemas/project/usage/retrieve-summary.d.mts +13 -0
  230. package/dist/effect/schemas/project/usage/retrieve-summary.mjs +15 -0
  231. package/dist/effect/schemas/project/usage/retrieve.d.mts +16 -0
  232. package/dist/effect/schemas/project/usage/retrieve.mjs +18 -0
  233. package/dist/effect/schemas/session-configs/list.d.mts +15 -0
  234. package/dist/effect/schemas/session-configs/list.mjs +26 -0
  235. package/dist/effect/schemas/session-configs/retrieve.d.mts +34 -0
  236. package/dist/effect/schemas/session-configs/retrieve.mjs +59 -0
  237. package/dist/effect/schemas/tool-router/session/attach.d.mts +128 -0
  238. package/dist/effect/schemas/tool-router/session/attach.mjs +30 -0
  239. package/dist/effect/schemas/tool-router/session/config-history.d.mts +93 -0
  240. package/dist/effect/schemas/tool-router/session/config-history.mjs +8 -0
  241. package/dist/effect/schemas/tool-router/session/create.d.mts +128 -0
  242. package/dist/effect/schemas/tool-router/session/create.mjs +45 -0
  243. package/dist/effect/schemas/tool-router/session/delete.d.mts +9 -0
  244. package/dist/effect/schemas/tool-router/session/delete.mjs +18 -0
  245. package/dist/effect/schemas/tool-router/session/execute-meta.d.mts +35 -0
  246. package/dist/effect/schemas/tool-router/session/execute-meta.mjs +15 -0
  247. package/dist/effect/schemas/tool-router/session/execute.d.mts +35 -0
  248. package/dist/effect/schemas/tool-router/session/execute.mjs +15 -0
  249. package/dist/effect/schemas/tool-router/session/files/create-download-url.d.mts +11 -0
  250. package/dist/effect/schemas/tool-router/session/files/create-download-url.mjs +13 -0
  251. package/dist/effect/schemas/tool-router/session/files/create-upload-url.d.mts +11 -0
  252. package/dist/effect/schemas/tool-router/session/files/create-upload-url.mjs +13 -0
  253. package/dist/effect/schemas/tool-router/session/files/delete.d.mts +9 -0
  254. package/dist/effect/schemas/tool-router/session/files/delete.mjs +11 -0
  255. package/dist/effect/schemas/tool-router/session/files/list.d.mts +14 -0
  256. package/dist/effect/schemas/tool-router/session/files/list.mjs +16 -0
  257. package/dist/effect/schemas/tool-router/session/link.d.mts +18 -0
  258. package/dist/effect/schemas/tool-router/session/link.mjs +25 -0
  259. package/dist/effect/schemas/tool-router/session/patch.d.mts +128 -0
  260. package/dist/effect/schemas/tool-router/session/patch.mjs +30 -0
  261. package/dist/effect/schemas/tool-router/session/proxy-execute.d.mts +26 -0
  262. package/dist/effect/schemas/tool-router/session/proxy-execute.mjs +10 -0
  263. package/dist/effect/schemas/tool-router/session/retrieve.d.mts +128 -0
  264. package/dist/effect/schemas/tool-router/session/retrieve.mjs +30 -0
  265. package/dist/effect/schemas/tool-router/session/search.d.mts +76 -0
  266. package/dist/effect/schemas/tool-router/session/search.mjs +74 -0
  267. package/dist/effect/schemas/tool-router/session/toolkits.d.mts +33 -0
  268. package/dist/effect/schemas/tool-router/session/toolkits.mjs +8 -0
  269. package/dist/effect/schemas/tool-router/session/tools.d.mts +56 -0
  270. package/dist/effect/schemas/tool-router/session/tools.mjs +8 -0
  271. package/dist/effect/schemas/toolkits/list.d.mts +42 -0
  272. package/dist/effect/schemas/toolkits/list.mjs +15 -0
  273. package/dist/effect/schemas/toolkits/recommend-scopes.d.mts +19 -0
  274. package/dist/effect/schemas/toolkits/recommend-scopes.mjs +21 -0
  275. package/dist/effect/schemas/toolkits/retrieve-categories.d.mts +15 -0
  276. package/dist/effect/schemas/toolkits/retrieve-categories.mjs +23 -0
  277. package/dist/effect/schemas/toolkits/retrieve-changelog.d.mts +16 -0
  278. package/dist/effect/schemas/toolkits/retrieve-changelog.mjs +16 -0
  279. package/dist/effect/schemas/toolkits/retrieve-multi.d.mts +42 -0
  280. package/dist/effect/schemas/toolkits/retrieve-multi.mjs +15 -0
  281. package/dist/effect/schemas/toolkits/retrieve-scopes-grant-context.d.mts +15 -0
  282. package/dist/effect/schemas/toolkits/retrieve-scopes-grant-context.mjs +17 -0
  283. package/dist/effect/schemas/toolkits/retrieve.d.mts +110 -0
  284. package/dist/effect/schemas/toolkits/retrieve.mjs +202 -0
  285. package/dist/effect/schemas/tools/execute.d.mts +12 -0
  286. package/dist/effect/schemas/tools/execute.mjs +35 -0
  287. package/dist/effect/schemas/tools/get-input.d.mts +9 -0
  288. package/dist/effect/schemas/tools/get-input.mjs +22 -0
  289. package/dist/effect/schemas/tools/list.d.mts +56 -0
  290. package/dist/effect/schemas/tools/list.mjs +8 -0
  291. package/dist/effect/schemas/tools/proxy.d.mts +16 -0
  292. package/dist/effect/schemas/tools/proxy.mjs +36 -0
  293. package/dist/effect/schemas/tools/retrieve-enum.d.mts +6 -0
  294. package/dist/effect/schemas/tools/retrieve-enum.mjs +8 -0
  295. package/dist/effect/schemas/tools/retrieve-required-scopes.d.mts +22 -0
  296. package/dist/effect/schemas/tools/retrieve-required-scopes.mjs +33 -0
  297. package/dist/effect/schemas/tools/retrieve.d.mts +50 -0
  298. package/dist/effect/schemas/tools/retrieve.mjs +8 -0
  299. package/dist/effect/schemas/trigger-instances/list-active.d.mts +34 -0
  300. package/dist/effect/schemas/trigger-instances/list-active.mjs +37 -0
  301. package/dist/effect/schemas/trigger-instances/manage/delete.d.mts +8 -0
  302. package/dist/effect/schemas/trigger-instances/manage/delete.mjs +11 -0
  303. package/dist/effect/schemas/trigger-instances/manage/update.d.mts +8 -0
  304. package/dist/effect/schemas/trigger-instances/manage/update.mjs +8 -0
  305. package/dist/effect/schemas/trigger-instances/upsert.d.mts +8 -0
  306. package/dist/effect/schemas/trigger-instances/upsert.mjs +8 -0
  307. package/dist/effect/schemas/triggers-types/list.d.mts +27 -0
  308. package/dist/effect/schemas/triggers-types/list.mjs +86 -0
  309. package/dist/effect/schemas/triggers-types/retrieve-enum.d.mts +6 -0
  310. package/dist/effect/schemas/triggers-types/retrieve-enum.mjs +8 -0
  311. package/dist/effect/schemas/triggers-types/retrieve.d.mts +21 -0
  312. package/dist/effect/schemas/triggers-types/retrieve.mjs +80 -0
  313. package/dist/effect/schemas/webhook-endpoints/create.d.mts +13 -0
  314. package/dist/effect/schemas/webhook-endpoints/create.mjs +15 -0
  315. package/dist/effect/schemas/webhook-endpoints/list.d.mts +12 -0
  316. package/dist/effect/schemas/webhook-endpoints/list.mjs +12 -0
  317. package/dist/effect/schemas/webhook-endpoints/replace.d.mts +13 -0
  318. package/dist/effect/schemas/webhook-endpoints/replace.mjs +15 -0
  319. package/dist/effect/schemas/webhook-endpoints/retrieve.d.mts +13 -0
  320. package/dist/effect/schemas/webhook-endpoints/retrieve.mjs +15 -0
  321. package/dist/effect/schemas/webhook-endpoints/update.d.mts +13 -0
  322. package/dist/effect/schemas/webhook-endpoints/update.mjs +15 -0
  323. package/dist/effect/schemas/webhook-subscriptions/create.d.mts +14 -0
  324. package/dist/effect/schemas/webhook-subscriptions/create.mjs +23 -0
  325. package/dist/effect/schemas/webhook-subscriptions/delete.d.mts +8 -0
  326. package/dist/effect/schemas/webhook-subscriptions/delete.mjs +8 -0
  327. package/dist/effect/schemas/webhook-subscriptions/list-event-types.d.mts +12 -0
  328. package/dist/effect/schemas/webhook-subscriptions/list-event-types.mjs +16 -0
  329. package/dist/effect/schemas/webhook-subscriptions/list.d.mts +20 -0
  330. package/dist/effect/schemas/webhook-subscriptions/list.mjs +29 -0
  331. package/dist/effect/schemas/webhook-subscriptions/retrieve.d.mts +14 -0
  332. package/dist/effect/schemas/webhook-subscriptions/retrieve.mjs +23 -0
  333. package/dist/effect/schemas/webhook-subscriptions/rotate-secret.d.mts +9 -0
  334. package/dist/effect/schemas/webhook-subscriptions/rotate-secret.mjs +14 -0
  335. package/dist/effect/schemas/webhook-subscriptions/update.d.mts +14 -0
  336. package/dist/effect/schemas/webhook-subscriptions/update.mjs +23 -0
  337. package/dist/effect/schemas.d.mts +9636 -0
  338. package/dist/effect/schemas.mjs +131 -0
  339. package/dist/effect.d.mts +749 -0
  340. package/dist/effect.mjs +1572 -0
  341. package/dist/{error-DLB1uKM3.mjs → error-D9cG225M.mjs} +15 -7
  342. package/dist/{files-DROCPzLP.mjs → files-BkqUHaPL.mjs} +1 -1
  343. package/dist/{files-RJPIH6iE.mjs → files-ITYv6j_c.mjs} +1 -1
  344. package/dist/{generate-mU4b3zJf.mjs → generate-i93AYL8q.mjs} +1 -1
  345. package/dist/generated-deprecated-inputs-CQlAN1eH.mjs +201 -0
  346. package/dist/{generated-operations-CWhusMPU.mjs → generated-operations-BguuMwpw.mjs} +5 -5
  347. package/dist/index.d.mts +2 -4
  348. package/dist/index.mjs +25 -212
  349. package/dist/{keyring-BzkcB1gu.mjs → keyring-FoLfgtBi.mjs} +1 -1
  350. package/dist/{link-CfIyH3nF.mjs → link-DdF0Mpaw.mjs} +1 -1
  351. package/dist/{logs-D2wxXYiO.mjs → logs-Bk1qx5Br.mjs} +3 -3
  352. package/dist/{manage-Vc3jdRr_.mjs → manage-CAZEslDY.mjs} +1 -1
  353. package/dist/{mcp-DEe7xU7G.mjs → mcp-B91r14RW.mjs} +3 -3
  354. package/dist/{org-CYsl9O1u.mjs → org-JUdjHRmz.mjs} +6 -6
  355. package/dist/{owner-DmQb3AF5.mjs → owner-BiP5UwSE.mjs} +1 -1
  356. package/dist/pagination-rules-uMUdPq_7.mjs +36 -0
  357. package/dist/pagination.mjs +5 -9
  358. package/dist/{project-D-_r3H1_.mjs → project-B8d4M3Ut.mjs} +1 -1
  359. package/dist/{project-BVBWJzHm.mjs → project-BJ0ixr7M.mjs} +1 -1
  360. package/dist/{project-OSigfIdr.mjs → project-BqlCHKGr.mjs} +1 -1
  361. package/dist/{project-DvSCDA9B.mjs → project-D4uc18P5.mjs} +1 -1
  362. package/dist/{realtime-Dsk1QGAl.mjs → realtime-BY6LAuSf.mjs} +1 -1
  363. package/dist/resources/api-key-revocation.d.mts +1 -1
  364. package/dist/resources/api-key-revocation.mjs +1 -1
  365. package/dist/resources/auth/auth.d.mts +1 -1
  366. package/dist/resources/auth/auth.mjs +1 -1
  367. package/dist/resources/auth/index.d.mts +1 -1
  368. package/dist/resources/auth/index.mjs +2 -2
  369. package/dist/resources/auth/session.d.mts +1 -1
  370. package/dist/resources/auth/session.mjs +1 -1
  371. package/dist/resources/auth-configs.d.mts +1 -1
  372. package/dist/resources/auth-configs.mjs +1 -1
  373. package/dist/resources/auth.d.mts +1 -1
  374. package/dist/resources/auth.mjs +2 -2
  375. package/dist/resources/cli/cli.d.mts +1 -1
  376. package/dist/resources/cli/cli.mjs +1 -1
  377. package/dist/resources/cli/index.d.mts +1 -1
  378. package/dist/resources/cli/index.mjs +2 -2
  379. package/dist/resources/cli/realtime.d.mts +1 -1
  380. package/dist/resources/cli/realtime.mjs +1 -1
  381. package/dist/resources/cli.d.mts +1 -1
  382. package/dist/resources/cli.mjs +2 -2
  383. package/dist/resources/connected-accounts.d.mts +1 -1
  384. package/dist/resources/connected-accounts.mjs +1 -1
  385. package/dist/resources/custom.d.mts +1 -1
  386. package/dist/resources/custom.mjs +1 -1
  387. package/dist/resources/files.d.mts +1 -1
  388. package/dist/resources/files.mjs +1 -1
  389. package/dist/resources/index.d.mts +1 -1
  390. package/dist/resources/index.mjs +13 -13
  391. package/dist/resources/keyring.d.mts +1 -1
  392. package/dist/resources/keyring.mjs +1 -1
  393. package/dist/resources/link.d.mts +1 -1
  394. package/dist/resources/link.mjs +1 -1
  395. package/dist/resources/logs/index.d.mts +1 -1
  396. package/dist/resources/logs/index.mjs +3 -3
  397. package/dist/resources/logs/logs.d.mts +1 -1
  398. package/dist/resources/logs/logs.mjs +1 -1
  399. package/dist/resources/logs/tools.d.mts +1 -1
  400. package/dist/resources/logs/tools.mjs +1 -1
  401. package/dist/resources/logs/triggers.d.mts +1 -1
  402. package/dist/resources/logs/triggers.mjs +1 -1
  403. package/dist/resources/logs.d.mts +1 -1
  404. package/dist/resources/logs.mjs +3 -3
  405. package/dist/resources/mcp/custom.d.mts +1 -1
  406. package/dist/resources/mcp/custom.mjs +1 -1
  407. package/dist/resources/mcp/generate.d.mts +1 -1
  408. package/dist/resources/mcp/generate.mjs +1 -1
  409. package/dist/resources/mcp/index.d.mts +1 -1
  410. package/dist/resources/mcp/index.mjs +3 -3
  411. package/dist/resources/mcp/mcp.d.mts +1 -1
  412. package/dist/resources/mcp/mcp.mjs +1 -1
  413. package/dist/resources/mcp.d.mts +1 -1
  414. package/dist/resources/mcp.mjs +3 -3
  415. package/dist/resources/org/clanker.d.mts +1 -1
  416. package/dist/resources/org/clanker.mjs +1 -1
  417. package/dist/resources/org/consumer/consumer.d.mts +1 -1
  418. package/dist/resources/org/consumer/consumer.mjs +1 -1
  419. package/dist/resources/org/consumer/index.d.mts +1 -1
  420. package/dist/resources/org/consumer/index.mjs +2 -2
  421. package/dist/resources/org/consumer/project.d.mts +1 -1
  422. package/dist/resources/org/consumer/project.mjs +1 -1
  423. package/dist/resources/org/consumer.d.mts +1 -1
  424. package/dist/resources/org/consumer.mjs +2 -2
  425. package/dist/resources/org/index.d.mts +1 -1
  426. package/dist/resources/org/index.mjs +6 -6
  427. package/dist/resources/org/org.d.mts +1 -1
  428. package/dist/resources/org/org.mjs +1 -1
  429. package/dist/resources/org/owner/index.d.mts +1 -1
  430. package/dist/resources/org/owner/index.mjs +2 -2
  431. package/dist/resources/org/owner/owner.d.mts +1 -1
  432. package/dist/resources/org/owner/owner.mjs +1 -1
  433. package/dist/resources/org/owner/project.d.mts +1 -1
  434. package/dist/resources/org/owner/project.mjs +1 -1
  435. package/dist/resources/org/owner.d.mts +1 -1
  436. package/dist/resources/org/owner.mjs +2 -2
  437. package/dist/resources/org/project.d.mts +1 -1
  438. package/dist/resources/org/project.mjs +1 -1
  439. package/dist/resources/org/usage.d.mts +1 -1
  440. package/dist/resources/org/usage.mjs +1 -1
  441. package/dist/resources/org.d.mts +1 -1
  442. package/dist/resources/org.mjs +6 -6
  443. package/dist/resources/project/index.d.mts +1 -1
  444. package/dist/resources/project/index.mjs +1 -1
  445. package/dist/resources/project/project.d.mts +1 -1
  446. package/dist/resources/project/project.mjs +1 -1
  447. package/dist/resources/project/usage.d.mts +1 -1
  448. package/dist/resources/project/usage.mjs +1 -1
  449. package/dist/resources/project.d.mts +1 -1
  450. package/dist/resources/project.mjs +1 -1
  451. package/dist/resources/session-configs.d.mts +1 -1
  452. package/dist/resources/session-configs.mjs +1 -1
  453. package/dist/resources/tool-router/index.d.mts +1 -1
  454. package/dist/resources/tool-router/index.mjs +2 -2
  455. package/dist/resources/tool-router/session/files.d.mts +1 -1
  456. package/dist/resources/tool-router/session/files.mjs +1 -1
  457. package/dist/resources/tool-router/session/index.d.mts +1 -1
  458. package/dist/resources/tool-router/session/index.mjs +2 -2
  459. package/dist/resources/tool-router/session/session.d.mts +1 -1
  460. package/dist/resources/tool-router/session/session.mjs +1 -1
  461. package/dist/resources/tool-router/session.d.mts +1 -1
  462. package/dist/resources/tool-router/session.mjs +2 -2
  463. package/dist/resources/tool-router/tool-router.d.mts +1 -1
  464. package/dist/resources/tool-router/tool-router.mjs +1 -1
  465. package/dist/resources/tool-router.d.mts +1 -1
  466. package/dist/resources/tool-router.mjs +2 -2
  467. package/dist/resources/toolkits.d.mts +1 -1
  468. package/dist/resources/toolkits.mjs +1 -1
  469. package/dist/resources/tools.d.mts +1 -1
  470. package/dist/resources/tools.mjs +1 -1
  471. package/dist/resources/trigger-instances/index.d.mts +1 -1
  472. package/dist/resources/trigger-instances/index.mjs +2 -2
  473. package/dist/resources/trigger-instances/manage.d.mts +1 -1
  474. package/dist/resources/trigger-instances/manage.mjs +1 -1
  475. package/dist/resources/trigger-instances/trigger-instances.d.mts +1 -1
  476. package/dist/resources/trigger-instances/trigger-instances.mjs +1 -1
  477. package/dist/resources/trigger-instances.d.mts +1 -1
  478. package/dist/resources/trigger-instances.mjs +2 -2
  479. package/dist/resources/triggers-types.d.mts +1 -1
  480. package/dist/resources/triggers-types.mjs +1 -1
  481. package/dist/resources/webhook-endpoints.d.mts +1 -1
  482. package/dist/resources/webhook-endpoints.mjs +1 -1
  483. package/dist/resources/webhook-subscriptions.d.mts +1 -1
  484. package/dist/resources/webhook-subscriptions.mjs +1 -1
  485. package/dist/{session-DfISYrbs.mjs → session-BISWW6RD.mjs} +1 -1
  486. package/dist/{session-BUYbl8BA.mjs → session-BMaJyaay.mjs} +2 -2
  487. package/dist/{session-configs-CipRvstF.d.mts → session-configs-Uq4WDziI.d.mts} +41 -37
  488. package/dist/{tool-router-DJQ12uhs.mjs → tool-router-CigDMyik.mjs} +1 -1
  489. package/dist/{toolkits-CbdyRtvr.mjs → toolkits-8jNDLM-m.mjs} +1 -1
  490. package/dist/{tools-DiH6dAto.mjs → tools-B8MskXI8.mjs} +1 -1
  491. package/dist/{tools-a29E_8La.mjs → tools-Dl-mKUP6.mjs} +1 -1
  492. package/dist/{trigger-instances-Bg0n7X-d.mjs → trigger-instances-DRUh_YQ4.mjs} +2 -2
  493. package/dist/{triggers-BoSFNGss.mjs → triggers-BrVLwzqY.mjs} +1 -1
  494. package/dist/{triggers-types-BPtTEwUA.mjs → triggers-types-c8LTfiyU.mjs} +1 -1
  495. package/dist/{usage-Cs10eWCd.mjs → usage-Bgc2EN82.mjs} +1 -1
  496. package/dist/{usage-CHVyZ3tm.mjs → usage-CMyLY8PR.mjs} +1 -1
  497. package/dist/version-D-eWgm6-.d.mts +4 -0
  498. package/dist/{webhook-endpoints-B4lZc5YC.mjs → webhook-endpoints-BN8qcJuW.mjs} +1 -1
  499. package/dist/{webhook-subscriptions-DJTSJd6K.mjs → webhook-subscriptions-BOYXHSCR.mjs} +1 -1
  500. package/package.json +27 -5
package/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  Composio API client for TypeScript, generated from the [v3.1 OpenAPI spec](https://staging-backend.composio.dev/api/v3.1/openapi.json) with [hey-api](https://heyapi.dev).
4
4
 
5
- This repo is the successor to the Stainless-generated [`@composio/client`](https://www.npmjs.com/package/@composio/client) (Stainless is sunsetting). Current scope: the full `/api/v3.1` surface — all 104 released operations — in **both** languages: TypeScript at the package root, and Python in [`python/`](./python/README.md) (PyPI takeover pending). Migration is tracked on the wayfinder map [UXE-152](https://linear.app/composio/issue/UXE-152).
5
+ This repo is the successor to the Stainless-generated [`@composio/client`](https://www.npmjs.com/package/@composio/client) (Stainless is sunsetting). Current scope: the full `/api/v3.1` surface — all 113 released operations — in **both** languages: TypeScript at the package root, and Python in [`python/`](./python/README.md) (PyPI takeover pending). Migration is tracked on the wayfinder map [UXE-152](https://linear.app/composio/issue/UXE-152).
6
6
 
7
7
  ## Usage
8
8
 
@@ -92,6 +92,337 @@ const composio = new Composio({ apiKey, transport })
92
92
  Existing `fetch` and `fetchOptions` constructor options remain supported. They cannot be combined
93
93
  with `transport` because a request can have only one HTTP dispatcher.
94
94
 
95
+ ## Effect
96
+
97
+ `@composio/client/effect` is the same API surface for applications written with
98
+ [Effect](https://effect.website). Every operation returns an `Effect` whose failures are tagged
99
+ errors, the transport is the `HttpClient` in context, and interrupting a call aborts its request.
100
+
101
+ Use it when the calling code is already Effect code and would otherwise wrap each call in
102
+ `Effect.tryPromise` and inspect what was thrown. Otherwise use the package root: it needs no peer
103
+ dependency, loads faster and spends less time per request (see [Performance](#performance)).
104
+
105
+ The accessor chains, method names, argument order and request and response types are the root
106
+ client's, and a call sends the same method, URL, body and headers as the root client does for the same
107
+ input. All 113 operations of the spec are there.
108
+
109
+ ### Install
110
+
111
+ ```sh
112
+ pnpm add @composio/client effect
113
+ ```
114
+
115
+ `effect` is an optional peer dependency. The root entry and the `./pagination` and `./resources`
116
+ subpaths never import it and load without it.
117
+
118
+ - **Supported range: `effect >=4.0.3 <4.1.0`.** The manifest declares the peer as `*`, because a
119
+ bounded optional peer makes npm refuse the whole install for a project that lists some other
120
+ `effect` and never imports this subpath. The cost is that a package manager does not warn about an
121
+ unsupported version. The range above is the one the subpath is tested against.
122
+ - **Install exactly one copy of `effect`.** With two copies, even one patch apart, the project does
123
+ not type-check: the client's `Effect`, `Layer` and `HttpClient` are not assignable to the
124
+ application's. At run time `Redacted` values do not cross between copies and `instanceof` is false,
125
+ and nothing warns about it.
126
+ - **The supported range bounds your Effect upgrades.** The client runs on the application's `effect`,
127
+ so moving to a new Effect minor waits for a client release whose supported range includes it.
128
+
129
+ ### Construct a client
130
+
131
+ ```ts
132
+ import { Effect, Layer } from 'effect'
133
+ import * as FetchHttpClient from 'effect/http/FetchHttpClient'
134
+ import { ComposioClient, layer, layerConfig, layerFetch } from '@composio/client/effect'
135
+
136
+ // Explicit options, over a fetch-backed `HttpClient` the layer brings with it.
137
+ const live = layerFetch({ apiKey: 'your-api-key' })
138
+
139
+ // Explicit options, over the `HttpClient` the application provides.
140
+ const overMyTransport = layer({ apiKey: 'your-api-key' }).pipe(Layer.provide(FetchHttpClient.layer))
141
+
142
+ // Options read from the `COMPOSIO_*` settings.
143
+ const fromConfig = layerConfig().pipe(Layer.provide(FetchHttpClient.layer))
144
+
145
+ const program = Effect.gen(function* () {
146
+ const composio = yield* ComposioClient
147
+ const toolkit = yield* composio.toolkits.retrieve('github')
148
+ return toolkit.slug
149
+ })
150
+
151
+ const slug: Promise<string> = Effect.runPromise(program.pipe(Effect.provide(live)))
152
+ ```
153
+
154
+ `make(options, httpClient)` builds the same client synchronously from an `HttpClient` you already
155
+ hold, and throws where the layers fail.
156
+
157
+ Only `layerConfig` reads the environment. It reads `COMPOSIO_API_KEY`, `COMPOSIO_USER_API_KEY`,
158
+ `COMPOSIO_ORG_API_KEY`, `COMPOSIO_BASE_URL` and `COMPOSIO_ALLOW_INSECURE_HTTP=1` through Effect's
159
+ `Config`, so the `ConfigProvider` in context decides where they come from; by default that is the
160
+ process environment. An option passed to `layerConfig` wins over its setting, and `null` for a
161
+ credential means none, whatever is configured. `make`, `layer` and `layerFetch` read nothing.
162
+
163
+ A credential option takes a `string` or a `Redacted<string>`. Construction fails with a
164
+ `ConfigurationError` when a credentialed origin is not HTTPS (loopback and `allowInsecureHTTP`
165
+ excepted, as on the root client), or when `decode: true` is given without `schemas`.
166
+
167
+ The resources are plain objects of functions, not classes, so a method can be passed around without
168
+ binding. Two things on the root client have no counterpart here: the resources that hold no operation
169
+ (`migration`, `project.config`), and the deprecated `custom.deleteToolkit(slug, options)` overload —
170
+ only the current `(slug, query, options)` signature exists.
171
+
172
+ ### Errors
173
+
174
+ Every call fails with a `ComposioError`, a union of tagged errors. The tags are namespaced:
175
+
176
+ | Tag | When |
177
+ | --- | --- |
178
+ | `@composio/client/BadRequestError` | 400 |
179
+ | `@composio/client/AuthenticationError` | 401 |
180
+ | `@composio/client/PermissionDeniedError` | 403 |
181
+ | `@composio/client/NotFoundError` | 404 |
182
+ | `@composio/client/ConflictError` | 409 |
183
+ | `@composio/client/UnprocessableEntityError` | 422 |
184
+ | `@composio/client/RateLimitError` | 429 |
185
+ | `@composio/client/InternalServerError` | 500 and above |
186
+ | `@composio/client/APIError` | any other non-success status |
187
+ | `@composio/client/APIConnectionError` | the transport failed before a response |
188
+ | `@composio/client/APIConnectionTimeoutError` | an attempt outlived its time budget |
189
+ | `@composio/client/DecodeError` | a success body failed validation (only with `decode: true`) |
190
+ | `@composio/client/ConfigurationError` | no request can be made from this client or call |
191
+
192
+ ```ts
193
+ import { Effect } from 'effect'
194
+ import { isAPIError, type ComposioClientShape } from '@composio/client/effect'
195
+
196
+ const slugOrNull = (composio: ComposioClientShape, slug: string) =>
197
+ composio.toolkits.retrieve(slug).pipe(
198
+ Effect.map((toolkit) => toolkit.slug),
199
+ Effect.catchTag('@composio/client/NotFoundError', () => Effect.succeed(null)),
200
+ Effect.tapError((error) =>
201
+ isAPIError(error) ? Effect.logWarning(`${error.status} ${error.requestId}`) : Effect.void,
202
+ ),
203
+ )
204
+ ```
205
+
206
+ A status error carries `status`, `requestId`, `details` (the Composio error envelope, when the body
207
+ is one), `body`, `message`, `method` and `url`. `isAPIError` matches any status error and
208
+ `isComposioError` any error of the union; both test the tag, not the class. There is no access to the
209
+ raw response of a successful call.
210
+
211
+ Retries and timeouts follow the root client's policy: 2 retries and one minute per attempt by default.
212
+
213
+ ### Streams
214
+
215
+ Fourteen cursor-paginated operations have a `<method>Stream` beside them that yields items across
216
+ pages:
217
+
218
+ - `authConfigs.listStream`, `connectedAccounts.listStream`, `files.listStream`,
219
+ `sessionConfigs.listStream`, `toolkits.listStream`, `toolkits.retrieveMultiStream`,
220
+ `tools.listStream`, `triggerInstances.listActiveStream`, `triggersTypes.listStream`,
221
+ `webhookSubscriptions.listStream`
222
+ - `toolRouter.session.configHistoryStream`, `toolRouter.session.toolkitsStream`,
223
+ `toolRouter.session.toolsStream`, `toolRouter.session.files.listStream`
224
+
225
+ ```ts
226
+ import { Stream } from 'effect'
227
+ import type { ComposioClientShape } from '@composio/client/effect'
228
+
229
+ const firstSlugs = (composio: ComposioClientShape) =>
230
+ composio.toolkits.listStream({ limit: 100 }).pipe(
231
+ Stream.map((toolkit) => toolkit.slug),
232
+ Stream.take(250),
233
+ Stream.runCollect,
234
+ )
235
+ ```
236
+
237
+ A page is requested only when the stream is pulled that far, so `Stream.take` above stops after the
238
+ third page. The cursor rules are those of `@composio/client/pagination`, and a traversal that cannot
239
+ continue — a cursor the server repeats, a page with no `items` array — fails with a
240
+ `ConfigurationError`.
241
+
242
+ No other operation has a stream. That includes the list operations whose page is not the standard
243
+ `items` and `next_cursor` shape: `org.list` (`organizations`), `org.project.list` and
244
+ `org.owner.project.list` (`data`), and `logs.createToolExecution` (`logs`). Page those by passing
245
+ `next_cursor` back yourself.
246
+
247
+ ### Per-call options
248
+
249
+ The last argument of every operation and raw method:
250
+
251
+ ```ts
252
+ import type { ComposioClientShape } from '@composio/client/effect'
253
+
254
+ const once = (composio: ComposioClientShape) =>
255
+ composio.toolkits.retrieve(
256
+ 'github',
257
+ {},
258
+ {
259
+ headers: { 'x-trace-id': 'abc', 'x-team': null }, // `null` removes a default header
260
+ maxRetries: 0,
261
+ timeout: 10_000, // milliseconds, per attempt
262
+ },
263
+ )
264
+ ```
265
+
266
+ Per-call headers win over the client's `defaultHeaders`. `decode` is the fourth option, described
267
+ next.
268
+
269
+ ### Decoding
270
+
271
+ By default a response body is returned as parsed and nothing checks it. Decoding is opt-in, per call
272
+ or as a client default, and needs the response schemas, which are a separate entry:
273
+
274
+ ```ts
275
+ import * as HttpClient from 'effect/http/HttpClient'
276
+ import { Effect } from 'effect'
277
+ import { make } from '@composio/client/effect'
278
+ import { schemaLoaders } from '@composio/client/effect/schemas'
279
+
280
+ const checkedCategories = (httpClient: HttpClient.HttpClient) => {
281
+ const composio = make({ apiKey: 'your-api-key', schemas: schemaLoaders }, httpClient)
282
+ return composio.toolkits.retrieveCategories({ decode: true }).pipe(
283
+ Effect.catchTag('@composio/client/DecodeError', (error) =>
284
+ Effect.logError(`${error.operation}: ${JSON.stringify(error.issues)}`).pipe(Effect.as(null)),
285
+ ),
286
+ )
287
+ }
288
+ ```
289
+
290
+ - **It validates and changes nothing.** A call that passes returns the body exactly as it was parsed;
291
+ a field the API returns ahead of the spec is not stripped. The response type is the same either way.
292
+ - **`DecodeError`** carries `operation` (`toolkits.retrieveCategories`), `status`, `requestId`,
293
+ `method`, `url` and `issues`, each a `path` and a `kind` such as `MissingKey` or `InvalidType`. It
294
+ never carries the body or the value found: a success body is where this API returns secrets.
295
+ - **`decode: true` needs `schemas`.** As a client option without `schemas` it is a compile error, and a
296
+ `ConfigurationError` at construction for a caller the types did not reach. A per-call
297
+ `decode: true` on a client built without `schemas` fails with a `ConfigurationError` before
298
+ anything is sent.
299
+ - **Schemas load lazily.** `schemaLoaders` is a table of `import()` calls, one per operation. A schema
300
+ module is loaded by the first call that decodes its operation. A single schema can also be imported
301
+ directly, for example
302
+ `import { ToolkitRetrieveCategoriesResponse } from '@composio/client/effect/schemas/toolkits/retrieve-categories'`.
303
+ A decoding call also checks that the table contains its operation before sending the request. The
304
+ loader itself runs only after a non-204 success; a failed dynamic import can therefore fail a call
305
+ after the server has already processed it.
306
+ - **An application that never imports `@composio/client/effect/schemas` ships no schema.** The
307
+ `./effect` entry does not reach the table, so a bundler has no path to it.
308
+ - A 204 has no body to validate. A raw call is validated when its path is a declared operation's.
309
+
310
+ A schema is generated from the spec snapshot this version was built from, so decoding holds a
311
+ response to that snapshot. A response from before a required field existed fails: replaying stored
312
+ production responses through the schemas, the four `toolRouter.session` operations `create`,
313
+ `retrieve`, `attach` and `patch` failed on a missing `config.instant` for every capture through
314
+ 2026-09-11, taken before the spec declared that field, and passed for the 2026-10-08 capture, taken
315
+ after. The record is in [`docs/upstream-asks.md`](./docs/upstream-asks.md).
316
+
317
+ ### Tracing
318
+
319
+ One option, `tracing`, says what the client's own requests add to a trace:
320
+
321
+ | Value | Effect |
322
+ | --- | --- |
323
+ | `'off'` (default) | No span is opened for a request and no trace header is sent, so the request carries exactly the headers the root client sends. |
324
+ | `'span'` | Effect's `HttpClient` opens its client span around each request, a child of the span the call runs in. Nothing about it goes on the wire. |
325
+ | `'propagate'` | The span, also sent to the API as `b3` and `traceparent` headers. |
326
+
327
+ The option only ever reduces tracing, and only for this client's requests. A span asked for here is
328
+ still subject to the application's own `HttpClient.TracerDisabledWhen` and
329
+ `HttpClient.TracerPropagationEnabled`.
330
+
331
+ With a span on, the span ends on the client's own error, not on Effect's `HttpClientError`. That
332
+ error holds the request and its credential headers, and a tracer keeps what a span ended on. To do
333
+ this the client reassigns `end` on the span object the tracer returns, so a tracer that returns
334
+ frozen spans throws when a request starts. The replacement costs about a microsecond per request on
335
+ top of the span itself.
336
+
337
+ ### Credentials and redaction
338
+
339
+ A request carries one credential header, chosen per operation as on the root client: `x-api-key`,
340
+ `x-user-api-key` or `x-org-api-key`. The client holds all three as `Redacted` values and adds all
341
+ three header names to Effect's redaction list for its requests, so spans and renderings of a request
342
+ show `<redacted>`; Effect's own list knows only `x-api-key`.
343
+
344
+ No error the client produces holds the request, the transport's error or a credential value. One
345
+ caveat: `APIConnectionError.description` is the transport's own message text, copied. A transport
346
+ that writes a header value into its error messages would put it there.
347
+
348
+ The credential is applied before the request reaches the `HttpClient`, so a transform the application
349
+ puts on its `HttpClient` sees it.
350
+
351
+ ### Redirects
352
+
353
+ The client follows redirects itself and withdraws credentials once a chain changes origin. It does so
354
+ by dispatching with `redirect: 'manual'`, which a fetch-backed `HttpClient` honors. The guarantee
355
+ holds only when nothing between the client and the wire follows redirects. An `HttpClient` wrapped in
356
+ `HttpClient.followRedirects`, or a transport that follows redirects on its own, forwards the
357
+ credential headers across origins and is unsupported for a credentialed client. Headers an
358
+ application places in `FetchHttpClient.RequestInit` are outside the client's credential handling:
359
+ the credential check does not see them, and they are not withdrawn on a cross-origin redirect.
360
+
361
+ ### Deprecation notices
362
+
363
+ `deprecationNotices: 'warn' | 'off'`, default `'warn'`. A deprecated input, or a response carrying
364
+ `Deprecation`, `Sunset` and `Link` headers, is reported through Effect's logger at the warning level,
365
+ once per operation and notice for each client. The application's logger and minimum log level decide
366
+ what becomes of it; `'off'` reports nothing.
367
+
368
+ ### Raw methods
369
+
370
+ `get`, `post`, `put`, `patch` and `delete` reach any path through the same kernel: credentials,
371
+ retries, timeouts, redirects and errors behave as for a generated method.
372
+
373
+ ```ts
374
+ import type { ComposioClientShape } from '@composio/client/effect'
375
+
376
+ const raw = (composio: ComposioClientShape) =>
377
+ composio.post<{ id: string }>('/api/v3.1/some/path', {
378
+ query: { dry_run: true },
379
+ body: { name: 'example' },
380
+ maxRetries: 0,
381
+ })
382
+ ```
383
+
384
+ The type argument is an assertion, not a check.
385
+
386
+ ### Performance
387
+
388
+ Measured against a mocked transport, so these are client overhead and say nothing about network
389
+ latency. The full tables and method are in
390
+ [`docs/benchmarks/client-overhead.md`](./docs/benchmarks/client-overhead.md); the figures below are
391
+ its 2026-10-13 runs on Node 24.17.0 and Bun 1.4.0, `effect` 4.0.3, one Apple M1 Pro.
392
+
393
+ **The Effect surface is slower per request than the root client.** Typed geometric mean over two
394
+ runs: 154.1% and 153.2% of the root client by default, 173.8% and 171.1% with `tracing: 'span'`. In
395
+ absolute terms that is 10 to 14 microseconds more per request, and 3 to 5 more with the span on. It
396
+ is a measurement, not a win; what it buys is the typed failure channel, interruption and a transport
397
+ taken from context.
398
+
399
+ **Decoding costs more than the request.** Validating a twenty-item `toolkits.list` page took a call
400
+ from 77.7 / 78.9 µs to 187.3 / 192.4 µs, about 110 µs or 5.5 µs per item.
401
+
402
+ **Import time**, over what Effect's own HTTP modules already cost, minimum / median of thirty in
403
+ milliseconds:
404
+
405
+ | | Node, modules | Node, bundle | Bun, modules | Bun, bundle |
406
+ | --- | ---: | ---: | ---: | ---: |
407
+ | `./effect`, never decodes | 5.5 / 5.8 | 3.6 / 3.7 | 2.7 / 3.7 | 10.3 / 11.1 |
408
+ | plus importing `schemaLoaders` | −0.2 / 0.4 | 8.6 / 9.3 | −0.1 / −0.6 | 4.7 / 4.7 |
409
+
410
+ The published-module lanes are noisy, which is how a difference comes out negative. Effect itself
411
+ is the larger part: 114.8 / 116.4 ms as modules on Node and 21.1 / 22.3 ms bundled, against 9.1 /
412
+ 10.0 ms and 3.9 / 4.1 ms for the root client.
413
+
414
+ **Bundle size** of a single-file consumer: Effect's HTTP modules alone, then with a client that never
415
+ decodes, then with the loader table and every schema it reaches.
416
+
417
+ | Bundler | Effect alone | never decodes | decodes |
418
+ | --- | ---: | ---: | ---: |
419
+ | rolldown | 498 kB | 732 kB | 893 kB |
420
+ | `bun build` | 266 kB | 705 kB | 1088 kB |
421
+
422
+ **Package weight.** The schema modules make the package larger on disk: 3.4 MB unpacked in 509 files,
423
+ of which 2.1 MB and 328 files are `dist/effect/schemas*`, against 1.1 MB in 176 files for
424
+ `2.0.0-rc.11` as published. None of it is on the root entry's import path.
425
+
95
426
  ## Upgrade from Stainless 0.1.x to 2.0
96
427
 
97
428
  By default, the 2.0 client refuses to send credentials over plain HTTP unless the hostname is
@@ -123,21 +454,22 @@ Toolchain is pinned via [mise](https://mise.jdx.dev) (`mise install`): Node 24,
123
454
 
124
455
  ```sh
125
456
  pnpm install
126
- pnpm generate # hey-api + compat codegen: spec/openapi.json → src/generated + src/compat/resources (do not edit)
457
+ pnpm generate # hey-api + compat and Effect codegen: spec/openapi.json → src/generated, src/compat/resources, src/effect/generated (do not edit)
127
458
  pnpm lint # eslint over src, test, codegen, parity, and demo
128
459
  pnpm typecheck # tsgo (TS native), including type tests and demo
129
460
  pnpm typecheck:tsc # same programs under tsc — both compilers must pass
130
- pnpm codegen:check # verify committed src/compat/resources matches the generator
461
+ pnpm codegen:check # verify every committed generated tree matches the generator
131
462
  pnpm test # unit tests (MSW mocks) + codegen tests
132
463
  pnpm build # tsdown → dist/ (runs publint + arethetypeswrong)
133
464
  pnpm test:pack # pack the real tarball, typecheck + import every drop-in subpath
134
465
  pnpm benchmark:baseline # capture the dist/ a benchmark run compares against
135
466
  pnpm benchmark # score SDK overhead against that baseline and against Stainless
467
+ pnpm benchmark:import # time what importing each entry costs, on Node and Bun
136
468
  pnpm test:contract # live API tests; requires COMPOSIO_API_KEY (copy .env.example to .env)
137
469
  pnpm refresh-spec # re-fetch spec/openapi.json from the live backend
138
470
  ```
139
471
 
140
- `src/generated/` and `src/compat/resources/` are regenerated output — never edit them by hand; CI fails if they drift from `spec/openapi.json`.
472
+ `src/generated/`, `src/compat/resources/` and `src/effect/generated/` are regenerated output — never edit them by hand; CI fails if they drift from `spec/openapi.json`.
141
473
 
142
474
  ### Python lane
143
475
 
@@ -1,4 +1,4 @@
1
- import { c as withOperation, n as generatedOperation } from "./generated-operations-CWhusMPU.mjs";
1
+ import { b as withOperation, n as generatedOperation } from "./generated-operations-BguuMwpw.mjs";
2
2
 
3
3
  //#region src/compat/resources/api-key-revocation.ts
4
4
  const OP_CREATE = generatedOperation("apiKeyRevocation.create");
@@ -1,4 +1,4 @@
1
- import { t as Session } from "./session-DfISYrbs.mjs";
1
+ import { t as Session } from "./session-BISWW6RD.mjs";
2
2
 
3
3
  //#region src/compat/resources/auth/auth.ts
4
4
  /**
@@ -1,4 +1,4 @@
1
- import { a as path, c as withOperation, n as generatedOperation } from "./generated-operations-CWhusMPU.mjs";
1
+ import { b as withOperation, d as path, n as generatedOperation } from "./generated-operations-BguuMwpw.mjs";
2
2
 
3
3
  //#region src/compat/resources/auth-configs.ts
4
4
  const OP_CREATE = generatedOperation("authConfigs.create");
@@ -1,4 +1,4 @@
1
- import { c as withOperation, n as generatedOperation } from "./generated-operations-CWhusMPU.mjs";
1
+ import { b as withOperation, n as generatedOperation } from "./generated-operations-BguuMwpw.mjs";
2
2
 
3
3
  //#region src/compat/resources/org/clanker.ts
4
4
  const OP_CREATE_CLAIM = generatedOperation("org.clanker.createClaim");
@@ -1,5 +1,5 @@
1
- import { c as withOperation, m as mergeHeaders, n as generatedOperation } from "./generated-operations-CWhusMPU.mjs";
2
- import { t as Realtime } from "./realtime-Dsk1QGAl.mjs";
1
+ import { M as mergeHeaders, b as withOperation, n as generatedOperation } from "./generated-operations-BguuMwpw.mjs";
2
+ import { t as Realtime } from "./realtime-BY6LAuSf.mjs";
3
3
 
4
4
  //#region src/compat/resources/cli/cli.ts
5
5
  const OP_CREATE_CODACT_FAILURE = generatedOperation("cli.createCodactFailure");
@@ -1,4 +1,4 @@
1
- import { a as path, c as withOperation, n as generatedOperation } from "./generated-operations-CWhusMPU.mjs";
1
+ import { b as withOperation, d as path, n as generatedOperation } from "./generated-operations-BguuMwpw.mjs";
2
2
 
3
3
  //#region src/compat/resources/connected-accounts.ts
4
4
  const OP_CREATE = generatedOperation("connectedAccounts.create");
@@ -1,5 +1,5 @@
1
- import { c as withOperation, m as mergeHeaders, n as generatedOperation } from "./generated-operations-CWhusMPU.mjs";
2
- import { t as Project } from "./project-D-_r3H1_.mjs";
1
+ import { M as mergeHeaders, b as withOperation, n as generatedOperation } from "./generated-operations-BguuMwpw.mjs";
2
+ import { t as Project } from "./project-B8d4M3Ut.mjs";
3
3
 
4
4
  //#region src/compat/resources/org/consumer/consumer.ts
5
5
  const OP_LIST_CONNECTED_TOOLKITS = generatedOperation("org.consumer.listConnectedToolkits");
@@ -1,4 +1,4 @@
1
- import { c as withOperation, n as generatedOperation } from "./generated-operations-CWhusMPU.mjs";
1
+ import { b as withOperation, n as generatedOperation } from "./generated-operations-BguuMwpw.mjs";
2
2
 
3
3
  //#region src/compat/resources/mcp/custom.ts
4
4
  const OP_CREATE = generatedOperation("mcp.custom.create");
@@ -1,4 +1,4 @@
1
- import { a as path, c as withOperation, n as generatedOperation } from "./generated-operations-CWhusMPU.mjs";
1
+ import { b as withOperation, d as path, n as generatedOperation } from "./generated-operations-BguuMwpw.mjs";
2
2
 
3
3
  //#region src/compat/legacy-options.ts
4
4
  /**
@@ -0,0 +1,8 @@
1
+ import * as Schema from "effect/Schema";
2
+ //#region src/effect/generated/schemas/api-key-revocation/create.d.ts
3
+ /** The 200 response of `POST /api/v3.1/api_key_revocation`, which `client.apiKeyRevocation.create` answers with. */
4
+ declare const ApiKeyRevocationCreateResponse: Schema.StructWithRest<Schema.Struct<{
5
+ readonly received: Schema.Boolean;
6
+ }>, readonly [Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>]>;
7
+ //#endregion
8
+ export { ApiKeyRevocationCreateResponse };
@@ -0,0 +1,8 @@
1
+ import * as Schema from "effect/Schema";
2
+
3
+ //#region src/effect/generated/schemas/api-key-revocation/create.ts
4
+ /** The 200 response of `POST /api/v3.1/api_key_revocation`, which `client.apiKeyRevocation.create` answers with. */
5
+ const ApiKeyRevocationCreateResponse = Schema.StructWithRest(Schema.Struct({ "received": Schema.Boolean.annotate({ "description": "Always true when the request body is valid. The response intentionally does not reveal whether any submitted key matched a record." }) }), [Schema.Record(Schema.String, Schema.Json.annotate({ "expected": "JSON value" }))]);
6
+
7
+ //#endregion
8
+ export { ApiKeyRevocationCreateResponse };
@@ -0,0 +1,56 @@
1
+ import * as Schema from "effect/Schema";
2
+ //#region src/effect/generated/schemas/auth/session/retrieve-info.d.ts
3
+ /** The 200 response of `GET /api/v3.1/auth/session/info`, which `client.auth.session.retrieveInfo` answers with. */
4
+ declare const SessionRetrieveInfoResponse: Schema.StructWithRest<Schema.Struct<{
5
+ readonly project: Schema.Union<readonly [Schema.StructWithRest<Schema.Struct<{
6
+ readonly auto_id: Schema.Number;
7
+ readonly id: Schema.String;
8
+ readonly org_id: Schema.String;
9
+ readonly name: Schema.String;
10
+ readonly email: Schema.String;
11
+ readonly nano_id: Schema.String;
12
+ readonly created_at: Schema.String;
13
+ readonly updated_at: Schema.String;
14
+ readonly webhook_url: Schema.Union<readonly [Schema.String, Schema.Null]>;
15
+ readonly event_webhook_url: Schema.Union<readonly [Schema.String, Schema.Null]>;
16
+ readonly webhook_secret: Schema.Union<readonly [Schema.String, Schema.Null]>;
17
+ readonly triggers_enabled: Schema.Boolean;
18
+ readonly last_subscribed_at: Schema.Union<readonly [Schema.String, Schema.Null]>;
19
+ readonly deleted: Schema.Boolean;
20
+ readonly is_new_webhook: Schema.Boolean;
21
+ readonly webhook_version: Schema.Literals<readonly ["V1", "V2", "V3"]>;
22
+ readonly org: Schema.StructWithRest<Schema.Struct<{
23
+ readonly id: Schema.String;
24
+ readonly name: Schema.String;
25
+ readonly plan: Schema.String;
26
+ }>, readonly [Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>]>;
27
+ }>, readonly [Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>]>, Schema.Null]>;
28
+ readonly api_key: Schema.Union<readonly [Schema.StructWithRest<Schema.Struct<{
29
+ readonly auto_id: Schema.Number;
30
+ readonly id: Schema.String;
31
+ readonly name: Schema.String;
32
+ readonly project_id: Schema.String;
33
+ readonly org_member_id: Schema.String;
34
+ readonly created_at: Schema.String;
35
+ readonly updated_at: Schema.String;
36
+ readonly deleted_at: Schema.Union<readonly [Schema.String, Schema.Null]>;
37
+ readonly key: Schema.String;
38
+ readonly deleted: Schema.Boolean;
39
+ }>, readonly [Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>]>, Schema.Null]>;
40
+ readonly org_member: Schema.StructWithRest<Schema.Struct<{
41
+ readonly id: Schema.String;
42
+ readonly email: Schema.String;
43
+ readonly name: Schema.String;
44
+ readonly role: Schema.String;
45
+ readonly metadata: Schema.StructWithRest<Schema.Struct<{
46
+ readonly prefers_old_dashboard: Schema.optionalKey<Schema.Boolean>;
47
+ readonly onboarding_platform: Schema.optionalKey<Schema.Literals<readonly ["consumer", "developer"]>>;
48
+ readonly seen_flow_consumer: Schema.optionalKey<Schema.Boolean>;
49
+ readonly seen_flow_developer: Schema.optionalKey<Schema.Boolean>;
50
+ readonly seen_flow_cli: Schema.optionalKey<Schema.Boolean>;
51
+ readonly seen_connect_announcement: Schema.optionalKey<Schema.Boolean>;
52
+ }>, readonly [Schema.$Record<Schema.String, Schema.Union<readonly [Schema.String, Schema.Boolean, Schema.Number]>>]>;
53
+ }>, readonly [Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>]>;
54
+ }>, readonly [Schema.$Record<Schema.String, Schema.Codec<Schema.Json, Schema.Json, never, never>>]>;
55
+ //#endregion
56
+ export { SessionRetrieveInfoResponse };