Struct Silos

Source
pub struct Silos {
    pub client: Client,
}

Fields§

§client: Client

Implementations§

Source§

impl Silos

Source

pub async fn policy_get(&self) -> Result<SiloRolePolicy>

Fetch the current silo’s IAM policy.

This function performs a GET to the /policy endpoint.

Source

pub async fn policy_put(&self, body: &SiloRolePolicy) -> Result<SiloRolePolicy>

Update the current silo’s IAM policy.

This function performs a PUT to the /policy endpoint.

Source

pub async fn get_page( &self, limit: u32, page_token: &str, sort_by: NameOrIdSortMode, ) -> Result<Vec<Silo>>

List silos.

This function performs a GET to the /silos endpoint.

Lists silos that are discoverable based on the current permissions.

Parameters:

  • limit: u32 – Maximum number of items returned by a single call.
  • page_token: &str – Token returned by previous call to retrieve the subsequent page.
  • sort_by: crate::types::NameOrIdSortMode – Supported set of sort modes for scanning by name or id.
Source

pub async fn get_all(&self, sort_by: NameOrIdSortMode) -> Result<Vec<Silo>>

List silos.

This function performs a GET to the /silos endpoint.

As opposed to get, this function returns all the pages of the request at once.

Lists silos that are discoverable based on the current permissions.

Source

pub async fn post(&self, body: &SiloCreate) -> Result<Silo>

Create a silo.

This function performs a POST to the /silos endpoint.

Source

pub async fn get(&self, silo_name: &str) -> Result<Silo>

Fetch a silo.

This function performs a GET to the /silos/{silo_name} endpoint.

Fetch a silo by name.

Parameters:

  • silo_name: &str – Names must begin with a lower case ASCII letter, be composed exclusively of lowercase ASCII, uppercase ASCII, numbers, and ‘-’, and may not end with a ‘-’. Names cannot be a UUID though they may contain a UUID.
Source

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

Delete a silo.

This function performs a DELETE to the /silos/{silo_name} endpoint.

Delete a silo by name.

Parameters:

  • silo_name: &str – Names must begin with a lower case ASCII letter, be composed exclusively of lowercase ASCII, uppercase ASCII, numbers, and ‘-’, and may not end with a ‘-’. Names cannot be a UUID though they may contain a UUID.
Source

pub async fn get_identity_providers( &self, limit: u32, page_token: &str, silo_name: &str, sort_by: NameSortMode, ) -> Result<Vec<IdentityProvider>>

List a silo’s IDPs.

This function performs a GET to the /silos/{silo_name}/identity-providers endpoint.

Parameters:

  • silo_name: &str – Names must begin with a lower case ASCII letter, be composed exclusively of lowercase ASCII, uppercase ASCII, numbers, and ‘-’, and may not end with a ‘-’. Names cannot be a UUID though they may contain a UUID.
  • limit: u32 – Maximum number of items returned by a single call.
  • page_token: &str – Token returned by previous call to retrieve the subsequent page.
  • sort_by: crate::types::NameSortMode – Supported set of sort modes for scanning by name only

Currently, we only support scanning in ascending order.

Source

pub async fn get_all_identity_providers( &self, silo_name: &str, sort_by: NameSortMode, ) -> Result<Vec<IdentityProvider>>

List a silo’s IDPs.

This function performs a GET to the /silos/{silo_name}/identity-providers endpoint.

As opposed to get_identity_providers, this function returns all the pages of the request at once.

Source

pub async fn get_policy(&self, silo_name: &str) -> Result<SiloRolePolicy>

Fetch a silo’s IAM policy.

This function performs a GET to the /silos/{silo_name}/policy endpoint.

Parameters:

  • silo_name: &str – Names must begin with a lower case ASCII letter, be composed exclusively of lowercase ASCII, uppercase ASCII, numbers, and ‘-’, and may not end with a ‘-’. Names cannot be a UUID though they may contain a UUID.
Source

pub async fn put_policy( &self, silo_name: &str, body: &SiloRolePolicy, ) -> Result<SiloRolePolicy>

Update a silo’s IAM policy.

This function performs a PUT to the /silos/{silo_name}/policy endpoint.

Parameters:

  • silo_name: &str – Names must begin with a lower case ASCII letter, be composed exclusively of lowercase ASCII, uppercase ASCII, numbers, and ‘-’, and may not end with a ‘-’. Names cannot be a UUID though they may contain a UUID.
Source

pub async fn saml_idp_fetch( &self, silo_name: &str, body: &SamlIdentityProviderCreate, ) -> Result<SamlIdentityProvider>

Create a SAML IDP.

This function performs a POST to the /silos/{silo_name}/saml-identity-providers endpoint.

Parameters:

  • silo_name: &str – Names must begin with a lower case ASCII letter, be composed exclusively of lowercase ASCII, uppercase ASCII, numbers, and ‘-’, and may not end with a ‘-’. Names cannot be a UUID though they may contain a UUID.
Source

pub async fn saml_idp_create( &self, provider_name: &str, silo_name: &str, ) -> Result<SamlIdentityProvider>

Fetch a SAML IDP.

This function performs a GET to the /silos/{silo_name}/saml-identity-providers/{provider_name} endpoint.

Parameters:

  • provider_name: &str – Names must begin with a lower case ASCII letter, be composed exclusively of lowercase ASCII, uppercase ASCII, numbers, and ‘-’, and may not end with a ‘-’. Names cannot be a UUID though they may contain a UUID.
  • silo_name: &str – Names must begin with a lower case ASCII letter, be composed exclusively of lowercase ASCII, uppercase ASCII, numbers, and ‘-’, and may not end with a ‘-’. Names cannot be a UUID though they may contain a UUID.
Source

pub async fn users_get( &self, limit: u32, page_token: &str, sort_by: IdSortMode, ) -> Result<Vec<User>>

List users.

This function performs a GET to the /users endpoint.

Parameters:

  • limit: u32 – Maximum number of items returned by a single call.
  • page_token: &str – Token returned by previous call to retrieve the subsequent page.
  • sort_by: crate::types::IdSortMode – Supported set of sort modes for scanning by id only.

Currently, we only support scanning in ascending order.

Source

pub async fn users_get_all(&self, sort_by: IdSortMode) -> Result<Vec<User>>

List users.

This function performs a GET to the /users endpoint.

As opposed to users_get, this function returns all the pages of the request at once.

Auto Trait Implementations§

§

impl Freeze for Silos

§

impl !RefUnwindSafe for Silos

§

impl Send for Silos

§

impl Sync for Silos

§

impl Unpin for Silos

§

impl !UnwindSafe for Silos

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> 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> IntoResult<T> for T

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
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