openai 0.66.0 → 0.67.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 (43) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +19 -0
  3. data/README.md +1 -1
  4. data/lib/openai/internal/transport/base_client.rb +4 -1
  5. data/lib/openai/models/admin/organization/admin_api_key.rb +9 -1
  6. data/lib/openai/models/admin/organization/admin_api_key_create_params.rb +14 -1
  7. data/lib/openai/models/admin/organization/audit_log_list_params.rb +16 -2
  8. data/lib/openai/models/admin/organization/audit_log_list_response.rb +241 -1
  9. data/lib/openai/models/admin/organization/projects/spend_alert_retrieve_params.rb +32 -0
  10. data/lib/openai/models/admin/organization/spend_alert_retrieve_params.rb +24 -0
  11. data/lib/openai/models/reasoning.rb +27 -1
  12. data/lib/openai/models/responses/input_token_count_params.rb +4 -0
  13. data/lib/openai/models/responses/response_create_params.rb +4 -0
  14. data/lib/openai/models/responses/responses_client_event.rb +4 -0
  15. data/lib/openai/resources/admin/organization/admin_api_keys.rb +7 -1
  16. data/lib/openai/resources/admin/organization/audit_logs.rb +3 -1
  17. data/lib/openai/resources/admin/organization/projects/spend_alerts.rb +28 -0
  18. data/lib/openai/resources/admin/organization/spend_alerts.rb +21 -0
  19. data/lib/openai/version.rb +1 -1
  20. data/lib/openai.rb +2 -0
  21. data/rbi/openai/models/admin/organization/admin_api_key.rbi +8 -0
  22. data/rbi/openai/models/admin/organization/admin_api_key_create_params.rbi +21 -2
  23. data/rbi/openai/models/admin/organization/audit_log_list_params.rbi +31 -2
  24. data/rbi/openai/models/admin/organization/audit_log_list_response.rbi +468 -0
  25. data/rbi/openai/models/admin/organization/projects/spend_alert_retrieve_params.rbi +52 -0
  26. data/rbi/openai/models/admin/organization/spend_alert_retrieve_params.rbi +42 -0
  27. data/rbi/openai/models/reasoning.rbi +34 -0
  28. data/rbi/openai/resources/admin/organization/admin_api_keys.rbi +8 -1
  29. data/rbi/openai/resources/admin/organization/audit_logs.rbi +8 -1
  30. data/rbi/openai/resources/admin/organization/projects/spend_alerts.rbi +19 -0
  31. data/rbi/openai/resources/admin/organization/spend_alerts.rbi +14 -0
  32. data/sig/openai/models/admin/organization/admin_api_key.rbs +5 -0
  33. data/sig/openai/models/admin/organization/admin_api_key_create_params.rbs +8 -1
  34. data/sig/openai/models/admin/organization/audit_log_list_params.rbs +12 -1
  35. data/sig/openai/models/admin/organization/audit_log_list_response.rbs +228 -0
  36. data/sig/openai/models/admin/organization/projects/spend_alert_retrieve_params.rbs +34 -0
  37. data/sig/openai/models/admin/organization/spend_alert_retrieve_params.rbs +27 -0
  38. data/sig/openai/models/reasoning.rbs +17 -0
  39. data/sig/openai/resources/admin/organization/admin_api_keys.rbs +1 -0
  40. data/sig/openai/resources/admin/organization/audit_logs.rbs +1 -0
  41. data/sig/openai/resources/admin/organization/projects/spend_alerts.rbs +6 -0
  42. data/sig/openai/resources/admin/organization/spend_alerts.rbs +5 -0
  43. metadata +9 -3
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: def61cc329e11cd35421f9669cecf9c9f58e909b6e1b6874261c1488c8002eb4
4
- data.tar.gz: 1d32ed8ed65907e7345826dc5a8709c0d93d3525e1f18f807972b01ff8ce2547
3
+ metadata.gz: d8515f14709f0142aad5e774faec12a26fc11e331272d0ac766a6053a726be73
4
+ data.tar.gz: 4e8cf9a95543ec6b51b84440895bbd8ca54e3fb1255c86ef7c4fe58b4f86e397
5
5
  SHA512:
6
- metadata.gz: b2ace6e03dce77274deacb50ebc17952721f235b7c3f9ef5b477b800baa9c08479eae1e9e8866b3426889a106230f10c8c1410119a6b9d1b1d4089c9515a5354
7
- data.tar.gz: c23affbd799ec9c17f08004dedb608a56f8074ab117573bcc35b23871b4337c51ddbf2729b25639f6e319d01827822f4ca08881204791f02b2ab61fd2e5f4550
6
+ metadata.gz: bdf14268aceab421308306c1d8e05a093d686ce33b704310ea6578e75632b05668e0167c55d10013cf9095e4fb54839bcc134be5f961c1d9e9fb7efb077424e9
7
+ data.tar.gz: 7356e94789f4400d652554651a2255c7de88fb8d78c838db138eb8f88efdd056fcd0f62a9b223ba1a935142c77301e4b05214d8ca25c904b9c9f26361d3413e7
data/CHANGELOG.md CHANGED
@@ -1,5 +1,24 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.67.0 (2026-06-16)
4
+
5
+ Full Changelog: [v0.66.1...v0.67.0](https://github.com/openai/openai-ruby/compare/v0.66.1...v0.67.0)
6
+
7
+ ### Features
8
+
9
+ * **api:** admin spend_alerts ([7bc8139](https://github.com/openai/openai-ruby/commit/7bc8139c6e7d4c9624b96d81aca14db2c8fd5a8b))
10
+ * **api:** manual updates ([d7a432a](https://github.com/openai/openai-ruby/commit/d7a432a466a3e833b874240ddd8847e3e92d53c3))
11
+ * **api:** update OpenAPI spec or Stainless config ([5f3ae65](https://github.com/openai/openai-ruby/commit/5f3ae65830ce5a2af1ac9eedd91c35f5a3159b6d))
12
+
13
+
14
+ ### Bug Fixes
15
+
16
+ * **client:** send content-type header for requests with an omitted optional body ([156b511](https://github.com/openai/openai-ruby/commit/156b511934314f694c7a2cede3dcc53c268547db))
17
+
18
+ ## 0.66.1 (2026-06-04)
19
+
20
+ Full Changelog: [v0.66.0...v0.66.1](https://github.com/openai/openai-ruby/compare/v0.66.0...v0.66.1)
21
+
3
22
  ## 0.66.0 (2026-06-03)
4
23
 
5
24
  Full Changelog: [v0.65.0...v0.66.0](https://github.com/openai/openai-ruby/compare/v0.65.0...v0.66.0)
data/README.md CHANGED
@@ -15,7 +15,7 @@ To use this gem, install via Bundler by adding the following to your application
15
15
  <!-- x-release-please-start-version -->
16
16
 
17
17
  ```ruby
18
- gem "openai", "~> 0.66.0"
18
+ gem "openai", "~> 0.67.0"
19
19
  ```
20
20
 
21
21
  <!-- x-release-please-end -->
@@ -325,7 +325,10 @@ module OpenAI
325
325
  OpenAI::Internal::Util.deep_merge(*[req[:body], opts[:extra_body]].compact)
326
326
  end
327
327
 
328
- headers.delete("content-type") if body.nil?
328
+ # Generated methods always pass `req[:body]` for operations that define a
329
+ # request body, so only elide the content-type header when the operation
330
+ # has no body at all, not when an optional body param was omitted.
331
+ headers.delete("content-type") if body.nil? && !req.key?(:body)
329
332
 
330
333
  url = OpenAI::Internal::Util.join_parsed_uri(
331
334
  @base_url_components,
@@ -18,6 +18,12 @@ module OpenAI
18
18
  # @return [Integer]
19
19
  required :created_at, Integer
20
20
 
21
+ # @!attribute expires_at
22
+ # The Unix timestamp (in seconds) of when the API key expires
23
+ #
24
+ # @return [Integer, nil]
25
+ required :expires_at, Integer, nil?: true
26
+
21
27
  # @!attribute object
22
28
  # The object type, which is always `organization.admin_api_key`
23
29
  #
@@ -47,13 +53,15 @@ module OpenAI
47
53
  # @return [String, nil]
48
54
  optional :name, String, nil?: true
49
55
 
50
- # @!method initialize(id:, created_at:, owner:, redacted_value:, last_used_at: nil, name: nil, object: :"organization.admin_api_key")
56
+ # @!method initialize(id:, created_at:, expires_at:, owner:, redacted_value:, last_used_at: nil, name: nil, object: :"organization.admin_api_key")
51
57
  # Represents an individual Admin API key in an org.
52
58
  #
53
59
  # @param id [String] The identifier, which can be referenced in API endpoints
54
60
  #
55
61
  # @param created_at [Integer] The Unix timestamp (in seconds) of when the API key was created
56
62
  #
63
+ # @param expires_at [Integer, nil] The Unix timestamp (in seconds) of when the API key expires
64
+ #
57
65
  # @param owner [OpenAI::Models::Admin::Organization::AdminAPIKey::Owner]
58
66
  #
59
67
  # @param redacted_value [String] The redacted value of the API key
@@ -14,8 +14,21 @@ module OpenAI
14
14
  # @return [String]
15
15
  required :name, String
16
16
 
17
- # @!method initialize(name:, request_options: {})
17
+ # @!attribute expires_in_seconds
18
+ # The number of seconds until the API key expires. Omit this field for a key that
19
+ # does not expire.
20
+ #
21
+ # @return [Integer, nil]
22
+ optional :expires_in_seconds, Integer
23
+
24
+ # @!method initialize(name:, expires_in_seconds: nil, request_options: {})
25
+ # Some parameter documentations has been truncated, see
26
+ # {OpenAI::Models::Admin::Organization::AdminAPIKeyCreateParams} for more details.
27
+ #
18
28
  # @param name [String]
29
+ #
30
+ # @param expires_in_seconds [Integer] The number of seconds until the API key expires. Omit this field for a key that
31
+ #
19
32
  # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}]
20
33
  end
21
34
  end
@@ -70,12 +70,22 @@ module OpenAI
70
70
 
71
71
  # @!attribute resource_ids
72
72
  # Return only events performed on these targets. For example, a project ID
73
- # updated.
73
+ # updated. For ChatGPT connector role events, use the workspace connector resource
74
+ # ID shown in `details.id`, such as `<workspace_id>__<connector_id>`.
74
75
  #
75
76
  # @return [Array<String>, nil]
76
77
  optional :resource_ids, OpenAI::Internal::Type::ArrayOf[String]
77
78
 
78
- # @!method initialize(actor_emails: nil, actor_ids: nil, after: nil, before: nil, effective_at: nil, event_types: nil, limit: nil, project_ids: nil, resource_ids: nil, request_options: {})
79
+ # @!attribute tenant_only
80
+ # Return only tenant-scoped events associated with this organization. Required for
81
+ # tenant-scoped events such as `role.bound_to_resource` and
82
+ # `role.unbound_from_resource`. When `true`, all supplied event types must be
83
+ # tenant-scoped.
84
+ #
85
+ # @return [Boolean, nil]
86
+ optional :tenant_only, OpenAI::Internal::Type::Boolean
87
+
88
+ # @!method initialize(actor_emails: nil, actor_ids: nil, after: nil, before: nil, effective_at: nil, event_types: nil, limit: nil, project_ids: nil, resource_ids: nil, tenant_only: nil, request_options: {})
79
89
  # Some parameter documentations has been truncated, see
80
90
  # {OpenAI::Models::Admin::Organization::AuditLogListParams} for more details.
81
91
  #
@@ -97,6 +107,8 @@ module OpenAI
97
107
  #
98
108
  # @param resource_ids [Array<String>] Return only events performed on these targets. For example, a project ID updated
99
109
  #
110
+ # @param tenant_only [Boolean] Return only tenant-scoped events associated with this organization. Required for
111
+ #
100
112
  # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}]
101
113
 
102
114
  class EffectiveAt < OpenAI::Internal::Type::BaseModel
@@ -196,6 +208,8 @@ module OpenAI
196
208
  ROLE_DELETED = :"role.deleted"
197
209
  ROLE_ASSIGNMENT_CREATED = :"role.assignment.created"
198
210
  ROLE_ASSIGNMENT_DELETED = :"role.assignment.deleted"
211
+ ROLE_BOUND_TO_RESOURCE = :"role.bound_to_resource"
212
+ ROLE_UNBOUND_FROM_RESOURCE = :"role.unbound_from_resource"
199
213
  SCIM_ENABLED = :"scim.enabled"
200
214
  SCIM_DISABLED = :"scim.disabled"
201
215
  SERVICE_ACCOUNT_CREATED = :"service_account.created"
@@ -323,6 +323,14 @@ module OpenAI
323
323
  -> { OpenAI::Models::Admin::Organization::AuditLogListResponse::RoleAssignmentDeleted },
324
324
  api_name: :"role.assignment.deleted"
325
325
 
326
+ # @!attribute role_bound_to_resource
327
+ # The details for events with this `type`.
328
+ #
329
+ # @return [OpenAI::Models::Admin::Organization::AuditLogListResponse::RoleBoundToResource, nil]
330
+ optional :role_bound_to_resource,
331
+ -> { OpenAI::Models::Admin::Organization::AuditLogListResponse::RoleBoundToResource },
332
+ api_name: :"role.bound_to_resource"
333
+
326
334
  # @!attribute role_created
327
335
  # The details for events with this `type`.
328
336
  #
@@ -339,6 +347,14 @@ module OpenAI
339
347
  -> { OpenAI::Models::Admin::Organization::AuditLogListResponse::RoleDeleted },
340
348
  api_name: :"role.deleted"
341
349
 
350
+ # @!attribute role_unbound_from_resource
351
+ # The details for events with this `type`.
352
+ #
353
+ # @return [OpenAI::Models::Admin::Organization::AuditLogListResponse::RoleUnboundFromResource, nil]
354
+ optional :role_unbound_from_resource,
355
+ -> { OpenAI::Models::Admin::Organization::AuditLogListResponse::RoleUnboundFromResource },
356
+ api_name: :"role.unbound_from_resource"
357
+
342
358
  # @!attribute role_updated
343
359
  # The details for events with this `type`.
344
360
  #
@@ -459,7 +475,7 @@ module OpenAI
459
475
  -> { OpenAI::Models::Admin::Organization::AuditLogListResponse::WorkloadIdentityProviderUpdated },
460
476
  api_name: :"workload_identity_provider.updated"
461
477
 
462
- # @!method initialize(id:, effective_at:, type:, actor: nil, api_key_created: nil, api_key_deleted: nil, api_key_updated: nil, certificate_created: nil, certificate_deleted: nil, certificate_updated: nil, certificates_activated: nil, certificates_deactivated: nil, checkpoint_permission_created: nil, checkpoint_permission_deleted: nil, external_key_registered: nil, external_key_removed: nil, group_created: nil, group_deleted: nil, group_updated: nil, invite_accepted: nil, invite_deleted: nil, invite_sent: nil, ip_allowlist_config_activated: nil, ip_allowlist_config_deactivated: nil, ip_allowlist_created: nil, ip_allowlist_deleted: nil, ip_allowlist_updated: nil, login_failed: nil, login_succeeded: nil, logout_failed: nil, logout_succeeded: nil, organization_updated: nil, project: nil, project_archived: nil, project_created: nil, project_deleted: nil, project_updated: nil, rate_limit_deleted: nil, rate_limit_updated: nil, role_assignment_created: nil, role_assignment_deleted: nil, role_created: nil, role_deleted: nil, role_updated: nil, scim_disabled: nil, scim_enabled: nil, service_account_created: nil, service_account_deleted: nil, service_account_updated: nil, user_added: nil, user_deleted: nil, user_updated: nil, workload_identity_provider_mapping_created: nil, workload_identity_provider_mapping_deleted: nil, workload_identity_provider_mapping_updated: nil, workload_identity_provider_created: nil, workload_identity_provider_deleted: nil, workload_identity_provider_updated: nil)
478
+ # @!method initialize(id:, effective_at:, type:, actor: nil, api_key_created: nil, api_key_deleted: nil, api_key_updated: nil, certificate_created: nil, certificate_deleted: nil, certificate_updated: nil, certificates_activated: nil, certificates_deactivated: nil, checkpoint_permission_created: nil, checkpoint_permission_deleted: nil, external_key_registered: nil, external_key_removed: nil, group_created: nil, group_deleted: nil, group_updated: nil, invite_accepted: nil, invite_deleted: nil, invite_sent: nil, ip_allowlist_config_activated: nil, ip_allowlist_config_deactivated: nil, ip_allowlist_created: nil, ip_allowlist_deleted: nil, ip_allowlist_updated: nil, login_failed: nil, login_succeeded: nil, logout_failed: nil, logout_succeeded: nil, organization_updated: nil, project: nil, project_archived: nil, project_created: nil, project_deleted: nil, project_updated: nil, rate_limit_deleted: nil, rate_limit_updated: nil, role_assignment_created: nil, role_assignment_deleted: nil, role_bound_to_resource: nil, role_created: nil, role_deleted: nil, role_unbound_from_resource: nil, role_updated: nil, scim_disabled: nil, scim_enabled: nil, service_account_created: nil, service_account_deleted: nil, service_account_updated: nil, user_added: nil, user_deleted: nil, user_updated: nil, workload_identity_provider_mapping_created: nil, workload_identity_provider_mapping_deleted: nil, workload_identity_provider_mapping_updated: nil, workload_identity_provider_created: nil, workload_identity_provider_deleted: nil, workload_identity_provider_updated: nil)
463
479
  # Some parameter documentations has been truncated, see
464
480
  # {OpenAI::Models::Admin::Organization::AuditLogListResponse} for more details.
465
481
  #
@@ -547,10 +563,14 @@ module OpenAI
547
563
  #
548
564
  # @param role_assignment_deleted [OpenAI::Models::Admin::Organization::AuditLogListResponse::RoleAssignmentDeleted] The details for events with this `type`.
549
565
  #
566
+ # @param role_bound_to_resource [OpenAI::Models::Admin::Organization::AuditLogListResponse::RoleBoundToResource] The details for events with this `type`.
567
+ #
550
568
  # @param role_created [OpenAI::Models::Admin::Organization::AuditLogListResponse::RoleCreated] The details for events with this `type`.
551
569
  #
552
570
  # @param role_deleted [OpenAI::Models::Admin::Organization::AuditLogListResponse::RoleDeleted] The details for events with this `type`.
553
571
  #
572
+ # @param role_unbound_from_resource [OpenAI::Models::Admin::Organization::AuditLogListResponse::RoleUnboundFromResource] The details for events with this `type`.
573
+ #
554
574
  # @param role_updated [OpenAI::Models::Admin::Organization::AuditLogListResponse::RoleUpdated] The details for events with this `type`.
555
575
  #
556
576
  # @param scim_disabled [OpenAI::Models::Admin::Organization::AuditLogListResponse::ScimDisabled] The details for events with this `type`.
@@ -636,6 +656,8 @@ module OpenAI
636
656
  ROLE_DELETED = :"role.deleted"
637
657
  ROLE_ASSIGNMENT_CREATED = :"role.assignment.created"
638
658
  ROLE_ASSIGNMENT_DELETED = :"role.assignment.deleted"
659
+ ROLE_BOUND_TO_RESOURCE = :"role.bound_to_resource"
660
+ ROLE_UNBOUND_FROM_RESOURCE = :"role.unbound_from_resource"
639
661
  SCIM_ENABLED = :"scim.enabled"
640
662
  SCIM_DISABLED = :"scim.disabled"
641
663
  SERVICE_ACCOUNT_CREATED = :"service_account.created"
@@ -1911,6 +1933,115 @@ module OpenAI
1911
1933
  # @param resource_type [String] The type of resource the role assignment was scoped to.
1912
1934
  end
1913
1935
 
1936
+ # @see OpenAI::Models::Admin::Organization::AuditLogListResponse#role_bound_to_resource
1937
+ class RoleBoundToResource < OpenAI::Internal::Type::BaseModel
1938
+ # @!attribute id
1939
+ # The ID of the resource the role was bound to. ChatGPT workspace connector
1940
+ # resources use `<workspace_id>__<connector_id>`.
1941
+ #
1942
+ # @return [String, nil]
1943
+ optional :id, String
1944
+
1945
+ # @!attribute connector_id
1946
+ # The connector ID for a ChatGPT workspace connector resource.
1947
+ #
1948
+ # @return [String, nil]
1949
+ optional :connector_id, String
1950
+
1951
+ # @!attribute connector_name
1952
+ # The connector display name for a ChatGPT workspace connector resource, or the
1953
+ # connector ID when the display name could not be resolved.
1954
+ #
1955
+ # @return [String, nil]
1956
+ optional :connector_name, String
1957
+
1958
+ # @!attribute enabled
1959
+ # Whether the connector is enabled for the role.
1960
+ #
1961
+ # @return [Boolean, nil]
1962
+ optional :enabled, OpenAI::Internal::Type::Boolean
1963
+
1964
+ # @!attribute permissions
1965
+ # The permissions granted to the role for the resource.
1966
+ #
1967
+ # @return [Array<String>, nil]
1968
+ optional :permissions, OpenAI::Internal::Type::ArrayOf[String]
1969
+
1970
+ # @!attribute resource_id
1971
+ # The ID of the resource the role was bound to.
1972
+ #
1973
+ # @return [String, nil]
1974
+ optional :resource_id, String
1975
+
1976
+ # @!attribute resource_type
1977
+ # The type of resource the role was bound to.
1978
+ #
1979
+ # @return [String, nil]
1980
+ optional :resource_type, String
1981
+
1982
+ # @!attribute role_id
1983
+ # The ID of the role that was bound to the resource.
1984
+ #
1985
+ # @return [String, nil]
1986
+ optional :role_id, String
1987
+
1988
+ # @!attribute source
1989
+ # The connector role mutation path that produced the event.
1990
+ #
1991
+ # @return [Symbol, OpenAI::Models::Admin::Organization::AuditLogListResponse::RoleBoundToResource::Source, nil]
1992
+ optional :source,
1993
+ enum: -> { OpenAI::Models::Admin::Organization::AuditLogListResponse::RoleBoundToResource::Source }
1994
+
1995
+ # @!attribute workspace_id
1996
+ # The workspace ID for a ChatGPT workspace connector resource.
1997
+ #
1998
+ # @return [String, nil]
1999
+ optional :workspace_id, String
2000
+
2001
+ # @!method initialize(id: nil, connector_id: nil, connector_name: nil, enabled: nil, permissions: nil, resource_id: nil, resource_type: nil, role_id: nil, source: nil, workspace_id: nil)
2002
+ # Some parameter documentations has been truncated, see
2003
+ # {OpenAI::Models::Admin::Organization::AuditLogListResponse::RoleBoundToResource}
2004
+ # for more details.
2005
+ #
2006
+ # The details for events with this `type`.
2007
+ #
2008
+ # @param id [String] The ID of the resource the role was bound to. ChatGPT workspace connector resour
2009
+ #
2010
+ # @param connector_id [String] The connector ID for a ChatGPT workspace connector resource.
2011
+ #
2012
+ # @param connector_name [String] The connector display name for a ChatGPT workspace connector resource, or the co
2013
+ #
2014
+ # @param enabled [Boolean] Whether the connector is enabled for the role.
2015
+ #
2016
+ # @param permissions [Array<String>] The permissions granted to the role for the resource.
2017
+ #
2018
+ # @param resource_id [String] The ID of the resource the role was bound to.
2019
+ #
2020
+ # @param resource_type [String] The type of resource the role was bound to.
2021
+ #
2022
+ # @param role_id [String] The ID of the role that was bound to the resource.
2023
+ #
2024
+ # @param source [Symbol, OpenAI::Models::Admin::Organization::AuditLogListResponse::RoleBoundToResource::Source] The connector role mutation path that produced the event.
2025
+ #
2026
+ # @param workspace_id [String] The workspace ID for a ChatGPT workspace connector resource.
2027
+
2028
+ # The connector role mutation path that produced the event.
2029
+ #
2030
+ # @see OpenAI::Models::Admin::Organization::AuditLogListResponse::RoleBoundToResource#source
2031
+ module Source
2032
+ extend OpenAI::Internal::Type::Enum
2033
+
2034
+ ROLE_TOGGLE = :role_toggle
2035
+ ROLE_CONNECTOR_UPDATE = :role_connector_update
2036
+ ROLE_DELETE = :role_delete
2037
+ WORKSPACE_PERMISSIONS = :workspace_permissions
2038
+ CONNECTOR_PUBLISH = :connector_publish
2039
+
2040
+ # @!method self.values
2041
+ # @return [Array<Symbol>]
2042
+ end
2043
+ end
2044
+
1914
2045
  # @see OpenAI::Models::Admin::Organization::AuditLogListResponse#role_created
1915
2046
  class RoleCreated < OpenAI::Internal::Type::BaseModel
1916
2047
  # @!attribute id
@@ -1971,6 +2102,115 @@ module OpenAI
1971
2102
  # @param id [String] The role ID.
1972
2103
  end
1973
2104
 
2105
+ # @see OpenAI::Models::Admin::Organization::AuditLogListResponse#role_unbound_from_resource
2106
+ class RoleUnboundFromResource < OpenAI::Internal::Type::BaseModel
2107
+ # @!attribute id
2108
+ # The ID of the resource the role was unbound from. ChatGPT workspace connector
2109
+ # resources use `<workspace_id>__<connector_id>`.
2110
+ #
2111
+ # @return [String, nil]
2112
+ optional :id, String
2113
+
2114
+ # @!attribute connector_id
2115
+ # The connector ID for a ChatGPT workspace connector resource.
2116
+ #
2117
+ # @return [String, nil]
2118
+ optional :connector_id, String
2119
+
2120
+ # @!attribute connector_name
2121
+ # The connector display name for a ChatGPT workspace connector resource, or the
2122
+ # connector ID when the display name could not be resolved.
2123
+ #
2124
+ # @return [String, nil]
2125
+ optional :connector_name, String
2126
+
2127
+ # @!attribute enabled
2128
+ # Whether the connector is enabled for the role.
2129
+ #
2130
+ # @return [Boolean, nil]
2131
+ optional :enabled, OpenAI::Internal::Type::Boolean
2132
+
2133
+ # @!attribute permissions
2134
+ # The permissions remaining for the role after the change.
2135
+ #
2136
+ # @return [Array<String>, nil]
2137
+ optional :permissions, OpenAI::Internal::Type::ArrayOf[String]
2138
+
2139
+ # @!attribute resource_id
2140
+ # The ID of the resource the role was unbound from.
2141
+ #
2142
+ # @return [String, nil]
2143
+ optional :resource_id, String
2144
+
2145
+ # @!attribute resource_type
2146
+ # The type of resource the role was unbound from.
2147
+ #
2148
+ # @return [String, nil]
2149
+ optional :resource_type, String
2150
+
2151
+ # @!attribute role_id
2152
+ # The ID of the role that was unbound from the resource.
2153
+ #
2154
+ # @return [String, nil]
2155
+ optional :role_id, String
2156
+
2157
+ # @!attribute source
2158
+ # The connector role mutation path that produced the event.
2159
+ #
2160
+ # @return [Symbol, OpenAI::Models::Admin::Organization::AuditLogListResponse::RoleUnboundFromResource::Source, nil]
2161
+ optional :source,
2162
+ enum: -> { OpenAI::Models::Admin::Organization::AuditLogListResponse::RoleUnboundFromResource::Source }
2163
+
2164
+ # @!attribute workspace_id
2165
+ # The workspace ID for a ChatGPT workspace connector resource.
2166
+ #
2167
+ # @return [String, nil]
2168
+ optional :workspace_id, String
2169
+
2170
+ # @!method initialize(id: nil, connector_id: nil, connector_name: nil, enabled: nil, permissions: nil, resource_id: nil, resource_type: nil, role_id: nil, source: nil, workspace_id: nil)
2171
+ # Some parameter documentations has been truncated, see
2172
+ # {OpenAI::Models::Admin::Organization::AuditLogListResponse::RoleUnboundFromResource}
2173
+ # for more details.
2174
+ #
2175
+ # The details for events with this `type`.
2176
+ #
2177
+ # @param id [String] The ID of the resource the role was unbound from. ChatGPT workspace connector re
2178
+ #
2179
+ # @param connector_id [String] The connector ID for a ChatGPT workspace connector resource.
2180
+ #
2181
+ # @param connector_name [String] The connector display name for a ChatGPT workspace connector resource, or the co
2182
+ #
2183
+ # @param enabled [Boolean] Whether the connector is enabled for the role.
2184
+ #
2185
+ # @param permissions [Array<String>] The permissions remaining for the role after the change.
2186
+ #
2187
+ # @param resource_id [String] The ID of the resource the role was unbound from.
2188
+ #
2189
+ # @param resource_type [String] The type of resource the role was unbound from.
2190
+ #
2191
+ # @param role_id [String] The ID of the role that was unbound from the resource.
2192
+ #
2193
+ # @param source [Symbol, OpenAI::Models::Admin::Organization::AuditLogListResponse::RoleUnboundFromResource::Source] The connector role mutation path that produced the event.
2194
+ #
2195
+ # @param workspace_id [String] The workspace ID for a ChatGPT workspace connector resource.
2196
+
2197
+ # The connector role mutation path that produced the event.
2198
+ #
2199
+ # @see OpenAI::Models::Admin::Organization::AuditLogListResponse::RoleUnboundFromResource#source
2200
+ module Source
2201
+ extend OpenAI::Internal::Type::Enum
2202
+
2203
+ ROLE_TOGGLE = :role_toggle
2204
+ ROLE_CONNECTOR_UPDATE = :role_connector_update
2205
+ ROLE_DELETE = :role_delete
2206
+ WORKSPACE_PERMISSIONS = :workspace_permissions
2207
+ CONNECTOR_PUBLISH = :connector_publish
2208
+
2209
+ # @!method self.values
2210
+ # @return [Array<Symbol>]
2211
+ end
2212
+ end
2213
+
1974
2214
  # @see OpenAI::Models::Admin::Organization::AuditLogListResponse#role_updated
1975
2215
  class RoleUpdated < OpenAI::Internal::Type::BaseModel
1976
2216
  # @!attribute id
@@ -0,0 +1,32 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OpenAI
4
+ module Models
5
+ module Admin
6
+ module Organization
7
+ module Projects
8
+ # @see OpenAI::Resources::Admin::Organization::Projects::SpendAlerts#retrieve
9
+ class SpendAlertRetrieveParams < OpenAI::Internal::Type::BaseModel
10
+ extend OpenAI::Internal::Type::RequestParameters::Converter
11
+ include OpenAI::Internal::Type::RequestParameters
12
+
13
+ # @!attribute project_id
14
+ #
15
+ # @return [String]
16
+ required :project_id, String
17
+
18
+ # @!attribute alert_id
19
+ #
20
+ # @return [String]
21
+ required :alert_id, String
22
+
23
+ # @!method initialize(project_id:, alert_id:, request_options: {})
24
+ # @param project_id [String]
25
+ # @param alert_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,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::SpendAlerts#retrieve
8
+ class SpendAlertRetrieveParams < OpenAI::Internal::Type::BaseModel
9
+ extend OpenAI::Internal::Type::RequestParameters::Converter
10
+ include OpenAI::Internal::Type::RequestParameters
11
+
12
+ # @!attribute alert_id
13
+ #
14
+ # @return [String]
15
+ required :alert_id, String
16
+
17
+ # @!method initialize(alert_id:, request_options: {})
18
+ # @param alert_id [String]
19
+ # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}]
20
+ end
21
+ end
22
+ end
23
+ end
24
+ end
@@ -3,6 +3,14 @@
3
3
  module OpenAI
4
4
  module Models
5
5
  class Reasoning < OpenAI::Internal::Type::BaseModel
6
+ # @!attribute context
7
+ # Controls which reasoning items are rendered back to the model on later turns.
8
+ # When returned on a response, this is the effective reasoning context mode used
9
+ # for the response.
10
+ #
11
+ # @return [Symbol, OpenAI::Models::Reasoning::Context, nil]
12
+ optional :context, enum: -> { OpenAI::Reasoning::Context }, nil?: true
13
+
6
14
  # @!attribute effort
7
15
  # Constrains effort on reasoning for
8
16
  # [reasoning models](https://platform.openai.com/docs/guides/reasoning). Currently
@@ -44,7 +52,7 @@ module OpenAI
44
52
  # @return [Symbol, OpenAI::Models::Reasoning::Summary, nil]
45
53
  optional :summary, enum: -> { OpenAI::Reasoning::Summary }, nil?: true
46
54
 
47
- # @!method initialize(effort: nil, generate_summary: nil, summary: nil)
55
+ # @!method initialize(context: nil, effort: nil, generate_summary: nil, summary: nil)
48
56
  # Some parameter documentations has been truncated, see
49
57
  # {OpenAI::Models::Reasoning} for more details.
50
58
  #
@@ -53,12 +61,30 @@ module OpenAI
53
61
  # Configuration options for
54
62
  # [reasoning models](https://platform.openai.com/docs/guides/reasoning).
55
63
  #
64
+ # @param context [Symbol, OpenAI::Models::Reasoning::Context, nil] Controls which reasoning items are rendered back to the model on later turns.
65
+ #
56
66
  # @param effort [Symbol, OpenAI::Models::ReasoningEffort, nil] Constrains effort on reasoning for
57
67
  #
58
68
  # @param generate_summary [Symbol, OpenAI::Models::Reasoning::GenerateSummary, nil] **Deprecated:** use `summary` instead.
59
69
  #
60
70
  # @param summary [Symbol, OpenAI::Models::Reasoning::Summary, nil] A summary of the reasoning performed by the model. This can be
61
71
 
72
+ # Controls which reasoning items are rendered back to the model on later turns.
73
+ # When returned on a response, this is the effective reasoning context mode used
74
+ # for the response.
75
+ #
76
+ # @see OpenAI::Models::Reasoning#context
77
+ module Context
78
+ extend OpenAI::Internal::Type::Enum
79
+
80
+ AUTO = :auto
81
+ CURRENT_TURN = :current_turn
82
+ ALL_TURNS = :all_turns
83
+
84
+ # @!method self.values
85
+ # @return [Array<Symbol>]
86
+ end
87
+
62
88
  # @deprecated
63
89
  #
64
90
  # **Deprecated:** use `summary` instead.
@@ -100,6 +100,8 @@ module OpenAI
100
100
  optional :tools, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Responses::Tool] }, nil?: true
101
101
 
102
102
  # @!attribute truncation
103
+ # @deprecated
104
+ #
103
105
  # The truncation strategy to use for the model response. - `auto`: If the input to
104
106
  # this Response exceeds the model's context window size, the model will truncate
105
107
  # the response to fit the context window by dropping items from the beginning of
@@ -303,6 +305,8 @@ module OpenAI
303
305
  # @return [Array(Symbol, OpenAI::Models::Responses::ToolChoiceOptions, OpenAI::Models::Responses::ToolChoiceAllowed, OpenAI::Models::Responses::ToolChoiceTypes, OpenAI::Models::Responses::ToolChoiceFunction, OpenAI::Models::Responses::ToolChoiceMcp, OpenAI::Models::Responses::ToolChoiceCustom, OpenAI::Models::Responses::ToolChoiceApplyPatch, OpenAI::Models::Responses::ToolChoiceShell)]
304
306
  end
305
307
 
308
+ # @deprecated
309
+ #
306
310
  # The truncation strategy to use for the model response. - `auto`: If the input to
307
311
  # this Response exceeds the model's context window size, the model will truncate
308
312
  # the response to fit the context window by dropping items from the beginning of
@@ -311,6 +311,8 @@ module OpenAI
311
311
  optional :top_p, Float, nil?: true
312
312
 
313
313
  # @!attribute truncation
314
+ # @deprecated
315
+ #
314
316
  # The truncation strategy to use for the model response.
315
317
  #
316
318
  # - `auto`: If the input to this Response exceeds the model's context window size,
@@ -590,6 +592,8 @@ module OpenAI
590
592
  # @return [Array(Symbol, OpenAI::Models::Responses::ToolChoiceOptions, OpenAI::Models::Responses::ToolChoiceAllowed, OpenAI::Models::Responses::ToolChoiceTypes, OpenAI::Models::Responses::ToolChoiceFunction, OpenAI::Models::Responses::ToolChoiceMcp, OpenAI::Models::Responses::ToolChoiceCustom, OpenAI::Models::Responses::ToolChoiceApplyPatch, OpenAI::Models::Responses::ToolChoiceShell)]
591
593
  end
592
594
 
595
+ # @deprecated
596
+ #
593
597
  # The truncation strategy to use for the model response.
594
598
  #
595
599
  # - `auto`: If the input to this Response exceeds the model's context window size,
@@ -316,6 +316,8 @@ module OpenAI
316
316
  optional :top_p, Float, nil?: true
317
317
 
318
318
  # @!attribute truncation
319
+ # @deprecated
320
+ #
319
321
  # The truncation strategy to use for the model response.
320
322
  #
321
323
  # - `auto`: If the input to this Response exceeds the model's context window size,
@@ -609,6 +611,8 @@ module OpenAI
609
611
  # @return [Array(Symbol, OpenAI::Models::Responses::ToolChoiceOptions, OpenAI::Models::Responses::ToolChoiceAllowed, OpenAI::Models::Responses::ToolChoiceTypes, OpenAI::Models::Responses::ToolChoiceFunction, OpenAI::Models::Responses::ToolChoiceMcp, OpenAI::Models::Responses::ToolChoiceCustom, OpenAI::Models::Responses::ToolChoiceApplyPatch, OpenAI::Models::Responses::ToolChoiceShell)]
610
612
  end
611
613
 
614
+ # @deprecated
615
+ #
612
616
  # The truncation strategy to use for the model response.
613
617
  #
614
618
  # - `auto`: If the input to this Response exceeds the model's context window size,
@@ -5,11 +5,17 @@ module OpenAI
5
5
  class Admin
6
6
  class Organization
7
7
  class AdminAPIKeys
8
+ # Some parameter documentations has been truncated, see
9
+ # {OpenAI::Models::Admin::Organization::AdminAPIKeyCreateParams} for more details.
10
+ #
8
11
  # Create an organization admin API key
9
12
  #
10
- # @overload create(name:, request_options: {})
13
+ # @overload create(name:, expires_in_seconds: nil, request_options: {})
11
14
  #
12
15
  # @param name [String]
16
+ #
17
+ # @param expires_in_seconds [Integer] The number of seconds until the API key expires. Omit this field for a key that
18
+ #
13
19
  # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil]
14
20
  #
15
21
  # @return [OpenAI::Models::Admin::Organization::AdminAPIKeyCreateResponse]