use reqwest;
use crate::apis::ResponseContent;
use super::{Error, configuration};
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum BeginLiveActivityError {
Status400(crate::models::GenericError),
Status429(crate::models::RateLimiterError),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum CancelNotificationError {
Status400(crate::models::GenericError),
Status429(crate::models::RateLimiterError),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum CreateAppError {
Status400(crate::models::GenericError),
Status429(crate::models::RateLimiterError),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum CreateNotificationError {
Status400(crate::models::GenericError),
Status429(crate::models::RateLimiterError),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum CreatePlayerError {
Status400(crate::models::GenericError),
Status409(crate::models::GenericError),
Status429(crate::models::RateLimiterError),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum CreateSegmentsError {
Status400(crate::models::GenericError),
Status409(crate::models::CreateSegmentConflictResponse),
Status429(crate::models::RateLimiterError),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum CreateSubscriptionError {
Status400(crate::models::GenericError),
Status409(crate::models::GenericError),
Status429(crate::models::RateLimiterError),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum CreateUserError {
Status400(crate::models::GenericError),
Status409(crate::models::CreateUserConflictResponse),
Status429(crate::models::RateLimiterError),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum DeleteAliasError {
Status400(crate::models::GenericError),
Status409(crate::models::GenericError),
Status429(crate::models::RateLimiterError),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum DeletePlayerError {
Status400(crate::models::GenericError),
Status404(crate::models::DeletePlayerNotFoundResponse),
Status429(crate::models::RateLimiterError),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum DeleteSegmentsError {
Status400(crate::models::GenericError),
Status404(crate::models::DeleteSegmentNotFoundResponse),
Status429(crate::models::RateLimiterError),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum DeleteSubscriptionError {
Status400(crate::models::GenericError),
Status409(crate::models::GenericError),
Status429(crate::models::RateLimiterError),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum DeleteUserError {
Status400(crate::models::GenericError),
Status409(crate::models::GenericError),
Status429(crate::models::RateLimiterError),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum EndLiveActivityError {
Status400(crate::models::GenericError),
Status429(crate::models::RateLimiterError),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum ExportEventsError {
Status400(crate::models::GenericError),
Status404(crate::models::GenericError),
Status429(crate::models::RateLimiterError),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum ExportPlayersError {
Status400(crate::models::GenericError),
Status429(crate::models::RateLimiterError),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum FetchAliasesError {
Status400(crate::models::GenericError),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum FetchUserError {
Status400(crate::models::GenericError),
Status429(crate::models::RateLimiterError),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum FetchUserIdentityError {
Status400(crate::models::GenericError),
Status429(crate::models::RateLimiterError),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum GetAppError {
Status400(crate::models::GenericError),
Status429(crate::models::RateLimiterError),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum GetAppsError {
Status400(crate::models::GenericError),
Status429(crate::models::RateLimiterError),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum GetEligibleIamsError {
Status400(crate::models::GenericError),
Status429(crate::models::RateLimiterError),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum GetNotificationError {
Status400(crate::models::GenericError),
Status429(crate::models::RateLimiterError),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum GetNotificationHistoryError {
Status400(crate::models::GenericError),
Status429(crate::models::RateLimiterError),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum GetNotificationsError {
Status400(crate::models::GenericError),
Status429(crate::models::RateLimiterError),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum GetOutcomesError {
Status400(crate::models::GenericError),
Status429(crate::models::RateLimiterError),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum GetPlayerError {
Status400(crate::models::GenericError),
Status429(crate::models::RateLimiterError),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum GetPlayersError {
Status400(crate::models::GenericError),
Status429(crate::models::RateLimiterError),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum IdentifyUserByAliasError {
Status400(crate::models::GenericError),
Status409(crate::models::GenericError),
Status429(crate::models::RateLimiterError),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum IdentifyUserBySubscriptionIdError {
Status400(crate::models::GenericError),
Status409(crate::models::GenericError),
Status429(crate::models::RateLimiterError),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum TransferSubscriptionError {
Status400(crate::models::GenericError),
Status409(crate::models::GenericError),
Status429(crate::models::RateLimiterError),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum UpdateAppError {
Status400(crate::models::GenericError),
Status429(crate::models::RateLimiterError),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum UpdateLiveActivityError {
Status400(crate::models::GenericError),
Status429(crate::models::RateLimiterError),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum UpdatePlayerError {
Status400(crate::models::GenericError),
Status409(crate::models::GenericError),
Status429(crate::models::RateLimiterError),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum UpdatePlayerTagsError {
Status400(crate::models::GenericError),
Status409(crate::models::GenericError),
Status429(crate::models::RateLimiterError),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum UpdateSubscriptionError {
Status400(crate::models::GenericError),
Status409(crate::models::GenericError),
Status429(crate::models::RateLimiterError),
UnknownValue(serde_json::Value),
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[serde(untagged)]
pub enum UpdateUserError {
Status400(crate::models::GenericError),
Status409(crate::models::GenericError),
Status429(crate::models::RateLimiterError),
UnknownValue(serde_json::Value),
}
pub async fn begin_live_activity(configuration: &configuration::Configuration, app_id: &str, activity_id: &str, begin_live_activity_request: crate::models::BeginLiveActivityRequest) -> Result<(), Error<BeginLiveActivityError>> {
let configuration = configuration;
let client = &configuration.client;
let uri_str = format!("{}/apps/{app_id}/live_activities/{activity_id}/token", configuration.base_path, app_id=crate::apis::urlencode(app_id), activity_id=crate::apis::urlencode(activity_id));
let mut req_builder = client.request(reqwest::Method::POST, uri_str.as_str());
if let Some(ref user_agent) = configuration.user_agent {
req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
}
req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=2.1.0");
if let Some(ref token) = configuration.app_key_token {
req_builder = req_builder.bearer_auth(token.to_owned());
}
req_builder = req_builder.json(&begin_live_activity_request);
let req = req_builder.build()?;
let resp = client.execute(req).await?;
let status = resp.status();
let content = resp.text().await?;
if !status.is_client_error() && !status.is_server_error() {
Ok(())
} else {
let entity: Option<BeginLiveActivityError> = serde_json::from_str(&content).ok();
let error = ResponseContent { status: status, content: content, entity: entity };
Err(Error::ResponseError(error))
}
}
pub async fn cancel_notification(configuration: &configuration::Configuration, app_id: &str, notification_id: &str) -> Result<crate::models::CancelNotificationSuccessResponse, Error<CancelNotificationError>> {
let configuration = configuration;
let client = &configuration.client;
let uri_str = format!("{}/notifications/{notification_id}", configuration.base_path, notification_id=crate::apis::urlencode(notification_id));
let mut req_builder = client.request(reqwest::Method::DELETE, uri_str.as_str());
req_builder = req_builder.query(&[("app_id", &app_id.to_string())]);
if let Some(ref user_agent) = configuration.user_agent {
req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
}
req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=2.1.0");
if let Some(ref token) = configuration.app_key_token {
req_builder = req_builder.bearer_auth(token.to_owned());
}
let req = req_builder.build()?;
let resp = client.execute(req).await?;
let status = resp.status();
let content = resp.text().await?;
if !status.is_client_error() && !status.is_server_error() {
serde_json::from_str(&content).map_err(Error::from)
} else {
let entity: Option<CancelNotificationError> = serde_json::from_str(&content).ok();
let error = ResponseContent { status: status, content: content, entity: entity };
Err(Error::ResponseError(error))
}
}
pub async fn create_app(configuration: &configuration::Configuration, app: crate::models::App) -> Result<crate::models::App, Error<CreateAppError>> {
let configuration = configuration;
let client = &configuration.client;
let uri_str = format!("{}/apps", configuration.base_path);
let mut req_builder = client.request(reqwest::Method::POST, uri_str.as_str());
if let Some(ref user_agent) = configuration.user_agent {
req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
}
req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=2.1.0");
if let Some(ref token) = configuration.user_key_token {
req_builder = req_builder.bearer_auth(token.to_owned());
}
req_builder = req_builder.json(&app);
let req = req_builder.build()?;
let resp = client.execute(req).await?;
let status = resp.status();
let content = resp.text().await?;
if !status.is_client_error() && !status.is_server_error() {
serde_json::from_str(&content).map_err(Error::from)
} else {
let entity: Option<CreateAppError> = serde_json::from_str(&content).ok();
let error = ResponseContent { status: status, content: content, entity: entity };
Err(Error::ResponseError(error))
}
}
pub async fn create_notification(configuration: &configuration::Configuration, notification: crate::models::Notification) -> Result<crate::models::CreateNotificationSuccessResponse, Error<CreateNotificationError>> {
let configuration = configuration;
let client = &configuration.client;
let uri_str = format!("{}/notifications", configuration.base_path);
let mut req_builder = client.request(reqwest::Method::POST, uri_str.as_str());
if let Some(ref user_agent) = configuration.user_agent {
req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
}
req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=2.1.0");
if let Some(ref token) = configuration.app_key_token {
req_builder = req_builder.bearer_auth(token.to_owned());
}
req_builder = req_builder.json(¬ification);
let req = req_builder.build()?;
let resp = client.execute(req).await?;
let status = resp.status();
let content = resp.text().await?;
if !status.is_client_error() && !status.is_server_error() {
serde_json::from_str(&content).map_err(Error::from)
} else {
let entity: Option<CreateNotificationError> = serde_json::from_str(&content).ok();
let error = ResponseContent { status: status, content: content, entity: entity };
Err(Error::ResponseError(error))
}
}
pub async fn create_player(configuration: &configuration::Configuration, player: crate::models::Player) -> Result<crate::models::CreatePlayerSuccessResponse, Error<CreatePlayerError>> {
let configuration = configuration;
let client = &configuration.client;
let uri_str = format!("{}/players", configuration.base_path);
let mut req_builder = client.request(reqwest::Method::POST, uri_str.as_str());
if let Some(ref user_agent) = configuration.user_agent {
req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
}
req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=2.1.0");
if let Some(ref token) = configuration.app_key_token {
req_builder = req_builder.bearer_auth(token.to_owned());
}
req_builder = req_builder.json(&player);
let req = req_builder.build()?;
let resp = client.execute(req).await?;
let status = resp.status();
let content = resp.text().await?;
if !status.is_client_error() && !status.is_server_error() {
serde_json::from_str(&content).map_err(Error::from)
} else {
let entity: Option<CreatePlayerError> = serde_json::from_str(&content).ok();
let error = ResponseContent { status: status, content: content, entity: entity };
Err(Error::ResponseError(error))
}
}
pub async fn create_segments(configuration: &configuration::Configuration, app_id: &str, segment: Option<crate::models::Segment>) -> Result<crate::models::CreateSegmentSuccessResponse, Error<CreateSegmentsError>> {
let configuration = configuration;
let client = &configuration.client;
let uri_str = format!("{}/apps/{app_id}/segments", configuration.base_path, app_id=crate::apis::urlencode(app_id));
let mut req_builder = client.request(reqwest::Method::POST, uri_str.as_str());
if let Some(ref user_agent) = configuration.user_agent {
req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
}
req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=2.1.0");
if let Some(ref token) = configuration.app_key_token {
req_builder = req_builder.bearer_auth(token.to_owned());
}
req_builder = req_builder.json(&segment);
let req = req_builder.build()?;
let resp = client.execute(req).await?;
let status = resp.status();
let content = resp.text().await?;
if !status.is_client_error() && !status.is_server_error() {
serde_json::from_str(&content).map_err(Error::from)
} else {
let entity: Option<CreateSegmentsError> = serde_json::from_str(&content).ok();
let error = ResponseContent { status: status, content: content, entity: entity };
Err(Error::ResponseError(error))
}
}
pub async fn create_subscription(configuration: &configuration::Configuration, app_id: &str, alias_label: &str, alias_id: &str, create_subscription_request_body: crate::models::CreateSubscriptionRequestBody) -> Result<crate::models::InlineResponse201, Error<CreateSubscriptionError>> {
let configuration = configuration;
let client = &configuration.client;
let uri_str = format!("{}/apps/{app_id}/users/by/{alias_label}/{alias_id}/subscriptions", configuration.base_path, app_id=crate::apis::urlencode(app_id), alias_label=crate::apis::urlencode(alias_label), alias_id=crate::apis::urlencode(alias_id));
let mut req_builder = client.request(reqwest::Method::POST, uri_str.as_str());
if let Some(ref user_agent) = configuration.user_agent {
req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
}
req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=2.1.0");
if let Some(ref token) = configuration.app_key_token {
req_builder = req_builder.bearer_auth(token.to_owned());
}
req_builder = req_builder.json(&create_subscription_request_body);
let req = req_builder.build()?;
let resp = client.execute(req).await?;
let status = resp.status();
let content = resp.text().await?;
if !status.is_client_error() && !status.is_server_error() {
serde_json::from_str(&content).map_err(Error::from)
} else {
let entity: Option<CreateSubscriptionError> = serde_json::from_str(&content).ok();
let error = ResponseContent { status: status, content: content, entity: entity };
Err(Error::ResponseError(error))
}
}
pub async fn create_user(configuration: &configuration::Configuration, app_id: &str, user: crate::models::User) -> Result<crate::models::User, Error<CreateUserError>> {
let configuration = configuration;
let client = &configuration.client;
let uri_str = format!("{}/apps/{app_id}/users", configuration.base_path, app_id=crate::apis::urlencode(app_id));
let mut req_builder = client.request(reqwest::Method::POST, uri_str.as_str());
if let Some(ref user_agent) = configuration.user_agent {
req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
}
req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=2.1.0");
if let Some(ref token) = configuration.app_key_token {
req_builder = req_builder.bearer_auth(token.to_owned());
}
req_builder = req_builder.json(&user);
let req = req_builder.build()?;
let resp = client.execute(req).await?;
let status = resp.status();
let content = resp.text().await?;
if !status.is_client_error() && !status.is_server_error() {
serde_json::from_str(&content).map_err(Error::from)
} else {
let entity: Option<CreateUserError> = serde_json::from_str(&content).ok();
let error = ResponseContent { status: status, content: content, entity: entity };
Err(Error::ResponseError(error))
}
}
pub async fn delete_alias(configuration: &configuration::Configuration, app_id: &str, alias_label: &str, alias_id: &str, alias_label_to_delete: &str) -> Result<crate::models::InlineResponse200, Error<DeleteAliasError>> {
let configuration = configuration;
let client = &configuration.client;
let uri_str = format!("{}/apps/{app_id}/users/by/{alias_label}/{alias_id}/identity/{alias_label_to_delete}", configuration.base_path, app_id=crate::apis::urlencode(app_id), alias_label=crate::apis::urlencode(alias_label), alias_id=crate::apis::urlencode(alias_id), alias_label_to_delete=crate::apis::urlencode(alias_label_to_delete));
let mut req_builder = client.request(reqwest::Method::DELETE, uri_str.as_str());
if let Some(ref user_agent) = configuration.user_agent {
req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
}
req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=2.1.0");
if let Some(ref token) = configuration.app_key_token {
req_builder = req_builder.bearer_auth(token.to_owned());
}
let req = req_builder.build()?;
let resp = client.execute(req).await?;
let status = resp.status();
let content = resp.text().await?;
if !status.is_client_error() && !status.is_server_error() {
serde_json::from_str(&content).map_err(Error::from)
} else {
let entity: Option<DeleteAliasError> = serde_json::from_str(&content).ok();
let error = ResponseContent { status: status, content: content, entity: entity };
Err(Error::ResponseError(error))
}
}
pub async fn delete_player(configuration: &configuration::Configuration, app_id: &str, player_id: &str) -> Result<crate::models::DeletePlayerSuccessResponse, Error<DeletePlayerError>> {
let configuration = configuration;
let client = &configuration.client;
let uri_str = format!("{}/players/{player_id}", configuration.base_path, player_id=crate::apis::urlencode(player_id));
let mut req_builder = client.request(reqwest::Method::DELETE, uri_str.as_str());
req_builder = req_builder.query(&[("app_id", &app_id.to_string())]);
if let Some(ref user_agent) = configuration.user_agent {
req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
}
req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=2.1.0");
if let Some(ref token) = configuration.app_key_token {
req_builder = req_builder.bearer_auth(token.to_owned());
}
let req = req_builder.build()?;
let resp = client.execute(req).await?;
let status = resp.status();
let content = resp.text().await?;
if !status.is_client_error() && !status.is_server_error() {
serde_json::from_str(&content).map_err(Error::from)
} else {
let entity: Option<DeletePlayerError> = serde_json::from_str(&content).ok();
let error = ResponseContent { status: status, content: content, entity: entity };
Err(Error::ResponseError(error))
}
}
pub async fn delete_segments(configuration: &configuration::Configuration, app_id: &str, segment_id: &str) -> Result<crate::models::DeleteSegmentSuccessResponse, Error<DeleteSegmentsError>> {
let configuration = configuration;
let client = &configuration.client;
let uri_str = format!("{}/apps/{app_id}/segments/{segment_id}", configuration.base_path, app_id=crate::apis::urlencode(app_id), segment_id=crate::apis::urlencode(segment_id));
let mut req_builder = client.request(reqwest::Method::DELETE, uri_str.as_str());
if let Some(ref user_agent) = configuration.user_agent {
req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
}
req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=2.1.0");
if let Some(ref token) = configuration.app_key_token {
req_builder = req_builder.bearer_auth(token.to_owned());
}
let req = req_builder.build()?;
let resp = client.execute(req).await?;
let status = resp.status();
let content = resp.text().await?;
if !status.is_client_error() && !status.is_server_error() {
serde_json::from_str(&content).map_err(Error::from)
} else {
let entity: Option<DeleteSegmentsError> = serde_json::from_str(&content).ok();
let error = ResponseContent { status: status, content: content, entity: entity };
Err(Error::ResponseError(error))
}
}
pub async fn delete_subscription(configuration: &configuration::Configuration, app_id: &str, subscription_id: &str) -> Result<(), Error<DeleteSubscriptionError>> {
let configuration = configuration;
let client = &configuration.client;
let uri_str = format!("{}/apps/{app_id}/subscriptions/{subscription_id}", configuration.base_path, app_id=crate::apis::urlencode(app_id), subscription_id=crate::apis::urlencode(subscription_id));
let mut req_builder = client.request(reqwest::Method::DELETE, uri_str.as_str());
if let Some(ref user_agent) = configuration.user_agent {
req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
}
req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=2.1.0");
if let Some(ref token) = configuration.app_key_token {
req_builder = req_builder.bearer_auth(token.to_owned());
}
let req = req_builder.build()?;
let resp = client.execute(req).await?;
let status = resp.status();
let content = resp.text().await?;
if !status.is_client_error() && !status.is_server_error() {
Ok(())
} else {
let entity: Option<DeleteSubscriptionError> = serde_json::from_str(&content).ok();
let error = ResponseContent { status: status, content: content, entity: entity };
Err(Error::ResponseError(error))
}
}
pub async fn delete_user(configuration: &configuration::Configuration, app_id: &str, alias_label: &str, alias_id: &str) -> Result<(), Error<DeleteUserError>> {
let configuration = configuration;
let client = &configuration.client;
let uri_str = format!("{}/apps/{app_id}/users/by/{alias_label}/{alias_id}", configuration.base_path, app_id=crate::apis::urlencode(app_id), alias_label=crate::apis::urlencode(alias_label), alias_id=crate::apis::urlencode(alias_id));
let mut req_builder = client.request(reqwest::Method::DELETE, uri_str.as_str());
if let Some(ref user_agent) = configuration.user_agent {
req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
}
req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=2.1.0");
if let Some(ref token) = configuration.app_key_token {
req_builder = req_builder.bearer_auth(token.to_owned());
}
let req = req_builder.build()?;
let resp = client.execute(req).await?;
let status = resp.status();
let content = resp.text().await?;
if !status.is_client_error() && !status.is_server_error() {
Ok(())
} else {
let entity: Option<DeleteUserError> = serde_json::from_str(&content).ok();
let error = ResponseContent { status: status, content: content, entity: entity };
Err(Error::ResponseError(error))
}
}
pub async fn end_live_activity(configuration: &configuration::Configuration, app_id: &str, activity_id: &str, subscription_id: &str) -> Result<(), Error<EndLiveActivityError>> {
let configuration = configuration;
let client = &configuration.client;
let uri_str = format!("{}/apps/{app_id}/live_activities/{activity_id}/token/{subscription_id}", configuration.base_path, app_id=crate::apis::urlencode(app_id), activity_id=crate::apis::urlencode(activity_id), subscription_id=crate::apis::urlencode(subscription_id));
let mut req_builder = client.request(reqwest::Method::DELETE, uri_str.as_str());
if let Some(ref user_agent) = configuration.user_agent {
req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
}
req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=2.1.0");
if let Some(ref token) = configuration.app_key_token {
req_builder = req_builder.bearer_auth(token.to_owned());
}
let req = req_builder.build()?;
let resp = client.execute(req).await?;
let status = resp.status();
let content = resp.text().await?;
if !status.is_client_error() && !status.is_server_error() {
Ok(())
} else {
let entity: Option<EndLiveActivityError> = serde_json::from_str(&content).ok();
let error = ResponseContent { status: status, content: content, entity: entity };
Err(Error::ResponseError(error))
}
}
pub async fn export_events(configuration: &configuration::Configuration, notification_id: &str, app_id: &str) -> Result<crate::models::ExportEventsSuccessResponse, Error<ExportEventsError>> {
let configuration = configuration;
let client = &configuration.client;
let uri_str = format!("{}/notifications/{notification_id}/export_events?app_id={app_id}", configuration.base_path, notification_id=crate::apis::urlencode(notification_id));
let mut req_builder = client.request(reqwest::Method::POST, uri_str.as_str());
req_builder = req_builder.query(&[("app_id", &app_id.to_string())]);
if let Some(ref user_agent) = configuration.user_agent {
req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
}
req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=2.1.0");
if let Some(ref token) = configuration.app_key_token {
req_builder = req_builder.bearer_auth(token.to_owned());
}
let req = req_builder.build()?;
let resp = client.execute(req).await?;
let status = resp.status();
let content = resp.text().await?;
if !status.is_client_error() && !status.is_server_error() {
serde_json::from_str(&content).map_err(Error::from)
} else {
let entity: Option<ExportEventsError> = serde_json::from_str(&content).ok();
let error = ResponseContent { status: status, content: content, entity: entity };
Err(Error::ResponseError(error))
}
}
pub async fn export_players(configuration: &configuration::Configuration, app_id: &str, export_players_request_body: Option<crate::models::ExportPlayersRequestBody>) -> Result<crate::models::ExportPlayersSuccessResponse, Error<ExportPlayersError>> {
let configuration = configuration;
let client = &configuration.client;
let uri_str = format!("{}/players/csv_export?app_id={app_id}", configuration.base_path, app_id=crate::apis::urlencode(app_id));
let mut req_builder = client.request(reqwest::Method::POST, uri_str.as_str());
if let Some(ref user_agent) = configuration.user_agent {
req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
}
req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=2.1.0");
if let Some(ref token) = configuration.app_key_token {
req_builder = req_builder.bearer_auth(token.to_owned());
}
req_builder = req_builder.json(&export_players_request_body);
let req = req_builder.build()?;
let resp = client.execute(req).await?;
let status = resp.status();
let content = resp.text().await?;
if !status.is_client_error() && !status.is_server_error() {
serde_json::from_str(&content).map_err(Error::from)
} else {
let entity: Option<ExportPlayersError> = serde_json::from_str(&content).ok();
let error = ResponseContent { status: status, content: content, entity: entity };
Err(Error::ResponseError(error))
}
}
pub async fn fetch_aliases(configuration: &configuration::Configuration, app_id: &str, subscription_id: &str) -> Result<crate::models::UserIdentityResponse, Error<FetchAliasesError>> {
let configuration = configuration;
let client = &configuration.client;
let uri_str = format!("{}/apps/{app_id}/subscriptions/{subscription_id}/user/identity", configuration.base_path, app_id=crate::apis::urlencode(app_id), subscription_id=crate::apis::urlencode(subscription_id));
let mut req_builder = client.request(reqwest::Method::GET, uri_str.as_str());
if let Some(ref user_agent) = configuration.user_agent {
req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
}
req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=2.1.0");
if let Some(ref token) = configuration.app_key_token {
req_builder = req_builder.bearer_auth(token.to_owned());
}
let req = req_builder.build()?;
let resp = client.execute(req).await?;
let status = resp.status();
let content = resp.text().await?;
if !status.is_client_error() && !status.is_server_error() {
serde_json::from_str(&content).map_err(Error::from)
} else {
let entity: Option<FetchAliasesError> = serde_json::from_str(&content).ok();
let error = ResponseContent { status: status, content: content, entity: entity };
Err(Error::ResponseError(error))
}
}
pub async fn fetch_user(configuration: &configuration::Configuration, app_id: &str, alias_label: &str, alias_id: &str) -> Result<crate::models::User, Error<FetchUserError>> {
let configuration = configuration;
let client = &configuration.client;
let uri_str = format!("{}/apps/{app_id}/users/by/{alias_label}/{alias_id}", configuration.base_path, app_id=crate::apis::urlencode(app_id), alias_label=crate::apis::urlencode(alias_label), alias_id=crate::apis::urlencode(alias_id));
let mut req_builder = client.request(reqwest::Method::GET, uri_str.as_str());
if let Some(ref user_agent) = configuration.user_agent {
req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
}
req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=2.1.0");
if let Some(ref token) = configuration.app_key_token {
req_builder = req_builder.bearer_auth(token.to_owned());
}
let req = req_builder.build()?;
let resp = client.execute(req).await?;
let status = resp.status();
let content = resp.text().await?;
if !status.is_client_error() && !status.is_server_error() {
serde_json::from_str(&content).map_err(Error::from)
} else {
let entity: Option<FetchUserError> = serde_json::from_str(&content).ok();
let error = ResponseContent { status: status, content: content, entity: entity };
Err(Error::ResponseError(error))
}
}
pub async fn fetch_user_identity(configuration: &configuration::Configuration, app_id: &str, alias_label: &str, alias_id: &str) -> Result<crate::models::InlineResponse200, Error<FetchUserIdentityError>> {
let configuration = configuration;
let client = &configuration.client;
let uri_str = format!("{}/apps/{app_id}/users/by/{alias_label}/{alias_id}/identity", configuration.base_path, app_id=crate::apis::urlencode(app_id), alias_label=crate::apis::urlencode(alias_label), alias_id=crate::apis::urlencode(alias_id));
let mut req_builder = client.request(reqwest::Method::GET, uri_str.as_str());
if let Some(ref user_agent) = configuration.user_agent {
req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
}
req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=2.1.0");
if let Some(ref token) = configuration.app_key_token {
req_builder = req_builder.bearer_auth(token.to_owned());
}
let req = req_builder.build()?;
let resp = client.execute(req).await?;
let status = resp.status();
let content = resp.text().await?;
if !status.is_client_error() && !status.is_server_error() {
serde_json::from_str(&content).map_err(Error::from)
} else {
let entity: Option<FetchUserIdentityError> = serde_json::from_str(&content).ok();
let error = ResponseContent { status: status, content: content, entity: entity };
Err(Error::ResponseError(error))
}
}
pub async fn get_app(configuration: &configuration::Configuration, app_id: &str) -> Result<crate::models::App, Error<GetAppError>> {
let configuration = configuration;
let client = &configuration.client;
let uri_str = format!("{}/apps/{app_id}", configuration.base_path, app_id=crate::apis::urlencode(app_id));
let mut req_builder = client.request(reqwest::Method::GET, uri_str.as_str());
if let Some(ref user_agent) = configuration.user_agent {
req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
}
req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=2.1.0");
if let Some(ref token) = configuration.user_key_token {
req_builder = req_builder.bearer_auth(token.to_owned());
}
let req = req_builder.build()?;
let resp = client.execute(req).await?;
let status = resp.status();
let content = resp.text().await?;
if !status.is_client_error() && !status.is_server_error() {
serde_json::from_str(&content).map_err(Error::from)
} else {
let entity: Option<GetAppError> = serde_json::from_str(&content).ok();
let error = ResponseContent { status: status, content: content, entity: entity };
Err(Error::ResponseError(error))
}
}
pub async fn get_apps(configuration: &configuration::Configuration, ) -> Result<Vec<crate::models::App>, Error<GetAppsError>> {
let configuration = configuration;
let client = &configuration.client;
let uri_str = format!("{}/apps", configuration.base_path);
let mut req_builder = client.request(reqwest::Method::GET, uri_str.as_str());
if let Some(ref user_agent) = configuration.user_agent {
req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
}
req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=2.1.0");
if let Some(ref token) = configuration.user_key_token {
req_builder = req_builder.bearer_auth(token.to_owned());
}
let req = req_builder.build()?;
let resp = client.execute(req).await?;
let status = resp.status();
let content = resp.text().await?;
if !status.is_client_error() && !status.is_server_error() {
serde_json::from_str(&content).map_err(Error::from)
} else {
let entity: Option<GetAppsError> = serde_json::from_str(&content).ok();
let error = ResponseContent { status: status, content: content, entity: entity };
Err(Error::ResponseError(error))
}
}
pub async fn get_eligible_iams(configuration: &configuration::Configuration, app_id: &str, subscription_id: &str) -> Result<crate::models::InlineResponse2003, Error<GetEligibleIamsError>> {
let configuration = configuration;
let client = &configuration.client;
let uri_str = format!("{}/apps/{app_id}/subscriptions/{subscription_id}/iams", configuration.base_path, app_id=crate::apis::urlencode(app_id), subscription_id=crate::apis::urlencode(subscription_id));
let mut req_builder = client.request(reqwest::Method::GET, uri_str.as_str());
if let Some(ref user_agent) = configuration.user_agent {
req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
}
req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=2.1.0");
if let Some(ref token) = configuration.app_key_token {
req_builder = req_builder.bearer_auth(token.to_owned());
}
let req = req_builder.build()?;
let resp = client.execute(req).await?;
let status = resp.status();
let content = resp.text().await?;
if !status.is_client_error() && !status.is_server_error() {
serde_json::from_str(&content).map_err(Error::from)
} else {
let entity: Option<GetEligibleIamsError> = serde_json::from_str(&content).ok();
let error = ResponseContent { status: status, content: content, entity: entity };
Err(Error::ResponseError(error))
}
}
pub async fn get_notification(configuration: &configuration::Configuration, app_id: &str, notification_id: &str) -> Result<crate::models::NotificationWithMeta, Error<GetNotificationError>> {
let configuration = configuration;
let client = &configuration.client;
let uri_str = format!("{}/notifications/{notification_id}", configuration.base_path, notification_id=crate::apis::urlencode(notification_id));
let mut req_builder = client.request(reqwest::Method::GET, uri_str.as_str());
req_builder = req_builder.query(&[("app_id", &app_id.to_string())]);
if let Some(ref user_agent) = configuration.user_agent {
req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
}
req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=2.1.0");
if let Some(ref token) = configuration.app_key_token {
req_builder = req_builder.bearer_auth(token.to_owned());
}
let req = req_builder.build()?;
let resp = client.execute(req).await?;
let status = resp.status();
let content = resp.text().await?;
if !status.is_client_error() && !status.is_server_error() {
serde_json::from_str(&content).map_err(Error::from)
} else {
let entity: Option<GetNotificationError> = serde_json::from_str(&content).ok();
let error = ResponseContent { status: status, content: content, entity: entity };
Err(Error::ResponseError(error))
}
}
pub async fn get_notification_history(configuration: &configuration::Configuration, notification_id: &str, get_notification_request_body: crate::models::GetNotificationRequestBody) -> Result<crate::models::NotificationHistorySuccessResponse, Error<GetNotificationHistoryError>> {
let configuration = configuration;
let client = &configuration.client;
let uri_str = format!("{}/notifications/{notification_id}/history", configuration.base_path, notification_id=crate::apis::urlencode(notification_id));
let mut req_builder = client.request(reqwest::Method::POST, uri_str.as_str());
if let Some(ref user_agent) = configuration.user_agent {
req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
}
req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=2.1.0");
if let Some(ref token) = configuration.app_key_token {
req_builder = req_builder.bearer_auth(token.to_owned());
}
req_builder = req_builder.json(&get_notification_request_body);
let req = req_builder.build()?;
let resp = client.execute(req).await?;
let status = resp.status();
let content = resp.text().await?;
if !status.is_client_error() && !status.is_server_error() {
serde_json::from_str(&content).map_err(Error::from)
} else {
let entity: Option<GetNotificationHistoryError> = serde_json::from_str(&content).ok();
let error = ResponseContent { status: status, content: content, entity: entity };
Err(Error::ResponseError(error))
}
}
pub async fn get_notifications(configuration: &configuration::Configuration, app_id: &str, limit: Option<i32>, offset: Option<i32>, kind: Option<i32>) -> Result<crate::models::NotificationSlice, Error<GetNotificationsError>> {
let configuration = configuration;
let client = &configuration.client;
let uri_str = format!("{}/notifications", configuration.base_path);
let mut req_builder = client.request(reqwest::Method::GET, uri_str.as_str());
req_builder = req_builder.query(&[("app_id", &app_id.to_string())]);
if let Some(ref str) = limit {
req_builder = req_builder.query(&[("limit", &str.to_string())]);
}
if let Some(ref str) = offset {
req_builder = req_builder.query(&[("offset", &str.to_string())]);
}
if let Some(ref str) = kind {
req_builder = req_builder.query(&[("kind", &str.to_string())]);
}
if let Some(ref user_agent) = configuration.user_agent {
req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
}
req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=2.1.0");
if let Some(ref token) = configuration.app_key_token {
req_builder = req_builder.bearer_auth(token.to_owned());
}
let req = req_builder.build()?;
let resp = client.execute(req).await?;
let status = resp.status();
let content = resp.text().await?;
if !status.is_client_error() && !status.is_server_error() {
serde_json::from_str(&content).map_err(Error::from)
} else {
let entity: Option<GetNotificationsError> = serde_json::from_str(&content).ok();
let error = ResponseContent { status: status, content: content, entity: entity };
Err(Error::ResponseError(error))
}
}
pub async fn get_outcomes(configuration: &configuration::Configuration, app_id: &str, outcome_names: &str, outcome_names2: Option<&str>, outcome_time_range: Option<&str>, outcome_platforms: Option<&str>, outcome_attribution: Option<&str>) -> Result<crate::models::OutcomesData, Error<GetOutcomesError>> {
let configuration = configuration;
let client = &configuration.client;
let uri_str = format!("{}/apps/{app_id}/outcomes", configuration.base_path, app_id=crate::apis::urlencode(app_id));
let mut req_builder = client.request(reqwest::Method::GET, uri_str.as_str());
req_builder = req_builder.query(&[("outcome_names", &outcome_names.to_string())]);
if let Some(ref str) = outcome_names2 {
req_builder = req_builder.query(&[("outcome_names[]", &str.to_string())]);
}
if let Some(ref str) = outcome_time_range {
req_builder = req_builder.query(&[("outcome_time_range", &str.to_string())]);
}
if let Some(ref str) = outcome_platforms {
req_builder = req_builder.query(&[("outcome_platforms", &str.to_string())]);
}
if let Some(ref str) = outcome_attribution {
req_builder = req_builder.query(&[("outcome_attribution", &str.to_string())]);
}
if let Some(ref user_agent) = configuration.user_agent {
req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
}
req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=2.1.0");
if let Some(ref token) = configuration.app_key_token {
req_builder = req_builder.bearer_auth(token.to_owned());
}
let req = req_builder.build()?;
let resp = client.execute(req).await?;
let status = resp.status();
let content = resp.text().await?;
if !status.is_client_error() && !status.is_server_error() {
serde_json::from_str(&content).map_err(Error::from)
} else {
let entity: Option<GetOutcomesError> = serde_json::from_str(&content).ok();
let error = ResponseContent { status: status, content: content, entity: entity };
Err(Error::ResponseError(error))
}
}
pub async fn get_player(configuration: &configuration::Configuration, app_id: &str, player_id: &str, email_auth_hash: Option<&str>) -> Result<crate::models::Player, Error<GetPlayerError>> {
let configuration = configuration;
let client = &configuration.client;
let uri_str = format!("{}/players/{player_id}", configuration.base_path, player_id=crate::apis::urlencode(player_id));
let mut req_builder = client.request(reqwest::Method::GET, uri_str.as_str());
req_builder = req_builder.query(&[("app_id", &app_id.to_string())]);
if let Some(ref str) = email_auth_hash {
req_builder = req_builder.query(&[("email_auth_hash", &str.to_string())]);
}
if let Some(ref user_agent) = configuration.user_agent {
req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
}
req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=2.1.0");
if let Some(ref token) = configuration.app_key_token {
req_builder = req_builder.bearer_auth(token.to_owned());
}
let req = req_builder.build()?;
let resp = client.execute(req).await?;
let status = resp.status();
let content = resp.text().await?;
if !status.is_client_error() && !status.is_server_error() {
serde_json::from_str(&content).map_err(Error::from)
} else {
let entity: Option<GetPlayerError> = serde_json::from_str(&content).ok();
let error = ResponseContent { status: status, content: content, entity: entity };
Err(Error::ResponseError(error))
}
}
pub async fn get_players(configuration: &configuration::Configuration, app_id: &str, limit: Option<i32>, offset: Option<i32>) -> Result<crate::models::PlayerSlice, Error<GetPlayersError>> {
let configuration = configuration;
let client = &configuration.client;
let uri_str = format!("{}/players", configuration.base_path);
let mut req_builder = client.request(reqwest::Method::GET, uri_str.as_str());
req_builder = req_builder.query(&[("app_id", &app_id.to_string())]);
if let Some(ref str) = limit {
req_builder = req_builder.query(&[("limit", &str.to_string())]);
}
if let Some(ref str) = offset {
req_builder = req_builder.query(&[("offset", &str.to_string())]);
}
if let Some(ref user_agent) = configuration.user_agent {
req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
}
req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=2.1.0");
if let Some(ref token) = configuration.app_key_token {
req_builder = req_builder.bearer_auth(token.to_owned());
}
let req = req_builder.build()?;
let resp = client.execute(req).await?;
let status = resp.status();
let content = resp.text().await?;
if !status.is_client_error() && !status.is_server_error() {
serde_json::from_str(&content).map_err(Error::from)
} else {
let entity: Option<GetPlayersError> = serde_json::from_str(&content).ok();
let error = ResponseContent { status: status, content: content, entity: entity };
Err(Error::ResponseError(error))
}
}
pub async fn identify_user_by_alias(configuration: &configuration::Configuration, app_id: &str, alias_label: &str, alias_id: &str, user_identity_request_body: crate::models::UserIdentityRequestBody) -> Result<crate::models::InlineResponse200, Error<IdentifyUserByAliasError>> {
let configuration = configuration;
let client = &configuration.client;
let uri_str = format!("{}/apps/{app_id}/users/by/{alias_label}/{alias_id}/identity", configuration.base_path, app_id=crate::apis::urlencode(app_id), alias_label=crate::apis::urlencode(alias_label), alias_id=crate::apis::urlencode(alias_id));
let mut req_builder = client.request(reqwest::Method::PATCH, uri_str.as_str());
if let Some(ref user_agent) = configuration.user_agent {
req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
}
req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=2.1.0");
if let Some(ref token) = configuration.app_key_token {
req_builder = req_builder.bearer_auth(token.to_owned());
}
req_builder = req_builder.json(&user_identity_request_body);
let req = req_builder.build()?;
let resp = client.execute(req).await?;
let status = resp.status();
let content = resp.text().await?;
if !status.is_client_error() && !status.is_server_error() {
serde_json::from_str(&content).map_err(Error::from)
} else {
let entity: Option<IdentifyUserByAliasError> = serde_json::from_str(&content).ok();
let error = ResponseContent { status: status, content: content, entity: entity };
Err(Error::ResponseError(error))
}
}
pub async fn identify_user_by_subscription_id(configuration: &configuration::Configuration, app_id: &str, subscription_id: &str, user_identity_request_body: crate::models::UserIdentityRequestBody) -> Result<crate::models::UserIdentityResponse, Error<IdentifyUserBySubscriptionIdError>> {
let configuration = configuration;
let client = &configuration.client;
let uri_str = format!("{}/apps/{app_id}/subscriptions/{subscription_id}/user/identity", configuration.base_path, app_id=crate::apis::urlencode(app_id), subscription_id=crate::apis::urlencode(subscription_id));
let mut req_builder = client.request(reqwest::Method::PATCH, uri_str.as_str());
if let Some(ref user_agent) = configuration.user_agent {
req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
}
req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=2.1.0");
if let Some(ref token) = configuration.app_key_token {
req_builder = req_builder.bearer_auth(token.to_owned());
}
req_builder = req_builder.json(&user_identity_request_body);
let req = req_builder.build()?;
let resp = client.execute(req).await?;
let status = resp.status();
let content = resp.text().await?;
if !status.is_client_error() && !status.is_server_error() {
serde_json::from_str(&content).map_err(Error::from)
} else {
let entity: Option<IdentifyUserBySubscriptionIdError> = serde_json::from_str(&content).ok();
let error = ResponseContent { status: status, content: content, entity: entity };
Err(Error::ResponseError(error))
}
}
pub async fn transfer_subscription(configuration: &configuration::Configuration, app_id: &str, subscription_id: &str, transfer_subscription_request_body: crate::models::TransferSubscriptionRequestBody) -> Result<crate::models::UserIdentityResponse, Error<TransferSubscriptionError>> {
let configuration = configuration;
let client = &configuration.client;
let uri_str = format!("{}/apps/{app_id}/subscriptions/{subscription_id}/owner", configuration.base_path, app_id=crate::apis::urlencode(app_id), subscription_id=crate::apis::urlencode(subscription_id));
let mut req_builder = client.request(reqwest::Method::PATCH, uri_str.as_str());
if let Some(ref user_agent) = configuration.user_agent {
req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
}
req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=2.1.0");
if let Some(ref token) = configuration.app_key_token {
req_builder = req_builder.bearer_auth(token.to_owned());
}
req_builder = req_builder.json(&transfer_subscription_request_body);
let req = req_builder.build()?;
let resp = client.execute(req).await?;
let status = resp.status();
let content = resp.text().await?;
if !status.is_client_error() && !status.is_server_error() {
serde_json::from_str(&content).map_err(Error::from)
} else {
let entity: Option<TransferSubscriptionError> = serde_json::from_str(&content).ok();
let error = ResponseContent { status: status, content: content, entity: entity };
Err(Error::ResponseError(error))
}
}
pub async fn update_app(configuration: &configuration::Configuration, app_id: &str, app: crate::models::App) -> Result<crate::models::App, Error<UpdateAppError>> {
let configuration = configuration;
let client = &configuration.client;
let uri_str = format!("{}/apps/{app_id}", configuration.base_path, app_id=crate::apis::urlencode(app_id));
let mut req_builder = client.request(reqwest::Method::PUT, uri_str.as_str());
if let Some(ref user_agent) = configuration.user_agent {
req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
}
req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=2.1.0");
if let Some(ref token) = configuration.user_key_token {
req_builder = req_builder.bearer_auth(token.to_owned());
}
req_builder = req_builder.json(&app);
let req = req_builder.build()?;
let resp = client.execute(req).await?;
let status = resp.status();
let content = resp.text().await?;
if !status.is_client_error() && !status.is_server_error() {
serde_json::from_str(&content).map_err(Error::from)
} else {
let entity: Option<UpdateAppError> = serde_json::from_str(&content).ok();
let error = ResponseContent { status: status, content: content, entity: entity };
Err(Error::ResponseError(error))
}
}
pub async fn update_live_activity(configuration: &configuration::Configuration, app_id: &str, activity_id: &str, update_live_activity_request: crate::models::UpdateLiveActivityRequest) -> Result<crate::models::UpdateLiveActivitySuccessResponse, Error<UpdateLiveActivityError>> {
let configuration = configuration;
let client = &configuration.client;
let uri_str = format!("{}/apps/{app_id}/live_activities/{activity_id}/notifications", configuration.base_path, app_id=crate::apis::urlencode(app_id), activity_id=crate::apis::urlencode(activity_id));
let mut req_builder = client.request(reqwest::Method::POST, uri_str.as_str());
if let Some(ref user_agent) = configuration.user_agent {
req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
}
req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=2.1.0");
if let Some(ref token) = configuration.app_key_token {
req_builder = req_builder.bearer_auth(token.to_owned());
}
req_builder = req_builder.json(&update_live_activity_request);
let req = req_builder.build()?;
let resp = client.execute(req).await?;
let status = resp.status();
let content = resp.text().await?;
if !status.is_client_error() && !status.is_server_error() {
serde_json::from_str(&content).map_err(Error::from)
} else {
let entity: Option<UpdateLiveActivityError> = serde_json::from_str(&content).ok();
let error = ResponseContent { status: status, content: content, entity: entity };
Err(Error::ResponseError(error))
}
}
pub async fn update_player(configuration: &configuration::Configuration, player_id: &str, player: crate::models::Player) -> Result<crate::models::UpdatePlayerSuccessResponse, Error<UpdatePlayerError>> {
let configuration = configuration;
let client = &configuration.client;
let uri_str = format!("{}/players/{player_id}", configuration.base_path, player_id=crate::apis::urlencode(player_id));
let mut req_builder = client.request(reqwest::Method::PUT, uri_str.as_str());
if let Some(ref user_agent) = configuration.user_agent {
req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
}
req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=2.1.0");
if let Some(ref token) = configuration.app_key_token {
req_builder = req_builder.bearer_auth(token.to_owned());
}
req_builder = req_builder.json(&player);
let req = req_builder.build()?;
let resp = client.execute(req).await?;
let status = resp.status();
let content = resp.text().await?;
if !status.is_client_error() && !status.is_server_error() {
serde_json::from_str(&content).map_err(Error::from)
} else {
let entity: Option<UpdatePlayerError> = serde_json::from_str(&content).ok();
let error = ResponseContent { status: status, content: content, entity: entity };
Err(Error::ResponseError(error))
}
}
pub async fn update_player_tags(configuration: &configuration::Configuration, app_id: &str, external_user_id: &str, update_player_tags_request_body: Option<crate::models::UpdatePlayerTagsRequestBody>) -> Result<crate::models::UpdatePlayerTagsSuccessResponse, Error<UpdatePlayerTagsError>> {
let configuration = configuration;
let client = &configuration.client;
let uri_str = format!("{}/apps/{app_id}/users/{external_user_id}", configuration.base_path, app_id=crate::apis::urlencode(app_id), external_user_id=crate::apis::urlencode(external_user_id));
let mut req_builder = client.request(reqwest::Method::PUT, uri_str.as_str());
if let Some(ref user_agent) = configuration.user_agent {
req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
}
req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=2.1.0");
if let Some(ref token) = configuration.app_key_token {
req_builder = req_builder.bearer_auth(token.to_owned());
}
req_builder = req_builder.json(&update_player_tags_request_body);
let req = req_builder.build()?;
let resp = client.execute(req).await?;
let status = resp.status();
let content = resp.text().await?;
if !status.is_client_error() && !status.is_server_error() {
serde_json::from_str(&content).map_err(Error::from)
} else {
let entity: Option<UpdatePlayerTagsError> = serde_json::from_str(&content).ok();
let error = ResponseContent { status: status, content: content, entity: entity };
Err(Error::ResponseError(error))
}
}
pub async fn update_subscription(configuration: &configuration::Configuration, app_id: &str, subscription_id: &str, update_subscription_request_body: crate::models::UpdateSubscriptionRequestBody) -> Result<(), Error<UpdateSubscriptionError>> {
let configuration = configuration;
let client = &configuration.client;
let uri_str = format!("{}/apps/{app_id}/subscriptions/{subscription_id}", configuration.base_path, app_id=crate::apis::urlencode(app_id), subscription_id=crate::apis::urlencode(subscription_id));
let mut req_builder = client.request(reqwest::Method::PATCH, uri_str.as_str());
if let Some(ref user_agent) = configuration.user_agent {
req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
}
req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=2.1.0");
if let Some(ref token) = configuration.app_key_token {
req_builder = req_builder.bearer_auth(token.to_owned());
}
req_builder = req_builder.json(&update_subscription_request_body);
let req = req_builder.build()?;
let resp = client.execute(req).await?;
let status = resp.status();
let content = resp.text().await?;
if !status.is_client_error() && !status.is_server_error() {
Ok(())
} else {
let entity: Option<UpdateSubscriptionError> = serde_json::from_str(&content).ok();
let error = ResponseContent { status: status, content: content, entity: entity };
Err(Error::ResponseError(error))
}
}
pub async fn update_user(configuration: &configuration::Configuration, app_id: &str, alias_label: &str, alias_id: &str, update_user_request: crate::models::UpdateUserRequest) -> Result<crate::models::InlineResponse202, Error<UpdateUserError>> {
let configuration = configuration;
let client = &configuration.client;
let uri_str = format!("{}/apps/{app_id}/users/by/{alias_label}/{alias_id}", configuration.base_path, app_id=crate::apis::urlencode(app_id), alias_label=crate::apis::urlencode(alias_label), alias_id=crate::apis::urlencode(alias_id));
let mut req_builder = client.request(reqwest::Method::PATCH, uri_str.as_str());
if let Some(ref user_agent) = configuration.user_agent {
req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
}
req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=2.1.0");
if let Some(ref token) = configuration.app_key_token {
req_builder = req_builder.bearer_auth(token.to_owned());
}
req_builder = req_builder.json(&update_user_request);
let req = req_builder.build()?;
let resp = client.execute(req).await?;
let status = resp.status();
let content = resp.text().await?;
if !status.is_client_error() && !status.is_server_error() {
serde_json::from_str(&content).map_err(Error::from)
} else {
let entity: Option<UpdateUserError> = serde_json::from_str(&content).ok();
let error = ResponseContent { status: status, content: content, entity: entity };
Err(Error::ResponseError(error))
}
}