openai 0.116.0 → 0.118.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 (134) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +20 -0
  3. data/README.md +1 -1
  4. data/lib/openai/models/admin/organization/projects/project_optional_service_tier.rb +24 -0
  5. data/lib/openai/models/admin/organization/projects/project_service_tier_settings.rb +88 -0
  6. data/lib/openai/models/admin/organization/projects/service_tier_setting_retrieve_params.rb +29 -0
  7. data/lib/openai/models/admin/organization/projects/service_tier_setting_update_params.rb +92 -0
  8. data/lib/openai/models/admin/organization/workload_identity_provider.rb +158 -0
  9. data/lib/openai/models/admin/organization/workload_identity_provider_create_params.rb +143 -0
  10. data/lib/openai/models/admin/organization/workload_identity_provider_delete_params.rb +24 -0
  11. data/lib/openai/models/admin/organization/workload_identity_provider_deleted.rb +32 -0
  12. data/lib/openai/models/admin/organization/workload_identity_provider_list_params.rb +58 -0
  13. data/lib/openai/models/admin/organization/workload_identity_provider_retrieve_params.rb +24 -0
  14. data/lib/openai/models/admin/organization/workload_identity_provider_update_params.rb +143 -0
  15. data/lib/openai/models/admin/organization/workload_identity_providers/federation_rule.rb +161 -0
  16. data/lib/openai/models/admin/organization/workload_identity_providers/federation_rule_create_params.rb +144 -0
  17. data/lib/openai/models/admin/organization/workload_identity_providers/federation_rule_delete_params.rb +32 -0
  18. data/lib/openai/models/admin/organization/workload_identity_providers/federation_rule_deleted.rb +34 -0
  19. data/lib/openai/models/admin/organization/workload_identity_providers/federation_rule_list_params.rb +85 -0
  20. data/lib/openai/models/admin/organization/workload_identity_providers/federation_rule_retrieve_params.rb +32 -0
  21. data/lib/openai/models/admin/organization/workload_identity_providers/federation_rule_update_params.rb +134 -0
  22. data/lib/openai/models/beta/beta_response.rb +1 -0
  23. data/lib/openai/models/beta/beta_response_usage.rb +33 -1
  24. data/lib/openai/models/beta/beta_responses_client_event.rb +10 -9
  25. data/lib/openai/models/beta/chatkit/chat_session_workflow_param.rb +5 -3
  26. data/lib/openai/models/beta/chatkit_workflow.rb +5 -3
  27. data/lib/openai/models/beta/response_compact_params.rb +3 -3
  28. data/lib/openai/models/beta/response_create_params.rb +10 -9
  29. data/lib/openai/models/chat/completion_create_params.rb +3 -3
  30. data/lib/openai/models/responses/response.rb +1 -0
  31. data/lib/openai/models/responses/response_compact_params.rb +3 -3
  32. data/lib/openai/models/responses/response_create_params.rb +10 -9
  33. data/lib/openai/models/responses/response_usage.rb +33 -1
  34. data/lib/openai/models/responses/responses_client_event.rb +10 -9
  35. data/lib/openai/resources/admin/organization/projects/service_tier_settings.rb +77 -0
  36. data/lib/openai/resources/admin/organization/projects.rb +6 -0
  37. data/lib/openai/resources/admin/organization/workload_identity_providers/federation_rules.rb +198 -0
  38. data/lib/openai/resources/admin/organization/workload_identity_providers.rb +148 -0
  39. data/lib/openai/resources/admin/organization.rb +6 -0
  40. data/lib/openai/resources/beta/responses.rb +6 -6
  41. data/lib/openai/resources/chat/completions.rb +2 -2
  42. data/lib/openai/resources/responses.rb +3 -3
  43. data/lib/openai/version.rb +1 -1
  44. data/lib/openai.rb +21 -0
  45. data/rbi/openai/models/admin/organization/projects/project_optional_service_tier.rbi +45 -0
  46. data/rbi/openai/models/admin/organization/projects/project_service_tier_settings.rbi +143 -0
  47. data/rbi/openai/models/admin/organization/projects/service_tier_setting_retrieve_params.rbi +63 -0
  48. data/rbi/openai/models/admin/organization/projects/service_tier_setting_update_params.rbi +183 -0
  49. data/rbi/openai/models/admin/organization/workload_identity_provider.rbi +288 -0
  50. data/rbi/openai/models/admin/organization/workload_identity_provider_create_params.rbi +311 -0
  51. data/rbi/openai/models/admin/organization/workload_identity_provider_delete_params.rbi +57 -0
  52. data/rbi/openai/models/admin/organization/workload_identity_provider_deleted.rbi +64 -0
  53. data/rbi/openai/models/admin/organization/workload_identity_provider_list_params.rbi +111 -0
  54. data/rbi/openai/models/admin/organization/workload_identity_provider_retrieve_params.rbi +57 -0
  55. data/rbi/openai/models/admin/organization/workload_identity_provider_update_params.rbi +317 -0
  56. data/rbi/openai/models/admin/organization/workload_identity_providers/federation_rule.rbi +276 -0
  57. data/rbi/openai/models/admin/organization/workload_identity_providers/federation_rule_create_params.rbi +282 -0
  58. data/rbi/openai/models/admin/organization/workload_identity_providers/federation_rule_delete_params.rbi +72 -0
  59. data/rbi/openai/models/admin/organization/workload_identity_providers/federation_rule_deleted.rbi +68 -0
  60. data/rbi/openai/models/admin/organization/workload_identity_providers/federation_rule_list_params.rbi +153 -0
  61. data/rbi/openai/models/admin/organization/workload_identity_providers/federation_rule_retrieve_params.rbi +72 -0
  62. data/rbi/openai/models/admin/organization/workload_identity_providers/federation_rule_update_params.rbi +281 -0
  63. data/rbi/openai/models/beta/beta_response.rbi +1 -0
  64. data/rbi/openai/models/beta/beta_response_usage.rbi +66 -3
  65. data/rbi/openai/models/beta/beta_responses_client_event.rbi +13 -9
  66. data/rbi/openai/models/beta/chatkit/chat_session_workflow_param.rbi +1 -1
  67. data/rbi/openai/models/beta/chatkit_workflow.rbi +1 -1
  68. data/rbi/openai/models/beta/response_compact_params.rbi +3 -3
  69. data/rbi/openai/models/beta/response_create_params.rbi +10 -9
  70. data/rbi/openai/models/chat/completion_create_params.rbi +3 -3
  71. data/rbi/openai/models/responses/response.rbi +1 -0
  72. data/rbi/openai/models/responses/response_compact_params.rbi +3 -3
  73. data/rbi/openai/models/responses/response_create_params.rbi +10 -9
  74. data/rbi/openai/models/responses/response_usage.rbi +66 -3
  75. data/rbi/openai/models/responses/responses_client_event.rbi +13 -9
  76. data/rbi/openai/resources/admin/organization/projects/service_tier_settings.rbi +67 -0
  77. data/rbi/openai/resources/admin/organization/projects.rbi +3 -0
  78. data/rbi/openai/resources/admin/organization/workload_identity_providers/federation_rules.rbi +148 -0
  79. data/rbi/openai/resources/admin/organization/workload_identity_providers.rbi +123 -0
  80. data/rbi/openai/resources/admin/organization.rbi +3 -0
  81. data/rbi/openai/resources/beta/responses.rbi +6 -6
  82. data/rbi/openai/resources/chat/completions.rbi +2 -2
  83. data/rbi/openai/resources/responses.rbi +3 -3
  84. data/sig/openai/models/admin/organization/external_key_create_params.rbs +9 -9
  85. data/sig/openai/models/admin/organization/projects/project_optional_service_tier.rbs +23 -0
  86. data/sig/openai/models/admin/organization/projects/project_service_tier_settings.rbs +72 -0
  87. data/sig/openai/models/admin/organization/projects/service_tier_setting_retrieve_params.rbs +32 -0
  88. data/sig/openai/models/admin/organization/projects/service_tier_setting_update_params.rbs +91 -0
  89. data/sig/openai/models/admin/organization/workload_identity_provider.rbs +136 -0
  90. data/sig/openai/models/admin/organization/workload_identity_provider_create_params.rbs +140 -0
  91. data/sig/openai/models/admin/organization/workload_identity_provider_delete_params.rbs +30 -0
  92. data/sig/openai/models/admin/organization/workload_identity_provider_deleted.rbs +34 -0
  93. data/sig/openai/models/admin/organization/workload_identity_provider_list_params.rbs +59 -0
  94. data/sig/openai/models/admin/organization/workload_identity_provider_retrieve_params.rbs +30 -0
  95. data/sig/openai/models/admin/organization/workload_identity_provider_update_params.rbs +145 -0
  96. data/sig/openai/models/admin/organization/workload_identity_providers/federation_rule.rbs +124 -0
  97. data/sig/openai/models/admin/organization/workload_identity_providers/federation_rule_create_params.rbs +126 -0
  98. data/sig/openai/models/admin/organization/workload_identity_providers/federation_rule_delete_params.rbs +37 -0
  99. data/sig/openai/models/admin/organization/workload_identity_providers/federation_rule_deleted.rbs +36 -0
  100. data/sig/openai/models/admin/organization/workload_identity_providers/federation_rule_list_params.rbs +73 -0
  101. data/sig/openai/models/admin/organization/workload_identity_providers/federation_rule_retrieve_params.rbs +37 -0
  102. data/sig/openai/models/admin/organization/workload_identity_providers/federation_rule_update_params.rbs +123 -0
  103. data/sig/openai/models/audio/transcription_create_params.rbs +3 -3
  104. data/sig/openai/models/audio/voice_create_params.rbs +6 -6
  105. data/sig/openai/models/beta/assistant_create_params.rbs +14 -2
  106. data/sig/openai/models/beta/beta_response.rbs +2 -1
  107. data/sig/openai/models/beta/beta_response_usage.rbs +40 -3
  108. data/sig/openai/models/beta/beta_responses_client_event.rbs +11 -10
  109. data/sig/openai/models/beta/chatkit/chat_session_workflow_param.rbs +1 -1
  110. data/sig/openai/models/beta/chatkit_workflow.rbs +1 -1
  111. data/sig/openai/models/beta/response_compact_params.rbs +2 -2
  112. data/sig/openai/models/beta/response_create_params.rbs +11 -10
  113. data/sig/openai/models/beta/thread_create_and_run_params.rbs +14 -2
  114. data/sig/openai/models/beta/thread_create_params.rbs +14 -2
  115. data/sig/openai/models/chat/completion_create_params.rbs +3 -3
  116. data/sig/openai/models/decision_create_params.rbs +42 -0
  117. data/sig/openai/models/eval_create_params.rbs +29 -2
  118. data/sig/openai/models/evals/run_create_params.rbs +53 -2
  119. data/sig/openai/models/responses/response.rbs +2 -1
  120. data/sig/openai/models/responses/response_compact_params.rbs +2 -2
  121. data/sig/openai/models/responses/response_create_params.rbs +11 -10
  122. data/sig/openai/models/responses/response_usage.rbs +40 -3
  123. data/sig/openai/models/responses/responses_client_event.rbs +11 -10
  124. data/sig/openai/resources/admin/organization/external_keys.rbs +3 -3
  125. data/sig/openai/resources/admin/organization/projects/service_tier_settings.rbs +25 -0
  126. data/sig/openai/resources/admin/organization/projects.rbs +2 -0
  127. data/sig/openai/resources/admin/organization/workload_identity_providers/federation_rules.rbs +61 -0
  128. data/sig/openai/resources/admin/organization/workload_identity_providers.rbs +58 -0
  129. data/sig/openai/resources/admin/organization.rbs +2 -0
  130. data/sig/openai/resources/audio/transcriptions.rbs +2 -2
  131. data/sig/openai/resources/audio/voices.rbs +2 -2
  132. data/sig/openai/resources/decisions.rbs +14 -0
  133. data/sig/openai/resources/evals.rbs +8 -1
  134. metadata +64 -1
@@ -0,0 +1,58 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OpenAI
4
+ module Models
5
+ module Admin
6
+ module Organization
7
+ # @see OpenAI::Resources::Admin::Organization::WorkloadIdentityProviders#list
8
+ class WorkloadIdentityProviderListParams < OpenAI::Internal::Type::BaseModel
9
+ extend OpenAI::Internal::Type::RequestParameters::Converter
10
+ include OpenAI::Internal::Type::RequestParameters
11
+
12
+ # @!attribute after
13
+ #
14
+ # @return [String, nil]
15
+ optional :after, String
16
+
17
+ # @!attribute limit
18
+ #
19
+ # @return [Integer, nil]
20
+ optional :limit, Integer
21
+
22
+ # @!attribute order
23
+ #
24
+ # @return [Symbol, OpenAI::Models::Admin::Organization::WorkloadIdentityProviderListParams::Order, nil]
25
+ optional :order, union: -> { OpenAI::Admin::Organization::WorkloadIdentityProviderListParams::Order }
26
+
27
+ # @!method initialize(after: nil, limit: nil, order: nil, request_options: {})
28
+ # @param after [String]
29
+ # @param limit [Integer]
30
+ # @param order [Symbol, OpenAI::Models::Admin::Organization::WorkloadIdentityProviderListParams::Order]
31
+ # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}]
32
+
33
+ module Order
34
+ extend OpenAI::Internal::Type::Union
35
+
36
+ variant const: -> { OpenAI::Models::Admin::Organization::WorkloadIdentityProviderListParams::Order::ASC }
37
+
38
+ variant const: -> { OpenAI::Models::Admin::Organization::WorkloadIdentityProviderListParams::Order::DESC }
39
+
40
+ # @!method self.variants
41
+ # @return [Array(Symbol)]
42
+
43
+ define_sorbet_constant!(:Variants) do
44
+ T.type_alias { OpenAI::Admin::Organization::WorkloadIdentityProviderListParams::Order::TaggedSymbol }
45
+ end
46
+
47
+ # @!group
48
+
49
+ ASC = :asc
50
+ DESC = :desc
51
+
52
+ # @!endgroup
53
+ end
54
+ end
55
+ end
56
+ end
57
+ end
58
+ end
@@ -0,0 +1,24 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OpenAI
4
+ module Models
5
+ module Admin
6
+ module Organization
7
+ # @see OpenAI::Resources::Admin::Organization::WorkloadIdentityProviders#retrieve
8
+ class WorkloadIdentityProviderRetrieveParams < OpenAI::Internal::Type::BaseModel
9
+ extend OpenAI::Internal::Type::RequestParameters::Converter
10
+ include OpenAI::Internal::Type::RequestParameters
11
+
12
+ # @!attribute workload_identity_provider_id
13
+ #
14
+ # @return [String]
15
+ required :workload_identity_provider_id, String
16
+
17
+ # @!method initialize(workload_identity_provider_id:, request_options: {})
18
+ # @param workload_identity_provider_id [String]
19
+ # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}]
20
+ end
21
+ end
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,143 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OpenAI
4
+ module Models
5
+ module Admin
6
+ module Organization
7
+ # @see OpenAI::Resources::Admin::Organization::WorkloadIdentityProviders#update
8
+ class WorkloadIdentityProviderUpdateParams < OpenAI::Internal::Type::BaseModel
9
+ extend OpenAI::Internal::Type::RequestParameters::Converter
10
+ include OpenAI::Internal::Type::RequestParameters
11
+
12
+ # @!attribute workload_identity_provider_id
13
+ #
14
+ # @return [String]
15
+ required :workload_identity_provider_id, String
16
+
17
+ # @!attribute attribute_transformations
18
+ #
19
+ # @return [Array<OpenAI::Models::Admin::Organization::WorkloadIdentityProviderUpdateParams::AttributeTransformation>, nil]
20
+ optional(
21
+ :attribute_transformations,
22
+ -> {
23
+ OpenAI::Internal::Type::ArrayOf[
24
+ OpenAI::Admin::Organization::WorkloadIdentityProviderUpdateParams::AttributeTransformation
25
+ ]
26
+ }
27
+ )
28
+
29
+ # @!attribute audience
30
+ #
31
+ # @return [String, nil]
32
+ optional :audience, String
33
+
34
+ # @!attribute description
35
+ #
36
+ # @return [String, nil]
37
+ optional :description, String, nil?: true
38
+
39
+ # @!attribute enabled
40
+ #
41
+ # @return [Boolean, nil]
42
+ optional :enabled, OpenAI::Internal::Type::Boolean
43
+
44
+ # @!attribute issuer
45
+ #
46
+ # @return [String, nil]
47
+ optional :issuer, String
48
+
49
+ # @!attribute name
50
+ #
51
+ # @return [String, nil]
52
+ optional :name, String
53
+
54
+ # @!attribute verification
55
+ #
56
+ # @return [OpenAI::Models::Admin::Organization::WorkloadIdentityProviderUpdateParams::Verification::DiscoveryVerificationParam, OpenAI::Models::Admin::Organization::WorkloadIdentityProviderUpdateParams::Verification::UploadedJwksVerificationParam, nil]
57
+ optional(
58
+ :verification,
59
+ union: -> { OpenAI::Admin::Organization::WorkloadIdentityProviderUpdateParams::Verification }
60
+ )
61
+
62
+ # @!method initialize(workload_identity_provider_id:, attribute_transformations: nil, audience: nil, description: nil, enabled: nil, issuer: nil, name: nil, verification: nil, request_options: {})
63
+ # @param workload_identity_provider_id [String]
64
+ # @param attribute_transformations [Array<OpenAI::Models::Admin::Organization::WorkloadIdentityProviderUpdateParams::AttributeTransformation>]
65
+ # @param audience [String]
66
+ # @param description [String, nil]
67
+ # @param enabled [Boolean]
68
+ # @param issuer [String]
69
+ # @param name [String]
70
+ # @param verification [OpenAI::Models::Admin::Organization::WorkloadIdentityProviderUpdateParams::Verification::DiscoveryVerificationParam, OpenAI::Models::Admin::Organization::WorkloadIdentityProviderUpdateParams::Verification::UploadedJwksVerificationParam]
71
+ # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}]
72
+
73
+ class AttributeTransformation < OpenAI::Internal::Type::BaseModel
74
+ # @!attribute attribute
75
+ #
76
+ # @return [String]
77
+ required :attribute, String
78
+
79
+ # @!attribute expression
80
+ #
81
+ # @return [String]
82
+ required :expression, String
83
+
84
+ # @!method initialize(attribute:, expression:)
85
+ # @param attribute [String]
86
+ # @param expression [String]
87
+ end
88
+
89
+ module Verification
90
+ extend OpenAI::Internal::Type::Union
91
+
92
+ variant(
93
+ -> {
94
+ OpenAI::Admin::Organization::WorkloadIdentityProviderUpdateParams::Verification::DiscoveryVerificationParam
95
+ }
96
+ )
97
+
98
+ variant(
99
+ -> {
100
+ OpenAI::Admin::Organization::WorkloadIdentityProviderUpdateParams::Verification::UploadedJwksVerificationParam
101
+ }
102
+ )
103
+
104
+ class DiscoveryVerificationParam < OpenAI::Internal::Type::BaseModel
105
+ # @!attribute discovery_url
106
+ #
107
+ # @return [String, nil]
108
+ required :discovery_url, String, nil?: true
109
+
110
+ # @!attribute type
111
+ #
112
+ # @return [Symbol, :discovery]
113
+ required :type, const: :discovery
114
+
115
+ # @!method initialize(discovery_url:, type: :discovery)
116
+ # @param discovery_url [String, nil]
117
+ # @param type [Symbol, :discovery]
118
+ end
119
+
120
+ class UploadedJwksVerificationParam < OpenAI::Internal::Type::BaseModel
121
+ # @!attribute jwks
122
+ #
123
+ # @return [Hash{Symbol=>Object}]
124
+ required :jwks, OpenAI::Internal::Type::HashOf[OpenAI::Internal::Type::Unknown]
125
+
126
+ # @!attribute type
127
+ #
128
+ # @return [Symbol, :uploaded_jwks]
129
+ required :type, const: :uploaded_jwks
130
+
131
+ # @!method initialize(jwks:, type: :uploaded_jwks)
132
+ # @param jwks [Hash{Symbol=>Object}]
133
+ # @param type [Symbol, :uploaded_jwks]
134
+ end
135
+
136
+ # @!method self.variants
137
+ # @return [Array(OpenAI::Models::Admin::Organization::WorkloadIdentityProviderUpdateParams::Verification::DiscoveryVerificationParam, OpenAI::Models::Admin::Organization::WorkloadIdentityProviderUpdateParams::Verification::UploadedJwksVerificationParam)]
138
+ end
139
+ end
140
+ end
141
+ end
142
+ end
143
+ end
@@ -0,0 +1,161 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OpenAI
4
+ module Models
5
+ module Admin
6
+ module Organization
7
+ module WorkloadIdentityProviders
8
+ # @see OpenAI::Resources::Admin::Organization::WorkloadIdentityProviders::FederationRules#create
9
+ class FederationRule < OpenAI::Internal::Type::BaseModel
10
+ # @!attribute id
11
+ #
12
+ # @return [String]
13
+ required :id, String
14
+
15
+ # @!attribute attribute_matchers
16
+ #
17
+ # @return [Hash{Symbol=>String, Boolean, Integer, Float}]
18
+ required(
19
+ :attribute_matchers,
20
+ -> {
21
+ OpenAI::Internal::Type::HashOf[
22
+ union: OpenAI::Admin::Organization::WorkloadIdentityProviders::FederationRule::AttributeMatcher
23
+ ]
24
+ }
25
+ )
26
+
27
+ # @!attribute created_at
28
+ #
29
+ # @return [Integer]
30
+ required :created_at, Integer
31
+
32
+ # @!attribute description
33
+ #
34
+ # @return [String, nil]
35
+ required :description, String, nil?: true
36
+
37
+ # @!attribute enabled
38
+ #
39
+ # @return [Boolean]
40
+ required :enabled, OpenAI::Internal::Type::Boolean
41
+
42
+ # @!attribute name
43
+ #
44
+ # @return [String, nil]
45
+ required :name, String, nil?: true
46
+
47
+ # @!attribute object
48
+ #
49
+ # @return [Symbol, :"organization.workload_identity_federation_rule"]
50
+ required :object, const: :"organization.workload_identity_federation_rule"
51
+
52
+ # @!attribute permissions
53
+ #
54
+ # @return [OpenAI::Models::Admin::Organization::WorkloadIdentityProviders::FederationRule::Permissions::ServiceAccountDefault, OpenAI::Models::Admin::Organization::WorkloadIdentityProviders::FederationRule::Permissions::Restricted]
55
+ required(
56
+ :permissions,
57
+ union: -> { OpenAI::Admin::Organization::WorkloadIdentityProviders::FederationRule::Permissions }
58
+ )
59
+
60
+ # @!attribute project_id
61
+ #
62
+ # @return [String]
63
+ required :project_id, String
64
+
65
+ # @!attribute service_account_id
66
+ #
67
+ # @return [String]
68
+ required :service_account_id, String
69
+
70
+ # @!attribute updated_at
71
+ #
72
+ # @return [Integer]
73
+ required :updated_at, Integer
74
+
75
+ # @!attribute workload_identity_provider_id
76
+ #
77
+ # @return [String]
78
+ required :workload_identity_provider_id, String
79
+
80
+ # @!method initialize(id:, attribute_matchers:, created_at:, description:, enabled:, name:, permissions:, project_id:, service_account_id:, updated_at:, workload_identity_provider_id:, object: :"organization.workload_identity_federation_rule")
81
+ # @param id [String]
82
+ # @param attribute_matchers [Hash{Symbol=>String, Boolean, Integer, Float}]
83
+ # @param created_at [Integer]
84
+ # @param description [String, nil]
85
+ # @param enabled [Boolean]
86
+ # @param name [String, nil]
87
+ # @param permissions [OpenAI::Models::Admin::Organization::WorkloadIdentityProviders::FederationRule::Permissions::ServiceAccountDefault, OpenAI::Models::Admin::Organization::WorkloadIdentityProviders::FederationRule::Permissions::Restricted]
88
+ # @param project_id [String]
89
+ # @param service_account_id [String]
90
+ # @param updated_at [Integer]
91
+ # @param workload_identity_provider_id [String]
92
+ # @param object [Symbol, :"organization.workload_identity_federation_rule"]
93
+
94
+ module AttributeMatcher
95
+ extend OpenAI::Internal::Type::Union
96
+
97
+ variant String
98
+
99
+ variant OpenAI::Internal::Type::Boolean
100
+
101
+ variant Integer
102
+
103
+ variant Float
104
+
105
+ # @!method self.variants
106
+ # @return [Array(String, Boolean, Integer, Float)]
107
+ end
108
+
109
+ # @see OpenAI::Models::Admin::Organization::WorkloadIdentityProviders::FederationRule#permissions
110
+ module Permissions
111
+ extend OpenAI::Internal::Type::Union
112
+
113
+ discriminator :type
114
+
115
+ variant(
116
+ :service_account_default,
117
+ -> {
118
+ OpenAI::Admin::Organization::WorkloadIdentityProviders::FederationRule::Permissions::ServiceAccountDefault
119
+ }
120
+ )
121
+
122
+ variant(
123
+ :restricted,
124
+ -> { OpenAI::Admin::Organization::WorkloadIdentityProviders::FederationRule::Permissions::Restricted }
125
+ )
126
+
127
+ class ServiceAccountDefault < OpenAI::Internal::Type::BaseModel
128
+ # @!attribute type
129
+ #
130
+ # @return [Symbol, :service_account_default]
131
+ required :type, const: :service_account_default
132
+
133
+ # @!method initialize(type: :service_account_default)
134
+ # @param type [Symbol, :service_account_default]
135
+ end
136
+
137
+ class Restricted < OpenAI::Internal::Type::BaseModel
138
+ # @!attribute scopes
139
+ #
140
+ # @return [Array<String>]
141
+ required :scopes, OpenAI::Internal::Type::ArrayOf[String]
142
+
143
+ # @!attribute type
144
+ #
145
+ # @return [Symbol, :restricted]
146
+ required :type, const: :restricted
147
+
148
+ # @!method initialize(scopes:, type: :restricted)
149
+ # @param scopes [Array<String>]
150
+ # @param type [Symbol, :restricted]
151
+ end
152
+
153
+ # @!method self.variants
154
+ # @return [Array(OpenAI::Models::Admin::Organization::WorkloadIdentityProviders::FederationRule::Permissions::ServiceAccountDefault, OpenAI::Models::Admin::Organization::WorkloadIdentityProviders::FederationRule::Permissions::Restricted)]
155
+ end
156
+ end
157
+ end
158
+ end
159
+ end
160
+ end
161
+ end
@@ -0,0 +1,144 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OpenAI
4
+ module Models
5
+ module Admin
6
+ module Organization
7
+ module WorkloadIdentityProviders
8
+ # @see OpenAI::Resources::Admin::Organization::WorkloadIdentityProviders::FederationRules#create
9
+ class FederationRuleCreateParams < OpenAI::Internal::Type::BaseModel
10
+ extend OpenAI::Internal::Type::RequestParameters::Converter
11
+ include OpenAI::Internal::Type::RequestParameters
12
+
13
+ # @!attribute workload_identity_provider_id
14
+ #
15
+ # @return [String]
16
+ required :workload_identity_provider_id, String
17
+
18
+ # @!attribute attribute_matchers
19
+ #
20
+ # @return [Hash{Symbol=>String, Boolean, Integer, Float}]
21
+ required(
22
+ :attribute_matchers,
23
+ -> {
24
+ OpenAI::Internal::Type::HashOf[
25
+ union: OpenAI::Admin::Organization::WorkloadIdentityProviders::FederationRuleCreateParams::AttributeMatcher
26
+ ]
27
+ }
28
+ )
29
+
30
+ # @!attribute project_id
31
+ #
32
+ # @return [String]
33
+ required :project_id, String
34
+
35
+ # @!attribute service_account_id
36
+ #
37
+ # @return [String]
38
+ required :service_account_id, String
39
+
40
+ # @!attribute description
41
+ #
42
+ # @return [String, nil]
43
+ optional :description, String
44
+
45
+ # @!attribute enabled
46
+ #
47
+ # @return [Boolean, nil]
48
+ optional :enabled, OpenAI::Internal::Type::Boolean
49
+
50
+ # @!attribute name
51
+ #
52
+ # @return [String, nil]
53
+ optional :name, String
54
+
55
+ # @!attribute permissions
56
+ #
57
+ # @return [OpenAI::Models::Admin::Organization::WorkloadIdentityProviders::FederationRuleCreateParams::Permissions::ServiceAccountDefault, OpenAI::Models::Admin::Organization::WorkloadIdentityProviders::FederationRuleCreateParams::Permissions::Restricted, nil]
58
+ optional(
59
+ :permissions,
60
+ union: -> {
61
+ OpenAI::Admin::Organization::WorkloadIdentityProviders::FederationRuleCreateParams::Permissions
62
+ }
63
+ )
64
+
65
+ # @!method initialize(workload_identity_provider_id:, attribute_matchers:, project_id:, service_account_id:, description: nil, enabled: nil, name: nil, permissions: nil, request_options: {})
66
+ # @param workload_identity_provider_id [String]
67
+ # @param attribute_matchers [Hash{Symbol=>String, Boolean, Integer, Float}]
68
+ # @param project_id [String]
69
+ # @param service_account_id [String]
70
+ # @param description [String]
71
+ # @param enabled [Boolean]
72
+ # @param name [String]
73
+ # @param permissions [OpenAI::Models::Admin::Organization::WorkloadIdentityProviders::FederationRuleCreateParams::Permissions::ServiceAccountDefault, OpenAI::Models::Admin::Organization::WorkloadIdentityProviders::FederationRuleCreateParams::Permissions::Restricted]
74
+ # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}]
75
+
76
+ module AttributeMatcher
77
+ extend OpenAI::Internal::Type::Union
78
+
79
+ variant String
80
+
81
+ variant OpenAI::Internal::Type::Boolean
82
+
83
+ variant Integer
84
+
85
+ variant Float
86
+
87
+ # @!method self.variants
88
+ # @return [Array(String, Boolean, Integer, Float)]
89
+ end
90
+
91
+ module Permissions
92
+ extend OpenAI::Internal::Type::Union
93
+
94
+ discriminator :type
95
+
96
+ variant(
97
+ :service_account_default,
98
+ -> {
99
+ OpenAI::Admin::Organization::WorkloadIdentityProviders::FederationRuleCreateParams::Permissions::ServiceAccountDefault
100
+ }
101
+ )
102
+
103
+ variant(
104
+ :restricted,
105
+ -> {
106
+ OpenAI::Admin::Organization::WorkloadIdentityProviders::FederationRuleCreateParams::Permissions::Restricted
107
+ }
108
+ )
109
+
110
+ class ServiceAccountDefault < OpenAI::Internal::Type::BaseModel
111
+ # @!attribute type
112
+ #
113
+ # @return [Symbol, :service_account_default]
114
+ required :type, const: :service_account_default
115
+
116
+ # @!method initialize(type: :service_account_default)
117
+ # @param type [Symbol, :service_account_default]
118
+ end
119
+
120
+ class Restricted < OpenAI::Internal::Type::BaseModel
121
+ # @!attribute scopes
122
+ #
123
+ # @return [Array<String>]
124
+ required :scopes, OpenAI::Internal::Type::ArrayOf[String]
125
+
126
+ # @!attribute type
127
+ #
128
+ # @return [Symbol, :restricted]
129
+ required :type, const: :restricted
130
+
131
+ # @!method initialize(scopes:, type: :restricted)
132
+ # @param scopes [Array<String>]
133
+ # @param type [Symbol, :restricted]
134
+ end
135
+
136
+ # @!method self.variants
137
+ # @return [Array(OpenAI::Models::Admin::Organization::WorkloadIdentityProviders::FederationRuleCreateParams::Permissions::ServiceAccountDefault, OpenAI::Models::Admin::Organization::WorkloadIdentityProviders::FederationRuleCreateParams::Permissions::Restricted)]
138
+ end
139
+ end
140
+ end
141
+ end
142
+ end
143
+ end
144
+ end
@@ -0,0 +1,32 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OpenAI
4
+ module Models
5
+ module Admin
6
+ module Organization
7
+ module WorkloadIdentityProviders
8
+ # @see OpenAI::Resources::Admin::Organization::WorkloadIdentityProviders::FederationRules#delete
9
+ class FederationRuleDeleteParams < OpenAI::Internal::Type::BaseModel
10
+ extend OpenAI::Internal::Type::RequestParameters::Converter
11
+ include OpenAI::Internal::Type::RequestParameters
12
+
13
+ # @!attribute workload_identity_provider_id
14
+ #
15
+ # @return [String]
16
+ required :workload_identity_provider_id, String
17
+
18
+ # @!attribute workload_identity_federation_rule_id
19
+ #
20
+ # @return [String]
21
+ required :workload_identity_federation_rule_id, String
22
+
23
+ # @!method initialize(workload_identity_provider_id:, workload_identity_federation_rule_id:, request_options: {})
24
+ # @param workload_identity_provider_id [String]
25
+ # @param workload_identity_federation_rule_id [String]
26
+ # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}]
27
+ end
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,34 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OpenAI
4
+ module Models
5
+ module Admin
6
+ module Organization
7
+ module WorkloadIdentityProviders
8
+ # @see OpenAI::Resources::Admin::Organization::WorkloadIdentityProviders::FederationRules#delete
9
+ class FederationRuleDeleted < OpenAI::Internal::Type::BaseModel
10
+ # @!attribute id
11
+ #
12
+ # @return [String]
13
+ required :id, String
14
+
15
+ # @!attribute deleted
16
+ #
17
+ # @return [Boolean]
18
+ required :deleted, OpenAI::Internal::Type::Boolean
19
+
20
+ # @!attribute object
21
+ #
22
+ # @return [Symbol, :"organization.workload_identity_federation_rule.deleted"]
23
+ required :object, const: :"organization.workload_identity_federation_rule.deleted"
24
+
25
+ # @!method initialize(id:, deleted:, object: :"organization.workload_identity_federation_rule.deleted")
26
+ # @param id [String]
27
+ # @param deleted [Boolean]
28
+ # @param object [Symbol, :"organization.workload_identity_federation_rule.deleted"]
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,85 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OpenAI
4
+ module Models
5
+ module Admin
6
+ module Organization
7
+ module WorkloadIdentityProviders
8
+ # @see OpenAI::Resources::Admin::Organization::WorkloadIdentityProviders::FederationRules#list
9
+ class FederationRuleListParams < OpenAI::Internal::Type::BaseModel
10
+ extend OpenAI::Internal::Type::RequestParameters::Converter
11
+ include OpenAI::Internal::Type::RequestParameters
12
+
13
+ # @!attribute workload_identity_provider_id
14
+ #
15
+ # @return [String]
16
+ required :workload_identity_provider_id, String
17
+
18
+ # @!attribute after
19
+ #
20
+ # @return [String, nil]
21
+ optional :after, String
22
+
23
+ # @!attribute limit
24
+ #
25
+ # @return [Integer, nil]
26
+ optional :limit, Integer
27
+
28
+ # @!attribute order
29
+ #
30
+ # @return [Symbol, OpenAI::Models::Admin::Organization::WorkloadIdentityProviders::FederationRuleListParams::Order, nil]
31
+ optional(
32
+ :order,
33
+ union: -> { OpenAI::Admin::Organization::WorkloadIdentityProviders::FederationRuleListParams::Order }
34
+ )
35
+
36
+ # @!attribute service_account_id
37
+ #
38
+ # @return [String, nil]
39
+ optional :service_account_id, String
40
+
41
+ # @!method initialize(workload_identity_provider_id:, after: nil, limit: nil, order: nil, service_account_id: nil, request_options: {})
42
+ # @param workload_identity_provider_id [String]
43
+ # @param after [String]
44
+ # @param limit [Integer]
45
+ # @param order [Symbol, OpenAI::Models::Admin::Organization::WorkloadIdentityProviders::FederationRuleListParams::Order]
46
+ # @param service_account_id [String]
47
+ # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}]
48
+
49
+ module Order
50
+ extend OpenAI::Internal::Type::Union
51
+
52
+ variant(
53
+ const: -> {
54
+ OpenAI::Models::Admin::Organization::WorkloadIdentityProviders::FederationRuleListParams::Order::ASC
55
+ }
56
+ )
57
+
58
+ variant(
59
+ const: -> {
60
+ OpenAI::Models::Admin::Organization::WorkloadIdentityProviders::FederationRuleListParams::Order::DESC
61
+ }
62
+ )
63
+
64
+ # @!method self.variants
65
+ # @return [Array(Symbol)]
66
+
67
+ define_sorbet_constant!(:Variants) do
68
+ T.type_alias {
69
+ OpenAI::Admin::Organization::WorkloadIdentityProviders::FederationRuleListParams::Order::TaggedSymbol
70
+ }
71
+ end
72
+
73
+ # @!group
74
+
75
+ ASC = :asc
76
+ DESC = :desc
77
+
78
+ # @!endgroup
79
+ end
80
+ end
81
+ end
82
+ end
83
+ end
84
+ end
85
+ end