anthropic 2.0.0 → 2.2.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 (202) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +35 -0
  3. data/README.md +1 -1
  4. data/lib/anthropic/client.rb +8 -0
  5. data/lib/anthropic/helpers/bedrock/client.rb +5 -0
  6. data/lib/anthropic/helpers/bedrock/mantle_client.rb +5 -0
  7. data/lib/anthropic/helpers/stainless_helper_header.rb +1 -0
  8. data/lib/anthropic/helpers/threads/beta_message_thread.rb +635 -0
  9. data/lib/anthropic/helpers/tools/runner.rb +79 -11
  10. data/lib/anthropic/helpers/vertex/client.rb +5 -0
  11. data/lib/anthropic/internal/report_page_cursor.rb +2 -2
  12. data/lib/anthropic/internal/tracing.rb +2 -0
  13. data/lib/anthropic/models/anthropic_beta.rb +6 -0
  14. data/lib/anthropic/models/beta/beta_message_thread_param.rb +61 -0
  15. data/lib/anthropic/models/beta/beta_thread_continue_params.rb +29 -0
  16. data/lib/anthropic/models/beta/beta_thread_create_params.rb +21 -0
  17. data/lib/anthropic/models/beta/message_create_params.rb +13 -1
  18. data/lib/anthropic/models/beta/messages/batch_create_params.rb +13 -1
  19. data/lib/anthropic/models/beta/organization/analytics/beta_analytics_cost_group.rb +271 -0
  20. data/lib/anthropic/models/beta/organization/analytics/beta_analytics_cost_group_by.rb +40 -0
  21. data/lib/anthropic/models/beta/organization/analytics/beta_analytics_cost_item.rb +57 -0
  22. data/lib/anthropic/models/beta/organization/analytics/beta_analytics_cost_metrics.rb +57 -0
  23. data/lib/anthropic/models/beta/organization/analytics/beta_analytics_cost_order_by.rb +22 -0
  24. data/lib/anthropic/models/beta/organization/analytics/beta_analytics_usage_group.rb +247 -0
  25. data/lib/anthropic/models/beta/organization/analytics/beta_analytics_usage_group_by.rb +38 -0
  26. data/lib/anthropic/models/beta/organization/analytics/beta_analytics_usage_item.rb +57 -0
  27. data/lib/anthropic/models/beta/organization/analytics/beta_analytics_usage_metrics.rb +79 -0
  28. data/lib/anthropic/models/beta/organization/analytics/beta_analytics_usage_order_by.rb +24 -0
  29. data/lib/anthropic/models/beta/organization/analytics/cost_list_params.rb +360 -0
  30. data/lib/anthropic/models/beta/organization/analytics/usage_list_params.rb +353 -0
  31. data/lib/anthropic/models/beta/organization/beta_analytics_actor.rb +81 -0
  32. data/lib/anthropic/models/beta/organization/beta_analytics_actor_type.rb +22 -0
  33. data/lib/anthropic/models/beta/organization/beta_analytics_api_actor.rb +27 -0
  34. data/lib/anthropic/models/beta/organization/beta_analytics_federated_actor.rb +42 -0
  35. data/lib/anthropic/models/beta/organization/beta_analytics_federated_actor_aws_provider.rb +35 -0
  36. data/lib/anthropic/models/beta/organization/beta_analytics_federated_actor_azure_provider.rb +27 -0
  37. data/lib/anthropic/models/beta/organization/beta_analytics_federated_actor_gcp_provider.rb +27 -0
  38. data/lib/anthropic/models/beta/organization/beta_analytics_federated_actor_oidc_provider.rb +27 -0
  39. data/lib/anthropic/models/beta/organization/beta_analytics_federated_actor_provider.rb +72 -0
  40. data/lib/anthropic/models/beta/organization/beta_analytics_grouped_cost_type.rb +21 -0
  41. data/lib/anthropic/models/beta/organization/beta_analytics_report_user_actor.rb +65 -0
  42. data/lib/anthropic/models/beta/organization/beta_analytics_service_account_actor.rb +27 -0
  43. data/lib/anthropic/models/beta/organization/beta_analytics_service_tier.rb +23 -0
  44. data/lib/anthropic/models/beta/organization/beta_analytics_speed.rb +19 -0
  45. data/lib/anthropic/models/beta/organization/beta_analytics_time_bucket_width.rb +20 -0
  46. data/lib/anthropic/models/beta/organization/beta_analytics_usage_cost_inference_geo.rb +19 -0
  47. data/lib/anthropic/models/beta/organization/beta_analytics_usage_cost_product_filter.rb +34 -0
  48. data/lib/anthropic/models/beta/organization/beta_analytics_usage_cost_sort_order.rb +19 -0
  49. data/lib/anthropic/models/beta/organization/beta_organization_rate_limit.rb +2 -1
  50. data/lib/anthropic/models/beta/organization/beta_plugin.rb +12 -6
  51. data/lib/anthropic/models/beta/organization/beta_plugin_content_scan.rb +11 -5
  52. data/lib/anthropic/models/beta/organization/workspaces/beta_workspace_rate_limit.rb +2 -1
  53. data/lib/anthropic/models/organization/organization_rate_limit.rb +2 -1
  54. data/lib/anthropic/models/organization/workspaces/workspace_rate_limit.rb +2 -1
  55. data/lib/anthropic/models/user_profile.rb +26 -1
  56. data/lib/anthropic/models/user_profile_enforcement_action.rb +66 -0
  57. data/lib/anthropic/models/user_profile_enforcement_action_ban.rb +62 -0
  58. data/lib/anthropic/models/user_profile_enforcement_action_next_step.rb +17 -0
  59. data/lib/anthropic/models/user_profile_enforcement_action_reason.rb +23 -0
  60. data/lib/anthropic/models/user_profile_enforcement_action_restriction.rb +67 -0
  61. data/lib/anthropic/models/user_profile_enforcement_status.rb +20 -0
  62. data/lib/anthropic/models/user_profile_list_params.rb +17 -1
  63. data/lib/anthropic/models.rb +12 -0
  64. data/lib/anthropic/resources/beta/messages.rb +78 -4
  65. data/lib/anthropic/resources/beta/organization/analytics/cost.rb +175 -0
  66. data/lib/anthropic/resources/beta/organization/analytics/cost_report.rb +13 -6
  67. data/lib/anthropic/resources/beta/organization/analytics/usage.rb +176 -0
  68. data/lib/anthropic/resources/beta/organization/analytics/usage_report.rb +9 -2
  69. data/lib/anthropic/resources/beta/organization/analytics/user_cost_report.rb +12 -5
  70. data/lib/anthropic/resources/beta/organization/analytics/user_usage_report.rb +15 -8
  71. data/lib/anthropic/resources/beta/organization/analytics.rb +8 -0
  72. data/lib/anthropic/resources/beta/organization/plugin_marketplaces.rb +6 -6
  73. data/lib/anthropic/resources/beta/organization/plugins.rb +12 -9
  74. data/lib/anthropic/resources/user_profiles.rb +5 -3
  75. data/lib/anthropic/version.rb +1 -1
  76. data/lib/anthropic.rb +42 -0
  77. data/rbi/anthropic/client.rbi +5 -0
  78. data/rbi/anthropic/helpers/bedrock/client.rbi +5 -0
  79. data/rbi/anthropic/helpers/bedrock/mantle_client.rbi +5 -0
  80. data/rbi/anthropic/helpers/threads/beta_message_thread.rbi +100 -0
  81. data/rbi/anthropic/helpers/vertex/client.rbi +5 -0
  82. data/rbi/anthropic/internal/tracing.rbi +4 -0
  83. data/rbi/anthropic/models/anthropic_beta.rbi +10 -0
  84. data/rbi/anthropic/models/beta/beta_message_thread_param.rbi +80 -0
  85. data/rbi/anthropic/models/beta/beta_thread_continue_params.rbi +43 -0
  86. data/rbi/anthropic/models/beta/beta_thread_create_params.rbi +31 -0
  87. data/rbi/anthropic/models/beta/message_create_params.rbi +37 -0
  88. data/rbi/anthropic/models/beta/messages/batch_create_params.rbi +37 -0
  89. data/rbi/anthropic/models/beta/organization/analytics/beta_analytics_cost_group.rbi +439 -0
  90. data/rbi/anthropic/models/beta/organization/analytics/beta_analytics_cost_group_by.rbi +140 -0
  91. data/rbi/anthropic/models/beta/organization/analytics/beta_analytics_cost_item.rbi +110 -0
  92. data/rbi/anthropic/models/beta/organization/analytics/beta_analytics_cost_metrics.rbi +79 -0
  93. data/rbi/anthropic/models/beta/organization/analytics/beta_analytics_cost_order_by.rbi +50 -0
  94. data/rbi/anthropic/models/beta/organization/analytics/beta_analytics_usage_group.rbi +399 -0
  95. data/rbi/anthropic/models/beta/organization/analytics/beta_analytics_usage_group_by.rbi +130 -0
  96. data/rbi/anthropic/models/beta/organization/analytics/beta_analytics_usage_item.rbi +110 -0
  97. data/rbi/anthropic/models/beta/organization/analytics/beta_analytics_usage_metrics.rbi +120 -0
  98. data/rbi/anthropic/models/beta/organization/analytics/beta_analytics_usage_order_by.rbi +60 -0
  99. data/rbi/anthropic/models/beta/organization/analytics/cost_list_params.rbi +624 -0
  100. data/rbi/anthropic/models/beta/organization/analytics/usage_list_params.rbi +612 -0
  101. data/rbi/anthropic/models/beta/organization/beta_analytics_actor.rbi +134 -0
  102. data/rbi/anthropic/models/beta/organization/beta_analytics_actor_type.rbi +54 -0
  103. data/rbi/anthropic/models/beta/organization/beta_analytics_api_actor.rbi +40 -0
  104. data/rbi/anthropic/models/beta/organization/beta_analytics_federated_actor.rbi +75 -0
  105. data/rbi/anthropic/models/beta/organization/beta_analytics_federated_actor_aws_provider.rbi +54 -0
  106. data/rbi/anthropic/models/beta/organization/beta_analytics_federated_actor_azure_provider.rbi +42 -0
  107. data/rbi/anthropic/models/beta/organization/beta_analytics_federated_actor_gcp_provider.rbi +42 -0
  108. data/rbi/anthropic/models/beta/organization/beta_analytics_federated_actor_oidc_provider.rbi +42 -0
  109. data/rbi/anthropic/models/beta/organization/beta_analytics_federated_actor_provider.rbi +107 -0
  110. data/rbi/anthropic/models/beta/organization/beta_analytics_grouped_cost_type.rbi +53 -0
  111. data/rbi/anthropic/models/beta/organization/beta_analytics_report_user_actor.rbi +94 -0
  112. data/rbi/anthropic/models/beta/organization/beta_analytics_service_account_actor.rbi +42 -0
  113. data/rbi/anthropic/models/beta/organization/beta_analytics_service_tier.rbi +63 -0
  114. data/rbi/anthropic/models/beta/organization/beta_analytics_speed.rbi +40 -0
  115. data/rbi/anthropic/models/beta/organization/beta_analytics_time_bucket_width.rbi +48 -0
  116. data/rbi/anthropic/models/beta/organization/beta_analytics_usage_cost_inference_geo.rbi +43 -0
  117. data/rbi/anthropic/models/beta/organization/beta_analytics_usage_cost_product_filter.rbi +98 -0
  118. data/rbi/anthropic/models/beta/organization/beta_analytics_usage_cost_sort_order.rbi +43 -0
  119. data/rbi/anthropic/models/beta/organization/beta_organization_rate_limit.rbi +4 -2
  120. data/rbi/anthropic/models/beta/organization/beta_plugin.rbi +20 -8
  121. data/rbi/anthropic/models/beta/organization/beta_plugin_content_scan.rbi +15 -6
  122. data/rbi/anthropic/models/beta/organization/workspaces/beta_workspace_rate_limit.rbi +4 -2
  123. data/rbi/anthropic/models/organization/organization_rate_limit.rbi +4 -2
  124. data/rbi/anthropic/models/organization/workspaces/workspace_rate_limit.rbi +4 -2
  125. data/rbi/anthropic/models/user_profile.rbi +42 -0
  126. data/rbi/anthropic/models/user_profile_enforcement_action.rbi +95 -0
  127. data/rbi/anthropic/models/user_profile_enforcement_action_ban.rbi +96 -0
  128. data/rbi/anthropic/models/user_profile_enforcement_action_next_step.rbi +34 -0
  129. data/rbi/anthropic/models/user_profile_enforcement_action_reason.rbi +58 -0
  130. data/rbi/anthropic/models/user_profile_enforcement_action_restriction.rbi +106 -0
  131. data/rbi/anthropic/models/user_profile_enforcement_status.rbi +39 -0
  132. data/rbi/anthropic/models/user_profile_list_params.rbi +36 -0
  133. data/rbi/anthropic/models.rbi +16 -0
  134. data/rbi/anthropic/resources/beta/messages.rbi +191 -0
  135. data/rbi/anthropic/resources/beta/organization/analytics/cost.rbi +245 -0
  136. data/rbi/anthropic/resources/beta/organization/analytics/cost_report.rbi +12 -5
  137. data/rbi/anthropic/resources/beta/organization/analytics/usage.rbi +240 -0
  138. data/rbi/anthropic/resources/beta/organization/analytics/usage_report.rbi +9 -2
  139. data/rbi/anthropic/resources/beta/organization/analytics/user_cost_report.rbi +12 -5
  140. data/rbi/anthropic/resources/beta/organization/analytics/user_usage_report.rbi +14 -7
  141. data/rbi/anthropic/resources/beta/organization/analytics.rbi +10 -0
  142. data/rbi/anthropic/resources/beta/organization/plugin_marketplaces.rbi +6 -6
  143. data/rbi/anthropic/resources/beta/organization/plugins.rbi +12 -9
  144. data/rbi/anthropic/resources/user_profiles.rbi +12 -0
  145. data/rbi/lib/anthropic/helpers/stainless_helper_header.rbi +2 -0
  146. data/sig/anthropic/client.rbs +2 -0
  147. data/sig/anthropic/helpers/bedrock/client.rbs +2 -0
  148. data/sig/anthropic/helpers/threads/beta_message_thread.rbs +40 -0
  149. data/sig/anthropic/helpers/tools/runner.rbs +40 -0
  150. data/sig/anthropic/helpers/vertex/client.rbs +2 -0
  151. data/sig/anthropic/internal/tracing.rbs +2 -0
  152. data/sig/anthropic/models/anthropic_beta.rbs +4 -0
  153. data/sig/anthropic/models/beta/beta_message_thread_param.rbs +40 -0
  154. data/sig/anthropic/models/beta/beta_thread_continue_params.rbs +20 -0
  155. data/sig/anthropic/models/beta/beta_thread_create_params.rbs +17 -0
  156. data/sig/anthropic/models/beta/message_create_params.rbs +5 -0
  157. data/sig/anthropic/models/beta/messages/batch_create_params.rbs +5 -0
  158. data/sig/anthropic/models/beta/organization/analytics/beta_analytics_cost_group.rbs +126 -0
  159. data/sig/anthropic/models/beta/organization/analytics/beta_analytics_cost_group_by.rbs +60 -0
  160. data/sig/anthropic/models/beta/organization/analytics/beta_analytics_cost_item.rbs +41 -0
  161. data/sig/anthropic/models/beta/organization/analytics/beta_analytics_cost_metrics.rbs +41 -0
  162. data/sig/anthropic/models/beta/organization/analytics/beta_analytics_cost_order_by.rbs +21 -0
  163. data/sig/anthropic/models/beta/organization/analytics/beta_analytics_usage_group.rbs +116 -0
  164. data/sig/anthropic/models/beta/organization/analytics/beta_analytics_usage_group_by.rbs +56 -0
  165. data/sig/anthropic/models/beta/organization/analytics/beta_analytics_usage_item.rbs +41 -0
  166. data/sig/anthropic/models/beta/organization/analytics/beta_analytics_usage_metrics.rbs +56 -0
  167. data/sig/anthropic/models/beta/organization/analytics/beta_analytics_usage_order_by.rbs +28 -0
  168. data/sig/anthropic/models/beta/organization/analytics/cost_list_params.rbs +188 -0
  169. data/sig/anthropic/models/beta/organization/analytics/usage_list_params.rbs +188 -0
  170. data/sig/anthropic/models/beta/organization/beta_analytics_actor.rbs +67 -0
  171. data/sig/anthropic/models/beta/organization/beta_analytics_actor_type.rbs +21 -0
  172. data/sig/anthropic/models/beta/organization/beta_analytics_api_actor.rbs +19 -0
  173. data/sig/anthropic/models/beta/organization/beta_analytics_federated_actor.rbs +34 -0
  174. data/sig/anthropic/models/beta/organization/beta_analytics_federated_actor_aws_provider.rbs +30 -0
  175. data/sig/anthropic/models/beta/organization/beta_analytics_federated_actor_azure_provider.rbs +20 -0
  176. data/sig/anthropic/models/beta/organization/beta_analytics_federated_actor_gcp_provider.rbs +20 -0
  177. data/sig/anthropic/models/beta/organization/beta_analytics_federated_actor_oidc_provider.rbs +20 -0
  178. data/sig/anthropic/models/beta/organization/beta_analytics_federated_actor_provider.rbs +60 -0
  179. data/sig/anthropic/models/beta/organization/beta_analytics_grouped_cost_type.rbs +21 -0
  180. data/sig/anthropic/models/beta/organization/beta_analytics_report_user_actor.rbs +44 -0
  181. data/sig/anthropic/models/beta/organization/beta_analytics_service_account_actor.rbs +26 -0
  182. data/sig/anthropic/models/beta/organization/beta_analytics_service_tier.rbs +28 -0
  183. data/sig/anthropic/models/beta/organization/beta_analytics_speed.rbs +18 -0
  184. data/sig/anthropic/models/beta/organization/beta_analytics_time_bucket_width.rbs +19 -0
  185. data/sig/anthropic/models/beta/organization/beta_analytics_usage_cost_inference_geo.rbs +18 -0
  186. data/sig/anthropic/models/beta/organization/beta_analytics_usage_cost_product_filter.rbs +40 -0
  187. data/sig/anthropic/models/beta/organization/beta_analytics_usage_cost_sort_order.rbs +18 -0
  188. data/sig/anthropic/models/user_profile.rbs +10 -0
  189. data/sig/anthropic/models/user_profile_enforcement_action.rbs +50 -0
  190. data/sig/anthropic/models/user_profile_enforcement_action_ban.rbs +45 -0
  191. data/sig/anthropic/models/user_profile_enforcement_action_next_step.rbs +13 -0
  192. data/sig/anthropic/models/user_profile_enforcement_action_reason.rbs +24 -0
  193. data/sig/anthropic/models/user_profile_enforcement_action_restriction.rbs +45 -0
  194. data/sig/anthropic/models/user_profile_enforcement_status.rbs +17 -0
  195. data/sig/anthropic/models/user_profile_list_params.rbs +9 -0
  196. data/sig/anthropic/models.rbs +12 -0
  197. data/sig/anthropic/resources/beta/messages.rbs +33 -0
  198. data/sig/anthropic/resources/beta/organization/analytics/cost.rbs +46 -0
  199. data/sig/anthropic/resources/beta/organization/analytics/usage.rbs +46 -0
  200. data/sig/anthropic/resources/beta/organization/analytics.rbs +4 -0
  201. data/sig/anthropic/resources/user_profiles.rbs +1 -0
  202. metadata +130 -3
@@ -0,0 +1,134 @@
1
+ # typed: strong
2
+
3
+ module Anthropic
4
+ module Models
5
+ module Beta
6
+ module Organization
7
+ module BetaAnalyticsActor
8
+ extend Anthropic::Internal::Type::Union
9
+
10
+ Variants =
11
+ T.type_alias do
12
+ T.any(
13
+ Anthropic::Beta::Organization::BetaAnalyticsReportUserActor,
14
+ Anthropic::Beta::Organization::BetaAnalyticsServiceAccountActor,
15
+ Anthropic::Beta::Organization::BetaAnalyticsFederatedActor,
16
+ Anthropic::Beta::Organization::BetaAnalyticsAPIActor
17
+ )
18
+ end
19
+
20
+ module Type
21
+ extend Anthropic::Internal::Type::Enum
22
+
23
+ TaggedSymbol =
24
+ T.type_alias do
25
+ T.all(
26
+ Symbol,
27
+ Anthropic::Beta::Organization::BetaAnalyticsActor::Type
28
+ )
29
+ end
30
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
31
+
32
+ USER_ACTOR =
33
+ T.let(
34
+ :user_actor,
35
+ Anthropic::Beta::Organization::BetaAnalyticsActor::Type::TaggedSymbol
36
+ )
37
+ SERVICE_ACCOUNT_ACTOR =
38
+ T.let(
39
+ :service_account_actor,
40
+ Anthropic::Beta::Organization::BetaAnalyticsActor::Type::TaggedSymbol
41
+ )
42
+ FEDERATED_ACTOR =
43
+ T.let(
44
+ :federated_actor,
45
+ Anthropic::Beta::Organization::BetaAnalyticsActor::Type::TaggedSymbol
46
+ )
47
+ API_ACTOR =
48
+ T.let(
49
+ :api_actor,
50
+ Anthropic::Beta::Organization::BetaAnalyticsActor::Type::TaggedSymbol
51
+ )
52
+
53
+ sig do
54
+ override.returns(
55
+ T::Array[
56
+ Anthropic::Beta::Organization::BetaAnalyticsActor::Type::TaggedSymbol
57
+ ]
58
+ )
59
+ end
60
+ def self.values
61
+ end
62
+ end
63
+
64
+ sig do
65
+ override.returns(
66
+ T::Array[
67
+ Anthropic::Beta::Organization::BetaAnalyticsActor::Variants
68
+ ]
69
+ )
70
+ end
71
+ def self.variants
72
+ end
73
+
74
+ # Creates a new instance of the variant class whose `type` matches the given
75
+ # value, passing the remaining arguments to its constructor.
76
+ sig do
77
+ params(
78
+ type:
79
+ Anthropic::Beta::Organization::BetaAnalyticsActor::Type::OrSymbol,
80
+ deleted: T::Boolean,
81
+ email_address: T.nilable(String),
82
+ name: T.nilable(String),
83
+ user_id: String,
84
+ service_account_id: String,
85
+ provider:
86
+ T.any(
87
+ Anthropic::Beta::Organization::BetaAnalyticsFederatedActorAWSProvider::OrHash,
88
+ Anthropic::Beta::Organization::BetaAnalyticsFederatedActorAzureProvider::OrHash,
89
+ Anthropic::Beta::Organization::BetaAnalyticsFederatedActorGCPProvider::OrHash,
90
+ Anthropic::Beta::Organization::BetaAnalyticsFederatedActorOIDCProvider::OrHash
91
+ ),
92
+ subject: T.nilable(String),
93
+ api_key_id: String
94
+ ).returns(
95
+ Anthropic::Beta::Organization::BetaAnalyticsActor::Variants
96
+ )
97
+ end
98
+ def self.new(
99
+ type:,
100
+ # True when the account has been deleted, or when the user is no longer a member
101
+ # of the organization or its associated organizations (for example, their
102
+ # membership was removed or they were deprovisioned via your identity provider).
103
+ # `email_address` stays populated for removed users and is null when the account
104
+ # has been deleted. `name` follows the rules described on that field. The
105
+ # `user_id` is still populated for reconciliation.
106
+ deleted: nil,
107
+ # The user's current email address, including for users who are no longer members
108
+ # of the organization. Null when the account has been deleted and for
109
+ # system-minted service accounts.
110
+ email_address: nil,
111
+ # The user's current full name. Null when the user has not set one.
112
+ # `"Deleted User"` when the account has been deleted, or when the user is no
113
+ # longer a member and the organization hides removed users' names.
114
+ name: nil,
115
+ # Tagged user ID.
116
+ user_id: nil,
117
+ # Tagged service account ID.
118
+ service_account_id: nil,
119
+ # The trusted provider that asserted the caller's identity.
120
+ provider: nil,
121
+ # The provider's identifier for the caller: on `aws`, the IAM principal ARN (one
122
+ # role is one actor across its sessions); on `gcp`, the caller's IAM principal
123
+ # identifier as Google Cloud reports it, such as `serviceAccount:<email>`,
124
+ # `user:<email>`, or a `principal://...` URI.
125
+ subject: nil,
126
+ # Tagged API key ID.
127
+ api_key_id: nil
128
+ )
129
+ end
130
+ end
131
+ end
132
+ end
133
+ end
134
+ end
@@ -0,0 +1,54 @@
1
+ # typed: strong
2
+
3
+ module Anthropic
4
+ module Models
5
+ module Beta
6
+ module Organization
7
+ # Kind of identity a row's usage is attributed to.
8
+ module BetaAnalyticsActorType
9
+ extend Anthropic::Internal::Type::Enum
10
+
11
+ TaggedSymbol =
12
+ T.type_alias do
13
+ T.all(
14
+ Symbol,
15
+ Anthropic::Beta::Organization::BetaAnalyticsActorType
16
+ )
17
+ end
18
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
19
+
20
+ API_ACTOR =
21
+ T.let(
22
+ :api_actor,
23
+ Anthropic::Beta::Organization::BetaAnalyticsActorType::TaggedSymbol
24
+ )
25
+ FEDERATED_ACTOR =
26
+ T.let(
27
+ :federated_actor,
28
+ Anthropic::Beta::Organization::BetaAnalyticsActorType::TaggedSymbol
29
+ )
30
+ SERVICE_ACCOUNT_ACTOR =
31
+ T.let(
32
+ :service_account_actor,
33
+ Anthropic::Beta::Organization::BetaAnalyticsActorType::TaggedSymbol
34
+ )
35
+ USER_ACTOR =
36
+ T.let(
37
+ :user_actor,
38
+ Anthropic::Beta::Organization::BetaAnalyticsActorType::TaggedSymbol
39
+ )
40
+
41
+ sig do
42
+ override.returns(
43
+ T::Array[
44
+ Anthropic::Beta::Organization::BetaAnalyticsActorType::TaggedSymbol
45
+ ]
46
+ )
47
+ end
48
+ def self.values
49
+ end
50
+ end
51
+ end
52
+ end
53
+ end
54
+ end
@@ -0,0 +1,40 @@
1
+ # typed: strong
2
+
3
+ module Anthropic
4
+ module Models
5
+ module Beta
6
+ module Organization
7
+ class BetaAnalyticsAPIActor < Anthropic::Internal::Type::BaseModel
8
+ OrHash =
9
+ T.type_alias do
10
+ T.any(
11
+ Anthropic::Beta::Organization::BetaAnalyticsAPIActor,
12
+ Anthropic::Internal::AnyHash
13
+ )
14
+ end
15
+
16
+ # Tagged API key ID.
17
+ sig { returns(String) }
18
+ attr_accessor :api_key_id
19
+
20
+ sig { returns(Symbol) }
21
+ attr_accessor :type
22
+
23
+ sig do
24
+ params(api_key_id: String, type: Symbol).returns(T.attached_class)
25
+ end
26
+ def self.new(
27
+ # Tagged API key ID.
28
+ api_key_id:,
29
+ type: :api_actor
30
+ )
31
+ end
32
+
33
+ sig { override.returns({ api_key_id: String, type: Symbol }) }
34
+ def to_hash
35
+ end
36
+ end
37
+ end
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,75 @@
1
+ # typed: strong
2
+
3
+ module Anthropic
4
+ module Models
5
+ module Beta
6
+ module Organization
7
+ class BetaAnalyticsFederatedActor < Anthropic::Internal::Type::BaseModel
8
+ OrHash =
9
+ T.type_alias do
10
+ T.any(
11
+ Anthropic::Beta::Organization::BetaAnalyticsFederatedActor,
12
+ Anthropic::Internal::AnyHash
13
+ )
14
+ end
15
+
16
+ # The trusted provider that asserted the caller's identity.
17
+ sig do
18
+ returns(
19
+ Anthropic::Beta::Organization::BetaAnalyticsFederatedActorProvider::Variants
20
+ )
21
+ end
22
+ attr_accessor :provider
23
+
24
+ # The provider's identifier for the caller: on `aws`, the IAM principal ARN (one
25
+ # role is one actor across its sessions); on `gcp`, the caller's IAM principal
26
+ # identifier as Google Cloud reports it, such as `serviceAccount:<email>`,
27
+ # `user:<email>`, or a `principal://...` URI.
28
+ sig { returns(T.nilable(String)) }
29
+ attr_accessor :subject
30
+
31
+ sig { returns(Symbol) }
32
+ attr_accessor :type
33
+
34
+ sig do
35
+ params(
36
+ provider:
37
+ T.any(
38
+ Anthropic::Beta::Organization::BetaAnalyticsFederatedActorAWSProvider::OrHash,
39
+ Anthropic::Beta::Organization::BetaAnalyticsFederatedActorAzureProvider::OrHash,
40
+ Anthropic::Beta::Organization::BetaAnalyticsFederatedActorGCPProvider::OrHash,
41
+ Anthropic::Beta::Organization::BetaAnalyticsFederatedActorOIDCProvider::OrHash
42
+ ),
43
+ subject: T.nilable(String),
44
+ type: Symbol
45
+ ).returns(T.attached_class)
46
+ end
47
+ def self.new(
48
+ # The trusted provider that asserted the caller's identity.
49
+ provider:,
50
+ # The provider's identifier for the caller: on `aws`, the IAM principal ARN (one
51
+ # role is one actor across its sessions); on `gcp`, the caller's IAM principal
52
+ # identifier as Google Cloud reports it, such as `serviceAccount:<email>`,
53
+ # `user:<email>`, or a `principal://...` URI.
54
+ subject:,
55
+ type: :federated_actor
56
+ )
57
+ end
58
+
59
+ sig do
60
+ override.returns(
61
+ {
62
+ provider:
63
+ Anthropic::Beta::Organization::BetaAnalyticsFederatedActorProvider::Variants,
64
+ subject: T.nilable(String),
65
+ type: Symbol
66
+ }
67
+ )
68
+ end
69
+ def to_hash
70
+ end
71
+ end
72
+ end
73
+ end
74
+ end
75
+ end
@@ -0,0 +1,54 @@
1
+ # typed: strong
2
+
3
+ module Anthropic
4
+ module Models
5
+ module Beta
6
+ module Organization
7
+ class BetaAnalyticsFederatedActorAWSProvider < Anthropic::Internal::Type::BaseModel
8
+ OrHash =
9
+ T.type_alias do
10
+ T.any(
11
+ Anthropic::Beta::Organization::BetaAnalyticsFederatedActorAWSProvider,
12
+ Anthropic::Internal::AnyHash
13
+ )
14
+ end
15
+
16
+ # The AWS account the organization is bound to.
17
+ sig { returns(String) }
18
+ attr_accessor :account_id
19
+
20
+ # The AWS-signed ARN of the IAM principal that made the requests.
21
+ sig { returns(String) }
22
+ attr_accessor :signed_principal
23
+
24
+ sig { returns(Symbol) }
25
+ attr_accessor :type
26
+
27
+ sig do
28
+ params(
29
+ account_id: String,
30
+ signed_principal: String,
31
+ type: Symbol
32
+ ).returns(T.attached_class)
33
+ end
34
+ def self.new(
35
+ # The AWS account the organization is bound to.
36
+ account_id:,
37
+ # The AWS-signed ARN of the IAM principal that made the requests.
38
+ signed_principal:,
39
+ type: :aws
40
+ )
41
+ end
42
+
43
+ sig do
44
+ override.returns(
45
+ { account_id: String, signed_principal: String, type: Symbol }
46
+ )
47
+ end
48
+ def to_hash
49
+ end
50
+ end
51
+ end
52
+ end
53
+ end
54
+ end
@@ -0,0 +1,42 @@
1
+ # typed: strong
2
+
3
+ module Anthropic
4
+ module Models
5
+ module Beta
6
+ module Organization
7
+ class BetaAnalyticsFederatedActorAzureProvider < Anthropic::Internal::Type::BaseModel
8
+ OrHash =
9
+ T.type_alias do
10
+ T.any(
11
+ Anthropic::Beta::Organization::BetaAnalyticsFederatedActorAzureProvider,
12
+ Anthropic::Internal::AnyHash
13
+ )
14
+ end
15
+
16
+ # The Azure subscription the organization is bound to.
17
+ sig { returns(String) }
18
+ attr_accessor :subscription_id
19
+
20
+ sig { returns(Symbol) }
21
+ attr_accessor :type
22
+
23
+ sig do
24
+ params(subscription_id: String, type: Symbol).returns(
25
+ T.attached_class
26
+ )
27
+ end
28
+ def self.new(
29
+ # The Azure subscription the organization is bound to.
30
+ subscription_id:,
31
+ type: :azure
32
+ )
33
+ end
34
+
35
+ sig { override.returns({ subscription_id: String, type: Symbol }) }
36
+ def to_hash
37
+ end
38
+ end
39
+ end
40
+ end
41
+ end
42
+ end
@@ -0,0 +1,42 @@
1
+ # typed: strong
2
+
3
+ module Anthropic
4
+ module Models
5
+ module Beta
6
+ module Organization
7
+ class BetaAnalyticsFederatedActorGCPProvider < Anthropic::Internal::Type::BaseModel
8
+ OrHash =
9
+ T.type_alias do
10
+ T.any(
11
+ Anthropic::Beta::Organization::BetaAnalyticsFederatedActorGCPProvider,
12
+ Anthropic::Internal::AnyHash
13
+ )
14
+ end
15
+
16
+ # The Google Cloud project the organization is bound to.
17
+ sig { returns(String) }
18
+ attr_accessor :project_number
19
+
20
+ sig { returns(Symbol) }
21
+ attr_accessor :type
22
+
23
+ sig do
24
+ params(project_number: String, type: Symbol).returns(
25
+ T.attached_class
26
+ )
27
+ end
28
+ def self.new(
29
+ # The Google Cloud project the organization is bound to.
30
+ project_number:,
31
+ type: :gcp
32
+ )
33
+ end
34
+
35
+ sig { override.returns({ project_number: String, type: Symbol }) }
36
+ def to_hash
37
+ end
38
+ end
39
+ end
40
+ end
41
+ end
42
+ end
@@ -0,0 +1,42 @@
1
+ # typed: strong
2
+
3
+ module Anthropic
4
+ module Models
5
+ module Beta
6
+ module Organization
7
+ class BetaAnalyticsFederatedActorOIDCProvider < Anthropic::Internal::Type::BaseModel
8
+ OrHash =
9
+ T.type_alias do
10
+ T.any(
11
+ Anthropic::Beta::Organization::BetaAnalyticsFederatedActorOIDCProvider,
12
+ Anthropic::Internal::AnyHash
13
+ )
14
+ end
15
+
16
+ # The federation issuer's URL.
17
+ sig { returns(T.nilable(String)) }
18
+ attr_accessor :issuer
19
+
20
+ sig { returns(Symbol) }
21
+ attr_accessor :type
22
+
23
+ sig do
24
+ params(issuer: T.nilable(String), type: Symbol).returns(
25
+ T.attached_class
26
+ )
27
+ end
28
+ def self.new(
29
+ # The federation issuer's URL.
30
+ issuer:,
31
+ type: :oidc
32
+ )
33
+ end
34
+
35
+ sig { override.returns({ issuer: T.nilable(String), type: Symbol }) }
36
+ def to_hash
37
+ end
38
+ end
39
+ end
40
+ end
41
+ end
42
+ end
@@ -0,0 +1,107 @@
1
+ # typed: strong
2
+
3
+ module Anthropic
4
+ module Models
5
+ module Beta
6
+ module Organization
7
+ module BetaAnalyticsFederatedActorProvider
8
+ extend Anthropic::Internal::Type::Union
9
+
10
+ Variants =
11
+ T.type_alias do
12
+ T.any(
13
+ Anthropic::Beta::Organization::BetaAnalyticsFederatedActorAWSProvider,
14
+ Anthropic::Beta::Organization::BetaAnalyticsFederatedActorAzureProvider,
15
+ Anthropic::Beta::Organization::BetaAnalyticsFederatedActorGCPProvider,
16
+ Anthropic::Beta::Organization::BetaAnalyticsFederatedActorOIDCProvider
17
+ )
18
+ end
19
+
20
+ module Type
21
+ extend Anthropic::Internal::Type::Enum
22
+
23
+ TaggedSymbol =
24
+ T.type_alias do
25
+ T.all(
26
+ Symbol,
27
+ Anthropic::Beta::Organization::BetaAnalyticsFederatedActorProvider::Type
28
+ )
29
+ end
30
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
31
+
32
+ AWS =
33
+ T.let(
34
+ :aws,
35
+ Anthropic::Beta::Organization::BetaAnalyticsFederatedActorProvider::Type::TaggedSymbol
36
+ )
37
+ AZURE =
38
+ T.let(
39
+ :azure,
40
+ Anthropic::Beta::Organization::BetaAnalyticsFederatedActorProvider::Type::TaggedSymbol
41
+ )
42
+ GCP =
43
+ T.let(
44
+ :gcp,
45
+ Anthropic::Beta::Organization::BetaAnalyticsFederatedActorProvider::Type::TaggedSymbol
46
+ )
47
+ OIDC =
48
+ T.let(
49
+ :oidc,
50
+ Anthropic::Beta::Organization::BetaAnalyticsFederatedActorProvider::Type::TaggedSymbol
51
+ )
52
+
53
+ sig do
54
+ override.returns(
55
+ T::Array[
56
+ Anthropic::Beta::Organization::BetaAnalyticsFederatedActorProvider::Type::TaggedSymbol
57
+ ]
58
+ )
59
+ end
60
+ def self.values
61
+ end
62
+ end
63
+
64
+ sig do
65
+ override.returns(
66
+ T::Array[
67
+ Anthropic::Beta::Organization::BetaAnalyticsFederatedActorProvider::Variants
68
+ ]
69
+ )
70
+ end
71
+ def self.variants
72
+ end
73
+
74
+ # Creates a new instance of the variant class whose `type` matches the given
75
+ # value, passing the remaining arguments to its constructor.
76
+ sig do
77
+ params(
78
+ type:
79
+ Anthropic::Beta::Organization::BetaAnalyticsFederatedActorProvider::Type::OrSymbol,
80
+ account_id: String,
81
+ signed_principal: String,
82
+ subscription_id: String,
83
+ project_number: String,
84
+ issuer: T.nilable(String)
85
+ ).returns(
86
+ Anthropic::Beta::Organization::BetaAnalyticsFederatedActorProvider::Variants
87
+ )
88
+ end
89
+ def self.new(
90
+ type:,
91
+ # The AWS account the organization is bound to.
92
+ account_id: nil,
93
+ # The AWS-signed ARN of the IAM principal that made the requests.
94
+ signed_principal: nil,
95
+ # The Azure subscription the organization is bound to.
96
+ subscription_id: nil,
97
+ # The Google Cloud project the organization is bound to.
98
+ project_number: nil,
99
+ # The federation issuer's URL.
100
+ issuer: nil
101
+ )
102
+ end
103
+ end
104
+ end
105
+ end
106
+ end
107
+ end
@@ -0,0 +1,53 @@
1
+ # typed: strong
2
+
3
+ module Anthropic
4
+ module Models
5
+ module Beta
6
+ module Organization
7
+ module BetaAnalyticsGroupedCostType
8
+ extend Anthropic::Internal::Type::Enum
9
+
10
+ TaggedSymbol =
11
+ T.type_alias do
12
+ T.all(
13
+ Symbol,
14
+ Anthropic::Beta::Organization::BetaAnalyticsGroupedCostType
15
+ )
16
+ end
17
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
18
+
19
+ CODE_EXECUTION =
20
+ T.let(
21
+ :code_execution,
22
+ Anthropic::Beta::Organization::BetaAnalyticsGroupedCostType::TaggedSymbol
23
+ )
24
+ SESSION_USAGE =
25
+ T.let(
26
+ :session_usage,
27
+ Anthropic::Beta::Organization::BetaAnalyticsGroupedCostType::TaggedSymbol
28
+ )
29
+ TOKENS =
30
+ T.let(
31
+ :tokens,
32
+ Anthropic::Beta::Organization::BetaAnalyticsGroupedCostType::TaggedSymbol
33
+ )
34
+ WEB_SEARCH =
35
+ T.let(
36
+ :web_search,
37
+ Anthropic::Beta::Organization::BetaAnalyticsGroupedCostType::TaggedSymbol
38
+ )
39
+
40
+ sig do
41
+ override.returns(
42
+ T::Array[
43
+ Anthropic::Beta::Organization::BetaAnalyticsGroupedCostType::TaggedSymbol
44
+ ]
45
+ )
46
+ end
47
+ def self.values
48
+ end
49
+ end
50
+ end
51
+ end
52
+ end
53
+ end