anthropic 2.1.0 → 2.3.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 (421) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +57 -0
  3. data/README.md +2 -2
  4. data/lib/anthropic/client.rb +9 -1
  5. data/lib/anthropic/helpers/bedrock/client.rb +11 -3
  6. data/lib/anthropic/helpers/bedrock/mantle_client.rb +5 -0
  7. data/lib/anthropic/helpers/google_cloud/client.rb +9 -25
  8. data/lib/anthropic/helpers/refusal_fallback.rb +1 -2
  9. data/lib/anthropic/helpers/stainless_helper_header.rb +4 -2
  10. data/lib/anthropic/helpers/threads/beta_message_thread.rb +635 -0
  11. data/lib/anthropic/helpers/tools/runner.rb +79 -11
  12. data/lib/anthropic/helpers/vertex/client.rb +5 -0
  13. data/lib/anthropic/internal/report_page_cursor.rb +2 -2
  14. data/lib/anthropic/internal/tracing.rb +22 -0
  15. data/lib/anthropic/internal/transport/base_client.rb +16 -2
  16. data/lib/anthropic/models/anthropic_beta.rb +9 -0
  17. data/lib/anthropic/models/beta/beta_code_execution_tool_20260120.rb +10 -2
  18. data/lib/anthropic/models/beta/beta_code_execution_tool_result_block_content.rb +5 -1
  19. data/lib/anthropic/models/beta/beta_code_execution_tool_result_block_param_content.rb +1 -1
  20. data/lib/anthropic/models/beta/beta_encrypted_code_execution_result_block.rb +9 -1
  21. data/lib/anthropic/models/beta/beta_encrypted_code_execution_result_block_param.rb +2 -1
  22. data/lib/anthropic/models/beta/beta_message_thread_param.rb +61 -0
  23. data/lib/anthropic/models/beta/beta_response_tool_union.rb +5 -1
  24. data/lib/anthropic/models/beta/beta_skill_params.rb +1 -1
  25. data/lib/anthropic/models/beta/beta_thread_continue_params.rb +29 -0
  26. data/lib/anthropic/models/beta/beta_thread_create_params.rb +21 -0
  27. data/lib/anthropic/models/beta/beta_tool_union.rb +5 -1
  28. data/lib/anthropic/models/beta/environments/beta_self_hosted_work_heartbeat_response.rb +7 -2
  29. data/lib/anthropic/models/beta/environments/beta_self_hosted_work_queue_stats.rb +2 -4
  30. data/lib/anthropic/models/beta/message_count_tokens_params.rb +5 -1
  31. data/lib/anthropic/models/beta/message_create_params.rb +13 -1
  32. data/lib/anthropic/models/beta/messages/batch_create_params.rb +13 -1
  33. data/lib/anthropic/models/beta/organization/analytics/beta_analytics_cost_group.rb +271 -0
  34. data/lib/anthropic/models/beta/organization/analytics/beta_analytics_cost_group_by.rb +40 -0
  35. data/lib/anthropic/models/beta/organization/analytics/beta_analytics_cost_item.rb +57 -0
  36. data/lib/anthropic/models/beta/organization/analytics/beta_analytics_cost_metrics.rb +57 -0
  37. data/lib/anthropic/models/beta/organization/analytics/beta_analytics_cost_order_by.rb +22 -0
  38. data/lib/anthropic/models/beta/organization/analytics/beta_analytics_usage_group.rb +247 -0
  39. data/lib/anthropic/models/beta/organization/analytics/beta_analytics_usage_group_by.rb +38 -0
  40. data/lib/anthropic/models/beta/organization/analytics/beta_analytics_usage_item.rb +57 -0
  41. data/lib/anthropic/models/beta/organization/analytics/beta_analytics_usage_metrics.rb +79 -0
  42. data/lib/anthropic/models/beta/organization/analytics/beta_analytics_usage_order_by.rb +24 -0
  43. data/lib/anthropic/models/beta/organization/analytics/cost_list_params.rb +360 -0
  44. data/lib/anthropic/models/beta/organization/analytics/usage_list_params.rb +353 -0
  45. data/lib/anthropic/models/beta/organization/beta_analytics_actor.rb +81 -0
  46. data/lib/anthropic/models/beta/organization/beta_analytics_actor_type.rb +22 -0
  47. data/lib/anthropic/models/beta/organization/beta_analytics_api_actor.rb +27 -0
  48. data/lib/anthropic/models/beta/organization/beta_analytics_federated_actor.rb +42 -0
  49. data/lib/anthropic/models/beta/organization/beta_analytics_federated_actor_aws_provider.rb +35 -0
  50. data/lib/anthropic/models/beta/organization/beta_analytics_federated_actor_azure_provider.rb +27 -0
  51. data/lib/anthropic/models/beta/organization/beta_analytics_federated_actor_gcp_provider.rb +27 -0
  52. data/lib/anthropic/models/beta/organization/beta_analytics_federated_actor_oidc_provider.rb +27 -0
  53. data/lib/anthropic/models/beta/organization/beta_analytics_federated_actor_provider.rb +72 -0
  54. data/lib/anthropic/models/beta/organization/beta_analytics_grouped_cost_type.rb +21 -0
  55. data/lib/anthropic/models/beta/organization/beta_analytics_report_user_actor.rb +65 -0
  56. data/lib/anthropic/models/beta/organization/beta_analytics_service_account_actor.rb +27 -0
  57. data/lib/anthropic/models/beta/organization/beta_analytics_service_tier.rb +23 -0
  58. data/lib/anthropic/models/beta/organization/beta_analytics_speed.rb +19 -0
  59. data/lib/anthropic/models/beta/organization/beta_analytics_time_bucket_width.rb +20 -0
  60. data/lib/anthropic/models/beta/organization/beta_analytics_usage_cost_inference_geo.rb +19 -0
  61. data/lib/anthropic/models/beta/organization/beta_analytics_usage_cost_product_filter.rb +34 -0
  62. data/lib/anthropic/models/beta/organization/beta_analytics_usage_cost_sort_order.rb +19 -0
  63. data/lib/anthropic/models/beta/organization/beta_claude_tag_default_setting_source.rb +21 -0
  64. data/lib/anthropic/models/beta/organization/beta_claude_tag_guest_policy.rb +63 -0
  65. data/lib/anthropic/models/beta/organization/beta_claude_tag_guest_policy_allow.rb +21 -0
  66. data/lib/anthropic/models/beta/organization/beta_claude_tag_guest_policy_channel_only.rb +21 -0
  67. data/lib/anthropic/models/beta/organization/beta_claude_tag_guest_policy_restrict.rb +21 -0
  68. data/lib/anthropic/models/beta/organization/beta_claude_tag_setting_source.rb +87 -0
  69. data/lib/anthropic/models/beta/organization/beta_claude_tag_setting_sources.rb +72 -0
  70. data/lib/anthropic/models/beta/organization/beta_claude_tag_settings.rb +70 -0
  71. data/lib/anthropic/models/beta/organization/beta_claude_tag_settings_create.rb +67 -0
  72. data/lib/anthropic/models/beta/organization/beta_claude_tag_settings_update.rb +67 -0
  73. data/lib/anthropic/models/beta/organization/beta_claude_tag_slack_channel_identifiers.rb +37 -0
  74. data/lib/anthropic/models/beta/organization/beta_claude_tag_slack_channel_setting_source.rb +29 -0
  75. data/lib/anthropic/models/beta/organization/beta_claude_tag_slack_default_setting_source.rb +22 -0
  76. data/lib/anthropic/models/beta/organization/beta_claude_tag_slack_grid_channel_setting_source.rb +31 -0
  77. data/lib/anthropic/models/beta/organization/beta_claude_tag_slack_parent_channel_setting_source.rb +30 -0
  78. data/lib/anthropic/models/beta/organization/beta_claude_tag_slack_workspace_identifiers.rb +23 -0
  79. data/lib/anthropic/models/beta/organization/beta_claude_tag_slack_workspace_setting_source.rb +29 -0
  80. data/lib/anthropic/models/beta/organization/beta_external_key.rb +3 -3
  81. data/lib/anthropic/models/beta/organization/beta_organization_rate_limit.rb +2 -1
  82. data/lib/anthropic/models/beta/organization/beta_plugin.rb +12 -6
  83. data/lib/anthropic/models/beta/organization/beta_plugin_content_scan.rb +11 -5
  84. data/lib/anthropic/models/beta/organization/claude_tag/beta_claude_tag_bundle.rb +66 -0
  85. data/lib/anthropic/models/beta/organization/claude_tag/beta_claude_tag_deleted_slack_channel.rb +32 -0
  86. data/lib/anthropic/models/beta/organization/claude_tag/beta_claude_tag_slack_channel.rb +87 -0
  87. data/lib/anthropic/models/beta/organization/claude_tag/beta_claude_tag_slack_workspace.rb +86 -0
  88. data/lib/anthropic/models/beta/organization/claude_tag/bundle_list_params.rb +49 -0
  89. data/lib/anthropic/models/beta/organization/claude_tag/bundle_retrieve_params.rb +41 -0
  90. data/lib/anthropic/models/beta/organization/claude_tag/bundles/beta_claude_tag_bundle_target.rb +76 -0
  91. data/lib/anthropic/models/beta/organization/claude_tag/bundles/beta_claude_tag_bundle_target_create.rb +70 -0
  92. data/lib/anthropic/models/beta/organization/claude_tag/bundles/beta_claude_tag_deleted_bundle_target.rb +34 -0
  93. data/lib/anthropic/models/beta/organization/claude_tag/bundles/beta_claude_tag_slack_channel_bundle_target.rb +57 -0
  94. data/lib/anthropic/models/beta/organization/claude_tag/bundles/beta_claude_tag_slack_channel_bundle_target_create.rb +38 -0
  95. data/lib/anthropic/models/beta/organization/claude_tag/bundles/beta_claude_tag_slack_workspace_bundle_target.rb +57 -0
  96. data/lib/anthropic/models/beta/organization/claude_tag/bundles/beta_claude_tag_slack_workspace_bundle_target_create.rb +38 -0
  97. data/lib/anthropic/models/beta/organization/claude_tag/bundles/target_create_params.rb +43 -0
  98. data/lib/anthropic/models/beta/organization/claude_tag/bundles/target_delete_params.rb +53 -0
  99. data/lib/anthropic/models/beta/organization/claude_tag/bundles/target_list_params.rb +59 -0
  100. data/lib/anthropic/models/beta/organization/claude_tag/bundles/target_retrieve_params.rb +53 -0
  101. data/lib/anthropic/models/beta/organization/claude_tag/slack_channel_create_params.rb +50 -0
  102. data/lib/anthropic/models/beta/organization/claude_tag/slack_channel_delete_params.rb +41 -0
  103. data/lib/anthropic/models/beta/organization/claude_tag/slack_channel_list_params.rb +79 -0
  104. data/lib/anthropic/models/beta/organization/claude_tag/slack_channel_retrieve_params.rb +52 -0
  105. data/lib/anthropic/models/beta/organization/claude_tag/slack_channel_update_params.rb +49 -0
  106. data/lib/anthropic/models/beta/organization/claude_tag/slack_workspace_list_params.rb +70 -0
  107. data/lib/anthropic/models/beta/organization/claude_tag/slack_workspace_retrieve_params.rb +52 -0
  108. data/lib/anthropic/models/beta/organization/claude_tag/slack_workspace_update_params.rb +49 -0
  109. data/lib/anthropic/models/beta/organization/workspaces/beta_workspace_rate_limit.rb +2 -1
  110. data/lib/anthropic/models/code_execution_tool_20260120.rb +10 -2
  111. data/lib/anthropic/models/code_execution_tool_result_block_content.rb +5 -1
  112. data/lib/anthropic/models/code_execution_tool_result_block_param_content.rb +1 -1
  113. data/lib/anthropic/models/encrypted_code_execution_result_block.rb +9 -1
  114. data/lib/anthropic/models/encrypted_code_execution_result_block_param.rb +2 -1
  115. data/lib/anthropic/models/message_count_tokens_tool.rb +5 -1
  116. data/lib/anthropic/models/organization/external_key.rb +3 -3
  117. data/lib/anthropic/models/organization/organization_rate_limit.rb +2 -1
  118. data/lib/anthropic/models/organization/workspaces/workspace_rate_limit.rb +2 -1
  119. data/lib/anthropic/models/skill_params.rb +1 -1
  120. data/lib/anthropic/models/tool_union.rb +5 -1
  121. data/lib/anthropic/resources/beta/agents/versions.rb +2 -1
  122. data/lib/anthropic/resources/beta/agents.rb +10 -5
  123. data/lib/anthropic/resources/beta/deployment_runs.rb +4 -2
  124. data/lib/anthropic/resources/beta/deployments.rb +16 -8
  125. data/lib/anthropic/resources/beta/dreams.rb +10 -5
  126. data/lib/anthropic/resources/beta/environments/work.rb +16 -8
  127. data/lib/anthropic/resources/beta/environments.rb +12 -6
  128. data/lib/anthropic/resources/beta/files.rb +10 -5
  129. data/lib/anthropic/resources/beta/memory_stores/memories.rb +10 -5
  130. data/lib/anthropic/resources/beta/memory_stores/memory_versions.rb +6 -11
  131. data/lib/anthropic/resources/beta/memory_stores.rb +12 -6
  132. data/lib/anthropic/resources/beta/messages/batches.rb +12 -6
  133. data/lib/anthropic/resources/beta/messages.rb +84 -7
  134. data/lib/anthropic/resources/beta/models.rb +4 -2
  135. data/lib/anthropic/resources/beta/organization/analytics/apps/chat/projects.rb +2 -1
  136. data/lib/anthropic/resources/beta/organization/analytics/artifacts.rb +2 -1
  137. data/lib/anthropic/resources/beta/organization/analytics/connectors.rb +2 -1
  138. data/lib/anthropic/resources/beta/organization/analytics/cost.rb +176 -0
  139. data/lib/anthropic/resources/beta/organization/analytics/cost_report.rb +14 -6
  140. data/lib/anthropic/resources/beta/organization/analytics/plugins.rb +2 -1
  141. data/lib/anthropic/resources/beta/organization/analytics/skills.rb +2 -1
  142. data/lib/anthropic/resources/beta/organization/analytics/summaries.rb +2 -1
  143. data/lib/anthropic/resources/beta/organization/analytics/usage.rb +177 -0
  144. data/lib/anthropic/resources/beta/organization/analytics/usage_report.rb +11 -3
  145. data/lib/anthropic/resources/beta/organization/analytics/user_cost_report.rb +17 -9
  146. data/lib/anthropic/resources/beta/organization/analytics/user_usage_report.rb +17 -9
  147. data/lib/anthropic/resources/beta/organization/analytics/users.rb +2 -1
  148. data/lib/anthropic/resources/beta/organization/analytics.rb +8 -0
  149. data/lib/anthropic/resources/beta/organization/api_keys.rb +6 -3
  150. data/lib/anthropic/resources/beta/organization/claude_tag/bundles/targets.rb +204 -0
  151. data/lib/anthropic/resources/beta/organization/claude_tag/bundles.rb +102 -0
  152. data/lib/anthropic/resources/beta/organization/claude_tag/slack_channels.rb +263 -0
  153. data/lib/anthropic/resources/beta/organization/claude_tag/slack_workspaces.rb +162 -0
  154. data/lib/anthropic/resources/beta/organization/claude_tag.rb +31 -0
  155. data/lib/anthropic/resources/beta/organization/compliance_settings.rb +4 -2
  156. data/lib/anthropic/resources/beta/organization/external_keys.rb +12 -6
  157. data/lib/anthropic/resources/beta/organization/federation/issuers.rb +10 -5
  158. data/lib/anthropic/resources/beta/organization/federation/rules/workspaces.rb +6 -3
  159. data/lib/anthropic/resources/beta/organization/federation/rules.rb +10 -5
  160. data/lib/anthropic/resources/beta/organization/invites.rb +8 -4
  161. data/lib/anthropic/resources/beta/organization/plugin_marketplaces.rb +16 -11
  162. data/lib/anthropic/resources/beta/organization/plugins/installation_settings.rb +6 -11
  163. data/lib/anthropic/resources/beta/organization/plugins/shares.rb +2 -1
  164. data/lib/anthropic/resources/beta/organization/plugins/versions.rb +8 -4
  165. data/lib/anthropic/resources/beta/organization/plugins.rb +22 -14
  166. data/lib/anthropic/resources/beta/organization/rate_limits.rb +2 -1
  167. data/lib/anthropic/resources/beta/organization/rbac_groups/members.rb +6 -3
  168. data/lib/anthropic/resources/beta/organization/rbac_groups.rb +10 -5
  169. data/lib/anthropic/resources/beta/organization/rbac_roles/permissions.rb +2 -1
  170. data/lib/anthropic/resources/beta/organization/rbac_roles.rb +4 -2
  171. data/lib/anthropic/resources/beta/organization/service_accounts/workspaces.rb +6 -3
  172. data/lib/anthropic/resources/beta/organization/service_accounts.rb +10 -5
  173. data/lib/anthropic/resources/beta/organization/spend_limits/effective.rb +2 -1
  174. data/lib/anthropic/resources/beta/organization/spend_limits/increase_requests.rb +8 -4
  175. data/lib/anthropic/resources/beta/organization/spend_limits.rb +8 -4
  176. data/lib/anthropic/resources/beta/organization/telemetry_destinations/workspaces.rb +6 -3
  177. data/lib/anthropic/resources/beta/organization/telemetry_destinations.rb +12 -6
  178. data/lib/anthropic/resources/beta/organization/users.rb +8 -4
  179. data/lib/anthropic/resources/beta/organization/webhooks.rb +12 -9
  180. data/lib/anthropic/resources/beta/organization/workspaces/members.rb +10 -5
  181. data/lib/anthropic/resources/beta/organization/workspaces/rate_limits.rb +4 -6
  182. data/lib/anthropic/resources/beta/organization/workspaces/service_accounts.rb +10 -5
  183. data/lib/anthropic/resources/beta/organization/workspaces.rb +10 -5
  184. data/lib/anthropic/resources/beta/organization.rb +6 -1
  185. data/lib/anthropic/resources/beta/sessions/events.rb +6 -3
  186. data/lib/anthropic/resources/beta/sessions/resources.rb +10 -5
  187. data/lib/anthropic/resources/beta/sessions/threads/events.rb +4 -2
  188. data/lib/anthropic/resources/beta/sessions/threads.rb +6 -3
  189. data/lib/anthropic/resources/beta/sessions.rb +12 -6
  190. data/lib/anthropic/resources/beta/skills/versions.rb +10 -5
  191. data/lib/anthropic/resources/beta/skills.rb +8 -4
  192. data/lib/anthropic/resources/beta/tunnels/certificates.rb +8 -4
  193. data/lib/anthropic/resources/beta/tunnels.rb +12 -6
  194. data/lib/anthropic/resources/beta/user_profiles/action_urls.rb +2 -1
  195. data/lib/anthropic/resources/beta/user_profiles.rb +12 -6
  196. data/lib/anthropic/resources/beta/vaults/credentials.rb +14 -7
  197. data/lib/anthropic/resources/beta/vaults.rb +12 -6
  198. data/lib/anthropic/version.rb +1 -1
  199. data/lib/anthropic.rb +83 -0
  200. data/rbi/anthropic/client.rbi +5 -0
  201. data/rbi/anthropic/helpers/bedrock/client.rbi +5 -0
  202. data/rbi/anthropic/helpers/bedrock/mantle_client.rbi +5 -0
  203. data/rbi/anthropic/helpers/google_cloud/client.rbi +0 -4
  204. data/rbi/anthropic/helpers/threads/beta_message_thread.rbi +100 -0
  205. data/rbi/anthropic/helpers/vertex/client.rbi +5 -0
  206. data/rbi/anthropic/internal/tracing.rbi +32 -0
  207. data/rbi/anthropic/internal/transport/base_client.rbi +5 -1
  208. data/rbi/anthropic/internal/type/base_page.rbi +2 -0
  209. data/rbi/anthropic/internal/type/base_stream.rbi +2 -0
  210. data/rbi/anthropic/internal/type/request_parameters.rbi +4 -0
  211. data/rbi/anthropic/models/anthropic_beta.rbi +15 -0
  212. data/rbi/anthropic/models/beta/beta_code_execution_tool_20260120.rbi +10 -2
  213. data/rbi/anthropic/models/beta/beta_encrypted_code_execution_result_block.rbi +9 -1
  214. data/rbi/anthropic/models/beta/beta_encrypted_code_execution_result_block_param.rbi +2 -1
  215. data/rbi/anthropic/models/beta/beta_message_thread_param.rbi +80 -0
  216. data/rbi/anthropic/models/beta/beta_skill_params.rbi +1 -1
  217. data/rbi/anthropic/models/beta/beta_thread_continue_params.rbi +43 -0
  218. data/rbi/anthropic/models/beta/beta_thread_create_params.rbi +31 -0
  219. data/rbi/anthropic/models/beta/environments/beta_self_hosted_work_heartbeat_response.rbi +4 -2
  220. data/rbi/anthropic/models/beta/environments/beta_self_hosted_work_queue_stats.rbi +2 -4
  221. data/rbi/anthropic/models/beta/message_create_params.rbi +37 -0
  222. data/rbi/anthropic/models/beta/messages/batch_create_params.rbi +37 -0
  223. data/rbi/anthropic/models/beta/organization/analytics/beta_analytics_cost_group.rbi +439 -0
  224. data/rbi/anthropic/models/beta/organization/analytics/beta_analytics_cost_group_by.rbi +140 -0
  225. data/rbi/anthropic/models/beta/organization/analytics/beta_analytics_cost_item.rbi +110 -0
  226. data/rbi/anthropic/models/beta/organization/analytics/beta_analytics_cost_metrics.rbi +79 -0
  227. data/rbi/anthropic/models/beta/organization/analytics/beta_analytics_cost_order_by.rbi +50 -0
  228. data/rbi/anthropic/models/beta/organization/analytics/beta_analytics_usage_group.rbi +399 -0
  229. data/rbi/anthropic/models/beta/organization/analytics/beta_analytics_usage_group_by.rbi +130 -0
  230. data/rbi/anthropic/models/beta/organization/analytics/beta_analytics_usage_item.rbi +110 -0
  231. data/rbi/anthropic/models/beta/organization/analytics/beta_analytics_usage_metrics.rbi +120 -0
  232. data/rbi/anthropic/models/beta/organization/analytics/beta_analytics_usage_order_by.rbi +60 -0
  233. data/rbi/anthropic/models/beta/organization/analytics/cost_list_params.rbi +624 -0
  234. data/rbi/anthropic/models/beta/organization/analytics/usage_list_params.rbi +612 -0
  235. data/rbi/anthropic/models/beta/organization/beta_analytics_actor.rbi +134 -0
  236. data/rbi/anthropic/models/beta/organization/beta_analytics_actor_type.rbi +54 -0
  237. data/rbi/anthropic/models/beta/organization/beta_analytics_api_actor.rbi +40 -0
  238. data/rbi/anthropic/models/beta/organization/beta_analytics_federated_actor.rbi +75 -0
  239. data/rbi/anthropic/models/beta/organization/beta_analytics_federated_actor_aws_provider.rbi +54 -0
  240. data/rbi/anthropic/models/beta/organization/beta_analytics_federated_actor_azure_provider.rbi +42 -0
  241. data/rbi/anthropic/models/beta/organization/beta_analytics_federated_actor_gcp_provider.rbi +42 -0
  242. data/rbi/anthropic/models/beta/organization/beta_analytics_federated_actor_oidc_provider.rbi +42 -0
  243. data/rbi/anthropic/models/beta/organization/beta_analytics_federated_actor_provider.rbi +107 -0
  244. data/rbi/anthropic/models/beta/organization/beta_analytics_grouped_cost_type.rbi +53 -0
  245. data/rbi/anthropic/models/beta/organization/beta_analytics_report_user_actor.rbi +94 -0
  246. data/rbi/anthropic/models/beta/organization/beta_analytics_service_account_actor.rbi +42 -0
  247. data/rbi/anthropic/models/beta/organization/beta_analytics_service_tier.rbi +63 -0
  248. data/rbi/anthropic/models/beta/organization/beta_analytics_speed.rbi +40 -0
  249. data/rbi/anthropic/models/beta/organization/beta_analytics_time_bucket_width.rbi +48 -0
  250. data/rbi/anthropic/models/beta/organization/beta_analytics_usage_cost_inference_geo.rbi +43 -0
  251. data/rbi/anthropic/models/beta/organization/beta_analytics_usage_cost_product_filter.rbi +98 -0
  252. data/rbi/anthropic/models/beta/organization/beta_analytics_usage_cost_sort_order.rbi +43 -0
  253. data/rbi/anthropic/models/beta/organization/beta_claude_tag_default_setting_source.rbi +31 -0
  254. data/rbi/anthropic/models/beta/organization/beta_claude_tag_guest_policy.rbi +87 -0
  255. data/rbi/anthropic/models/beta/organization/beta_claude_tag_guest_policy_allow.rbi +31 -0
  256. data/rbi/anthropic/models/beta/organization/beta_claude_tag_guest_policy_channel_only.rbi +31 -0
  257. data/rbi/anthropic/models/beta/organization/beta_claude_tag_guest_policy_restrict.rbi +31 -0
  258. data/rbi/anthropic/models/beta/organization/beta_claude_tag_setting_source.rbi +115 -0
  259. data/rbi/anthropic/models/beta/organization/beta_claude_tag_setting_sources.rbi +178 -0
  260. data/rbi/anthropic/models/beta/organization/beta_claude_tag_settings.rbi +108 -0
  261. data/rbi/anthropic/models/beta/organization/beta_claude_tag_settings_create.rbi +110 -0
  262. data/rbi/anthropic/models/beta/organization/beta_claude_tag_settings_update.rbi +110 -0
  263. data/rbi/anthropic/models/beta/organization/beta_claude_tag_slack_channel_identifiers.rbi +50 -0
  264. data/rbi/anthropic/models/beta/organization/beta_claude_tag_slack_channel_setting_source.rbi +43 -0
  265. data/rbi/anthropic/models/beta/organization/beta_claude_tag_slack_default_setting_source.rbi +32 -0
  266. data/rbi/anthropic/models/beta/organization/beta_claude_tag_slack_grid_channel_setting_source.rbi +67 -0
  267. data/rbi/anthropic/models/beta/organization/beta_claude_tag_slack_parent_channel_setting_source.rbi +44 -0
  268. data/rbi/anthropic/models/beta/organization/beta_claude_tag_slack_workspace_identifiers.rbi +36 -0
  269. data/rbi/anthropic/models/beta/organization/beta_claude_tag_slack_workspace_setting_source.rbi +43 -0
  270. data/rbi/anthropic/models/beta/organization/beta_external_key.rbi +4 -4
  271. data/rbi/anthropic/models/beta/organization/beta_organization_rate_limit.rbi +4 -2
  272. data/rbi/anthropic/models/beta/organization/beta_plugin.rbi +20 -8
  273. data/rbi/anthropic/models/beta/organization/beta_plugin_content_scan.rbi +15 -6
  274. data/rbi/anthropic/models/beta/organization/claude_tag/beta_claude_tag_bundle.rbi +87 -0
  275. data/rbi/anthropic/models/beta/organization/claude_tag/beta_claude_tag_deleted_slack_channel.rbi +41 -0
  276. data/rbi/anthropic/models/beta/organization/claude_tag/beta_claude_tag_slack_channel.rbi +154 -0
  277. data/rbi/anthropic/models/beta/organization/claude_tag/beta_claude_tag_slack_workspace.rbi +151 -0
  278. data/rbi/anthropic/models/beta/organization/claude_tag/bundle_list_params.rbi +92 -0
  279. data/rbi/anthropic/models/beta/organization/claude_tag/bundle_retrieve_params.rbi +78 -0
  280. data/rbi/anthropic/models/beta/organization/claude_tag/bundles/beta_claude_tag_bundle_target.rbi +102 -0
  281. data/rbi/anthropic/models/beta/organization/claude_tag/bundles/beta_claude_tag_bundle_target_create.rbi +92 -0
  282. data/rbi/anthropic/models/beta/organization/claude_tag/bundles/beta_claude_tag_deleted_bundle_target.rbi +43 -0
  283. data/rbi/anthropic/models/beta/organization/claude_tag/bundles/beta_claude_tag_slack_channel_bundle_target.rbi +78 -0
  284. data/rbi/anthropic/models/beta/organization/claude_tag/bundles/beta_claude_tag_slack_channel_bundle_target_create.rbi +51 -0
  285. data/rbi/anthropic/models/beta/organization/claude_tag/bundles/beta_claude_tag_slack_workspace_bundle_target.rbi +78 -0
  286. data/rbi/anthropic/models/beta/organization/claude_tag/bundles/beta_claude_tag_slack_workspace_bundle_target_create.rbi +51 -0
  287. data/rbi/anthropic/models/beta/organization/claude_tag/bundles/target_create_params.rbi +82 -0
  288. data/rbi/anthropic/models/beta/organization/claude_tag/bundles/target_delete_params.rbi +94 -0
  289. data/rbi/anthropic/models/beta/organization/claude_tag/bundles/target_list_params.rbi +104 -0
  290. data/rbi/anthropic/models/beta/organization/claude_tag/bundles/target_retrieve_params.rbi +94 -0
  291. data/rbi/anthropic/models/beta/organization/claude_tag/slack_channel_create_params.rbi +118 -0
  292. data/rbi/anthropic/models/beta/organization/claude_tag/slack_channel_delete_params.rbi +78 -0
  293. data/rbi/anthropic/models/beta/organization/claude_tag/slack_channel_list_params.rbi +134 -0
  294. data/rbi/anthropic/models/beta/organization/claude_tag/slack_channel_retrieve_params.rbi +95 -0
  295. data/rbi/anthropic/models/beta/organization/claude_tag/slack_channel_update_params.rbi +100 -0
  296. data/rbi/anthropic/models/beta/organization/claude_tag/slack_workspace_list_params.rbi +124 -0
  297. data/rbi/anthropic/models/beta/organization/claude_tag/slack_workspace_retrieve_params.rbi +95 -0
  298. data/rbi/anthropic/models/beta/organization/claude_tag/slack_workspace_update_params.rbi +100 -0
  299. data/rbi/anthropic/models/beta/organization/workspaces/beta_workspace_rate_limit.rbi +4 -2
  300. data/rbi/anthropic/models/code_execution_tool_20260120.rbi +10 -2
  301. data/rbi/anthropic/models/encrypted_code_execution_result_block.rbi +9 -1
  302. data/rbi/anthropic/models/encrypted_code_execution_result_block_param.rbi +2 -1
  303. data/rbi/anthropic/models/organization/external_key.rbi +4 -4
  304. data/rbi/anthropic/models/organization/organization_rate_limit.rbi +4 -2
  305. data/rbi/anthropic/models/organization/workspaces/workspace_rate_limit.rbi +4 -2
  306. data/rbi/anthropic/models/skill_params.rbi +1 -1
  307. data/rbi/anthropic/resources/beta/messages.rbi +191 -0
  308. data/rbi/anthropic/resources/beta/organization/analytics/cost.rbi +245 -0
  309. data/rbi/anthropic/resources/beta/organization/analytics/cost_report.rbi +12 -5
  310. data/rbi/anthropic/resources/beta/organization/analytics/usage.rbi +240 -0
  311. data/rbi/anthropic/resources/beta/organization/analytics/usage_report.rbi +9 -2
  312. data/rbi/anthropic/resources/beta/organization/analytics/user_cost_report.rbi +14 -7
  313. data/rbi/anthropic/resources/beta/organization/analytics/user_usage_report.rbi +14 -7
  314. data/rbi/anthropic/resources/beta/organization/analytics.rbi +10 -0
  315. data/rbi/anthropic/resources/beta/organization/claude_tag/bundles/targets.rbi +140 -0
  316. data/rbi/anthropic/resources/beta/organization/claude_tag/bundles.rbi +75 -0
  317. data/rbi/anthropic/resources/beta/organization/claude_tag/slack_channels.rbi +203 -0
  318. data/rbi/anthropic/resources/beta/organization/claude_tag/slack_workspaces.rbi +123 -0
  319. data/rbi/anthropic/resources/beta/organization/claude_tag.rbi +37 -0
  320. data/rbi/anthropic/resources/beta/organization/plugin_marketplaces.rbi +6 -6
  321. data/rbi/anthropic/resources/beta/organization/plugins.rbi +12 -9
  322. data/rbi/anthropic/resources/beta/organization.rbi +3 -0
  323. data/rbi/lib/anthropic/helpers/stainless_helper_header.rbi +2 -0
  324. data/sig/anthropic/client.rbs +2 -0
  325. data/sig/anthropic/helpers/bedrock/client.rbs +2 -0
  326. data/sig/anthropic/helpers/google_cloud/client.rbs +0 -2
  327. data/sig/anthropic/helpers/threads/beta_message_thread.rbs +40 -0
  328. data/sig/anthropic/helpers/tools/runner.rbs +40 -0
  329. data/sig/anthropic/helpers/vertex/client.rbs +2 -0
  330. data/sig/anthropic/internal/tracing.rbs +16 -0
  331. data/sig/anthropic/internal/transport/base_client.rbs +3 -0
  332. data/sig/anthropic/internal/type/request_parameters.rbs +2 -0
  333. data/sig/anthropic/models/anthropic_beta.rbs +6 -0
  334. data/sig/anthropic/models/beta/beta_message_thread_param.rbs +40 -0
  335. data/sig/anthropic/models/beta/beta_thread_continue_params.rbs +20 -0
  336. data/sig/anthropic/models/beta/beta_thread_create_params.rbs +17 -0
  337. data/sig/anthropic/models/beta/message_create_params.rbs +5 -0
  338. data/sig/anthropic/models/beta/messages/batch_create_params.rbs +5 -0
  339. data/sig/anthropic/models/beta/organization/analytics/beta_analytics_cost_group.rbs +126 -0
  340. data/sig/anthropic/models/beta/organization/analytics/beta_analytics_cost_group_by.rbs +60 -0
  341. data/sig/anthropic/models/beta/organization/analytics/beta_analytics_cost_item.rbs +41 -0
  342. data/sig/anthropic/models/beta/organization/analytics/beta_analytics_cost_metrics.rbs +41 -0
  343. data/sig/anthropic/models/beta/organization/analytics/beta_analytics_cost_order_by.rbs +21 -0
  344. data/sig/anthropic/models/beta/organization/analytics/beta_analytics_usage_group.rbs +116 -0
  345. data/sig/anthropic/models/beta/organization/analytics/beta_analytics_usage_group_by.rbs +56 -0
  346. data/sig/anthropic/models/beta/organization/analytics/beta_analytics_usage_item.rbs +41 -0
  347. data/sig/anthropic/models/beta/organization/analytics/beta_analytics_usage_metrics.rbs +56 -0
  348. data/sig/anthropic/models/beta/organization/analytics/beta_analytics_usage_order_by.rbs +28 -0
  349. data/sig/anthropic/models/beta/organization/analytics/cost_list_params.rbs +188 -0
  350. data/sig/anthropic/models/beta/organization/analytics/usage_list_params.rbs +188 -0
  351. data/sig/anthropic/models/beta/organization/beta_analytics_actor.rbs +67 -0
  352. data/sig/anthropic/models/beta/organization/beta_analytics_actor_type.rbs +21 -0
  353. data/sig/anthropic/models/beta/organization/beta_analytics_api_actor.rbs +19 -0
  354. data/sig/anthropic/models/beta/organization/beta_analytics_federated_actor.rbs +34 -0
  355. data/sig/anthropic/models/beta/organization/beta_analytics_federated_actor_aws_provider.rbs +30 -0
  356. data/sig/anthropic/models/beta/organization/beta_analytics_federated_actor_azure_provider.rbs +20 -0
  357. data/sig/anthropic/models/beta/organization/beta_analytics_federated_actor_gcp_provider.rbs +20 -0
  358. data/sig/anthropic/models/beta/organization/beta_analytics_federated_actor_oidc_provider.rbs +20 -0
  359. data/sig/anthropic/models/beta/organization/beta_analytics_federated_actor_provider.rbs +60 -0
  360. data/sig/anthropic/models/beta/organization/beta_analytics_grouped_cost_type.rbs +21 -0
  361. data/sig/anthropic/models/beta/organization/beta_analytics_report_user_actor.rbs +44 -0
  362. data/sig/anthropic/models/beta/organization/beta_analytics_service_account_actor.rbs +26 -0
  363. data/sig/anthropic/models/beta/organization/beta_analytics_service_tier.rbs +28 -0
  364. data/sig/anthropic/models/beta/organization/beta_analytics_speed.rbs +18 -0
  365. data/sig/anthropic/models/beta/organization/beta_analytics_time_bucket_width.rbs +19 -0
  366. data/sig/anthropic/models/beta/organization/beta_analytics_usage_cost_inference_geo.rbs +18 -0
  367. data/sig/anthropic/models/beta/organization/beta_analytics_usage_cost_product_filter.rbs +40 -0
  368. data/sig/anthropic/models/beta/organization/beta_analytics_usage_cost_sort_order.rbs +18 -0
  369. data/sig/anthropic/models/beta/organization/beta_claude_tag_default_setting_source.rbs +17 -0
  370. data/sig/anthropic/models/beta/organization/beta_claude_tag_guest_policy.rbs +45 -0
  371. data/sig/anthropic/models/beta/organization/beta_claude_tag_guest_policy_allow.rbs +17 -0
  372. data/sig/anthropic/models/beta/organization/beta_claude_tag_guest_policy_channel_only.rbs +17 -0
  373. data/sig/anthropic/models/beta/organization/beta_claude_tag_guest_policy_restrict.rbs +17 -0
  374. data/sig/anthropic/models/beta/organization/beta_claude_tag_setting_source.rbs +73 -0
  375. data/sig/anthropic/models/beta/organization/beta_claude_tag_setting_sources.rbs +44 -0
  376. data/sig/anthropic/models/beta/organization/beta_claude_tag_settings.rbs +44 -0
  377. data/sig/anthropic/models/beta/organization/beta_claude_tag_settings_create.rbs +44 -0
  378. data/sig/anthropic/models/beta/organization/beta_claude_tag_settings_update.rbs +44 -0
  379. data/sig/anthropic/models/beta/organization/beta_claude_tag_slack_channel_identifiers.rbs +20 -0
  380. data/sig/anthropic/models/beta/organization/beta_claude_tag_slack_channel_setting_source.rbs +23 -0
  381. data/sig/anthropic/models/beta/organization/beta_claude_tag_slack_default_setting_source.rbs +18 -0
  382. data/sig/anthropic/models/beta/organization/beta_claude_tag_slack_grid_channel_setting_source.rbs +29 -0
  383. data/sig/anthropic/models/beta/organization/beta_claude_tag_slack_parent_channel_setting_source.rbs +26 -0
  384. data/sig/anthropic/models/beta/organization/beta_claude_tag_slack_workspace_identifiers.rbs +18 -0
  385. data/sig/anthropic/models/beta/organization/beta_claude_tag_slack_workspace_setting_source.rbs +23 -0
  386. data/sig/anthropic/models/beta/organization/claude_tag/beta_claude_tag_bundle.rbs +51 -0
  387. data/sig/anthropic/models/beta/organization/claude_tag/beta_claude_tag_deleted_slack_channel.rbs +22 -0
  388. data/sig/anthropic/models/beta/organization/claude_tag/beta_claude_tag_slack_channel.rbs +56 -0
  389. data/sig/anthropic/models/beta/organization/claude_tag/beta_claude_tag_slack_workspace.rbs +56 -0
  390. data/sig/anthropic/models/beta/organization/claude_tag/bundle_list_params.rbs +50 -0
  391. data/sig/anthropic/models/beta/organization/claude_tag/bundle_retrieve_params.rbs +41 -0
  392. data/sig/anthropic/models/beta/organization/claude_tag/bundles/beta_claude_tag_bundle_target.rbs +54 -0
  393. data/sig/anthropic/models/beta/organization/claude_tag/bundles/beta_claude_tag_bundle_target_create.rbs +48 -0
  394. data/sig/anthropic/models/beta/organization/claude_tag/bundles/beta_claude_tag_deleted_bundle_target.rbs +27 -0
  395. data/sig/anthropic/models/beta/organization/claude_tag/bundles/beta_claude_tag_slack_channel_bundle_target.rbs +43 -0
  396. data/sig/anthropic/models/beta/organization/claude_tag/bundles/beta_claude_tag_slack_channel_bundle_target_create.rbs +27 -0
  397. data/sig/anthropic/models/beta/organization/claude_tag/bundles/beta_claude_tag_slack_workspace_bundle_target.rbs +43 -0
  398. data/sig/anthropic/models/beta/organization/claude_tag/bundles/beta_claude_tag_slack_workspace_bundle_target_create.rbs +30 -0
  399. data/sig/anthropic/models/beta/organization/claude_tag/bundles/target_create_params.rbs +43 -0
  400. data/sig/anthropic/models/beta/organization/claude_tag/bundles/target_delete_params.rbs +48 -0
  401. data/sig/anthropic/models/beta/organization/claude_tag/bundles/target_list_params.rbs +57 -0
  402. data/sig/anthropic/models/beta/organization/claude_tag/bundles/target_retrieve_params.rbs +48 -0
  403. data/sig/anthropic/models/beta/organization/claude_tag/slack_channel_create_params.rbs +50 -0
  404. data/sig/anthropic/models/beta/organization/claude_tag/slack_channel_delete_params.rbs +38 -0
  405. data/sig/anthropic/models/beta/organization/claude_tag/slack_channel_list_params.rbs +69 -0
  406. data/sig/anthropic/models/beta/organization/claude_tag/slack_channel_retrieve_params.rbs +48 -0
  407. data/sig/anthropic/models/beta/organization/claude_tag/slack_channel_update_params.rbs +46 -0
  408. data/sig/anthropic/models/beta/organization/claude_tag/slack_workspace_list_params.rbs +64 -0
  409. data/sig/anthropic/models/beta/organization/claude_tag/slack_workspace_retrieve_params.rbs +48 -0
  410. data/sig/anthropic/models/beta/organization/claude_tag/slack_workspace_update_params.rbs +46 -0
  411. data/sig/anthropic/resources/beta/messages.rbs +33 -0
  412. data/sig/anthropic/resources/beta/organization/analytics/cost.rbs +46 -0
  413. data/sig/anthropic/resources/beta/organization/analytics/usage.rbs +46 -0
  414. data/sig/anthropic/resources/beta/organization/analytics.rbs +4 -0
  415. data/sig/anthropic/resources/beta/organization/claude_tag/bundles/targets.rbs +44 -0
  416. data/sig/anthropic/resources/beta/organization/claude_tag/bundles.rbs +28 -0
  417. data/sig/anthropic/resources/beta/organization/claude_tag/slack_channels.rbs +50 -0
  418. data/sig/anthropic/resources/beta/organization/claude_tag/slack_workspaces.rbs +36 -0
  419. data/sig/anthropic/resources/beta/organization/claude_tag.rbs +17 -0
  420. data/sig/anthropic/resources/beta/organization.rbs +2 -0
  421. metadata +252 -2
@@ -0,0 +1,140 @@
1
+ # typed: strong
2
+
3
+ module Anthropic
4
+ module Resources
5
+ class Beta
6
+ class Organization
7
+ class ClaudeTag
8
+ class Bundles
9
+ class Targets
10
+ # Attach a Bundle to a Slack channel or a Slack workspace. A Bundle attached to a
11
+ # workspace can be used in the workspace and in every channel in it. Attaching a
12
+ # Bundle to a channel or workspace it is already attached to returns the existing
13
+ # Bundle Target. The channel or workspace must be set up: attaching never sets a
14
+ # channel up. A group direct message takes no Bundle and returns 400.
15
+ sig do
16
+ params(
17
+ bundle_id: String,
18
+ target:
19
+ T.any(
20
+ Anthropic::Beta::Organization::ClaudeTag::Bundles::BetaClaudeTagSlackChannelBundleTargetCreate::OrHash,
21
+ Anthropic::Beta::Organization::ClaudeTag::Bundles::BetaClaudeTagSlackWorkspaceBundleTargetCreate::OrHash
22
+ ),
23
+ betas:
24
+ T::Array[T.any(Anthropic::AnthropicBeta::OrSymbol, String)],
25
+ request_options: Anthropic::RequestOptions::OrHash
26
+ ).returns(
27
+ Anthropic::Beta::Organization::ClaudeTag::Bundles::BetaClaudeTagBundleTarget::Variants
28
+ )
29
+ end
30
+ def create(
31
+ # Path param: The Bundle's identifier, starting with `capp_`.
32
+ bundle_id,
33
+ # Body param
34
+ target:,
35
+ # Header param: This endpoint is in beta: requests must send
36
+ # `experimental-claude-tag-2026-10-21` in this header.
37
+ betas: nil,
38
+ request_options: {}
39
+ )
40
+ end
41
+
42
+ # Get one Bundle Target. Returns 404 when `target_id` is the identifier of another
43
+ # Bundle's Bundle Target, or the Bundle Target was detached.
44
+ sig do
45
+ params(
46
+ target_id: String,
47
+ bundle_id: String,
48
+ betas:
49
+ T::Array[T.any(Anthropic::AnthropicBeta::OrSymbol, String)],
50
+ request_options: Anthropic::RequestOptions::OrHash
51
+ ).returns(
52
+ Anthropic::Beta::Organization::ClaudeTag::Bundles::BetaClaudeTagBundleTarget::Variants
53
+ )
54
+ end
55
+ def retrieve(
56
+ # Path param: The Bundle Target's identifier, starting with `btgt_`. Attach Bundle
57
+ # and List Bundle Targets return it. It is never the identifier of the channel or
58
+ # workspace.
59
+ target_id,
60
+ # Path param: The Bundle's identifier, starting with `capp_`.
61
+ bundle_id:,
62
+ # Header param: This endpoint is in beta: requests must send
63
+ # `experimental-claude-tag-2026-10-21` in this header.
64
+ betas: nil,
65
+ request_options: {}
66
+ )
67
+ end
68
+
69
+ # List the Slack channels and Slack workspaces a Bundle is attached to, newest
70
+ # first by `created_at`. Only channels and workspaces the organization owns are
71
+ # listed; a Bundle that is attached to anything else has no Bundle Target for it.
72
+ sig do
73
+ params(
74
+ bundle_id: String,
75
+ limit: Integer,
76
+ page: String,
77
+ betas:
78
+ T::Array[T.any(Anthropic::AnthropicBeta::OrSymbol, String)],
79
+ request_options: Anthropic::RequestOptions::OrHash
80
+ ).returns(
81
+ Anthropic::Internal::PageCursor[
82
+ Anthropic::Beta::Organization::ClaudeTag::Bundles::BetaClaudeTagBundleTarget::Variants
83
+ ]
84
+ )
85
+ end
86
+ def list(
87
+ # Path param: The Bundle's identifier, starting with `capp_`.
88
+ bundle_id,
89
+ # Query param: Number of items to return per page, between 1 and 100. Defaults
90
+ # to 20.
91
+ limit: nil,
92
+ # Query param: Opaque cursor from a previous response's `next_page`.
93
+ page: nil,
94
+ # Header param: This endpoint is in beta: requests must send
95
+ # `experimental-claude-tag-2026-10-21` in this header.
96
+ betas: nil,
97
+ request_options: {}
98
+ )
99
+ end
100
+
101
+ # Detach a Bundle from a Slack channel or a Slack workspace. A repeated detach
102
+ # returns 404.
103
+ sig do
104
+ params(
105
+ target_id: String,
106
+ bundle_id: String,
107
+ betas:
108
+ T::Array[T.any(Anthropic::AnthropicBeta::OrSymbol, String)],
109
+ request_options: Anthropic::RequestOptions::OrHash
110
+ ).returns(
111
+ Anthropic::Beta::Organization::ClaudeTag::Bundles::BetaClaudeTagDeletedBundleTarget
112
+ )
113
+ end
114
+ def delete(
115
+ # Path param: The Bundle Target's identifier, starting with `btgt_`. Attach Bundle
116
+ # and List Bundle Targets return it. It is never the identifier of the channel or
117
+ # workspace.
118
+ target_id,
119
+ # Path param: The Bundle's identifier, starting with `capp_`.
120
+ bundle_id:,
121
+ # Header param: This endpoint is in beta: requests must send
122
+ # `experimental-claude-tag-2026-10-21` in this header.
123
+ betas: nil,
124
+ request_options: {}
125
+ )
126
+ end
127
+
128
+ # @api private
129
+ sig do
130
+ params(client: Anthropic::Client).returns(T.attached_class)
131
+ end
132
+ def self.new(client:)
133
+ end
134
+ end
135
+ end
136
+ end
137
+ end
138
+ end
139
+ end
140
+ end
@@ -0,0 +1,75 @@
1
+ # typed: strong
2
+
3
+ module Anthropic
4
+ module Resources
5
+ class Beta
6
+ class Organization
7
+ class ClaudeTag
8
+ class Bundles
9
+ sig do
10
+ returns(
11
+ Anthropic::Resources::Beta::Organization::ClaudeTag::Bundles::Targets
12
+ )
13
+ end
14
+ attr_reader :targets
15
+
16
+ # Get one Bundle. What the Bundle grants (connectors, repositories and
17
+ # credentials) is never returned.
18
+ sig do
19
+ params(
20
+ bundle_id: String,
21
+ betas:
22
+ T::Array[T.any(Anthropic::AnthropicBeta::OrSymbol, String)],
23
+ request_options: Anthropic::RequestOptions::OrHash
24
+ ).returns(
25
+ Anthropic::Beta::Organization::ClaudeTag::BetaClaudeTagBundle
26
+ )
27
+ end
28
+ def retrieve(
29
+ # The Bundle's identifier, starting with `capp_`.
30
+ bundle_id,
31
+ # This endpoint is in beta: requests must send
32
+ # `experimental-claude-tag-2026-10-21` in this header.
33
+ betas: nil,
34
+ request_options: {}
35
+ )
36
+ end
37
+
38
+ # List the organization's Bundles, newest first by `created_at`. A Bundle that
39
+ # Claude Tag manages for itself is not listed.
40
+ sig do
41
+ params(
42
+ limit: Integer,
43
+ page: String,
44
+ betas:
45
+ T::Array[T.any(Anthropic::AnthropicBeta::OrSymbol, String)],
46
+ request_options: Anthropic::RequestOptions::OrHash
47
+ ).returns(
48
+ Anthropic::Internal::PageCursor[
49
+ Anthropic::Beta::Organization::ClaudeTag::BetaClaudeTagBundle
50
+ ]
51
+ )
52
+ end
53
+ def list(
54
+ # Query param: Number of items to return per page, between 1 and 100. Defaults
55
+ # to 20.
56
+ limit: nil,
57
+ # Query param: Opaque cursor from a previous response's `next_page`.
58
+ page: nil,
59
+ # Header param: This endpoint is in beta: requests must send
60
+ # `experimental-claude-tag-2026-10-21` in this header.
61
+ betas: nil,
62
+ request_options: {}
63
+ )
64
+ end
65
+
66
+ # @api private
67
+ sig { params(client: Anthropic::Client).returns(T.attached_class) }
68
+ def self.new(client:)
69
+ end
70
+ end
71
+ end
72
+ end
73
+ end
74
+ end
75
+ end
@@ -0,0 +1,203 @@
1
+ # typed: strong
2
+
3
+ module Anthropic
4
+ module Resources
5
+ class Beta
6
+ class Organization
7
+ class ClaudeTag
8
+ class SlackChannels
9
+ # Set a Slack channel up for Claude Tag and return it with its identifier. If the
10
+ # channel is already set up, whether in claude.ai, by Claude's first use in it or
11
+ # by an earlier request, the existing channel is returned, so the request can be
12
+ # repeated. `settings`, when sent, is applied as an update applies it. Before a
13
+ # channel is set up, Claude's Slack app confirms with Slack that the channel is in
14
+ # the workspace, is not archived and is visible to the app; a channel that fails
15
+ # the confirmation returns 404. Setting the channel up and applying `settings` are
16
+ # two steps: when the second is refused, the response is the refusal, the channel
17
+ # stays set up with every setting unset, and the error's
18
+ # `details.slack_channel_id` holds the channel's identifier.
19
+ sig do
20
+ params(
21
+ slack:
22
+ Anthropic::Beta::Organization::BetaClaudeTagSlackChannelIdentifiers::OrHash,
23
+ settings:
24
+ Anthropic::Beta::Organization::BetaClaudeTagSettingsCreate::OrHash,
25
+ betas:
26
+ T::Array[T.any(Anthropic::AnthropicBeta::OrSymbol, String)],
27
+ request_options: Anthropic::RequestOptions::OrHash
28
+ ).returns(
29
+ Anthropic::Beta::Organization::ClaudeTag::BetaClaudeTagSlackChannel
30
+ )
31
+ end
32
+ def create(
33
+ # Body param: Slack's own identifiers for the channel to set up. The organization
34
+ # must own the workspace.
35
+ slack:,
36
+ # Body param: Settings to store on the channel, applied as Update Slack Channel
37
+ # applies them.
38
+ settings: nil,
39
+ # Header param: This endpoint is in beta: requests must send
40
+ # `experimental-claude-tag-2026-10-21` in this header.
41
+ betas: nil,
42
+ request_options: {}
43
+ )
44
+ end
45
+
46
+ # Get one Slack channel and its settings. By default `settings` holds what the
47
+ # channel itself stores: a setting that is null there is not set on the channel
48
+ # and is inherited. With `include_inherited=true`, `settings` holds what applies
49
+ # in the channel once the settings levels above it are taken into account, and the
50
+ # request fails with 503 rather than resolve against a settings level that could
51
+ # not be read. Either way `sources` names the settings level each value comes
52
+ # from, so a caller tells the channel's own value from an inherited one by its
53
+ # source, not by whether it is null.
54
+ sig do
55
+ params(
56
+ id: String,
57
+ include_inherited: T::Boolean,
58
+ betas:
59
+ T::Array[T.any(Anthropic::AnthropicBeta::OrSymbol, String)],
60
+ request_options: Anthropic::RequestOptions::OrHash
61
+ ).returns(
62
+ Anthropic::Beta::Organization::ClaudeTag::BetaClaudeTagSlackChannel
63
+ )
64
+ end
65
+ def retrieve(
66
+ # Path param: The channel's identifier, starting with `slch_`.
67
+ id,
68
+ # Query param: When `true`, `settings` holds what applies in the channel once the
69
+ # settings levels above it are taken into account, and every member of `sources`
70
+ # names the level a value comes from. When `false` or left out, `settings` holds
71
+ # what the channel itself stores.
72
+ include_inherited: nil,
73
+ # Header param: This endpoint is in beta: requests must send
74
+ # `experimental-claude-tag-2026-10-21` in this header.
75
+ betas: nil,
76
+ request_options: {}
77
+ )
78
+ end
79
+
80
+ # Change the settings a Slack channel stores. The update is partial: a setting
81
+ # left out is unchanged, and a setting sent as null is cleared, so the channel
82
+ # inherits it. If any value is refused, no setting in the request is stored. A
83
+ # group direct message takes no settings and returns 400.
84
+ sig do
85
+ params(
86
+ id: String,
87
+ settings:
88
+ Anthropic::Beta::Organization::BetaClaudeTagSettingsUpdate::OrHash,
89
+ betas:
90
+ T::Array[T.any(Anthropic::AnthropicBeta::OrSymbol, String)],
91
+ request_options: Anthropic::RequestOptions::OrHash
92
+ ).returns(
93
+ Anthropic::Beta::Organization::ClaudeTag::BetaClaudeTagSlackChannel
94
+ )
95
+ end
96
+ def update(
97
+ # Path param: The channel's identifier, starting with `slch_`.
98
+ id,
99
+ # Body param: The settings to change.
100
+ settings:,
101
+ # Header param: This endpoint is in beta: requests must send
102
+ # `experimental-claude-tag-2026-10-21` in this header.
103
+ betas: nil,
104
+ request_options: {}
105
+ )
106
+ end
107
+
108
+ # List the set-up Slack channels of one Slack workspace, newest first by
109
+ # `created_at`. A channel that is not set up is not listed: Slack holds the full
110
+ # list of a workspace's channels. Pass `slack_channel_id` as well to look one
111
+ # channel up by its Slack identifiers: `data` then holds that channel, or is empty
112
+ # when it is not set up, and `limit` and `page` are ignored. A workspace that the
113
+ # organization owns only through a Slack Enterprise Grid returns 404 until it is
114
+ # set up. With `include_inherited=true` each channel's `settings` holds what
115
+ # applies in it, and the request fails with 503 rather than resolve against a
116
+ # settings level that could not be read. A `page` cursor resumes only a request
117
+ # with the same `include_inherited`.
118
+ sig do
119
+ params(
120
+ slack_workspace_id: String,
121
+ include_inherited: T::Boolean,
122
+ limit: Integer,
123
+ page: String,
124
+ slack_channel_id: String,
125
+ betas:
126
+ T::Array[T.any(Anthropic::AnthropicBeta::OrSymbol, String)],
127
+ request_options: Anthropic::RequestOptions::OrHash
128
+ ).returns(
129
+ Anthropic::Internal::PageCursor[
130
+ Anthropic::Beta::Organization::ClaudeTag::BetaClaudeTagSlackChannel
131
+ ]
132
+ )
133
+ end
134
+ def list(
135
+ # Query param: The Slack workspace whose channels to list: Slack's identifier for
136
+ # it, as in the channel object's `slack.workspace_id`, not the workspace object's
137
+ # `id`.
138
+ slack_workspace_id:,
139
+ # Query param: When `true`, `settings` holds what applies in each channel once the
140
+ # settings levels above it are taken into account, and every member of `sources`
141
+ # names the level a value comes from. When `false` or left out, `settings` holds
142
+ # what each channel itself stores.
143
+ include_inherited: nil,
144
+ # Query param: Number of items to return per page, between 1 and 100. Defaults
145
+ # to 20.
146
+ limit: nil,
147
+ # Query param: Opaque cursor from a previous response's `next_page`.
148
+ page: nil,
149
+ # Query param: Slack's identifier for one channel of that workspace, as in the
150
+ # channel object's `slack.channel_id`. It is not the channel object's `id`. With
151
+ # it `data` holds that channel alone, or nothing when the channel is not set up.
152
+ slack_channel_id: nil,
153
+ # Header param: This endpoint is in beta: requests must send
154
+ # `experimental-claude-tag-2026-10-21` in this header.
155
+ betas: nil,
156
+ request_options: {}
157
+ )
158
+ end
159
+
160
+ # Remove a Slack channel from Claude Tag. This deletes the channel's stored
161
+ # settings and its Bundle Targets at once, and then, in the background, the
162
+ # channel's sessions and their transcripts, its memory, its routines and the
163
+ # artifacts published from it. None of it can be restored. The channel in Slack
164
+ # and its messages are unchanged. The request is refused with 400 and
165
+ # `error.details.error_code` `slack_channel_enabled` while `enabled` resolves to
166
+ # `true` for the channel, as a read with `include_inherited=true` returns it: set
167
+ # `enabled` to `false` on the channel first. This guards against removing a
168
+ # channel in use by mistake; it is not a way to keep Claude out, because the
169
+ # removal deletes the channel's own `enabled: false` with its other settings,
170
+ # after which the channel inherits again and Claude's next use of it can set it up
171
+ # anew with a new identifier. The identifier returns 404 as soon as the request
172
+ # returns, so a repeated removal returns 404. A group direct message returns 400,
173
+ # and so does a channel that holds configuration this API does not manage.
174
+ sig do
175
+ params(
176
+ id: String,
177
+ betas:
178
+ T::Array[T.any(Anthropic::AnthropicBeta::OrSymbol, String)],
179
+ request_options: Anthropic::RequestOptions::OrHash
180
+ ).returns(
181
+ Anthropic::Beta::Organization::ClaudeTag::BetaClaudeTagDeletedSlackChannel
182
+ )
183
+ end
184
+ def delete(
185
+ # The channel's identifier, starting with `slch_`.
186
+ id,
187
+ # This endpoint is in beta: requests must send
188
+ # `experimental-claude-tag-2026-10-21` in this header.
189
+ betas: nil,
190
+ request_options: {}
191
+ )
192
+ end
193
+
194
+ # @api private
195
+ sig { params(client: Anthropic::Client).returns(T.attached_class) }
196
+ def self.new(client:)
197
+ end
198
+ end
199
+ end
200
+ end
201
+ end
202
+ end
203
+ end
@@ -0,0 +1,123 @@
1
+ # typed: strong
2
+
3
+ module Anthropic
4
+ module Resources
5
+ class Beta
6
+ class Organization
7
+ class ClaudeTag
8
+ class SlackWorkspaces
9
+ # Get one Slack workspace and its settings. By default `settings` holds what the
10
+ # workspace itself stores: a setting that is null there is not set on the
11
+ # workspace and is inherited. With `include_inherited=true`, `settings` holds what
12
+ # applies in the workspace once the organization's Slack defaults are taken into
13
+ # account, and the request fails with 503 rather than resolve against a settings
14
+ # level that could not be read. Either way `sources` names the settings level each
15
+ # value comes from.
16
+ sig do
17
+ params(
18
+ id: String,
19
+ include_inherited: T::Boolean,
20
+ betas:
21
+ T::Array[T.any(Anthropic::AnthropicBeta::OrSymbol, String)],
22
+ request_options: Anthropic::RequestOptions::OrHash
23
+ ).returns(
24
+ Anthropic::Beta::Organization::ClaudeTag::BetaClaudeTagSlackWorkspace
25
+ )
26
+ end
27
+ def retrieve(
28
+ # Path param: The workspace's identifier, starting with `slws_`.
29
+ id,
30
+ # Query param: When `true`, `settings` holds what applies in the workspace once
31
+ # the organization's Slack defaults are taken into account, and every member of
32
+ # `sources` names the level a value comes from. When `false` or left out,
33
+ # `settings` holds what the workspace itself stores.
34
+ include_inherited: nil,
35
+ # Header param: This endpoint is in beta: requests must send
36
+ # `experimental-claude-tag-2026-10-21` in this header.
37
+ betas: nil,
38
+ request_options: {}
39
+ )
40
+ end
41
+
42
+ # Change the settings a Slack workspace stores. The update is partial: a setting
43
+ # left out is unchanged, and a setting sent as null is cleared, so the workspace
44
+ # inherits it. If any value is refused, no setting in the request is stored.
45
+ sig do
46
+ params(
47
+ id: String,
48
+ settings:
49
+ Anthropic::Beta::Organization::BetaClaudeTagSettingsUpdate::OrHash,
50
+ betas:
51
+ T::Array[T.any(Anthropic::AnthropicBeta::OrSymbol, String)],
52
+ request_options: Anthropic::RequestOptions::OrHash
53
+ ).returns(
54
+ Anthropic::Beta::Organization::ClaudeTag::BetaClaudeTagSlackWorkspace
55
+ )
56
+ end
57
+ def update(
58
+ # Path param: The workspace's identifier, starting with `slws_`.
59
+ id,
60
+ # Body param: The settings to change.
61
+ settings:,
62
+ # Header param: This endpoint is in beta: requests must send
63
+ # `experimental-claude-tag-2026-10-21` in this header.
64
+ betas: nil,
65
+ request_options: {}
66
+ )
67
+ end
68
+
69
+ # List the set-up Slack workspaces the organization owns, newest first by
70
+ # `created_at`. Pass `slack_workspace_id` to look one workspace up by its Slack
71
+ # identifier: `data` then holds that workspace, or is empty when it is not set up.
72
+ # A workspace of a Slack Enterprise Grid the organization has connected returns
73
+ # 404 until it is set up. With `include_inherited=true` each workspace's
74
+ # `settings` holds what applies in it, and the request fails with 503 rather than
75
+ # resolve against a settings level that could not be read. A `page` cursor resumes
76
+ # only a request with the same `include_inherited`.
77
+ sig do
78
+ params(
79
+ include_inherited: T::Boolean,
80
+ limit: Integer,
81
+ page: String,
82
+ slack_workspace_id: String,
83
+ betas:
84
+ T::Array[T.any(Anthropic::AnthropicBeta::OrSymbol, String)],
85
+ request_options: Anthropic::RequestOptions::OrHash
86
+ ).returns(
87
+ Anthropic::Internal::PageCursor[
88
+ Anthropic::Beta::Organization::ClaudeTag::BetaClaudeTagSlackWorkspace
89
+ ]
90
+ )
91
+ end
92
+ def list(
93
+ # Query param: When `true`, `settings` holds what applies in each workspace once
94
+ # the organization's Slack defaults are taken into account, and every member of
95
+ # `sources` names the level a value comes from. When `false` or left out,
96
+ # `settings` holds what each workspace itself stores.
97
+ include_inherited: nil,
98
+ # Query param: Number of items to return per page, between 1 and 100. Defaults
99
+ # to 20.
100
+ limit: nil,
101
+ # Query param: Opaque cursor from a previous response's `next_page`.
102
+ page: nil,
103
+ # Query param: Slack's identifier for one workspace, as in the workspace object's
104
+ # `slack.workspace_id`, not its `id`. With it `data` holds that workspace alone,
105
+ # or nothing when it is not set up.
106
+ slack_workspace_id: nil,
107
+ # Header param: This endpoint is in beta: requests must send
108
+ # `experimental-claude-tag-2026-10-21` in this header.
109
+ betas: nil,
110
+ request_options: {}
111
+ )
112
+ end
113
+
114
+ # @api private
115
+ sig { params(client: Anthropic::Client).returns(T.attached_class) }
116
+ def self.new(client:)
117
+ end
118
+ end
119
+ end
120
+ end
121
+ end
122
+ end
123
+ end
@@ -0,0 +1,37 @@
1
+ # typed: strong
2
+
3
+ module Anthropic
4
+ module Resources
5
+ class Beta
6
+ class Organization
7
+ class ClaudeTag
8
+ sig do
9
+ returns(
10
+ Anthropic::Resources::Beta::Organization::ClaudeTag::SlackChannels
11
+ )
12
+ end
13
+ attr_reader :slack_channels
14
+
15
+ sig do
16
+ returns(
17
+ Anthropic::Resources::Beta::Organization::ClaudeTag::SlackWorkspaces
18
+ )
19
+ end
20
+ attr_reader :slack_workspaces
21
+
22
+ sig do
23
+ returns(
24
+ Anthropic::Resources::Beta::Organization::ClaudeTag::Bundles
25
+ )
26
+ end
27
+ attr_reader :bundles
28
+
29
+ # @api private
30
+ sig { params(client: Anthropic::Client).returns(T.attached_class) }
31
+ def self.new(client:)
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
@@ -165,9 +165,9 @@ module Anthropic
165
165
  # part, with some files left out. An archive that cannot be read as a marketplace
166
166
  # is reported, not refused: the response is a report with `valid: false`. Plugin
167
167
  # sources outside the marketplace are fetched anonymously from GitHub, so a
168
- # private one is reported as not found; a source on any other host is not fetched
169
- # here, and the report notes that it will be checked when the marketplace actually
170
- # synchronizes.
168
+ # private one is reported as not found or as needing a GitHub sign-in; a source on
169
+ # any other host is not fetched here, and the report notes that it will be checked
170
+ # when the marketplace actually synchronizes.
171
171
  #
172
172
  # Nothing is recorded on the Compliance API activity feed.
173
173
  #
@@ -220,9 +220,9 @@ module Anthropic
220
220
  # part, with some files left out. A repository that is missing, private, or has no
221
221
  # such branch or commit is reported, not refused: the response is a report with
222
222
  # `valid: false`. Plugin sources outside the marketplace are fetched anonymously
223
- # from GitHub, so a private one is reported as not found; a source on any other
224
- # host is not fetched here, and the report notes that it will be checked when the
225
- # marketplace actually synchronizes.
223
+ # from GitHub, so a private one is reported as not found or as needing a GitHub
224
+ # sign-in; a source on any other host is not fetched here, and the report notes
225
+ # that it will be checked when the marketplace actually synchronizes.
226
226
  #
227
227
  # Nothing is recorded on the Compliance API activity feed.
228
228
  #
@@ -141,15 +141,18 @@ module Anthropic
141
141
  # already served to pin it without changing what is served. No new version is
142
142
  # created.
143
143
  #
144
- # When the organization has content scanning enabled, a version whose scan is
145
- # still running is refused with a 409 (`error_code` `scan_pending`; retry once the
146
- # scan finishes) and one whose scan failed, errored or reached no verdict with a
147
- # 400 (`scan_failed`; a `warn` is accepted). When the Plugin is in the
148
- # organization's library marketplace, a version other than the one served is also
149
- # refused with a 409 when one of its skills has a name that an organization skill
150
- # (one an administrator uploaded for the whole organization in claude.ai) has
151
- # since taken: `error_code` `skill_name_taken`, with that name in
152
- # `details.skill_name`. A member-owned Plugin cannot be updated here (403).
144
+ # When the organization has content scanning enabled, a version whose
145
+ # `content_scan.status` is `processing` is refused with a 409 (`error_code`
146
+ # `scan_pending`; retry once the scan finishes). A version whose
147
+ # `content_scan.status` is `errored`, or whose `content_scan.assessment` is `fail`
148
+ # or `unknown`, is refused with a 400 (`error_code` `scan_failed`); a `warn` is
149
+ # accepted. If the scan outcome cannot be read at that moment, the request fails
150
+ # with a retryable 503 instead. When the Plugin is in the organization's library
151
+ # marketplace, a version other than the one served is also refused with a 409 when
152
+ # one of its skills has a name that an organization skill (one an administrator
153
+ # uploaded for the whole organization in claude.ai) has since taken: `error_code`
154
+ # `skill_name_taken`, with that name in `details.skill_name`. A member-owned
155
+ # Plugin cannot be updated here (403).
153
156
  #
154
157
  # This endpoint does not write installation settings; they are written at
155
158
  # `/v1/organizations/plugins/{plugin_id}/installation_settings/{target}`.
@@ -65,6 +65,9 @@ module Anthropic
65
65
  sig { returns(Anthropic::Resources::Beta::Organization::Webhooks) }
66
66
  attr_reader :webhooks
67
67
 
68
+ sig { returns(Anthropic::Resources::Beta::Organization::ClaudeTag) }
69
+ attr_reader :claude_tag
70
+
68
71
  # Retrieve information about the organization associated with the authenticated
69
72
  # API key.
70
73
  sig do
@@ -9,6 +9,8 @@ module Anthropic
9
9
 
10
10
  FALLBACK_REFUSAL_MIDDLEWARE = T.let("fallback-refusal-middleware", String)
11
11
 
12
+ MESSAGE_THREAD = T.let("message-thread", String)
13
+
12
14
  class << self
13
15
  sig { params(headers: T::Hash[T.any(String, Symbol), T.untyped], value: String).returns(String) }
14
16
  def merged_value(headers, value)
@@ -33,6 +33,8 @@ module Anthropic
33
33
  private def api_key_auth: -> ::Hash[String, String]
34
34
 
35
35
  private def bearer_auth: -> ::Hash[String, String]
36
+ def message_threads?: -> bool
37
+
36
38
  private def resolve_default_credentials?: -> bool
37
39
 
38
40
  def timeout_overridden?: -> bool