openai 0.70.0 → 0.71.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 (84) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +10 -0
  3. data/README.md +51 -1
  4. data/lib/openai/client.rb +62 -8
  5. data/lib/openai/internal/provider.rb +31 -0
  6. data/lib/openai/internal/transport/base_client.rb +65 -21
  7. data/lib/openai/models/admin/organization/audit_log_list_params.rb +84 -0
  8. data/lib/openai/models/admin/organization/audit_log_list_response.rb +84 -0
  9. data/lib/openai/models/admin/organization/projects/project_service_account.rb +4 -3
  10. data/lib/openai/models/admin/organization/projects/service_account_create_params.rb +9 -1
  11. data/lib/openai/models/admin/organization/projects/service_account_create_response.rb +26 -6
  12. data/lib/openai/models/admin/organization/projects/service_accounts/api_key_create_params.rb +54 -0
  13. data/lib/openai/models/admin/organization/projects/service_accounts/api_key_create_response.rb +57 -0
  14. data/lib/openai/models/admin/organization/usage_audio_speeches_response.rb +88 -13
  15. data/lib/openai/models/admin/organization/usage_audio_transcriptions_response.rb +88 -13
  16. data/lib/openai/models/admin/organization/usage_code_interpreter_sessions_response.rb +88 -13
  17. data/lib/openai/models/admin/organization/usage_completions_response.rb +88 -13
  18. data/lib/openai/models/admin/organization/usage_costs_response.rb +88 -13
  19. data/lib/openai/models/admin/organization/usage_embeddings_response.rb +88 -13
  20. data/lib/openai/models/admin/organization/usage_file_search_calls_response.rb +88 -13
  21. data/lib/openai/models/admin/organization/usage_images_response.rb +88 -13
  22. data/lib/openai/models/admin/organization/usage_moderations_response.rb +88 -13
  23. data/lib/openai/models/admin/organization/usage_vector_stores_response.rb +88 -13
  24. data/lib/openai/models/admin/organization/usage_web_search_calls_response.rb +88 -13
  25. data/lib/openai/models/beta/beta_response_input_item.rb +16 -32
  26. data/lib/openai/provider.rb +18 -0
  27. data/lib/openai/providers/bedrock.rb +489 -0
  28. data/lib/openai/resources/admin/organization/projects/service_accounts/api_keys.rb +60 -0
  29. data/lib/openai/resources/admin/organization/projects/service_accounts.rb +10 -3
  30. data/lib/openai/version.rb +1 -1
  31. data/lib/openai.rb +6 -0
  32. data/rbi/openai/client.rbi +17 -0
  33. data/rbi/openai/internal/provider.rbi +51 -0
  34. data/rbi/openai/internal/transport/base_client.rbi +32 -0
  35. data/rbi/openai/models/admin/organization/audit_log_list_params.rbi +420 -0
  36. data/rbi/openai/models/admin/organization/audit_log_list_response.rbi +420 -0
  37. data/rbi/openai/models/admin/organization/projects/project_service_account.rbi +8 -3
  38. data/rbi/openai/models/admin/organization/projects/service_account_create_params.rbi +8 -0
  39. data/rbi/openai/models/admin/organization/projects/service_account_create_response.rbi +52 -8
  40. data/rbi/openai/models/admin/organization/projects/service_accounts/api_key_create_params.rbi +84 -0
  41. data/rbi/openai/models/admin/organization/projects/service_accounts/api_key_create_response.rbi +80 -0
  42. data/rbi/openai/models/admin/organization/usage_audio_speeches_response.rbi +121 -16
  43. data/rbi/openai/models/admin/organization/usage_audio_transcriptions_response.rbi +121 -16
  44. data/rbi/openai/models/admin/organization/usage_code_interpreter_sessions_response.rbi +121 -16
  45. data/rbi/openai/models/admin/organization/usage_completions_response.rbi +121 -16
  46. data/rbi/openai/models/admin/organization/usage_costs_response.rbi +121 -16
  47. data/rbi/openai/models/admin/organization/usage_embeddings_response.rbi +121 -16
  48. data/rbi/openai/models/admin/organization/usage_file_search_calls_response.rbi +121 -16
  49. data/rbi/openai/models/admin/organization/usage_images_response.rbi +121 -16
  50. data/rbi/openai/models/admin/organization/usage_moderations_response.rbi +121 -16
  51. data/rbi/openai/models/admin/organization/usage_vector_stores_response.rbi +121 -16
  52. data/rbi/openai/models/admin/organization/usage_web_search_calls_response.rbi +121 -16
  53. data/rbi/openai/models/beta/beta_response_input_item.rbi +39 -46
  54. data/rbi/openai/provider.rbi +9 -0
  55. data/rbi/openai/providers.rbi +33 -0
  56. data/rbi/openai/resources/admin/organization/projects/service_accounts/api_keys.rbi +45 -0
  57. data/rbi/openai/resources/admin/organization/projects/service_accounts.rbi +12 -2
  58. data/sig/openai/client.rbs +7 -0
  59. data/sig/openai/internal/provider.rbs +29 -0
  60. data/sig/openai/internal/transport/base_client.rbs +17 -1
  61. data/sig/openai/models/admin/organization/audit_log_list_params.rbs +168 -0
  62. data/sig/openai/models/admin/organization/audit_log_list_response.rbs +168 -0
  63. data/sig/openai/models/admin/organization/projects/project_service_account.rbs +2 -1
  64. data/sig/openai/models/admin/organization/projects/service_account_create_params.rbs +9 -1
  65. data/sig/openai/models/admin/organization/projects/service_account_create_response.rbs +16 -5
  66. data/sig/openai/models/admin/organization/projects/service_accounts/api_key_create_params.rbs +53 -0
  67. data/sig/openai/models/admin/organization/projects/service_accounts/api_key_create_response.rbs +48 -0
  68. data/sig/openai/models/admin/organization/usage_audio_speeches_response.rbs +63 -0
  69. data/sig/openai/models/admin/organization/usage_audio_transcriptions_response.rbs +63 -0
  70. data/sig/openai/models/admin/organization/usage_code_interpreter_sessions_response.rbs +63 -0
  71. data/sig/openai/models/admin/organization/usage_completions_response.rbs +63 -0
  72. data/sig/openai/models/admin/organization/usage_costs_response.rbs +63 -0
  73. data/sig/openai/models/admin/organization/usage_embeddings_response.rbs +63 -0
  74. data/sig/openai/models/admin/organization/usage_file_search_calls_response.rbs +63 -0
  75. data/sig/openai/models/admin/organization/usage_images_response.rbs +63 -0
  76. data/sig/openai/models/admin/organization/usage_moderations_response.rbs +63 -0
  77. data/sig/openai/models/admin/organization/usage_vector_stores_response.rbs +63 -0
  78. data/sig/openai/models/admin/organization/usage_web_search_calls_response.rbs +63 -0
  79. data/sig/openai/models/beta/beta_response_input_item.rbs +18 -24
  80. data/sig/openai/provider.rbs +5 -0
  81. data/sig/openai/providers.rbs +15 -0
  82. data/sig/openai/resources/admin/organization/projects/service_accounts/api_keys.rbs +23 -0
  83. data/sig/openai/resources/admin/organization/projects/service_accounts.rbs +3 -0
  84. metadata +20 -2
@@ -1525,7 +1525,13 @@ module OpenAI
1525
1525
  sig do
1526
1526
  returns(
1527
1527
  T.nilable(
1528
- OpenAI::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotations::Variants
1528
+ T::Array[
1529
+ T.any(
1530
+ OpenAI::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotation::FileCitation,
1531
+ OpenAI::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotation::URLCitation,
1532
+ OpenAI::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotation::ContainerFileCitation
1533
+ )
1534
+ ]
1529
1535
  )
1530
1536
  )
1531
1537
  end
@@ -1534,7 +1540,13 @@ module OpenAI
1534
1540
  sig do
1535
1541
  params(
1536
1542
  annotations:
1537
- OpenAI::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotations::Variants
1543
+ T::Array[
1544
+ T.any(
1545
+ OpenAI::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotation::FileCitation::OrHash,
1546
+ OpenAI::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotation::URLCitation::OrHash,
1547
+ OpenAI::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotation::ContainerFileCitation::OrHash
1548
+ )
1549
+ ]
1538
1550
  ).void
1539
1551
  end
1540
1552
  attr_writer :annotations
@@ -1543,7 +1555,13 @@ module OpenAI
1543
1555
  params(
1544
1556
  text: String,
1545
1557
  annotations:
1546
- OpenAI::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotations::Variants,
1558
+ T::Array[
1559
+ T.any(
1560
+ OpenAI::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotation::FileCitation::OrHash,
1561
+ OpenAI::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotation::URLCitation::OrHash,
1562
+ OpenAI::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotation::ContainerFileCitation::OrHash
1563
+ )
1564
+ ],
1547
1565
  type: Symbol
1548
1566
  ).returns(T.attached_class)
1549
1567
  end
@@ -1563,37 +1581,36 @@ module OpenAI
1563
1581
  text: String,
1564
1582
  type: Symbol,
1565
1583
  annotations:
1566
- OpenAI::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotations::Variants
1584
+ T::Array[
1585
+ T.any(
1586
+ OpenAI::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotation::FileCitation,
1587
+ OpenAI::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotation::URLCitation,
1588
+ OpenAI::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotation::ContainerFileCitation
1589
+ )
1590
+ ]
1567
1591
  }
1568
1592
  )
1569
1593
  end
1570
1594
  def to_hash
1571
1595
  end
1572
1596
 
1573
- # Citations associated with the text content.
1574
- module Annotations
1597
+ module Annotation
1575
1598
  extend OpenAI::Internal::Type::Union
1576
1599
 
1577
1600
  Variants =
1578
1601
  T.type_alias do
1579
1602
  T.any(
1580
- T::Array[
1581
- OpenAI::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotations::UnionMember0
1582
- ],
1583
- T::Array[
1584
- OpenAI::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotations::UnionMember1
1585
- ],
1586
- T::Array[
1587
- OpenAI::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotations::UnionMember2
1588
- ]
1603
+ OpenAI::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotation::FileCitation,
1604
+ OpenAI::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotation::URLCitation,
1605
+ OpenAI::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotation::ContainerFileCitation
1589
1606
  )
1590
1607
  end
1591
1608
 
1592
- class UnionMember0 < OpenAI::Internal::Type::BaseModel
1609
+ class FileCitation < OpenAI::Internal::Type::BaseModel
1593
1610
  OrHash =
1594
1611
  T.type_alias do
1595
1612
  T.any(
1596
- OpenAI::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotations::UnionMember0,
1613
+ OpenAI::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotation::FileCitation,
1597
1614
  OpenAI::Internal::AnyHash
1598
1615
  )
1599
1616
  end
@@ -1648,11 +1665,11 @@ module OpenAI
1648
1665
  end
1649
1666
  end
1650
1667
 
1651
- class UnionMember1 < OpenAI::Internal::Type::BaseModel
1668
+ class URLCitation < OpenAI::Internal::Type::BaseModel
1652
1669
  OrHash =
1653
1670
  T.type_alias do
1654
1671
  T.any(
1655
- OpenAI::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotations::UnionMember1,
1672
+ OpenAI::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotation::URLCitation,
1656
1673
  OpenAI::Internal::AnyHash
1657
1674
  )
1658
1675
  end
@@ -1715,11 +1732,11 @@ module OpenAI
1715
1732
  end
1716
1733
  end
1717
1734
 
1718
- class UnionMember2 < OpenAI::Internal::Type::BaseModel
1735
+ class ContainerFileCitation < OpenAI::Internal::Type::BaseModel
1719
1736
  OrHash =
1720
1737
  T.type_alias do
1721
1738
  T.any(
1722
- OpenAI::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotations::UnionMember2,
1739
+ OpenAI::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotation::ContainerFileCitation,
1723
1740
  OpenAI::Internal::AnyHash
1724
1741
  )
1725
1742
  end
@@ -1793,36 +1810,12 @@ module OpenAI
1793
1810
  sig do
1794
1811
  override.returns(
1795
1812
  T::Array[
1796
- OpenAI::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotations::Variants
1813
+ OpenAI::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotation::Variants
1797
1814
  ]
1798
1815
  )
1799
1816
  end
1800
1817
  def self.variants
1801
1818
  end
1802
-
1803
- UnionMember0Array =
1804
- T.let(
1805
- OpenAI::Internal::Type::ArrayOf[
1806
- OpenAI::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotations::UnionMember0
1807
- ],
1808
- OpenAI::Internal::Type::Converter
1809
- )
1810
-
1811
- UnionMember1Array =
1812
- T.let(
1813
- OpenAI::Internal::Type::ArrayOf[
1814
- OpenAI::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotations::UnionMember1
1815
- ],
1816
- OpenAI::Internal::Type::Converter
1817
- )
1818
-
1819
- UnionMember2Array =
1820
- T.let(
1821
- OpenAI::Internal::Type::ArrayOf[
1822
- OpenAI::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotations::UnionMember2
1823
- ],
1824
- OpenAI::Internal::Type::Converter
1825
- )
1826
1819
  end
1827
1820
  end
1828
1821
 
@@ -0,0 +1,9 @@
1
+ # typed: strong
2
+
3
+ module OpenAI
4
+ class Provider
5
+ sig { returns(String) }
6
+ def inspect
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,33 @@
1
+ # typed: strong
2
+
3
+ module OpenAI
4
+ module Providers
5
+ class << self
6
+ sig do
7
+ params(
8
+ region: T.nilable(String),
9
+ base_url: T.nilable(String),
10
+ api_key: T.nilable(String),
11
+ token_provider: T.nilable(T.proc.returns(String)),
12
+ access_key_id: T.nilable(String),
13
+ secret_access_key: T.nilable(String),
14
+ session_token: T.nilable(String),
15
+ profile: T.nilable(String),
16
+ credentials_provider: T.untyped
17
+ ).returns(OpenAI::Provider)
18
+ end
19
+ def bedrock(
20
+ region: nil,
21
+ base_url: nil,
22
+ api_key: nil,
23
+ token_provider: nil,
24
+ access_key_id: nil,
25
+ secret_access_key: nil,
26
+ session_token: nil,
27
+ profile: nil,
28
+ credentials_provider: nil
29
+ )
30
+ end
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,45 @@
1
+ # typed: strong
2
+
3
+ module OpenAI
4
+ module Resources
5
+ class Admin
6
+ class Organization
7
+ class Projects
8
+ class ServiceAccounts
9
+ class APIKeys
10
+ # Creates an API key for a service account in the project.
11
+ sig do
12
+ params(
13
+ service_account_id: String,
14
+ project_id: String,
15
+ name: String,
16
+ scopes: T::Array[String],
17
+ request_options: OpenAI::RequestOptions::OrHash
18
+ ).returns(
19
+ OpenAI::Models::Admin::Organization::Projects::ServiceAccounts::APIKeyCreateResponse
20
+ )
21
+ end
22
+ def create(
23
+ # Path param: The ID of the service account.
24
+ service_account_id,
25
+ # Path param: The ID of the project.
26
+ project_id:,
27
+ # Body param: API key name.
28
+ name: nil,
29
+ # Body param: API key scopes.
30
+ scopes: nil,
31
+ request_options: {}
32
+ )
33
+ end
34
+
35
+ # @api private
36
+ sig { params(client: OpenAI::Client).returns(T.attached_class) }
37
+ def self.new(client:)
38
+ end
39
+ end
40
+ end
41
+ end
42
+ end
43
+ end
44
+ end
45
+ end
@@ -6,12 +6,20 @@ module OpenAI
6
6
  class Organization
7
7
  class Projects
8
8
  class ServiceAccounts
9
- # Creates a new service account in the project. This also returns an unredacted
10
- # API key for the service account.
9
+ sig do
10
+ returns(
11
+ OpenAI::Resources::Admin::Organization::Projects::ServiceAccounts::APIKeys
12
+ )
13
+ end
14
+ attr_reader :api_keys
15
+
16
+ # Creates a new service account in the project. By default, this also returns an
17
+ # unredacted API key for the service account.
11
18
  sig do
12
19
  params(
13
20
  project_id: String,
14
21
  name: String,
22
+ create_service_account_only: T.nilable(T::Boolean),
15
23
  request_options: OpenAI::RequestOptions::OrHash
16
24
  ).returns(
17
25
  OpenAI::Models::Admin::Organization::Projects::ServiceAccountCreateResponse
@@ -22,6 +30,8 @@ module OpenAI
22
30
  project_id,
23
31
  # The name of the service account being created.
24
32
  name:,
33
+ # Create the service account without default roles or an API key.
34
+ create_service_account_only: nil,
25
35
  request_options: {}
26
36
  )
27
37
  end
@@ -74,6 +74,12 @@ module OpenAI
74
74
 
75
75
  private def admin_api_key_auth: -> ::Hash[String, String]
76
76
 
77
+ private def prepare_request: (
78
+ OpenAI::Internal::Transport::BaseClient::request_input request,
79
+ redirect_count: Integer,
80
+ retry_count: Integer
81
+ ) -> OpenAI::Internal::Transport::BaseClient::request_input
82
+
77
83
  def initialize: (
78
84
  ?api_key: String?,
79
85
  ?admin_api_key: String?,
@@ -81,6 +87,7 @@ module OpenAI
81
87
  ?organization: String?,
82
88
  ?project: String?,
83
89
  ?webhook_secret: String?,
90
+ ?provider: OpenAI::Provider?,
84
91
  ?base_url: String?,
85
92
  ?max_retries: Integer,
86
93
  ?timeout: Float,
@@ -0,0 +1,29 @@
1
+ module OpenAI
2
+ module Internal
3
+ module Provider
4
+ class Runtime
5
+ attr_accessor name: String
6
+ attr_accessor base_url: String
7
+ attr_accessor prepare_request: (^(
8
+ OpenAI::Internal::Transport::BaseClient::request_input
9
+ ) -> OpenAI::Internal::Transport::BaseClient::request_input)?
10
+
11
+ def initialize: (
12
+ name: String,
13
+ base_url: String,
14
+ prepare_request: (^(
15
+ OpenAI::Internal::Transport::BaseClient::request_input
16
+ ) -> OpenAI::Internal::Transport::BaseClient::request_input)?
17
+ ) -> void
18
+ end
19
+
20
+ def self.create: (
21
+ untyped definition
22
+ ) -> OpenAI::Provider
23
+ def self.name: (OpenAI::Provider provider) -> String
24
+ def self.configure: (
25
+ OpenAI::Provider provider
26
+ ) -> OpenAI::Internal::Provider::Runtime
27
+ end
28
+ end
29
+ end
@@ -30,7 +30,9 @@ module OpenAI
30
30
  headers: ::Hash[String, String],
31
31
  body: top,
32
32
  max_retries: Integer,
33
- timeout: Float
33
+ timeout: Float,
34
+ :follow_redirects? => bool,
35
+ :provider_auth? => Symbol
34
36
  }
35
37
 
36
38
  MAX_REDIRECTS: 20
@@ -88,6 +90,12 @@ module OpenAI
88
90
 
89
91
  private def auth_headers: -> ::Hash[String, String]
90
92
 
93
+ private def prepare_request: (
94
+ OpenAI::Internal::Transport::BaseClient::request_input request,
95
+ redirect_count: Integer,
96
+ retry_count: Integer
97
+ ) -> OpenAI::Internal::Transport::BaseClient::request_input
98
+
91
99
  private def user_agent: -> String
92
100
 
93
101
  private def generate_idempotency_key: -> String
@@ -102,6 +110,14 @@ module OpenAI
102
110
  retry_count: Integer
103
111
  ) -> Float
104
112
 
113
+ private def raise_status_error!: (
114
+ url: URI::Generic,
115
+ status: Integer,
116
+ headers: ::Hash[String, String],
117
+ response: top,
118
+ stream: Enumerable[String]
119
+ ) -> bot
120
+
105
121
  def send_request: (
106
122
  OpenAI::Internal::Transport::BaseClient::request_input request,
107
123
  redirect_count: Integer,
@@ -188,6 +188,90 @@ module OpenAI
188
188
  | :"user.added"
189
189
  | :"user.updated"
190
190
  | :"user.deleted"
191
+ | :"tenant.metadata.updated"
192
+ | :"tenant.microsoft_entra_mapping.upserted"
193
+ | :"tenant.microsoft_entra_mapping.deleted"
194
+ | :"tenant.workload_identity.provider.created"
195
+ | :"tenant.workload_identity.provider.updated"
196
+ | :"tenant.workload_identity.provider.archived"
197
+ | :"tenant.workload_identity.mapping.created"
198
+ | :"tenant.workload_identity.mapping.updated"
199
+ | :"tenant.workload_identity.mapping.archived"
200
+ | :"tenant.workload_identity.binding.created"
201
+ | :"tenant.workload_identity.principal.provisioned"
202
+ | :"tenant.admin_api_key.created"
203
+ | :"tenant.admin_api_key.updated"
204
+ | :"tenant.admin_api_key.deleted"
205
+ | :"tenant.project_api_key.created"
206
+ | :"tenant.chatgpt_access_token.revoked"
207
+ | :"tenant.migration.completed"
208
+ | :"tenant.sso.migrated"
209
+ | :"tenant.domains.migrated"
210
+ | :"tenant.sso_connection.created"
211
+ | :"tenant.sso_connection.updated"
212
+ | :"tenant.sso_connection.deleted"
213
+ | :"tenant.sso_connection.setup.started"
214
+ | :"tenant.policy.created"
215
+ | :"tenant.policy.updated"
216
+ | :"tenant.policy.deleted"
217
+ | :"tenant.policy.attached"
218
+ | :"tenant.policy.detached"
219
+ | :"tenant.principal_authentication_policy.resolved"
220
+ | :"tenant.scim.setup.started"
221
+ | :"tenant.scim.deletion.requested"
222
+ | :"tenant.scim.directory.created"
223
+ | :"tenant.product_access_policy.updated"
224
+ | :"tenant.resource_share_grant.created"
225
+ | :"tenant.resource_share_grant.updated"
226
+ | :"tenant.resource_share_grant.accepted"
227
+ | :"tenant.resource_share_grant.declined"
228
+ | :"tenant.resource_share_grant.revoked"
229
+ | :"tenant.resource_share_grant.deleted"
230
+ | :"tenant.service_account.updated"
231
+ | :"tenant.service_account.deleted"
232
+ | :"tenant.service_account.token.revoked"
233
+ | :"tenant.billing.overage_limit.updated"
234
+ | :"tenant.billing.alerts.updated"
235
+ | :"tenant.billing.info.updated"
236
+ | :"tenant.usage_limit.workspace.updated"
237
+ | :"tenant.usage_limit.group.updated"
238
+ | :"tenant.usage_limit.user.updated"
239
+ | :"tenant.usage_limit.increase_request.updated"
240
+ | :"tenant.usage_limit.increase_request.resolved"
241
+ | :"tenant.group.created"
242
+ | :"tenant.group.updated"
243
+ | :"tenant.group.deleted"
244
+ | :"tenant.group.member.added"
245
+ | :"tenant.group.member.removed"
246
+ | :"tenant.migration_rollout.status.updated"
247
+ | :"tenant.migration_rollout.tier.updated"
248
+ | :"tenant.role.metadata.updated"
249
+ | :"tenant.custom_role.created"
250
+ | :"tenant.custom_role.updated"
251
+ | :"tenant.custom_role.deleted"
252
+ | :"tenant.role_assignment.created"
253
+ | :"tenant.role_assignment.deleted"
254
+ | :"tenant.resource_role_assignment.created"
255
+ | :"tenant.resource_role_assignment.deleted"
256
+ | :"tenant.resource_access.updated"
257
+ | :"tenant.resource_access.deleted"
258
+ | :"tenant.session_policy.created"
259
+ | :"tenant.session_policy.updated"
260
+ | :"tenant.session_policy.deleted"
261
+ | :"tenant.session_revocation.started"
262
+ | :"tenant.third_party_app_policy.updated"
263
+ | :"tenant.user.added"
264
+ | :"tenant.user.updated"
265
+ | :"tenant.user.removed"
266
+ | :"tenant.user.looked_up"
267
+ | :"tenant.user.invited"
268
+ | :"tenant.membership.revoked"
269
+ | :"tenant.api_organization_invite.upserted"
270
+ | :"tenant.api_organization_invite.deleted"
271
+ | :"tenant.chatgpt_workspace_invite.upserted"
272
+ | :"tenant.membership.accepted"
273
+ | :"tenant.membership.declined"
274
+ | :"tenant.workspace_invite_email_settings.updated"
191
275
 
192
276
  module EventType
193
277
  extend OpenAI::Internal::Type::Enum
@@ -251,6 +335,90 @@ module OpenAI
251
335
  USER_ADDED: :"user.added"
252
336
  USER_UPDATED: :"user.updated"
253
337
  USER_DELETED: :"user.deleted"
338
+ TENANT_METADATA_UPDATED: :"tenant.metadata.updated"
339
+ TENANT_MICROSOFT_ENTRA_MAPPING_UPSERTED: :"tenant.microsoft_entra_mapping.upserted"
340
+ TENANT_MICROSOFT_ENTRA_MAPPING_DELETED: :"tenant.microsoft_entra_mapping.deleted"
341
+ TENANT_WORKLOAD_IDENTITY_PROVIDER_CREATED: :"tenant.workload_identity.provider.created"
342
+ TENANT_WORKLOAD_IDENTITY_PROVIDER_UPDATED: :"tenant.workload_identity.provider.updated"
343
+ TENANT_WORKLOAD_IDENTITY_PROVIDER_ARCHIVED: :"tenant.workload_identity.provider.archived"
344
+ TENANT_WORKLOAD_IDENTITY_MAPPING_CREATED: :"tenant.workload_identity.mapping.created"
345
+ TENANT_WORKLOAD_IDENTITY_MAPPING_UPDATED: :"tenant.workload_identity.mapping.updated"
346
+ TENANT_WORKLOAD_IDENTITY_MAPPING_ARCHIVED: :"tenant.workload_identity.mapping.archived"
347
+ TENANT_WORKLOAD_IDENTITY_BINDING_CREATED: :"tenant.workload_identity.binding.created"
348
+ TENANT_WORKLOAD_IDENTITY_PRINCIPAL_PROVISIONED: :"tenant.workload_identity.principal.provisioned"
349
+ TENANT_ADMIN_API_KEY_CREATED: :"tenant.admin_api_key.created"
350
+ TENANT_ADMIN_API_KEY_UPDATED: :"tenant.admin_api_key.updated"
351
+ TENANT_ADMIN_API_KEY_DELETED: :"tenant.admin_api_key.deleted"
352
+ TENANT_PROJECT_API_KEY_CREATED: :"tenant.project_api_key.created"
353
+ TENANT_CHATGPT_ACCESS_TOKEN_REVOKED: :"tenant.chatgpt_access_token.revoked"
354
+ TENANT_MIGRATION_COMPLETED: :"tenant.migration.completed"
355
+ TENANT_SSO_MIGRATED: :"tenant.sso.migrated"
356
+ TENANT_DOMAINS_MIGRATED: :"tenant.domains.migrated"
357
+ TENANT_SSO_CONNECTION_CREATED: :"tenant.sso_connection.created"
358
+ TENANT_SSO_CONNECTION_UPDATED: :"tenant.sso_connection.updated"
359
+ TENANT_SSO_CONNECTION_DELETED: :"tenant.sso_connection.deleted"
360
+ TENANT_SSO_CONNECTION_SETUP_STARTED: :"tenant.sso_connection.setup.started"
361
+ TENANT_POLICY_CREATED: :"tenant.policy.created"
362
+ TENANT_POLICY_UPDATED: :"tenant.policy.updated"
363
+ TENANT_POLICY_DELETED: :"tenant.policy.deleted"
364
+ TENANT_POLICY_ATTACHED: :"tenant.policy.attached"
365
+ TENANT_POLICY_DETACHED: :"tenant.policy.detached"
366
+ TENANT_PRINCIPAL_AUTHENTICATION_POLICY_RESOLVED: :"tenant.principal_authentication_policy.resolved"
367
+ TENANT_SCIM_SETUP_STARTED: :"tenant.scim.setup.started"
368
+ TENANT_SCIM_DELETION_REQUESTED: :"tenant.scim.deletion.requested"
369
+ TENANT_SCIM_DIRECTORY_CREATED: :"tenant.scim.directory.created"
370
+ TENANT_PRODUCT_ACCESS_POLICY_UPDATED: :"tenant.product_access_policy.updated"
371
+ TENANT_RESOURCE_SHARE_GRANT_CREATED: :"tenant.resource_share_grant.created"
372
+ TENANT_RESOURCE_SHARE_GRANT_UPDATED: :"tenant.resource_share_grant.updated"
373
+ TENANT_RESOURCE_SHARE_GRANT_ACCEPTED: :"tenant.resource_share_grant.accepted"
374
+ TENANT_RESOURCE_SHARE_GRANT_DECLINED: :"tenant.resource_share_grant.declined"
375
+ TENANT_RESOURCE_SHARE_GRANT_REVOKED: :"tenant.resource_share_grant.revoked"
376
+ TENANT_RESOURCE_SHARE_GRANT_DELETED: :"tenant.resource_share_grant.deleted"
377
+ TENANT_SERVICE_ACCOUNT_UPDATED: :"tenant.service_account.updated"
378
+ TENANT_SERVICE_ACCOUNT_DELETED: :"tenant.service_account.deleted"
379
+ TENANT_SERVICE_ACCOUNT_TOKEN_REVOKED: :"tenant.service_account.token.revoked"
380
+ TENANT_BILLING_OVERAGE_LIMIT_UPDATED: :"tenant.billing.overage_limit.updated"
381
+ TENANT_BILLING_ALERTS_UPDATED: :"tenant.billing.alerts.updated"
382
+ TENANT_BILLING_INFO_UPDATED: :"tenant.billing.info.updated"
383
+ TENANT_USAGE_LIMIT_WORKSPACE_UPDATED: :"tenant.usage_limit.workspace.updated"
384
+ TENANT_USAGE_LIMIT_GROUP_UPDATED: :"tenant.usage_limit.group.updated"
385
+ TENANT_USAGE_LIMIT_USER_UPDATED: :"tenant.usage_limit.user.updated"
386
+ TENANT_USAGE_LIMIT_INCREASE_REQUEST_UPDATED: :"tenant.usage_limit.increase_request.updated"
387
+ TENANT_USAGE_LIMIT_INCREASE_REQUEST_RESOLVED: :"tenant.usage_limit.increase_request.resolved"
388
+ TENANT_GROUP_CREATED: :"tenant.group.created"
389
+ TENANT_GROUP_UPDATED: :"tenant.group.updated"
390
+ TENANT_GROUP_DELETED: :"tenant.group.deleted"
391
+ TENANT_GROUP_MEMBER_ADDED: :"tenant.group.member.added"
392
+ TENANT_GROUP_MEMBER_REMOVED: :"tenant.group.member.removed"
393
+ TENANT_MIGRATION_ROLLOUT_STATUS_UPDATED: :"tenant.migration_rollout.status.updated"
394
+ TENANT_MIGRATION_ROLLOUT_TIER_UPDATED: :"tenant.migration_rollout.tier.updated"
395
+ TENANT_ROLE_METADATA_UPDATED: :"tenant.role.metadata.updated"
396
+ TENANT_CUSTOM_ROLE_CREATED: :"tenant.custom_role.created"
397
+ TENANT_CUSTOM_ROLE_UPDATED: :"tenant.custom_role.updated"
398
+ TENANT_CUSTOM_ROLE_DELETED: :"tenant.custom_role.deleted"
399
+ TENANT_ROLE_ASSIGNMENT_CREATED: :"tenant.role_assignment.created"
400
+ TENANT_ROLE_ASSIGNMENT_DELETED: :"tenant.role_assignment.deleted"
401
+ TENANT_RESOURCE_ROLE_ASSIGNMENT_CREATED: :"tenant.resource_role_assignment.created"
402
+ TENANT_RESOURCE_ROLE_ASSIGNMENT_DELETED: :"tenant.resource_role_assignment.deleted"
403
+ TENANT_RESOURCE_ACCESS_UPDATED: :"tenant.resource_access.updated"
404
+ TENANT_RESOURCE_ACCESS_DELETED: :"tenant.resource_access.deleted"
405
+ TENANT_SESSION_POLICY_CREATED: :"tenant.session_policy.created"
406
+ TENANT_SESSION_POLICY_UPDATED: :"tenant.session_policy.updated"
407
+ TENANT_SESSION_POLICY_DELETED: :"tenant.session_policy.deleted"
408
+ TENANT_SESSION_REVOCATION_STARTED: :"tenant.session_revocation.started"
409
+ TENANT_THIRD_PARTY_APP_POLICY_UPDATED: :"tenant.third_party_app_policy.updated"
410
+ TENANT_USER_ADDED: :"tenant.user.added"
411
+ TENANT_USER_UPDATED: :"tenant.user.updated"
412
+ TENANT_USER_REMOVED: :"tenant.user.removed"
413
+ TENANT_USER_LOOKED_UP: :"tenant.user.looked_up"
414
+ TENANT_USER_INVITED: :"tenant.user.invited"
415
+ TENANT_MEMBERSHIP_REVOKED: :"tenant.membership.revoked"
416
+ TENANT_API_ORGANIZATION_INVITE_UPSERTED: :"tenant.api_organization_invite.upserted"
417
+ TENANT_API_ORGANIZATION_INVITE_DELETED: :"tenant.api_organization_invite.deleted"
418
+ TENANT_CHATGPT_WORKSPACE_INVITE_UPSERTED: :"tenant.chatgpt_workspace_invite.upserted"
419
+ TENANT_MEMBERSHIP_ACCEPTED: :"tenant.membership.accepted"
420
+ TENANT_MEMBERSHIP_DECLINED: :"tenant.membership.declined"
421
+ TENANT_WORKSPACE_INVITE_EMAIL_SETTINGS_UPDATED: :"tenant.workspace_invite_email_settings.updated"
254
422
 
255
423
  def self?.values: -> ::Array[OpenAI::Models::Admin::Organization::AuditLogListParams::event_type]
256
424
  end