Skip to main content

async_openai/types/
mod.rs

1//! Types used in OpenAI API requests and responses.
2//! These types are created from component schemas in the [OpenAPI spec](https://github.com/openai/openai-openapi)
3#[cfg(feature = "administration-types")]
4pub mod admin;
5#[cfg(feature = "audio-types")]
6pub mod audio;
7#[cfg(feature = "batch-types")]
8pub mod batches;
9#[cfg(feature = "chat-completion-types")]
10pub mod chat;
11#[cfg(feature = "chatkit-types")]
12pub mod chatkit;
13#[cfg(feature = "completion-types")]
14pub mod completions;
15#[cfg(feature = "container-types")]
16pub mod containers;
17#[cfg(feature = "embedding-types")]
18pub mod embeddings;
19#[cfg(feature = "eval-types")]
20pub mod evals;
21#[cfg(feature = "file-types")]
22pub mod files;
23#[cfg(feature = "finetuning-types")]
24pub mod finetuning;
25#[cfg(feature = "grader-types")]
26pub mod graders;
27#[cfg(feature = "image-types")]
28pub mod images;
29#[cfg(any(
30    feature = "content-provenance-checks-types",
31    feature = "audio-types",
32    feature = "file-types",
33    feature = "upload-types",
34    feature = "image-types",
35    feature = "video-types",
36    feature = "container-types",
37    feature = "skill-types",
38    feature = "chat-completion-types",
39    feature = "realtime-types"
40))]
41mod input_source;
42#[cfg(any(feature = "response-types", feature = "realtime-types"))]
43pub mod mcp;
44#[cfg(any(
45    feature = "response-types",
46    feature = "audio-types",
47    feature = "video-types",
48    feature = "image-types",
49    feature = "batch-types",
50    feature = "file-types",
51    feature = "upload-types",
52    feature = "vectorstore-types",
53    feature = "container-types",
54    feature = "chat-completion-types",
55    feature = "realtime-types"
56))]
57mod metadata;
58#[cfg(feature = "model-types")]
59pub mod models;
60#[cfg(feature = "moderation-types")]
61pub mod moderations;
62#[cfg_attr(docsrs, doc(cfg(feature = "realtime-types")))]
63#[cfg(feature = "realtime-types")]
64pub mod realtime;
65#[cfg(feature = "response-types")]
66pub mod responses;
67pub(crate) mod shared;
68#[cfg(feature = "skill-types")]
69pub mod skills;
70#[cfg(feature = "_api")]
71pub mod stream;
72#[cfg(feature = "upload-types")]
73pub mod uploads;
74#[cfg(feature = "vectorstore-types")]
75pub mod vectorstores;
76#[cfg(feature = "video-types")]
77pub mod videos;
78#[cfg_attr(docsrs, doc(cfg(feature = "webhook-types")))]
79#[cfg(feature = "webhook-types")]
80pub mod webhooks;
81
82#[cfg(any(
83    feature = "content-provenance-checks-types",
84    feature = "audio-types",
85    feature = "file-types",
86    feature = "upload-types",
87    feature = "image-types",
88    feature = "video-types",
89    feature = "container-types",
90    feature = "skill-types",
91    feature = "chat-completion-types",
92    feature = "realtime-types"
93))]
94pub use input_source::*;
95
96#[cfg(any(
97    feature = "audio-types",
98    feature = "batch-types",
99    feature = "file-types",
100    feature = "upload-types",
101    feature = "image-types",
102    feature = "video-types",
103    feature = "vectorstore-types",
104    feature = "container-types",
105    feature = "response-types",
106    feature = "chat-completion-types",
107    feature = "realtime-types"
108))]
109pub use metadata::*;
110
111#[cfg(any(
112    feature = "audio-types",
113    feature = "file-types",
114    feature = "image-types",
115    feature = "chat-completion-types",
116    feature = "completion-types",
117    feature = "embedding-types",
118    feature = "moderation-types",
119    feature = "video-types"
120))]
121mod impls;
122
123#[cfg(any(
124    feature = "response-types",
125    feature = "audio-types",
126    feature = "file-types",
127    feature = "image-types",
128    feature = "chat-completion-types",
129    feature = "completion-types",
130    feature = "embedding-types",
131    feature = "moderation-types",
132    feature = "administration-types",
133))]
134impl From<derive_builder::UninitializedFieldError> for crate::error::OpenAIError {
135    fn from(value: derive_builder::UninitializedFieldError) -> Self {
136        crate::error::OpenAIError::InvalidArgument(value.to_string())
137    }
138}
139
140#[cfg(feature = "safety-types")]
141pub mod safety;
142
143#[cfg(feature = "content-provenance-checks-types")]
144pub mod content_provenance_checks;