openai 0.64.0 → 0.65.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 (63) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +8 -0
  3. data/README.md +1 -1
  4. data/lib/openai/models/admin/organization/audit_log_list_params.rb +6 -0
  5. data/lib/openai/models/admin/organization/audit_log_list_response.rb +231 -1
  6. data/lib/openai/models/chat/completion_create_params.rb +16 -0
  7. data/lib/openai/models/conversations/conversation_create_params.rb +2 -2
  8. data/lib/openai/models/conversations/conversation_item.rb +57 -1
  9. data/lib/openai/models/conversations/conversation_item_list.rb +2 -2
  10. data/lib/openai/models/conversations/item_create_params.rb +2 -2
  11. data/lib/openai/models/responses/compacted_response.rb +2 -2
  12. data/lib/openai/models/responses/input_token_count_params.rb +41 -4
  13. data/lib/openai/models/responses/response.rb +21 -5
  14. data/lib/openai/models/responses/response_compact_params.rb +3 -3
  15. data/lib/openai/models/responses/response_create_params.rb +19 -3
  16. data/lib/openai/models/responses/response_function_web_search.rb +11 -9
  17. data/lib/openai/models/responses/response_input_item.rb +38 -1
  18. data/lib/openai/models/responses/response_item.rb +57 -1
  19. data/lib/openai/models/responses/response_item_list.rb +2 -2
  20. data/lib/openai/models/responses/response_output_item.rb +57 -1
  21. data/lib/openai/models/responses/response_output_item_added_event.rb +2 -2
  22. data/lib/openai/models/responses/response_output_item_done_event.rb +2 -2
  23. data/lib/openai/models/responses/responses_client_event.rb +19 -3
  24. data/lib/openai/resources/conversations/items.rb +3 -3
  25. data/lib/openai/resources/conversations.rb +1 -1
  26. data/lib/openai/resources/responses/input_items.rb +1 -1
  27. data/lib/openai/resources/responses/input_tokens.rb +4 -2
  28. data/lib/openai/resources/responses.rb +3 -3
  29. data/lib/openai/version.rb +1 -1
  30. data/rbi/openai/models/admin/organization/audit_log_list_params.rbi +30 -0
  31. data/rbi/openai/models/admin/organization/audit_log_list_response.rbi +489 -3
  32. data/rbi/openai/models/chat/completion_create_params.rbi +24 -0
  33. data/rbi/openai/models/conversations/conversation_create_params.rbi +3 -0
  34. data/rbi/openai/models/conversations/conversation_item.rbi +150 -0
  35. data/rbi/openai/models/conversations/conversation_item_list.rbi +1 -0
  36. data/rbi/openai/models/conversations/item_create_params.rbi +3 -0
  37. data/rbi/openai/models/responses/compacted_response.rbi +1 -0
  38. data/rbi/openai/models/responses/input_token_count_params.rbi +85 -0
  39. data/rbi/openai/models/responses/response.rbi +25 -0
  40. data/rbi/openai/models/responses/response_create_params.rbi +24 -0
  41. data/rbi/openai/models/responses/response_function_web_search.rbi +11 -8
  42. data/rbi/openai/models/responses/response_input_item.rbi +120 -0
  43. data/rbi/openai/models/responses/response_item.rbi +150 -0
  44. data/rbi/openai/models/responses/response_item_list.rbi +1 -0
  45. data/rbi/openai/models/responses/response_output_item.rbi +150 -0
  46. data/rbi/openai/models/responses/response_output_item_added_event.rbi +1 -0
  47. data/rbi/openai/models/responses/response_output_item_done_event.rbi +1 -0
  48. data/rbi/openai/models/responses/responses_client_event.rbi +24 -0
  49. data/rbi/openai/resources/chat/completions.rbi +16 -0
  50. data/rbi/openai/resources/conversations/items.rbi +1 -0
  51. data/rbi/openai/resources/conversations.rbi +1 -0
  52. data/rbi/openai/resources/responses/input_tokens.rbi +9 -0
  53. data/rbi/openai/resources/responses.rbi +16 -0
  54. data/sig/openai/models/admin/organization/audit_log_list_params.rbs +12 -0
  55. data/sig/openai/models/admin/organization/audit_log_list_response.rbs +216 -3
  56. data/sig/openai/models/conversations/conversation_item.rbs +58 -0
  57. data/sig/openai/models/responses/input_token_count_params.rbs +20 -0
  58. data/sig/openai/models/responses/response_function_web_search.rbs +7 -5
  59. data/sig/openai/models/responses/response_input_item.rbs +33 -0
  60. data/sig/openai/models/responses/response_item.rbs +58 -0
  61. data/sig/openai/models/responses/response_output_item.rbs +58 -0
  62. data/sig/openai/resources/responses/input_tokens.rbs +1 -0
  63. metadata +2 -2
@@ -20,6 +20,7 @@ module OpenAI
20
20
  OpenAI::Responses::ResponseFunctionToolCallOutputItem,
21
21
  OpenAI::Responses::ResponseToolSearchCall,
22
22
  OpenAI::Responses::ResponseToolSearchOutputItem,
23
+ OpenAI::Responses::ResponseItem::AdditionalTools,
23
24
  OpenAI::Responses::ResponseReasoningItem,
24
25
  OpenAI::Responses::ResponseCompactionItem,
25
26
  OpenAI::Responses::ResponseItem::ImageGenerationCall,
@@ -39,6 +40,155 @@ module OpenAI
39
40
  )
40
41
  end
41
42
 
43
+ class AdditionalTools < OpenAI::Internal::Type::BaseModel
44
+ OrHash =
45
+ T.type_alias do
46
+ T.any(
47
+ OpenAI::Responses::ResponseItem::AdditionalTools,
48
+ OpenAI::Internal::AnyHash
49
+ )
50
+ end
51
+
52
+ # The unique ID of the additional tools item.
53
+ sig { returns(String) }
54
+ attr_accessor :id
55
+
56
+ # The role that provided the additional tools.
57
+ sig do
58
+ returns(
59
+ OpenAI::Responses::ResponseItem::AdditionalTools::Role::TaggedSymbol
60
+ )
61
+ end
62
+ attr_accessor :role
63
+
64
+ # The additional tool definitions made available at this item.
65
+ sig { returns(T::Array[OpenAI::Responses::Tool::Variants]) }
66
+ attr_accessor :tools
67
+
68
+ # The type of the item. Always `additional_tools`.
69
+ sig { returns(Symbol) }
70
+ attr_accessor :type
71
+
72
+ sig do
73
+ params(
74
+ id: String,
75
+ role:
76
+ OpenAI::Responses::ResponseItem::AdditionalTools::Role::OrSymbol,
77
+ tools:
78
+ T::Array[
79
+ T.any(
80
+ OpenAI::Responses::FunctionTool::OrHash,
81
+ OpenAI::Responses::FileSearchTool::OrHash,
82
+ OpenAI::Responses::ComputerTool::OrHash,
83
+ OpenAI::Responses::ComputerUsePreviewTool::OrHash,
84
+ OpenAI::Responses::Tool::Mcp::OrHash,
85
+ OpenAI::Responses::Tool::CodeInterpreter::OrHash,
86
+ OpenAI::Responses::Tool::ImageGeneration::OrHash,
87
+ OpenAI::Responses::Tool::LocalShell::OrHash,
88
+ OpenAI::Responses::FunctionShellTool::OrHash,
89
+ OpenAI::Responses::CustomTool::OrHash,
90
+ OpenAI::Responses::NamespaceTool::OrHash,
91
+ OpenAI::Responses::ToolSearchTool::OrHash,
92
+ OpenAI::Responses::ApplyPatchTool::OrHash,
93
+ OpenAI::Responses::WebSearchTool::OrHash,
94
+ OpenAI::Responses::WebSearchPreviewTool::OrHash
95
+ )
96
+ ],
97
+ type: Symbol
98
+ ).returns(T.attached_class)
99
+ end
100
+ def self.new(
101
+ # The unique ID of the additional tools item.
102
+ id:,
103
+ # The role that provided the additional tools.
104
+ role:,
105
+ # The additional tool definitions made available at this item.
106
+ tools:,
107
+ # The type of the item. Always `additional_tools`.
108
+ type: :additional_tools
109
+ )
110
+ end
111
+
112
+ sig do
113
+ override.returns(
114
+ {
115
+ id: String,
116
+ role:
117
+ OpenAI::Responses::ResponseItem::AdditionalTools::Role::TaggedSymbol,
118
+ tools: T::Array[OpenAI::Responses::Tool::Variants],
119
+ type: Symbol
120
+ }
121
+ )
122
+ end
123
+ def to_hash
124
+ end
125
+
126
+ # The role that provided the additional tools.
127
+ module Role
128
+ extend OpenAI::Internal::Type::Enum
129
+
130
+ TaggedSymbol =
131
+ T.type_alias do
132
+ T.all(
133
+ Symbol,
134
+ OpenAI::Responses::ResponseItem::AdditionalTools::Role
135
+ )
136
+ end
137
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
138
+
139
+ UNKNOWN =
140
+ T.let(
141
+ :unknown,
142
+ OpenAI::Responses::ResponseItem::AdditionalTools::Role::TaggedSymbol
143
+ )
144
+ USER =
145
+ T.let(
146
+ :user,
147
+ OpenAI::Responses::ResponseItem::AdditionalTools::Role::TaggedSymbol
148
+ )
149
+ ASSISTANT =
150
+ T.let(
151
+ :assistant,
152
+ OpenAI::Responses::ResponseItem::AdditionalTools::Role::TaggedSymbol
153
+ )
154
+ SYSTEM =
155
+ T.let(
156
+ :system,
157
+ OpenAI::Responses::ResponseItem::AdditionalTools::Role::TaggedSymbol
158
+ )
159
+ CRITIC =
160
+ T.let(
161
+ :critic,
162
+ OpenAI::Responses::ResponseItem::AdditionalTools::Role::TaggedSymbol
163
+ )
164
+ DISCRIMINATOR =
165
+ T.let(
166
+ :discriminator,
167
+ OpenAI::Responses::ResponseItem::AdditionalTools::Role::TaggedSymbol
168
+ )
169
+ DEVELOPER =
170
+ T.let(
171
+ :developer,
172
+ OpenAI::Responses::ResponseItem::AdditionalTools::Role::TaggedSymbol
173
+ )
174
+ TOOL =
175
+ T.let(
176
+ :tool,
177
+ OpenAI::Responses::ResponseItem::AdditionalTools::Role::TaggedSymbol
178
+ )
179
+
180
+ sig do
181
+ override.returns(
182
+ T::Array[
183
+ OpenAI::Responses::ResponseItem::AdditionalTools::Role::TaggedSymbol
184
+ ]
185
+ )
186
+ end
187
+ def self.values
188
+ end
189
+ end
190
+ end
191
+
42
192
  class ImageGenerationCall < OpenAI::Internal::Type::BaseModel
43
193
  OrHash =
44
194
  T.type_alias do
@@ -50,6 +50,7 @@ module OpenAI
50
50
  OpenAI::Responses::ResponseFunctionToolCallOutputItem::OrHash,
51
51
  OpenAI::Responses::ResponseToolSearchCall::OrHash,
52
52
  OpenAI::Responses::ResponseToolSearchOutputItem::OrHash,
53
+ OpenAI::Responses::ResponseItem::AdditionalTools::OrHash,
53
54
  OpenAI::Responses::ResponseReasoningItem::OrHash,
54
55
  OpenAI::Responses::ResponseCompactionItem::OrHash,
55
56
  OpenAI::Responses::ResponseItem::ImageGenerationCall::OrHash,
@@ -20,6 +20,7 @@ module OpenAI
20
20
  OpenAI::Responses::ResponseReasoningItem,
21
21
  OpenAI::Responses::ResponseToolSearchCall,
22
22
  OpenAI::Responses::ResponseToolSearchOutputItem,
23
+ OpenAI::Responses::ResponseOutputItem::AdditionalTools,
23
24
  OpenAI::Responses::ResponseCompactionItem,
24
25
  OpenAI::Responses::ResponseOutputItem::ImageGenerationCall,
25
26
  OpenAI::Responses::ResponseCodeInterpreterToolCall,
@@ -38,6 +39,155 @@ module OpenAI
38
39
  )
39
40
  end
40
41
 
42
+ class AdditionalTools < OpenAI::Internal::Type::BaseModel
43
+ OrHash =
44
+ T.type_alias do
45
+ T.any(
46
+ OpenAI::Responses::ResponseOutputItem::AdditionalTools,
47
+ OpenAI::Internal::AnyHash
48
+ )
49
+ end
50
+
51
+ # The unique ID of the additional tools item.
52
+ sig { returns(String) }
53
+ attr_accessor :id
54
+
55
+ # The role that provided the additional tools.
56
+ sig do
57
+ returns(
58
+ OpenAI::Responses::ResponseOutputItem::AdditionalTools::Role::TaggedSymbol
59
+ )
60
+ end
61
+ attr_accessor :role
62
+
63
+ # The additional tool definitions made available at this item.
64
+ sig { returns(T::Array[OpenAI::Responses::Tool::Variants]) }
65
+ attr_accessor :tools
66
+
67
+ # The type of the item. Always `additional_tools`.
68
+ sig { returns(Symbol) }
69
+ attr_accessor :type
70
+
71
+ sig do
72
+ params(
73
+ id: String,
74
+ role:
75
+ OpenAI::Responses::ResponseOutputItem::AdditionalTools::Role::OrSymbol,
76
+ tools:
77
+ T::Array[
78
+ T.any(
79
+ OpenAI::Responses::FunctionTool::OrHash,
80
+ OpenAI::Responses::FileSearchTool::OrHash,
81
+ OpenAI::Responses::ComputerTool::OrHash,
82
+ OpenAI::Responses::ComputerUsePreviewTool::OrHash,
83
+ OpenAI::Responses::Tool::Mcp::OrHash,
84
+ OpenAI::Responses::Tool::CodeInterpreter::OrHash,
85
+ OpenAI::Responses::Tool::ImageGeneration::OrHash,
86
+ OpenAI::Responses::Tool::LocalShell::OrHash,
87
+ OpenAI::Responses::FunctionShellTool::OrHash,
88
+ OpenAI::Responses::CustomTool::OrHash,
89
+ OpenAI::Responses::NamespaceTool::OrHash,
90
+ OpenAI::Responses::ToolSearchTool::OrHash,
91
+ OpenAI::Responses::ApplyPatchTool::OrHash,
92
+ OpenAI::Responses::WebSearchTool::OrHash,
93
+ OpenAI::Responses::WebSearchPreviewTool::OrHash
94
+ )
95
+ ],
96
+ type: Symbol
97
+ ).returns(T.attached_class)
98
+ end
99
+ def self.new(
100
+ # The unique ID of the additional tools item.
101
+ id:,
102
+ # The role that provided the additional tools.
103
+ role:,
104
+ # The additional tool definitions made available at this item.
105
+ tools:,
106
+ # The type of the item. Always `additional_tools`.
107
+ type: :additional_tools
108
+ )
109
+ end
110
+
111
+ sig do
112
+ override.returns(
113
+ {
114
+ id: String,
115
+ role:
116
+ OpenAI::Responses::ResponseOutputItem::AdditionalTools::Role::TaggedSymbol,
117
+ tools: T::Array[OpenAI::Responses::Tool::Variants],
118
+ type: Symbol
119
+ }
120
+ )
121
+ end
122
+ def to_hash
123
+ end
124
+
125
+ # The role that provided the additional tools.
126
+ module Role
127
+ extend OpenAI::Internal::Type::Enum
128
+
129
+ TaggedSymbol =
130
+ T.type_alias do
131
+ T.all(
132
+ Symbol,
133
+ OpenAI::Responses::ResponseOutputItem::AdditionalTools::Role
134
+ )
135
+ end
136
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
137
+
138
+ UNKNOWN =
139
+ T.let(
140
+ :unknown,
141
+ OpenAI::Responses::ResponseOutputItem::AdditionalTools::Role::TaggedSymbol
142
+ )
143
+ USER =
144
+ T.let(
145
+ :user,
146
+ OpenAI::Responses::ResponseOutputItem::AdditionalTools::Role::TaggedSymbol
147
+ )
148
+ ASSISTANT =
149
+ T.let(
150
+ :assistant,
151
+ OpenAI::Responses::ResponseOutputItem::AdditionalTools::Role::TaggedSymbol
152
+ )
153
+ SYSTEM =
154
+ T.let(
155
+ :system,
156
+ OpenAI::Responses::ResponseOutputItem::AdditionalTools::Role::TaggedSymbol
157
+ )
158
+ CRITIC =
159
+ T.let(
160
+ :critic,
161
+ OpenAI::Responses::ResponseOutputItem::AdditionalTools::Role::TaggedSymbol
162
+ )
163
+ DISCRIMINATOR =
164
+ T.let(
165
+ :discriminator,
166
+ OpenAI::Responses::ResponseOutputItem::AdditionalTools::Role::TaggedSymbol
167
+ )
168
+ DEVELOPER =
169
+ T.let(
170
+ :developer,
171
+ OpenAI::Responses::ResponseOutputItem::AdditionalTools::Role::TaggedSymbol
172
+ )
173
+ TOOL =
174
+ T.let(
175
+ :tool,
176
+ OpenAI::Responses::ResponseOutputItem::AdditionalTools::Role::TaggedSymbol
177
+ )
178
+
179
+ sig do
180
+ override.returns(
181
+ T::Array[
182
+ OpenAI::Responses::ResponseOutputItem::AdditionalTools::Role::TaggedSymbol
183
+ ]
184
+ )
185
+ end
186
+ def self.values
187
+ end
188
+ end
189
+ end
190
+
41
191
  class ImageGenerationCall < OpenAI::Internal::Type::BaseModel
42
192
  OrHash =
43
193
  T.type_alias do
@@ -43,6 +43,7 @@ module OpenAI
43
43
  OpenAI::Responses::ResponseReasoningItem::OrHash,
44
44
  OpenAI::Responses::ResponseToolSearchCall::OrHash,
45
45
  OpenAI::Responses::ResponseToolSearchOutputItem::OrHash,
46
+ OpenAI::Responses::ResponseOutputItem::AdditionalTools::OrHash,
46
47
  OpenAI::Responses::ResponseCompactionItem::OrHash,
47
48
  OpenAI::Responses::ResponseOutputItem::ImageGenerationCall::OrHash,
48
49
  OpenAI::Responses::ResponseCodeInterpreterToolCall::OrHash,
@@ -43,6 +43,7 @@ module OpenAI
43
43
  OpenAI::Responses::ResponseReasoningItem::OrHash,
44
44
  OpenAI::Responses::ResponseToolSearchCall::OrHash,
45
45
  OpenAI::Responses::ResponseToolSearchOutputItem::OrHash,
46
+ OpenAI::Responses::ResponseOutputItem::AdditionalTools::OrHash,
46
47
  OpenAI::Responses::ResponseCompactionItem::OrHash,
47
48
  OpenAI::Responses::ResponseOutputItem::ImageGenerationCall::OrHash,
48
49
  OpenAI::Responses::ResponseCodeInterpreterToolCall::OrHash,
@@ -190,6 +190,14 @@ module OpenAI
190
190
  # prompt caching, which keeps cached prefixes active for longer, up to a maximum
191
191
  # of 24 hours.
192
192
  # [Learn more](https://platform.openai.com/docs/guides/prompt-caching#prompt-cache-retention).
193
+ # For `gpt-5.5`, `gpt-5.5-pro`, and future models, only `24h` is supported.
194
+ #
195
+ # For older models that support both `in_memory` and `24h`, the default depends on
196
+ # your organization's data retention policy:
197
+ #
198
+ # - Organizations without ZDR enabled default to `24h`.
199
+ # - Organizations with ZDR enabled default to `in_memory` when
200
+ # `prompt_cache_retention` is not specified.
193
201
  sig do
194
202
  returns(
195
203
  T.nilable(
@@ -626,6 +634,14 @@ module OpenAI
626
634
  # prompt caching, which keeps cached prefixes active for longer, up to a maximum
627
635
  # of 24 hours.
628
636
  # [Learn more](https://platform.openai.com/docs/guides/prompt-caching#prompt-cache-retention).
637
+ # For `gpt-5.5`, `gpt-5.5-pro`, and future models, only `24h` is supported.
638
+ #
639
+ # For older models that support both `in_memory` and `24h`, the default depends on
640
+ # your organization's data retention policy:
641
+ #
642
+ # - Organizations without ZDR enabled default to `24h`.
643
+ # - Organizations with ZDR enabled default to `in_memory` when
644
+ # `prompt_cache_retention` is not specified.
629
645
  prompt_cache_retention: nil,
630
646
  # **gpt-5 and o-series models only**
631
647
  #
@@ -922,6 +938,14 @@ module OpenAI
922
938
  # prompt caching, which keeps cached prefixes active for longer, up to a maximum
923
939
  # of 24 hours.
924
940
  # [Learn more](https://platform.openai.com/docs/guides/prompt-caching#prompt-cache-retention).
941
+ # For `gpt-5.5`, `gpt-5.5-pro`, and future models, only `24h` is supported.
942
+ #
943
+ # For older models that support both `in_memory` and `24h`, the default depends on
944
+ # your organization's data retention policy:
945
+ #
946
+ # - Organizations without ZDR enabled default to `24h`.
947
+ # - Organizations with ZDR enabled default to `in_memory` when
948
+ # `prompt_cache_retention` is not specified.
925
949
  module PromptCacheRetention
926
950
  extend OpenAI::Internal::Type::Enum
927
951
 
@@ -232,6 +232,14 @@ module OpenAI
232
232
  # prompt caching, which keeps cached prefixes active for longer, up to a maximum
233
233
  # of 24 hours.
234
234
  # [Learn more](https://platform.openai.com/docs/guides/prompt-caching#prompt-cache-retention).
235
+ # For `gpt-5.5`, `gpt-5.5-pro`, and future models, only `24h` is supported.
236
+ #
237
+ # For older models that support both `in_memory` and `24h`, the default depends on
238
+ # your organization's data retention policy:
239
+ #
240
+ # - Organizations without ZDR enabled default to `24h`.
241
+ # - Organizations with ZDR enabled default to `in_memory` when
242
+ # `prompt_cache_retention` is not specified.
235
243
  prompt_cache_retention: nil,
236
244
  # Constrains effort on reasoning for
237
245
  # [reasoning models](https://platform.openai.com/docs/guides/reasoning). Currently
@@ -571,6 +579,14 @@ module OpenAI
571
579
  # prompt caching, which keeps cached prefixes active for longer, up to a maximum
572
580
  # of 24 hours.
573
581
  # [Learn more](https://platform.openai.com/docs/guides/prompt-caching#prompt-cache-retention).
582
+ # For `gpt-5.5`, `gpt-5.5-pro`, and future models, only `24h` is supported.
583
+ #
584
+ # For older models that support both `in_memory` and `24h`, the default depends on
585
+ # your organization's data retention policy:
586
+ #
587
+ # - Organizations without ZDR enabled default to `24h`.
588
+ # - Organizations with ZDR enabled default to `in_memory` when
589
+ # `prompt_cache_retention` is not specified.
574
590
  prompt_cache_retention: nil,
575
591
  # Constrains effort on reasoning for
576
592
  # [reasoning models](https://platform.openai.com/docs/guides/reasoning). Currently
@@ -23,6 +23,7 @@ module OpenAI
23
23
  OpenAI::Responses::ResponseInputItem::FunctionCallOutput::OrHash,
24
24
  OpenAI::Responses::ResponseInputItem::ToolSearchCall::OrHash,
25
25
  OpenAI::Responses::ResponseToolSearchOutputItemParam::OrHash,
26
+ OpenAI::Responses::ResponseInputItem::AdditionalTools::OrHash,
26
27
  OpenAI::Responses::ResponseReasoningItem::OrHash,
27
28
  OpenAI::Responses::ResponseCompactionItemParam::OrHash,
28
29
  OpenAI::Responses::ResponseInputItem::ImageGenerationCall::OrHash,
@@ -26,6 +26,7 @@ module OpenAI
26
26
  OpenAI::Responses::ResponseInputItem::FunctionCallOutput::OrHash,
27
27
  OpenAI::Responses::ResponseInputItem::ToolSearchCall::OrHash,
28
28
  OpenAI::Responses::ResponseToolSearchOutputItemParam::OrHash,
29
+ OpenAI::Responses::ResponseInputItem::AdditionalTools::OrHash,
29
30
  OpenAI::Responses::ResponseReasoningItem::OrHash,
30
31
  OpenAI::Responses::ResponseCompactionItemParam::OrHash,
31
32
  OpenAI::Responses::ResponseInputItem::ImageGenerationCall::OrHash,
@@ -24,6 +24,11 @@ module OpenAI
24
24
  instructions: T.nilable(String),
25
25
  model: T.nilable(String),
26
26
  parallel_tool_calls: T.nilable(T::Boolean),
27
+ personality:
28
+ T.any(
29
+ String,
30
+ OpenAI::Responses::InputTokenCountParams::Personality::OrSymbol
31
+ ),
27
32
  previous_response_id: T.nilable(String),
28
33
  reasoning: T.nilable(OpenAI::Reasoning::OrHash),
29
34
  text:
@@ -89,6 +94,10 @@ module OpenAI
89
94
  model: nil,
90
95
  # Whether to allow the model to run tool calls in parallel.
91
96
  parallel_tool_calls: nil,
97
+ # A model-owned style preset to apply to this request. Omit this parameter to use
98
+ # the model's default style. Supported values may expand over time. Values must be
99
+ # at most 64 characters.
100
+ personality: nil,
92
101
  # The unique ID of the previous response to the model. Use this to create
93
102
  # multi-turn conversations. Learn more about
94
103
  # [conversation state](https://platform.openai.com/docs/guides/conversation-state).
@@ -206,6 +206,14 @@ module OpenAI
206
206
  # prompt caching, which keeps cached prefixes active for longer, up to a maximum
207
207
  # of 24 hours.
208
208
  # [Learn more](https://platform.openai.com/docs/guides/prompt-caching#prompt-cache-retention).
209
+ # For `gpt-5.5`, `gpt-5.5-pro`, and future models, only `24h` is supported.
210
+ #
211
+ # For older models that support both `in_memory` and `24h`, the default depends on
212
+ # your organization's data retention policy:
213
+ #
214
+ # - Organizations without ZDR enabled default to `24h`.
215
+ # - Organizations with ZDR enabled default to `in_memory` when
216
+ # `prompt_cache_retention` is not specified.
209
217
  prompt_cache_retention: nil,
210
218
  # **gpt-5 and o-series models only**
211
219
  #
@@ -509,6 +517,14 @@ module OpenAI
509
517
  # prompt caching, which keeps cached prefixes active for longer, up to a maximum
510
518
  # of 24 hours.
511
519
  # [Learn more](https://platform.openai.com/docs/guides/prompt-caching#prompt-cache-retention).
520
+ # For `gpt-5.5`, `gpt-5.5-pro`, and future models, only `24h` is supported.
521
+ #
522
+ # For older models that support both `in_memory` and `24h`, the default depends on
523
+ # your organization's data retention policy:
524
+ #
525
+ # - Organizations without ZDR enabled default to `24h`.
526
+ # - Organizations with ZDR enabled default to `in_memory` when
527
+ # `prompt_cache_retention` is not specified.
512
528
  prompt_cache_retention: nil,
513
529
  # **gpt-5 and o-series models only**
514
530
  #
@@ -160,6 +160,12 @@ module OpenAI
160
160
  | :"tunnel.created"
161
161
  | :"tunnel.updated"
162
162
  | :"tunnel.deleted"
163
+ | :"workload_identity_provider.created"
164
+ | :"workload_identity_provider.updated"
165
+ | :"workload_identity_provider.deleted"
166
+ | :"workload_identity_provider_mapping.created"
167
+ | :"workload_identity_provider_mapping.updated"
168
+ | :"workload_identity_provider_mapping.deleted"
163
169
  | :"role.created"
164
170
  | :"role.updated"
165
171
  | :"role.deleted"
@@ -215,6 +221,12 @@ module OpenAI
215
221
  TUNNEL_CREATED: :"tunnel.created"
216
222
  TUNNEL_UPDATED: :"tunnel.updated"
217
223
  TUNNEL_DELETED: :"tunnel.deleted"
224
+ WORKLOAD_IDENTITY_PROVIDER_CREATED: :"workload_identity_provider.created"
225
+ WORKLOAD_IDENTITY_PROVIDER_UPDATED: :"workload_identity_provider.updated"
226
+ WORKLOAD_IDENTITY_PROVIDER_DELETED: :"workload_identity_provider.deleted"
227
+ WORKLOAD_IDENTITY_PROVIDER_MAPPING_CREATED: :"workload_identity_provider_mapping.created"
228
+ WORKLOAD_IDENTITY_PROVIDER_MAPPING_UPDATED: :"workload_identity_provider_mapping.updated"
229
+ WORKLOAD_IDENTITY_PROVIDER_MAPPING_DELETED: :"workload_identity_provider_mapping.deleted"
218
230
  ROLE_CREATED: :"role.created"
219
231
  ROLE_UPDATED: :"role.updated"
220
232
  ROLE_DELETED: :"role.deleted"