1use reqwest;
13
14use crate::apis::ResponseContent;
15use super::{Error, configuration};
16
17
18#[derive(Debug, Clone, Serialize, Deserialize)]
20#[serde(untagged)]
21pub enum CancelNotificationError {
22 Status400(crate::models::GenericError),
23 Status404(crate::models::GenericError),
24 Status429(crate::models::RateLimitError),
25 UnknownValue(serde_json::Value),
26}
27
28#[derive(Debug, Clone, Serialize, Deserialize)]
30#[serde(untagged)]
31pub enum CreateAliasError {
32 Status400(crate::models::GenericError),
33 Status404(crate::models::GenericError),
34 Status409(crate::models::GenericError),
35 Status429(crate::models::RateLimitError),
36 UnknownValue(serde_json::Value),
37}
38
39#[derive(Debug, Clone, Serialize, Deserialize)]
41#[serde(untagged)]
42pub enum CreateAliasBySubscriptionError {
43 Status400(crate::models::GenericError),
44 Status404(crate::models::GenericError),
45 Status409(crate::models::GenericError),
46 Status429(crate::models::RateLimitError),
47 UnknownValue(serde_json::Value),
48}
49
50#[derive(Debug, Clone, Serialize, Deserialize)]
52#[serde(untagged)]
53pub enum CreateAppError {
54 Status400(crate::models::GenericError),
55 Status429(crate::models::RateLimitError),
56 UnknownValue(serde_json::Value),
57}
58
59#[derive(Debug, Clone, Serialize, Deserialize)]
61#[serde(untagged)]
62pub enum CreateNotificationError {
63 Status400(crate::models::GenericError),
64 Status429(crate::models::RateLimitError),
65 UnknownValue(serde_json::Value),
66}
67
68#[derive(Debug, Clone, Serialize, Deserialize)]
70#[serde(untagged)]
71pub enum CreateSegmentError {
72 Status400(crate::models::GenericError),
73 Status409(crate::models::CreateSegmentConflictResponse),
74 Status429(crate::models::RateLimitError),
75 UnknownValue(serde_json::Value),
76}
77
78#[derive(Debug, Clone, Serialize, Deserialize)]
80#[serde(untagged)]
81pub enum CreateSubscriptionError {
82 Status400(crate::models::GenericError),
83 Status404(crate::models::GenericError),
84 Status409(crate::models::GenericError),
85 Status429(crate::models::RateLimitError),
86 UnknownValue(serde_json::Value),
87}
88
89#[derive(Debug, Clone, Serialize, Deserialize)]
91#[serde(untagged)]
92pub enum CreateUserError {
93 Status400(crate::models::GenericError),
94 Status409(crate::models::CreateUserConflictResponse),
95 Status429(crate::models::RateLimitError),
96 UnknownValue(serde_json::Value),
97}
98
99#[derive(Debug, Clone, Serialize, Deserialize)]
101#[serde(untagged)]
102pub enum DeleteAliasError {
103 Status400(crate::models::GenericError),
104 Status404(crate::models::GenericError),
105 Status409(crate::models::GenericError),
106 Status429(crate::models::RateLimitError),
107 UnknownValue(serde_json::Value),
108}
109
110#[derive(Debug, Clone, Serialize, Deserialize)]
112#[serde(untagged)]
113pub enum DeleteSegmentError {
114 Status400(crate::models::GenericError),
115 Status404(crate::models::GenericSuccessBoolResponse),
116 Status429(crate::models::RateLimitError),
117 UnknownValue(serde_json::Value),
118}
119
120#[derive(Debug, Clone, Serialize, Deserialize)]
122#[serde(untagged)]
123pub enum DeleteSubscriptionError {
124 Status400(crate::models::GenericError),
125 Status404(crate::models::GenericError),
126 Status409(crate::models::GenericError),
127 Status429(crate::models::RateLimitError),
128 UnknownValue(serde_json::Value),
129}
130
131#[derive(Debug, Clone, Serialize, Deserialize)]
133#[serde(untagged)]
134pub enum DeleteUserError {
135 Status400(crate::models::GenericError),
136 Status409(crate::models::GenericError),
137 Status429(crate::models::RateLimitError),
138 UnknownValue(serde_json::Value),
139}
140
141#[derive(Debug, Clone, Serialize, Deserialize)]
143#[serde(untagged)]
144pub enum ExportEventsError {
145 Status400(crate::models::GenericError),
146 Status404(crate::models::GenericError),
147 Status429(crate::models::RateLimitError),
148 UnknownValue(serde_json::Value),
149}
150
151#[derive(Debug, Clone, Serialize, Deserialize)]
153#[serde(untagged)]
154pub enum ExportSubscriptionsError {
155 Status400(crate::models::GenericError),
156 Status429(crate::models::RateLimitError),
157 UnknownValue(serde_json::Value),
158}
159
160#[derive(Debug, Clone, Serialize, Deserialize)]
162#[serde(untagged)]
163pub enum GetAliasesError {
164 Status400(crate::models::GenericError),
165 Status404(crate::models::GenericError),
166 Status429(crate::models::RateLimitError),
167 UnknownValue(serde_json::Value),
168}
169
170#[derive(Debug, Clone, Serialize, Deserialize)]
172#[serde(untagged)]
173pub enum GetAliasesBySubscriptionError {
174 Status400(crate::models::GenericError),
175 Status404(crate::models::GenericError),
176 UnknownValue(serde_json::Value),
177}
178
179#[derive(Debug, Clone, Serialize, Deserialize)]
181#[serde(untagged)]
182pub enum GetAppError {
183 Status400(crate::models::GenericError),
184 Status429(crate::models::RateLimitError),
185 UnknownValue(serde_json::Value),
186}
187
188#[derive(Debug, Clone, Serialize, Deserialize)]
190#[serde(untagged)]
191pub enum GetAppsError {
192 Status400(crate::models::GenericError),
193 Status429(crate::models::RateLimitError),
194 UnknownValue(serde_json::Value),
195}
196
197#[derive(Debug, Clone, Serialize, Deserialize)]
199#[serde(untagged)]
200pub enum GetNotificationError {
201 Status400(crate::models::GenericError),
202 Status404(crate::models::GenericError),
203 Status429(crate::models::RateLimitError),
204 UnknownValue(serde_json::Value),
205}
206
207#[derive(Debug, Clone, Serialize, Deserialize)]
209#[serde(untagged)]
210pub enum GetNotificationHistoryError {
211 Status400(crate::models::GenericError),
212 Status404(crate::models::GenericError),
213 Status429(crate::models::RateLimitError),
214 UnknownValue(serde_json::Value),
215}
216
217#[derive(Debug, Clone, Serialize, Deserialize)]
219#[serde(untagged)]
220pub enum GetNotificationsError {
221 Status400(crate::models::GenericError),
222 Status429(crate::models::RateLimitError),
223 UnknownValue(serde_json::Value),
224}
225
226#[derive(Debug, Clone, Serialize, Deserialize)]
228#[serde(untagged)]
229pub enum GetOutcomesError {
230 Status400(crate::models::GenericError),
231 Status429(crate::models::RateLimitError),
232 UnknownValue(serde_json::Value),
233}
234
235#[derive(Debug, Clone, Serialize, Deserialize)]
237#[serde(untagged)]
238pub enum GetSegmentsError {
239 Status400(crate::models::GenericError),
240 Status429(crate::models::RateLimitError),
241 UnknownValue(serde_json::Value),
242}
243
244#[derive(Debug, Clone, Serialize, Deserialize)]
246#[serde(untagged)]
247pub enum GetUserError {
248 Status400(crate::models::GenericError),
249 Status404(crate::models::GenericError),
250 Status429(crate::models::RateLimitError),
251 UnknownValue(serde_json::Value),
252}
253
254#[derive(Debug, Clone, Serialize, Deserialize)]
256#[serde(untagged)]
257pub enum TransferSubscriptionError {
258 Status400(crate::models::GenericError),
259 Status404(crate::models::GenericError),
260 Status409(crate::models::GenericError),
261 Status429(crate::models::RateLimitError),
262 UnknownValue(serde_json::Value),
263}
264
265#[derive(Debug, Clone, Serialize, Deserialize)]
267#[serde(untagged)]
268pub enum UnsubscribeEmailWithTokenError {
269 Status400(crate::models::GenericError),
270 Status429(crate::models::RateLimitError),
271 UnknownValue(serde_json::Value),
272}
273
274#[derive(Debug, Clone, Serialize, Deserialize)]
276#[serde(untagged)]
277pub enum UpdateAppError {
278 Status400(crate::models::GenericError),
279 Status429(crate::models::RateLimitError),
280 UnknownValue(serde_json::Value),
281}
282
283#[derive(Debug, Clone, Serialize, Deserialize)]
285#[serde(untagged)]
286pub enum UpdateLiveActivityError {
287 Status400(crate::models::GenericError),
288 Status429(crate::models::RateLimitError),
289 UnknownValue(serde_json::Value),
290}
291
292#[derive(Debug, Clone, Serialize, Deserialize)]
294#[serde(untagged)]
295pub enum UpdateSubscriptionError {
296 Status400(crate::models::GenericError),
297 Status404(crate::models::GenericError),
298 Status409(crate::models::GenericError),
299 Status429(crate::models::RateLimitError),
300 UnknownValue(serde_json::Value),
301}
302
303#[derive(Debug, Clone, Serialize, Deserialize)]
305#[serde(untagged)]
306pub enum UpdateUserError {
307 Status400(crate::models::GenericError),
308 Status409(crate::models::GenericError),
309 Status429(crate::models::RateLimitError),
310 UnknownValue(serde_json::Value),
311}
312
313
314pub async fn cancel_notification(configuration: &configuration::Configuration, app_id: &str, notification_id: &str) -> Result<crate::models::GenericSuccessBoolResponse, Error<CancelNotificationError>> {
316 let configuration = configuration;
317
318 let client = &configuration.client;
319
320 let uri_str = format!("{}/notifications/{notification_id}", configuration.base_path, notification_id=crate::apis::urlencode(notification_id));
321 let mut req_builder = client.request(reqwest::Method::DELETE, uri_str.as_str());
322
323 req_builder = req_builder.query(&[("app_id", &app_id.to_string())]);
324 if let Some(ref user_agent) = configuration.user_agent {
325 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
326 }
327
328 req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=5.2.1-beta1");
330
331 if let Some(ref token) = configuration.rest_api_key_token {
332 req_builder = req_builder.header("Authorization", format!("Key {}", token.to_owned()));
333 }
334
335 let req = req_builder.build()?;
336 let resp = client.execute(req).await?;
337
338 let status = resp.status();
339 let content = resp.text().await?;
340
341 if !status.is_client_error() && !status.is_server_error() {
342 serde_json::from_str(&content).map_err(Error::from)
343 } else {
344 let entity: Option<CancelNotificationError> = serde_json::from_str(&content).ok();
345 let error = ResponseContent { status: status, content: content, entity: entity };
346 Err(Error::ResponseError(error))
347 }
348}
349
350pub async fn create_alias(configuration: &configuration::Configuration, app_id: &str, alias_label: &str, alias_id: &str, user_identity_body: crate::models::UserIdentityBody) -> Result<crate::models::UserIdentityBody, Error<CreateAliasError>> {
352 let configuration = configuration;
353
354 let client = &configuration.client;
355
356 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));
357 let mut req_builder = client.request(reqwest::Method::PATCH, uri_str.as_str());
358
359 if let Some(ref user_agent) = configuration.user_agent {
360 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
361 }
362
363 req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=5.2.1-beta1");
365
366 if let Some(ref token) = configuration.rest_api_key_token {
367 req_builder = req_builder.header("Authorization", format!("Key {}", token.to_owned()));
368 }
369 req_builder = req_builder.json(&user_identity_body);
370
371 let req = req_builder.build()?;
372 let resp = client.execute(req).await?;
373
374 let status = resp.status();
375 let content = resp.text().await?;
376
377 if !status.is_client_error() && !status.is_server_error() {
378 serde_json::from_str(&content).map_err(Error::from)
379 } else {
380 let entity: Option<CreateAliasError> = serde_json::from_str(&content).ok();
381 let error = ResponseContent { status: status, content: content, entity: entity };
382 Err(Error::ResponseError(error))
383 }
384}
385
386pub async fn create_alias_by_subscription(configuration: &configuration::Configuration, app_id: &str, subscription_id: &str, user_identity_body: crate::models::UserIdentityBody) -> Result<crate::models::UserIdentityBody, Error<CreateAliasBySubscriptionError>> {
388 let configuration = configuration;
389
390 let client = &configuration.client;
391
392 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));
393 let mut req_builder = client.request(reqwest::Method::PATCH, uri_str.as_str());
394
395 if let Some(ref user_agent) = configuration.user_agent {
396 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
397 }
398
399 req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=5.2.1-beta1");
401
402 if let Some(ref token) = configuration.rest_api_key_token {
403 req_builder = req_builder.header("Authorization", format!("Key {}", token.to_owned()));
404 }
405 req_builder = req_builder.json(&user_identity_body);
406
407 let req = req_builder.build()?;
408 let resp = client.execute(req).await?;
409
410 let status = resp.status();
411 let content = resp.text().await?;
412
413 if !status.is_client_error() && !status.is_server_error() {
414 serde_json::from_str(&content).map_err(Error::from)
415 } else {
416 let entity: Option<CreateAliasBySubscriptionError> = serde_json::from_str(&content).ok();
417 let error = ResponseContent { status: status, content: content, entity: entity };
418 Err(Error::ResponseError(error))
419 }
420}
421
422pub async fn create_app(configuration: &configuration::Configuration, app: crate::models::App) -> Result<crate::models::App, Error<CreateAppError>> {
424 let configuration = configuration;
425
426 let client = &configuration.client;
427
428 let uri_str = format!("{}/apps", configuration.base_path);
429 let mut req_builder = client.request(reqwest::Method::POST, uri_str.as_str());
430
431 if let Some(ref user_agent) = configuration.user_agent {
432 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
433 }
434
435 req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=5.2.1-beta1");
437
438 if let Some(ref token) = configuration.organization_api_key_token {
439 req_builder = req_builder.header("Authorization", format!("Key {}", token.to_owned()));
440 }
441 req_builder = req_builder.json(&app);
442
443 let req = req_builder.build()?;
444 let resp = client.execute(req).await?;
445
446 let status = resp.status();
447 let content = resp.text().await?;
448
449 if !status.is_client_error() && !status.is_server_error() {
450 serde_json::from_str(&content).map_err(Error::from)
451 } else {
452 let entity: Option<CreateAppError> = serde_json::from_str(&content).ok();
453 let error = ResponseContent { status: status, content: content, entity: entity };
454 Err(Error::ResponseError(error))
455 }
456}
457
458pub async fn create_notification(configuration: &configuration::Configuration, notification: crate::models::Notification) -> Result<crate::models::CreateNotificationSuccessResponse, Error<CreateNotificationError>> {
460 let configuration = configuration;
461
462 let client = &configuration.client;
463
464 let uri_str = format!("{}/notifications", configuration.base_path);
465 let mut req_builder = client.request(reqwest::Method::POST, uri_str.as_str());
466
467 if let Some(ref user_agent) = configuration.user_agent {
468 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
469 }
470
471 req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=5.2.1-beta1");
473
474 if let Some(ref token) = configuration.rest_api_key_token {
475 req_builder = req_builder.header("Authorization", format!("Key {}", token.to_owned()));
476 }
477 req_builder = req_builder.json(¬ification);
478
479 let req = req_builder.build()?;
480 let resp = client.execute(req).await?;
481
482 let status = resp.status();
483 let content = resp.text().await?;
484
485 if !status.is_client_error() && !status.is_server_error() {
486 serde_json::from_str(&content).map_err(Error::from)
487 } else {
488 let entity: Option<CreateNotificationError> = serde_json::from_str(&content).ok();
489 let error = ResponseContent { status: status, content: content, entity: entity };
490 Err(Error::ResponseError(error))
491 }
492}
493
494pub async fn create_segment(configuration: &configuration::Configuration, app_id: &str, segment: Option<crate::models::Segment>) -> Result<crate::models::CreateSegmentSuccessResponse, Error<CreateSegmentError>> {
496 let configuration = configuration;
497
498 let client = &configuration.client;
499
500 let uri_str = format!("{}/apps/{app_id}/segments", configuration.base_path, app_id=crate::apis::urlencode(app_id));
501 let mut req_builder = client.request(reqwest::Method::POST, uri_str.as_str());
502
503 if let Some(ref user_agent) = configuration.user_agent {
504 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
505 }
506
507 req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=5.2.1-beta1");
509
510 if let Some(ref token) = configuration.rest_api_key_token {
511 req_builder = req_builder.header("Authorization", format!("Key {}", token.to_owned()));
512 }
513 req_builder = req_builder.json(&segment);
514
515 let req = req_builder.build()?;
516 let resp = client.execute(req).await?;
517
518 let status = resp.status();
519 let content = resp.text().await?;
520
521 if !status.is_client_error() && !status.is_server_error() {
522 serde_json::from_str(&content).map_err(Error::from)
523 } else {
524 let entity: Option<CreateSegmentError> = serde_json::from_str(&content).ok();
525 let error = ResponseContent { status: status, content: content, entity: entity };
526 Err(Error::ResponseError(error))
527 }
528}
529
530pub async fn create_subscription(configuration: &configuration::Configuration, app_id: &str, alias_label: &str, alias_id: &str, subscription_body: crate::models::SubscriptionBody) -> Result<crate::models::SubscriptionBody, Error<CreateSubscriptionError>> {
532 let configuration = configuration;
533
534 let client = &configuration.client;
535
536 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));
537 let mut req_builder = client.request(reqwest::Method::POST, uri_str.as_str());
538
539 if let Some(ref user_agent) = configuration.user_agent {
540 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
541 }
542
543 req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=5.2.1-beta1");
545
546 if let Some(ref token) = configuration.rest_api_key_token {
547 req_builder = req_builder.header("Authorization", format!("Key {}", token.to_owned()));
548 }
549 req_builder = req_builder.json(&subscription_body);
550
551 let req = req_builder.build()?;
552 let resp = client.execute(req).await?;
553
554 let status = resp.status();
555 let content = resp.text().await?;
556
557 if !status.is_client_error() && !status.is_server_error() {
558 serde_json::from_str(&content).map_err(Error::from)
559 } else {
560 let entity: Option<CreateSubscriptionError> = serde_json::from_str(&content).ok();
561 let error = ResponseContent { status: status, content: content, entity: entity };
562 Err(Error::ResponseError(error))
563 }
564}
565
566pub async fn create_user(configuration: &configuration::Configuration, app_id: &str, user: crate::models::User) -> Result<crate::models::User, Error<CreateUserError>> {
568 let configuration = configuration;
569
570 let client = &configuration.client;
571
572 let uri_str = format!("{}/apps/{app_id}/users", configuration.base_path, app_id=crate::apis::urlencode(app_id));
573 let mut req_builder = client.request(reqwest::Method::POST, uri_str.as_str());
574
575 if let Some(ref user_agent) = configuration.user_agent {
576 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
577 }
578
579 req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=5.2.1-beta1");
581
582 if let Some(ref token) = configuration.rest_api_key_token {
583 req_builder = req_builder.header("Authorization", format!("Key {}", token.to_owned()));
584 }
585 req_builder = req_builder.json(&user);
586
587 let req = req_builder.build()?;
588 let resp = client.execute(req).await?;
589
590 let status = resp.status();
591 let content = resp.text().await?;
592
593 if !status.is_client_error() && !status.is_server_error() {
594 serde_json::from_str(&content).map_err(Error::from)
595 } else {
596 let entity: Option<CreateUserError> = serde_json::from_str(&content).ok();
597 let error = ResponseContent { status: status, content: content, entity: entity };
598 Err(Error::ResponseError(error))
599 }
600}
601
602pub async fn delete_alias(configuration: &configuration::Configuration, app_id: &str, alias_label: &str, alias_id: &str, alias_label_to_delete: &str) -> Result<crate::models::UserIdentityBody, Error<DeleteAliasError>> {
604 let configuration = configuration;
605
606 let client = &configuration.client;
607
608 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));
609 let mut req_builder = client.request(reqwest::Method::DELETE, uri_str.as_str());
610
611 if let Some(ref user_agent) = configuration.user_agent {
612 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
613 }
614
615 req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=5.2.1-beta1");
617
618 if let Some(ref token) = configuration.rest_api_key_token {
619 req_builder = req_builder.header("Authorization", format!("Key {}", token.to_owned()));
620 }
621
622 let req = req_builder.build()?;
623 let resp = client.execute(req).await?;
624
625 let status = resp.status();
626 let content = resp.text().await?;
627
628 if !status.is_client_error() && !status.is_server_error() {
629 serde_json::from_str(&content).map_err(Error::from)
630 } else {
631 let entity: Option<DeleteAliasError> = serde_json::from_str(&content).ok();
632 let error = ResponseContent { status: status, content: content, entity: entity };
633 Err(Error::ResponseError(error))
634 }
635}
636
637pub async fn delete_segment(configuration: &configuration::Configuration, app_id: &str, segment_id: &str) -> Result<crate::models::GenericSuccessBoolResponse, Error<DeleteSegmentError>> {
639 let configuration = configuration;
640
641 let client = &configuration.client;
642
643 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));
644 let mut req_builder = client.request(reqwest::Method::DELETE, uri_str.as_str());
645
646 if let Some(ref user_agent) = configuration.user_agent {
647 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
648 }
649
650 req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=5.2.1-beta1");
652
653 if let Some(ref token) = configuration.rest_api_key_token {
654 req_builder = req_builder.header("Authorization", format!("Key {}", token.to_owned()));
655 }
656
657 let req = req_builder.build()?;
658 let resp = client.execute(req).await?;
659
660 let status = resp.status();
661 let content = resp.text().await?;
662
663 if !status.is_client_error() && !status.is_server_error() {
664 serde_json::from_str(&content).map_err(Error::from)
665 } else {
666 let entity: Option<DeleteSegmentError> = serde_json::from_str(&content).ok();
667 let error = ResponseContent { status: status, content: content, entity: entity };
668 Err(Error::ResponseError(error))
669 }
670}
671
672pub async fn delete_subscription(configuration: &configuration::Configuration, app_id: &str, subscription_id: &str) -> Result<(), Error<DeleteSubscriptionError>> {
674 let configuration = configuration;
675
676 let client = &configuration.client;
677
678 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));
679 let mut req_builder = client.request(reqwest::Method::DELETE, uri_str.as_str());
680
681 if let Some(ref user_agent) = configuration.user_agent {
682 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
683 }
684
685 req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=5.2.1-beta1");
687
688 if let Some(ref token) = configuration.rest_api_key_token {
689 req_builder = req_builder.header("Authorization", format!("Key {}", token.to_owned()));
690 }
691
692 let req = req_builder.build()?;
693 let resp = client.execute(req).await?;
694
695 let status = resp.status();
696 let content = resp.text().await?;
697
698 if !status.is_client_error() && !status.is_server_error() {
699 Ok(())
700 } else {
701 let entity: Option<DeleteSubscriptionError> = serde_json::from_str(&content).ok();
702 let error = ResponseContent { status: status, content: content, entity: entity };
703 Err(Error::ResponseError(error))
704 }
705}
706
707pub async fn delete_user(configuration: &configuration::Configuration, app_id: &str, alias_label: &str, alias_id: &str) -> Result<(), Error<DeleteUserError>> {
709 let configuration = configuration;
710
711 let client = &configuration.client;
712
713 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));
714 let mut req_builder = client.request(reqwest::Method::DELETE, uri_str.as_str());
715
716 if let Some(ref user_agent) = configuration.user_agent {
717 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
718 }
719
720 req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=5.2.1-beta1");
722
723 if let Some(ref token) = configuration.rest_api_key_token {
724 req_builder = req_builder.header("Authorization", format!("Key {}", token.to_owned()));
725 }
726
727 let req = req_builder.build()?;
728 let resp = client.execute(req).await?;
729
730 let status = resp.status();
731 let content = resp.text().await?;
732
733 if !status.is_client_error() && !status.is_server_error() {
734 Ok(())
735 } else {
736 let entity: Option<DeleteUserError> = serde_json::from_str(&content).ok();
737 let error = ResponseContent { status: status, content: content, entity: entity };
738 Err(Error::ResponseError(error))
739 }
740}
741
742pub async fn export_events(configuration: &configuration::Configuration, notification_id: &str, app_id: &str) -> Result<crate::models::ExportEventsSuccessResponse, Error<ExportEventsError>> {
744 let configuration = configuration;
745
746 let client = &configuration.client;
747
748 let uri_str = format!("{}/notifications/{notification_id}/export_events?app_id={app_id}", configuration.base_path, notification_id=crate::apis::urlencode(notification_id));
749 let mut req_builder = client.request(reqwest::Method::POST, uri_str.as_str());
750
751 req_builder = req_builder.query(&[("app_id", &app_id.to_string())]);
752 if let Some(ref user_agent) = configuration.user_agent {
753 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
754 }
755
756 req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=5.2.1-beta1");
758
759 if let Some(ref token) = configuration.rest_api_key_token {
760 req_builder = req_builder.header("Authorization", format!("Key {}", token.to_owned()));
761 }
762
763 let req = req_builder.build()?;
764 let resp = client.execute(req).await?;
765
766 let status = resp.status();
767 let content = resp.text().await?;
768
769 if !status.is_client_error() && !status.is_server_error() {
770 serde_json::from_str(&content).map_err(Error::from)
771 } else {
772 let entity: Option<ExportEventsError> = serde_json::from_str(&content).ok();
773 let error = ResponseContent { status: status, content: content, entity: entity };
774 Err(Error::ResponseError(error))
775 }
776}
777
778pub async fn export_subscriptions(configuration: &configuration::Configuration, app_id: &str, export_subscriptions_request_body: Option<crate::models::ExportSubscriptionsRequestBody>) -> Result<crate::models::ExportSubscriptionsSuccessResponse, Error<ExportSubscriptionsError>> {
780 let configuration = configuration;
781
782 let client = &configuration.client;
783
784 let uri_str = format!("{}/players/csv_export?app_id={app_id}", configuration.base_path, app_id=crate::apis::urlencode(app_id));
785 let mut req_builder = client.request(reqwest::Method::POST, uri_str.as_str());
786
787 if let Some(ref user_agent) = configuration.user_agent {
788 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
789 }
790
791 req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=5.2.1-beta1");
793
794 if let Some(ref token) = configuration.rest_api_key_token {
795 req_builder = req_builder.header("Authorization", format!("Key {}", token.to_owned()));
796 }
797 req_builder = req_builder.json(&export_subscriptions_request_body);
798
799 let req = req_builder.build()?;
800 let resp = client.execute(req).await?;
801
802 let status = resp.status();
803 let content = resp.text().await?;
804
805 if !status.is_client_error() && !status.is_server_error() {
806 serde_json::from_str(&content).map_err(Error::from)
807 } else {
808 let entity: Option<ExportSubscriptionsError> = serde_json::from_str(&content).ok();
809 let error = ResponseContent { status: status, content: content, entity: entity };
810 Err(Error::ResponseError(error))
811 }
812}
813
814pub async fn get_aliases(configuration: &configuration::Configuration, app_id: &str, alias_label: &str, alias_id: &str) -> Result<crate::models::UserIdentityBody, Error<GetAliasesError>> {
816 let configuration = configuration;
817
818 let client = &configuration.client;
819
820 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));
821 let mut req_builder = client.request(reqwest::Method::GET, uri_str.as_str());
822
823 if let Some(ref user_agent) = configuration.user_agent {
824 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
825 }
826
827 req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=5.2.1-beta1");
829
830 if let Some(ref token) = configuration.rest_api_key_token {
831 req_builder = req_builder.header("Authorization", format!("Key {}", token.to_owned()));
832 }
833
834 let req = req_builder.build()?;
835 let resp = client.execute(req).await?;
836
837 let status = resp.status();
838 let content = resp.text().await?;
839
840 if !status.is_client_error() && !status.is_server_error() {
841 serde_json::from_str(&content).map_err(Error::from)
842 } else {
843 let entity: Option<GetAliasesError> = serde_json::from_str(&content).ok();
844 let error = ResponseContent { status: status, content: content, entity: entity };
845 Err(Error::ResponseError(error))
846 }
847}
848
849pub async fn get_aliases_by_subscription(configuration: &configuration::Configuration, app_id: &str, subscription_id: &str) -> Result<crate::models::UserIdentityBody, Error<GetAliasesBySubscriptionError>> {
851 let configuration = configuration;
852
853 let client = &configuration.client;
854
855 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));
856 let mut req_builder = client.request(reqwest::Method::GET, uri_str.as_str());
857
858 if let Some(ref user_agent) = configuration.user_agent {
859 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
860 }
861
862 req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=5.2.1-beta1");
864
865 if let Some(ref token) = configuration.rest_api_key_token {
866 req_builder = req_builder.header("Authorization", format!("Key {}", token.to_owned()));
867 }
868
869 let req = req_builder.build()?;
870 let resp = client.execute(req).await?;
871
872 let status = resp.status();
873 let content = resp.text().await?;
874
875 if !status.is_client_error() && !status.is_server_error() {
876 serde_json::from_str(&content).map_err(Error::from)
877 } else {
878 let entity: Option<GetAliasesBySubscriptionError> = serde_json::from_str(&content).ok();
879 let error = ResponseContent { status: status, content: content, entity: entity };
880 Err(Error::ResponseError(error))
881 }
882}
883
884pub async fn get_app(configuration: &configuration::Configuration, app_id: &str) -> Result<crate::models::App, Error<GetAppError>> {
886 let configuration = configuration;
887
888 let client = &configuration.client;
889
890 let uri_str = format!("{}/apps/{app_id}", configuration.base_path, app_id=crate::apis::urlencode(app_id));
891 let mut req_builder = client.request(reqwest::Method::GET, uri_str.as_str());
892
893 if let Some(ref user_agent) = configuration.user_agent {
894 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
895 }
896
897 req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=5.2.1-beta1");
899
900 if let Some(ref token) = configuration.organization_api_key_token {
901 req_builder = req_builder.header("Authorization", format!("Key {}", token.to_owned()));
902 }
903
904 let req = req_builder.build()?;
905 let resp = client.execute(req).await?;
906
907 let status = resp.status();
908 let content = resp.text().await?;
909
910 if !status.is_client_error() && !status.is_server_error() {
911 serde_json::from_str(&content).map_err(Error::from)
912 } else {
913 let entity: Option<GetAppError> = serde_json::from_str(&content).ok();
914 let error = ResponseContent { status: status, content: content, entity: entity };
915 Err(Error::ResponseError(error))
916 }
917}
918
919pub async fn get_apps(configuration: &configuration::Configuration, ) -> Result<Vec<crate::models::App>, Error<GetAppsError>> {
921 let configuration = configuration;
922
923 let client = &configuration.client;
924
925 let uri_str = format!("{}/apps", configuration.base_path);
926 let mut req_builder = client.request(reqwest::Method::GET, uri_str.as_str());
927
928 if let Some(ref user_agent) = configuration.user_agent {
929 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
930 }
931
932 req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=5.2.1-beta1");
934
935 if let Some(ref token) = configuration.organization_api_key_token {
936 req_builder = req_builder.header("Authorization", format!("Key {}", token.to_owned()));
937 }
938
939 let req = req_builder.build()?;
940 let resp = client.execute(req).await?;
941
942 let status = resp.status();
943 let content = resp.text().await?;
944
945 if !status.is_client_error() && !status.is_server_error() {
946 serde_json::from_str(&content).map_err(Error::from)
947 } else {
948 let entity: Option<GetAppsError> = serde_json::from_str(&content).ok();
949 let error = ResponseContent { status: status, content: content, entity: entity };
950 Err(Error::ResponseError(error))
951 }
952}
953
954pub async fn get_notification(configuration: &configuration::Configuration, app_id: &str, notification_id: &str) -> Result<crate::models::NotificationWithMeta, Error<GetNotificationError>> {
956 let configuration = configuration;
957
958 let client = &configuration.client;
959
960 let uri_str = format!("{}/notifications/{notification_id}", configuration.base_path, notification_id=crate::apis::urlencode(notification_id));
961 let mut req_builder = client.request(reqwest::Method::GET, uri_str.as_str());
962
963 req_builder = req_builder.query(&[("app_id", &app_id.to_string())]);
964 if let Some(ref user_agent) = configuration.user_agent {
965 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
966 }
967
968 req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=5.2.1-beta1");
970
971 if let Some(ref token) = configuration.rest_api_key_token {
972 req_builder = req_builder.header("Authorization", format!("Key {}", token.to_owned()));
973 }
974
975 let req = req_builder.build()?;
976 let resp = client.execute(req).await?;
977
978 let status = resp.status();
979 let content = resp.text().await?;
980
981 if !status.is_client_error() && !status.is_server_error() {
982 serde_json::from_str(&content).map_err(Error::from)
983 } else {
984 let entity: Option<GetNotificationError> = serde_json::from_str(&content).ok();
985 let error = ResponseContent { status: status, content: content, entity: entity };
986 Err(Error::ResponseError(error))
987 }
988}
989
990pub async fn get_notification_history(configuration: &configuration::Configuration, notification_id: &str, get_notification_history_request_body: crate::models::GetNotificationHistoryRequestBody) -> Result<crate::models::NotificationHistorySuccessResponse, Error<GetNotificationHistoryError>> {
992 let configuration = configuration;
993
994 let client = &configuration.client;
995
996 let uri_str = format!("{}/notifications/{notification_id}/history", configuration.base_path, notification_id=crate::apis::urlencode(notification_id));
997 let mut req_builder = client.request(reqwest::Method::POST, uri_str.as_str());
998
999 if let Some(ref user_agent) = configuration.user_agent {
1000 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
1001 }
1002
1003 req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=5.2.1-beta1");
1005
1006 if let Some(ref token) = configuration.rest_api_key_token {
1007 req_builder = req_builder.header("Authorization", format!("Key {}", token.to_owned()));
1008 }
1009 req_builder = req_builder.json(&get_notification_history_request_body);
1010
1011 let req = req_builder.build()?;
1012 let resp = client.execute(req).await?;
1013
1014 let status = resp.status();
1015 let content = resp.text().await?;
1016
1017 if !status.is_client_error() && !status.is_server_error() {
1018 serde_json::from_str(&content).map_err(Error::from)
1019 } else {
1020 let entity: Option<GetNotificationHistoryError> = serde_json::from_str(&content).ok();
1021 let error = ResponseContent { status: status, content: content, entity: entity };
1022 Err(Error::ResponseError(error))
1023 }
1024}
1025
1026pub 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>> {
1028 let configuration = configuration;
1029
1030 let client = &configuration.client;
1031
1032 let uri_str = format!("{}/notifications", configuration.base_path);
1033 let mut req_builder = client.request(reqwest::Method::GET, uri_str.as_str());
1034
1035 req_builder = req_builder.query(&[("app_id", &app_id.to_string())]);
1036 if let Some(ref str) = limit {
1037 req_builder = req_builder.query(&[("limit", &str.to_string())]);
1038 }
1039 if let Some(ref str) = offset {
1040 req_builder = req_builder.query(&[("offset", &str.to_string())]);
1041 }
1042 if let Some(ref str) = kind {
1043 req_builder = req_builder.query(&[("kind", &str.to_string())]);
1044 }
1045 if let Some(ref user_agent) = configuration.user_agent {
1046 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
1047 }
1048
1049 req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=5.2.1-beta1");
1051
1052 if let Some(ref token) = configuration.rest_api_key_token {
1053 req_builder = req_builder.header("Authorization", format!("Key {}", token.to_owned()));
1054 }
1055
1056 let req = req_builder.build()?;
1057 let resp = client.execute(req).await?;
1058
1059 let status = resp.status();
1060 let content = resp.text().await?;
1061
1062 if !status.is_client_error() && !status.is_server_error() {
1063 serde_json::from_str(&content).map_err(Error::from)
1064 } else {
1065 let entity: Option<GetNotificationsError> = serde_json::from_str(&content).ok();
1066 let error = ResponseContent { status: status, content: content, entity: entity };
1067 Err(Error::ResponseError(error))
1068 }
1069}
1070
1071pub 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>> {
1073 let configuration = configuration;
1074
1075 let client = &configuration.client;
1076
1077 let uri_str = format!("{}/apps/{app_id}/outcomes", configuration.base_path, app_id=crate::apis::urlencode(app_id));
1078 let mut req_builder = client.request(reqwest::Method::GET, uri_str.as_str());
1079
1080 req_builder = req_builder.query(&[("outcome_names", &outcome_names.to_string())]);
1081 if let Some(ref str) = outcome_names2 {
1082 req_builder = req_builder.query(&[("outcome_names[]", &str.to_string())]);
1083 }
1084 if let Some(ref str) = outcome_time_range {
1085 req_builder = req_builder.query(&[("outcome_time_range", &str.to_string())]);
1086 }
1087 if let Some(ref str) = outcome_platforms {
1088 req_builder = req_builder.query(&[("outcome_platforms", &str.to_string())]);
1089 }
1090 if let Some(ref str) = outcome_attribution {
1091 req_builder = req_builder.query(&[("outcome_attribution", &str.to_string())]);
1092 }
1093 if let Some(ref user_agent) = configuration.user_agent {
1094 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
1095 }
1096
1097 req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=5.2.1-beta1");
1099
1100 if let Some(ref token) = configuration.rest_api_key_token {
1101 req_builder = req_builder.header("Authorization", format!("Key {}", token.to_owned()));
1102 }
1103
1104 let req = req_builder.build()?;
1105 let resp = client.execute(req).await?;
1106
1107 let status = resp.status();
1108 let content = resp.text().await?;
1109
1110 if !status.is_client_error() && !status.is_server_error() {
1111 serde_json::from_str(&content).map_err(Error::from)
1112 } else {
1113 let entity: Option<GetOutcomesError> = serde_json::from_str(&content).ok();
1114 let error = ResponseContent { status: status, content: content, entity: entity };
1115 Err(Error::ResponseError(error))
1116 }
1117}
1118
1119pub async fn get_segments(configuration: &configuration::Configuration, app_id: &str, offset: Option<i32>, limit: Option<i32>) -> Result<crate::models::GetSegmentsSuccessResponse, Error<GetSegmentsError>> {
1121 let configuration = configuration;
1122
1123 let client = &configuration.client;
1124
1125 let uri_str = format!("{}/apps/{app_id}/segments", configuration.base_path, app_id=crate::apis::urlencode(app_id));
1126 let mut req_builder = client.request(reqwest::Method::GET, uri_str.as_str());
1127
1128 if let Some(ref str) = offset {
1129 req_builder = req_builder.query(&[("offset", &str.to_string())]);
1130 }
1131 if let Some(ref str) = limit {
1132 req_builder = req_builder.query(&[("limit", &str.to_string())]);
1133 }
1134 if let Some(ref user_agent) = configuration.user_agent {
1135 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
1136 }
1137
1138 req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=5.2.1-beta1");
1140
1141 if let Some(ref token) = configuration.rest_api_key_token {
1142 req_builder = req_builder.header("Authorization", format!("Key {}", token.to_owned()));
1143 }
1144
1145 let req = req_builder.build()?;
1146 let resp = client.execute(req).await?;
1147
1148 let status = resp.status();
1149 let content = resp.text().await?;
1150
1151 if !status.is_client_error() && !status.is_server_error() {
1152 serde_json::from_str(&content).map_err(Error::from)
1153 } else {
1154 let entity: Option<GetSegmentsError> = serde_json::from_str(&content).ok();
1155 let error = ResponseContent { status: status, content: content, entity: entity };
1156 Err(Error::ResponseError(error))
1157 }
1158}
1159
1160pub async fn get_user(configuration: &configuration::Configuration, app_id: &str, alias_label: &str, alias_id: &str) -> Result<crate::models::User, Error<GetUserError>> {
1162 let configuration = configuration;
1163
1164 let client = &configuration.client;
1165
1166 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));
1167 let mut req_builder = client.request(reqwest::Method::GET, uri_str.as_str());
1168
1169 if let Some(ref user_agent) = configuration.user_agent {
1170 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
1171 }
1172
1173 req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=5.2.1-beta1");
1175
1176 if let Some(ref token) = configuration.rest_api_key_token {
1177 req_builder = req_builder.header("Authorization", format!("Key {}", token.to_owned()));
1178 }
1179
1180 let req = req_builder.build()?;
1181 let resp = client.execute(req).await?;
1182
1183 let status = resp.status();
1184 let content = resp.text().await?;
1185
1186 if !status.is_client_error() && !status.is_server_error() {
1187 serde_json::from_str(&content).map_err(Error::from)
1188 } else {
1189 let entity: Option<GetUserError> = serde_json::from_str(&content).ok();
1190 let error = ResponseContent { status: status, content: content, entity: entity };
1191 Err(Error::ResponseError(error))
1192 }
1193}
1194
1195pub async fn transfer_subscription(configuration: &configuration::Configuration, app_id: &str, subscription_id: &str, transfer_subscription_request_body: crate::models::TransferSubscriptionRequestBody) -> Result<crate::models::UserIdentityBody, Error<TransferSubscriptionError>> {
1197 let configuration = configuration;
1198
1199 let client = &configuration.client;
1200
1201 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));
1202 let mut req_builder = client.request(reqwest::Method::PATCH, uri_str.as_str());
1203
1204 if let Some(ref user_agent) = configuration.user_agent {
1205 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
1206 }
1207
1208 req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=5.2.1-beta1");
1210
1211 if let Some(ref token) = configuration.rest_api_key_token {
1212 req_builder = req_builder.header("Authorization", format!("Key {}", token.to_owned()));
1213 }
1214 req_builder = req_builder.json(&transfer_subscription_request_body);
1215
1216 let req = req_builder.build()?;
1217 let resp = client.execute(req).await?;
1218
1219 let status = resp.status();
1220 let content = resp.text().await?;
1221
1222 if !status.is_client_error() && !status.is_server_error() {
1223 serde_json::from_str(&content).map_err(Error::from)
1224 } else {
1225 let entity: Option<TransferSubscriptionError> = serde_json::from_str(&content).ok();
1226 let error = ResponseContent { status: status, content: content, entity: entity };
1227 Err(Error::ResponseError(error))
1228 }
1229}
1230
1231pub async fn unsubscribe_email_with_token(configuration: &configuration::Configuration, app_id: &str, notification_id: &str, token: &str) -> Result<crate::models::GenericSuccessBoolResponse, Error<UnsubscribeEmailWithTokenError>> {
1233 let configuration = configuration;
1234
1235 let client = &configuration.client;
1236
1237 let uri_str = format!("{}/apps/{app_id}/notifications/{notification_id}/unsubscribe", configuration.base_path, app_id=crate::apis::urlencode(app_id), notification_id=crate::apis::urlencode(notification_id));
1238 let mut req_builder = client.request(reqwest::Method::POST, uri_str.as_str());
1239
1240 req_builder = req_builder.query(&[("token", &token.to_string())]);
1241 if let Some(ref user_agent) = configuration.user_agent {
1242 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
1243 }
1244
1245 req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=5.2.1-beta1");
1247
1248 if let Some(ref token) = configuration.rest_api_key_token {
1249 req_builder = req_builder.header("Authorization", format!("Key {}", token.to_owned()));
1250 }
1251
1252 let req = req_builder.build()?;
1253 let resp = client.execute(req).await?;
1254
1255 let status = resp.status();
1256 let content = resp.text().await?;
1257
1258 if !status.is_client_error() && !status.is_server_error() {
1259 serde_json::from_str(&content).map_err(Error::from)
1260 } else {
1261 let entity: Option<UnsubscribeEmailWithTokenError> = serde_json::from_str(&content).ok();
1262 let error = ResponseContent { status: status, content: content, entity: entity };
1263 Err(Error::ResponseError(error))
1264 }
1265}
1266
1267pub async fn update_app(configuration: &configuration::Configuration, app_id: &str, app: crate::models::App) -> Result<crate::models::App, Error<UpdateAppError>> {
1269 let configuration = configuration;
1270
1271 let client = &configuration.client;
1272
1273 let uri_str = format!("{}/apps/{app_id}", configuration.base_path, app_id=crate::apis::urlencode(app_id));
1274 let mut req_builder = client.request(reqwest::Method::PUT, uri_str.as_str());
1275
1276 if let Some(ref user_agent) = configuration.user_agent {
1277 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
1278 }
1279
1280 req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=5.2.1-beta1");
1282
1283 if let Some(ref token) = configuration.organization_api_key_token {
1284 req_builder = req_builder.header("Authorization", format!("Key {}", token.to_owned()));
1285 }
1286 req_builder = req_builder.json(&app);
1287
1288 let req = req_builder.build()?;
1289 let resp = client.execute(req).await?;
1290
1291 let status = resp.status();
1292 let content = resp.text().await?;
1293
1294 if !status.is_client_error() && !status.is_server_error() {
1295 serde_json::from_str(&content).map_err(Error::from)
1296 } else {
1297 let entity: Option<UpdateAppError> = serde_json::from_str(&content).ok();
1298 let error = ResponseContent { status: status, content: content, entity: entity };
1299 Err(Error::ResponseError(error))
1300 }
1301}
1302
1303pub 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>> {
1305 let configuration = configuration;
1306
1307 let client = &configuration.client;
1308
1309 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));
1310 let mut req_builder = client.request(reqwest::Method::POST, uri_str.as_str());
1311
1312 if let Some(ref user_agent) = configuration.user_agent {
1313 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
1314 }
1315
1316 req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=5.2.1-beta1");
1318
1319 if let Some(ref token) = configuration.rest_api_key_token {
1320 req_builder = req_builder.header("Authorization", format!("Key {}", token.to_owned()));
1321 }
1322 req_builder = req_builder.json(&update_live_activity_request);
1323
1324 let req = req_builder.build()?;
1325 let resp = client.execute(req).await?;
1326
1327 let status = resp.status();
1328 let content = resp.text().await?;
1329
1330 if !status.is_client_error() && !status.is_server_error() {
1331 serde_json::from_str(&content).map_err(Error::from)
1332 } else {
1333 let entity: Option<UpdateLiveActivityError> = serde_json::from_str(&content).ok();
1334 let error = ResponseContent { status: status, content: content, entity: entity };
1335 Err(Error::ResponseError(error))
1336 }
1337}
1338
1339pub async fn update_subscription(configuration: &configuration::Configuration, app_id: &str, subscription_id: &str, subscription_body: crate::models::SubscriptionBody) -> Result<(), Error<UpdateSubscriptionError>> {
1341 let configuration = configuration;
1342
1343 let client = &configuration.client;
1344
1345 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));
1346 let mut req_builder = client.request(reqwest::Method::PATCH, uri_str.as_str());
1347
1348 if let Some(ref user_agent) = configuration.user_agent {
1349 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
1350 }
1351
1352 req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=5.2.1-beta1");
1354
1355 if let Some(ref token) = configuration.rest_api_key_token {
1356 req_builder = req_builder.header("Authorization", format!("Key {}", token.to_owned()));
1357 }
1358 req_builder = req_builder.json(&subscription_body);
1359
1360 let req = req_builder.build()?;
1361 let resp = client.execute(req).await?;
1362
1363 let status = resp.status();
1364 let content = resp.text().await?;
1365
1366 if !status.is_client_error() && !status.is_server_error() {
1367 Ok(())
1368 } else {
1369 let entity: Option<UpdateSubscriptionError> = serde_json::from_str(&content).ok();
1370 let error = ResponseContent { status: status, content: content, entity: entity };
1371 Err(Error::ResponseError(error))
1372 }
1373}
1374
1375pub 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::PropertiesBody, Error<UpdateUserError>> {
1377 let configuration = configuration;
1378
1379 let client = &configuration.client;
1380
1381 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));
1382 let mut req_builder = client.request(reqwest::Method::PATCH, uri_str.as_str());
1383
1384 if let Some(ref user_agent) = configuration.user_agent {
1385 req_builder = req_builder.header(reqwest::header::USER_AGENT, user_agent.clone());
1386 }
1387
1388 req_builder = req_builder.header("OS-Usage-Data", "kind=sdk, sdk-name=onesignal-rust, version=5.2.1-beta1");
1390
1391 if let Some(ref token) = configuration.rest_api_key_token {
1392 req_builder = req_builder.header("Authorization", format!("Key {}", token.to_owned()));
1393 }
1394 req_builder = req_builder.json(&update_user_request);
1395
1396 let req = req_builder.build()?;
1397 let resp = client.execute(req).await?;
1398
1399 let status = resp.status();
1400 let content = resp.text().await?;
1401
1402 if !status.is_client_error() && !status.is_server_error() {
1403 serde_json::from_str(&content).map_err(Error::from)
1404 } else {
1405 let entity: Option<UpdateUserError> = serde_json::from_str(&content).ok();
1406 let error = ResponseContent { status: status, content: content, entity: entity };
1407 Err(Error::ResponseError(error))
1408 }
1409}
1410