mesa_dev/client/
api_keys.rs1use crate::low_level::apis::{admin_api, Error};
2use crate::models;
3
4use super::OrgClient;
5
6#[derive(Clone, Debug)]
8pub struct ApiKeysClient<'a> {
9 pub(super) org: &'a OrgClient<'a>,
10}
11
12impl ApiKeysClient<'_> {
13 pub async fn list(
19 &self,
20 ) -> Result<models::GetByOrgApiKeys200Response, Error<admin_api::GetByOrgApiKeysError>> {
21 admin_api::get_by_org_api_keys(self.org.config, self.org.org).await
22 }
23
24 pub async fn create(
30 &self,
31 request: models::PostByOrgApiKeysRequest,
32 ) -> Result<models::PostByOrgApiKeys201Response, Error<admin_api::PostByOrgApiKeysError>> {
33 admin_api::post_by_org_api_keys(self.org.config, self.org.org, Some(request)).await
34 }
35
36 pub async fn revoke(
42 &self,
43 id: &str,
44 ) -> Result<
45 models::DeleteByOrgApiKeysById200Response,
46 Error<admin_api::DeleteByOrgApiKeysByIdError>,
47 > {
48 admin_api::delete_by_org_api_keys_by_id(self.org.config, id, self.org.org).await
49 }
50}