Skip to main content

async_openai/admin/
organization_data_retention.rs

1use crate::{
2    config::Config,
3    error::OpenAIError,
4    types::admin::organization_data_retention::{
5        OrganizationDataRetention, UpdateOrganizationDataRetentionBody,
6    },
7    Client, RequestOptions,
8};
9
10pub struct OrganizationDataRetentions<'c, C: Config> {
11    client: &'c Client<C>,
12    pub(crate) request_options: RequestOptions,
13}
14impl<'c, C: Config> OrganizationDataRetentions<'c, C> {
15    pub fn new(client: &'c Client<C>) -> Self {
16        Self {
17            client,
18            request_options: RequestOptions::new(),
19        }
20    }
21    /// Retrieves organization data retention controls.
22    pub async fn retrieve(&self) -> Result<OrganizationDataRetention, OpenAIError> {
23        self.client
24            .get("/organization/data_retention", &self.request_options)
25            .await
26    }
27
28    /// Updates organization data retention controls.
29    pub async fn update(
30        &self,
31        request: UpdateOrganizationDataRetentionBody,
32    ) -> Result<OrganizationDataRetention, OpenAIError> {
33        self.client
34            .post(
35                "/organization/data_retention",
36                request,
37                &self.request_options,
38            )
39            .await
40    }
41}