openai 0.114.0 → 0.115.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +36 -0
- data/README.md +17 -2
- data/docs/architecture/security-model.md +11 -16
- data/examples/responses/websocket_workflows.rb +78 -3
- data/lib/openai/helpers/chat/tool_runner.rb +1 -1
- data/lib/openai/helpers/live/websocket.rb +31 -0
- data/lib/openai/helpers/realtime/connection.rb +33 -0
- data/lib/openai/helpers/realtime/connection_manager.rb +1 -0
- data/lib/openai/helpers/realtime/conversation_item_variant_resolver.rb +5 -0
- data/lib/openai/helpers/realtime/recovery.rb +5 -1
- data/lib/openai/helpers/realtime/translation.rb +5 -0
- data/lib/openai/helpers/realtime/transports/async_websocket.rb +19 -0
- data/lib/openai/helpers/responses_websocket/connection.rb +53 -15
- data/lib/openai/helpers/responses_websocket/connection_manager.rb +1 -0
- data/lib/openai/helpers/responses_websocket/connection_resources.rb +1 -1
- data/lib/openai/helpers/structured_output/response_parser.rb +1 -0
- data/lib/openai/helpers/structured_output.rb +58 -0
- data/lib/openai/helpers/websocket/connection_manager.rb +11 -0
- data/lib/openai/helpers/websocket/resource.rb +1 -0
- data/lib/openai/helpers/websocket/typed_connection.rb +1 -0
- data/lib/openai/internal/type/array_of.rb +1 -1
- data/lib/openai/internal/type/hash_of.rb +1 -1
- data/lib/openai/internal/type/request_parameters.rb +2 -1
- data/lib/openai/internal/type/union.rb +18 -6
- data/lib/openai/models/admin/organization/external_key.rb +169 -0
- data/lib/openai/models/admin/organization/external_key_create_params.rb +311 -0
- data/lib/openai/models/admin/organization/external_key_delete_params.rb +24 -0
- data/lib/openai/models/admin/organization/external_key_list_params.rb +69 -0
- data/lib/openai/models/admin/organization/external_key_retrieve_params.rb +24 -0
- data/lib/openai/models/admin/organization/external_key_validate_params.rb +24 -0
- data/lib/openai/models/admin/organization/external_key_validate_response.rb +20 -0
- data/lib/openai/models/audio/speech_model.rb +12 -0
- data/lib/openai/models/audio_model.rb +15 -0
- data/lib/openai/models/beta/agent.rb +49 -1
- data/lib/openai/models/beta/agent_create_params.rb +51 -1
- data/lib/openai/models/beta/agent_session.rb +75 -2
- data/lib/openai/models/beta/agent_update_params.rb +62 -1
- data/lib/openai/models/beta/agents/session_create_params.rb +94 -2
- data/lib/openai/models/beta/agents/session_list_params.rb +16 -1
- data/lib/openai/models/beta/agents/session_update_params.rb +50 -5
- data/lib/openai/models/beta/assistant_update_params.rb +18 -0
- data/lib/openai/models/beta/beta_response.rb +224 -1
- data/lib/openai/models/beta/beta_response_configuration_update_item.rb +64 -3
- data/lib/openai/models/beta/beta_response_configuration_update_item_param.rb +64 -4
- data/lib/openai/models/beta/beta_response_input_item.rb +2 -3
- data/lib/openai/models/beta/beta_response_item.rb +2 -2
- data/lib/openai/models/beta/beta_response_tool_search_output_item_param.rb +6 -6
- data/lib/openai/models/beta/beta_responses_client_event.rb +20 -1
- data/lib/openai/models/beta/beta_tool.rb +6 -6
- data/lib/openai/models/beta/response_compact_params.rb +6 -0
- data/lib/openai/models/beta/response_create_params.rb +6 -0
- data/lib/openai/models/chat_model.rb +6 -0
- data/lib/openai/models/conversations/conversation_item.rb +2 -2
- data/lib/openai/models/image_edit_params.rb +46 -25
- data/lib/openai/models/live/fork_server_event.rb +43 -3
- data/lib/openai/models/live/server_event.rb +43 -3
- data/lib/openai/models/live/sideband_client_event.rb +40 -1
- data/lib/openai/models/live/sideband_server_event.rb +43 -3
- data/lib/openai/models/realtime/audio_transcription.rb +15 -0
- data/lib/openai/models/realtime/conversation_item_added.rb +2 -2
- data/lib/openai/models/realtime/conversation_item_create_event.rb +2 -2
- data/lib/openai/models/realtime/conversation_item_created_event.rb +2 -2
- data/lib/openai/models/realtime/conversation_item_done.rb +2 -2
- data/lib/openai/models/realtime/realtime_response.rb +2 -2
- data/lib/openai/models/realtime/realtime_response_create_params.rb +2 -2
- data/lib/openai/models/realtime/realtime_server_event.rb +2 -2
- data/lib/openai/models/realtime/realtime_session.rb +18 -0
- data/lib/openai/models/realtime/realtime_session_create_request.rb +18 -0
- data/lib/openai/models/realtime/realtime_session_create_response.rb +18 -0
- data/lib/openai/models/realtime/response_output_item_added_event.rb +2 -2
- data/lib/openai/models/realtime/response_output_item_done_event.rb +2 -2
- data/lib/openai/models/responses/response.rb +221 -1
- data/lib/openai/models/responses/response_compact_params.rb +6 -0
- data/lib/openai/models/responses/response_configuration_update_item.rb +50 -3
- data/lib/openai/models/responses/response_configuration_update_item_param.rb +50 -4
- data/lib/openai/models/responses/response_input_item.rb +2 -3
- data/lib/openai/models/responses/response_item.rb +2 -2
- data/lib/openai/models/responses/response_tool_search_output_item_param.rb +6 -6
- data/lib/openai/models/responses/responses_client_event.rb +14 -1
- data/lib/openai/models/responses/tool.rb +6 -6
- data/lib/openai/net_http_client.rb +6 -0
- data/lib/openai/providers/vertex.rb +0 -10
- data/lib/openai/resources/admin/organization/external_keys.rb +132 -0
- data/lib/openai/resources/admin/organization.rb +4 -0
- data/lib/openai/resources/audio/speech.rb +8 -0
- data/lib/openai/resources/audio/translations.rb +8 -0
- data/lib/openai/resources/beta/agents/sessions.rb +22 -6
- data/lib/openai/resources/beta/agents.rb +17 -2
- data/lib/openai/resources/images.rb +36 -18
- data/lib/openai/version.rb +1 -1
- data/lib/openai.rb +8 -0
- data/rbi/openai/helpers/live/websocket.rbi +1 -12
- data/rbi/openai/helpers/realtime/connection.rbi +5 -0
- data/rbi/openai/helpers/realtime/transports/async_websocket.rbi +5 -0
- data/rbi/openai/helpers/responses_websocket/connection.rbi +7 -2
- data/rbi/openai/helpers/structured_output.rbi +10 -0
- data/rbi/openai/internal/type/array_of.rbi +1 -1
- data/rbi/openai/internal/type/hash_of.rbi +1 -1
- data/rbi/openai/internal/type/union.rbi +5 -0
- data/rbi/openai/models/admin/organization/external_key.rbi +301 -0
- data/rbi/openai/models/admin/organization/external_key_create_params.rbi +532 -0
- data/rbi/openai/models/admin/organization/external_key_delete_params.rbi +57 -0
- data/rbi/openai/models/admin/organization/external_key_list_params.rbi +129 -0
- data/rbi/openai/models/admin/organization/external_key_retrieve_params.rbi +57 -0
- data/rbi/openai/models/admin/organization/external_key_validate_params.rbi +57 -0
- data/rbi/openai/models/admin/organization/external_key_validate_response.rbi +50 -0
- data/rbi/openai/models/beta/agent.rbi +103 -1
- data/rbi/openai/models/beta/agent_create_params.rbi +109 -0
- data/rbi/openai/models/beta/agent_session.rbi +136 -3
- data/rbi/openai/models/beta/agent_update_params.rbi +120 -0
- data/rbi/openai/models/beta/agents/session_create_params.rbi +153 -0
- data/rbi/openai/models/beta/agents/session_list_params.rbi +19 -0
- data/rbi/openai/models/beta/agents/session_update_params.rbi +94 -6
- data/rbi/openai/models/beta/beta_response.rbi +394 -0
- data/rbi/openai/models/beta/beta_response_configuration_update_item.rbi +113 -3
- data/rbi/openai/models/beta/beta_response_configuration_update_item_param.rbi +125 -4
- data/rbi/openai/models/beta/beta_response_tool_search_output_item_param.rbi +6 -6
- data/rbi/openai/models/beta/beta_responses_client_event.rbi +17 -0
- data/rbi/openai/models/beta/beta_tool.rbi +6 -6
- data/rbi/openai/models/decision_create_params.rbi +4 -1
- data/rbi/openai/models/image_edit_params.rbi +49 -24
- data/rbi/openai/models/live/fork_server_event.rbi +65 -1
- data/rbi/openai/models/live/server_event.rbi +65 -1
- data/rbi/openai/models/live/sideband_client_event.rbi +60 -0
- data/rbi/openai/models/live/sideband_server_event.rbi +65 -1
- data/rbi/openai/models/realtime/conversation_item_added.rbi +6 -3
- data/rbi/openai/models/realtime/conversation_item_create_event.rbi +6 -3
- data/rbi/openai/models/realtime/conversation_item_created_event.rbi +6 -3
- data/rbi/openai/models/realtime/conversation_item_done.rbi +6 -3
- data/rbi/openai/models/realtime/realtime_response.rbi +8 -4
- data/rbi/openai/models/realtime/realtime_response_create_params.rbi +8 -4
- data/rbi/openai/models/realtime/realtime_server_event.rbi +6 -3
- data/rbi/openai/models/realtime/response_output_item_added_event.rbi +6 -3
- data/rbi/openai/models/realtime/response_output_item_done_event.rbi +6 -3
- data/rbi/openai/models/responses/response.rbi +394 -0
- data/rbi/openai/models/responses/response_configuration_update_item.rbi +76 -3
- data/rbi/openai/models/responses/response_configuration_update_item_param.rbi +74 -4
- data/rbi/openai/models/responses/response_tool_search_output_item_param.rbi +6 -6
- data/rbi/openai/models/responses/responses_client_event.rbi +17 -0
- data/rbi/openai/models/responses/tool.rbi +6 -6
- data/rbi/openai/net_http_client.rbi +5 -0
- data/rbi/openai/resources/admin/organization/external_keys.rbi +86 -0
- data/rbi/openai/resources/admin/organization.rbi +3 -0
- data/rbi/openai/resources/audio/speech.rbi +8 -0
- data/rbi/openai/resources/audio/translations.rbi +6 -0
- data/rbi/openai/resources/beta/agents/sessions.rbi +18 -2
- data/rbi/openai/resources/beta/agents.rbi +15 -0
- data/rbi/openai/resources/images.rbi +34 -16
- data/rbi/openai/resources/responses.rbi +2 -0
- data/realtime.md +6 -0
- data/responses-websocket.md +53 -0
- data/sig/openai/helpers/live/websocket.rbs +1 -9
- data/sig/openai/helpers/realtime/connection.rbs +3 -0
- data/sig/openai/helpers/realtime/transports/async_websocket.rbs +3 -0
- data/sig/openai/helpers/responses_websocket/connection.rbs +7 -1
- data/sig/openai/helpers/structured_output.rbs +9 -0
- data/sig/openai/internal/type/union.rbs +4 -0
- data/sig/openai/models/admin/organization/external_key.rbs +186 -0
- data/sig/openai/models/admin/organization/external_key_create_params.rbs +423 -0
- data/sig/openai/models/admin/organization/external_key_delete_params.rbs +27 -0
- data/sig/openai/models/admin/organization/external_key_list_params.rbs +81 -0
- data/sig/openai/models/admin/organization/external_key_retrieve_params.rbs +27 -0
- data/sig/openai/models/admin/organization/external_key_validate_params.rbs +27 -0
- data/sig/openai/models/admin/organization/external_key_validate_response.rbs +17 -0
- data/sig/openai/models/admin/organization/external_storage_create_params.rbs +72 -2
- data/sig/openai/models/audio/speech_create_params.rbs +15 -2
- data/sig/openai/models/audio/transcription_create_params.rbs +30 -2
- data/sig/openai/models/audio/voice_create_params.rbs +47 -2
- data/sig/openai/models/beta/agent.rbs +54 -2
- data/sig/openai/models/beta/agent_create_params.rbs +54 -0
- data/sig/openai/models/beta/agent_session.rbs +82 -3
- data/sig/openai/models/beta/agent_update_params.rbs +64 -0
- data/sig/openai/models/beta/agents/session_create_params.rbs +91 -0
- data/sig/openai/models/beta/agents/session_list_params.rbs +20 -0
- data/sig/openai/models/beta/agents/session_update_params.rbs +48 -6
- data/sig/openai/models/beta/assistant_create_params.rbs +5 -2
- data/sig/openai/models/beta/beta_response.rbs +223 -0
- data/sig/openai/models/beta/beta_response_configuration_update_item.rbs +58 -2
- data/sig/openai/models/beta/beta_response_configuration_update_item_param.rbs +58 -2
- data/sig/openai/models/beta/beta_response_tool_search_output_item_param.rbs +4 -4
- data/sig/openai/models/beta/beta_responses_client_event.rbs +17 -0
- data/sig/openai/models/beta/beta_tool.rbs +4 -4
- data/sig/openai/models/beta/response_create_params.rbs +5 -2
- data/sig/openai/models/beta/responses/input_token_count_params.rbs +10 -2
- data/sig/openai/models/beta/thread_create_and_run_params.rbs +11 -5
- data/sig/openai/models/beta/thread_create_params.rbs +11 -5
- data/sig/openai/models/beta/threads/message_create_params.rbs +6 -3
- data/sig/openai/models/beta/threads/run_create_params.rbs +6 -3
- data/sig/openai/models/decision_create_params.rbs +27 -2
- data/sig/openai/models/eval_create_params.rbs +25 -4
- data/sig/openai/models/evals/run_create_params.rbs +52 -8
- data/sig/openai/models/image_edit_params.rbs +47 -16
- data/sig/openai/models/live/fork_server_event.rbs +39 -0
- data/sig/openai/models/live/server_event.rbs +39 -0
- data/sig/openai/models/live/session_accept_params.rbs +39 -2
- data/sig/openai/models/live/sideband_client_event.rbs +32 -0
- data/sig/openai/models/live/sideband_server_event.rbs +39 -0
- data/sig/openai/models/realtime/conversation_item.rbs +1 -0
- data/sig/openai/models/responses/input_token_count_params.rbs +10 -2
- data/sig/openai/models/responses/response.rbs +223 -0
- data/sig/openai/models/responses/response_configuration_update_item.rbs +45 -2
- data/sig/openai/models/responses/response_configuration_update_item_param.rbs +45 -2
- data/sig/openai/models/responses/response_create_params.rbs +5 -2
- data/sig/openai/models/responses/response_tool_search_output_item_param.rbs +4 -4
- data/sig/openai/models/responses/responses_client_event.rbs +17 -0
- data/sig/openai/models/responses/tool.rbs +4 -4
- data/sig/openai/models/video_edit_params.rbs +11 -2
- data/sig/openai/models/video_extend_params.rbs +11 -2
- data/sig/openai/net_http_client.rbs +3 -0
- data/sig/openai/resources/admin/organization/external_keys.rbs +70 -0
- data/sig/openai/resources/admin/organization/external_storage.rbs +23 -1
- data/sig/openai/resources/admin/organization.rbs +2 -0
- data/sig/openai/resources/audio/speech.rbs +2 -1
- data/sig/openai/resources/audio/transcriptions.rbs +14 -2
- data/sig/openai/resources/audio/voices.rbs +14 -1
- data/sig/openai/resources/beta/agents/sessions.rbs +4 -0
- data/sig/openai/resources/beta/agents.rbs +4 -0
- data/sig/openai/resources/beta/responses/input_tokens.rbs +2 -1
- data/sig/openai/resources/beta/responses.rbs +4 -2
- data/sig/openai/resources/decisions.rbs +7 -1
- data/sig/openai/resources/images.rbs +2 -0
- data/sig/openai/resources/responses/input_tokens.rbs +2 -1
- data/sig/openai/resources/responses.rbs +5 -2
- data/sig/openai/resources/videos.rbs +2 -2
- metadata +25 -1
|
@@ -0,0 +1,532 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module OpenAI
|
|
4
|
+
module Models
|
|
5
|
+
|
|
6
|
+
module Admin
|
|
7
|
+
|
|
8
|
+
module Organization
|
|
9
|
+
|
|
10
|
+
class ExternalKeyCreateParams < OpenAI::Internal::Type::BaseModel
|
|
11
|
+
|
|
12
|
+
extend OpenAI::Internal::Type::RequestParameters::Converter
|
|
13
|
+
include OpenAI::Internal::Type::RequestParameters
|
|
14
|
+
|
|
15
|
+
OrHash = T.type_alias do
|
|
16
|
+
T.any(
|
|
17
|
+
OpenAI::Admin::Organization::ExternalKeyCreateParams,
|
|
18
|
+
OpenAI::Internal::AnyHash
|
|
19
|
+
)
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
sig {
|
|
23
|
+
returns(
|
|
24
|
+
T.any(
|
|
25
|
+
OpenAI::Admin::Organization::ExternalKeyCreateParams::Body::Aws,
|
|
26
|
+
OpenAI::Admin::Organization::ExternalKeyCreateParams::Body::Gcp,
|
|
27
|
+
OpenAI::Admin::Organization::ExternalKeyCreateParams::Body::Azure
|
|
28
|
+
)
|
|
29
|
+
)
|
|
30
|
+
}
|
|
31
|
+
attr_accessor :body
|
|
32
|
+
|
|
33
|
+
sig do
|
|
34
|
+
params(
|
|
35
|
+
|
|
36
|
+
body: T.any(
|
|
37
|
+
OpenAI::Admin::Organization::ExternalKeyCreateParams::Body::Aws::OrHash,
|
|
38
|
+
OpenAI::Admin::Organization::ExternalKeyCreateParams::Body::Gcp::OrHash,
|
|
39
|
+
OpenAI::Admin::Organization::ExternalKeyCreateParams::Body::Azure::OrHash
|
|
40
|
+
),
|
|
41
|
+
|
|
42
|
+
request_options: OpenAI::RequestOptions::OrHash
|
|
43
|
+
)
|
|
44
|
+
.returns(T.attached_class)
|
|
45
|
+
end
|
|
46
|
+
def self.new(
|
|
47
|
+
|
|
48
|
+
body:,
|
|
49
|
+
|
|
50
|
+
request_options: {}
|
|
51
|
+
)
|
|
52
|
+
end
|
|
53
|
+
|
|
54
|
+
sig do
|
|
55
|
+
override.returns(
|
|
56
|
+
{
|
|
57
|
+
body: T.any(
|
|
58
|
+
OpenAI::Admin::Organization::ExternalKeyCreateParams::Body::Aws,
|
|
59
|
+
OpenAI::Admin::Organization::ExternalKeyCreateParams::Body::Gcp,
|
|
60
|
+
OpenAI::Admin::Organization::ExternalKeyCreateParams::Body::Azure
|
|
61
|
+
),
|
|
62
|
+
request_options: OpenAI::RequestOptions
|
|
63
|
+
}
|
|
64
|
+
)
|
|
65
|
+
end
|
|
66
|
+
def to_hash
|
|
67
|
+
end
|
|
68
|
+
|
|
69
|
+
module Body
|
|
70
|
+
extend OpenAI::Internal::Type::Union
|
|
71
|
+
|
|
72
|
+
Variants = T.type_alias {
|
|
73
|
+
T.any(
|
|
74
|
+
OpenAI::Admin::Organization::ExternalKeyCreateParams::Body::Aws,
|
|
75
|
+
OpenAI::Admin::Organization::ExternalKeyCreateParams::Body::Gcp,
|
|
76
|
+
OpenAI::Admin::Organization::ExternalKeyCreateParams::Body::Azure
|
|
77
|
+
)
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
class Aws < OpenAI::Internal::Type::BaseModel
|
|
81
|
+
OrHash = T.type_alias do
|
|
82
|
+
T.any(
|
|
83
|
+
OpenAI::Admin::Organization::ExternalKeyCreateParams::Body::Aws,
|
|
84
|
+
OpenAI::Internal::AnyHash
|
|
85
|
+
)
|
|
86
|
+
end
|
|
87
|
+
|
|
88
|
+
# The ExternalID that OpenAI will pass in the AssumeRole call for the customer's
|
|
89
|
+
# AWS account. This must be the OpenAI organization ID or an API project ID that
|
|
90
|
+
# belongs to the organization.
|
|
91
|
+
sig { returns(String) }
|
|
92
|
+
attr_accessor :external_id
|
|
93
|
+
|
|
94
|
+
# The Key Management System ARN for the master key you manage
|
|
95
|
+
sig { returns(String) }
|
|
96
|
+
attr_accessor :kms_arn
|
|
97
|
+
|
|
98
|
+
# A friendly name to identify this config
|
|
99
|
+
sig { returns(String) }
|
|
100
|
+
attr_accessor :name
|
|
101
|
+
|
|
102
|
+
# The Role ARN that OpenAI will assume to call your KMS
|
|
103
|
+
sig { returns(String) }
|
|
104
|
+
attr_accessor :role_arn
|
|
105
|
+
|
|
106
|
+
sig { returns(Symbol) }
|
|
107
|
+
attr_accessor :type
|
|
108
|
+
|
|
109
|
+
sig {
|
|
110
|
+
returns(T.nilable(OpenAI::Admin::Organization::ExternalKeyCreateParams::Body::Aws::Purpose::OrSymbol))
|
|
111
|
+
}
|
|
112
|
+
attr_reader :purpose
|
|
113
|
+
|
|
114
|
+
sig {
|
|
115
|
+
params(purpose: OpenAI::Admin::Organization::ExternalKeyCreateParams::Body::Aws::Purpose::OrSymbol).void
|
|
116
|
+
}
|
|
117
|
+
attr_writer :purpose
|
|
118
|
+
|
|
119
|
+
sig do
|
|
120
|
+
params(
|
|
121
|
+
|
|
122
|
+
external_id: String,
|
|
123
|
+
|
|
124
|
+
kms_arn: String,
|
|
125
|
+
|
|
126
|
+
name: String,
|
|
127
|
+
|
|
128
|
+
role_arn: String,
|
|
129
|
+
|
|
130
|
+
purpose: OpenAI::Admin::Organization::ExternalKeyCreateParams::Body::Aws::Purpose::OrSymbol,
|
|
131
|
+
|
|
132
|
+
type: Symbol
|
|
133
|
+
)
|
|
134
|
+
.returns(T.attached_class)
|
|
135
|
+
end
|
|
136
|
+
def self.new(
|
|
137
|
+
|
|
138
|
+
# The ExternalID that OpenAI will pass in the AssumeRole call for the customer's
|
|
139
|
+
# AWS account. This must be the OpenAI organization ID or an API project ID that
|
|
140
|
+
# belongs to the organization.
|
|
141
|
+
external_id:,
|
|
142
|
+
|
|
143
|
+
# The Key Management System ARN for the master key you manage
|
|
144
|
+
kms_arn:,
|
|
145
|
+
|
|
146
|
+
# A friendly name to identify this config
|
|
147
|
+
name:,
|
|
148
|
+
|
|
149
|
+
# The Role ARN that OpenAI will assume to call your KMS
|
|
150
|
+
role_arn:,
|
|
151
|
+
|
|
152
|
+
purpose: nil,
|
|
153
|
+
|
|
154
|
+
type: :aws
|
|
155
|
+
)
|
|
156
|
+
end
|
|
157
|
+
|
|
158
|
+
sig do
|
|
159
|
+
override.returns(
|
|
160
|
+
{
|
|
161
|
+
external_id: String,
|
|
162
|
+
kms_arn: String,
|
|
163
|
+
name: String,
|
|
164
|
+
role_arn: String,
|
|
165
|
+
type: Symbol,
|
|
166
|
+
purpose: OpenAI::Admin::Organization::ExternalKeyCreateParams::Body::Aws::Purpose::OrSymbol
|
|
167
|
+
}
|
|
168
|
+
)
|
|
169
|
+
end
|
|
170
|
+
def to_hash
|
|
171
|
+
end
|
|
172
|
+
|
|
173
|
+
module Purpose
|
|
174
|
+
extend OpenAI::Internal::Type::Enum
|
|
175
|
+
|
|
176
|
+
TaggedSymbol = T.type_alias {
|
|
177
|
+
T.all(Symbol, OpenAI::Admin::Organization::ExternalKeyCreateParams::Body::Aws::Purpose)
|
|
178
|
+
}
|
|
179
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
180
|
+
|
|
181
|
+
EKM = T.let(
|
|
182
|
+
:ekm,
|
|
183
|
+
OpenAI::Admin::Organization::ExternalKeyCreateParams::Body::Aws::Purpose::TaggedSymbol
|
|
184
|
+
)
|
|
185
|
+
PSP_DECRYPTION = T.let(
|
|
186
|
+
:psp_decryption,
|
|
187
|
+
OpenAI::Admin::Organization::ExternalKeyCreateParams::Body::Aws::Purpose::TaggedSymbol
|
|
188
|
+
)
|
|
189
|
+
|
|
190
|
+
sig {
|
|
191
|
+
override.returns(
|
|
192
|
+
T::Array[OpenAI::Admin::Organization::ExternalKeyCreateParams::Body::Aws::Purpose::TaggedSymbol]
|
|
193
|
+
)
|
|
194
|
+
}
|
|
195
|
+
def self.values
|
|
196
|
+
end
|
|
197
|
+
end
|
|
198
|
+
end
|
|
199
|
+
|
|
200
|
+
class Gcp < OpenAI::Internal::Type::BaseModel
|
|
201
|
+
OrHash = T.type_alias do
|
|
202
|
+
T.any(
|
|
203
|
+
OpenAI::Admin::Organization::ExternalKeyCreateParams::Body::Gcp,
|
|
204
|
+
OpenAI::Internal::AnyHash
|
|
205
|
+
)
|
|
206
|
+
end
|
|
207
|
+
|
|
208
|
+
# The aud field in the identity token OpenAI will pass in the call to the
|
|
209
|
+
# customer's GCP STS. This must be the OpenAI organization ID or an API project ID
|
|
210
|
+
# that belongs to the organization.
|
|
211
|
+
sig { returns(String) }
|
|
212
|
+
attr_accessor :audience
|
|
213
|
+
|
|
214
|
+
# The region where your Key Management System master key is located
|
|
215
|
+
sig { returns(String) }
|
|
216
|
+
attr_accessor :kms_key_location
|
|
217
|
+
|
|
218
|
+
# The name of the Key Management System master key you manage
|
|
219
|
+
sig { returns(String) }
|
|
220
|
+
attr_accessor :kms_key_name
|
|
221
|
+
|
|
222
|
+
# The Key Management System key ring for the master key you manage
|
|
223
|
+
sig { returns(String) }
|
|
224
|
+
attr_accessor :kms_key_ring_name
|
|
225
|
+
|
|
226
|
+
# The string GCP project name where your KMS resides
|
|
227
|
+
sig { returns(String) }
|
|
228
|
+
attr_accessor :kms_project_id
|
|
229
|
+
|
|
230
|
+
# A friendly name to identify this config
|
|
231
|
+
sig { returns(String) }
|
|
232
|
+
attr_accessor :name
|
|
233
|
+
|
|
234
|
+
sig { returns(Symbol) }
|
|
235
|
+
attr_accessor :type
|
|
236
|
+
|
|
237
|
+
# The pool containing the Workload Identity provider that you registered for
|
|
238
|
+
# OpenAI
|
|
239
|
+
sig { returns(String) }
|
|
240
|
+
attr_accessor :workload_identity_pool_id
|
|
241
|
+
|
|
242
|
+
# The numeric GCP project number where you registered OpenAI's workload identity
|
|
243
|
+
sig { returns(String) }
|
|
244
|
+
attr_accessor :workload_identity_project_number
|
|
245
|
+
|
|
246
|
+
# The Workload Identity provider that you registered for OpenAI
|
|
247
|
+
sig { returns(String) }
|
|
248
|
+
attr_accessor :workload_identity_provider_id
|
|
249
|
+
|
|
250
|
+
# An exact CryptoKeyVersion number. Required for PSP decryption; not accepted for
|
|
251
|
+
# EKM.
|
|
252
|
+
sig { returns(T.nilable(String)) }
|
|
253
|
+
attr_reader :kms_key_version
|
|
254
|
+
|
|
255
|
+
sig { params(kms_key_version: String).void }
|
|
256
|
+
attr_writer :kms_key_version
|
|
257
|
+
|
|
258
|
+
sig {
|
|
259
|
+
returns(T.nilable(OpenAI::Admin::Organization::ExternalKeyCreateParams::Body::Gcp::Purpose::OrSymbol))
|
|
260
|
+
}
|
|
261
|
+
attr_reader :purpose
|
|
262
|
+
|
|
263
|
+
sig {
|
|
264
|
+
params(purpose: OpenAI::Admin::Organization::ExternalKeyCreateParams::Body::Gcp::Purpose::OrSymbol).void
|
|
265
|
+
}
|
|
266
|
+
attr_writer :purpose
|
|
267
|
+
|
|
268
|
+
sig do
|
|
269
|
+
params(
|
|
270
|
+
|
|
271
|
+
audience: String,
|
|
272
|
+
|
|
273
|
+
kms_key_location: String,
|
|
274
|
+
|
|
275
|
+
kms_key_name: String,
|
|
276
|
+
|
|
277
|
+
kms_key_ring_name: String,
|
|
278
|
+
|
|
279
|
+
kms_project_id: String,
|
|
280
|
+
|
|
281
|
+
name: String,
|
|
282
|
+
|
|
283
|
+
workload_identity_pool_id: String,
|
|
284
|
+
|
|
285
|
+
workload_identity_project_number: String,
|
|
286
|
+
|
|
287
|
+
workload_identity_provider_id: String,
|
|
288
|
+
|
|
289
|
+
kms_key_version: String,
|
|
290
|
+
|
|
291
|
+
purpose: OpenAI::Admin::Organization::ExternalKeyCreateParams::Body::Gcp::Purpose::OrSymbol,
|
|
292
|
+
|
|
293
|
+
type: Symbol
|
|
294
|
+
)
|
|
295
|
+
.returns(T.attached_class)
|
|
296
|
+
end
|
|
297
|
+
def self.new(
|
|
298
|
+
|
|
299
|
+
# The aud field in the identity token OpenAI will pass in the call to the
|
|
300
|
+
# customer's GCP STS. This must be the OpenAI organization ID or an API project ID
|
|
301
|
+
# that belongs to the organization.
|
|
302
|
+
audience:,
|
|
303
|
+
|
|
304
|
+
# The region where your Key Management System master key is located
|
|
305
|
+
kms_key_location:,
|
|
306
|
+
|
|
307
|
+
# The name of the Key Management System master key you manage
|
|
308
|
+
kms_key_name:,
|
|
309
|
+
|
|
310
|
+
# The Key Management System key ring for the master key you manage
|
|
311
|
+
kms_key_ring_name:,
|
|
312
|
+
|
|
313
|
+
# The string GCP project name where your KMS resides
|
|
314
|
+
kms_project_id:,
|
|
315
|
+
|
|
316
|
+
# A friendly name to identify this config
|
|
317
|
+
name:,
|
|
318
|
+
|
|
319
|
+
# The pool containing the Workload Identity provider that you registered for
|
|
320
|
+
# OpenAI
|
|
321
|
+
workload_identity_pool_id:,
|
|
322
|
+
|
|
323
|
+
# The numeric GCP project number where you registered OpenAI's workload identity
|
|
324
|
+
workload_identity_project_number:,
|
|
325
|
+
|
|
326
|
+
# The Workload Identity provider that you registered for OpenAI
|
|
327
|
+
workload_identity_provider_id:,
|
|
328
|
+
|
|
329
|
+
# An exact CryptoKeyVersion number. Required for PSP decryption; not accepted for
|
|
330
|
+
# EKM.
|
|
331
|
+
kms_key_version: nil,
|
|
332
|
+
|
|
333
|
+
purpose: nil,
|
|
334
|
+
|
|
335
|
+
type: :gcp
|
|
336
|
+
)
|
|
337
|
+
end
|
|
338
|
+
|
|
339
|
+
sig do
|
|
340
|
+
override.returns(
|
|
341
|
+
{
|
|
342
|
+
audience: String,
|
|
343
|
+
kms_key_location: String,
|
|
344
|
+
kms_key_name: String,
|
|
345
|
+
kms_key_ring_name: String,
|
|
346
|
+
kms_project_id: String,
|
|
347
|
+
name: String,
|
|
348
|
+
type: Symbol,
|
|
349
|
+
workload_identity_pool_id: String,
|
|
350
|
+
workload_identity_project_number: String,
|
|
351
|
+
workload_identity_provider_id: String,
|
|
352
|
+
kms_key_version: String,
|
|
353
|
+
purpose: OpenAI::Admin::Organization::ExternalKeyCreateParams::Body::Gcp::Purpose::OrSymbol
|
|
354
|
+
}
|
|
355
|
+
)
|
|
356
|
+
end
|
|
357
|
+
def to_hash
|
|
358
|
+
end
|
|
359
|
+
|
|
360
|
+
module Purpose
|
|
361
|
+
extend OpenAI::Internal::Type::Enum
|
|
362
|
+
|
|
363
|
+
TaggedSymbol = T.type_alias {
|
|
364
|
+
T.all(Symbol, OpenAI::Admin::Organization::ExternalKeyCreateParams::Body::Gcp::Purpose)
|
|
365
|
+
}
|
|
366
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
367
|
+
|
|
368
|
+
EKM = T.let(
|
|
369
|
+
:ekm,
|
|
370
|
+
OpenAI::Admin::Organization::ExternalKeyCreateParams::Body::Gcp::Purpose::TaggedSymbol
|
|
371
|
+
)
|
|
372
|
+
PSP_DECRYPTION = T.let(
|
|
373
|
+
:psp_decryption,
|
|
374
|
+
OpenAI::Admin::Organization::ExternalKeyCreateParams::Body::Gcp::Purpose::TaggedSymbol
|
|
375
|
+
)
|
|
376
|
+
|
|
377
|
+
sig {
|
|
378
|
+
override.returns(
|
|
379
|
+
T::Array[OpenAI::Admin::Organization::ExternalKeyCreateParams::Body::Gcp::Purpose::TaggedSymbol]
|
|
380
|
+
)
|
|
381
|
+
}
|
|
382
|
+
def self.values
|
|
383
|
+
end
|
|
384
|
+
end
|
|
385
|
+
end
|
|
386
|
+
|
|
387
|
+
class Azure < OpenAI::Internal::Type::BaseModel
|
|
388
|
+
OrHash = T.type_alias do
|
|
389
|
+
T.any(
|
|
390
|
+
OpenAI::Admin::Organization::ExternalKeyCreateParams::Body::Azure,
|
|
391
|
+
OpenAI::Internal::AnyHash
|
|
392
|
+
)
|
|
393
|
+
end
|
|
394
|
+
|
|
395
|
+
# The name of the Azure Key Vault master key that you manage
|
|
396
|
+
sig { returns(String) }
|
|
397
|
+
attr_accessor :key_name
|
|
398
|
+
|
|
399
|
+
# A friendly name to identify this config
|
|
400
|
+
sig { returns(String) }
|
|
401
|
+
attr_accessor :name
|
|
402
|
+
|
|
403
|
+
# Your Azure tenant UUID
|
|
404
|
+
sig { returns(String) }
|
|
405
|
+
attr_accessor :tenant_id
|
|
406
|
+
|
|
407
|
+
sig { returns(Symbol) }
|
|
408
|
+
attr_accessor :type
|
|
409
|
+
|
|
410
|
+
# The URI of the Azure vault containing the master key you manage
|
|
411
|
+
sig { returns(String) }
|
|
412
|
+
attr_accessor :vault_uri
|
|
413
|
+
|
|
414
|
+
# An exact Azure Key Vault key version. Required for PSP decryption; not accepted
|
|
415
|
+
# for EKM.
|
|
416
|
+
sig { returns(T.nilable(String)) }
|
|
417
|
+
attr_reader :key_version
|
|
418
|
+
|
|
419
|
+
sig { params(key_version: String).void }
|
|
420
|
+
attr_writer :key_version
|
|
421
|
+
|
|
422
|
+
sig {
|
|
423
|
+
returns(T.nilable(OpenAI::Admin::Organization::ExternalKeyCreateParams::Body::Azure::Purpose::OrSymbol))
|
|
424
|
+
}
|
|
425
|
+
attr_reader :purpose
|
|
426
|
+
|
|
427
|
+
sig {
|
|
428
|
+
params(purpose: OpenAI::Admin::Organization::ExternalKeyCreateParams::Body::Azure::Purpose::OrSymbol)
|
|
429
|
+
.void
|
|
430
|
+
}
|
|
431
|
+
attr_writer :purpose
|
|
432
|
+
|
|
433
|
+
sig do
|
|
434
|
+
params(
|
|
435
|
+
|
|
436
|
+
key_name: String,
|
|
437
|
+
|
|
438
|
+
name: String,
|
|
439
|
+
|
|
440
|
+
tenant_id: String,
|
|
441
|
+
|
|
442
|
+
vault_uri: String,
|
|
443
|
+
|
|
444
|
+
key_version: String,
|
|
445
|
+
|
|
446
|
+
purpose: OpenAI::Admin::Organization::ExternalKeyCreateParams::Body::Azure::Purpose::OrSymbol,
|
|
447
|
+
|
|
448
|
+
type: Symbol
|
|
449
|
+
)
|
|
450
|
+
.returns(T.attached_class)
|
|
451
|
+
end
|
|
452
|
+
def self.new(
|
|
453
|
+
|
|
454
|
+
# The name of the Azure Key Vault master key that you manage
|
|
455
|
+
key_name:,
|
|
456
|
+
|
|
457
|
+
# A friendly name to identify this config
|
|
458
|
+
name:,
|
|
459
|
+
|
|
460
|
+
# Your Azure tenant UUID
|
|
461
|
+
tenant_id:,
|
|
462
|
+
|
|
463
|
+
# The URI of the Azure vault containing the master key you manage
|
|
464
|
+
vault_uri:,
|
|
465
|
+
|
|
466
|
+
# An exact Azure Key Vault key version. Required for PSP decryption; not accepted
|
|
467
|
+
# for EKM.
|
|
468
|
+
key_version: nil,
|
|
469
|
+
|
|
470
|
+
purpose: nil,
|
|
471
|
+
|
|
472
|
+
type: :azure
|
|
473
|
+
)
|
|
474
|
+
end
|
|
475
|
+
|
|
476
|
+
sig do
|
|
477
|
+
override.returns(
|
|
478
|
+
{
|
|
479
|
+
key_name: String,
|
|
480
|
+
name: String,
|
|
481
|
+
tenant_id: String,
|
|
482
|
+
type: Symbol,
|
|
483
|
+
vault_uri: String,
|
|
484
|
+
key_version: String,
|
|
485
|
+
purpose: OpenAI::Admin::Organization::ExternalKeyCreateParams::Body::Azure::Purpose::OrSymbol
|
|
486
|
+
}
|
|
487
|
+
)
|
|
488
|
+
end
|
|
489
|
+
def to_hash
|
|
490
|
+
end
|
|
491
|
+
|
|
492
|
+
module Purpose
|
|
493
|
+
extend OpenAI::Internal::Type::Enum
|
|
494
|
+
|
|
495
|
+
TaggedSymbol = T.type_alias {
|
|
496
|
+
T.all(Symbol, OpenAI::Admin::Organization::ExternalKeyCreateParams::Body::Azure::Purpose)
|
|
497
|
+
}
|
|
498
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
499
|
+
|
|
500
|
+
EKM = T.let(
|
|
501
|
+
:ekm,
|
|
502
|
+
OpenAI::Admin::Organization::ExternalKeyCreateParams::Body::Azure::Purpose::TaggedSymbol
|
|
503
|
+
)
|
|
504
|
+
PSP_DECRYPTION = T.let(
|
|
505
|
+
:psp_decryption,
|
|
506
|
+
OpenAI::Admin::Organization::ExternalKeyCreateParams::Body::Azure::Purpose::TaggedSymbol
|
|
507
|
+
)
|
|
508
|
+
|
|
509
|
+
sig {
|
|
510
|
+
override.returns(
|
|
511
|
+
T::Array[OpenAI::Admin::Organization::ExternalKeyCreateParams::Body::Azure::Purpose::TaggedSymbol]
|
|
512
|
+
)
|
|
513
|
+
}
|
|
514
|
+
def self.values
|
|
515
|
+
end
|
|
516
|
+
end
|
|
517
|
+
end
|
|
518
|
+
|
|
519
|
+
sig { override.returns(T::Array[OpenAI::Admin::Organization::ExternalKeyCreateParams::Body::Variants]) }
|
|
520
|
+
def self.variants
|
|
521
|
+
end
|
|
522
|
+
|
|
523
|
+
end
|
|
524
|
+
|
|
525
|
+
end
|
|
526
|
+
|
|
527
|
+
end
|
|
528
|
+
|
|
529
|
+
end
|
|
530
|
+
|
|
531
|
+
end
|
|
532
|
+
end
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module OpenAI
|
|
4
|
+
module Models
|
|
5
|
+
|
|
6
|
+
module Admin
|
|
7
|
+
|
|
8
|
+
module Organization
|
|
9
|
+
|
|
10
|
+
class ExternalKeyDeleteParams < OpenAI::Internal::Type::BaseModel
|
|
11
|
+
|
|
12
|
+
extend OpenAI::Internal::Type::RequestParameters::Converter
|
|
13
|
+
include OpenAI::Internal::Type::RequestParameters
|
|
14
|
+
|
|
15
|
+
OrHash = T.type_alias do
|
|
16
|
+
T.any(
|
|
17
|
+
OpenAI::Admin::Organization::ExternalKeyDeleteParams,
|
|
18
|
+
OpenAI::Internal::AnyHash
|
|
19
|
+
)
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
sig { returns(String) }
|
|
23
|
+
attr_accessor :external_key_id
|
|
24
|
+
|
|
25
|
+
sig do
|
|
26
|
+
params(
|
|
27
|
+
|
|
28
|
+
external_key_id: String,
|
|
29
|
+
|
|
30
|
+
request_options: OpenAI::RequestOptions::OrHash
|
|
31
|
+
)
|
|
32
|
+
.returns(T.attached_class)
|
|
33
|
+
end
|
|
34
|
+
def self.new(
|
|
35
|
+
|
|
36
|
+
external_key_id:,
|
|
37
|
+
|
|
38
|
+
request_options: {}
|
|
39
|
+
)
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
sig do
|
|
43
|
+
override.returns(
|
|
44
|
+
{external_key_id: String, request_options: OpenAI::RequestOptions}
|
|
45
|
+
)
|
|
46
|
+
end
|
|
47
|
+
def to_hash
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
end
|
|
53
|
+
|
|
54
|
+
end
|
|
55
|
+
|
|
56
|
+
end
|
|
57
|
+
end
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module OpenAI
|
|
4
|
+
module Models
|
|
5
|
+
|
|
6
|
+
module Admin
|
|
7
|
+
|
|
8
|
+
module Organization
|
|
9
|
+
|
|
10
|
+
class ExternalKeyListParams < OpenAI::Internal::Type::BaseModel
|
|
11
|
+
|
|
12
|
+
extend OpenAI::Internal::Type::RequestParameters::Converter
|
|
13
|
+
include OpenAI::Internal::Type::RequestParameters
|
|
14
|
+
|
|
15
|
+
OrHash = T.type_alias do
|
|
16
|
+
T.any(
|
|
17
|
+
OpenAI::Admin::Organization::ExternalKeyListParams,
|
|
18
|
+
OpenAI::Internal::AnyHash
|
|
19
|
+
)
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
sig { returns(T.nilable(String)) }
|
|
23
|
+
attr_accessor :after
|
|
24
|
+
|
|
25
|
+
sig { returns(T.nilable(Integer)) }
|
|
26
|
+
attr_reader :limit
|
|
27
|
+
|
|
28
|
+
sig { params(limit: Integer).void }
|
|
29
|
+
attr_writer :limit
|
|
30
|
+
|
|
31
|
+
sig { returns(T.nilable(OpenAI::Admin::Organization::ExternalKeyListParams::Order::OrSymbol)) }
|
|
32
|
+
attr_reader :order
|
|
33
|
+
|
|
34
|
+
sig { params(order: OpenAI::Admin::Organization::ExternalKeyListParams::Order::OrSymbol).void }
|
|
35
|
+
attr_writer :order
|
|
36
|
+
|
|
37
|
+
# Filter by key purpose. When omitted, returns keys of all purposes.
|
|
38
|
+
sig { returns(T.nilable(OpenAI::Admin::Organization::ExternalKeyListParams::Purpose::OrSymbol)) }
|
|
39
|
+
attr_reader :purpose
|
|
40
|
+
|
|
41
|
+
sig { params(purpose: OpenAI::Admin::Organization::ExternalKeyListParams::Purpose::OrSymbol).void }
|
|
42
|
+
attr_writer :purpose
|
|
43
|
+
|
|
44
|
+
sig do
|
|
45
|
+
params(
|
|
46
|
+
|
|
47
|
+
after: T.nilable(String),
|
|
48
|
+
|
|
49
|
+
limit: Integer,
|
|
50
|
+
|
|
51
|
+
order: OpenAI::Admin::Organization::ExternalKeyListParams::Order::OrSymbol,
|
|
52
|
+
|
|
53
|
+
purpose: OpenAI::Admin::Organization::ExternalKeyListParams::Purpose::OrSymbol,
|
|
54
|
+
|
|
55
|
+
request_options: OpenAI::RequestOptions::OrHash
|
|
56
|
+
)
|
|
57
|
+
.returns(T.attached_class)
|
|
58
|
+
end
|
|
59
|
+
def self.new(
|
|
60
|
+
|
|
61
|
+
after: nil,
|
|
62
|
+
|
|
63
|
+
limit: nil,
|
|
64
|
+
|
|
65
|
+
order: nil,
|
|
66
|
+
|
|
67
|
+
# Filter by key purpose. When omitted, returns keys of all purposes.
|
|
68
|
+
purpose: nil,
|
|
69
|
+
|
|
70
|
+
request_options: {}
|
|
71
|
+
)
|
|
72
|
+
end
|
|
73
|
+
|
|
74
|
+
sig do
|
|
75
|
+
override.returns(
|
|
76
|
+
{
|
|
77
|
+
after: T.nilable(String),
|
|
78
|
+
limit: Integer,
|
|
79
|
+
order: OpenAI::Admin::Organization::ExternalKeyListParams::Order::OrSymbol,
|
|
80
|
+
purpose: OpenAI::Admin::Organization::ExternalKeyListParams::Purpose::OrSymbol,
|
|
81
|
+
request_options: OpenAI::RequestOptions
|
|
82
|
+
}
|
|
83
|
+
)
|
|
84
|
+
end
|
|
85
|
+
def to_hash
|
|
86
|
+
end
|
|
87
|
+
|
|
88
|
+
module Order
|
|
89
|
+
extend OpenAI::Internal::Type::Enum
|
|
90
|
+
|
|
91
|
+
TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Admin::Organization::ExternalKeyListParams::Order) }
|
|
92
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
93
|
+
|
|
94
|
+
ASC = T.let(:asc, OpenAI::Admin::Organization::ExternalKeyListParams::Order::TaggedSymbol)
|
|
95
|
+
DESC = T.let(:desc, OpenAI::Admin::Organization::ExternalKeyListParams::Order::TaggedSymbol)
|
|
96
|
+
|
|
97
|
+
sig { override.returns(T::Array[OpenAI::Admin::Organization::ExternalKeyListParams::Order::TaggedSymbol]) }
|
|
98
|
+
def self.values
|
|
99
|
+
end
|
|
100
|
+
end
|
|
101
|
+
|
|
102
|
+
# Filter by key purpose. When omitted, returns keys of all purposes.
|
|
103
|
+
module Purpose
|
|
104
|
+
extend OpenAI::Internal::Type::Enum
|
|
105
|
+
|
|
106
|
+
TaggedSymbol = T.type_alias { T.all(Symbol, OpenAI::Admin::Organization::ExternalKeyListParams::Purpose) }
|
|
107
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
108
|
+
|
|
109
|
+
EKM = T.let(:ekm, OpenAI::Admin::Organization::ExternalKeyListParams::Purpose::TaggedSymbol)
|
|
110
|
+
PSP_DECRYPTION = T.let(
|
|
111
|
+
:psp_decryption,
|
|
112
|
+
OpenAI::Admin::Organization::ExternalKeyListParams::Purpose::TaggedSymbol
|
|
113
|
+
)
|
|
114
|
+
|
|
115
|
+
sig {
|
|
116
|
+
override.returns(T::Array[OpenAI::Admin::Organization::ExternalKeyListParams::Purpose::TaggedSymbol])
|
|
117
|
+
}
|
|
118
|
+
def self.values
|
|
119
|
+
end
|
|
120
|
+
end
|
|
121
|
+
|
|
122
|
+
end
|
|
123
|
+
|
|
124
|
+
end
|
|
125
|
+
|
|
126
|
+
end
|
|
127
|
+
|
|
128
|
+
end
|
|
129
|
+
end
|