google_cloud_storage/http/hmac_keys/
list.rs1use reqwest_middleware::{ClientWithMiddleware as Client, RequestBuilder};
2
3use crate::http::hmac_keys::HmacKeyMetadata;
4use crate::http::Escape;
5
6#[derive(Clone, PartialEq, Eq, serde::Deserialize, serde::Serialize, Debug, Default)]
7#[serde(rename_all = "camelCase")]
8pub struct ListHmacKeysRequest {
9 pub project_id: String,
11 pub service_account_email: Option<String>,
13 pub show_deleted_keys: Option<bool>,
15 pub max_results: Option<i32>,
17 pub page_token: Option<String>,
19}
20
21#[derive(Clone, PartialEq, Eq, serde::Deserialize, serde::Serialize, Debug)]
23#[serde(rename_all = "camelCase")]
24pub struct ListHmacKeysResponse {
25 pub next_page_token: Option<String>,
28 pub items: Option<Vec<HmacKeyMetadata>>,
30}
31
32pub(crate) fn build(base_url: &str, client: &Client, req: &ListHmacKeysRequest) -> RequestBuilder {
33 let url = format!("{}/projects/{}/hmacKeys", base_url, req.project_id.escape());
34 client.get(url)
35}