#![cfg(feature = "cloudflare_email")]
#![allow(clippy::too_many_arguments, clippy::type_complexity)]
#![allow(
clippy::missing_errors_doc,
clippy::doc_markdown,
clippy::useless_format
)]
#![allow(unused_imports)]
use foundation_macros::JsonHash;
use foundation_netio::shared::client::http_client::HttpClient;
use foundation_netio::{DynNetClient, PreparedRequestBuilder};
use serde::{Deserialize, Serialize};
use super::shared::ApiResponse;
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct DlpAddinAccountMapping {
pub addin_identifier_token: String,
pub auth_requirements: serde_json::Value,
}
pub type DlpAddinAuth = serde_json::Value;
pub type DlpApiResponseCommon = super::shared::ErrorsMessagesSuccessObject;
pub type DlpApiResponseSingle = super::shared::ErrorsMessagesSuccessObject;
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct DlpCreateEmailRule {
pub action: serde_json::Value,
pub conditions: Vec<DlpEmailRuleCondition>,
pub description: Option<String>,
pub enabled: bool,
pub name: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct DlpEmailRule {
pub action: serde_json::Value,
pub conditions: Vec<DlpEmailRuleCondition>,
pub created_at: String,
pub description: Option<String>,
pub enabled: bool,
pub name: String,
pub priority: i64,
pub rule_id: String,
pub updated_at: String,
}
pub type DlpEmailRuleAction = serde_json::Value;
pub type DlpEmailRuleArray = Vec<DlpEmailRule>;
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct DlpEmailRuleCondition {
pub operator: String,
pub selector: String,
pub value: serde_json::Value,
}
pub type DlpEmailRuleOperator = String;
pub type DlpEmailRuleSelector = String;
pub type DlpEmailRuleValue = serde_json::Value;
pub type DlpEmailScannerCreateAccountMappingResponse =
super::shared::ApiEnvelope<Option<DlpAddinAccountMapping>>;
pub type DlpEmailScannerCreateRuleResponse = super::shared::ApiEnvelope<Option<DlpEmailRule>>;
pub type DlpEmailScannerDeleteRuleResponse = super::shared::ApiEnvelope<Option<DlpEmailRule>>;
pub type DlpEmailScannerGetAccountMappingResponse =
super::shared::ApiEnvelope<Option<DlpAddinAccountMapping>>;
pub type DlpEmailScannerGetRuleResponse = super::shared::ApiEnvelope<Option<DlpEmailRule>>;
pub type DlpEmailScannerListAllRulesResponse =
super::shared::ApiEnvelope<Option<Vec<DlpEmailRule>>>;
pub type DlpEmailScannerUpdateRulePrioritiesResponse =
super::shared::ApiEnvelope<Option<DlpEmailRule>>;
pub type DlpEmailScannerUpdateRuleResponse = super::shared::ApiEnvelope<Option<DlpEmailRule>>;
pub type DlpMessages = Vec<std::collections::HashMap<String, serde_json::Value>>;
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct DlpUpdateAddinAccountMapping {
pub auth_requirements: serde_json::Value,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct DlpUpdateEmailRulePriorities {
pub new_priorities: serde_json::Value,
}
pub type EmailAddresses = super::shared::EmailAddressesShape;
pub type EmailApiResponseCollection = super::shared::AddressingApiResponseCollectionShape;
pub type EmailApiResponseCommon = super::shared::ErrorsMessagesSuccessObject;
pub type EmailApiResponseSingle = super::shared::ErrorsMessagesSuccessObject;
pub type EmailCreateDestinationAddressProperties = super::shared::EmailObject;
pub type EmailCreated = String;
pub type EmailDestinationAddressIdentifier = String;
pub type EmailDestinationAddressProperties = super::shared::EmailAddressesShape;
pub type EmailDestinationAddressResponseSingle = super::shared::ApiEnvelope<Option<EmailAddresses>>;
pub type EmailDestinationAddressTag = String;
pub type EmailDestinationAddressesResponseCollection =
super::shared::ApiEnvelopeErrorsMessagesResultInfoSuccess<Option<Vec<EmailAddresses>>>;
pub type EmailEmail = String;
pub type EmailMessages = Vec<std::collections::HashMap<String, serde_json::Value>>;
pub type EmailModified = String;
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityAllowPolicy {
pub comments: Option<String>,
pub created_at: String,
pub id: i64,
pub is_acceptable_sender: bool,
pub is_exempt_recipient: bool,
pub is_recipient: Option<bool>,
pub is_regex: bool,
pub is_sender: Option<bool>,
pub is_spoof: Option<bool>,
pub is_trusted_sender: bool,
pub last_modified: String,
pub pattern: String,
pub pattern_type: String,
pub verify_sender: bool,
}
pub type EmailSecurityAllowPolicyId = i64;
#[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 EmailSecurityAttachment {
pub content_type: Option<String>,
pub detection: Option<serde_json::Value>,
pub encrypted: Option<bool>,
pub name: Option<String>,
pub size: i64,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityBatchAllowPoliciesRequest {
pub deletes: Vec<EmailSecurityBatchAllowPoliciesRequestDeletesItem>,
pub patches: Vec<serde_json::Value>,
pub posts: Vec<EmailSecurityCreateAllowPolicy>,
pub puts: Vec<serde_json::Value>,
}
pub type EmailSecurityBatchAllowPoliciesRequestDeletesItem = super::shared::IdObject3;
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityBatchAllowPoliciesResponse {
pub errors: Vec<EmailSecurityMessage>,
pub messages: Vec<EmailSecurityMessage>,
pub result: std::collections::HashMap<String, serde_json::Value>,
pub success: bool,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityBatchBlockedSendersRequest {
pub deletes: Vec<EmailSecurityBatchBlockedSendersRequestDeletesItem>,
pub patches: Vec<serde_json::Value>,
pub posts: Vec<EmailSecurityCreateBlockedSender>,
pub puts: Vec<serde_json::Value>,
}
pub type EmailSecurityBatchBlockedSendersRequestDeletesItem = super::shared::IdObject3;
pub type EmailSecurityBatchBlockedSendersResponse = EmailSecurityBatchAllowPoliciesResponse;
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityBlockedSender {
pub comments: Option<String>,
pub created_at: String,
pub id: i64,
pub is_regex: bool,
pub last_modified: String,
pub pattern: String,
pub pattern_type: String,
}
pub type EmailSecurityBlockedSenderId = i64;
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityCreateAllowPolicy {
pub comments: Option<String>,
pub is_acceptable_sender: bool,
pub is_exempt_recipient: bool,
pub is_recipient: Option<bool>,
pub is_regex: bool,
pub is_sender: Option<bool>,
pub is_spoof: Option<bool>,
pub is_trusted_sender: bool,
pub pattern: String,
pub pattern_type: String,
pub verify_sender: bool,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityCreateAllowPolicyResponse {
pub errors: Vec<EmailSecurityMessage>,
pub messages: Vec<EmailSecurityMessage>,
pub result: serde_json::Value,
pub success: bool,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityCreateBlockedSender {
pub comments: Option<String>,
pub is_regex: bool,
pub pattern: String,
pub pattern_type: String,
}
pub type EmailSecurityCreateBlockedSenderResponse = EmailSecurityCreateAllowPolicyResponse;
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityCreateDisplayName {
pub email: String,
pub is_email_regex: bool,
pub name: String,
}
pub type EmailSecurityCreateDisplayNameResponse = EmailSecurityCreateAllowPolicyResponse;
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityCursorWithLegacyResultInfo {
pub count: i64,
pub next: Option<String>,
pub page: i64,
pub per_page: i64,
pub previous: Option<String>,
pub total_count: i64,
}
pub type EmailSecurityDeleteAllowPolicyResponse = EmailSecurityBatchAllowPoliciesResponse;
pub type EmailSecurityDeleteBlockedSenderResponse = EmailSecurityBatchAllowPoliciesResponse;
pub type EmailSecurityDeleteDisplayNameResponse = EmailSecurityBatchAllowPoliciesResponse;
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityDisplayName {
pub comments: Option<String>,
pub created_at: String,
pub directory_id: Option<serde_json::Value>,
pub directory_node_id: Option<serde_json::Value>,
pub email: String,
pub external_directory_node_id: Option<String>,
pub id: i64,
pub is_email_regex: bool,
pub last_modified: String,
pub name: String,
pub provenance: Option<String>,
}
pub type EmailSecurityDispositionLabel = String;
pub type EmailSecurityGetAllowPolicyResponse = EmailSecurityCreateAllowPolicyResponse;
pub type EmailSecurityGetBlockedSenderResponse = EmailSecurityCreateAllowPolicyResponse;
pub type EmailSecurityGetDisplayNameResponse = EmailSecurityCreateAllowPolicyResponse;
pub type EmailSecurityGetMessageDetectionsResponse = EmailSecurityBatchAllowPoliciesResponse;
pub type EmailSecurityGetMessagePreviewResponse = EmailSecurityBatchAllowPoliciesResponse;
pub type EmailSecurityGetMessageRawResponse = EmailSecurityBatchAllowPoliciesResponse;
pub type EmailSecurityGetMessageResponse = EmailSecurityBatchAllowPoliciesResponse;
pub type EmailSecurityGetMessageTraceResponse = EmailSecurityBatchAllowPoliciesResponse;
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityGetPhishguardReportsResponse {
pub errors: Vec<EmailSecurityMessage>,
pub messages: Vec<EmailSecurityMessage>,
pub result: Vec<EmailSecurityPhishGuardReport>,
pub success: bool,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityInvestigateMessage {
pub action_log: serde_json::Value,
pub alert_id: Option<String>,
pub client_recipients: Vec<String>,
pub delivery_mode: Option<serde_json::Value>,
pub detection_reasons: Vec<String>,
pub edf_hash: Option<String>,
pub envelope_from: Option<String>,
pub envelope_to: Option<Vec<String>>,
pub final_disposition: Option<serde_json::Value>,
pub findings: Option<Vec<std::collections::HashMap<String, serde_json::Value>>>,
pub from: Option<String>,
pub from_name: Option<String>,
pub htmltext_structure_hash: Option<String>,
pub id: String,
pub is_phish_submission: bool,
pub is_quarantined: bool,
pub message_id: Option<String>,
pub post_delivery_operations: Option<Vec<String>>,
pub postfix_id: String,
pub postfix_id_outbound: Option<String>,
pub properties: std::collections::HashMap<String, serde_json::Value>,
pub replyto: Option<String>,
pub scanned_at: Option<String>,
pub sent_at: Option<String>,
pub sent_date: Option<String>,
pub subject: Option<String>,
pub threat_categories: Option<Vec<String>>,
pub to: Option<Vec<String>>,
pub to_name: Option<Vec<String>>,
pub ts: String,
pub validation: Option<serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityInvestigateResponse {
pub errors: Vec<EmailSecurityMessage>,
pub messages: Vec<EmailSecurityMessage>,
pub result: Vec<EmailSecurityInvestigateMessage>,
pub result_info: EmailSecurityCursorWithLegacyResultInfo,
pub success: bool,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityLink {
pub href: String,
pub text: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityListAllowPoliciesResponse {
pub errors: Vec<EmailSecurityMessage>,
pub messages: Vec<EmailSecurityMessage>,
pub result: Vec<EmailSecurityAllowPolicy>,
pub result_info: EmailSecurityResultInfo,
pub success: bool,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityListBlockedSendersResponse {
pub errors: Vec<EmailSecurityMessage>,
pub messages: Vec<EmailSecurityMessage>,
pub result: Vec<EmailSecurityBlockedSender>,
pub result_info: EmailSecurityResultInfo,
pub success: bool,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityListDisplayNamesResponse {
pub errors: Vec<EmailSecurityMessage>,
pub messages: Vec<EmailSecurityMessage>,
pub result: Vec<EmailSecurityDisplayName>,
pub result_info: EmailSecurityResultInfo,
pub success: bool,
}
pub type EmailSecurityMessage = super::shared::CodeMessageObject2;
pub type EmailSecurityMessageHeader = super::shared::NameValueObject;
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityMoveResponseItem {
pub completed_at: Option<String>,
pub completed_timestamp: String,
pub destination: Option<String>,
pub item_count: i64,
pub message_id: Option<String>,
pub operation: Option<String>,
pub recipient: Option<String>,
pub status: Option<String>,
pub success: bool,
}
pub type EmailSecurityPatternType = String;
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityPhishGuardReport {
pub content: String,
pub created_at: String,
pub disposition: String,
pub fields: std::collections::HashMap<String, serde_json::Value>,
pub id: i64,
pub priority: String,
pub tags: Option<Vec<EmailSecurityPhishGuardReportTag>>,
pub title: String,
pub ts: String,
pub updated_at: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityPhishGuardReportTag {
pub category: String,
pub value: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityPostBulkMessageMoveRequest {
pub destination: String,
pub ids: Option<Vec<String>>,
pub postfix_ids: Option<Vec<String>>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityPostBulkMessageMoveResponse {
pub errors: Vec<EmailSecurityMessage>,
pub messages: Vec<EmailSecurityMessage>,
pub result: Vec<EmailSecurityMoveResponseItem>,
pub success: bool,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityPostMessageMoveRequest {
pub destination: String,
}
pub type EmailSecurityPostMessageMoveResponse = EmailSecurityPostBulkMessageMoveResponse;
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityPostPreviewRequest {
pub postfix_id: String,
}
pub type EmailSecurityPostPreviewResponse = EmailSecurityBatchAllowPoliciesResponse;
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityPostReclassifyRequest {
pub eml_content: Option<String>,
pub escalated_submission_id: Option<String>,
pub expected_disposition: String,
}
pub type EmailSecurityPostReclassifyResponse = EmailSecurityCreateAllowPolicyResponse;
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityPostReleaseResponse {
pub errors: Vec<EmailSecurityMessage>,
pub messages: Vec<EmailSecurityMessage>,
pub result: Vec<EmailSecurityReleaseResponse>,
pub success: bool,
}
pub type EmailSecurityPostfixId = String;
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityReleaseResponse {
pub delivered: Option<Vec<String>>,
pub failed: Option<Vec<String>>,
pub id: String,
pub postfix_id: String,
pub undelivered: Option<Vec<String>>,
}
pub type EmailSecurityResultInfo =
super::shared::AiSearchInstanceListJobLogsResponseResultInfoShape;
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecuritySubmission {
pub customer_status: Option<serde_json::Value>,
pub escalated_as: Option<serde_json::Value>,
pub escalated_at: Option<String>,
pub escalated_by: Option<String>,
pub escalated_submission_id: Option<String>,
pub original_disposition: Option<serde_json::Value>,
pub original_edf_hash: Option<String>,
pub original_postfix_id: Option<String>,
pub outcome: Option<String>,
pub outcome_disposition: Option<serde_json::Value>,
pub requested_at: Option<String>,
pub requested_by: Option<String>,
pub requested_disposition: Option<serde_json::Value>,
pub requested_ts: String,
pub status: Option<String>,
pub subject: Option<String>,
pub submission_id: String,
#[serde(rename = "type")]
pub r#type: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecuritySubmissionsResponse {
pub errors: Vec<EmailSecurityMessage>,
pub messages: Vec<EmailSecurityMessage>,
pub result: Vec<EmailSecuritySubmission>,
pub result_info: EmailSecurityResultInfo,
pub success: bool,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityThreatCategory {
pub description: Option<String>,
pub id: i64,
pub name: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityTraceLine {
pub lineno: i64,
pub message: String,
pub ts: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityUpdateAllowPolicy {
pub comments: Option<String>,
pub is_acceptable_sender: Option<bool>,
pub is_exempt_recipient: Option<bool>,
pub is_regex: Option<bool>,
pub is_trusted_sender: Option<bool>,
pub pattern: Option<String>,
pub pattern_type: Option<serde_json::Value>,
pub verify_sender: Option<bool>,
}
pub type EmailSecurityUpdateAllowPolicyResponse = EmailSecurityCreateAllowPolicyResponse;
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityUpdateBlockedSender {
pub comments: Option<String>,
pub is_regex: Option<bool>,
pub pattern: Option<String>,
pub pattern_type: Option<serde_json::Value>,
}
pub type EmailSecurityUpdateBlockedSenderResponse = EmailSecurityCreateAllowPolicyResponse;
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSecurityUpdateDisplayNameRequest {
pub email: Option<String>,
pub is_email_regex: Option<bool>,
pub name: Option<String>,
}
pub type EmailSecurityUpdateDisplayNameResponse = EmailSecurityCreateAllowPolicyResponse;
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSendingAccountSendBuilderResponse {
pub errors: Vec<EmailSendingAccountSendBuilderResponseErrorsItem>,
pub messages: Vec<EmailSendingAccountSendBuilderResponseMessagesItem>,
pub result: EmailSendingEmailSendResponse,
pub result_info: Option<EmailSendingAccountSendBuilderResponseResultInfo>,
pub success: bool,
}
pub type EmailSendingAccountSendBuilderResponseErrorsItem = super::shared::CodeMessageObject;
pub type EmailSendingAccountSendBuilderResponseMessagesItem = super::shared::CodeMessageObject;
pub type EmailSendingAccountSendBuilderResponseResultInfo =
super::shared::WorBatchCreateWorkflowInstanceResponseResultInfoShape;
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSendingAccountSendRawMessageResponse {
pub errors: Vec<EmailSendingAccountSendRawMessageResponseErrorsItem>,
pub messages: Vec<EmailSendingAccountSendRawMessageResponseMessagesItem>,
pub result: EmailSendingEmailSendResponse,
pub result_info: Option<EmailSendingAccountSendRawMessageResponseResultInfo>,
pub success: bool,
}
pub type EmailSendingAccountSendRawMessageResponseErrorsItem = super::shared::CodeMessageObject;
pub type EmailSendingAccountSendRawMessageResponseMessagesItem = super::shared::CodeMessageObject;
pub type EmailSendingAccountSendRawMessageResponseResultInfo =
super::shared::WorBatchCreateWorkflowInstanceResponseResultInfoShape;
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSendingEmailAttachment {
pub content: String,
pub disposition: String,
pub filename: String,
#[serde(rename = "type")]
pub r#type: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSendingEmailBuilder {
pub attachments: Option<Vec<serde_json::Value>>,
pub bcc: Option<serde_json::Value>,
pub cc: Option<serde_json::Value>,
pub from: serde_json::Value,
pub headers: Option<serde_json::Value>,
pub html: Option<String>,
pub reply_to: Option<serde_json::Value>,
pub subject: String,
pub text: Option<String>,
pub to: serde_json::Value,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSendingEmailInlineAttachment {
pub content: String,
pub content_id: String,
pub disposition: String,
pub filename: String,
#[serde(rename = "type")]
pub r#type: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSendingEmailSendResponse {
pub delivered: Vec<String>,
pub permanent_bounces: Vec<String>,
pub queued: Vec<String>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct EmailSendingSendRawRequest {
pub from: String,
pub mime_message: String,
pub recipients: Vec<String>,
}
pub type EmailVerified = String;
pub type RadarGetEmailRoutingSummaryResponse =
super::shared::ApiEnvelopeSuccess<RadarGetEmailRoutingSummaryResponseResult>;
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailRoutingSummaryResponseResult {
pub meta: RadarGetEmailRoutingSummaryResponseResultMeta,
pub summary_0: serde_json::Value,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailRoutingSummaryResponseResultMeta {
#[serde(rename = "confidenceInfo")]
pub confidence_info: RadarGetEmailRoutingSummaryResponseResultMetaConfidenceInfo,
#[serde(rename = "dateRange")]
pub date_range: Vec<RadarGetEmailRoutingSummaryResponseResultMetaDateRangeItem>,
#[serde(rename = "lastUpdated")]
pub last_updated: String,
pub normalization: String,
pub units: Vec<RadarGetEmailRoutingSummaryResponseResultMetaUnitsItem>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailRoutingSummaryResponseResultMetaConfidenceInfo {
pub annotations:
Vec<RadarGetEmailRoutingSummaryResponseResultMetaConfidenceInfoAnnotationsItem>,
pub level: i64,
}
pub type RadarGetEmailRoutingSummaryResponseResultMetaConfidenceInfoAnnotationsItem =
super::shared::RadarGetAiBotsSummaryResponseResultMetaConfidenceInfoAnnotationsItemShape;
pub type RadarGetEmailRoutingSummaryResponseResultMetaDateRangeItem =
super::shared::EndTimeStartTimeObject;
pub type RadarGetEmailRoutingSummaryResponseResultMetaUnitsItem = super::shared::NameValueObject;
pub type RadarGetEmailRoutingTimeseriesGroupResponse =
super::shared::ApiEnvelopeSuccess<RadarGetEmailRoutingTimeseriesGroupResponseResult>;
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailRoutingTimeseriesGroupResponseResult {
pub meta: RadarGetEmailRoutingTimeseriesGroupResponseResultMeta,
pub serie_0: RadarGetEmailRoutingTimeseriesGroupResponseResultSerie0,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailRoutingTimeseriesGroupResponseResultMeta {
#[serde(rename = "aggInterval")]
pub agg_interval: String,
#[serde(rename = "confidenceInfo")]
pub confidence_info: RadarGetEmailRoutingTimeseriesGroupResponseResultMetaConfidenceInfo,
#[serde(rename = "dateRange")]
pub date_range: Vec<RadarGetEmailRoutingTimeseriesGroupResponseResultMetaDateRangeItem>,
#[serde(rename = "lastUpdated")]
pub last_updated: String,
pub normalization: String,
pub units: Vec<RadarGetEmailRoutingTimeseriesGroupResponseResultMetaUnitsItem>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailRoutingTimeseriesGroupResponseResultMetaConfidenceInfo {
pub annotations:
Vec<RadarGetEmailRoutingTimeseriesGroupResponseResultMetaConfidenceInfoAnnotationsItem>,
pub level: i64,
}
pub type RadarGetEmailRoutingTimeseriesGroupResponseResultMetaConfidenceInfoAnnotationsItem =
super::shared::RadarGetAiBotsSummaryResponseResultMetaConfidenceInfoAnnotationsItemShape;
pub type RadarGetEmailRoutingTimeseriesGroupResponseResultMetaDateRangeItem =
super::shared::EndTimeStartTimeObject;
pub type RadarGetEmailRoutingTimeseriesGroupResponseResultMetaUnitsItem =
super::shared::NameValueObject;
pub type RadarGetEmailRoutingTimeseriesGroupResponseResultSerie0 = super::shared::TimestampsObject;
pub type RadarGetEmailSecuritySummaryResponse =
super::shared::ApiEnvelopeSuccess<RadarGetEmailSecuritySummaryResponseResult>;
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailSecuritySummaryResponseResult {
pub meta: RadarGetEmailSecuritySummaryResponseResultMeta,
pub summary_0: serde_json::Value,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailSecuritySummaryResponseResultMeta {
#[serde(rename = "confidenceInfo")]
pub confidence_info: RadarGetEmailSecuritySummaryResponseResultMetaConfidenceInfo,
#[serde(rename = "dateRange")]
pub date_range: Vec<RadarGetEmailSecuritySummaryResponseResultMetaDateRangeItem>,
#[serde(rename = "lastUpdated")]
pub last_updated: String,
pub normalization: String,
pub units: Vec<RadarGetEmailSecuritySummaryResponseResultMetaUnitsItem>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailSecuritySummaryResponseResultMetaConfidenceInfo {
pub annotations:
Vec<RadarGetEmailSecuritySummaryResponseResultMetaConfidenceInfoAnnotationsItem>,
pub level: i64,
}
pub type RadarGetEmailSecuritySummaryResponseResultMetaConfidenceInfoAnnotationsItem =
super::shared::RadarGetAiBotsSummaryResponseResultMetaConfidenceInfoAnnotationsItemShape;
pub type RadarGetEmailSecuritySummaryResponseResultMetaDateRangeItem =
super::shared::EndTimeStartTimeObject;
pub type RadarGetEmailSecuritySummaryResponseResultMetaUnitsItem = super::shared::NameValueObject;
pub type RadarGetEmailSecurityTimeseriesGroupResponse =
super::shared::ApiEnvelopeSuccess<RadarGetEmailSecurityTimeseriesGroupResponseResult>;
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailSecurityTimeseriesGroupResponseResult {
pub meta: RadarGetEmailSecurityTimeseriesGroupResponseResultMeta,
pub serie_0: RadarGetEmailSecurityTimeseriesGroupResponseResultSerie0,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailSecurityTimeseriesGroupResponseResultMeta {
#[serde(rename = "aggInterval")]
pub agg_interval: String,
#[serde(rename = "confidenceInfo")]
pub confidence_info: RadarGetEmailSecurityTimeseriesGroupResponseResultMetaConfidenceInfo,
#[serde(rename = "dateRange")]
pub date_range: Vec<RadarGetEmailSecurityTimeseriesGroupResponseResultMetaDateRangeItem>,
#[serde(rename = "lastUpdated")]
pub last_updated: String,
pub normalization: String,
pub units: Vec<RadarGetEmailSecurityTimeseriesGroupResponseResultMetaUnitsItem>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct RadarGetEmailSecurityTimeseriesGroupResponseResultMetaConfidenceInfo {
pub annotations:
Vec<RadarGetEmailSecurityTimeseriesGroupResponseResultMetaConfidenceInfoAnnotationsItem>,
pub level: i64,
}
pub type RadarGetEmailSecurityTimeseriesGroupResponseResultMetaConfidenceInfoAnnotationsItem =
super::shared::RadarGetAiBotsSummaryResponseResultMetaConfidenceInfoAnnotationsItemShape;
pub type RadarGetEmailSecurityTimeseriesGroupResponseResultMetaDateRangeItem =
super::shared::EndTimeStartTimeObject;
pub type RadarGetEmailSecurityTimeseriesGroupResponseResultMetaUnitsItem =
super::shared::NameValueObject;
pub type RadarGetEmailSecurityTimeseriesGroupResponseResultSerie0 = super::shared::TimestampsObject;
pub type DlpEmailScannerGetAccountMappingArgs = super::shared::AccountIdArgs;
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct DlpEmailScannerCreateAccountMappingArgs {
pub account_id: String,
pub body: DlpUpdateAddinAccountMapping,
}
pub type DlpEmailScannerListAllRulesArgs = super::shared::AccountIdArgs;
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct DlpEmailScannerCreateRuleArgs {
pub account_id: String,
pub body: DlpCreateEmailRule,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct DlpEmailScannerUpdateRulePrioritiesArgs {
pub account_id: String,
pub body: DlpUpdateEmailRulePriorities,
}
pub type DlpEmailScannerGetRuleArgs = super::shared::AccountIdRuleIdArgs;
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct DlpEmailScannerUpdateRuleArgs {
pub account_id: String,
pub rule_id: String,
pub body: DlpCreateEmailRule,
}
pub type DlpEmailScannerDeleteRuleArgs = super::shared::AccountIdRuleIdArgs;
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct EmailSecurityInvestigateArgs {
pub account_id: String,
pub start: Option<String>,
pub end: Option<String>,
pub query: Option<String>,
pub detections_only: Option<String>,
pub action_log: Option<String>,
pub final_disposition: Option<String>,
pub metric: Option<String>,
pub message_action: Option<String>,
pub recipient: Option<String>,
pub sender: Option<String>,
pub alert_id: Option<String>,
pub domain: Option<String>,
pub message_id: Option<String>,
pub subject: Option<String>,
pub exact_subject: Option<String>,
pub submissions: Option<String>,
pub cursor: Option<String>,
pub per_page: Option<String>,
pub page: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct EmailSecurityPostBulkMessageMoveArgs {
pub account_id: String,
pub body: EmailSecurityPostBulkMessageMoveRequest,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct EmailSecurityPostPreviewArgs {
pub account_id: String,
pub body: EmailSecurityPostPreviewRequest,
}
pub type EmailSecurityPostReleaseArgs = super::shared::AccountIdArgs;
pub type EmailSecurityGetMessageArgs = super::shared::AccountIdPostfixIdArgs;
pub type EmailSecurityGetMessageDetectionsArgs = super::shared::AccountIdPostfixIdArgs;
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct EmailSecurityPostMessageMoveArgs {
pub account_id: String,
pub postfix_id: String,
pub body: EmailSecurityPostMessageMoveRequest,
}
pub type EmailSecurityGetMessagePreviewArgs = super::shared::AccountIdPostfixIdArgs;
pub type EmailSecurityGetMessageRawArgs = super::shared::AccountIdPostfixIdArgs;
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct EmailSecurityPostReclassifyArgs {
pub account_id: String,
pub postfix_id: String,
pub body: EmailSecurityPostReclassifyRequest,
}
pub type EmailSecurityGetMessageTraceArgs = super::shared::AccountIdPostfixIdArgs;
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct EmailSecurityGetPhishguardReportsArgs {
pub account_id: String,
pub from_date: Option<String>,
pub to_date: Option<String>,
pub start: Option<String>,
pub end: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct EmailSecurityListAllowPoliciesArgs {
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_sender: Option<String>,
pub is_trusted_sender: Option<String>,
pub is_recipient: Option<String>,
pub is_exempt_recipient: Option<String>,
pub is_spoof: Option<String>,
pub is_acceptable_sender: Option<String>,
pub verify_sender: Option<String>,
pub pattern_type: Option<String>,
pub pattern: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct EmailSecurityCreateAllowPolicyArgs {
pub account_id: String,
pub body: EmailSecurityCreateAllowPolicy,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct EmailSecurityBatchAllowPoliciesArgs {
pub account_id: String,
pub body: EmailSecurityBatchAllowPoliciesRequest,
}
pub type EmailSecurityGetAllowPolicyArgs = super::shared::AccountIdPolicyIdArgs;
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct EmailSecurityUpdateAllowPolicyArgs {
pub account_id: String,
pub policy_id: String,
pub body: EmailSecurityUpdateAllowPolicy,
}
pub type EmailSecurityDeleteAllowPolicyArgs = super::shared::AccountIdPolicyIdArgs;
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct EmailSecurityListBlockedSendersArgs {
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 pattern_type: Option<String>,
pub pattern: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct EmailSecurityCreateBlockedSenderArgs {
pub account_id: String,
pub body: EmailSecurityCreateBlockedSender,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct EmailSecurityBatchBlockedSendersArgs {
pub account_id: String,
pub body: EmailSecurityBatchBlockedSendersRequest,
}
pub type EmailSecurityGetBlockedSenderArgs = super::shared::AccountIdPatternIdArgs;
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct EmailSecurityUpdateBlockedSenderArgs {
pub account_id: String,
pub pattern_id: String,
pub body: EmailSecurityUpdateBlockedSender,
}
pub type EmailSecurityDeleteBlockedSenderArgs = super::shared::AccountIdPatternIdArgs;
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct EmailSecurityListDisplayNamesArgs {
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 provenance: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct EmailSecurityCreateDisplayNameArgs {
pub account_id: String,
pub body: EmailSecurityCreateDisplayName,
}
pub type EmailSecurityGetDisplayNameArgs = super::shared::AccountIdDisplayNameIdArgs;
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct EmailSecurityUpdateDisplayNameArgs {
pub account_id: String,
pub display_name_id: String,
pub body: EmailSecurityUpdateDisplayNameRequest,
}
pub type EmailSecurityDeleteDisplayNameArgs = super::shared::AccountIdDisplayNameIdArgs;
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct EmailSecuritySubmissionsArgs {
pub account_id: String,
pub start: Option<String>,
pub end: Option<String>,
pub r#type: Option<String>,
pub submission_id: Option<String>,
pub original_disposition: Option<String>,
pub requested_disposition: Option<String>,
pub outcome_disposition: Option<String>,
pub status: Option<String>,
pub query: Option<String>,
pub customer_status: Option<String>,
pub page: Option<String>,
pub per_page: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct EmailRoutingDestinationAddressesListDestinationAddressesArgs {
pub account_id: String,
pub page: Option<String>,
pub per_page: Option<String>,
pub direction: Option<String>,
pub verified: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct EmailRoutingDestinationAddressesCreateADestinationAddressArgs {
pub account_id: String,
pub body: EmailCreateDestinationAddressProperties,
}
pub type EmailRoutingDestinationAddressesGetADestinationAddressArgs =
super::shared::DestinationAddressIdentifierAccountIdArgs;
pub type EmailRoutingDestinationAddressesDeleteDestinationAddressArgs =
super::shared::DestinationAddressIdentifierAccountIdArgs;
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct EmailSendingAccountSendBuilderArgs {
pub account_id: String,
pub body: EmailSendingEmailBuilder,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct EmailSendingAccountSendRawMessageArgs {
pub account_id: String,
pub body: EmailSendingSendRawRequest,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct RadarGetEmailRoutingSummaryArgs {
pub dimension: String,
pub name: Vec<String>,
pub date_range: Vec<String>,
pub date_start: Vec<String>,
pub date_end: Vec<String>,
pub arc: Vec<String>,
pub dkim: Vec<String>,
pub dmarc: Vec<String>,
pub spf: Vec<String>,
pub ip_version: Vec<String>,
pub encrypted: Vec<String>,
pub limit_per_group: Option<String>,
pub format: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct RadarGetEmailRoutingTimeseriesGroupArgs {
pub dimension: String,
pub agg_interval: Option<String>,
pub name: Vec<String>,
pub date_range: Vec<String>,
pub date_start: Vec<String>,
pub date_end: Vec<String>,
pub arc: Vec<String>,
pub dkim: Vec<String>,
pub dmarc: Vec<String>,
pub spf: Vec<String>,
pub ip_version: Vec<String>,
pub encrypted: Vec<String>,
pub limit_per_group: Option<String>,
pub format: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct RadarGetEmailSecuritySummaryArgs {
pub dimension: String,
pub name: Vec<String>,
pub date_range: Vec<String>,
pub date_start: Vec<String>,
pub date_end: Vec<String>,
pub arc: Vec<String>,
pub dkim: Vec<String>,
pub dmarc: Vec<String>,
pub spf: Vec<String>,
pub tls_version: Vec<String>,
pub limit_per_group: Option<String>,
pub format: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct RadarGetEmailSecurityTimeseriesGroupArgs {
pub dimension: String,
pub agg_interval: Option<String>,
pub name: Vec<String>,
pub date_range: Vec<String>,
pub date_start: Vec<String>,
pub date_end: Vec<String>,
pub arc: Vec<String>,
pub dkim: Vec<String>,
pub dmarc: Vec<String>,
pub spf: Vec<String>,
pub tls_version: Vec<String>,
pub limit_per_group: Option<String>,
pub format: Option<String>,
}
pub async fn dlp_email_scanner_get_account_mapping_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &DlpEmailScannerGetAccountMappingArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<DlpEmailScannerGetAccountMappingResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/dlp/email/account_mapping", args.account_id,);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::get(&endpoint_url)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn dlp_email_scanner_create_account_mapping_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &DlpEmailScannerCreateAccountMappingArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<DlpEmailScannerCreateAccountMappingResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/dlp/email/account_mapping", args.account_id,);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::post(&endpoint_url)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
builder = builder
.body_json(&args.body)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn dlp_email_scanner_list_all_rules_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &DlpEmailScannerListAllRulesArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<DlpEmailScannerListAllRulesResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/dlp/email/rules", args.account_id,);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::get(&endpoint_url)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn dlp_email_scanner_create_rule_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &DlpEmailScannerCreateRuleArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<DlpEmailScannerCreateRuleResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/dlp/email/rules", args.account_id,);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::post(&endpoint_url)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
builder = builder
.body_json(&args.body)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn dlp_email_scanner_update_rule_priorities_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &DlpEmailScannerUpdateRulePrioritiesArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<DlpEmailScannerUpdateRulePrioritiesResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/dlp/email/rules", args.account_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);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn dlp_email_scanner_get_rule_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &DlpEmailScannerGetRuleArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<DlpEmailScannerGetRuleResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/dlp/email/rules/{}",
args.account_id, args.rule_id,
);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::get(&endpoint_url)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn dlp_email_scanner_update_rule_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &DlpEmailScannerUpdateRuleArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<DlpEmailScannerUpdateRuleResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/dlp/email/rules/{}",
args.account_id, args.rule_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);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn dlp_email_scanner_delete_rule_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &DlpEmailScannerDeleteRuleArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<DlpEmailScannerDeleteRuleResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/dlp/email/rules/{}",
args.account_id, args.rule_id,
);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::delete(&endpoint_url)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn email_security_investigate_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &EmailSecurityInvestigateArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSecurityInvestigateResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/email-security/investigate", 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("start", args.start.as_deref());
builder = builder.query("end", args.end.as_deref());
builder = builder.query("query", args.query.as_deref());
builder = builder.query("detections_only", args.detections_only.as_deref());
builder = builder.query("action_log", args.action_log.as_deref());
builder = builder.query("final_disposition", args.final_disposition.as_deref());
builder = builder.query("metric", args.metric.as_deref());
builder = builder.query("message_action", args.message_action.as_deref());
builder = builder.query("recipient", args.recipient.as_deref());
builder = builder.query("sender", args.sender.as_deref());
builder = builder.query("alert_id", args.alert_id.as_deref());
builder = builder.query("domain", args.domain.as_deref());
builder = builder.query("message_id", args.message_id.as_deref());
builder = builder.query("subject", args.subject.as_deref());
builder = builder.query("exact_subject", args.exact_subject.as_deref());
builder = builder.query("submissions", args.submissions.as_deref());
builder = builder.query("cursor", args.cursor.as_deref());
builder = builder.query("per_page", args.per_page.as_deref());
builder = builder.query("page", args.page.as_deref());
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn email_security_post_bulk_message_move_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &EmailSecurityPostBulkMessageMoveArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSecurityPostBulkMessageMoveResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/email-security/investigate/move",
args.account_id,
);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::post(&endpoint_url)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
builder = builder
.body_json(&args.body)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn email_security_post_preview_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &EmailSecurityPostPreviewArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSecurityPostPreviewResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/email-security/investigate/preview",
args.account_id,
);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::post(&endpoint_url)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
builder = builder
.body_json(&args.body)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn email_security_post_release_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &EmailSecurityPostReleaseArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSecurityPostReleaseResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/email-security/investigate/release",
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()))?;
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn email_security_get_message_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &EmailSecurityGetMessageArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSecurityGetMessageResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/email-security/investigate/{}",
args.account_id, args.postfix_id,
);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::get(&endpoint_url)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn email_security_get_message_detections_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &EmailSecurityGetMessageDetectionsArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSecurityGetMessageDetectionsResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/email-security/investigate/{}/detections",
args.account_id, args.postfix_id,
);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::get(&endpoint_url)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn email_security_post_message_move_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &EmailSecurityPostMessageMoveArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSecurityPostMessageMoveResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/email-security/investigate/{}/move",
args.account_id, args.postfix_id,
);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::post(&endpoint_url)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
builder = builder
.body_json(&args.body)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn email_security_get_message_preview_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &EmailSecurityGetMessagePreviewArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSecurityGetMessagePreviewResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/email-security/investigate/{}/preview",
args.account_id, args.postfix_id,
);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::get(&endpoint_url)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn email_security_get_message_raw_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &EmailSecurityGetMessageRawArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSecurityGetMessageRawResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/email-security/investigate/{}/raw",
args.account_id, args.postfix_id,
);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::get(&endpoint_url)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn email_security_post_reclassify_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &EmailSecurityPostReclassifyArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSecurityPostReclassifyResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/email-security/investigate/{}/reclassify",
args.account_id, args.postfix_id,
);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::post(&endpoint_url)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
builder = builder
.body_json(&args.body)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn email_security_get_message_trace_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &EmailSecurityGetMessageTraceArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSecurityGetMessageTraceResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/email-security/investigate/{}/trace",
args.account_id, args.postfix_id,
);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::get(&endpoint_url)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn email_security_get_phishguard_reports_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &EmailSecurityGetPhishguardReportsArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSecurityGetPhishguardReportsResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/email-security/phishguard/reports",
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("from_date", args.from_date.as_deref());
builder = builder.query("to_date", args.to_date.as_deref());
builder = builder.query("start", args.start.as_deref());
builder = builder.query("end", args.end.as_deref());
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn email_security_list_allow_policies_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &EmailSecurityListAllowPoliciesArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSecurityListAllowPoliciesResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/email-security/settings/allow_policies",
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_sender", args.is_sender.as_deref());
builder = builder.query("is_trusted_sender", args.is_trusted_sender.as_deref());
builder = builder.query("is_recipient", args.is_recipient.as_deref());
builder = builder.query("is_exempt_recipient", args.is_exempt_recipient.as_deref());
builder = builder.query("is_spoof", args.is_spoof.as_deref());
builder = builder.query("is_acceptable_sender", args.is_acceptable_sender.as_deref());
builder = builder.query("verify_sender", args.verify_sender.as_deref());
builder = builder.query("pattern_type", args.pattern_type.as_deref());
builder = builder.query("pattern", args.pattern.as_deref());
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn email_security_create_allow_policy_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &EmailSecurityCreateAllowPolicyArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSecurityCreateAllowPolicyResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/email-security/settings/allow_policies",
args.account_id,
);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::post(&endpoint_url)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
builder = builder
.body_json(&args.body)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn email_security_batch_allow_policies_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &EmailSecurityBatchAllowPoliciesArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSecurityBatchAllowPoliciesResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/email-security/settings/allow_policies/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);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn email_security_get_allow_policy_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &EmailSecurityGetAllowPolicyArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSecurityGetAllowPolicyResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/email-security/settings/allow_policies/{}",
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);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn email_security_update_allow_policy_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &EmailSecurityUpdateAllowPolicyArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSecurityUpdateAllowPolicyResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/email-security/settings/allow_policies/{}",
args.account_id, args.policy_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);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn email_security_delete_allow_policy_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &EmailSecurityDeleteAllowPolicyArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSecurityDeleteAllowPolicyResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/email-security/settings/allow_policies/{}",
args.account_id, args.policy_id,
);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::delete(&endpoint_url)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn email_security_list_blocked_senders_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &EmailSecurityListBlockedSendersArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSecurityListBlockedSendersResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/email-security/settings/block_senders",
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("pattern_type", args.pattern_type.as_deref());
builder = builder.query("pattern", args.pattern.as_deref());
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn email_security_create_blocked_sender_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &EmailSecurityCreateBlockedSenderArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSecurityCreateBlockedSenderResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/email-security/settings/block_senders",
args.account_id,
);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::post(&endpoint_url)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
builder = builder
.body_json(&args.body)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn email_security_batch_blocked_senders_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &EmailSecurityBatchBlockedSendersArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSecurityBatchBlockedSendersResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/email-security/settings/block_senders/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);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn email_security_get_blocked_sender_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &EmailSecurityGetBlockedSenderArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSecurityGetBlockedSenderResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/email-security/settings/block_senders/{}",
args.account_id, args.pattern_id,
);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::get(&endpoint_url)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn email_security_update_blocked_sender_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &EmailSecurityUpdateBlockedSenderArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSecurityUpdateBlockedSenderResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/email-security/settings/block_senders/{}",
args.account_id, args.pattern_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);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn email_security_delete_blocked_sender_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &EmailSecurityDeleteBlockedSenderArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSecurityDeleteBlockedSenderResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/email-security/settings/block_senders/{}",
args.account_id, args.pattern_id,
);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::delete(&endpoint_url)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn email_security_list_display_names_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &EmailSecurityListDisplayNamesArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSecurityListDisplayNamesResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/email-security/settings/impersonation_registry",
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("provenance", args.provenance.as_deref());
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn email_security_create_display_name_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &EmailSecurityCreateDisplayNameArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSecurityCreateDisplayNameResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/email-security/settings/impersonation_registry",
args.account_id,
);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::post(&endpoint_url)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
builder = builder
.body_json(&args.body)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn email_security_get_display_name_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &EmailSecurityGetDisplayNameArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSecurityGetDisplayNameResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/email-security/settings/impersonation_registry/{}",
args.account_id, args.display_name_id,
);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::get(&endpoint_url)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn email_security_update_display_name_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &EmailSecurityUpdateDisplayNameArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSecurityUpdateDisplayNameResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/email-security/settings/impersonation_registry/{}",
args.account_id, args.display_name_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);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn email_security_delete_display_name_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &EmailSecurityDeleteDisplayNameArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSecurityDeleteDisplayNameResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/email-security/settings/impersonation_registry/{}",
args.account_id, args.display_name_id,
);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::delete(&endpoint_url)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn email_security_submissions_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &EmailSecuritySubmissionsArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSecuritySubmissionsResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/email-security/submissions", 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("start", args.start.as_deref());
builder = builder.query("end", args.end.as_deref());
builder = builder.query("type", args.r#type.as_deref());
builder = builder.query("submission_id", args.submission_id.as_deref());
builder = builder.query("original_disposition", args.original_disposition.as_deref());
builder = builder.query(
"requested_disposition",
args.requested_disposition.as_deref(),
);
builder = builder.query("outcome_disposition", args.outcome_disposition.as_deref());
builder = builder.query("status", args.status.as_deref());
builder = builder.query("query", args.query.as_deref());
builder = builder.query("customer_status", args.customer_status.as_deref());
builder = builder.query("page", args.page.as_deref());
builder = builder.query("per_page", args.per_page.as_deref());
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn email_routing_destination_addresses_list_destination_addresses_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &EmailRoutingDestinationAddressesListDestinationAddressesArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailDestinationAddressesResponseCollection>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/email/routing/addresses", 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("direction", args.direction.as_deref());
builder = builder.query("verified", args.verified.as_deref());
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn email_routing_destination_addresses_create_a_destination_address_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &EmailRoutingDestinationAddressesCreateADestinationAddressArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailDestinationAddressResponseSingle>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/email/routing/addresses", args.account_id,);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::post(&endpoint_url)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
builder = builder
.body_json(&args.body)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn email_routing_destination_addresses_get_a_destination_address_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &EmailRoutingDestinationAddressesGetADestinationAddressArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailDestinationAddressResponseSingle>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/email/routing/addresses/{}",
args.account_id, args.destination_address_identifier,
);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::get(&endpoint_url)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn email_routing_destination_addresses_delete_destination_address_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &EmailRoutingDestinationAddressesDeleteDestinationAddressArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailDestinationAddressResponseSingle>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/email/routing/addresses/{}",
args.account_id, args.destination_address_identifier,
);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::delete(&endpoint_url)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn email_sending_account_send_builder_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &EmailSendingAccountSendBuilderArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSendingAccountSendBuilderResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/email/sending/send", args.account_id,);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::post(&endpoint_url)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
builder = builder
.body_json(&args.body)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn email_sending_account_send_raw_message_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &EmailSendingAccountSendRawMessageArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<EmailSendingAccountSendRawMessageResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/email/sending/send_raw", args.account_id,);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::post(&endpoint_url)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
builder = builder
.body_json(&args.body)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn radar_get_email_routing_summary_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &RadarGetEmailRoutingSummaryArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<RadarGetEmailRoutingSummaryResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/radar/email/routing/summary/{}", args.dimension,);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::get(&endpoint_url)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
for value in &args.name {
builder = builder.query("name", Some(value.as_str()));
}
for value in &args.date_range {
builder = builder.query("dateRange", Some(value.as_str()));
}
for value in &args.date_start {
builder = builder.query("dateStart", Some(value.as_str()));
}
for value in &args.date_end {
builder = builder.query("dateEnd", Some(value.as_str()));
}
for value in &args.arc {
builder = builder.query("arc", Some(value.as_str()));
}
for value in &args.dkim {
builder = builder.query("dkim", Some(value.as_str()));
}
for value in &args.dmarc {
builder = builder.query("dmarc", Some(value.as_str()));
}
for value in &args.spf {
builder = builder.query("spf", Some(value.as_str()));
}
for value in &args.ip_version {
builder = builder.query("ipVersion", Some(value.as_str()));
}
for value in &args.encrypted {
builder = builder.query("encrypted", Some(value.as_str()));
}
builder = builder.query("limitPerGroup", args.limit_per_group.as_deref());
builder = builder.query("format", args.format.as_deref());
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn radar_get_email_routing_timeseries_group_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &RadarGetEmailRoutingTimeseriesGroupArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<RadarGetEmailRoutingTimeseriesGroupResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/radar/email/routing/timeseries_groups/{}", args.dimension,);
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("aggInterval", args.agg_interval.as_deref());
for value in &args.name {
builder = builder.query("name", Some(value.as_str()));
}
for value in &args.date_range {
builder = builder.query("dateRange", Some(value.as_str()));
}
for value in &args.date_start {
builder = builder.query("dateStart", Some(value.as_str()));
}
for value in &args.date_end {
builder = builder.query("dateEnd", Some(value.as_str()));
}
for value in &args.arc {
builder = builder.query("arc", Some(value.as_str()));
}
for value in &args.dkim {
builder = builder.query("dkim", Some(value.as_str()));
}
for value in &args.dmarc {
builder = builder.query("dmarc", Some(value.as_str()));
}
for value in &args.spf {
builder = builder.query("spf", Some(value.as_str()));
}
for value in &args.ip_version {
builder = builder.query("ipVersion", Some(value.as_str()));
}
for value in &args.encrypted {
builder = builder.query("encrypted", Some(value.as_str()));
}
builder = builder.query("limitPerGroup", args.limit_per_group.as_deref());
builder = builder.query("format", args.format.as_deref());
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn radar_get_email_security_summary_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &RadarGetEmailSecuritySummaryArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<RadarGetEmailSecuritySummaryResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/radar/email/security/summary/{}", args.dimension,);
let endpoint_url = format!("{}{}", base_url, path);
let mut builder = PreparedRequestBuilder::get(&endpoint_url)
.map_err(|e| super::shared::ApiError::RequestBuildFailed(e.to_string()))?;
for value in &args.name {
builder = builder.query("name", Some(value.as_str()));
}
for value in &args.date_range {
builder = builder.query("dateRange", Some(value.as_str()));
}
for value in &args.date_start {
builder = builder.query("dateStart", Some(value.as_str()));
}
for value in &args.date_end {
builder = builder.query("dateEnd", Some(value.as_str()));
}
for value in &args.arc {
builder = builder.query("arc", Some(value.as_str()));
}
for value in &args.dkim {
builder = builder.query("dkim", Some(value.as_str()));
}
for value in &args.dmarc {
builder = builder.query("dmarc", Some(value.as_str()));
}
for value in &args.spf {
builder = builder.query("spf", Some(value.as_str()));
}
for value in &args.tls_version {
builder = builder.query("tlsVersion", Some(value.as_str()));
}
builder = builder.query("limitPerGroup", args.limit_per_group.as_deref());
builder = builder.query("format", args.format.as_deref());
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn radar_get_email_security_timeseries_group_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &RadarGetEmailSecurityTimeseriesGroupArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<RadarGetEmailSecurityTimeseriesGroupResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/radar/email/security/timeseries_groups/{}", args.dimension,);
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("aggInterval", args.agg_interval.as_deref());
for value in &args.name {
builder = builder.query("name", Some(value.as_str()));
}
for value in &args.date_range {
builder = builder.query("dateRange", Some(value.as_str()));
}
for value in &args.date_start {
builder = builder.query("dateStart", Some(value.as_str()));
}
for value in &args.date_end {
builder = builder.query("dateEnd", Some(value.as_str()));
}
for value in &args.arc {
builder = builder.query("arc", Some(value.as_str()));
}
for value in &args.dkim {
builder = builder.query("dkim", Some(value.as_str()));
}
for value in &args.dmarc {
builder = builder.query("dmarc", Some(value.as_str()));
}
for value in &args.spf {
builder = builder.query("spf", Some(value.as_str()));
}
for value in &args.tls_version {
builder = builder.query("tlsVersion", Some(value.as_str()));
}
builder = builder.query("limitPerGroup", args.limit_per_group.as_deref());
builder = builder.query("format", args.format.as_deref());
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}