openai 0.69.0 → 0.71.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (107) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +27 -0
  3. data/README.md +51 -1
  4. data/lib/openai/client.rb +62 -8
  5. data/lib/openai/internal/provider.rb +31 -0
  6. data/lib/openai/internal/transport/base_client.rb +65 -21
  7. data/lib/openai/internal/util.rb +1 -1
  8. data/lib/openai/models/admin/organization/audit_log_list_params.rb +84 -0
  9. data/lib/openai/models/admin/organization/audit_log_list_response.rb +84 -0
  10. data/lib/openai/models/admin/organization/projects/api_key_list_params.rb +30 -1
  11. data/lib/openai/models/admin/organization/projects/project_api_key.rb +23 -1
  12. data/lib/openai/models/admin/organization/projects/project_service_account.rb +4 -3
  13. data/lib/openai/models/admin/organization/projects/service_account_create_params.rb +9 -1
  14. data/lib/openai/models/admin/organization/projects/service_account_create_response.rb +26 -6
  15. data/lib/openai/models/admin/organization/projects/service_accounts/api_key_create_params.rb +54 -0
  16. data/lib/openai/models/admin/organization/projects/service_accounts/api_key_create_response.rb +57 -0
  17. data/lib/openai/models/admin/organization/usage_audio_speeches_response.rb +88 -13
  18. data/lib/openai/models/admin/organization/usage_audio_transcriptions_response.rb +88 -13
  19. data/lib/openai/models/admin/organization/usage_code_interpreter_sessions_response.rb +88 -13
  20. data/lib/openai/models/admin/organization/usage_completions_response.rb +88 -13
  21. data/lib/openai/models/admin/organization/usage_costs_response.rb +88 -13
  22. data/lib/openai/models/admin/organization/usage_embeddings_response.rb +88 -13
  23. data/lib/openai/models/admin/organization/usage_file_search_calls_response.rb +88 -13
  24. data/lib/openai/models/admin/organization/usage_images_response.rb +88 -13
  25. data/lib/openai/models/admin/organization/usage_moderations_response.rb +88 -13
  26. data/lib/openai/models/admin/organization/usage_vector_stores_response.rb +88 -13
  27. data/lib/openai/models/admin/organization/usage_web_search_calls_response.rb +88 -13
  28. data/lib/openai/models/beta/beta_response_input_item.rb +16 -32
  29. data/lib/openai/models/beta/beta_response_reasoning_item.rb +4 -3
  30. data/lib/openai/models/responses/response_reasoning_item.rb +4 -3
  31. data/lib/openai/models/webhooks/unwrap_webhook_event.rb +1 -4
  32. data/lib/openai/provider.rb +18 -0
  33. data/lib/openai/providers/bedrock.rb +489 -0
  34. data/lib/openai/resources/admin/organization/projects/api_keys.rb +3 -1
  35. data/lib/openai/resources/admin/organization/projects/service_accounts/api_keys.rb +60 -0
  36. data/lib/openai/resources/admin/organization/projects/service_accounts.rb +10 -3
  37. data/lib/openai/resources/webhooks.rb +1 -1
  38. data/lib/openai/version.rb +1 -1
  39. data/lib/openai.rb +6 -1
  40. data/rbi/openai/client.rbi +17 -0
  41. data/rbi/openai/internal/provider.rbi +51 -0
  42. data/rbi/openai/internal/transport/base_client.rbi +32 -0
  43. data/rbi/openai/models/admin/organization/audit_log_list_params.rbi +420 -0
  44. data/rbi/openai/models/admin/organization/audit_log_list_response.rbi +420 -0
  45. data/rbi/openai/models/admin/organization/projects/api_key_list_params.rbi +76 -0
  46. data/rbi/openai/models/admin/organization/projects/project_api_key.rbi +49 -0
  47. data/rbi/openai/models/admin/organization/projects/project_service_account.rbi +8 -3
  48. data/rbi/openai/models/admin/organization/projects/service_account_create_params.rbi +8 -0
  49. data/rbi/openai/models/admin/organization/projects/service_account_create_response.rbi +52 -8
  50. data/rbi/openai/models/admin/organization/projects/service_accounts/api_key_create_params.rbi +84 -0
  51. data/rbi/openai/models/admin/organization/projects/service_accounts/api_key_create_response.rbi +80 -0
  52. data/rbi/openai/models/admin/organization/usage_audio_speeches_response.rbi +121 -16
  53. data/rbi/openai/models/admin/organization/usage_audio_transcriptions_response.rbi +121 -16
  54. data/rbi/openai/models/admin/organization/usage_code_interpreter_sessions_response.rbi +121 -16
  55. data/rbi/openai/models/admin/organization/usage_completions_response.rbi +121 -16
  56. data/rbi/openai/models/admin/organization/usage_costs_response.rbi +121 -16
  57. data/rbi/openai/models/admin/organization/usage_embeddings_response.rbi +121 -16
  58. data/rbi/openai/models/admin/organization/usage_file_search_calls_response.rbi +121 -16
  59. data/rbi/openai/models/admin/organization/usage_images_response.rbi +121 -16
  60. data/rbi/openai/models/admin/organization/usage_moderations_response.rbi +121 -16
  61. data/rbi/openai/models/admin/organization/usage_vector_stores_response.rbi +121 -16
  62. data/rbi/openai/models/admin/organization/usage_web_search_calls_response.rbi +121 -16
  63. data/rbi/openai/models/beta/beta_response_input_item.rbi +39 -46
  64. data/rbi/openai/models/beta/beta_response_reasoning_item.rbi +6 -4
  65. data/rbi/openai/models/responses/response_reasoning_item.rbi +6 -4
  66. data/rbi/openai/models/webhooks/unwrap_webhook_event.rbi +1 -2
  67. data/rbi/openai/provider.rbi +9 -0
  68. data/rbi/openai/providers.rbi +33 -0
  69. data/rbi/openai/resources/admin/organization/projects/api_keys.rbi +8 -0
  70. data/rbi/openai/resources/admin/organization/projects/service_accounts/api_keys.rbi +45 -0
  71. data/rbi/openai/resources/admin/organization/projects/service_accounts.rbi +12 -2
  72. data/rbi/openai/resources/webhooks.rbi +1 -2
  73. data/sig/openai/client.rbs +7 -0
  74. data/sig/openai/internal/provider.rbs +29 -0
  75. data/sig/openai/internal/transport/base_client.rbs +17 -1
  76. data/sig/openai/models/admin/organization/audit_log_list_params.rbs +168 -0
  77. data/sig/openai/models/admin/organization/audit_log_list_response.rbs +168 -0
  78. data/sig/openai/models/admin/organization/projects/api_key_list_params.rbs +26 -1
  79. data/sig/openai/models/admin/organization/projects/project_api_key.rbs +16 -0
  80. data/sig/openai/models/admin/organization/projects/project_service_account.rbs +2 -1
  81. data/sig/openai/models/admin/organization/projects/service_account_create_params.rbs +9 -1
  82. data/sig/openai/models/admin/organization/projects/service_account_create_response.rbs +16 -5
  83. data/sig/openai/models/admin/organization/projects/service_accounts/api_key_create_params.rbs +53 -0
  84. data/sig/openai/models/admin/organization/projects/service_accounts/api_key_create_response.rbs +48 -0
  85. data/sig/openai/models/admin/organization/usage_audio_speeches_response.rbs +63 -0
  86. data/sig/openai/models/admin/organization/usage_audio_transcriptions_response.rbs +63 -0
  87. data/sig/openai/models/admin/organization/usage_code_interpreter_sessions_response.rbs +63 -0
  88. data/sig/openai/models/admin/organization/usage_completions_response.rbs +63 -0
  89. data/sig/openai/models/admin/organization/usage_costs_response.rbs +63 -0
  90. data/sig/openai/models/admin/organization/usage_embeddings_response.rbs +63 -0
  91. data/sig/openai/models/admin/organization/usage_file_search_calls_response.rbs +63 -0
  92. data/sig/openai/models/admin/organization/usage_images_response.rbs +63 -0
  93. data/sig/openai/models/admin/organization/usage_moderations_response.rbs +63 -0
  94. data/sig/openai/models/admin/organization/usage_vector_stores_response.rbs +63 -0
  95. data/sig/openai/models/admin/organization/usage_web_search_calls_response.rbs +63 -0
  96. data/sig/openai/models/beta/beta_response_input_item.rbs +18 -24
  97. data/sig/openai/models/webhooks/unwrap_webhook_event.rbs +0 -1
  98. data/sig/openai/provider.rbs +5 -0
  99. data/sig/openai/providers.rbs +15 -0
  100. data/sig/openai/resources/admin/organization/projects/api_keys.rbs +1 -0
  101. data/sig/openai/resources/admin/organization/projects/service_accounts/api_keys.rbs +23 -0
  102. data/sig/openai/resources/admin/organization/projects/service_accounts.rbs +3 -0
  103. data/sig/openai/resources/webhooks.rbs +1 -2
  104. metadata +20 -5
  105. data/lib/openai/models/webhooks/safety_identifier_blocked_webhook_event.rb +0 -118
  106. data/rbi/openai/models/webhooks/safety_identifier_blocked_webhook_event.rbi +0 -209
  107. data/sig/openai/models/webhooks/safety_identifier_blocked_webhook_event.rbs +0 -99
@@ -1723,6 +1723,426 @@ module OpenAI
1723
1723
  :"user.deleted",
1724
1724
  OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1725
1725
  )
1726
+ TENANT_METADATA_UPDATED =
1727
+ T.let(
1728
+ :"tenant.metadata.updated",
1729
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1730
+ )
1731
+ TENANT_MICROSOFT_ENTRA_MAPPING_UPSERTED =
1732
+ T.let(
1733
+ :"tenant.microsoft_entra_mapping.upserted",
1734
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1735
+ )
1736
+ TENANT_MICROSOFT_ENTRA_MAPPING_DELETED =
1737
+ T.let(
1738
+ :"tenant.microsoft_entra_mapping.deleted",
1739
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1740
+ )
1741
+ TENANT_WORKLOAD_IDENTITY_PROVIDER_CREATED =
1742
+ T.let(
1743
+ :"tenant.workload_identity.provider.created",
1744
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1745
+ )
1746
+ TENANT_WORKLOAD_IDENTITY_PROVIDER_UPDATED =
1747
+ T.let(
1748
+ :"tenant.workload_identity.provider.updated",
1749
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1750
+ )
1751
+ TENANT_WORKLOAD_IDENTITY_PROVIDER_ARCHIVED =
1752
+ T.let(
1753
+ :"tenant.workload_identity.provider.archived",
1754
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1755
+ )
1756
+ TENANT_WORKLOAD_IDENTITY_MAPPING_CREATED =
1757
+ T.let(
1758
+ :"tenant.workload_identity.mapping.created",
1759
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1760
+ )
1761
+ TENANT_WORKLOAD_IDENTITY_MAPPING_UPDATED =
1762
+ T.let(
1763
+ :"tenant.workload_identity.mapping.updated",
1764
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1765
+ )
1766
+ TENANT_WORKLOAD_IDENTITY_MAPPING_ARCHIVED =
1767
+ T.let(
1768
+ :"tenant.workload_identity.mapping.archived",
1769
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1770
+ )
1771
+ TENANT_WORKLOAD_IDENTITY_BINDING_CREATED =
1772
+ T.let(
1773
+ :"tenant.workload_identity.binding.created",
1774
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1775
+ )
1776
+ TENANT_WORKLOAD_IDENTITY_PRINCIPAL_PROVISIONED =
1777
+ T.let(
1778
+ :"tenant.workload_identity.principal.provisioned",
1779
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1780
+ )
1781
+ TENANT_ADMIN_API_KEY_CREATED =
1782
+ T.let(
1783
+ :"tenant.admin_api_key.created",
1784
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1785
+ )
1786
+ TENANT_ADMIN_API_KEY_UPDATED =
1787
+ T.let(
1788
+ :"tenant.admin_api_key.updated",
1789
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1790
+ )
1791
+ TENANT_ADMIN_API_KEY_DELETED =
1792
+ T.let(
1793
+ :"tenant.admin_api_key.deleted",
1794
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1795
+ )
1796
+ TENANT_PROJECT_API_KEY_CREATED =
1797
+ T.let(
1798
+ :"tenant.project_api_key.created",
1799
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1800
+ )
1801
+ TENANT_CHATGPT_ACCESS_TOKEN_REVOKED =
1802
+ T.let(
1803
+ :"tenant.chatgpt_access_token.revoked",
1804
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1805
+ )
1806
+ TENANT_MIGRATION_COMPLETED =
1807
+ T.let(
1808
+ :"tenant.migration.completed",
1809
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1810
+ )
1811
+ TENANT_SSO_MIGRATED =
1812
+ T.let(
1813
+ :"tenant.sso.migrated",
1814
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1815
+ )
1816
+ TENANT_DOMAINS_MIGRATED =
1817
+ T.let(
1818
+ :"tenant.domains.migrated",
1819
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1820
+ )
1821
+ TENANT_SSO_CONNECTION_CREATED =
1822
+ T.let(
1823
+ :"tenant.sso_connection.created",
1824
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1825
+ )
1826
+ TENANT_SSO_CONNECTION_UPDATED =
1827
+ T.let(
1828
+ :"tenant.sso_connection.updated",
1829
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1830
+ )
1831
+ TENANT_SSO_CONNECTION_DELETED =
1832
+ T.let(
1833
+ :"tenant.sso_connection.deleted",
1834
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1835
+ )
1836
+ TENANT_SSO_CONNECTION_SETUP_STARTED =
1837
+ T.let(
1838
+ :"tenant.sso_connection.setup.started",
1839
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1840
+ )
1841
+ TENANT_POLICY_CREATED =
1842
+ T.let(
1843
+ :"tenant.policy.created",
1844
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1845
+ )
1846
+ TENANT_POLICY_UPDATED =
1847
+ T.let(
1848
+ :"tenant.policy.updated",
1849
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1850
+ )
1851
+ TENANT_POLICY_DELETED =
1852
+ T.let(
1853
+ :"tenant.policy.deleted",
1854
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1855
+ )
1856
+ TENANT_POLICY_ATTACHED =
1857
+ T.let(
1858
+ :"tenant.policy.attached",
1859
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1860
+ )
1861
+ TENANT_POLICY_DETACHED =
1862
+ T.let(
1863
+ :"tenant.policy.detached",
1864
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1865
+ )
1866
+ TENANT_PRINCIPAL_AUTHENTICATION_POLICY_RESOLVED =
1867
+ T.let(
1868
+ :"tenant.principal_authentication_policy.resolved",
1869
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1870
+ )
1871
+ TENANT_SCIM_SETUP_STARTED =
1872
+ T.let(
1873
+ :"tenant.scim.setup.started",
1874
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1875
+ )
1876
+ TENANT_SCIM_DELETION_REQUESTED =
1877
+ T.let(
1878
+ :"tenant.scim.deletion.requested",
1879
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1880
+ )
1881
+ TENANT_SCIM_DIRECTORY_CREATED =
1882
+ T.let(
1883
+ :"tenant.scim.directory.created",
1884
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1885
+ )
1886
+ TENANT_PRODUCT_ACCESS_POLICY_UPDATED =
1887
+ T.let(
1888
+ :"tenant.product_access_policy.updated",
1889
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1890
+ )
1891
+ TENANT_RESOURCE_SHARE_GRANT_CREATED =
1892
+ T.let(
1893
+ :"tenant.resource_share_grant.created",
1894
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1895
+ )
1896
+ TENANT_RESOURCE_SHARE_GRANT_UPDATED =
1897
+ T.let(
1898
+ :"tenant.resource_share_grant.updated",
1899
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1900
+ )
1901
+ TENANT_RESOURCE_SHARE_GRANT_ACCEPTED =
1902
+ T.let(
1903
+ :"tenant.resource_share_grant.accepted",
1904
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1905
+ )
1906
+ TENANT_RESOURCE_SHARE_GRANT_DECLINED =
1907
+ T.let(
1908
+ :"tenant.resource_share_grant.declined",
1909
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1910
+ )
1911
+ TENANT_RESOURCE_SHARE_GRANT_REVOKED =
1912
+ T.let(
1913
+ :"tenant.resource_share_grant.revoked",
1914
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1915
+ )
1916
+ TENANT_RESOURCE_SHARE_GRANT_DELETED =
1917
+ T.let(
1918
+ :"tenant.resource_share_grant.deleted",
1919
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1920
+ )
1921
+ TENANT_SERVICE_ACCOUNT_UPDATED =
1922
+ T.let(
1923
+ :"tenant.service_account.updated",
1924
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1925
+ )
1926
+ TENANT_SERVICE_ACCOUNT_DELETED =
1927
+ T.let(
1928
+ :"tenant.service_account.deleted",
1929
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1930
+ )
1931
+ TENANT_SERVICE_ACCOUNT_TOKEN_REVOKED =
1932
+ T.let(
1933
+ :"tenant.service_account.token.revoked",
1934
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1935
+ )
1936
+ TENANT_BILLING_OVERAGE_LIMIT_UPDATED =
1937
+ T.let(
1938
+ :"tenant.billing.overage_limit.updated",
1939
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1940
+ )
1941
+ TENANT_BILLING_ALERTS_UPDATED =
1942
+ T.let(
1943
+ :"tenant.billing.alerts.updated",
1944
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1945
+ )
1946
+ TENANT_BILLING_INFO_UPDATED =
1947
+ T.let(
1948
+ :"tenant.billing.info.updated",
1949
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1950
+ )
1951
+ TENANT_USAGE_LIMIT_WORKSPACE_UPDATED =
1952
+ T.let(
1953
+ :"tenant.usage_limit.workspace.updated",
1954
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1955
+ )
1956
+ TENANT_USAGE_LIMIT_GROUP_UPDATED =
1957
+ T.let(
1958
+ :"tenant.usage_limit.group.updated",
1959
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1960
+ )
1961
+ TENANT_USAGE_LIMIT_USER_UPDATED =
1962
+ T.let(
1963
+ :"tenant.usage_limit.user.updated",
1964
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1965
+ )
1966
+ TENANT_USAGE_LIMIT_INCREASE_REQUEST_UPDATED =
1967
+ T.let(
1968
+ :"tenant.usage_limit.increase_request.updated",
1969
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1970
+ )
1971
+ TENANT_USAGE_LIMIT_INCREASE_REQUEST_RESOLVED =
1972
+ T.let(
1973
+ :"tenant.usage_limit.increase_request.resolved",
1974
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1975
+ )
1976
+ TENANT_GROUP_CREATED =
1977
+ T.let(
1978
+ :"tenant.group.created",
1979
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1980
+ )
1981
+ TENANT_GROUP_UPDATED =
1982
+ T.let(
1983
+ :"tenant.group.updated",
1984
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1985
+ )
1986
+ TENANT_GROUP_DELETED =
1987
+ T.let(
1988
+ :"tenant.group.deleted",
1989
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1990
+ )
1991
+ TENANT_GROUP_MEMBER_ADDED =
1992
+ T.let(
1993
+ :"tenant.group.member.added",
1994
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
1995
+ )
1996
+ TENANT_GROUP_MEMBER_REMOVED =
1997
+ T.let(
1998
+ :"tenant.group.member.removed",
1999
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
2000
+ )
2001
+ TENANT_MIGRATION_ROLLOUT_STATUS_UPDATED =
2002
+ T.let(
2003
+ :"tenant.migration_rollout.status.updated",
2004
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
2005
+ )
2006
+ TENANT_MIGRATION_ROLLOUT_TIER_UPDATED =
2007
+ T.let(
2008
+ :"tenant.migration_rollout.tier.updated",
2009
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
2010
+ )
2011
+ TENANT_ROLE_METADATA_UPDATED =
2012
+ T.let(
2013
+ :"tenant.role.metadata.updated",
2014
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
2015
+ )
2016
+ TENANT_CUSTOM_ROLE_CREATED =
2017
+ T.let(
2018
+ :"tenant.custom_role.created",
2019
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
2020
+ )
2021
+ TENANT_CUSTOM_ROLE_UPDATED =
2022
+ T.let(
2023
+ :"tenant.custom_role.updated",
2024
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
2025
+ )
2026
+ TENANT_CUSTOM_ROLE_DELETED =
2027
+ T.let(
2028
+ :"tenant.custom_role.deleted",
2029
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
2030
+ )
2031
+ TENANT_ROLE_ASSIGNMENT_CREATED =
2032
+ T.let(
2033
+ :"tenant.role_assignment.created",
2034
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
2035
+ )
2036
+ TENANT_ROLE_ASSIGNMENT_DELETED =
2037
+ T.let(
2038
+ :"tenant.role_assignment.deleted",
2039
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
2040
+ )
2041
+ TENANT_RESOURCE_ROLE_ASSIGNMENT_CREATED =
2042
+ T.let(
2043
+ :"tenant.resource_role_assignment.created",
2044
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
2045
+ )
2046
+ TENANT_RESOURCE_ROLE_ASSIGNMENT_DELETED =
2047
+ T.let(
2048
+ :"tenant.resource_role_assignment.deleted",
2049
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
2050
+ )
2051
+ TENANT_RESOURCE_ACCESS_UPDATED =
2052
+ T.let(
2053
+ :"tenant.resource_access.updated",
2054
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
2055
+ )
2056
+ TENANT_RESOURCE_ACCESS_DELETED =
2057
+ T.let(
2058
+ :"tenant.resource_access.deleted",
2059
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
2060
+ )
2061
+ TENANT_SESSION_POLICY_CREATED =
2062
+ T.let(
2063
+ :"tenant.session_policy.created",
2064
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
2065
+ )
2066
+ TENANT_SESSION_POLICY_UPDATED =
2067
+ T.let(
2068
+ :"tenant.session_policy.updated",
2069
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
2070
+ )
2071
+ TENANT_SESSION_POLICY_DELETED =
2072
+ T.let(
2073
+ :"tenant.session_policy.deleted",
2074
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
2075
+ )
2076
+ TENANT_SESSION_REVOCATION_STARTED =
2077
+ T.let(
2078
+ :"tenant.session_revocation.started",
2079
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
2080
+ )
2081
+ TENANT_THIRD_PARTY_APP_POLICY_UPDATED =
2082
+ T.let(
2083
+ :"tenant.third_party_app_policy.updated",
2084
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
2085
+ )
2086
+ TENANT_USER_ADDED =
2087
+ T.let(
2088
+ :"tenant.user.added",
2089
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
2090
+ )
2091
+ TENANT_USER_UPDATED =
2092
+ T.let(
2093
+ :"tenant.user.updated",
2094
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
2095
+ )
2096
+ TENANT_USER_REMOVED =
2097
+ T.let(
2098
+ :"tenant.user.removed",
2099
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
2100
+ )
2101
+ TENANT_USER_LOOKED_UP =
2102
+ T.let(
2103
+ :"tenant.user.looked_up",
2104
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
2105
+ )
2106
+ TENANT_USER_INVITED =
2107
+ T.let(
2108
+ :"tenant.user.invited",
2109
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
2110
+ )
2111
+ TENANT_MEMBERSHIP_REVOKED =
2112
+ T.let(
2113
+ :"tenant.membership.revoked",
2114
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
2115
+ )
2116
+ TENANT_API_ORGANIZATION_INVITE_UPSERTED =
2117
+ T.let(
2118
+ :"tenant.api_organization_invite.upserted",
2119
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
2120
+ )
2121
+ TENANT_API_ORGANIZATION_INVITE_DELETED =
2122
+ T.let(
2123
+ :"tenant.api_organization_invite.deleted",
2124
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
2125
+ )
2126
+ TENANT_CHATGPT_WORKSPACE_INVITE_UPSERTED =
2127
+ T.let(
2128
+ :"tenant.chatgpt_workspace_invite.upserted",
2129
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
2130
+ )
2131
+ TENANT_MEMBERSHIP_ACCEPTED =
2132
+ T.let(
2133
+ :"tenant.membership.accepted",
2134
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
2135
+ )
2136
+ TENANT_MEMBERSHIP_DECLINED =
2137
+ T.let(
2138
+ :"tenant.membership.declined",
2139
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
2140
+ )
2141
+ TENANT_WORKSPACE_INVITE_EMAIL_SETTINGS_UPDATED =
2142
+ T.let(
2143
+ :"tenant.workspace_invite_email_settings.updated",
2144
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::Type::TaggedSymbol
2145
+ )
1726
2146
 
1727
2147
  sig do
1728
2148
  override.returns(
@@ -38,11 +38,35 @@ module OpenAI
38
38
  sig { params(limit: Integer).void }
39
39
  attr_writer :limit
40
40
 
41
+ # Filter API keys by whether the owner currently has effective access to the
42
+ # project. Use `active` for owners with access, `inactive` for owners without
43
+ # access, or `any` for all enabled project API keys. If omitted, the endpoint
44
+ # applies its existing membership-based visibility rules, which may exclude some
45
+ # enabled keys.
46
+ sig do
47
+ returns(
48
+ T.nilable(
49
+ OpenAI::Admin::Organization::Projects::APIKeyListParams::OwnerProjectAccess::OrSymbol
50
+ )
51
+ )
52
+ end
53
+ attr_reader :owner_project_access
54
+
55
+ sig do
56
+ params(
57
+ owner_project_access:
58
+ OpenAI::Admin::Organization::Projects::APIKeyListParams::OwnerProjectAccess::OrSymbol
59
+ ).void
60
+ end
61
+ attr_writer :owner_project_access
62
+
41
63
  sig do
42
64
  params(
43
65
  project_id: String,
44
66
  after: String,
45
67
  limit: Integer,
68
+ owner_project_access:
69
+ OpenAI::Admin::Organization::Projects::APIKeyListParams::OwnerProjectAccess::OrSymbol,
46
70
  request_options: OpenAI::RequestOptions::OrHash
47
71
  ).returns(T.attached_class)
48
72
  end
@@ -56,6 +80,12 @@ module OpenAI
56
80
  # A limit on the number of objects to be returned. Limit can range between 1 and
57
81
  # 100, and the default is 20.
58
82
  limit: nil,
83
+ # Filter API keys by whether the owner currently has effective access to the
84
+ # project. Use `active` for owners with access, `inactive` for owners without
85
+ # access, or `any` for all enabled project API keys. If omitted, the endpoint
86
+ # applies its existing membership-based visibility rules, which may exclude some
87
+ # enabled keys.
88
+ owner_project_access: nil,
59
89
  request_options: {}
60
90
  )
61
91
  end
@@ -66,12 +96,58 @@ module OpenAI
66
96
  project_id: String,
67
97
  after: String,
68
98
  limit: Integer,
99
+ owner_project_access:
100
+ OpenAI::Admin::Organization::Projects::APIKeyListParams::OwnerProjectAccess::OrSymbol,
69
101
  request_options: OpenAI::RequestOptions
70
102
  }
71
103
  )
72
104
  end
73
105
  def to_hash
74
106
  end
107
+
108
+ # Filter API keys by whether the owner currently has effective access to the
109
+ # project. Use `active` for owners with access, `inactive` for owners without
110
+ # access, or `any` for all enabled project API keys. If omitted, the endpoint
111
+ # applies its existing membership-based visibility rules, which may exclude some
112
+ # enabled keys.
113
+ module OwnerProjectAccess
114
+ extend OpenAI::Internal::Type::Enum
115
+
116
+ TaggedSymbol =
117
+ T.type_alias do
118
+ T.all(
119
+ Symbol,
120
+ OpenAI::Admin::Organization::Projects::APIKeyListParams::OwnerProjectAccess
121
+ )
122
+ end
123
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
124
+
125
+ ACTIVE =
126
+ T.let(
127
+ :active,
128
+ OpenAI::Admin::Organization::Projects::APIKeyListParams::OwnerProjectAccess::TaggedSymbol
129
+ )
130
+ INACTIVE =
131
+ T.let(
132
+ :inactive,
133
+ OpenAI::Admin::Organization::Projects::APIKeyListParams::OwnerProjectAccess::TaggedSymbol
134
+ )
135
+ ANY =
136
+ T.let(
137
+ :any,
138
+ OpenAI::Admin::Organization::Projects::APIKeyListParams::OwnerProjectAccess::TaggedSymbol
139
+ )
140
+
141
+ sig do
142
+ override.returns(
143
+ T::Array[
144
+ OpenAI::Admin::Organization::Projects::APIKeyListParams::OwnerProjectAccess::TaggedSymbol
145
+ ]
146
+ )
147
+ end
148
+ def self.values
149
+ end
150
+ end
75
151
  end
76
152
  end
77
153
  end
@@ -51,6 +51,14 @@ module OpenAI
51
51
  end
52
52
  attr_writer :owner
53
53
 
54
+ # Whether the API key's owner currently has effective access to the project.
55
+ sig do
56
+ returns(
57
+ OpenAI::Admin::Organization::Projects::ProjectAPIKey::OwnerProjectAccess::TaggedSymbol
58
+ )
59
+ end
60
+ attr_accessor :owner_project_access
61
+
54
62
  # The redacted value of the API key
55
63
  sig { returns(String) }
56
64
  attr_accessor :redacted_value
@@ -64,6 +72,8 @@ module OpenAI
64
72
  name: String,
65
73
  owner:
66
74
  OpenAI::Admin::Organization::Projects::ProjectAPIKey::Owner::OrHash,
75
+ owner_project_access:
76
+ OpenAI::Admin::Organization::Projects::ProjectAPIKey::OwnerProjectAccess::OrSymbol,
67
77
  redacted_value: String,
68
78
  object: Symbol
69
79
  ).returns(T.attached_class)
@@ -78,6 +88,8 @@ module OpenAI
78
88
  # The name of the API key
79
89
  name:,
80
90
  owner:,
91
+ # Whether the API key's owner currently has effective access to the project.
92
+ owner_project_access:,
81
93
  # The redacted value of the API key
82
94
  redacted_value:,
83
95
  # The object type, which is always `organization.project.api_key`
@@ -95,6 +107,8 @@ module OpenAI
95
107
  object: Symbol,
96
108
  owner:
97
109
  OpenAI::Admin::Organization::Projects::ProjectAPIKey::Owner,
110
+ owner_project_access:
111
+ OpenAI::Admin::Organization::Projects::ProjectAPIKey::OwnerProjectAccess::TaggedSymbol,
98
112
  redacted_value: String
99
113
  }
100
114
  )
@@ -363,6 +377,41 @@ module OpenAI
363
377
  end
364
378
  end
365
379
  end
380
+
381
+ # Whether the API key's owner currently has effective access to the project.
382
+ module OwnerProjectAccess
383
+ extend OpenAI::Internal::Type::Enum
384
+
385
+ TaggedSymbol =
386
+ T.type_alias do
387
+ T.all(
388
+ Symbol,
389
+ OpenAI::Admin::Organization::Projects::ProjectAPIKey::OwnerProjectAccess
390
+ )
391
+ end
392
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
393
+
394
+ ACTIVE =
395
+ T.let(
396
+ :active,
397
+ OpenAI::Admin::Organization::Projects::ProjectAPIKey::OwnerProjectAccess::TaggedSymbol
398
+ )
399
+ INACTIVE =
400
+ T.let(
401
+ :inactive,
402
+ OpenAI::Admin::Organization::Projects::ProjectAPIKey::OwnerProjectAccess::TaggedSymbol
403
+ )
404
+
405
+ sig do
406
+ override.returns(
407
+ T::Array[
408
+ OpenAI::Admin::Organization::Projects::ProjectAPIKey::OwnerProjectAccess::TaggedSymbol
409
+ ]
410
+ )
411
+ end
412
+ def self.values
413
+ end
414
+ end
366
415
  end
367
416
  end
368
417
  end
@@ -32,7 +32,7 @@ module OpenAI
32
32
  sig { returns(Symbol) }
33
33
  attr_accessor :object
34
34
 
35
- # `owner` or `member`
35
+ # `owner`, `member`, or `none`
36
36
  sig do
37
37
  returns(
38
38
  OpenAI::Admin::Organization::Projects::ProjectServiceAccount::Role::TaggedSymbol
@@ -58,7 +58,7 @@ module OpenAI
58
58
  created_at:,
59
59
  # The name of the service account
60
60
  name:,
61
- # `owner` or `member`
61
+ # `owner`, `member`, or `none`
62
62
  role:,
63
63
  # The object type, which is always `organization.project.service_account`
64
64
  object: :"organization.project.service_account"
@@ -80,7 +80,7 @@ module OpenAI
80
80
  def to_hash
81
81
  end
82
82
 
83
- # `owner` or `member`
83
+ # `owner`, `member`, or `none`
84
84
  module Role
85
85
  extend OpenAI::Internal::Type::Enum
86
86
 
@@ -103,6 +103,11 @@ module OpenAI
103
103
  :member,
104
104
  OpenAI::Admin::Organization::Projects::ProjectServiceAccount::Role::TaggedSymbol
105
105
  )
106
+ NONE =
107
+ T.let(
108
+ :none,
109
+ OpenAI::Admin::Organization::Projects::ProjectServiceAccount::Role::TaggedSymbol
110
+ )
106
111
 
107
112
  sig do
108
113
  override.returns(
@@ -24,10 +24,15 @@ module OpenAI
24
24
  sig { returns(String) }
25
25
  attr_accessor :name
26
26
 
27
+ # Create the service account without default roles or an API key.
28
+ sig { returns(T.nilable(T::Boolean)) }
29
+ attr_accessor :create_service_account_only
30
+
27
31
  sig do
28
32
  params(
29
33
  project_id: String,
30
34
  name: String,
35
+ create_service_account_only: T.nilable(T::Boolean),
31
36
  request_options: OpenAI::RequestOptions::OrHash
32
37
  ).returns(T.attached_class)
33
38
  end
@@ -35,6 +40,8 @@ module OpenAI
35
40
  project_id:,
36
41
  # The name of the service account being created.
37
42
  name:,
43
+ # Create the service account without default roles or an API key.
44
+ create_service_account_only: nil,
38
45
  request_options: {}
39
46
  )
40
47
  end
@@ -44,6 +51,7 @@ module OpenAI
44
51
  {
45
52
  project_id: String,
46
53
  name: String,
54
+ create_service_account_only: T.nilable(T::Boolean),
47
55
  request_options: OpenAI::RequestOptions
48
56
  }
49
57
  )