#![cfg(feature = "cloudflare_billing")]
#![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::BillSubsApiComponentValue;
use super::shared::BillSubsApiCurrency;
use super::shared::BillSubsApiCurrentPeriodEnd;
use super::shared::BillSubsApiCurrentPeriodStart;
use super::shared::BillSubsApiFrequency;
use super::shared::BillSubsApiIdentifier;
use super::shared::BillSubsApiName;
use super::shared::BillSubsApiPrice;
use super::shared::BillSubsApiRatePlan;
use super::shared::BillSubsApiSchemasIdentifier;
use super::shared::BillSubsApiState;
use super::shared::BillSubsApiSubscriptionV2;
use super::shared::BillSubsApiZone;
use super::shared::ApiResponse;
pub type AccountSubscriptionsDeleteSubscriptionResponse =
super::shared::ApiEnvelope<std::collections::HashMap<String, serde_json::Value>>;
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct BillSubsApiAccountSubscriptionResponseCollection {
pub errors: Vec<std::collections::HashMap<String, serde_json::Value>>,
pub messages: Vec<std::collections::HashMap<String, serde_json::Value>>,
pub result: Vec<BillSubsApiSubscription>,
pub result_info: Option<BillSubsApiResultInfo>,
pub success: bool,
}
pub type BillSubsApiAccountSubscriptionResponseSingle =
super::shared::ApiEnvelope<BillSubsApiSubscription>;
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct BillSubsApiApiResponseCollection {
pub errors: Vec<std::collections::HashMap<String, serde_json::Value>>,
pub messages: Vec<std::collections::HashMap<String, serde_json::Value>>,
pub result: Option<Vec<serde_json::Value>>,
pub result_info: Option<BillSubsApiResultInfo>,
pub success: bool,
}
pub type BillSubsApiApiResponseCommon = super::shared::ApiEnvelope<serde_json::Value>;
pub type BillSubsApiApiResponseSingle = super::shared::ApiEnvelope<serde_json::Value>;
pub type BillSubsApiComponentValues = Vec<BillSubsApiComponentValue>;
pub type BillSubsApiMessages = Vec<std::collections::HashMap<String, serde_json::Value>>;
pub type BillSubsApiResultInfo = super::shared::FirewallResultInfoShape;
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct BillSubsApiSubscription {
pub app: Option<serde_json::Value>,
pub component_values: Option<Vec<BillSubsApiComponentValue>>,
pub currency: Option<String>,
pub current_period_end: Option<String>,
pub current_period_start: Option<String>,
pub frequency: Option<String>,
pub id: Option<String>,
pub price: Option<f64>,
pub rate_plan: Option<BillSubsApiRatePlan>,
pub state: Option<String>,
pub zone: Option<BillSubsApiZone>,
}
pub type BillableUsageApiMessage = super::shared::CodeMessageObject3;
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct BillableUsageApiUsageRecord {
#[serde(rename = "BillingCurrency")]
pub billing_currency: String,
#[serde(rename = "BillingPeriodStart")]
pub billing_period_start: String,
#[serde(rename = "ChargePeriodEnd")]
pub charge_period_end: String,
#[serde(rename = "ChargePeriodStart")]
pub charge_period_start: String,
#[serde(rename = "ConsumedQuantity")]
pub consumed_quantity: f64,
#[serde(rename = "ConsumedUnit")]
pub consumed_unit: String,
#[serde(rename = "ContractedCost")]
pub contracted_cost: f64,
#[serde(rename = "CumulatedContractedCost")]
pub cumulated_contracted_cost: f64,
#[serde(rename = "CumulatedPricingQuantity")]
pub cumulated_pricing_quantity: i64,
#[serde(rename = "PricingQuantity")]
pub pricing_quantity: i64,
#[serde(rename = "ServiceName")]
pub service_name: String,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct BillableUsageApiUsageResponse {
pub errors: Option<Vec<BillableUsageApiMessage>>,
pub messages: Option<Vec<BillableUsageApiMessage>>,
pub result: Vec<BillableUsageApiUsageRecord>,
pub success: bool,
}
pub type MqApiV4Error = Vec<std::collections::HashMap<String, serde_json::Value>>;
pub type MqApiV4Message = Vec<String>;
pub type MqApiV4Success = super::shared::ErrorsMessagesSuccessObject2;
pub type MqEventDestination = serde_json::Value;
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct MqEventDestinationQueue {
pub queue_id: String,
#[serde(rename = "type")]
pub r#type: String,
}
pub type MqEventSource = serde_json::Value;
pub type MqEventSourceImages = super::shared::TypeObject2;
pub type MqEventSourceKv = super::shared::TypeObject2;
pub type MqEventSourceR2 = super::shared::TypeObject2;
pub type MqEventSourceSuperSlurper = super::shared::TypeObject2;
pub type MqEventSourceVectorize = super::shared::TypeObject2;
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct MqEventSourceWorkersAiModel {
pub model_name: Option<String>,
#[serde(rename = "type")]
pub r#type: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct MqEventSourceWorkersBuildsWorker {
#[serde(rename = "type")]
pub r#type: Option<String>,
pub worker_name: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct MqEventSourceWorkflowsWorkflow {
#[serde(rename = "type")]
pub r#type: Option<String>,
pub workflow_name: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct MqEventSubscription {
pub created_at: String,
pub destination: serde_json::Value,
pub enabled: bool,
pub events: Vec<String>,
pub id: String,
pub modified_at: String,
pub name: String,
pub source: serde_json::Value,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct PayPerCrawlApiNoResultResponse {
pub errors: Option<Vec<Box<PayPerCrawlMsg>>>,
pub messages: Option<Vec<Box<PayPerCrawlMsg>>>,
pub result_info: Option<PayPerCrawlResultInfo>,
pub success: Option<bool>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct PayPerCrawlCreateStripeConfigResponse {
pub errors: Option<Vec<Box<PayPerCrawlMsg>>>,
pub messages: Option<Vec<Box<PayPerCrawlMsg>>>,
pub result: Option<PayPerCrawlStripeConnectResp>,
pub result_info: Option<PayPerCrawlResultInfo>,
pub success: Option<bool>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct PayPerCrawlDaricZoneCanBeEnabled {
pub can_be_enabled: Option<bool>,
pub id: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct PayPerCrawlGetStripeConfigResponse {
pub errors: Option<Vec<Box<PayPerCrawlMsg>>>,
pub messages: Option<Vec<Box<PayPerCrawlMsg>>>,
pub result: Option<PayPerCrawlStripeConnection>,
pub result_info: Option<PayPerCrawlResultInfo>,
pub success: Option<bool>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct PayPerCrawlMsg {
pub code: Option<i64>,
pub documentation_url: Option<String>,
pub error_chain: Option<Vec<Box<PayPerCrawlMsg>>>,
pub message: Option<String>,
pub meta: Option<serde_json::Value>,
pub source: Option<PayPerCrawlSource>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct PayPerCrawlQueryZonesCanBeEnabledResponse {
pub errors: Option<Vec<Box<PayPerCrawlMsg>>>,
pub messages: Option<Vec<Box<PayPerCrawlMsg>>>,
pub result: Option<PayPerCrawlZonesCanBeEnabledPayload>,
pub result_info: Option<PayPerCrawlResultInfo>,
pub success: Option<bool>,
}
pub type PayPerCrawlResultInfo = super::shared::RumResultInfoShape;
pub type PayPerCrawlSource = super::shared::ParameterParameterValueIndexPointerObject2;
pub type PayPerCrawlStripeConnectResp = super::shared::UrlObject;
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct PayPerCrawlStripeConnection {
pub connect_status: Option<String>,
pub stripe_account_id: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct PayPerCrawlZonesCanBeEnabledPayload {
pub zones: Option<Vec<PayPerCrawlDaricZoneCanBeEnabled>>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct SubscriptionsCreateRequest {
pub destination: Option<serde_json::Value>,
pub enabled: Option<bool>,
pub events: Option<Vec<String>>,
pub name: Option<String>,
pub source: Option<serde_json::Value>,
}
pub type SubscriptionsCreateResponse = super::shared::ApiEnvelope3<Option<MqEventSubscription>>;
pub type SubscriptionsDeleteResponse = super::shared::ApiEnvelope3<Option<MqEventSubscription>>;
pub type SubscriptionsGetResponse = super::shared::ApiEnvelope3<Option<MqEventSubscription>>;
pub type SubscriptionsListResponse =
super::shared::ApiEnvelopeErrorsMessagesResultInfoSuccess3<Option<Vec<MqEventSubscription>>>;
#[derive(Debug, Clone, Default, Serialize, Deserialize, JsonHash)]
pub struct SubscriptionsPatchRequest {
pub destination: Option<serde_json::Value>,
pub enabled: Option<bool>,
pub events: Option<Vec<String>>,
pub name: Option<String>,
}
pub type SubscriptionsPatchResponse = super::shared::ApiEnvelope3<Option<MqEventSubscription>>;
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct BillableUsageGetPaygoAccountUsageArgs {
pub account_id: String,
pub from: Option<String>,
pub to: Option<String>,
}
pub type SubscriptionsListArgs = super::shared::SubscriptionsListArgsShape;
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct SubscriptionsCreateArgs {
pub account_id: String,
pub body: SubscriptionsCreateRequest,
}
pub type SubscriptionsGetArgs = super::shared::AccountIdSubscriptionIdArgs;
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct SubscriptionsPatchArgs {
pub account_id: String,
pub subscription_id: String,
pub body: SubscriptionsPatchRequest,
}
pub type SubscriptionsDeleteArgs = super::shared::AccountIdSubscriptionIdArgs;
pub type PayPerCrawlCrawlerGetStripeConfigArgs = super::shared::AccountIdArgs;
pub type PayPerCrawlCrawlerCreateStripeConfigArgs = super::shared::AccountIdArgs;
pub type PayPerCrawlCrawlerDeleteStripeConfigArgs = super::shared::AccountIdArgs;
pub type PayPerCrawlPublisherGetStripeConfigArgs = super::shared::AccountIdArgs;
pub type PayPerCrawlPublisherCreateStripeConfigArgs = super::shared::AccountIdArgs;
pub type PayPerCrawlPublisherDeleteStripeConfigArgs = super::shared::AccountIdArgs;
pub type PayPerCrawlSetZonesCanBeEnabledArgs = super::shared::AccountIdArgs;
pub type PayPerCrawlQueryZonesCanBeEnabledArgs = super::shared::AccountIdArgs;
pub type AccountSubscriptionsListSubscriptionsArgs = super::shared::AccountIdArgs;
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct AccountSubscriptionsCreateSubscriptionArgs {
pub account_id: String,
pub body: BillSubsApiSubscriptionV2,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct AccountSubscriptionsUpdateSubscriptionArgs {
pub subscription_identifier: String,
pub account_id: String,
pub body: BillSubsApiSubscriptionV2,
}
#[derive(Debug, Clone, Default, Serialize, JsonHash)]
pub struct AccountSubscriptionsDeleteSubscriptionArgs {
pub subscription_identifier: String,
pub account_id: String,
}
pub async fn billable_usage_get_paygo_account_usage_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &BillableUsageGetPaygoAccountUsageArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<BillableUsageApiUsageResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/billing/usage/paygo", 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", args.from.as_deref());
builder = builder.query("to", args.to.as_deref());
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn subscriptions_list_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &SubscriptionsListArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<SubscriptionsListResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/event_subscriptions/subscriptions",
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());
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn subscriptions_create_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &SubscriptionsCreateArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<SubscriptionsCreateResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/event_subscriptions/subscriptions",
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 subscriptions_get_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &SubscriptionsGetArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<SubscriptionsGetResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/event_subscriptions/subscriptions/{}",
args.account_id, args.subscription_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 subscriptions_patch_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &SubscriptionsPatchArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<SubscriptionsPatchResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/event_subscriptions/subscriptions/{}",
args.account_id, args.subscription_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 subscriptions_delete_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &SubscriptionsDeleteArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<SubscriptionsDeleteResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/event_subscriptions/subscriptions/{}",
args.account_id, args.subscription_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 pay_per_crawl_crawler_get_stripe_config_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &PayPerCrawlCrawlerGetStripeConfigArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<PayPerCrawlGetStripeConfigResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/pay-per-crawl/crawler/stripe", 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 pay_per_crawl_crawler_create_stripe_config_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &PayPerCrawlCrawlerCreateStripeConfigArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<PayPerCrawlCreateStripeConfigResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/pay-per-crawl/crawler/stripe", 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 pay_per_crawl_crawler_delete_stripe_config_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &PayPerCrawlCrawlerDeleteStripeConfigArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<PayPerCrawlApiNoResultResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/pay-per-crawl/crawler/stripe", 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);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn pay_per_crawl_publisher_get_stripe_config_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &PayPerCrawlPublisherGetStripeConfigArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<PayPerCrawlGetStripeConfigResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/pay-per-crawl/publisher/stripe",
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 pay_per_crawl_publisher_create_stripe_config_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &PayPerCrawlPublisherCreateStripeConfigArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<PayPerCrawlCreateStripeConfigResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/pay-per-crawl/publisher/stripe",
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 pay_per_crawl_publisher_delete_stripe_config_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &PayPerCrawlPublisherDeleteStripeConfigArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<PayPerCrawlApiNoResultResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/pay-per-crawl/publisher/stripe",
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);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn pay_per_crawl_set_zones_can_be_enabled_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &PayPerCrawlSetZonesCanBeEnabledArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<PayPerCrawlApiNoResultResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/pay-per-crawl/zones_can_be_enabled",
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()))?;
if let Some(f) = builder_mod {
f(&mut builder);
}
super::shared::send_json(client.into(), builder.build()).await
}
pub async fn pay_per_crawl_query_zones_can_be_enabled_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &PayPerCrawlQueryZonesCanBeEnabledArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<PayPerCrawlQueryZonesCanBeEnabledResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/pay-per-crawl/zones_can_be_enabled/query",
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 account_subscriptions_list_subscriptions_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &AccountSubscriptionsListSubscriptionsArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<BillSubsApiAccountSubscriptionResponseCollection>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/subscriptions", 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 account_subscriptions_create_subscription_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &AccountSubscriptionsCreateSubscriptionArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<BillSubsApiAccountSubscriptionResponseSingle>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!("/accounts/{}/subscriptions", 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 account_subscriptions_update_subscription_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &AccountSubscriptionsUpdateSubscriptionArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<BillSubsApiAccountSubscriptionResponseSingle>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/subscriptions/{}",
args.account_id, args.subscription_identifier,
);
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 account_subscriptions_delete_subscription_request<F>(
client: impl Into<super::shared::ApiClient>,
args: &AccountSubscriptionsDeleteSubscriptionArgs,
base_url: &str,
builder_mod: Option<F>,
) -> Result<ApiResponse<AccountSubscriptionsDeleteSubscriptionResponse>, super::shared::ApiError>
where
F: FnOnce(&mut PreparedRequestBuilder),
{
let path = format!(
"/accounts/{}/subscriptions/{}",
args.account_id, args.subscription_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
}