#![cfg(feature = "cloudflare_domains")]
#![allow(clippy::too_many_arguments, clippy::type_complexity)]
#![allow(clippy::missing_errors_doc, clippy::doc_markdown, clippy::useless_format)]
#![allow(unused_imports)]
use foundation_netio::{DynNetClient, PreparedRequestBuilder};
use foundation_netio::shared::client::http_client::HttpClient;
use serde::{Deserialize, Serialize};
use foundation_macros::JsonHash;
use super::shared::ApiResponse;
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityApiResponseCommon {
pub errors: Vec<EmailSecurityMessage>,
pub messages: Vec<EmailSecurityMessage>,
pub success: bool,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityBatchSendingDomainRestrictionsRequest {
pub deletes: Vec<EmailSecurityBatchSendingDomainRestrictionsRequestDeletesItem>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityBatchSendingDomainRestrictionsRequestDeletesItem {
pub id: i64,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityBatchSendingDomainRestrictionsResponse {
pub result: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityBatchTrustedDomainsRequest {
pub deletes: Vec<EmailSecurityBatchTrustedDomainsRequestDeletesItem>,
pub patches: Vec<serde_json::Value>,
pub posts: Vec<EmailSecurityCreateTrustedDomain>,
pub puts: Vec<serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityBatchTrustedDomainsRequestDeletesItem {
pub id: i64,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityBatchTrustedDomainsResponse {
pub result: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityCreateTrustedDomain {
pub comments: Option<String>,
pub is_recent: bool,
pub is_regex: bool,
pub is_similarity: bool,
pub pattern: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityCreateTrustedDomainRequest {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityCreateTrustedDomainResponse {
pub result: serde_json::Value,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityDeleteDomainResponse {
pub result: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityDeleteDomainsRequestItem {
pub id: i64,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityDeleteDomainsResponse {
pub result: Vec<std::collections::HashMap<String, serde_json::Value>>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityDeleteTrustedDomainResponse {
pub result: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityDeliveryMode {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityDispositionLabel {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityDomain {
pub allowed_delivery_modes: Vec<EmailSecurityDeliveryMode>,
pub authorization: Option<serde_json::Value>,
pub created_at: String,
pub dmarc_status: Option<serde_json::Value>,
pub domain: String,
pub drop_dispositions: Vec<EmailSecurityDispositionLabel>,
pub emails_processed: Option<serde_json::Value>,
pub folder: Option<serde_json::Value>,
pub id: i64,
pub inbox_provider: Option<serde_json::Value>,
pub integration_id: Option<String>,
pub ip_restrictions: Vec<String>,
pub last_modified: String,
pub lookback_hops: i64,
pub o365_tenant_id: Option<String>,
pub regions: Vec<String>,
pub require_tls_inbound: Option<bool>,
pub require_tls_outbound: Option<bool>,
pub spf_status: Option<serde_json::Value>,
pub transport: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityGetDomainResponse {
pub result: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityGetTrustedDomainResponse {
pub result: serde_json::Value,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityListDomainsResponse {
pub result: Vec<EmailSecurityDomain>,
pub result_info: EmailSecurityResultInfo,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityListTrustedDomainsResponse {
pub result: Vec<EmailSecurityTrustedDomain>,
pub result_info: EmailSecurityResultInfo,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityMessage {
pub code: i64,
pub message: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityResultInfo {
pub count: i64,
pub page: i64,
pub per_page: i64,
pub total_count: i64,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityTrustedDomain {
pub comments: Option<String>,
pub created_at: String,
pub id: i64,
pub is_recent: bool,
pub is_regex: bool,
pub is_similarity: bool,
pub last_modified: String,
pub pattern: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityTrustedDomainId {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityUpdateDomainRequest {
pub allowed_delivery_modes: Option<Vec<EmailSecurityDeliveryMode>>,
pub domain: Option<String>,
pub drop_dispositions: Option<Vec<EmailSecurityDispositionLabel>>,
pub folder: Option<serde_json::Value>,
pub integration_id: Option<String>,
pub ip_restrictions: Vec<String>,
pub lookback_hops: Option<i64>,
pub regions: Option<Vec<String>>,
pub require_tls_inbound: Option<bool>,
pub require_tls_outbound: Option<bool>,
pub transport: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityUpdateDomainResponse {
pub result: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityUpdateTrustedDomain {
pub comments: Option<String>,
pub is_recent: Option<bool>,
pub is_regex: Option<bool>,
pub is_similarity: Option<bool>,
pub pattern: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityUpdateTrustedDomainRequest {
pub comments: Option<String>,
pub is_recent: Option<bool>,
pub is_regex: Option<bool>,
pub is_similarity: Option<bool>,
pub pattern: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityUpdateTrustedDomainResponse {
pub result: serde_json::Value,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct GetDomainMatchListResponse {
pub matches: Vec<GetDomainMatchListResponseMatchesItem>,
pub total: i64,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct GetDomainMatchListResponseMatchesItem {
pub dismissed: bool,
pub domain: String,
pub first_seen: String,
pub match_ids: Option<Vec<i64>>,
pub matched_queries: Option<Vec<i64>>,
pub public_scans: Option<GetDomainMatchListResponseMatchesItemPublicScans>,
pub scan_status: String,
pub scan_submission_id: Option<i64>,
pub source: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct GetDomainMatchListResponseMatchesItemPublicScans {
pub submission_id: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct IntelAdditionalInformation {
pub suspected_malware_family: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct IntelApiResponseCollection {
pub result: Option<Vec<serde_json::Value>>,
pub result_info: Option<IntelResultInfo>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct IntelApiResponseCommon {
pub errors: Vec<std::collections::HashMap<String, serde_json::Value>>,
pub messages: Vec<std::collections::HashMap<String, serde_json::Value>>,
pub result: serde_json::Value,
pub success: bool,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct IntelApiResponseSingle {
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct IntelApplication {
pub id: Option<i64>,
pub name: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct IntelCategoriesWithSuperCategoryIdsExampleEmpty {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct IntelCategoryWithSuperCategoryId {
pub id: Option<i64>,
pub name: Option<String>,
pub super_category_id: Option<i64>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct IntelCollectionResponse {
pub result: Option<Vec<std::collections::HashMap<String, serde_json::Value>>>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct IntelContentCategories {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct IntelDomain {
pub additional_information: Option<IntelAdditionalInformation>,
pub application: Option<IntelApplication>,
pub content_categories: Option<Vec<std::collections::HashMap<String, serde_json::Value>>>,
pub domain: Option<IntelDomainName>,
pub inherited_content_categories: Option<IntelInheritedContentCategories>,
pub inherited_from: Option<IntelInheritedFrom>,
pub inherited_risk_types: Option<IntelInheritedRiskTypes>,
pub popularity_rank: Option<IntelPopularityRank>,
pub resolves_to_refs: Option<Vec<IntelResolvesToRef>>,
pub risk_score: Option<IntelRiskScore>,
pub risk_types: Option<IntelRiskTypes>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct IntelDomainHistory {
pub categorizations: Option<Vec<std::collections::HashMap<String, serde_json::Value>>>,
pub domain: Option<IntelDomainName>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct IntelDomainName {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct IntelInheritedContentCategories {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct IntelInheritedFrom {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct IntelInheritedRiskTypes {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct IntelMessages {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct IntelPopularityRank {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct IntelResolvesToRef {
pub id: Option<IntelStixIdentifier>,
pub value: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct IntelResolvesToRefs {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct IntelResponse {
pub result: Option<Vec<IntelDomainHistory>>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct IntelResultInfo {
pub count: Option<f64>,
pub page: Option<f64>,
pub per_page: Option<f64>,
pub total_count: Option<f64>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct IntelRiskScore {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct IntelRiskTypes {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct IntelSchemasApiResponseCommon {
pub errors: Vec<std::collections::HashMap<String, serde_json::Value>>,
pub messages: Vec<std::collections::HashMap<String, serde_json::Value>>,
pub success: bool,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct IntelSchemasMessages {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct IntelSingleResponse {
pub result: Option<IntelDomain>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct IntelStixIdentifier {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct R2AddCustomDomainRequest {
pub ciphers: Option<Vec<String>>,
pub domain: String,
pub enabled: bool,
#[serde(rename = "minTLS")]
pub min_tls: Option<String>,
#[serde(rename = "zoneId")]
pub zone_id: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct R2AddCustomDomainResponse {
pub ciphers: Option<Vec<String>>,
pub domain: String,
pub enabled: bool,
#[serde(rename = "minTLS")]
pub min_tls: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct R2AddCustomDomainResponse2 {
pub result: Option<R2AddCustomDomainResponse>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct R2DeleteCustomDomainResponse {
pub result: Option<R2RemoveCustomDomainResponse>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct R2EditCustomDomainRequest {
pub ciphers: Option<Vec<String>>,
pub enabled: Option<bool>,
#[serde(rename = "minTLS")]
pub min_tls: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct R2EditCustomDomainSettingsResponse {
pub result: Option<serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct R2EditManagedDomainRequest {
pub enabled: bool,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct R2Errors {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct R2GetBucketPublicPolicyResponse {
pub result: Option<R2ManagedDomainResponse>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct R2GetCustomDomainSettingsResponse {
pub result: Option<serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct R2ListCustomDomainsResponse {
pub domains: Vec<std::collections::HashMap<String, serde_json::Value>>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct R2ListCustomDomainsResponse2 {
pub result: Option<R2ListCustomDomainsResponse>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct R2ManagedDomainResponse {
#[serde(rename = "bucketId")]
pub bucket_id: String,
pub domain: String,
pub enabled: bool,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct R2Messages {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct R2PutBucketPublicPolicyResponse {
pub result: Option<R2ManagedDomainResponse>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct R2RemoveCustomDomainResponse {
pub domain: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct R2V4Response {
pub errors: Vec<std::collections::HashMap<String, serde_json::Value>>,
pub messages: Vec<String>,
pub result: serde_json::Value,
pub success: bool,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailSecurityTopTldsByMaliciousResponse {
pub result: RadarGetEmailSecurityTopTldsByMaliciousResponseResult,
pub success: bool,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailSecurityTopTldsByMaliciousResponseResult {
pub meta: RadarGetEmailSecurityTopTldsByMaliciousResponseResultMeta,
pub top_0: Vec<RadarGetEmailSecurityTopTldsByMaliciousResponseResultTop0Item>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailSecurityTopTldsByMaliciousResponseResultMeta {
#[serde(rename = "confidenceInfo")]
pub confidence_info: Option<RadarGetEmailSecurityTopTldsByMaliciousResponseResultMetaConfidenceInfo>,
#[serde(rename = "dateRange")]
pub date_range: Vec<RadarGetEmailSecurityTopTldsByMaliciousResponseResultMetaDateRangeItem>,
#[serde(rename = "lastUpdated")]
pub last_updated: String,
pub normalization: String,
pub units: Vec<RadarGetEmailSecurityTopTldsByMaliciousResponseResultMetaUnitsItem>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailSecurityTopTldsByMaliciousResponseResultMetaConfidenceInfo {
pub annotations: Vec<RadarGetEmailSecurityTopTldsByMaliciousResponseResultMetaConfidenceInfoAnnotationsItem>,
pub level: i64,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailSecurityTopTldsByMaliciousResponseResultMetaConfidenceInfoAnnotationsItem {
#[serde(rename = "dataSource")]
pub data_source: String,
pub description: String,
#[serde(rename = "endDate")]
pub end_date: String,
#[serde(rename = "eventType")]
pub event_type: String,
#[serde(rename = "isInstantaneous")]
pub is_instantaneous: bool,
#[serde(rename = "linkedUrl")]
pub linked_url: String,
#[serde(rename = "startDate")]
pub start_date: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailSecurityTopTldsByMaliciousResponseResultMetaDateRangeItem {
#[serde(rename = "endTime")]
pub end_time: String,
#[serde(rename = "startTime")]
pub start_time: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailSecurityTopTldsByMaliciousResponseResultMetaUnitsItem {
pub name: String,
pub value: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailSecurityTopTldsByMaliciousResponseResultTop0Item {
pub name: String,
pub value: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailSecurityTopTldsByMessagesResponse {
pub result: RadarGetEmailSecurityTopTldsByMessagesResponseResult,
pub success: bool,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailSecurityTopTldsByMessagesResponseResult {
pub meta: RadarGetEmailSecurityTopTldsByMessagesResponseResultMeta,
pub top_0: Vec<RadarGetEmailSecurityTopTldsByMessagesResponseResultTop0Item>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailSecurityTopTldsByMessagesResponseResultMeta {
#[serde(rename = "confidenceInfo")]
pub confidence_info: Option<RadarGetEmailSecurityTopTldsByMessagesResponseResultMetaConfidenceInfo>,
#[serde(rename = "dateRange")]
pub date_range: Vec<RadarGetEmailSecurityTopTldsByMessagesResponseResultMetaDateRangeItem>,
#[serde(rename = "lastUpdated")]
pub last_updated: String,
pub normalization: String,
pub units: Vec<RadarGetEmailSecurityTopTldsByMessagesResponseResultMetaUnitsItem>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailSecurityTopTldsByMessagesResponseResultMetaConfidenceInfo {
pub annotations: Vec<RadarGetEmailSecurityTopTldsByMessagesResponseResultMetaConfidenceInfoAnnotationsItem>,
pub level: i64,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailSecurityTopTldsByMessagesResponseResultMetaConfidenceInfoAnnotationsItem {
#[serde(rename = "dataSource")]
pub data_source: String,
pub description: String,
#[serde(rename = "endDate")]
pub end_date: String,
#[serde(rename = "eventType")]
pub event_type: String,
#[serde(rename = "isInstantaneous")]
pub is_instantaneous: bool,
#[serde(rename = "linkedUrl")]
pub linked_url: String,
#[serde(rename = "startDate")]
pub start_date: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailSecurityTopTldsByMessagesResponseResultMetaDateRangeItem {
#[serde(rename = "endTime")]
pub end_time: String,
#[serde(rename = "startTime")]
pub start_time: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailSecurityTopTldsByMessagesResponseResultMetaUnitsItem {
pub name: String,
pub value: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailSecurityTopTldsByMessagesResponseResultTop0Item {
pub name: String,
pub value: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailSecurityTopTldsBySpamResponse {
pub result: RadarGetEmailSecurityTopTldsBySpamResponseResult,
pub success: bool,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailSecurityTopTldsBySpamResponseResult {
pub meta: RadarGetEmailSecurityTopTldsBySpamResponseResultMeta,
pub top_0: Vec<RadarGetEmailSecurityTopTldsBySpamResponseResultTop0Item>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailSecurityTopTldsBySpamResponseResultMeta {
#[serde(rename = "confidenceInfo")]
pub confidence_info: Option<RadarGetEmailSecurityTopTldsBySpamResponseResultMetaConfidenceInfo>,
#[serde(rename = "dateRange")]
pub date_range: Vec<RadarGetEmailSecurityTopTldsBySpamResponseResultMetaDateRangeItem>,
#[serde(rename = "lastUpdated")]
pub last_updated: String,
pub normalization: String,
pub units: Vec<RadarGetEmailSecurityTopTldsBySpamResponseResultMetaUnitsItem>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailSecurityTopTldsBySpamResponseResultMetaConfidenceInfo {
pub annotations: Vec<RadarGetEmailSecurityTopTldsBySpamResponseResultMetaConfidenceInfoAnnotationsItem>,
pub level: i64,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailSecurityTopTldsBySpamResponseResultMetaConfidenceInfoAnnotationsItem {
#[serde(rename = "dataSource")]
pub data_source: String,
pub description: String,
#[serde(rename = "endDate")]
pub end_date: String,
#[serde(rename = "eventType")]
pub event_type: String,
#[serde(rename = "isInstantaneous")]
pub is_instantaneous: bool,
#[serde(rename = "linkedUrl")]
pub linked_url: String,
#[serde(rename = "startDate")]
pub start_date: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailSecurityTopTldsBySpamResponseResultMetaDateRangeItem {
#[serde(rename = "endTime")]
pub end_time: String,
#[serde(rename = "startTime")]
pub start_time: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailSecurityTopTldsBySpamResponseResultMetaUnitsItem {
pub name: String,
pub value: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailSecurityTopTldsBySpamResponseResultTop0Item {
pub name: String,
pub value: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailSecurityTopTldsBySpoofResponse {
pub result: RadarGetEmailSecurityTopTldsBySpoofResponseResult,
pub success: bool,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailSecurityTopTldsBySpoofResponseResult {
pub meta: RadarGetEmailSecurityTopTldsBySpoofResponseResultMeta,
pub top_0: Vec<RadarGetEmailSecurityTopTldsBySpoofResponseResultTop0Item>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailSecurityTopTldsBySpoofResponseResultMeta {
#[serde(rename = "confidenceInfo")]
pub confidence_info: Option<RadarGetEmailSecurityTopTldsBySpoofResponseResultMetaConfidenceInfo>,
#[serde(rename = "dateRange")]
pub date_range: Vec<RadarGetEmailSecurityTopTldsBySpoofResponseResultMetaDateRangeItem>,
#[serde(rename = "lastUpdated")]
pub last_updated: String,
pub normalization: String,
pub units: Vec<RadarGetEmailSecurityTopTldsBySpoofResponseResultMetaUnitsItem>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailSecurityTopTldsBySpoofResponseResultMetaConfidenceInfo {
pub annotations: Vec<RadarGetEmailSecurityTopTldsBySpoofResponseResultMetaConfidenceInfoAnnotationsItem>,
pub level: i64,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailSecurityTopTldsBySpoofResponseResultMetaConfidenceInfoAnnotationsItem {
#[serde(rename = "dataSource")]
pub data_source: String,
pub description: String,
#[serde(rename = "endDate")]
pub end_date: String,
#[serde(rename = "eventType")]
pub event_type: String,
#[serde(rename = "isInstantaneous")]
pub is_instantaneous: bool,
#[serde(rename = "linkedUrl")]
pub linked_url: String,
#[serde(rename = "startDate")]
pub start_date: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailSecurityTopTldsBySpoofResponseResultMetaDateRangeItem {
#[serde(rename = "endTime")]
pub end_time: String,
#[serde(rename = "startTime")]
pub start_time: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailSecurityTopTldsBySpoofResponseResultMetaUnitsItem {
pub name: String,
pub value: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailSecurityTopTldsBySpoofResponseResultTop0Item {
pub name: String,
pub value: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetRankingDomainDetailsResponse {
pub result: RadarGetRankingDomainDetailsResponseResult,
pub success: bool,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetRankingDomainDetailsResponseResult {
pub details_0: RadarGetRankingDomainDetailsResponseResultDetails0,
pub meta: RadarGetRankingDomainDetailsResponseResultMeta,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetRankingDomainDetailsResponseResultDetails0 {
pub bucket: Option<String>,
pub categories: Vec<RadarGetRankingDomainDetailsResponseResultDetails0CategoriesItem>,
pub rank: Option<i64>,
pub top_locations: Option<Vec<RadarGetRankingDomainDetailsResponseResultDetails0TopLocationsItem>>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetRankingDomainDetailsResponseResultDetails0CategoriesItem {
pub id: i64,
pub name: String,
#[serde(rename = "superCategoryId")]
pub super_category_id: i64,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetRankingDomainDetailsResponseResultDetails0TopLocationsItem {
#[serde(rename = "locationCode")]
pub location_code: String,
#[serde(rename = "locationName")]
pub location_name: String,
pub rank: i64,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetRankingDomainDetailsResponseResultMeta {
#[serde(rename = "dateRange")]
pub date_range: Vec<RadarGetRankingDomainDetailsResponseResultMetaDateRangeItem>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetRankingDomainDetailsResponseResultMetaDateRangeItem {
#[serde(rename = "endTime")]
pub end_time: String,
#[serde(rename = "startTime")]
pub start_time: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetRankingDomainTimeseriesResponse {
pub result: RadarGetRankingDomainTimeseriesResponseResult,
pub success: bool,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetRankingDomainTimeseriesResponseResult {
pub meta: RadarGetRankingDomainTimeseriesResponseResultMeta,
pub serie_0: RadarGetRankingDomainTimeseriesResponseResultSerie0,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetRankingDomainTimeseriesResponseResultMeta {
#[serde(rename = "aggInterval")]
pub agg_interval: String,
#[serde(rename = "confidenceInfo")]
pub confidence_info: RadarGetRankingDomainTimeseriesResponseResultMetaConfidenceInfo,
#[serde(rename = "dateRange")]
pub date_range: Vec<RadarGetRankingDomainTimeseriesResponseResultMetaDateRangeItem>,
#[serde(rename = "lastUpdated")]
pub last_updated: String,
pub normalization: String,
pub units: Vec<RadarGetRankingDomainTimeseriesResponseResultMetaUnitsItem>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetRankingDomainTimeseriesResponseResultMetaConfidenceInfo {
pub annotations: Vec<RadarGetRankingDomainTimeseriesResponseResultMetaConfidenceInfoAnnotationsItem>,
pub level: i64,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetRankingDomainTimeseriesResponseResultMetaConfidenceInfoAnnotationsItem {
#[serde(rename = "dataSource")]
pub data_source: String,
pub description: String,
#[serde(rename = "endDate")]
pub end_date: String,
#[serde(rename = "eventType")]
pub event_type: String,
#[serde(rename = "isInstantaneous")]
pub is_instantaneous: bool,
#[serde(rename = "linkedUrl")]
pub linked_url: String,
#[serde(rename = "startDate")]
pub start_date: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetRankingDomainTimeseriesResponseResultMetaDateRangeItem {
#[serde(rename = "endTime")]
pub end_time: String,
#[serde(rename = "startTime")]
pub start_time: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetRankingDomainTimeseriesResponseResultMetaUnitsItem {
pub name: String,
pub value: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetRankingDomainTimeseriesResponseResultSerie0 {
pub timestamps: Vec<String>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetRankingTopDomainsResponse {
pub result: RadarGetRankingTopDomainsResponseResult,
pub success: bool,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetRankingTopDomainsResponseResult {
pub meta: RadarGetRankingTopDomainsResponseResultMeta,
pub top_0: Vec<RadarGetRankingTopDomainsResponseResultTop0Item>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetRankingTopDomainsResponseResultMeta {
#[serde(rename = "confidenceInfo")]
pub confidence_info: Option<RadarGetRankingTopDomainsResponseResultMetaConfidenceInfo>,
#[serde(rename = "dateRange")]
pub date_range: Vec<RadarGetRankingTopDomainsResponseResultMetaDateRangeItem>,
#[serde(rename = "lastUpdated")]
pub last_updated: String,
pub normalization: String,
pub units: Vec<RadarGetRankingTopDomainsResponseResultMetaUnitsItem>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetRankingTopDomainsResponseResultMetaConfidenceInfo {
pub annotations: Vec<RadarGetRankingTopDomainsResponseResultMetaConfidenceInfoAnnotationsItem>,
pub level: i64,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetRankingTopDomainsResponseResultMetaConfidenceInfoAnnotationsItem {
#[serde(rename = "dataSource")]
pub data_source: String,
pub description: String,
#[serde(rename = "endDate")]
pub end_date: String,
#[serde(rename = "eventType")]
pub event_type: String,
#[serde(rename = "isInstantaneous")]
pub is_instantaneous: bool,
#[serde(rename = "linkedUrl")]
pub linked_url: String,
#[serde(rename = "startDate")]
pub start_date: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetRankingTopDomainsResponseResultMetaDateRangeItem {
#[serde(rename = "endTime")]
pub end_time: String,
#[serde(rename = "startTime")]
pub start_time: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetRankingTopDomainsResponseResultMetaUnitsItem {
pub name: String,
pub value: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetRankingTopDomainsResponseResultTop0Item {
pub categories: Vec<RadarGetRankingTopDomainsResponseResultTop0ItemCategoriesItem>,
pub domain: String,
#[serde(rename = "pctRankChange")]
pub pct_rank_change: Option<f64>,
pub rank: i64,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetRankingTopDomainsResponseResultTop0ItemCategoriesItem {
pub id: f64,
pub name: String,
#[serde(rename = "superCategoryId")]
pub super_category_id: f64,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetRobotsTxtTopDomainCategoriesByFilesParsedResponse {
pub result: RadarGetRobotsTxtTopDomainCategoriesByFilesParsedResponseResult,
pub success: bool,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetRobotsTxtTopDomainCategoriesByFilesParsedResponseResult {
pub meta: RadarGetRobotsTxtTopDomainCategoriesByFilesParsedResponseResultMeta,
pub top_0: Vec<RadarGetRobotsTxtTopDomainCategoriesByFilesParsedResponseResultTop0Item>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetRobotsTxtTopDomainCategoriesByFilesParsedResponseResultMeta {
#[serde(rename = "confidenceInfo")]
pub confidence_info: Option<RadarGetRobotsTxtTopDomainCategoriesByFilesParsedResponseResultMetaConfidenceInfo>,
#[serde(rename = "dateRange")]
pub date_range: Vec<RadarGetRobotsTxtTopDomainCategoriesByFilesParsedResponseResultMetaDateRangeItem>,
#[serde(rename = "lastUpdated")]
pub last_updated: String,
pub normalization: String,
pub units: Vec<RadarGetRobotsTxtTopDomainCategoriesByFilesParsedResponseResultMetaUnitsItem>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetRobotsTxtTopDomainCategoriesByFilesParsedResponseResultMetaConfidenceInfo {
pub annotations: Vec<RadarGetRobotsTxtTopDomainCategoriesByFilesParsedResponseResultMetaConfidenceInfoAnnotationsItem>,
pub level: i64,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetRobotsTxtTopDomainCategoriesByFilesParsedResponseResultMetaConfidenceInfoAnnotationsItem {
#[serde(rename = "dataSource")]
pub data_source: String,
pub description: String,
#[serde(rename = "endDate")]
pub end_date: String,
#[serde(rename = "eventType")]
pub event_type: String,
#[serde(rename = "isInstantaneous")]
pub is_instantaneous: bool,
#[serde(rename = "linkedUrl")]
pub linked_url: String,
#[serde(rename = "startDate")]
pub start_date: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetRobotsTxtTopDomainCategoriesByFilesParsedResponseResultMetaDateRangeItem {
#[serde(rename = "endTime")]
pub end_time: String,
#[serde(rename = "startTime")]
pub start_time: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetRobotsTxtTopDomainCategoriesByFilesParsedResponseResultMetaUnitsItem {
pub name: String,
pub value: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetRobotsTxtTopDomainCategoriesByFilesParsedResponseResultTop0Item {
pub name: String,
pub value: i64,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetTldDetailsResponse {
pub result: RadarGetTldDetailsResponseResult,
pub success: bool,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetTldDetailsResponseResult {
pub tld: RadarGetTldDetailsResponseResultTld,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetTldDetailsResponseResultTld {
pub manager: String,
pub tld: String,
#[serde(rename = "type")]
pub r#type: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetTldsResponse {
pub result: RadarGetTldsResponseResult,
pub success: bool,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetTldsResponseResult {
pub tlds: Vec<RadarGetTldsResponseResultTldsItem>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetTldsResponseResultTldsItem {
pub manager: String,
pub tld: String,
#[serde(rename = "type")]
pub r#type: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RegistrarApiAddress {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RegistrarApiAddress2 {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RegistrarApiApiResponseCollection {
pub result: Option<Vec<serde_json::Value>>,
pub result_info: Option<RegistrarApiResultInfo>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RegistrarApiApiResponseCommon {
pub errors: Vec<std::collections::HashMap<String, serde_json::Value>>,
pub messages: Vec<std::collections::HashMap<String, serde_json::Value>>,
pub result: serde_json::Value,
pub success: bool,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RegistrarApiApiResponseSingle {
pub result: Option<serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RegistrarApiAutoRenew {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RegistrarApiAvailable {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RegistrarApiCanRegister {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RegistrarApiCity {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RegistrarApiContactIdentifier {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RegistrarApiContactProperties {
pub address: RegistrarApiAddress,
pub address2: Option<RegistrarApiAddress2>,
pub city: RegistrarApiCity,
pub country: Option<RegistrarApiCountry>,
pub email: Option<RegistrarApiEmail>,
pub fax: Option<RegistrarApiFax>,
pub first_name: Option<RegistrarApiFirstName>,
pub id: Option<RegistrarApiContactIdentifier>,
pub last_name: Option<RegistrarApiLastName>,
pub organization: RegistrarApiOrganization,
pub phone: Option<RegistrarApiTelephone>,
pub state: RegistrarApiState,
pub zip: Option<RegistrarApiZipcode>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RegistrarApiContacts {
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RegistrarApiCountry {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RegistrarApiCreatedAt {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RegistrarApiCurrentRegistrar {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RegistrarApiDomainIdentifier {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RegistrarApiDomainProperties {
pub available: Option<RegistrarApiAvailable>,
pub can_register: Option<RegistrarApiCanRegister>,
pub created_at: Option<RegistrarApiCreatedAt>,
pub current_registrar: Option<RegistrarApiCurrentRegistrar>,
pub expires_at: Option<RegistrarApiExpiresAt>,
pub id: Option<RegistrarApiDomainIdentifier>,
pub locked: Option<RegistrarApiLocked>,
pub registrant_contact: Option<RegistrarApiRegistrantContact>,
pub registry_statuses: Option<RegistrarApiRegistryStatuses>,
pub supported_tld: Option<RegistrarApiSupportedTld>,
pub transfer_in: Option<RegistrarApiTransferIn>,
pub updated_at: Option<RegistrarApiUpdatedAt>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RegistrarApiDomainResponseCollection {
pub result: Option<Vec<RegistrarApiDomains>>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RegistrarApiDomainResponseSingle {
pub result: Option<serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RegistrarApiDomainUpdateProperties {
pub auto_renew: Option<RegistrarApiAutoRenew>,
pub locked: Option<RegistrarApiLocked>,
pub privacy: Option<RegistrarApiPrivacy>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RegistrarApiDomains {
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RegistrarApiEmail {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RegistrarApiExpiresAt {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RegistrarApiFax {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RegistrarApiFirstName {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RegistrarApiLastName {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RegistrarApiLocked {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RegistrarApiMessages {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RegistrarApiOrganization {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RegistrarApiPrivacy {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RegistrarApiRegistrantContact {
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RegistrarApiRegistryStatuses {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RegistrarApiResultInfo {
pub count: Option<f64>,
pub page: Option<f64>,
pub per_page: Option<f64>,
pub total_count: Option<f64>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RegistrarApiState {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RegistrarApiSupportedTld {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RegistrarApiTelephone {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RegistrarApiTransferIn {
pub accept_foa: Option<String>,
pub approve_transfer: Option<String>,
pub can_cancel_transfer: Option<bool>,
pub disable_privacy: Option<String>,
pub enter_auth_code: Option<String>,
pub unlock_domain: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RegistrarApiUpdatedAt {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RegistrarApiZipcode {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RegistrarDomainsUpdateDomainRequest {
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct TeamsDevicesApiResponseCollection {
pub result: Option<Vec<serde_json::Value>>,
pub result_info: Option<TeamsDevicesResultInfo>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct TeamsDevicesApiResponseCommon {
pub errors: Vec<std::collections::HashMap<String, serde_json::Value>>,
pub messages: Vec<std::collections::HashMap<String, serde_json::Value>>,
pub result: serde_json::Value,
pub success: bool,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct TeamsDevicesFallbackDomain {
pub description: Option<String>,
pub dns_server: Option<Vec<TeamsDevicesIp>>,
pub suffix: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct TeamsDevicesFallbackDomainResponseCollection {
pub result: Option<Vec<TeamsDevicesFallbackDomain>>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct TeamsDevicesIp {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct TeamsDevicesMessages {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct TeamsDevicesResultInfo {
pub count: Option<f64>,
pub page: Option<f64>,
pub per_page: Option<f64>,
pub total_count: Option<f64>,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct GetDomainMatchListArgs {
pub account_id: String,
pub offset: Option<String>,
pub limit: Option<String>,
pub query_id: Option<String>,
pub include_domain_id: Option<String>,
pub include_dismissed: Option<String>,
pub domain_search: Option<String>,
pub order_by: Option<String>,
pub order: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct GetGetDomainQueriesArgs {
pub account_id: String,
pub id: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct DevicesGetLocalDomainFallbackListArgs {
pub account_id: String,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct DevicesSetLocalDomainFallbackListArgs {
pub account_id: String,
pub body: Vec<TeamsDevicesFallbackDomain>,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct DevicesGetLocalDomainFallbackListForADeviceSettingsPolicyArgs {
pub policy_id: String,
pub account_id: String,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct DevicesSetLocalDomainFallbackListForADeviceSettingsPolicyArgs {
pub policy_id: String,
pub account_id: String,
pub body: Vec<TeamsDevicesFallbackDomain>,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct EmailSecurityListDomainsArgs {
pub account_id: String,
pub page: Option<String>,
pub per_page: Option<String>,
pub order: Option<String>,
pub direction: Option<String>,
pub search: Option<String>,
pub allowed_delivery_mode: Option<String>,
pub domain: Option<String>,
pub active_delivery_mode: Option<String>,
pub integration_id: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct EmailSecurityDeleteDomainsArgs {
pub account_id: String,
pub body: Vec<EmailSecurityDeleteDomainsRequestItem>,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct EmailSecurityGetDomainArgs {
pub account_id: String,
pub domain_id: String,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct EmailSecurityUpdateDomainArgs {
pub account_id: String,
pub domain_id: String,
pub body: EmailSecurityUpdateDomainRequest,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct EmailSecurityDeleteDomainArgs {
pub account_id: String,
pub domain_id: String,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct EmailSecurityBatchSendingDomainRestrictionsArgs {
pub account_id: String,
pub body: EmailSecurityBatchSendingDomainRestrictionsRequest,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct EmailSecurityListTrustedDomainsArgs {
pub account_id: String,
pub page: Option<String>,
pub per_page: Option<String>,
pub order: Option<String>,
pub direction: Option<String>,
pub search: Option<String>,
pub is_recent: Option<String>,
pub is_similarity: Option<String>,
pub pattern: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct EmailSecurityCreateTrustedDomainArgs {
pub account_id: String,
pub body: EmailSecurityCreateTrustedDomainRequest,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct EmailSecurityBatchTrustedDomainsArgs {
pub account_id: String,
pub body: EmailSecurityBatchTrustedDomainsRequest,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct EmailSecurityGetTrustedDomainArgs {
pub account_id: String,
pub trusted_domain_id: String,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct EmailSecurityUpdateTrustedDomainArgs {
pub account_id: String,
pub trusted_domain_id: String,
pub body: EmailSecurityUpdateTrustedDomainRequest,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct EmailSecurityDeleteTrustedDomainArgs {
pub account_id: String,
pub trusted_domain_id: String,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct DomainIntelligenceGetDomainDetailsArgs {
pub account_id: String,
pub domain: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct DomainHistoryGetDomainHistoryArgs {
pub account_id: String,
pub domain: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct DomainIntelligenceGetMultipleDomainDetailsArgs {
pub account_id: String,
pub domain: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct R2ListCustomDomainsArgs {
pub account_id: String,
pub bucket_name: String,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct R2AddCustomDomainArgs {
pub account_id: String,
pub bucket_name: String,
pub body: R2AddCustomDomainRequest,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct R2GetCustomDomainSettingsArgs {
pub account_id: String,
pub bucket_name: String,
pub domain: String,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct R2EditCustomDomainSettingsArgs {
pub account_id: String,
pub bucket_name: String,
pub domain: String,
pub body: R2EditCustomDomainRequest,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct R2DeleteCustomDomainArgs {
pub bucket_name: String,
pub account_id: String,
pub domain: String,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct R2GetBucketPublicPolicyArgs {
pub account_id: String,
pub bucket_name: String,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct R2PutBucketPublicPolicyArgs {
pub account_id: String,
pub bucket_name: String,
pub body: R2EditManagedDomainRequest,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct RegistrarDomainsListDomainsArgs {
pub account_id: String,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct RegistrarDomainsGetDomainArgs {
pub domain_name: String,
pub account_id: String,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct RegistrarDomainsUpdateDomainArgs {
pub domain_name: String,
pub account_id: String,
pub body: RegistrarDomainsUpdateDomainRequest,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct RadarGetEmailSecurityTopTldsByMessagesArgs {
pub limit: Option<String>,
pub name: Option<String>,
pub date_range: Option<String>,
pub date_start: Option<String>,
pub date_end: Option<String>,
pub arc: Option<String>,
pub dkim: Option<String>,
pub dmarc: Option<String>,
pub spf: Option<String>,
pub tls_version: Option<String>,
pub tld_category: Option<String>,
pub format: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct RadarGetEmailSecurityTopTldsByMaliciousArgs {
pub malicious: String,
pub limit: Option<String>,
pub name: Option<String>,
pub date_range: Option<String>,
pub date_start: Option<String>,
pub date_end: Option<String>,
pub arc: Option<String>,
pub dkim: Option<String>,
pub dmarc: Option<String>,
pub spf: Option<String>,
pub tls_version: Option<String>,
pub tld_category: Option<String>,
pub format: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct RadarGetEmailSecurityTopTldsBySpamArgs {
pub spam: String,
pub limit: Option<String>,
pub name: Option<String>,
pub date_range: Option<String>,
pub date_start: Option<String>,
pub date_end: Option<String>,
pub arc: Option<String>,
pub dkim: Option<String>,
pub dmarc: Option<String>,
pub spf: Option<String>,
pub tls_version: Option<String>,
pub tld_category: Option<String>,
pub format: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct RadarGetEmailSecurityTopTldsBySpoofArgs {
pub spoof: String,
pub limit: Option<String>,
pub name: Option<String>,
pub date_range: Option<String>,
pub date_start: Option<String>,
pub date_end: Option<String>,
pub arc: Option<String>,
pub dkim: Option<String>,
pub dmarc: Option<String>,
pub spf: Option<String>,
pub tls_version: Option<String>,
pub tld_category: Option<String>,
pub format: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct RadarGetRankingDomainDetailsArgs {
pub domain: String,
pub limit: Option<String>,
pub ranking_type: Option<String>,
pub name: Option<String>,
pub include_top_locations: Option<String>,
pub date: Option<String>,
pub format: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct RadarGetRankingDomainTimeseriesArgs {
pub limit: Option<String>,
pub ranking_type: Option<String>,
pub name: Option<String>,
pub location: Option<String>,
pub domains: Option<String>,
pub domain_category: Option<String>,
pub date_range: Option<String>,
pub date_start: Option<String>,
pub date_end: Option<String>,
pub format: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct RadarGetRankingTopDomainsArgs {
pub limit: Option<String>,
pub name: Option<String>,
pub location: Option<String>,
pub domain_category: Option<String>,
pub date: Option<String>,
pub ranking_type: Option<String>,
pub format: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct RadarGetRobotsTxtTopDomainCategoriesByFilesParsedArgs {
pub limit: Option<String>,
pub name: Option<String>,
pub user_agent_category: Option<String>,
pub date: Option<String>,
pub format: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct RadarGetTldsArgs {
pub limit: Option<String>,
pub offset: Option<String>,
pub tld_manager: Option<String>,
pub tld_type: Option<String>,
pub tld: Option<String>,
pub format: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct RadarGetTldDetailsArgs {
pub tld: String,
pub format: Option<String>,
}
pub async fn get_domain_match_list_request<F>(
client: DynNetClient,
args: &GetDomainMatchListArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<GetDomainMatchListResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/cloudforce-one/v2/brand-protection/domain/matches",
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()))?;
builder = builder.query("offset", args.offset.as_deref());
builder = builder.query("limit", args.limit.as_deref());
builder = builder.query("query_id", args.query_id.as_deref());
builder = builder.query("include_domain_id", args.include_domain_id.as_deref());
builder = builder.query("include_dismissed", args.include_dismissed.as_deref());
builder = builder.query("domain_search", args.domain_search.as_deref());
builder = builder.query("orderBy", args.order_by.as_deref());
builder = builder.query("order", args.order.as_deref());
if let Some(f) = builder_mod {
f(&mut builder);
}
let response = client.send_async(builder.build()).await
.map_err(|e| super::shared::ApiError::RequestSendFailed(e.to_string()))?;
let status: usize = response.get_status().into();
let headers = response.get_headers_ref().clone();
if status < 200 || status >= 300 {
let error_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let body = (!error_bytes.is_empty())
.then(|| String::from_utf8_lossy(&error_bytes).into_owned());
return Err(super::shared::ApiError::HttpStatus { code: status as u16, headers, body });
}
let body_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let parsed: GetDomainMatchListResponse = serde_json::from_slice(&body_bytes).map_err(|e: serde_json::Error| super::shared::ApiError::ParseFailed(e.to_string()))?;
Ok(ApiResponse { status: status as u16, headers, body: parsed })
}
pub async fn get_get_domain_queries_request<F>(
client: DynNetClient,
args: &GetGetDomainQueriesArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<serde_json::Value>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/cloudforce-one/v2/brand-protection/domain/queries",
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()))?;
builder = builder.query("id", args.id.as_deref());
if let Some(f) = builder_mod {
f(&mut builder);
}
let response = client.send_async(builder.build()).await
.map_err(|e| super::shared::ApiError::RequestSendFailed(e.to_string()))?;
let status: usize = response.get_status().into();
let headers = response.get_headers_ref().clone();
if status < 200 || status >= 300 {
let error_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let body = (!error_bytes.is_empty())
.then(|| String::from_utf8_lossy(&error_bytes).into_owned());
return Err(super::shared::ApiError::HttpStatus { code: status as u16, headers, body });
}
let body_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let parsed: serde_json::Value = serde_json::from_slice(&body_bytes).map_err(|e: serde_json::Error| super::shared::ApiError::ParseFailed(e.to_string()))?;
Ok(ApiResponse { status: status as u16, headers, body: parsed })
}
pub async fn devices_get_local_domain_fallback_list_request<F>(
client: DynNetClient,
args: &DevicesGetLocalDomainFallbackListArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<TeamsDevicesFallbackDomainResponseCollection>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/devices/policy/fallback_domains",
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);
}
let response = client.send_async(builder.build()).await
.map_err(|e| super::shared::ApiError::RequestSendFailed(e.to_string()))?;
let status: usize = response.get_status().into();
let headers = response.get_headers_ref().clone();
if status < 200 || status >= 300 {
let error_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let body = (!error_bytes.is_empty())
.then(|| String::from_utf8_lossy(&error_bytes).into_owned());
return Err(super::shared::ApiError::HttpStatus { code: status as u16, headers, body });
}
let body_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let parsed: TeamsDevicesFallbackDomainResponseCollection = serde_json::from_slice(&body_bytes).map_err(|e: serde_json::Error| super::shared::ApiError::ParseFailed(e.to_string()))?;
Ok(ApiResponse { status: status as u16, headers, body: parsed })
}
pub async fn devices_set_local_domain_fallback_list_request<F>(
client: DynNetClient,
args: &DevicesSetLocalDomainFallbackListArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<TeamsDevicesFallbackDomainResponseCollection>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/devices/policy/fallback_domains",
args.account_id,
);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::put(&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);
}
let response = client.send_async(builder.build()).await
.map_err(|e| super::shared::ApiError::RequestSendFailed(e.to_string()))?;
let status: usize = response.get_status().into();
let headers = response.get_headers_ref().clone();
if status < 200 || status >= 300 {
let error_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let body = (!error_bytes.is_empty())
.then(|| String::from_utf8_lossy(&error_bytes).into_owned());
return Err(super::shared::ApiError::HttpStatus { code: status as u16, headers, body });
}
let body_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let parsed: TeamsDevicesFallbackDomainResponseCollection = serde_json::from_slice(&body_bytes).map_err(|e: serde_json::Error| super::shared::ApiError::ParseFailed(e.to_string()))?;
Ok(ApiResponse { status: status as u16, headers, body: parsed })
}
pub async fn devices_get_local_domain_fallback_list_for_a_device_settings_policy_request<F>(
client: DynNetClient,
args: &DevicesGetLocalDomainFallbackListForADeviceSettingsPolicyArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<TeamsDevicesFallbackDomainResponseCollection>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/devices/policy/{}/fallback_domains",
args.account_id,
args.policy_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);
}
let response = client.send_async(builder.build()).await
.map_err(|e| super::shared::ApiError::RequestSendFailed(e.to_string()))?;
let status: usize = response.get_status().into();
let headers = response.get_headers_ref().clone();
if status < 200 || status >= 300 {
let error_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let body = (!error_bytes.is_empty())
.then(|| String::from_utf8_lossy(&error_bytes).into_owned());
return Err(super::shared::ApiError::HttpStatus { code: status as u16, headers, body });
}
let body_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let parsed: TeamsDevicesFallbackDomainResponseCollection = serde_json::from_slice(&body_bytes).map_err(|e: serde_json::Error| super::shared::ApiError::ParseFailed(e.to_string()))?;
Ok(ApiResponse { status: status as u16, headers, body: parsed })
}
pub async fn devices_set_local_domain_fallback_list_for_a_device_settings_policy_request<F>(
client: DynNetClient,
args: &DevicesSetLocalDomainFallbackListForADeviceSettingsPolicyArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<TeamsDevicesFallbackDomainResponseCollection>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/devices/policy/{}/fallback_domains",
args.account_id,
args.policy_id,
);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::put(&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);
}
let response = client.send_async(builder.build()).await
.map_err(|e| super::shared::ApiError::RequestSendFailed(e.to_string()))?;
let status: usize = response.get_status().into();
let headers = response.get_headers_ref().clone();
if status < 200 || status >= 300 {
let error_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let body = (!error_bytes.is_empty())
.then(|| String::from_utf8_lossy(&error_bytes).into_owned());
return Err(super::shared::ApiError::HttpStatus { code: status as u16, headers, body });
}
let body_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let parsed: TeamsDevicesFallbackDomainResponseCollection = serde_json::from_slice(&body_bytes).map_err(|e: serde_json::Error| super::shared::ApiError::ParseFailed(e.to_string()))?;
Ok(ApiResponse { status: status as u16, headers, body: parsed })
}
pub async fn email_security_list_domains_request<F>(
client: DynNetClient,
args: &EmailSecurityListDomainsArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSecurityListDomainsResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/email-security/settings/domains",
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()))?;
builder = builder.query("page", args.page.as_deref());
builder = builder.query("per_page", args.per_page.as_deref());
builder = builder.query("order", args.order.as_deref());
builder = builder.query("direction", args.direction.as_deref());
builder = builder.query("search", args.search.as_deref());
builder = builder.query("allowed_delivery_mode", args.allowed_delivery_mode.as_deref());
builder = builder.query("domain", args.domain.as_deref());
builder = builder.query("active_delivery_mode", args.active_delivery_mode.as_deref());
builder = builder.query("integration_id", args.integration_id.as_deref());
if let Some(f) = builder_mod {
f(&mut builder);
}
let response = client.send_async(builder.build()).await
.map_err(|e| super::shared::ApiError::RequestSendFailed(e.to_string()))?;
let status: usize = response.get_status().into();
let headers = response.get_headers_ref().clone();
if status < 200 || status >= 300 {
let error_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let body = (!error_bytes.is_empty())
.then(|| String::from_utf8_lossy(&error_bytes).into_owned());
return Err(super::shared::ApiError::HttpStatus { code: status as u16, headers, body });
}
let body_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let parsed: EmailSecurityListDomainsResponse = serde_json::from_slice(&body_bytes).map_err(|e: serde_json::Error| super::shared::ApiError::ParseFailed(e.to_string()))?;
Ok(ApiResponse { status: status as u16, headers, body: parsed })
}
pub async fn email_security_delete_domains_request<F>(
client: DynNetClient,
args: &EmailSecurityDeleteDomainsArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSecurityDeleteDomainsResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/email-security/settings/domains",
args.account_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()))?;
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);
}
let response = client.send_async(builder.build()).await
.map_err(|e| super::shared::ApiError::RequestSendFailed(e.to_string()))?;
let status: usize = response.get_status().into();
let headers = response.get_headers_ref().clone();
if status < 200 || status >= 300 {
let error_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let body = (!error_bytes.is_empty())
.then(|| String::from_utf8_lossy(&error_bytes).into_owned());
return Err(super::shared::ApiError::HttpStatus { code: status as u16, headers, body });
}
let body_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let parsed: EmailSecurityDeleteDomainsResponse = serde_json::from_slice(&body_bytes).map_err(|e: serde_json::Error| super::shared::ApiError::ParseFailed(e.to_string()))?;
Ok(ApiResponse { status: status as u16, headers, body: parsed })
}
pub async fn email_security_get_domain_request<F>(
client: DynNetClient,
args: &EmailSecurityGetDomainArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSecurityGetDomainResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/email-security/settings/domains/{}",
args.account_id,
args.domain_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);
}
let response = client.send_async(builder.build()).await
.map_err(|e| super::shared::ApiError::RequestSendFailed(e.to_string()))?;
let status: usize = response.get_status().into();
let headers = response.get_headers_ref().clone();
if status < 200 || status >= 300 {
let error_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let body = (!error_bytes.is_empty())
.then(|| String::from_utf8_lossy(&error_bytes).into_owned());
return Err(super::shared::ApiError::HttpStatus { code: status as u16, headers, body });
}
let body_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let parsed: EmailSecurityGetDomainResponse = serde_json::from_slice(&body_bytes).map_err(|e: serde_json::Error| super::shared::ApiError::ParseFailed(e.to_string()))?;
Ok(ApiResponse { status: status as u16, headers, body: parsed })
}
pub async fn email_security_update_domain_request<F>(
client: DynNetClient,
args: &EmailSecurityUpdateDomainArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSecurityUpdateDomainResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/email-security/settings/domains/{}",
args.account_id,
args.domain_id,
);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::patch(&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);
}
let response = client.send_async(builder.build()).await
.map_err(|e| super::shared::ApiError::RequestSendFailed(e.to_string()))?;
let status: usize = response.get_status().into();
let headers = response.get_headers_ref().clone();
if status < 200 || status >= 300 {
let error_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let body = (!error_bytes.is_empty())
.then(|| String::from_utf8_lossy(&error_bytes).into_owned());
return Err(super::shared::ApiError::HttpStatus { code: status as u16, headers, body });
}
let body_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let parsed: EmailSecurityUpdateDomainResponse = serde_json::from_slice(&body_bytes).map_err(|e: serde_json::Error| super::shared::ApiError::ParseFailed(e.to_string()))?;
Ok(ApiResponse { status: status as u16, headers, body: parsed })
}
pub async fn email_security_delete_domain_request<F>(
client: DynNetClient,
args: &EmailSecurityDeleteDomainArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSecurityDeleteDomainResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/email-security/settings/domains/{}",
args.account_id,
args.domain_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);
}
let response = client.send_async(builder.build()).await
.map_err(|e| super::shared::ApiError::RequestSendFailed(e.to_string()))?;
let status: usize = response.get_status().into();
let headers = response.get_headers_ref().clone();
if status < 200 || status >= 300 {
let error_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let body = (!error_bytes.is_empty())
.then(|| String::from_utf8_lossy(&error_bytes).into_owned());
return Err(super::shared::ApiError::HttpStatus { code: status as u16, headers, body });
}
let body_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let parsed: EmailSecurityDeleteDomainResponse = serde_json::from_slice(&body_bytes).map_err(|e: serde_json::Error| super::shared::ApiError::ParseFailed(e.to_string()))?;
Ok(ApiResponse { status: status as u16, headers, body: parsed })
}
pub async fn email_security_batch_sending_domain_restrictions_request<F>(
client: DynNetClient,
args: &EmailSecurityBatchSendingDomainRestrictionsArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSecurityBatchSendingDomainRestrictionsResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/email-security/settings/sending_domain_restrictions/batch",
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);
}
let response = client.send_async(builder.build()).await
.map_err(|e| super::shared::ApiError::RequestSendFailed(e.to_string()))?;
let status: usize = response.get_status().into();
let headers = response.get_headers_ref().clone();
if status < 200 || status >= 300 {
let error_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let body = (!error_bytes.is_empty())
.then(|| String::from_utf8_lossy(&error_bytes).into_owned());
return Err(super::shared::ApiError::HttpStatus { code: status as u16, headers, body });
}
let body_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let parsed: EmailSecurityBatchSendingDomainRestrictionsResponse = serde_json::from_slice(&body_bytes).map_err(|e: serde_json::Error| super::shared::ApiError::ParseFailed(e.to_string()))?;
Ok(ApiResponse { status: status as u16, headers, body: parsed })
}
pub async fn email_security_list_trusted_domains_request<F>(
client: DynNetClient,
args: &EmailSecurityListTrustedDomainsArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSecurityListTrustedDomainsResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/email-security/settings/trusted_domains",
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()))?;
builder = builder.query("page", args.page.as_deref());
builder = builder.query("per_page", args.per_page.as_deref());
builder = builder.query("order", args.order.as_deref());
builder = builder.query("direction", args.direction.as_deref());
builder = builder.query("search", args.search.as_deref());
builder = builder.query("is_recent", args.is_recent.as_deref());
builder = builder.query("is_similarity", args.is_similarity.as_deref());
builder = builder.query("pattern", args.pattern.as_deref());
if let Some(f) = builder_mod {
f(&mut builder);
}
let response = client.send_async(builder.build()).await
.map_err(|e| super::shared::ApiError::RequestSendFailed(e.to_string()))?;
let status: usize = response.get_status().into();
let headers = response.get_headers_ref().clone();
if status < 200 || status >= 300 {
let error_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let body = (!error_bytes.is_empty())
.then(|| String::from_utf8_lossy(&error_bytes).into_owned());
return Err(super::shared::ApiError::HttpStatus { code: status as u16, headers, body });
}
let body_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let parsed: EmailSecurityListTrustedDomainsResponse = serde_json::from_slice(&body_bytes).map_err(|e: serde_json::Error| super::shared::ApiError::ParseFailed(e.to_string()))?;
Ok(ApiResponse { status: status as u16, headers, body: parsed })
}
pub async fn email_security_create_trusted_domain_request<F>(
client: DynNetClient,
args: &EmailSecurityCreateTrustedDomainArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSecurityCreateTrustedDomainResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/email-security/settings/trusted_domains",
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);
}
let response = client.send_async(builder.build()).await
.map_err(|e| super::shared::ApiError::RequestSendFailed(e.to_string()))?;
let status: usize = response.get_status().into();
let headers = response.get_headers_ref().clone();
if status < 200 || status >= 300 {
let error_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let body = (!error_bytes.is_empty())
.then(|| String::from_utf8_lossy(&error_bytes).into_owned());
return Err(super::shared::ApiError::HttpStatus { code: status as u16, headers, body });
}
let body_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let parsed: EmailSecurityCreateTrustedDomainResponse = serde_json::from_slice(&body_bytes).map_err(|e: serde_json::Error| super::shared::ApiError::ParseFailed(e.to_string()))?;
Ok(ApiResponse { status: status as u16, headers, body: parsed })
}
pub async fn email_security_batch_trusted_domains_request<F>(
client: DynNetClient,
args: &EmailSecurityBatchTrustedDomainsArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSecurityBatchTrustedDomainsResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/email-security/settings/trusted_domains/batch",
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);
}
let response = client.send_async(builder.build()).await
.map_err(|e| super::shared::ApiError::RequestSendFailed(e.to_string()))?;
let status: usize = response.get_status().into();
let headers = response.get_headers_ref().clone();
if status < 200 || status >= 300 {
let error_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let body = (!error_bytes.is_empty())
.then(|| String::from_utf8_lossy(&error_bytes).into_owned());
return Err(super::shared::ApiError::HttpStatus { code: status as u16, headers, body });
}
let body_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let parsed: EmailSecurityBatchTrustedDomainsResponse = serde_json::from_slice(&body_bytes).map_err(|e: serde_json::Error| super::shared::ApiError::ParseFailed(e.to_string()))?;
Ok(ApiResponse { status: status as u16, headers, body: parsed })
}
pub async fn email_security_get_trusted_domain_request<F>(
client: DynNetClient,
args: &EmailSecurityGetTrustedDomainArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSecurityGetTrustedDomainResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/email-security/settings/trusted_domains/{}",
args.account_id,
args.trusted_domain_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);
}
let response = client.send_async(builder.build()).await
.map_err(|e| super::shared::ApiError::RequestSendFailed(e.to_string()))?;
let status: usize = response.get_status().into();
let headers = response.get_headers_ref().clone();
if status < 200 || status >= 300 {
let error_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let body = (!error_bytes.is_empty())
.then(|| String::from_utf8_lossy(&error_bytes).into_owned());
return Err(super::shared::ApiError::HttpStatus { code: status as u16, headers, body });
}
let body_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let parsed: EmailSecurityGetTrustedDomainResponse = serde_json::from_slice(&body_bytes).map_err(|e: serde_json::Error| super::shared::ApiError::ParseFailed(e.to_string()))?;
Ok(ApiResponse { status: status as u16, headers, body: parsed })
}
pub async fn email_security_update_trusted_domain_request<F>(
client: DynNetClient,
args: &EmailSecurityUpdateTrustedDomainArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSecurityUpdateTrustedDomainResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/email-security/settings/trusted_domains/{}",
args.account_id,
args.trusted_domain_id,
);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::patch(&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);
}
let response = client.send_async(builder.build()).await
.map_err(|e| super::shared::ApiError::RequestSendFailed(e.to_string()))?;
let status: usize = response.get_status().into();
let headers = response.get_headers_ref().clone();
if status < 200 || status >= 300 {
let error_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let body = (!error_bytes.is_empty())
.then(|| String::from_utf8_lossy(&error_bytes).into_owned());
return Err(super::shared::ApiError::HttpStatus { code: status as u16, headers, body });
}
let body_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let parsed: EmailSecurityUpdateTrustedDomainResponse = serde_json::from_slice(&body_bytes).map_err(|e: serde_json::Error| super::shared::ApiError::ParseFailed(e.to_string()))?;
Ok(ApiResponse { status: status as u16, headers, body: parsed })
}
pub async fn email_security_delete_trusted_domain_request<F>(
client: DynNetClient,
args: &EmailSecurityDeleteTrustedDomainArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSecurityDeleteTrustedDomainResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/email-security/settings/trusted_domains/{}",
args.account_id,
args.trusted_domain_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);
}
let response = client.send_async(builder.build()).await
.map_err(|e| super::shared::ApiError::RequestSendFailed(e.to_string()))?;
let status: usize = response.get_status().into();
let headers = response.get_headers_ref().clone();
if status < 200 || status >= 300 {
let error_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let body = (!error_bytes.is_empty())
.then(|| String::from_utf8_lossy(&error_bytes).into_owned());
return Err(super::shared::ApiError::HttpStatus { code: status as u16, headers, body });
}
let body_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let parsed: EmailSecurityDeleteTrustedDomainResponse = serde_json::from_slice(&body_bytes).map_err(|e: serde_json::Error| super::shared::ApiError::ParseFailed(e.to_string()))?;
Ok(ApiResponse { status: status as u16, headers, body: parsed })
}
pub async fn domain_intelligence_get_domain_details_request<F>(
client: DynNetClient,
args: &DomainIntelligenceGetDomainDetailsArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<IntelSingleResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/intel/domain",
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()))?;
builder = builder.query("domain", args.domain.as_deref());
if let Some(f) = builder_mod {
f(&mut builder);
}
let response = client.send_async(builder.build()).await
.map_err(|e| super::shared::ApiError::RequestSendFailed(e.to_string()))?;
let status: usize = response.get_status().into();
let headers = response.get_headers_ref().clone();
if status < 200 || status >= 300 {
let error_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let body = (!error_bytes.is_empty())
.then(|| String::from_utf8_lossy(&error_bytes).into_owned());
return Err(super::shared::ApiError::HttpStatus { code: status as u16, headers, body });
}
let body_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let parsed: IntelSingleResponse = serde_json::from_slice(&body_bytes).map_err(|e: serde_json::Error| super::shared::ApiError::ParseFailed(e.to_string()))?;
Ok(ApiResponse { status: status as u16, headers, body: parsed })
}
pub async fn domain_history_get_domain_history_request<F>(
client: DynNetClient,
args: &DomainHistoryGetDomainHistoryArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<IntelResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/intel/domain-history",
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()))?;
builder = builder.query("domain", args.domain.as_deref());
if let Some(f) = builder_mod {
f(&mut builder);
}
let response = client.send_async(builder.build()).await
.map_err(|e| super::shared::ApiError::RequestSendFailed(e.to_string()))?;
let status: usize = response.get_status().into();
let headers = response.get_headers_ref().clone();
if status < 200 || status >= 300 {
let error_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let body = (!error_bytes.is_empty())
.then(|| String::from_utf8_lossy(&error_bytes).into_owned());
return Err(super::shared::ApiError::HttpStatus { code: status as u16, headers, body });
}
let body_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let parsed: IntelResponse = serde_json::from_slice(&body_bytes).map_err(|e: serde_json::Error| super::shared::ApiError::ParseFailed(e.to_string()))?;
Ok(ApiResponse { status: status as u16, headers, body: parsed })
}
pub async fn domain_intelligence_get_multiple_domain_details_request<F>(
client: DynNetClient,
args: &DomainIntelligenceGetMultipleDomainDetailsArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<IntelCollectionResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/intel/domain/bulk",
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()))?;
builder = builder.query("domain", args.domain.as_deref());
if let Some(f) = builder_mod {
f(&mut builder);
}
let response = client.send_async(builder.build()).await
.map_err(|e| super::shared::ApiError::RequestSendFailed(e.to_string()))?;
let status: usize = response.get_status().into();
let headers = response.get_headers_ref().clone();
if status < 200 || status >= 300 {
let error_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let body = (!error_bytes.is_empty())
.then(|| String::from_utf8_lossy(&error_bytes).into_owned());
return Err(super::shared::ApiError::HttpStatus { code: status as u16, headers, body });
}
let body_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let parsed: IntelCollectionResponse = serde_json::from_slice(&body_bytes).map_err(|e: serde_json::Error| super::shared::ApiError::ParseFailed(e.to_string()))?;
Ok(ApiResponse { status: status as u16, headers, body: parsed })
}
pub async fn r2_list_custom_domains_request<F>(
client: DynNetClient,
args: &R2ListCustomDomainsArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<R2ListCustomDomainsResponse2>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/r2/buckets/{}/domains/custom",
args.account_id,
args.bucket_name,
);
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);
}
let response = client.send_async(builder.build()).await
.map_err(|e| super::shared::ApiError::RequestSendFailed(e.to_string()))?;
let status: usize = response.get_status().into();
let headers = response.get_headers_ref().clone();
if status < 200 || status >= 300 {
let error_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let body = (!error_bytes.is_empty())
.then(|| String::from_utf8_lossy(&error_bytes).into_owned());
return Err(super::shared::ApiError::HttpStatus { code: status as u16, headers, body });
}
let body_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let parsed: R2ListCustomDomainsResponse2 = serde_json::from_slice(&body_bytes).map_err(|e: serde_json::Error| super::shared::ApiError::ParseFailed(e.to_string()))?;
Ok(ApiResponse { status: status as u16, headers, body: parsed })
}
pub async fn r2_add_custom_domain_request<F>(
client: DynNetClient,
args: &R2AddCustomDomainArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<R2AddCustomDomainResponse2>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/r2/buckets/{}/domains/custom",
args.account_id,
args.bucket_name,
);
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);
}
let response = client.send_async(builder.build()).await
.map_err(|e| super::shared::ApiError::RequestSendFailed(e.to_string()))?;
let status: usize = response.get_status().into();
let headers = response.get_headers_ref().clone();
if status < 200 || status >= 300 {
let error_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let body = (!error_bytes.is_empty())
.then(|| String::from_utf8_lossy(&error_bytes).into_owned());
return Err(super::shared::ApiError::HttpStatus { code: status as u16, headers, body });
}
let body_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let parsed: R2AddCustomDomainResponse2 = serde_json::from_slice(&body_bytes).map_err(|e: serde_json::Error| super::shared::ApiError::ParseFailed(e.to_string()))?;
Ok(ApiResponse { status: status as u16, headers, body: parsed })
}
pub async fn r2_get_custom_domain_settings_request<F>(
client: DynNetClient,
args: &R2GetCustomDomainSettingsArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<R2GetCustomDomainSettingsResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/r2/buckets/{}/domains/custom/{}",
args.account_id,
args.bucket_name,
args.domain,
);
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);
}
let response = client.send_async(builder.build()).await
.map_err(|e| super::shared::ApiError::RequestSendFailed(e.to_string()))?;
let status: usize = response.get_status().into();
let headers = response.get_headers_ref().clone();
if status < 200 || status >= 300 {
let error_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let body = (!error_bytes.is_empty())
.then(|| String::from_utf8_lossy(&error_bytes).into_owned());
return Err(super::shared::ApiError::HttpStatus { code: status as u16, headers, body });
}
let body_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let parsed: R2GetCustomDomainSettingsResponse = serde_json::from_slice(&body_bytes).map_err(|e: serde_json::Error| super::shared::ApiError::ParseFailed(e.to_string()))?;
Ok(ApiResponse { status: status as u16, headers, body: parsed })
}
pub async fn r2_edit_custom_domain_settings_request<F>(
client: DynNetClient,
args: &R2EditCustomDomainSettingsArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<R2EditCustomDomainSettingsResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/r2/buckets/{}/domains/custom/{}",
args.account_id,
args.bucket_name,
args.domain,
);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::put(&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);
}
let response = client.send_async(builder.build()).await
.map_err(|e| super::shared::ApiError::RequestSendFailed(e.to_string()))?;
let status: usize = response.get_status().into();
let headers = response.get_headers_ref().clone();
if status < 200 || status >= 300 {
let error_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let body = (!error_bytes.is_empty())
.then(|| String::from_utf8_lossy(&error_bytes).into_owned());
return Err(super::shared::ApiError::HttpStatus { code: status as u16, headers, body });
}
let body_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let parsed: R2EditCustomDomainSettingsResponse = serde_json::from_slice(&body_bytes).map_err(|e: serde_json::Error| super::shared::ApiError::ParseFailed(e.to_string()))?;
Ok(ApiResponse { status: status as u16, headers, body: parsed })
}
pub async fn r2_delete_custom_domain_request<F>(
client: DynNetClient,
args: &R2DeleteCustomDomainArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<R2DeleteCustomDomainResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/r2/buckets/{}/domains/custom/{}",
args.account_id,
args.bucket_name,
args.domain,
);
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);
}
let response = client.send_async(builder.build()).await
.map_err(|e| super::shared::ApiError::RequestSendFailed(e.to_string()))?;
let status: usize = response.get_status().into();
let headers = response.get_headers_ref().clone();
if status < 200 || status >= 300 {
let error_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let body = (!error_bytes.is_empty())
.then(|| String::from_utf8_lossy(&error_bytes).into_owned());
return Err(super::shared::ApiError::HttpStatus { code: status as u16, headers, body });
}
let body_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let parsed: R2DeleteCustomDomainResponse = serde_json::from_slice(&body_bytes).map_err(|e: serde_json::Error| super::shared::ApiError::ParseFailed(e.to_string()))?;
Ok(ApiResponse { status: status as u16, headers, body: parsed })
}
pub async fn r2_get_bucket_public_policy_request<F>(
client: DynNetClient,
args: &R2GetBucketPublicPolicyArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<R2GetBucketPublicPolicyResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/r2/buckets/{}/domains/managed",
args.account_id,
args.bucket_name,
);
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);
}
let response = client.send_async(builder.build()).await
.map_err(|e| super::shared::ApiError::RequestSendFailed(e.to_string()))?;
let status: usize = response.get_status().into();
let headers = response.get_headers_ref().clone();
if status < 200 || status >= 300 {
let error_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let body = (!error_bytes.is_empty())
.then(|| String::from_utf8_lossy(&error_bytes).into_owned());
return Err(super::shared::ApiError::HttpStatus { code: status as u16, headers, body });
}
let body_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let parsed: R2GetBucketPublicPolicyResponse = serde_json::from_slice(&body_bytes).map_err(|e: serde_json::Error| super::shared::ApiError::ParseFailed(e.to_string()))?;
Ok(ApiResponse { status: status as u16, headers, body: parsed })
}
pub async fn r2_put_bucket_public_policy_request<F>(
client: DynNetClient,
args: &R2PutBucketPublicPolicyArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<R2PutBucketPublicPolicyResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/r2/buckets/{}/domains/managed",
args.account_id,
args.bucket_name,
);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::put(&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);
}
let response = client.send_async(builder.build()).await
.map_err(|e| super::shared::ApiError::RequestSendFailed(e.to_string()))?;
let status: usize = response.get_status().into();
let headers = response.get_headers_ref().clone();
if status < 200 || status >= 300 {
let error_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let body = (!error_bytes.is_empty())
.then(|| String::from_utf8_lossy(&error_bytes).into_owned());
return Err(super::shared::ApiError::HttpStatus { code: status as u16, headers, body });
}
let body_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let parsed: R2PutBucketPublicPolicyResponse = serde_json::from_slice(&body_bytes).map_err(|e: serde_json::Error| super::shared::ApiError::ParseFailed(e.to_string()))?;
Ok(ApiResponse { status: status as u16, headers, body: parsed })
}
pub async fn registrar_domains_list_domains_request<F>(
client: DynNetClient,
args: &RegistrarDomainsListDomainsArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<RegistrarApiDomainResponseCollection>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/registrar/domains",
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);
}
let response = client.send_async(builder.build()).await
.map_err(|e| super::shared::ApiError::RequestSendFailed(e.to_string()))?;
let status: usize = response.get_status().into();
let headers = response.get_headers_ref().clone();
if status < 200 || status >= 300 {
let error_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let body = (!error_bytes.is_empty())
.then(|| String::from_utf8_lossy(&error_bytes).into_owned());
return Err(super::shared::ApiError::HttpStatus { code: status as u16, headers, body });
}
let body_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let parsed: RegistrarApiDomainResponseCollection = serde_json::from_slice(&body_bytes).map_err(|e: serde_json::Error| super::shared::ApiError::ParseFailed(e.to_string()))?;
Ok(ApiResponse { status: status as u16, headers, body: parsed })
}
pub async fn registrar_domains_get_domain_request<F>(
client: DynNetClient,
args: &RegistrarDomainsGetDomainArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<RegistrarApiDomainResponseSingle>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/registrar/domains/{}",
args.account_id,
args.domain_name,
);
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);
}
let response = client.send_async(builder.build()).await
.map_err(|e| super::shared::ApiError::RequestSendFailed(e.to_string()))?;
let status: usize = response.get_status().into();
let headers = response.get_headers_ref().clone();
if status < 200 || status >= 300 {
let error_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let body = (!error_bytes.is_empty())
.then(|| String::from_utf8_lossy(&error_bytes).into_owned());
return Err(super::shared::ApiError::HttpStatus { code: status as u16, headers, body });
}
let body_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let parsed: RegistrarApiDomainResponseSingle = serde_json::from_slice(&body_bytes).map_err(|e: serde_json::Error| super::shared::ApiError::ParseFailed(e.to_string()))?;
Ok(ApiResponse { status: status as u16, headers, body: parsed })
}
pub async fn registrar_domains_update_domain_request<F>(
client: DynNetClient,
args: &RegistrarDomainsUpdateDomainArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<RegistrarApiDomainResponseSingle>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/registrar/domains/{}",
args.account_id,
args.domain_name,
);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::put(&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);
}
let response = client.send_async(builder.build()).await
.map_err(|e| super::shared::ApiError::RequestSendFailed(e.to_string()))?;
let status: usize = response.get_status().into();
let headers = response.get_headers_ref().clone();
if status < 200 || status >= 300 {
let error_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let body = (!error_bytes.is_empty())
.then(|| String::from_utf8_lossy(&error_bytes).into_owned());
return Err(super::shared::ApiError::HttpStatus { code: status as u16, headers, body });
}
let body_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let parsed: RegistrarApiDomainResponseSingle = serde_json::from_slice(&body_bytes).map_err(|e: serde_json::Error| super::shared::ApiError::ParseFailed(e.to_string()))?;
Ok(ApiResponse { status: status as u16, headers, body: parsed })
}
pub async fn radar_get_email_security_top_tlds_by_messages_request<F>(
client: DynNetClient,
args: &RadarGetEmailSecurityTopTldsByMessagesArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<RadarGetEmailSecurityTopTldsByMessagesResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/radar/email/security/top/tlds",
);
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("limit", args.limit.as_deref());
builder = builder.query("name", args.name.as_deref());
builder = builder.query("dateRange", args.date_range.as_deref());
builder = builder.query("dateStart", args.date_start.as_deref());
builder = builder.query("dateEnd", args.date_end.as_deref());
builder = builder.query("arc", args.arc.as_deref());
builder = builder.query("dkim", args.dkim.as_deref());
builder = builder.query("dmarc", args.dmarc.as_deref());
builder = builder.query("spf", args.spf.as_deref());
builder = builder.query("tlsVersion", args.tls_version.as_deref());
builder = builder.query("tldCategory", args.tld_category.as_deref());
builder = builder.query("format", args.format.as_deref());
if let Some(f) = builder_mod {
f(&mut builder);
}
let response = client.send_async(builder.build()).await
.map_err(|e| super::shared::ApiError::RequestSendFailed(e.to_string()))?;
let status: usize = response.get_status().into();
let headers = response.get_headers_ref().clone();
if status < 200 || status >= 300 {
let error_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let body = (!error_bytes.is_empty())
.then(|| String::from_utf8_lossy(&error_bytes).into_owned());
return Err(super::shared::ApiError::HttpStatus { code: status as u16, headers, body });
}
let body_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let parsed: RadarGetEmailSecurityTopTldsByMessagesResponse = serde_json::from_slice(&body_bytes).map_err(|e: serde_json::Error| super::shared::ApiError::ParseFailed(e.to_string()))?;
Ok(ApiResponse { status: status as u16, headers, body: parsed })
}
pub async fn radar_get_email_security_top_tlds_by_malicious_request<F>(
client: DynNetClient,
args: &RadarGetEmailSecurityTopTldsByMaliciousArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<RadarGetEmailSecurityTopTldsByMaliciousResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/radar/email/security/top/tlds/malicious/{}",
args.malicious,
);
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("limit", args.limit.as_deref());
builder = builder.query("name", args.name.as_deref());
builder = builder.query("dateRange", args.date_range.as_deref());
builder = builder.query("dateStart", args.date_start.as_deref());
builder = builder.query("dateEnd", args.date_end.as_deref());
builder = builder.query("arc", args.arc.as_deref());
builder = builder.query("dkim", args.dkim.as_deref());
builder = builder.query("dmarc", args.dmarc.as_deref());
builder = builder.query("spf", args.spf.as_deref());
builder = builder.query("tlsVersion", args.tls_version.as_deref());
builder = builder.query("tldCategory", args.tld_category.as_deref());
builder = builder.query("format", args.format.as_deref());
if let Some(f) = builder_mod {
f(&mut builder);
}
let response = client.send_async(builder.build()).await
.map_err(|e| super::shared::ApiError::RequestSendFailed(e.to_string()))?;
let status: usize = response.get_status().into();
let headers = response.get_headers_ref().clone();
if status < 200 || status >= 300 {
let error_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let body = (!error_bytes.is_empty())
.then(|| String::from_utf8_lossy(&error_bytes).into_owned());
return Err(super::shared::ApiError::HttpStatus { code: status as u16, headers, body });
}
let body_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let parsed: RadarGetEmailSecurityTopTldsByMaliciousResponse = serde_json::from_slice(&body_bytes).map_err(|e: serde_json::Error| super::shared::ApiError::ParseFailed(e.to_string()))?;
Ok(ApiResponse { status: status as u16, headers, body: parsed })
}
pub async fn radar_get_email_security_top_tlds_by_spam_request<F>(
client: DynNetClient,
args: &RadarGetEmailSecurityTopTldsBySpamArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<RadarGetEmailSecurityTopTldsBySpamResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/radar/email/security/top/tlds/spam/{}",
args.spam,
);
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("limit", args.limit.as_deref());
builder = builder.query("name", args.name.as_deref());
builder = builder.query("dateRange", args.date_range.as_deref());
builder = builder.query("dateStart", args.date_start.as_deref());
builder = builder.query("dateEnd", args.date_end.as_deref());
builder = builder.query("arc", args.arc.as_deref());
builder = builder.query("dkim", args.dkim.as_deref());
builder = builder.query("dmarc", args.dmarc.as_deref());
builder = builder.query("spf", args.spf.as_deref());
builder = builder.query("tlsVersion", args.tls_version.as_deref());
builder = builder.query("tldCategory", args.tld_category.as_deref());
builder = builder.query("format", args.format.as_deref());
if let Some(f) = builder_mod {
f(&mut builder);
}
let response = client.send_async(builder.build()).await
.map_err(|e| super::shared::ApiError::RequestSendFailed(e.to_string()))?;
let status: usize = response.get_status().into();
let headers = response.get_headers_ref().clone();
if status < 200 || status >= 300 {
let error_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let body = (!error_bytes.is_empty())
.then(|| String::from_utf8_lossy(&error_bytes).into_owned());
return Err(super::shared::ApiError::HttpStatus { code: status as u16, headers, body });
}
let body_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let parsed: RadarGetEmailSecurityTopTldsBySpamResponse = serde_json::from_slice(&body_bytes).map_err(|e: serde_json::Error| super::shared::ApiError::ParseFailed(e.to_string()))?;
Ok(ApiResponse { status: status as u16, headers, body: parsed })
}
pub async fn radar_get_email_security_top_tlds_by_spoof_request<F>(
client: DynNetClient,
args: &RadarGetEmailSecurityTopTldsBySpoofArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<RadarGetEmailSecurityTopTldsBySpoofResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/radar/email/security/top/tlds/spoof/{}",
args.spoof,
);
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("limit", args.limit.as_deref());
builder = builder.query("name", args.name.as_deref());
builder = builder.query("dateRange", args.date_range.as_deref());
builder = builder.query("dateStart", args.date_start.as_deref());
builder = builder.query("dateEnd", args.date_end.as_deref());
builder = builder.query("arc", args.arc.as_deref());
builder = builder.query("dkim", args.dkim.as_deref());
builder = builder.query("dmarc", args.dmarc.as_deref());
builder = builder.query("spf", args.spf.as_deref());
builder = builder.query("tlsVersion", args.tls_version.as_deref());
builder = builder.query("tldCategory", args.tld_category.as_deref());
builder = builder.query("format", args.format.as_deref());
if let Some(f) = builder_mod {
f(&mut builder);
}
let response = client.send_async(builder.build()).await
.map_err(|e| super::shared::ApiError::RequestSendFailed(e.to_string()))?;
let status: usize = response.get_status().into();
let headers = response.get_headers_ref().clone();
if status < 200 || status >= 300 {
let error_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let body = (!error_bytes.is_empty())
.then(|| String::from_utf8_lossy(&error_bytes).into_owned());
return Err(super::shared::ApiError::HttpStatus { code: status as u16, headers, body });
}
let body_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let parsed: RadarGetEmailSecurityTopTldsBySpoofResponse = serde_json::from_slice(&body_bytes).map_err(|e: serde_json::Error| super::shared::ApiError::ParseFailed(e.to_string()))?;
Ok(ApiResponse { status: status as u16, headers, body: parsed })
}
pub async fn radar_get_ranking_domain_details_request<F>(
client: DynNetClient,
args: &RadarGetRankingDomainDetailsArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<RadarGetRankingDomainDetailsResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/radar/ranking/domain/{}",
args.domain,
);
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("limit", args.limit.as_deref());
builder = builder.query("rankingType", args.ranking_type.as_deref());
builder = builder.query("name", args.name.as_deref());
builder = builder.query("includeTopLocations", args.include_top_locations.as_deref());
builder = builder.query("date", args.date.as_deref());
builder = builder.query("format", args.format.as_deref());
if let Some(f) = builder_mod {
f(&mut builder);
}
let response = client.send_async(builder.build()).await
.map_err(|e| super::shared::ApiError::RequestSendFailed(e.to_string()))?;
let status: usize = response.get_status().into();
let headers = response.get_headers_ref().clone();
if status < 200 || status >= 300 {
let error_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let body = (!error_bytes.is_empty())
.then(|| String::from_utf8_lossy(&error_bytes).into_owned());
return Err(super::shared::ApiError::HttpStatus { code: status as u16, headers, body });
}
let body_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let parsed: RadarGetRankingDomainDetailsResponse = serde_json::from_slice(&body_bytes).map_err(|e: serde_json::Error| super::shared::ApiError::ParseFailed(e.to_string()))?;
Ok(ApiResponse { status: status as u16, headers, body: parsed })
}
pub async fn radar_get_ranking_domain_timeseries_request<F>(
client: DynNetClient,
args: &RadarGetRankingDomainTimeseriesArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<RadarGetRankingDomainTimeseriesResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/radar/ranking/timeseries_groups",
);
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("limit", args.limit.as_deref());
builder = builder.query("rankingType", args.ranking_type.as_deref());
builder = builder.query("name", args.name.as_deref());
builder = builder.query("location", args.location.as_deref());
builder = builder.query("domains", args.domains.as_deref());
builder = builder.query("domainCategory", args.domain_category.as_deref());
builder = builder.query("dateRange", args.date_range.as_deref());
builder = builder.query("dateStart", args.date_start.as_deref());
builder = builder.query("dateEnd", args.date_end.as_deref());
builder = builder.query("format", args.format.as_deref());
if let Some(f) = builder_mod {
f(&mut builder);
}
let response = client.send_async(builder.build()).await
.map_err(|e| super::shared::ApiError::RequestSendFailed(e.to_string()))?;
let status: usize = response.get_status().into();
let headers = response.get_headers_ref().clone();
if status < 200 || status >= 300 {
let error_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let body = (!error_bytes.is_empty())
.then(|| String::from_utf8_lossy(&error_bytes).into_owned());
return Err(super::shared::ApiError::HttpStatus { code: status as u16, headers, body });
}
let body_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let parsed: RadarGetRankingDomainTimeseriesResponse = serde_json::from_slice(&body_bytes).map_err(|e: serde_json::Error| super::shared::ApiError::ParseFailed(e.to_string()))?;
Ok(ApiResponse { status: status as u16, headers, body: parsed })
}
pub async fn radar_get_ranking_top_domains_request<F>(
client: DynNetClient,
args: &RadarGetRankingTopDomainsArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<RadarGetRankingTopDomainsResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/radar/ranking/top",
);
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("limit", args.limit.as_deref());
builder = builder.query("name", args.name.as_deref());
builder = builder.query("location", args.location.as_deref());
builder = builder.query("domainCategory", args.domain_category.as_deref());
builder = builder.query("date", args.date.as_deref());
builder = builder.query("rankingType", args.ranking_type.as_deref());
builder = builder.query("format", args.format.as_deref());
if let Some(f) = builder_mod {
f(&mut builder);
}
let response = client.send_async(builder.build()).await
.map_err(|e| super::shared::ApiError::RequestSendFailed(e.to_string()))?;
let status: usize = response.get_status().into();
let headers = response.get_headers_ref().clone();
if status < 200 || status >= 300 {
let error_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let body = (!error_bytes.is_empty())
.then(|| String::from_utf8_lossy(&error_bytes).into_owned());
return Err(super::shared::ApiError::HttpStatus { code: status as u16, headers, body });
}
let body_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let parsed: RadarGetRankingTopDomainsResponse = serde_json::from_slice(&body_bytes).map_err(|e: serde_json::Error| super::shared::ApiError::ParseFailed(e.to_string()))?;
Ok(ApiResponse { status: status as u16, headers, body: parsed })
}
pub async fn radar_get_robots_txt_top_domain_categories_by_files_parsed_request<F>(
client: DynNetClient,
args: &RadarGetRobotsTxtTopDomainCategoriesByFilesParsedArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<RadarGetRobotsTxtTopDomainCategoriesByFilesParsedResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/radar/robots_txt/top/domain_categories",
);
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("limit", args.limit.as_deref());
builder = builder.query("name", args.name.as_deref());
builder = builder.query("userAgentCategory", args.user_agent_category.as_deref());
builder = builder.query("date", args.date.as_deref());
builder = builder.query("format", args.format.as_deref());
if let Some(f) = builder_mod {
f(&mut builder);
}
let response = client.send_async(builder.build()).await
.map_err(|e| super::shared::ApiError::RequestSendFailed(e.to_string()))?;
let status: usize = response.get_status().into();
let headers = response.get_headers_ref().clone();
if status < 200 || status >= 300 {
let error_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let body = (!error_bytes.is_empty())
.then(|| String::from_utf8_lossy(&error_bytes).into_owned());
return Err(super::shared::ApiError::HttpStatus { code: status as u16, headers, body });
}
let body_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let parsed: RadarGetRobotsTxtTopDomainCategoriesByFilesParsedResponse = serde_json::from_slice(&body_bytes).map_err(|e: serde_json::Error| super::shared::ApiError::ParseFailed(e.to_string()))?;
Ok(ApiResponse { status: status as u16, headers, body: parsed })
}
pub async fn radar_get_tlds_request<F>(
client: DynNetClient,
args: &RadarGetTldsArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<RadarGetTldsResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/radar/tlds",
);
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("limit", args.limit.as_deref());
builder = builder.query("offset", args.offset.as_deref());
builder = builder.query("tldManager", args.tld_manager.as_deref());
builder = builder.query("tldType", args.tld_type.as_deref());
builder = builder.query("tld", args.tld.as_deref());
builder = builder.query("format", args.format.as_deref());
if let Some(f) = builder_mod {
f(&mut builder);
}
let response = client.send_async(builder.build()).await
.map_err(|e| super::shared::ApiError::RequestSendFailed(e.to_string()))?;
let status: usize = response.get_status().into();
let headers = response.get_headers_ref().clone();
if status < 200 || status >= 300 {
let error_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let body = (!error_bytes.is_empty())
.then(|| String::from_utf8_lossy(&error_bytes).into_owned());
return Err(super::shared::ApiError::HttpStatus { code: status as u16, headers, body });
}
let body_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let parsed: RadarGetTldsResponse = serde_json::from_slice(&body_bytes).map_err(|e: serde_json::Error| super::shared::ApiError::ParseFailed(e.to_string()))?;
Ok(ApiResponse { status: status as u16, headers, body: parsed })
}
pub async fn radar_get_tld_details_request<F>(
client: DynNetClient,
args: &RadarGetTldDetailsArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<RadarGetTldDetailsResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/radar/tlds/{}",
args.tld,
);
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("format", args.format.as_deref());
if let Some(f) = builder_mod {
f(&mut builder);
}
let response = client.send_async(builder.build()).await
.map_err(|e| super::shared::ApiError::RequestSendFailed(e.to_string()))?;
let status: usize = response.get_status().into();
let headers = response.get_headers_ref().clone();
if status < 200 || status >= 300 {
let error_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let body = (!error_bytes.is_empty())
.then(|| String::from_utf8_lossy(&error_bytes).into_owned());
return Err(super::shared::ApiError::HttpStatus { code: status as u16, headers, body });
}
let body_bytes = foundation_netio::shared::client::body_reader::collect_bytes_from_send_safe(response.take_body());
let parsed: RadarGetTldDetailsResponse = serde_json::from_slice(&body_bytes).map_err(|e: serde_json::Error| super::shared::ApiError::ParseFailed(e.to_string()))?;
Ok(ApiResponse { status: status as u16, headers, body: parsed })
}