#![cfg(feature = "cloudflare_events")]
#![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::AaaIdResponse;
use super::shared::ResourceTaggingTaggedResourceResponseSingle;
use super::shared::AaaApiResponseSingle;
use super::shared::AaaSchemasApiResponseCommon;
use super::shared::AaaUuid;
use super::shared::ResourceTaggingAccessApplicationId;
use super::shared::ResourceTaggingApiResponseCommon;
use super::shared::ResourceTaggingEtag;
use super::shared::ResourceTaggingIdentifier;
use super::shared::ResourceTaggingResourceId;
use super::shared::ResourceTaggingResourceName;
use super::shared::ResourceTaggingTaggedResourceObject;
use super::shared::ResourceTaggingTaggedResourceObjectAccessApplication;
use super::shared::ResourceTaggingTaggedResourceObjectAccessApplicationPolicy;
use super::shared::ResourceTaggingTaggedResourceObjectAccessApplicationPolicyBase;
use super::shared::ResourceTaggingTaggedResourceObjectAccessGroup;
use super::shared::ResourceTaggingTaggedResourceObjectAccount;
use super::shared::ResourceTaggingTaggedResourceObjectAccountLevelBase;
use super::shared::ResourceTaggingTaggedResourceObjectAiGateway;
use super::shared::ResourceTaggingTaggedResourceObjectAlertingPolicy;
use super::shared::ResourceTaggingTaggedResourceObjectAlertingWebhook;
use super::shared::ResourceTaggingTaggedResourceObjectApiGatewayOperation;
use super::shared::ResourceTaggingTaggedResourceObjectCloudflaredTunnel;
use super::shared::ResourceTaggingTaggedResourceObjectCustomCertificate;
use super::shared::ResourceTaggingTaggedResourceObjectCustomHostname;
use super::shared::ResourceTaggingTaggedResourceObjectD1Database;
use super::shared::ResourceTaggingTaggedResourceObjectDnsRecord;
use super::shared::ResourceTaggingTaggedResourceObjectDurableObjectNamespace;
use super::shared::ResourceTaggingTaggedResourceObjectGatewayList;
use super::shared::ResourceTaggingTaggedResourceObjectGatewayRule;
use super::shared::ResourceTaggingTaggedResourceObjectImage;
use super::shared::ResourceTaggingTaggedResourceObjectKvNamespace;
use super::shared::ResourceTaggingTaggedResourceObjectManagedClientCertificate;
use super::shared::ResourceTaggingTaggedResourceObjectQueue;
use super::shared::ResourceTaggingTaggedResourceObjectR2Bucket;
use super::shared::ResourceTaggingTaggedResourceObjectResourceShare;
use super::shared::ResourceTaggingTaggedResourceObjectStreamLiveInput;
use super::shared::ResourceTaggingTaggedResourceObjectStreamVideo;
use super::shared::ResourceTaggingTaggedResourceObjectWorker;
use super::shared::ResourceTaggingTaggedResourceObjectWorkerVersion;
use super::shared::ResourceTaggingTaggedResourceObjectWorkerVersionBase;
use super::shared::ResourceTaggingTaggedResourceObjectZone;
use super::shared::ResourceTaggingTaggedResourceObjectZoneLevelBase;
use super::shared::ResourceTaggingTags;
use super::shared::ResourceTaggingWorkerId;
use super::shared::ResourceTaggingZoneId;
use super::shared::ApiResponse;
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct AaaAlertBody {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct AaaAlertsResponseCollection {
pub result: Option<serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct AaaApiResponseCollection {
pub result_info: Option<AaaSchemasResultInfo>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct AaaComponentsSchemasDescription {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct AaaComponentsSchemasMessages {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct AaaComponentsSchemasName {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct AaaComponentsSchemasResponseCollection {
pub result: Option<Vec<AaaPagerduty>>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct AaaComponentsSchemasType {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct AaaCreatedAt {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct AaaHistory {
pub alert_body: Option<AaaAlertBody>,
pub alert_type: Option<AaaSchemasAlertType>,
pub description: Option<AaaComponentsSchemasDescription>,
pub id: Option<AaaUuid>,
pub mechanism: Option<AaaMechanism>,
pub mechanism_type: Option<AaaMechanismType>,
pub name: Option<AaaSchemasName>,
pub policy_id: Option<AaaPolicyId>,
pub sent: Option<AaaSent>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct AaaHistoryComponentsSchemasResponseCollection {
pub result: Option<Vec<AaaHistory>>,
pub result_info: Option<serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct AaaLastFailure {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct AaaLastSuccess {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct AaaMechanism {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct AaaMechanismType {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct AaaName {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct AaaPagerduty {
pub id: Option<AaaUuid>,
pub name: Option<AaaName>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct AaaPolicyId {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct AaaSchemasAlertType {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct AaaSchemasName {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct AaaSchemasResponseCollection {
pub result: Option<serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct AaaSchemasResultInfo {
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 AaaSchemasSingleResponse {
pub result: Option<AaaWebhooks>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct AaaSecret {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct AaaSensitiveIdResponse {
pub result: Option<std::collections::HashMap<String, serde_json::Value>>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct AaaSent {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct AaaSilence {
pub created_at: Option<String>,
pub end_time: Option<String>,
pub id: Option<AaaSilenceId>,
pub policy_id: Option<AaaPolicyId>,
pub start_time: Option<String>,
pub updated_at: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct AaaSilenceComponentsSchemasResponseCollection {
pub result: Option<AaaSilence>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct AaaSilenceCreateRequest {
pub end_time: Option<String>,
pub policy_id: Option<AaaPolicyId>,
pub start_time: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct AaaSilenceId {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct AaaSilenceUpdateRequest {
pub end_time: Option<String>,
pub id: Option<AaaSilenceId>,
pub start_time: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct AaaSilencesComponentsSchemasResponseCollection {
pub result: Option<Vec<AaaSilence>>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct AaaToken {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct AaaUrl {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct AaaWebhookId {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct AaaWebhooks {
pub created_at: Option<AaaCreatedAt>,
pub id: Option<AaaWebhookId>,
pub last_failure: Option<AaaLastFailure>,
pub last_success: Option<AaaLastSuccess>,
pub name: Option<AaaComponentsSchemasName>,
pub secret: Option<AaaSecret>,
#[serde(rename = "type")]
pub r#type: Option<AaaComponentsSchemasType>,
pub url: Option<AaaUrl>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct AaaWebhooksComponentsSchemasResponseCollection {
pub result: Option<Vec<AaaWebhooks>>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct NotificationWebhooksCreateAWebhookRequest {
pub name: AaaComponentsSchemasName,
pub secret: Option<AaaSecret>,
pub url: AaaUrl,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct NotificationWebhooksUpdateAWebhookRequest {
pub name: AaaComponentsSchemasName,
pub secret: Option<AaaSecret>,
pub url: AaaUrl,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct ResourceTaggingAccountResourceTypeBaseEnum {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct ResourceTaggingAccountResourceTypeWorkerVersionEnum {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct ResourceTaggingCursorResultInfo {
pub count: Option<i64>,
pub cursor: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct ResourceTaggingDeleteTagsRequestAccountLevel {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct ResourceTaggingDeleteTagsRequestAccountLevelBase {
pub resource_id: ResourceTaggingResourceId,
pub resource_type: ResourceTaggingAccountResourceTypeBaseEnum,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct ResourceTaggingDeleteTagsRequestAccountLevelWorkerVersion {
pub resource_type: Option<ResourceTaggingAccountResourceTypeWorkerVersionEnum>,
pub worker_id: ResourceTaggingWorkerId,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct ResourceTaggingMessages {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct ResourceTaggingSetTagsRequestAccountLevel {
#[serde(flatten)]
pub data: std::collections::HashMap<String, serde_json::Value>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct ResourceTaggingSetTagsRequestAccountLevelBase {
pub tags: Option<ResourceTaggingTags>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct ResourceTaggingSetTagsRequestAccountLevelWorkerVersion {
pub tags: Option<ResourceTaggingTags>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct ResourceTaggingTagKeysResponseCollection {
pub result: Option<Vec<String>>,
pub result_info: Option<ResourceTaggingCursorResultInfo>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct ResourceTaggingTagValuesResponseCollection {
pub result: Option<Vec<String>>,
pub result_info: Option<ResourceTaggingCursorResultInfo>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct ResourceTaggingTaggedResourceResponseCollection {
pub result: Option<Vec<ResourceTaggingTaggedResourceObject>>,
pub result_info: Option<ResourceTaggingCursorResultInfo>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct WorSendEventWorkflowInstanceResponse {
pub errors: Vec<WorSendEventWorkflowInstanceResponseErrorsItem>,
pub messages: Vec<WorSendEventWorkflowInstanceResponseMessagesItem>,
pub result: Option<serde_json::Value>,
pub result_info: Option<WorSendEventWorkflowInstanceResponseResultInfo>,
pub success: bool,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct WorSendEventWorkflowInstanceResponseErrorsItem {
pub code: f64,
pub message: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct WorSendEventWorkflowInstanceResponseMessagesItem {
pub code: f64,
pub message: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct WorSendEventWorkflowInstanceResponseResultInfo {
pub count: f64,
pub cursor: Option<String>,
pub page: Option<f64>,
pub per_page: f64,
pub total_count: f64,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct NotificationAlertTypesGetAlertTypesArgs {
pub account_id: String,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct NotificationMechanismEligibilityGetDeliveryMechanismEligibilityArgs {
pub account_id: String,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct NotificationDestinationsWithPagerDutyListPagerDutyServicesArgs {
pub account_id: String,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct NotificationDestinationsWithPagerDutyDeletePagerDutyServicesArgs {
pub account_id: String,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct NotificationDestinationsWithPagerDutyConnectPagerDutyArgs {
pub account_id: String,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct NotificationWebhooksListWebhooksArgs {
pub account_id: String,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct NotificationWebhooksCreateAWebhookArgs {
pub account_id: String,
pub body: NotificationWebhooksCreateAWebhookRequest,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct NotificationWebhooksGetAWebhookArgs {
pub account_id: String,
pub webhook_id: String,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct NotificationWebhooksUpdateAWebhookArgs {
pub webhook_id: String,
pub account_id: String,
pub body: NotificationWebhooksUpdateAWebhookRequest,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct NotificationWebhooksDeleteAWebhookArgs {
pub webhook_id: String,
pub account_id: String,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct NotificationHistoryListHistoryArgs {
pub account_id: String,
pub per_page: Option<String>,
pub before: Option<String>,
pub page: Option<String>,
pub since: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct NotificationSilencesListSilencesArgs {
pub account_id: String,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct NotificationSilencesCreateSilencesArgs {
pub account_id: String,
pub body: Vec<AaaSilenceCreateRequest>,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct NotificationSilencesUpdateSilencesArgs {
pub account_id: String,
pub body: Vec<AaaSilenceUpdateRequest>,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct NotificationSilencesGetSilenceArgs {
pub account_id: String,
pub silence_id: String,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct NotificationSilencesDeleteSilencesArgs {
pub account_id: String,
pub silence_id: String,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct TagsGetArgs {
pub account_id: String,
pub resource_id: Option<String>,
pub resource_type: Option<String>,
pub worker_id: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct TagsSetArgs {
pub account_id: String,
pub body: ResourceTaggingSetTagsRequestAccountLevel,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct TagsDeleteArgs {
pub account_id: String,
pub body: ResourceTaggingDeleteTagsRequestAccountLevel,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct TagsListKeysArgs {
pub account_id: String,
pub cursor: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct TagsListArgs {
pub account_id: String,
pub r#type: Option<String>,
pub tag: Option<String>,
pub cursor: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct TagsListValuesArgs {
pub account_id: String,
pub tag_key: String,
pub r#type: Option<String>,
pub cursor: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct WorSendEventWorkflowInstanceArgs {
pub workflow_name: String,
pub instance_id: String,
pub event_type: String,
pub account_id: String,
}
pub async fn notification_alert_types_get_alert_types_request<F>(
client: DynNetClient,
args: &NotificationAlertTypesGetAlertTypesArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<AaaAlertsResponseCollection>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/alerting/v3/available_alerts",
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: AaaAlertsResponseCollection = 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 notification_mechanism_eligibility_get_delivery_mechanism_eligibility_request<F>(
client: DynNetClient,
args: &NotificationMechanismEligibilityGetDeliveryMechanismEligibilityArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<AaaSchemasResponseCollection>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/alerting/v3/destinations/eligible",
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: AaaSchemasResponseCollection = 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 notification_destinations_with_pager_duty_list_pager_duty_services_request<F>(
client: DynNetClient,
args: &NotificationDestinationsWithPagerDutyListPagerDutyServicesArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<AaaComponentsSchemasResponseCollection>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/alerting/v3/destinations/pagerduty",
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: AaaComponentsSchemasResponseCollection = 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 notification_destinations_with_pager_duty_delete_pager_duty_services_request<F>(
client: DynNetClient,
args: &NotificationDestinationsWithPagerDutyDeletePagerDutyServicesArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<AaaSchemasApiResponseCommon>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/alerting/v3/destinations/pagerduty",
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()))?;
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: AaaSchemasApiResponseCommon = 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 notification_destinations_with_pager_duty_connect_pager_duty_request<F>(
client: DynNetClient,
args: &NotificationDestinationsWithPagerDutyConnectPagerDutyArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<AaaSensitiveIdResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/alerting/v3/destinations/pagerduty/connect",
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);
}
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: AaaSensitiveIdResponse = 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 notification_webhooks_list_webhooks_request<F>(
client: DynNetClient,
args: &NotificationWebhooksListWebhooksArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<AaaWebhooksComponentsSchemasResponseCollection>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/alerting/v3/destinations/webhooks",
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: AaaWebhooksComponentsSchemasResponseCollection = 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 notification_webhooks_create_a_webhook_request<F>(
client: DynNetClient,
args: &NotificationWebhooksCreateAWebhookArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<AaaIdResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/alerting/v3/destinations/webhooks",
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: AaaIdResponse = 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 notification_webhooks_get_a_webhook_request<F>(
client: DynNetClient,
args: &NotificationWebhooksGetAWebhookArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<AaaSchemasSingleResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/alerting/v3/destinations/webhooks/{}",
args.account_id,
args.webhook_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: AaaSchemasSingleResponse = 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 notification_webhooks_update_a_webhook_request<F>(
client: DynNetClient,
args: &NotificationWebhooksUpdateAWebhookArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<AaaIdResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/alerting/v3/destinations/webhooks/{}",
args.account_id,
args.webhook_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: AaaIdResponse = 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 notification_webhooks_delete_a_webhook_request<F>(
client: DynNetClient,
args: &NotificationWebhooksDeleteAWebhookArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<AaaSchemasApiResponseCommon>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/alerting/v3/destinations/webhooks/{}",
args.account_id,
args.webhook_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: AaaSchemasApiResponseCommon = 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 notification_history_list_history_request<F>(
client: DynNetClient,
args: &NotificationHistoryListHistoryArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<AaaHistoryComponentsSchemasResponseCollection>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/alerting/v3/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("per_page", args.per_page.as_deref());
builder = builder.query("before", args.before.as_deref());
builder = builder.query("page", args.page.as_deref());
builder = builder.query("since", args.since.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: AaaHistoryComponentsSchemasResponseCollection = 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 notification_silences_list_silences_request<F>(
client: DynNetClient,
args: &NotificationSilencesListSilencesArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<AaaSilencesComponentsSchemasResponseCollection>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/alerting/v3/silences",
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: AaaSilencesComponentsSchemasResponseCollection = 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 notification_silences_create_silences_request<F>(
client: DynNetClient,
args: &NotificationSilencesCreateSilencesArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<AaaSchemasApiResponseCommon>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/alerting/v3/silences",
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: AaaSchemasApiResponseCommon = 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 notification_silences_update_silences_request<F>(
client: DynNetClient,
args: &NotificationSilencesUpdateSilencesArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<AaaSilencesComponentsSchemasResponseCollection>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/alerting/v3/silences",
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: AaaSilencesComponentsSchemasResponseCollection = 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 notification_silences_get_silence_request<F>(
client: DynNetClient,
args: &NotificationSilencesGetSilenceArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<AaaSilenceComponentsSchemasResponseCollection>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/alerting/v3/silences/{}",
args.account_id,
args.silence_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: AaaSilenceComponentsSchemasResponseCollection = 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 notification_silences_delete_silences_request<F>(
client: DynNetClient,
args: &NotificationSilencesDeleteSilencesArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<AaaSchemasApiResponseCommon>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/alerting/v3/silences/{}",
args.account_id,
args.silence_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: AaaSchemasApiResponseCommon = 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 tags_get_request<F>(
client: DynNetClient,
args: &TagsGetArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<ResourceTaggingTaggedResourceResponseSingle>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/tags",
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("resource_id", args.resource_id.as_deref());
builder = builder.query("resource_type", args.resource_type.as_deref());
builder = builder.query("worker_id", args.worker_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: ResourceTaggingTaggedResourceResponseSingle = 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 tags_set_request<F>(
client: DynNetClient,
args: &TagsSetArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<ResourceTaggingTaggedResourceResponseSingle>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/tags",
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: ResourceTaggingTaggedResourceResponseSingle = 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 tags_delete_request<F>(
client: DynNetClient,
args: &TagsDeleteArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<()>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/tags",
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 });
}
Ok(ApiResponse { status: status as u16, headers, body: () })
}
pub async fn tags_list_keys_request<F>(
client: DynNetClient,
args: &TagsListKeysArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<ResourceTaggingTagKeysResponseCollection>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/tags/keys",
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("cursor", args.cursor.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: ResourceTaggingTagKeysResponseCollection = 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 tags_list_request<F>(
client: DynNetClient,
args: &TagsListArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<ResourceTaggingTaggedResourceResponseCollection>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/tags/resources",
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("type", args.r#type.as_deref());
builder = builder.query("tag", args.tag.as_deref());
builder = builder.query("cursor", args.cursor.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: ResourceTaggingTaggedResourceResponseCollection = 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 tags_list_values_request<F>(
client: DynNetClient,
args: &TagsListValuesArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<ResourceTaggingTagValuesResponseCollection>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/tags/values/{}",
args.account_id,
args.tag_key,
);
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("type", args.r#type.as_deref());
builder = builder.query("cursor", args.cursor.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: ResourceTaggingTagValuesResponseCollection = 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 wor_send_event_workflow_instance_request<F>(
client: DynNetClient,
args: &WorSendEventWorkflowInstanceArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<WorSendEventWorkflowInstanceResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/workflows/{}/instances/{}/events/{}",
args.account_id,
args.workflow_name,
args.instance_id,
args.event_type,
);
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);
}
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: WorSendEventWorkflowInstanceResponse = 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 })
}