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,245 @@
1
+ # typed: strong
2
+
3
+ module Anthropic
4
+ module Resources
5
+ class Beta
6
+ class Organization
7
+ class Analytics
8
+ class Cost
9
+ # Get cost in USD across a date range, broken out by dimension.
10
+ #
11
+ # Returns one row per combination of the requested `group_by[]` dimensions (and
12
+ # time bucket, when `time_bucket_width` is set) that has cost in the range, ranked
13
+ # by spend or ordered by time bucket; every combination is returned across pages.
14
+ # With no `group_by[]` and no `time_bucket_width`, a single row aggregates the
15
+ # whole range. Includes all cost, whether or not it is attributable to a seat
16
+ # user. Requires an API key with the `read:analytics` scope, or an Admin API key.
17
+ sig do
18
+ params(
19
+ starting_at: Time,
20
+ actor_ids: T.nilable(T::Array[String]),
21
+ actor_types:
22
+ T.nilable(
23
+ T::Array[
24
+ Anthropic::Beta::Organization::BetaAnalyticsActorType::OrSymbol
25
+ ]
26
+ ),
27
+ agent_ids: T.nilable(T::Array[String]),
28
+ api_key_ids: T.nilable(T::Array[String]),
29
+ claude_tag_categories:
30
+ T.nilable(
31
+ T::Array[
32
+ Anthropic::Beta::Organization::BetaAnalyticsClaudeTagCategory::OrSymbol
33
+ ]
34
+ ),
35
+ claude_tag_user_ids: T.nilable(T::Array[String]),
36
+ context_windows:
37
+ T.nilable(
38
+ T::Array[
39
+ Anthropic::Beta::Organization::BetaAnalyticsContextWindow::OrSymbol
40
+ ]
41
+ ),
42
+ deployment_ids: T.nilable(T::Array[String]),
43
+ ending_at: T.nilable(Time),
44
+ environment_ids: T.nilable(T::Array[String]),
45
+ exclude_deleted_users: T::Boolean,
46
+ group_by:
47
+ T.nilable(
48
+ T::Array[
49
+ Anthropic::Beta::Organization::Analytics::BetaAnalyticsCostGroupBy::OrSymbol
50
+ ]
51
+ ),
52
+ inference_geos:
53
+ T.nilable(
54
+ T::Array[
55
+ Anthropic::Beta::Organization::BetaAnalyticsInferenceGeoFilter::OrSymbol
56
+ ]
57
+ ),
58
+ limit: Integer,
59
+ models: T.nilable(T::Array[String]),
60
+ order:
61
+ Anthropic::Beta::Organization::BetaAnalyticsUsageCostSortOrder::OrSymbol,
62
+ order_by:
63
+ Anthropic::Beta::Organization::Analytics::BetaAnalyticsCostOrderBy::OrSymbol,
64
+ page: T.nilable(String),
65
+ products:
66
+ T.nilable(
67
+ T::Array[
68
+ Anthropic::Beta::Organization::BetaAnalyticsUsageCostProductFilter::OrSymbol
69
+ ]
70
+ ),
71
+ rbac_group_ids: T.nilable(T::Array[String]),
72
+ service_tiers:
73
+ T.nilable(
74
+ T::Array[
75
+ Anthropic::Beta::Organization::BetaAnalyticsServiceTier::OrSymbol
76
+ ]
77
+ ),
78
+ session_ids: T.nilable(T::Array[String]),
79
+ slack_channel_ids: T.nilable(T::Array[String]),
80
+ speeds:
81
+ T.nilable(
82
+ T::Array[
83
+ Anthropic::Beta::Organization::BetaAnalyticsSpeed::OrSymbol
84
+ ]
85
+ ),
86
+ time_bucket_width:
87
+ T.nilable(
88
+ Anthropic::Beta::Organization::BetaAnalyticsTimeBucketWidth::OrSymbol
89
+ ),
90
+ user_profile_ids: T.nilable(T::Array[String]),
91
+ workspace_ids: T.nilable(T::Array[String]),
92
+ betas:
93
+ T::Array[T.any(Anthropic::AnthropicBeta::OrSymbol, String)],
94
+ request_options: Anthropic::RequestOptions::OrHash
95
+ ).returns(
96
+ Anthropic::Internal::ReportPageCursor[
97
+ Anthropic::Beta::Organization::Analytics::BetaAnalyticsCostItem
98
+ ]
99
+ )
100
+ end
101
+ def list(
102
+ # Query param: Start of range, inclusive. RFC 3339 tz-aware. Must be within the
103
+ # last 365 days and no earlier than 2026-01-01T00:00:00Z.
104
+ starting_at:,
105
+ # Query param: Filter to usage attributed to specific identities, by tagged ID: a
106
+ # `user_...`, `svac_...` (service account), or `apikey_...` ID. An `apikey_` entry
107
+ # matches only usage attributed to the key itself, not usage on that key
108
+ # attributed to a user or service account (use `api_key_ids[]` for every request a
109
+ # key authenticated). Federated identities have no tagged ID; select them with
110
+ # `actor_types[]`. Use `group_by[]=actor` to break out per-identity values.
111
+ actor_ids: nil,
112
+ # Query param: Filter to usage attributed to specific kinds of identity. Use
113
+ # `group_by[]=actor_type` to break out per-kind values.
114
+ actor_types: nil,
115
+ # Query param: Filter to usage incurred by sessions of specific Claude Managed
116
+ # Agents agents. Use `group_by[]=agent_id` to break out per-agent values. Claude
117
+ # Developer Platform organizations only.
118
+ agent_ids: nil,
119
+ # Query param: Filter to usage authenticated by specific API keys, by tagged API
120
+ # key ID (`apikey_...`), whichever identity the usage is attributed to. Include an
121
+ # empty entry (`api_key_ids[]=`) to also match usage that no API key
122
+ # authenticated. Use `group_by[]=api_key_id` to break out per-key values; usage
123
+ # without a key has a null `api_key_id`. Claude Developer Platform organizations
124
+ # only.
125
+ api_key_ids: nil,
126
+ # Query param: Filter to Claude Tag (Claude in Slack) usage in specific spend
127
+ # categories. Usage with no category never matches. `dm` usage is reported under
128
+ # the user's product rather than `claude_tag`, so combining this filter with
129
+ # `products[]=claude_tag` excludes it. Use `group_by[]=claude_tag_category` to
130
+ # break out per-category values.
131
+ claude_tag_categories: nil,
132
+ # Query param: Filter to Claude Tag (Claude in Slack) usage attributed to specific
133
+ # Slack users, by Slack user ID (for example `U0123ABCDEF`), not claude.ai user
134
+ # ID. Usage that is not Claude Tag, and Claude Tag usage not attributed to a
135
+ # single user, never matches. Use `group_by[]=claude_tag_user_id` to break out
136
+ # per-user values.
137
+ claude_tag_user_ids: nil,
138
+ # Query param: Filter to specific context-window pricing tiers. Use
139
+ # `group_by[]=context_window` to break out per-tier values.
140
+ context_windows: nil,
141
+ # Query param: Filter to usage incurred by Claude Managed Agents sessions that
142
+ # specific deployments started. Use `group_by[]=deployment_id` to break out
143
+ # per-deployment values. Claude Developer Platform organizations only.
144
+ deployment_ids: nil,
145
+ # Query param: End of range, exclusive. Required when `time_bucket_width` is set.
146
+ # Without `time_bucket_width`, defaults to the earlier of now and `starting_at` +
147
+ # 31 days. The range may span at most 31 days.
148
+ ending_at: nil,
149
+ # Query param: Filter to usage incurred by Claude Managed Agents sessions that ran
150
+ # in specific environments. Use `group_by[]=environment_id` to break out
151
+ # per-environment values. Claude Developer Platform organizations only.
152
+ environment_ids: nil,
153
+ # Query param: If true, omit rows whose `actor` is a `user_actor` with
154
+ # `deleted: true`. Requires `group_by[]=actor`. Rows for other actor types, and
155
+ # rows whose `actor` is null, are always kept. A page may contain fewer than
156
+ # `limit` rows; use `has_more` and `next_page` to paginate as usual.
157
+ exclude_deleted_users: nil,
158
+ # Query param: Dimensions to break cost out by (at most 5, not counting
159
+ # `cost_type` and `token_type`): one row per combination of their values with cost
160
+ # in the range (and per time bucket, when `time_bucket_width` is set), every
161
+ # combination returned across pages rather than a capped top set. `cost_type` and
162
+ # `token_type` do not count toward `limit`: `cost_type` returns one row per cost
163
+ # component (tokens, web search, code execution, and `session_usage`, Claude
164
+ # Managed Agents session time); `token_type` returns one row per token type, each
165
+ # with `cost_type: "tokens"`; combining both returns the per-token-type rows plus
166
+ # the web-search, code-execution and session-usage rows. When omitted, a single
167
+ # row aggregates the whole range.
168
+ group_by: nil,
169
+ # Query param: Filter to specific inference regions. `not_available` matches rows
170
+ # where the region is unset. Use `group_by[]=inference_geo` to break out
171
+ # per-region values.
172
+ inference_geos: nil,
173
+ # Query param: Number of rows per page (1-1000, default 20).
174
+ # `cost_type`/`token_type` fan-out rows (cost endpoint only) do not count toward
175
+ # this limit, so `data` can exceed it.
176
+ limit: nil,
177
+ # Query param: Models to include. Defaults to all models. Use `group_by[]=model`
178
+ # to break out per-model values.
179
+ models: nil,
180
+ # Query param: Sort direction of the `order_by` metric, or of the time buckets
181
+ # when `order_by` is `time` and `time_bucket_width` is set. Defaults to `desc`.
182
+ order: nil,
183
+ # Query param: Row order. A metric ranks rows by that metric in the `order`
184
+ # direction. `time` orders rows by time bucket in the `order` direction (newest
185
+ # first by default) and, within a bucket, by `amount`, highest first. `time` takes
186
+ # effect only with `time_bucket_width`; without it, `time` is the same as
187
+ # `amount`. Defaults to `amount`.
188
+ order_by: nil,
189
+ # Query param: Opaque cursor from a previous response's `next_page` field.
190
+ page: nil,
191
+ # Query param: Product surfaces to include. Defaults to all products.
192
+ products: nil,
193
+ # Query param: Filter to usage attributed to specific RBAC groups. Accepts tagged
194
+ # RBAC group IDs (`rbac_group_...`) or bare group UUIDs. A row matches when the
195
+ # user belonged to any of the listed groups on the (UTC) day the usage occurred;
196
+ # usage with no group attribution never matches.
197
+ rbac_group_ids: nil,
198
+ # Query param: Filter to specific service tiers. Use `group_by[]=service_tier` to
199
+ # break out per-tier values. Claude Developer Platform organizations only; matches
200
+ # nothing for a Claude Enterprise organization.
201
+ service_tiers: nil,
202
+ # Query param: Filter to usage incurred by specific Claude Managed Agents
203
+ # sessions, by tagged session ID (`sesn_...`). Use `group_by[]=session_id` to
204
+ # break out per-session values. Claude Developer Platform organizations only.
205
+ session_ids: nil,
206
+ # Query param: Filter to usage originating from specific Slack channels. Use
207
+ # `group_by[]=slack_channel_id` to break out per-channel values.
208
+ slack_channel_ids: nil,
209
+ # Query param: Filter to fast or standard inference mode. Use `group_by[]=speed`
210
+ # to break out per-mode values.
211
+ speeds: nil,
212
+ # Query param: Time-bucket granularity. When set, rows are returned per time
213
+ # bucket (one per bucket and dimension combination with usage) and each row's
214
+ # `starting_at` and `ending_at` are that bucket's bounds; the time bucket counts
215
+ # toward `limit`. `ending_at` is required when `time_bucket_width` is set, and
216
+ # with `time_bucket_width="1m"` the range may span at most 24 hours. When omitted,
217
+ # each row aggregates the requested range with `starting_at` and `ending_at` each
218
+ # rounded down to the hour.
219
+ time_bucket_width: nil,
220
+ # Query param: Filter to usage attributed to specific user profiles, by tagged
221
+ # user profile ID (`uprof_...`). Use `group_by[]=user_profile_id` to break out
222
+ # per-profile values. Claude Developer Platform organizations only.
223
+ user_profile_ids: nil,
224
+ # Query param: Filter to usage in specific workspaces, by tagged workspace ID
225
+ # (`wrkspc_...`). Use `group_by[]=workspace_id` to break out per-workspace values.
226
+ # Claude Developer Platform organizations only; matches nothing for a Claude
227
+ # Enterprise organization.
228
+ workspace_ids: nil,
229
+ # Header param: This endpoint is in beta: requests must send
230
+ # `analytics-usage-cost-2026-08-24` in this header.
231
+ betas: nil,
232
+ request_options: {}
233
+ )
234
+ end
235
+
236
+ # @api private
237
+ sig { params(client: Anthropic::Client).returns(T.attached_class) }
238
+ def self.new(client:)
239
+ end
240
+ end
241
+ end
242
+ end
243
+ end
244
+ end
245
+ end
@@ -6,12 +6,19 @@ module Anthropic
6
6
  class Organization
7
7
  class Analytics
8
8
  class CostReport
9
- # Get cost in USD over time across a date range.
9
+ # [Legacy] Get cost in USD over time across a date range.
10
10
  #
11
- # Returns cost bucketed by minute, hour, or day, optionally broken down by
12
- # product, model, context window, inference region, speed, cost type, or token
13
- # type. Available to organizations on a Claude Enterprise plan. Requires an API
14
- # key with the `read:analytics` scope.
11
+ # Returns cost bucketed by minute, hour, or day, optionally broken down by one or
12
+ # more `group_by[]` dimensions, such as model or cost type. Available to
13
+ # organizations on a Claude Enterprise plan. Requires an API key with the
14
+ # `read:analytics` scope.
15
+ #
16
+ # This endpoint is one of the legacy Claude Enterprise usage and cost reports. For
17
+ # new integrations, use
18
+ # [`GET /v1/organizations/analytics/cost`](/docs/en/api/beta/organization/analytics/cost/list)
19
+ # in the Usage and Cost Analytics API instead. To move an existing integration,
20
+ # see
21
+ # [Migrate from the Claude Enterprise usage and cost reports](/docs/en/manage-claude/usage-cost-analytics-api#migrate-from-enterprise-analytics-reports).
15
22
  sig do
16
23
  params(
17
24
  starting_at: Time,
@@ -0,0 +1,240 @@
1
+ # typed: strong
2
+
3
+ module Anthropic
4
+ module Resources
5
+ class Beta
6
+ class Organization
7
+ class Analytics
8
+ class Usage
9
+ # Get token usage across a date range, broken out by dimension.
10
+ #
11
+ # Returns one row per combination of the requested `group_by[]` dimensions (and
12
+ # time bucket, when `time_bucket_width` is set) that has usage in the range,
13
+ # ranked by the `order_by` metric or ordered by time bucket; every combination is
14
+ # returned across pages. With no `group_by[]` and no `time_bucket_width`, a single
15
+ # row aggregates the whole range. Includes all usage, whether or not it is
16
+ # attributable to a seat user. Requires an API key with the `read:analytics`
17
+ # scope, or an Admin API key.
18
+ sig do
19
+ params(
20
+ starting_at: Time,
21
+ actor_ids: T.nilable(T::Array[String]),
22
+ actor_types:
23
+ T.nilable(
24
+ T::Array[
25
+ Anthropic::Beta::Organization::BetaAnalyticsActorType::OrSymbol
26
+ ]
27
+ ),
28
+ agent_ids: T.nilable(T::Array[String]),
29
+ api_key_ids: T.nilable(T::Array[String]),
30
+ claude_tag_categories:
31
+ T.nilable(
32
+ T::Array[
33
+ Anthropic::Beta::Organization::BetaAnalyticsClaudeTagCategory::OrSymbol
34
+ ]
35
+ ),
36
+ claude_tag_user_ids: T.nilable(T::Array[String]),
37
+ context_windows:
38
+ T.nilable(
39
+ T::Array[
40
+ Anthropic::Beta::Organization::BetaAnalyticsContextWindow::OrSymbol
41
+ ]
42
+ ),
43
+ deployment_ids: T.nilable(T::Array[String]),
44
+ ending_at: T.nilable(Time),
45
+ environment_ids: T.nilable(T::Array[String]),
46
+ exclude_deleted_users: T::Boolean,
47
+ group_by:
48
+ T.nilable(
49
+ T::Array[
50
+ Anthropic::Beta::Organization::Analytics::BetaAnalyticsUsageGroupBy::OrSymbol
51
+ ]
52
+ ),
53
+ inference_geos:
54
+ T.nilable(
55
+ T::Array[
56
+ Anthropic::Beta::Organization::BetaAnalyticsInferenceGeoFilter::OrSymbol
57
+ ]
58
+ ),
59
+ limit: Integer,
60
+ models: T.nilable(T::Array[String]),
61
+ order:
62
+ Anthropic::Beta::Organization::BetaAnalyticsUsageCostSortOrder::OrSymbol,
63
+ order_by:
64
+ Anthropic::Beta::Organization::Analytics::BetaAnalyticsUsageOrderBy::OrSymbol,
65
+ page: T.nilable(String),
66
+ products:
67
+ T.nilable(
68
+ T::Array[
69
+ Anthropic::Beta::Organization::BetaAnalyticsUsageCostProductFilter::OrSymbol
70
+ ]
71
+ ),
72
+ rbac_group_ids: T.nilable(T::Array[String]),
73
+ service_tiers:
74
+ T.nilable(
75
+ T::Array[
76
+ Anthropic::Beta::Organization::BetaAnalyticsServiceTier::OrSymbol
77
+ ]
78
+ ),
79
+ session_ids: T.nilable(T::Array[String]),
80
+ slack_channel_ids: T.nilable(T::Array[String]),
81
+ speeds:
82
+ T.nilable(
83
+ T::Array[
84
+ Anthropic::Beta::Organization::BetaAnalyticsSpeed::OrSymbol
85
+ ]
86
+ ),
87
+ time_bucket_width:
88
+ T.nilable(
89
+ Anthropic::Beta::Organization::BetaAnalyticsTimeBucketWidth::OrSymbol
90
+ ),
91
+ user_profile_ids: T.nilable(T::Array[String]),
92
+ workspace_ids: T.nilable(T::Array[String]),
93
+ betas:
94
+ T::Array[T.any(Anthropic::AnthropicBeta::OrSymbol, String)],
95
+ request_options: Anthropic::RequestOptions::OrHash
96
+ ).returns(
97
+ Anthropic::Internal::ReportPageCursor[
98
+ Anthropic::Beta::Organization::Analytics::BetaAnalyticsUsageItem
99
+ ]
100
+ )
101
+ end
102
+ def list(
103
+ # Query param: Start of range, inclusive. RFC 3339 tz-aware. Must be within the
104
+ # last 365 days and no earlier than 2026-01-01T00:00:00Z.
105
+ starting_at:,
106
+ # Query param: Filter to usage attributed to specific identities, by tagged ID: a
107
+ # `user_...`, `svac_...` (service account), or `apikey_...` ID. An `apikey_` entry
108
+ # matches only usage attributed to the key itself, not usage on that key
109
+ # attributed to a user or service account (use `api_key_ids[]` for every request a
110
+ # key authenticated). Federated identities have no tagged ID; select them with
111
+ # `actor_types[]`. Use `group_by[]=actor` to break out per-identity values.
112
+ actor_ids: nil,
113
+ # Query param: Filter to usage attributed to specific kinds of identity. Use
114
+ # `group_by[]=actor_type` to break out per-kind values.
115
+ actor_types: nil,
116
+ # Query param: Filter to usage incurred by sessions of specific Claude Managed
117
+ # Agents agents. Use `group_by[]=agent_id` to break out per-agent values. Claude
118
+ # Developer Platform organizations only.
119
+ agent_ids: nil,
120
+ # Query param: Filter to usage authenticated by specific API keys, by tagged API
121
+ # key ID (`apikey_...`), whichever identity the usage is attributed to. Include an
122
+ # empty entry (`api_key_ids[]=`) to also match usage that no API key
123
+ # authenticated. Use `group_by[]=api_key_id` to break out per-key values; usage
124
+ # without a key has a null `api_key_id`. Claude Developer Platform organizations
125
+ # only.
126
+ api_key_ids: nil,
127
+ # Query param: Filter to Claude Tag (Claude in Slack) usage in specific spend
128
+ # categories. Usage with no category never matches. `dm` usage is reported under
129
+ # the user's product rather than `claude_tag`, so combining this filter with
130
+ # `products[]=claude_tag` excludes it. Use `group_by[]=claude_tag_category` to
131
+ # break out per-category values.
132
+ claude_tag_categories: nil,
133
+ # Query param: Filter to Claude Tag (Claude in Slack) usage attributed to specific
134
+ # Slack users, by Slack user ID (for example `U0123ABCDEF`), not claude.ai user
135
+ # ID. Usage that is not Claude Tag, and Claude Tag usage not attributed to a
136
+ # single user, never matches. Use `group_by[]=claude_tag_user_id` to break out
137
+ # per-user values.
138
+ claude_tag_user_ids: nil,
139
+ # Query param: Filter to specific context-window pricing tiers. Use
140
+ # `group_by[]=context_window` to break out per-tier values.
141
+ context_windows: nil,
142
+ # Query param: Filter to usage incurred by Claude Managed Agents sessions that
143
+ # specific deployments started. Use `group_by[]=deployment_id` to break out
144
+ # per-deployment values. Claude Developer Platform organizations only.
145
+ deployment_ids: nil,
146
+ # Query param: End of range, exclusive. Required when `time_bucket_width` is set.
147
+ # Without `time_bucket_width`, defaults to the earlier of now and `starting_at` +
148
+ # 31 days. The range may span at most 31 days.
149
+ ending_at: nil,
150
+ # Query param: Filter to usage incurred by Claude Managed Agents sessions that ran
151
+ # in specific environments. Use `group_by[]=environment_id` to break out
152
+ # per-environment values. Claude Developer Platform organizations only.
153
+ environment_ids: nil,
154
+ # Query param: If true, omit rows whose `actor` is a `user_actor` with
155
+ # `deleted: true`. Requires `group_by[]=actor`. Rows for other actor types, and
156
+ # rows whose `actor` is null, are always kept. A page may contain fewer than
157
+ # `limit` rows; use `has_more` and `next_page` to paginate as usual.
158
+ exclude_deleted_users: nil,
159
+ # Query param: Dimensions to break usage out by (at most 5): one row per
160
+ # combination of their values with usage in the range (and per time bucket, when
161
+ # `time_bucket_width` is set), every combination returned across pages rather than
162
+ # a capped top set. When omitted, a single row aggregates the whole range.
163
+ group_by: nil,
164
+ # Query param: Filter to specific inference regions. `not_available` matches rows
165
+ # where the region is unset. Use `group_by[]=inference_geo` to break out
166
+ # per-region values.
167
+ inference_geos: nil,
168
+ # Query param: Number of rows per page (1-1000, default 20).
169
+ # `cost_type`/`token_type` fan-out rows (cost endpoint only) do not count toward
170
+ # this limit, so `data` can exceed it.
171
+ limit: nil,
172
+ # Query param: Models to include. Defaults to all models. Use `group_by[]=model`
173
+ # to break out per-model values.
174
+ models: nil,
175
+ # Query param: Sort direction of the `order_by` metric, or of the time buckets
176
+ # when `order_by` is `time` and `time_bucket_width` is set. Defaults to `desc`.
177
+ order: nil,
178
+ # Query param: Row order. A metric ranks rows by that metric in the `order`
179
+ # direction. `time` orders rows by time bucket in the `order` direction (newest
180
+ # first by default) and, within a bucket, by `total_tokens`, highest first. `time`
181
+ # takes effect only with `time_bucket_width`; without it, `time` is the same as
182
+ # `total_tokens`. Defaults to `total_tokens`.
183
+ order_by: nil,
184
+ # Query param: Opaque cursor from a previous response's `next_page` field.
185
+ page: nil,
186
+ # Query param: Product surfaces to include. Defaults to all products.
187
+ products: nil,
188
+ # Query param: Filter to usage attributed to specific RBAC groups. Accepts tagged
189
+ # RBAC group IDs (`rbac_group_...`) or bare group UUIDs. A row matches when the
190
+ # user belonged to any of the listed groups on the (UTC) day the usage occurred;
191
+ # usage with no group attribution never matches.
192
+ rbac_group_ids: nil,
193
+ # Query param: Filter to specific service tiers. Use `group_by[]=service_tier` to
194
+ # break out per-tier values. Claude Developer Platform organizations only; matches
195
+ # nothing for a Claude Enterprise organization.
196
+ service_tiers: nil,
197
+ # Query param: Filter to usage incurred by specific Claude Managed Agents
198
+ # sessions, by tagged session ID (`sesn_...`). Use `group_by[]=session_id` to
199
+ # break out per-session values. Claude Developer Platform organizations only.
200
+ session_ids: nil,
201
+ # Query param: Filter to usage originating from specific Slack channels. Use
202
+ # `group_by[]=slack_channel_id` to break out per-channel values.
203
+ slack_channel_ids: nil,
204
+ # Query param: Filter to fast or standard inference mode. Use `group_by[]=speed`
205
+ # to break out per-mode values.
206
+ speeds: nil,
207
+ # Query param: Time-bucket granularity. When set, rows are returned per time
208
+ # bucket (one per bucket and dimension combination with usage) and each row's
209
+ # `starting_at` and `ending_at` are that bucket's bounds; the time bucket counts
210
+ # toward `limit`. `ending_at` is required when `time_bucket_width` is set, and
211
+ # with `time_bucket_width="1m"` the range may span at most 24 hours. When omitted,
212
+ # each row aggregates the requested range with `starting_at` and `ending_at` each
213
+ # rounded down to the hour.
214
+ time_bucket_width: nil,
215
+ # Query param: Filter to usage attributed to specific user profiles, by tagged
216
+ # user profile ID (`uprof_...`). Use `group_by[]=user_profile_id` to break out
217
+ # per-profile values. Claude Developer Platform organizations only.
218
+ user_profile_ids: nil,
219
+ # Query param: Filter to usage in specific workspaces, by tagged workspace ID
220
+ # (`wrkspc_...`). Use `group_by[]=workspace_id` to break out per-workspace values.
221
+ # Claude Developer Platform organizations only; matches nothing for a Claude
222
+ # Enterprise organization.
223
+ workspace_ids: nil,
224
+ # Header param: This endpoint is in beta: requests must send
225
+ # `analytics-usage-cost-2026-08-24` in this header.
226
+ betas: nil,
227
+ request_options: {}
228
+ )
229
+ end
230
+
231
+ # @api private
232
+ sig { params(client: Anthropic::Client).returns(T.attached_class) }
233
+ def self.new(client:)
234
+ end
235
+ end
236
+ end
237
+ end
238
+ end
239
+ end
240
+ end
@@ -6,12 +6,19 @@ module Anthropic
6
6
  class Organization
7
7
  class Analytics
8
8
  class UsageReport
9
- # Get token usage over time across a date range.
9
+ # [Legacy] Get token usage over time across a date range.
10
10
  #
11
11
  # Returns token usage bucketed by minute, hour, or day, optionally broken down by
12
- # product, model, context window, inference region, or speed. Available to
12
+ # one or more `group_by[]` dimensions, such as product or model. Available to
13
13
  # organizations on a Claude Enterprise plan. Requires an API key with the
14
14
  # `read:analytics` scope.
15
+ #
16
+ # This endpoint is one of the legacy Claude Enterprise usage and cost reports. For
17
+ # new integrations, use
18
+ # [`GET /v1/organizations/analytics/usage`](/docs/en/api/beta/organization/analytics/usage/list)
19
+ # in the Usage and Cost Analytics API instead. To move an existing integration,
20
+ # see
21
+ # [Migrate from the Claude Enterprise usage and cost reports](/docs/en/manage-claude/usage-cost-analytics-api#migrate-from-enterprise-analytics-reports).
15
22
  sig do
16
23
  params(
17
24
  starting_at: Time,
@@ -6,14 +6,21 @@ module Anthropic
6
6
  class Organization
7
7
  class Analytics
8
8
  class UserCostReport
9
- # Get per-user cost in USD across a date range.
9
+ # [Legacy] Get per-user cost in USD across a date range.
10
10
  #
11
- # Returns one row per user, ranked by spend. Use this to see which users account
12
- # for the most cost. Only cost attributable to a seat user is included; for
13
- # organization-wide totals including direct API-key and automation traffic, use
14
- # the bucketed `/v1/organizations/analytics/cost_report` endpoint. Available to
15
- # organizations on a Claude Enterprise plan. Requires an API key with the
16
- # `read:analytics` scope.
11
+ # Returns cost per user, ranked by spend; `group_by[]` or `bucket_width` splits a
12
+ # user across several rows. Use this to see which users account for the most cost.
13
+ # Only cost attributed to a user account is included; cost with no user attributed
14
+ # to it, such as Code Review usage and Claude Tag usage in Slack channels, is left
15
+ # out. Available to organizations on a Claude Enterprise plan. Requires an API key
16
+ # with the `read:analytics` scope.
17
+ #
18
+ # This endpoint is one of the legacy Claude Enterprise usage and cost reports. For
19
+ # new integrations, use
20
+ # [`GET /v1/organizations/analytics/cost`](/docs/en/api/beta/organization/analytics/cost/list)
21
+ # in the Usage and Cost Analytics API instead. To move an existing integration,
22
+ # see
23
+ # [Migrate from the Claude Enterprise usage and cost reports](/docs/en/manage-claude/usage-cost-analytics-api#migrate-from-enterprise-analytics-reports).
17
24
  sig do
18
25
  params(
19
26
  starting_at: Time,
@@ -6,14 +6,21 @@ module Anthropic
6
6
  class Organization
7
7
  class Analytics
8
8
  class UserUsageReport
9
- # Get per-user token usage across a date range.
9
+ # [Legacy] Get per-user token usage across a date range.
10
10
  #
11
- # Returns one row per user, ranked by the chosen token metric. Use this to see
12
- # which users consume the most tokens. Only usage attributable to a seat user is
13
- # included; for organization-wide totals including direct API-key and automation
14
- # traffic, use the bucketed `/v1/organizations/analytics/usage_report` endpoint.
15
- # Available to organizations on a Claude Enterprise plan. Requires an API key with
16
- # the `read:analytics` scope.
11
+ # Returns usage per user, ranked by the chosen token metric; `group_by[]` or
12
+ # `bucket_width` splits a user across several rows. Use this to see which users
13
+ # consume the most tokens. Only usage attributed to a user account is included;
14
+ # usage with no user attributed to it, such as Code Review usage and Claude Tag
15
+ # usage in Slack channels, is left out. Available to organizations on a Claude
16
+ # Enterprise plan. Requires an API key with the `read:analytics` scope.
17
+ #
18
+ # This endpoint is one of the legacy Claude Enterprise usage and cost reports. For
19
+ # new integrations, use
20
+ # [`GET /v1/organizations/analytics/usage`](/docs/en/api/beta/organization/analytics/usage/list)
21
+ # in the Usage and Cost Analytics API instead. To move an existing integration,
22
+ # see
23
+ # [Migrate from the Claude Enterprise usage and cost reports](/docs/en/manage-claude/usage-cost-analytics-api#migrate-from-enterprise-analytics-reports).
17
24
  sig do
18
25
  params(
19
26
  starting_at: Time,
@@ -48,6 +48,16 @@ module Anthropic
48
48
  end
49
49
  attr_reader :artifacts
50
50
 
51
+ sig do
52
+ returns(Anthropic::Resources::Beta::Organization::Analytics::Usage)
53
+ end
54
+ attr_reader :usage
55
+
56
+ sig do
57
+ returns(Anthropic::Resources::Beta::Organization::Analytics::Cost)
58
+ end
59
+ attr_reader :cost
60
+
51
61
  sig do
52
62
  returns(
53
63
  Anthropic::Resources::Beta::Organization::Analytics::UsageReport