#![cfg(feature = "cloudflare_certificates")]
#![allow(clippy::too_many_arguments, clippy::type_complexity)]
#![allow(
clippy::missing_errors_doc,
clippy::doc_markdown,
clippy::useless_format
)]
#![allow(unused_imports)]
use foundation_macros::JsonHash;
use foundation_netio::shared::client::http_client::HttpClient;
use foundation_netio::{DynNetClient, PreparedRequestBuilder};
use serde::{Deserialize, Serialize};
use super::shared::ApiResponse;
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct MTlsCertificateManagementUploadMTlsCertificateRequest {
pub ca: bool,
pub certificates: String,
pub name: Option<String>,
pub private_key: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct OriginCaCreateCertificateRequest {
pub csr: String,
pub hostnames: Vec<String>,
pub request_type: String,
pub requested_validity: Option<f64>,
}
pub type TlsCertificatesAndHostnamesApiResponseCollection =
super::shared::AddressingApiResponseCollectionShape;
pub type TlsCertificatesAndHostnamesApiResponseCommon = super::shared::ErrorsMessagesSuccessObject;
pub type TlsCertificatesAndHostnamesApiResponseSingle = super::shared::ErrorsMessagesSuccessObject;
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct TlsCertificatesAndHostnamesAssociationObject {
pub service: Option<String>,
pub status: Option<String>,
}
pub type TlsCertificatesAndHostnamesAssociationResponseCollection =
super::shared::ApiEnvelopeErrorsMessagesResultInfoSuccess<
Option<Vec<TlsCertificatesAndHostnamesAssociationObject>>,
>;
pub type TlsCertificatesAndHostnamesCa = bool;
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct TlsCertificatesAndHostnamesCertificateObjectPost {
pub ca: Option<bool>,
pub certificates: Option<String>,
pub expires_on: Option<String>,
pub id: Option<String>,
pub issuer: Option<String>,
pub name: Option<String>,
pub serial_number: Option<String>,
pub signature: Option<String>,
pub updated_at: Option<String>,
pub uploaded_on: Option<String>,
}
pub type TlsCertificatesAndHostnamesCertificateResponseSinglePost =
super::shared::ApiEnvelope<Option<serde_json::Value>>;
pub type TlsCertificatesAndHostnamesCertificateRevokeResponse = super::shared::ResultObject;
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct TlsCertificatesAndHostnamesCertificates {
pub certificate: Option<String>,
pub csr: String,
pub expires_on: Option<String>,
pub hostnames: Vec<String>,
pub id: Option<String>,
pub request_type: String,
pub requested_validity: f64,
}
pub type TlsCertificatesAndHostnamesCertificatesComponentsSchemasCertificate = String;
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct TlsCertificatesAndHostnamesComponentsSchemasCertificateObject {
pub ca: Option<bool>,
pub certificates: Option<String>,
pub expires_on: Option<String>,
pub id: Option<String>,
pub issuer: Option<String>,
pub name: Option<String>,
pub serial_number: Option<String>,
pub signature: Option<String>,
pub uploaded_on: Option<String>,
}
pub type TlsCertificatesAndHostnamesComponentsSchemasExpiresOn = String;
pub type TlsCertificatesAndHostnamesComponentsSchemasPrivateKey = String;
pub type TlsCertificatesAndHostnamesCsr = String;
pub type TlsCertificatesAndHostnamesHostnames = Vec<String>;
pub type TlsCertificatesAndHostnamesIdentifier = String;
pub type TlsCertificatesAndHostnamesMessages =
Vec<std::collections::HashMap<String, serde_json::Value>>;
pub type TlsCertificatesAndHostnamesMtlsManagementComponentsSchemasCertificateResponseCollection =
super::shared::ApiEnvelopeErrorsMessagesResultInfoSuccess<
Option<Vec<TlsCertificatesAndHostnamesComponentsSchemasCertificateObject>>,
>;
pub type TlsCertificatesAndHostnamesMtlsManagementComponentsSchemasCertificateResponseSingle =
super::shared::ApiEnvelope<Option<serde_json::Value>>;
pub type TlsCertificatesAndHostnamesMtlsManagementComponentsSchemasStatus = String;
pub type TlsCertificatesAndHostnamesMtlsManagementComponentsSchemasUpdatedAt = String;
pub type TlsCertificatesAndHostnamesMtlsManagementComponentsSchemasUploadedOn = String;
pub type TlsCertificatesAndHostnamesRequestType = String;
pub type TlsCertificatesAndHostnamesRequestedValidity = f64;
pub type TlsCertificatesAndHostnamesSchemasCertificateResponseCollection =
super::shared::ApiEnvelopeErrorsMessagesResultInfoSuccess<
Option<Vec<TlsCertificatesAndHostnamesCertificates>>,
>;
pub type TlsCertificatesAndHostnamesSchemasCertificateResponseSingle =
super::shared::ApiEnvelope<Option<TlsCertificatesAndHostnamesCertificates>>;
pub type TlsCertificatesAndHostnamesSchemasCertificates = String;
pub type TlsCertificatesAndHostnamesSchemasExpiresOn = String;
pub type TlsCertificatesAndHostnamesSchemasIssuer = String;
pub type TlsCertificatesAndHostnamesSchemasName = String;
pub type TlsCertificatesAndHostnamesSchemasSerialNumber = String;
pub type TlsCertificatesAndHostnamesService = String;
pub type TlsCertificatesAndHostnamesSignature = String;
pub type MTlsCertificateManagementListMTlsCertificatesArgs = super::shared::AccountIdArgs;
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct MTlsCertificateManagementUploadMTlsCertificateArgs {
pub account_id: String,
pub body: MTlsCertificateManagementUploadMTlsCertificateRequest,
}
pub type MTlsCertificateManagementGetMTlsCertificateArgs =
super::shared::MtlsCertificateIdAccountIdArgs;
pub type MTlsCertificateManagementDeleteMTlsCertificateArgs =
super::shared::MtlsCertificateIdAccountIdArgs;
pub type MTlsCertificateManagementListMTlsCertificateAssociationsArgs =
super::shared::MtlsCertificateIdAccountIdArgs;
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct OriginCaListCertificatesArgs {
pub zone_id: Option<String>,
pub page: Option<String>,
pub per_page: Option<String>,
pub limit: Option<String>,
pub offset: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct OriginCaCreateCertificateArgs {
pub body: OriginCaCreateCertificateRequest,
}
pub type OriginCaGetCertificateArgs = super::shared::CertificateIdArgs;
pub type OriginCaRevokeCertificateArgs = super::shared::CertificateIdArgs;
pub async fn m_tls_certificate_management_list_m_tls_certificates_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &MTlsCertificateManagementListMTlsCertificatesArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<
ApiResponse<
TlsCertificatesAndHostnamesMtlsManagementComponentsSchemasCertificateResponseCollection,
>,
super::shared::ApiError,
>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/mtls_certificates", args.account_id,);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::get(&endpoint_url)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn m_tls_certificate_management_upload_m_tls_certificate_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &MTlsCertificateManagementUploadMTlsCertificateArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<
ApiResponse<TlsCertificatesAndHostnamesCertificateResponseSinglePost>,
super::shared::ApiError,
>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/mtls_certificates", args.account_id,);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::post(&endpoint_url)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
builder = builder
.body_json(&args.body)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn m_tls_certificate_management_get_m_tls_certificate_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &MTlsCertificateManagementGetMTlsCertificateArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<
ApiResponse<
TlsCertificatesAndHostnamesMtlsManagementComponentsSchemasCertificateResponseSingle,
>,
super::shared::ApiError,
>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/mtls_certificates/{}",
args.account_id, args.mtls_certificate_id,
);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::get(&endpoint_url)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn m_tls_certificate_management_delete_m_tls_certificate_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &MTlsCertificateManagementDeleteMTlsCertificateArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<
ApiResponse<
TlsCertificatesAndHostnamesMtlsManagementComponentsSchemasCertificateResponseSingle,
>,
super::shared::ApiError,
>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/mtls_certificates/{}",
args.account_id, args.mtls_certificate_id,
);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::delete(&endpoint_url)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn m_tls_certificate_management_list_m_tls_certificate_associations_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &MTlsCertificateManagementListMTlsCertificateAssociationsArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<
ApiResponse<TlsCertificatesAndHostnamesAssociationResponseCollection>,
super::shared::ApiError,
>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/mtls_certificates/{}/associations",
args.account_id, args.mtls_certificate_id,
);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::get(&endpoint_url)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn origin_ca_list_certificates_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &OriginCaListCertificatesArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<
ApiResponse<TlsCertificatesAndHostnamesSchemasCertificateResponseCollection>,
super::shared::ApiError,
>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/certificates",);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::get(&endpoint_url)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
builder = builder.query("zone_id", args.zone_id.as_deref());
builder = builder.query("page", args.page.as_deref());
builder = builder.query("per_page", args.per_page.as_deref());
builder = builder.query("limit", args.limit.as_deref());
builder = builder.query("offset", args.offset.as_deref());
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn origin_ca_create_certificate_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &OriginCaCreateCertificateArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<
ApiResponse<TlsCertificatesAndHostnamesSchemasCertificateResponseSingle>,
super::shared::ApiError,
>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/certificates",);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::post(&endpoint_url)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
builder = builder
.body_json(&args.body)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn origin_ca_get_certificate_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &OriginCaGetCertificateArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<
ApiResponse<TlsCertificatesAndHostnamesSchemasCertificateResponseSingle>,
super::shared::ApiError,
>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/certificates/{}", args.certificate_id,);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::get(&endpoint_url)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn origin_ca_revoke_certificate_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &OriginCaRevokeCertificateArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<
ApiResponse<TlsCertificatesAndHostnamesCertificateRevokeResponse>,
super::shared::ApiError,
>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/certificates/{}", args.certificate_id,);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::delete(&endpoint_url)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}