pub struct Silos {
pub client: Client,
}
Fields§
§client: Client
Implementations§
Source§impl Silos
impl Silos
Sourcepub async fn policy_get(&self) -> Result<SiloRolePolicy>
pub async fn policy_get(&self) -> Result<SiloRolePolicy>
Fetch the current silo’s IAM policy.
This function performs a GET
to the /policy
endpoint.
Sourcepub async fn policy_put(&self, body: &SiloRolePolicy) -> Result<SiloRolePolicy>
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.
Sourcepub async fn get_page(
&self,
limit: u32,
page_token: &str,
sort_by: NameOrIdSortMode,
) -> Result<Vec<Silo>>
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.
Sourcepub async fn get_all(&self, sort_by: NameOrIdSortMode) -> Result<Vec<Silo>>
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.
Sourcepub async fn post(&self, body: &SiloCreate) -> Result<Silo>
pub async fn post(&self, body: &SiloCreate) -> Result<Silo>
Create a silo.
This function performs a POST
to the /silos
endpoint.
Sourcepub async fn get(&self, silo_name: &str) -> Result<Silo>
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.
Sourcepub async fn delete(&self, silo_name: &str) -> Result<()>
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.
Sourcepub async fn get_identity_providers(
&self,
limit: u32,
page_token: &str,
silo_name: &str,
sort_by: NameSortMode,
) -> Result<Vec<IdentityProvider>>
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.
Sourcepub async fn get_all_identity_providers(
&self,
silo_name: &str,
sort_by: NameSortMode,
) -> Result<Vec<IdentityProvider>>
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.
Sourcepub async fn get_policy(&self, silo_name: &str) -> Result<SiloRolePolicy>
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.
Sourcepub async fn put_policy(
&self,
silo_name: &str,
body: &SiloRolePolicy,
) -> Result<SiloRolePolicy>
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.
Sourcepub async fn saml_idp_fetch(
&self,
silo_name: &str,
body: &SamlIdentityProviderCreate,
) -> Result<SamlIdentityProvider>
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.
Sourcepub async fn saml_idp_create(
&self,
provider_name: &str,
silo_name: &str,
) -> Result<SamlIdentityProvider>
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.
Sourcepub async fn users_get(
&self,
limit: u32,
page_token: &str,
sort_by: IdSortMode,
) -> Result<Vec<User>>
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.
Sourcepub async fn users_get_all(&self, sort_by: IdSortMode) -> Result<Vec<User>>
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.