Skip to main content

CloudClient

Struct CloudClient 

Source
pub struct CloudClient { /* private fields */ }
Expand description

Redis Cloud API client

Implementations§

Source§

impl CloudClient

Source

pub fn builder() -> CloudClientBuilder

Create a new builder for the client

Source

pub fn timeout(&self) -> Duration

Get the configured request timeout

Returns the timeout duration that was set when building the client. This timeout is applied to all HTTP requests made by this client.

Source

pub fn account(&self) -> AccountHandler

Get an account handler for account management operations

§Example
let client = CloudClient::builder()
    .api_key("key")
    .api_secret("secret")
    .build()?;

let account = client.account().get_current_account().await?;
Source

pub fn subscriptions(&self) -> SubscriptionHandler

Get a subscription handler for Pro subscription operations

§Example
let client = CloudClient::builder()
    .api_key("key")
    .api_secret("secret")
    .build()?;

let subscriptions = client.subscriptions().get_all_subscriptions().await?;
Source

pub fn databases(&self) -> DatabaseHandler

Get a database handler for Pro database operations

§Example
let client = CloudClient::builder()
    .api_key("key")
    .api_secret("secret")
    .build()?;

let databases = client.databases().get_subscription_databases(123, None, None).await?;
Source

pub fn fixed_subscriptions(&self) -> FixedSubscriptionHandler

Get a fixed subscription handler for Essentials subscription operations

§Example
let client = CloudClient::builder()
    .api_key("key")
    .api_secret("secret")
    .build()?;

let subscriptions = client.fixed_subscriptions().list().await?;
Source

pub fn fixed_databases(&self) -> FixedDatabaseHandler

Get a fixed database handler for Essentials database operations

§Example
let client = CloudClient::builder()
    .api_key("key")
    .api_secret("secret")
    .build()?;

let databases = client.fixed_databases().list(123, None, None).await?;
Source

pub fn acl(&self) -> AclHandler

Get an ACL handler for access control operations

§Example
let client = CloudClient::builder()
    .api_key("key")
    .api_secret("secret")
    .build()?;

let users = client.acl().get_all_acl_users().await?;
Source

pub fn users(&self) -> UserHandler

Get a users handler for user management operations

§Example
let client = CloudClient::builder()
    .api_key("key")
    .api_secret("secret")
    .build()?;

let users = client.users().get_all_users().await?;
Source

pub fn tasks(&self) -> TaskHandler

Get a tasks handler for async operation tracking

§Example
let client = CloudClient::builder()
    .api_key("key")
    .api_secret("secret")
    .build()?;

let tasks = client.tasks().get_all_tasks().await?;
Source

pub fn cloud_accounts(&self) -> CloudAccountHandler

Get a cloud accounts handler for cloud provider integration

§Example
let client = CloudClient::builder()
    .api_key("key")
    .api_secret("secret")
    .build()?;

let accounts = client.cloud_accounts().get_cloud_accounts().await?;
Source

pub fn vpc_peering(&self) -> VpcPeeringHandler

Get a VPC peering handler for VPC peering operations

§Example
let client = CloudClient::builder()
    .api_key("key")
    .api_secret("secret")
    .build()?;

let peering = client.vpc_peering().get(123).await?;
Source

pub fn transit_gateway(&self) -> TransitGatewayHandler

Get a transit gateway handler for AWS Transit Gateway operations

§Example
let client = CloudClient::builder()
    .api_key("key")
    .api_secret("secret")
    .build()?;

let attachments = client.transit_gateway().get_attachments(123).await?;
Source

pub fn psc(&self) -> PscHandler

Get a Private Service Connect handler for GCP PSC operations

§Example
let client = CloudClient::builder()
    .api_key("key")
    .api_secret("secret")
    .build()?;

let service = client.psc().get_service(123).await?;

Get a PrivateLink handler for AWS PrivateLink operations

§Example
let client = CloudClient::builder()
    .api_key("key")
    .api_secret("secret")
    .build()?;

let config = client.private_link().get(123).await?;
Source

pub fn cost_reports(&self) -> CostReportHandler

Get a cost report handler for generating cost reports

§Example
let client = CloudClient::builder()
    .api_key("key")
    .api_secret("secret")
    .build()?;

let handler = client.cost_reports();
Source

pub async fn get<T: DeserializeOwned>(&self, path: &str) -> Result<T>

Make a GET request with API key authentication

Source

pub async fn post<B: Serialize, T: DeserializeOwned>( &self, path: &str, body: &B, ) -> Result<T>

Make a POST request

Source

pub async fn put<B: Serialize, T: DeserializeOwned>( &self, path: &str, body: &B, ) -> Result<T>

Make a PUT request

Source

pub async fn delete(&self, path: &str) -> Result<()>

Make a DELETE request

Source

pub async fn get_raw(&self, path: &str) -> Result<Value>

Execute raw GET request returning JSON Value

Source

pub async fn get_bytes(&self, path: &str) -> Result<Vec<u8>>

Execute GET request returning raw bytes

Useful for downloading binary content like cost reports or other files.

Source

pub async fn post_raw(&self, path: &str, body: Value) -> Result<Value>

Execute raw POST request with JSON body

Source

pub async fn put_raw(&self, path: &str, body: Value) -> Result<Value>

Execute raw PUT request with JSON body

Source

pub async fn patch_raw(&self, path: &str, body: Value) -> Result<Value>

Execute raw PATCH request with JSON body

Source

pub async fn delete_raw(&self, path: &str) -> Result<Value>

Execute raw DELETE request returning any response body

Source

pub async fn delete_with_body<T: DeserializeOwned>( &self, path: &str, body: Value, ) -> Result<T>

Execute DELETE request with JSON body (used by some endpoints like PrivateLink principals)

Trait Implementations§

Source§

impl Clone for CloudClient

Source§

fn clone(&self) -> CloudClient

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more