#![allow(unused_imports)]
use crate::objects::*;
use crate::{
CursorPaginated, NextCursor, ResponseMetadata, SlackApiMethod, SlackClient, SlackError,
};
use serde::{Deserialize, Serialize};
#[doc(alias = "tooling.tokens.rotate")]
#[derive(Debug, Clone, PartialEq, Serialize)]
#[non_exhaustive]
pub struct ToolingTokensRotateRequest {
pub refresh_token: String,
}
impl ToolingTokensRotateRequest {
pub fn new(refresh_token: impl Into<String>) -> Self {
Self {
refresh_token: refresh_token.into(),
}
}
}
impl SlackApiMethod for ToolingTokensRotateRequest {
const METHOD: &'static str = "tooling.tokens.rotate";
type Response = ToolingTokensRotateResponse;
}
#[doc(alias = "tooling.tokens.rotate")]
#[derive(Debug, Clone, Default, PartialEq, Serialize, Deserialize)]
pub struct ToolingTokensRotateResponse {
#[serde(
default,
deserialize_with = "crate::de::opt_string",
skip_serializing_if = "Option::is_none"
)]
pub token: Option<String>,
#[serde(
default,
deserialize_with = "crate::de::opt_string",
skip_serializing_if = "Option::is_none"
)]
pub refresh_token: Option<String>,
#[serde(
default,
deserialize_with = "crate::de::opt_string",
skip_serializing_if = "Option::is_none"
)]
pub team_id: Option<String>,
#[serde(
default,
deserialize_with = "crate::de::opt_string",
skip_serializing_if = "Option::is_none"
)]
pub user_id: Option<String>,
#[serde(
default,
deserialize_with = "crate::de::opt_i64",
skip_serializing_if = "Option::is_none"
)]
pub iat: Option<i64>,
#[serde(
default,
deserialize_with = "crate::de::opt_i64",
skip_serializing_if = "Option::is_none"
)]
pub exp: Option<i64>,
#[serde(
default,
deserialize_with = "crate::de::opt_object",
skip_serializing_if = "Option::is_none"
)]
pub response_metadata: Option<ResponseMetadata>,
#[serde(
default,
deserialize_with = "crate::de::opt_string",
skip_serializing_if = "Option::is_none"
)]
pub warning: Option<String>,
}
impl SlackClient {
#[doc(alias = "tooling.tokens.rotate")]
pub async fn tooling_tokens_rotate(
&self,
request: &ToolingTokensRotateRequest,
) -> Result<ToolingTokensRotateResponse, SlackError> {
self.call(request).await
}
}