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,612 @@
1
+ # typed: strong
2
+
3
+ module Anthropic
4
+ module Models
5
+ module Beta
6
+ module Organization
7
+ module Analytics
8
+ class UsageListParams < Anthropic::Internal::Type::BaseModel
9
+ extend Anthropic::Internal::Type::RequestParameters::Converter
10
+ include Anthropic::Internal::Type::RequestParameters
11
+
12
+ OrHash =
13
+ T.type_alias do
14
+ T.any(
15
+ Anthropic::Beta::Organization::Analytics::UsageListParams,
16
+ Anthropic::Internal::AnyHash
17
+ )
18
+ end
19
+
20
+ # Start of range, inclusive. RFC 3339 tz-aware. Must be within the last 365 days
21
+ # and no earlier than 2026-01-01T00:00:00Z.
22
+ sig { returns(Time) }
23
+ attr_accessor :starting_at
24
+
25
+ # Filter to usage attributed to specific identities, by tagged ID: a `user_...`,
26
+ # `svac_...` (service account), or `apikey_...` ID. An `apikey_` entry matches
27
+ # only usage attributed to the key itself, not usage on that key attributed to a
28
+ # user or service account (use `api_key_ids[]` for every request a key
29
+ # authenticated). Federated identities have no tagged ID; select them with
30
+ # `actor_types[]`. Use `group_by[]=actor` to break out per-identity values.
31
+ sig { returns(T.nilable(T::Array[String])) }
32
+ attr_accessor :actor_ids
33
+
34
+ # Filter to usage attributed to specific kinds of identity. Use
35
+ # `group_by[]=actor_type` to break out per-kind values.
36
+ sig do
37
+ returns(
38
+ T.nilable(
39
+ T::Array[
40
+ Anthropic::Beta::Organization::BetaAnalyticsActorType::OrSymbol
41
+ ]
42
+ )
43
+ )
44
+ end
45
+ attr_accessor :actor_types
46
+
47
+ # Filter to usage incurred by sessions of specific Claude Managed Agents agents.
48
+ # Use `group_by[]=agent_id` to break out per-agent values. Claude Developer
49
+ # Platform organizations only.
50
+ sig { returns(T.nilable(T::Array[String])) }
51
+ attr_accessor :agent_ids
52
+
53
+ # Filter to usage authenticated by specific API keys, by tagged API key ID
54
+ # (`apikey_...`), whichever identity the usage is attributed to. Include an empty
55
+ # entry (`api_key_ids[]=`) to also match usage that no API key authenticated. Use
56
+ # `group_by[]=api_key_id` to break out per-key values; usage without a key has a
57
+ # null `api_key_id`. Claude Developer Platform organizations only.
58
+ sig { returns(T.nilable(T::Array[String])) }
59
+ attr_accessor :api_key_ids
60
+
61
+ # Filter to Claude Tag (Claude in Slack) usage in specific spend categories. Usage
62
+ # with no category never matches. `dm` usage is reported under the user's product
63
+ # rather than `claude_tag`, so combining this filter with `products[]=claude_tag`
64
+ # excludes it. Use `group_by[]=claude_tag_category` to break out per-category
65
+ # values.
66
+ sig do
67
+ returns(
68
+ T.nilable(
69
+ T::Array[
70
+ Anthropic::Beta::Organization::BetaAnalyticsClaudeTagCategory::OrSymbol
71
+ ]
72
+ )
73
+ )
74
+ end
75
+ attr_accessor :claude_tag_categories
76
+
77
+ # Filter to Claude Tag (Claude in Slack) usage attributed to specific Slack users,
78
+ # by Slack user ID (for example `U0123ABCDEF`), not claude.ai user ID. Usage that
79
+ # is not Claude Tag, and Claude Tag usage not attributed to a single user, never
80
+ # matches. Use `group_by[]=claude_tag_user_id` to break out per-user values.
81
+ sig { returns(T.nilable(T::Array[String])) }
82
+ attr_accessor :claude_tag_user_ids
83
+
84
+ # Filter to specific context-window pricing tiers. Use `group_by[]=context_window`
85
+ # to break out per-tier values.
86
+ sig do
87
+ returns(
88
+ T.nilable(
89
+ T::Array[
90
+ Anthropic::Beta::Organization::BetaAnalyticsContextWindow::OrSymbol
91
+ ]
92
+ )
93
+ )
94
+ end
95
+ attr_accessor :context_windows
96
+
97
+ # Filter to usage incurred by Claude Managed Agents sessions that specific
98
+ # deployments started. Use `group_by[]=deployment_id` to break out per-deployment
99
+ # values. Claude Developer Platform organizations only.
100
+ sig { returns(T.nilable(T::Array[String])) }
101
+ attr_accessor :deployment_ids
102
+
103
+ # End of range, exclusive. Required when `time_bucket_width` is set. Without
104
+ # `time_bucket_width`, defaults to the earlier of now and `starting_at` + 31 days.
105
+ # The range may span at most 31 days.
106
+ sig { returns(T.nilable(Time)) }
107
+ attr_accessor :ending_at
108
+
109
+ # Filter to usage incurred by Claude Managed Agents sessions that ran in specific
110
+ # environments. Use `group_by[]=environment_id` to break out per-environment
111
+ # values. Claude Developer Platform organizations only.
112
+ sig { returns(T.nilable(T::Array[String])) }
113
+ attr_accessor :environment_ids
114
+
115
+ # If true, omit rows whose `actor` is a `user_actor` with `deleted: true`.
116
+ # Requires `group_by[]=actor`. Rows for other actor types, and rows whose `actor`
117
+ # is null, are always kept. A page may contain fewer than `limit` rows; use
118
+ # `has_more` and `next_page` to paginate as usual.
119
+ sig { returns(T.nilable(T::Boolean)) }
120
+ attr_reader :exclude_deleted_users
121
+
122
+ sig { params(exclude_deleted_users: T::Boolean).void }
123
+ attr_writer :exclude_deleted_users
124
+
125
+ # Dimensions to break usage out by (at most 5): one row per combination of their
126
+ # values with usage in the range (and per time bucket, when `time_bucket_width` is
127
+ # set), every combination returned across pages rather than a capped top set. When
128
+ # omitted, a single row aggregates the whole range.
129
+ sig do
130
+ returns(
131
+ T.nilable(
132
+ T::Array[
133
+ Anthropic::Beta::Organization::Analytics::BetaAnalyticsUsageGroupBy::OrSymbol
134
+ ]
135
+ )
136
+ )
137
+ end
138
+ attr_accessor :group_by
139
+
140
+ # Filter to specific inference regions. `not_available` matches rows where the
141
+ # region is unset. Use `group_by[]=inference_geo` to break out per-region values.
142
+ sig do
143
+ returns(
144
+ T.nilable(
145
+ T::Array[
146
+ Anthropic::Beta::Organization::BetaAnalyticsInferenceGeoFilter::OrSymbol
147
+ ]
148
+ )
149
+ )
150
+ end
151
+ attr_accessor :inference_geos
152
+
153
+ # Number of rows per page (1-1000, default 20). `cost_type`/`token_type` fan-out
154
+ # rows (cost endpoint only) do not count toward this limit, so `data` can exceed
155
+ # it.
156
+ sig { returns(T.nilable(Integer)) }
157
+ attr_reader :limit
158
+
159
+ sig { params(limit: Integer).void }
160
+ attr_writer :limit
161
+
162
+ # Models to include. Defaults to all models. Use `group_by[]=model` to break out
163
+ # per-model values.
164
+ sig { returns(T.nilable(T::Array[String])) }
165
+ attr_accessor :models
166
+
167
+ # Sort direction of the `order_by` metric, or of the time buckets when `order_by`
168
+ # is `time` and `time_bucket_width` is set. Defaults to `desc`.
169
+ sig do
170
+ returns(
171
+ T.nilable(
172
+ Anthropic::Beta::Organization::BetaAnalyticsUsageCostSortOrder::OrSymbol
173
+ )
174
+ )
175
+ end
176
+ attr_reader :order
177
+
178
+ sig do
179
+ params(
180
+ order:
181
+ Anthropic::Beta::Organization::BetaAnalyticsUsageCostSortOrder::OrSymbol
182
+ ).void
183
+ end
184
+ attr_writer :order
185
+
186
+ # Row order. A metric ranks rows by that metric in the `order` direction. `time`
187
+ # orders rows by time bucket in the `order` direction (newest first by default)
188
+ # and, within a bucket, by `total_tokens`, highest first. `time` takes effect only
189
+ # with `time_bucket_width`; without it, `time` is the same as `total_tokens`.
190
+ # Defaults to `total_tokens`.
191
+ sig do
192
+ returns(
193
+ T.nilable(
194
+ Anthropic::Beta::Organization::Analytics::BetaAnalyticsUsageOrderBy::OrSymbol
195
+ )
196
+ )
197
+ end
198
+ attr_reader :order_by
199
+
200
+ sig do
201
+ params(
202
+ order_by:
203
+ Anthropic::Beta::Organization::Analytics::BetaAnalyticsUsageOrderBy::OrSymbol
204
+ ).void
205
+ end
206
+ attr_writer :order_by
207
+
208
+ # Opaque cursor from a previous response's `next_page` field.
209
+ sig { returns(T.nilable(String)) }
210
+ attr_accessor :page
211
+
212
+ # Product surfaces to include. Defaults to all products.
213
+ sig do
214
+ returns(
215
+ T.nilable(
216
+ T::Array[
217
+ Anthropic::Beta::Organization::BetaAnalyticsUsageCostProductFilter::OrSymbol
218
+ ]
219
+ )
220
+ )
221
+ end
222
+ attr_accessor :products
223
+
224
+ # Filter to usage attributed to specific RBAC groups. Accepts tagged RBAC group
225
+ # IDs (`rbac_group_...`) or bare group UUIDs. A row matches when the user belonged
226
+ # to any of the listed groups on the (UTC) day the usage occurred; usage with no
227
+ # group attribution never matches.
228
+ sig { returns(T.nilable(T::Array[String])) }
229
+ attr_accessor :rbac_group_ids
230
+
231
+ # Filter to specific service tiers. Use `group_by[]=service_tier` to break out
232
+ # per-tier values. Claude Developer Platform organizations only; matches nothing
233
+ # for a Claude Enterprise organization.
234
+ sig do
235
+ returns(
236
+ T.nilable(
237
+ T::Array[
238
+ Anthropic::Beta::Organization::BetaAnalyticsServiceTier::OrSymbol
239
+ ]
240
+ )
241
+ )
242
+ end
243
+ attr_accessor :service_tiers
244
+
245
+ # Filter to usage incurred by specific Claude Managed Agents sessions, by tagged
246
+ # session ID (`sesn_...`). Use `group_by[]=session_id` to break out per-session
247
+ # values. Claude Developer Platform organizations only.
248
+ sig { returns(T.nilable(T::Array[String])) }
249
+ attr_accessor :session_ids
250
+
251
+ # Filter to usage originating from specific Slack channels. Use
252
+ # `group_by[]=slack_channel_id` to break out per-channel values.
253
+ sig { returns(T.nilable(T::Array[String])) }
254
+ attr_accessor :slack_channel_ids
255
+
256
+ # Filter to fast or standard inference mode. Use `group_by[]=speed` to break out
257
+ # per-mode values.
258
+ sig do
259
+ returns(
260
+ T.nilable(
261
+ T::Array[
262
+ Anthropic::Beta::Organization::BetaAnalyticsSpeed::OrSymbol
263
+ ]
264
+ )
265
+ )
266
+ end
267
+ attr_accessor :speeds
268
+
269
+ # Time-bucket granularity. When set, rows are returned per time bucket (one per
270
+ # bucket and dimension combination with usage) and each row's `starting_at` and
271
+ # `ending_at` are that bucket's bounds; the time bucket counts toward `limit`.
272
+ # `ending_at` is required when `time_bucket_width` is set, and with
273
+ # `time_bucket_width="1m"` the range may span at most 24 hours. When omitted, each
274
+ # row aggregates the requested range with `starting_at` and `ending_at` each
275
+ # rounded down to the hour.
276
+ sig do
277
+ returns(
278
+ T.nilable(
279
+ Anthropic::Beta::Organization::BetaAnalyticsTimeBucketWidth::OrSymbol
280
+ )
281
+ )
282
+ end
283
+ attr_accessor :time_bucket_width
284
+
285
+ # Filter to usage attributed to specific user profiles, by tagged user profile ID
286
+ # (`uprof_...`). Use `group_by[]=user_profile_id` to break out per-profile values.
287
+ # Claude Developer Platform organizations only.
288
+ sig { returns(T.nilable(T::Array[String])) }
289
+ attr_accessor :user_profile_ids
290
+
291
+ # Filter to usage in specific workspaces, by tagged workspace ID (`wrkspc_...`).
292
+ # Use `group_by[]=workspace_id` to break out per-workspace values. Claude
293
+ # Developer Platform organizations only; matches nothing for a Claude Enterprise
294
+ # organization.
295
+ sig { returns(T.nilable(T::Array[String])) }
296
+ attr_accessor :workspace_ids
297
+
298
+ # This endpoint is in beta: requests must send `analytics-usage-cost-2026-08-24`
299
+ # in this header.
300
+ sig do
301
+ returns(
302
+ T.nilable(
303
+ T::Array[T.any(Anthropic::AnthropicBeta::OrSymbol, String)]
304
+ )
305
+ )
306
+ end
307
+ attr_reader :betas
308
+
309
+ sig do
310
+ params(
311
+ betas:
312
+ T::Array[T.any(Anthropic::AnthropicBeta::OrSymbol, String)]
313
+ ).void
314
+ end
315
+ attr_writer :betas
316
+
317
+ sig do
318
+ params(
319
+ starting_at: Time,
320
+ actor_ids: T.nilable(T::Array[String]),
321
+ actor_types:
322
+ T.nilable(
323
+ T::Array[
324
+ Anthropic::Beta::Organization::BetaAnalyticsActorType::OrSymbol
325
+ ]
326
+ ),
327
+ agent_ids: T.nilable(T::Array[String]),
328
+ api_key_ids: T.nilable(T::Array[String]),
329
+ claude_tag_categories:
330
+ T.nilable(
331
+ T::Array[
332
+ Anthropic::Beta::Organization::BetaAnalyticsClaudeTagCategory::OrSymbol
333
+ ]
334
+ ),
335
+ claude_tag_user_ids: T.nilable(T::Array[String]),
336
+ context_windows:
337
+ T.nilable(
338
+ T::Array[
339
+ Anthropic::Beta::Organization::BetaAnalyticsContextWindow::OrSymbol
340
+ ]
341
+ ),
342
+ deployment_ids: T.nilable(T::Array[String]),
343
+ ending_at: T.nilable(Time),
344
+ environment_ids: T.nilable(T::Array[String]),
345
+ exclude_deleted_users: T::Boolean,
346
+ group_by:
347
+ T.nilable(
348
+ T::Array[
349
+ Anthropic::Beta::Organization::Analytics::BetaAnalyticsUsageGroupBy::OrSymbol
350
+ ]
351
+ ),
352
+ inference_geos:
353
+ T.nilable(
354
+ T::Array[
355
+ Anthropic::Beta::Organization::BetaAnalyticsInferenceGeoFilter::OrSymbol
356
+ ]
357
+ ),
358
+ limit: Integer,
359
+ models: T.nilable(T::Array[String]),
360
+ order:
361
+ Anthropic::Beta::Organization::BetaAnalyticsUsageCostSortOrder::OrSymbol,
362
+ order_by:
363
+ Anthropic::Beta::Organization::Analytics::BetaAnalyticsUsageOrderBy::OrSymbol,
364
+ page: T.nilable(String),
365
+ products:
366
+ T.nilable(
367
+ T::Array[
368
+ Anthropic::Beta::Organization::BetaAnalyticsUsageCostProductFilter::OrSymbol
369
+ ]
370
+ ),
371
+ rbac_group_ids: T.nilable(T::Array[String]),
372
+ service_tiers:
373
+ T.nilable(
374
+ T::Array[
375
+ Anthropic::Beta::Organization::BetaAnalyticsServiceTier::OrSymbol
376
+ ]
377
+ ),
378
+ session_ids: T.nilable(T::Array[String]),
379
+ slack_channel_ids: T.nilable(T::Array[String]),
380
+ speeds:
381
+ T.nilable(
382
+ T::Array[
383
+ Anthropic::Beta::Organization::BetaAnalyticsSpeed::OrSymbol
384
+ ]
385
+ ),
386
+ time_bucket_width:
387
+ T.nilable(
388
+ Anthropic::Beta::Organization::BetaAnalyticsTimeBucketWidth::OrSymbol
389
+ ),
390
+ user_profile_ids: T.nilable(T::Array[String]),
391
+ workspace_ids: T.nilable(T::Array[String]),
392
+ betas:
393
+ T::Array[T.any(Anthropic::AnthropicBeta::OrSymbol, String)],
394
+ request_options: Anthropic::RequestOptions::OrHash
395
+ ).returns(T.attached_class)
396
+ end
397
+ def self.new(
398
+ # Start of range, inclusive. RFC 3339 tz-aware. Must be within the last 365 days
399
+ # and no earlier than 2026-01-01T00:00:00Z.
400
+ starting_at:,
401
+ # Filter to usage attributed to specific identities, by tagged ID: a `user_...`,
402
+ # `svac_...` (service account), or `apikey_...` ID. An `apikey_` entry matches
403
+ # only usage attributed to the key itself, not usage on that key attributed to a
404
+ # user or service account (use `api_key_ids[]` for every request a key
405
+ # authenticated). Federated identities have no tagged ID; select them with
406
+ # `actor_types[]`. Use `group_by[]=actor` to break out per-identity values.
407
+ actor_ids: nil,
408
+ # Filter to usage attributed to specific kinds of identity. Use
409
+ # `group_by[]=actor_type` to break out per-kind values.
410
+ actor_types: nil,
411
+ # Filter to usage incurred by sessions of specific Claude Managed Agents agents.
412
+ # Use `group_by[]=agent_id` to break out per-agent values. Claude Developer
413
+ # Platform organizations only.
414
+ agent_ids: nil,
415
+ # Filter to usage authenticated by specific API keys, by tagged API key ID
416
+ # (`apikey_...`), whichever identity the usage is attributed to. Include an empty
417
+ # entry (`api_key_ids[]=`) to also match usage that no API key authenticated. Use
418
+ # `group_by[]=api_key_id` to break out per-key values; usage without a key has a
419
+ # null `api_key_id`. Claude Developer Platform organizations only.
420
+ api_key_ids: nil,
421
+ # Filter to Claude Tag (Claude in Slack) usage in specific spend categories. Usage
422
+ # with no category never matches. `dm` usage is reported under the user's product
423
+ # rather than `claude_tag`, so combining this filter with `products[]=claude_tag`
424
+ # excludes it. Use `group_by[]=claude_tag_category` to break out per-category
425
+ # values.
426
+ claude_tag_categories: nil,
427
+ # Filter to Claude Tag (Claude in Slack) usage attributed to specific Slack users,
428
+ # by Slack user ID (for example `U0123ABCDEF`), not claude.ai user ID. Usage that
429
+ # is not Claude Tag, and Claude Tag usage not attributed to a single user, never
430
+ # matches. Use `group_by[]=claude_tag_user_id` to break out per-user values.
431
+ claude_tag_user_ids: nil,
432
+ # Filter to specific context-window pricing tiers. Use `group_by[]=context_window`
433
+ # to break out per-tier values.
434
+ context_windows: nil,
435
+ # Filter to usage incurred by Claude Managed Agents sessions that specific
436
+ # deployments started. Use `group_by[]=deployment_id` to break out per-deployment
437
+ # values. Claude Developer Platform organizations only.
438
+ deployment_ids: nil,
439
+ # End of range, exclusive. Required when `time_bucket_width` is set. Without
440
+ # `time_bucket_width`, defaults to the earlier of now and `starting_at` + 31 days.
441
+ # The range may span at most 31 days.
442
+ ending_at: nil,
443
+ # Filter to usage incurred by Claude Managed Agents sessions that ran in specific
444
+ # environments. Use `group_by[]=environment_id` to break out per-environment
445
+ # values. Claude Developer Platform organizations only.
446
+ environment_ids: nil,
447
+ # If true, omit rows whose `actor` is a `user_actor` with `deleted: true`.
448
+ # Requires `group_by[]=actor`. Rows for other actor types, and rows whose `actor`
449
+ # is null, are always kept. A page may contain fewer than `limit` rows; use
450
+ # `has_more` and `next_page` to paginate as usual.
451
+ exclude_deleted_users: nil,
452
+ # Dimensions to break usage out by (at most 5): one row per combination of their
453
+ # values with usage in the range (and per time bucket, when `time_bucket_width` is
454
+ # set), every combination returned across pages rather than a capped top set. When
455
+ # omitted, a single row aggregates the whole range.
456
+ group_by: nil,
457
+ # Filter to specific inference regions. `not_available` matches rows where the
458
+ # region is unset. Use `group_by[]=inference_geo` to break out per-region values.
459
+ inference_geos: nil,
460
+ # Number of rows per page (1-1000, default 20). `cost_type`/`token_type` fan-out
461
+ # rows (cost endpoint only) do not count toward this limit, so `data` can exceed
462
+ # it.
463
+ limit: nil,
464
+ # Models to include. Defaults to all models. Use `group_by[]=model` to break out
465
+ # per-model values.
466
+ models: nil,
467
+ # Sort direction of the `order_by` metric, or of the time buckets when `order_by`
468
+ # is `time` and `time_bucket_width` is set. Defaults to `desc`.
469
+ order: nil,
470
+ # Row order. A metric ranks rows by that metric in the `order` direction. `time`
471
+ # orders rows by time bucket in the `order` direction (newest first by default)
472
+ # and, within a bucket, by `total_tokens`, highest first. `time` takes effect only
473
+ # with `time_bucket_width`; without it, `time` is the same as `total_tokens`.
474
+ # Defaults to `total_tokens`.
475
+ order_by: nil,
476
+ # Opaque cursor from a previous response's `next_page` field.
477
+ page: nil,
478
+ # Product surfaces to include. Defaults to all products.
479
+ products: nil,
480
+ # Filter to usage attributed to specific RBAC groups. Accepts tagged RBAC group
481
+ # IDs (`rbac_group_...`) or bare group UUIDs. A row matches when the user belonged
482
+ # to any of the listed groups on the (UTC) day the usage occurred; usage with no
483
+ # group attribution never matches.
484
+ rbac_group_ids: nil,
485
+ # Filter to specific service tiers. Use `group_by[]=service_tier` to break out
486
+ # per-tier values. Claude Developer Platform organizations only; matches nothing
487
+ # for a Claude Enterprise organization.
488
+ service_tiers: nil,
489
+ # Filter to usage incurred by specific Claude Managed Agents sessions, by tagged
490
+ # session ID (`sesn_...`). Use `group_by[]=session_id` to break out per-session
491
+ # values. Claude Developer Platform organizations only.
492
+ session_ids: nil,
493
+ # Filter to usage originating from specific Slack channels. Use
494
+ # `group_by[]=slack_channel_id` to break out per-channel values.
495
+ slack_channel_ids: nil,
496
+ # Filter to fast or standard inference mode. Use `group_by[]=speed` to break out
497
+ # per-mode values.
498
+ speeds: nil,
499
+ # Time-bucket granularity. When set, rows are returned per time bucket (one per
500
+ # bucket and dimension combination with usage) and each row's `starting_at` and
501
+ # `ending_at` are that bucket's bounds; the time bucket counts toward `limit`.
502
+ # `ending_at` is required when `time_bucket_width` is set, and with
503
+ # `time_bucket_width="1m"` the range may span at most 24 hours. When omitted, each
504
+ # row aggregates the requested range with `starting_at` and `ending_at` each
505
+ # rounded down to the hour.
506
+ time_bucket_width: nil,
507
+ # Filter to usage attributed to specific user profiles, by tagged user profile ID
508
+ # (`uprof_...`). Use `group_by[]=user_profile_id` to break out per-profile values.
509
+ # Claude Developer Platform organizations only.
510
+ user_profile_ids: nil,
511
+ # Filter to usage in specific workspaces, by tagged workspace ID (`wrkspc_...`).
512
+ # Use `group_by[]=workspace_id` to break out per-workspace values. Claude
513
+ # Developer Platform organizations only; matches nothing for a Claude Enterprise
514
+ # organization.
515
+ workspace_ids: nil,
516
+ # This endpoint is in beta: requests must send `analytics-usage-cost-2026-08-24`
517
+ # in this header.
518
+ betas: nil,
519
+ request_options: {}
520
+ )
521
+ end
522
+
523
+ sig do
524
+ override.returns(
525
+ {
526
+ starting_at: Time,
527
+ actor_ids: T.nilable(T::Array[String]),
528
+ actor_types:
529
+ T.nilable(
530
+ T::Array[
531
+ Anthropic::Beta::Organization::BetaAnalyticsActorType::OrSymbol
532
+ ]
533
+ ),
534
+ agent_ids: T.nilable(T::Array[String]),
535
+ api_key_ids: T.nilable(T::Array[String]),
536
+ claude_tag_categories:
537
+ T.nilable(
538
+ T::Array[
539
+ Anthropic::Beta::Organization::BetaAnalyticsClaudeTagCategory::OrSymbol
540
+ ]
541
+ ),
542
+ claude_tag_user_ids: T.nilable(T::Array[String]),
543
+ context_windows:
544
+ T.nilable(
545
+ T::Array[
546
+ Anthropic::Beta::Organization::BetaAnalyticsContextWindow::OrSymbol
547
+ ]
548
+ ),
549
+ deployment_ids: T.nilable(T::Array[String]),
550
+ ending_at: T.nilable(Time),
551
+ environment_ids: T.nilable(T::Array[String]),
552
+ exclude_deleted_users: T::Boolean,
553
+ group_by:
554
+ T.nilable(
555
+ T::Array[
556
+ Anthropic::Beta::Organization::Analytics::BetaAnalyticsUsageGroupBy::OrSymbol
557
+ ]
558
+ ),
559
+ inference_geos:
560
+ T.nilable(
561
+ T::Array[
562
+ Anthropic::Beta::Organization::BetaAnalyticsInferenceGeoFilter::OrSymbol
563
+ ]
564
+ ),
565
+ limit: Integer,
566
+ models: T.nilable(T::Array[String]),
567
+ order:
568
+ Anthropic::Beta::Organization::BetaAnalyticsUsageCostSortOrder::OrSymbol,
569
+ order_by:
570
+ Anthropic::Beta::Organization::Analytics::BetaAnalyticsUsageOrderBy::OrSymbol,
571
+ page: T.nilable(String),
572
+ products:
573
+ T.nilable(
574
+ T::Array[
575
+ Anthropic::Beta::Organization::BetaAnalyticsUsageCostProductFilter::OrSymbol
576
+ ]
577
+ ),
578
+ rbac_group_ids: T.nilable(T::Array[String]),
579
+ service_tiers:
580
+ T.nilable(
581
+ T::Array[
582
+ Anthropic::Beta::Organization::BetaAnalyticsServiceTier::OrSymbol
583
+ ]
584
+ ),
585
+ session_ids: T.nilable(T::Array[String]),
586
+ slack_channel_ids: T.nilable(T::Array[String]),
587
+ speeds:
588
+ T.nilable(
589
+ T::Array[
590
+ Anthropic::Beta::Organization::BetaAnalyticsSpeed::OrSymbol
591
+ ]
592
+ ),
593
+ time_bucket_width:
594
+ T.nilable(
595
+ Anthropic::Beta::Organization::BetaAnalyticsTimeBucketWidth::OrSymbol
596
+ ),
597
+ user_profile_ids: T.nilable(T::Array[String]),
598
+ workspace_ids: T.nilable(T::Array[String]),
599
+ betas:
600
+ T::Array[T.any(Anthropic::AnthropicBeta::OrSymbol, String)],
601
+ request_options: Anthropic::RequestOptions
602
+ }
603
+ )
604
+ end
605
+ def to_hash
606
+ end
607
+ end
608
+ end
609
+ end
610
+ end
611
+ end
612
+ end