async_openai/types/admin/
certificates.rs1use crate::error::OpenAIError;
2use derive_builder::Builder;
3use serde::{Deserialize, Serialize};
4
5#[derive(Debug, Serialize, Deserialize, Clone, PartialEq)]
7pub struct Certificate {
8 pub object: String,
10 pub id: String,
12 pub name: String,
14 pub created_at: u64,
16 pub certificate_details: CertificateDetails,
18 #[serde(skip_serializing_if = "Option::is_none")]
21 pub active: Option<bool>,
22}
23
24#[derive(Debug, Serialize, Deserialize, Clone, PartialEq)]
26pub struct CertificateDetails {
27 pub valid_at: u64,
29 pub expires_at: u64,
31 #[serde(skip_serializing_if = "Option::is_none")]
34 pub content: Option<String>,
35}
36
37#[derive(Debug, Serialize, Deserialize, Clone, PartialEq)]
39pub struct ListCertificatesResponse {
40 pub object: String,
42 pub data: Vec<Certificate>,
44 #[serde(skip_serializing_if = "Option::is_none")]
46 pub first_id: Option<String>,
47 #[serde(skip_serializing_if = "Option::is_none")]
49 pub last_id: Option<String>,
50 pub has_more: bool,
52}
53
54#[derive(Debug, Serialize, Deserialize, Builder, Clone, PartialEq)]
56#[builder(name = "UploadCertificateRequestArgs")]
57#[builder(pattern = "mutable")]
58#[builder(setter(into, strip_option))]
59#[builder(derive(Debug))]
60#[builder(build_fn(error = "OpenAIError"))]
61pub struct UploadCertificateRequest {
62 #[serde(skip_serializing_if = "Option::is_none")]
64 pub name: Option<String>,
65 pub content: String,
67}
68
69#[derive(Debug, Serialize, Deserialize, Builder, Clone, PartialEq)]
71#[builder(name = "ModifyCertificateRequestArgs")]
72#[builder(pattern = "mutable")]
73#[builder(setter(into, strip_option))]
74#[builder(derive(Debug))]
75#[builder(build_fn(error = "OpenAIError"))]
76pub struct ModifyCertificateRequest {
77 pub name: String,
79}
80
81#[derive(Debug, Serialize, Deserialize, Builder, Clone, PartialEq)]
83#[builder(name = "ToggleCertificatesRequestArgs")]
84#[builder(pattern = "mutable")]
85#[builder(setter(into, strip_option))]
86#[builder(derive(Debug))]
87#[builder(build_fn(error = "OpenAIError"))]
88pub struct ToggleCertificatesRequest {
89 pub certificate_ids: Vec<String>,
91}
92
93#[derive(Debug, Serialize, Deserialize, Clone, PartialEq)]
95pub struct DeleteCertificateResponse {
96 pub object: String,
98 pub id: String,
100}