async_openai/types/responses/
api.rs1use crate::error::OpenAIError;
2use derive_builder::Builder;
3use serde::{Deserialize, Serialize};
4
5use crate::types::responses::{IncludeParam, ListOrder};
6
7#[derive(Clone, Serialize, Default, Debug, Deserialize, Builder, PartialEq)]
9#[builder(name = "ListConversationItemsQueryArgs")]
10#[builder(pattern = "mutable")]
11#[builder(setter(into, strip_option), default)]
12#[builder(derive(Debug))]
13#[builder(build_fn(error = "OpenAIError"))]
14pub struct ListConversationItemsQuery {
15 #[serde(skip_serializing_if = "Option::is_none")]
17 pub limit: Option<u32>,
18 #[serde(skip_serializing_if = "Option::is_none")]
20 pub order: Option<ListOrder>,
21 #[serde(skip_serializing_if = "Option::is_none")]
23 pub after: Option<String>,
24 #[serde(skip_serializing_if = "Option::is_none")]
26 pub include: Option<Vec<IncludeParam>>,
27}
28
29#[derive(Debug, Clone, Serialize, Deserialize, PartialEq)]
31#[serde(rename_all = "lowercase")]
32pub enum ListInputItemsOrder {
33 Asc,
35 Desc,
37}
38
39#[derive(Debug, Serialize, Default, Clone, Builder, PartialEq)]
41#[builder(name = "GetResponseQueryArgs")]
42#[builder(pattern = "mutable")]
43#[builder(setter(into, strip_option), default)]
44#[builder(derive(Debug))]
45#[builder(build_fn(error = "OpenAIError"))]
46pub struct GetResponseQuery {
47 #[serde(skip_serializing_if = "Option::is_none")]
49 pub include: Option<Vec<String>>,
50 #[serde(skip_serializing_if = "Option::is_none")]
52 pub stream: Option<bool>,
53 #[serde(skip_serializing_if = "Option::is_none")]
55 pub starting_after: Option<u32>,
56 #[serde(skip_serializing_if = "Option::is_none")]
58 pub include_obfuscation: Option<bool>,
59}
60
61#[derive(Debug, Serialize, Default, Clone, Builder, PartialEq)]
63#[builder(name = "ListInputItemsQueryArgs")]
64#[builder(pattern = "mutable")]
65#[builder(setter(into, strip_option), default)]
66#[builder(derive(Debug))]
67#[builder(build_fn(error = "OpenAIError"))]
68pub struct ListInputItemsQuery {
69 #[serde(skip_serializing_if = "Option::is_none")]
71 pub limit: Option<u32>,
72 #[serde(skip_serializing_if = "Option::is_none")]
74 pub order: Option<ListInputItemsOrder>,
75 #[serde(skip_serializing_if = "Option::is_none")]
77 pub after: Option<String>,
78 #[serde(skip_serializing_if = "Option::is_none")]
80 pub include: Option<Vec<String>>,
81}
82
83#[derive(Debug, Serialize, Default, Clone, Builder, PartialEq)]
85#[builder(name = "GetConversationItemQueryArgs")]
86#[builder(pattern = "mutable")]
87#[builder(setter(into, strip_option), default)]
88#[builder(derive(Debug))]
89#[builder(build_fn(error = "OpenAIError"))]
90pub struct GetConversationItemQuery {
91 #[serde(skip_serializing_if = "Option::is_none")]
93 pub include: Option<Vec<IncludeParam>>,
94}
95
96#[derive(Debug, Serialize, Default, Clone, Builder, PartialEq)]
98#[builder(name = "CreateConversationItemsQueryArgs")]
99#[builder(pattern = "mutable")]
100#[builder(setter(into, strip_option), default)]
101#[builder(derive(Debug))]
102#[builder(build_fn(error = "OpenAIError"))]
103pub struct CreateConversationItemsQuery {
104 #[serde(skip_serializing_if = "Option::is_none")]
106 pub include: Option<Vec<IncludeParam>>,
107}