1use reqwest;
13
14use crate::apis::ResponseContent;
15use super::{Error, configuration};
16
17#[derive(Clone, Debug)]
19pub struct CreateInboxParams {
20 pub allow_team_access: Option<bool>,
22 pub description: Option<String>,
24 pub email_address: Option<String>,
26 pub expires_at: Option<String>,
28 pub expires_in: Option<i64>,
30 pub favourite: Option<bool>,
32 pub inbox_type: Option<String>,
34 pub name: Option<String>,
36 pub tags: Option<Vec<String>>,
38 pub use_domain_pool: Option<bool>
40}
41
42#[derive(Clone, Debug)]
44pub struct CreateInboxRulesetParams {
45 pub inbox_id: String,
47 pub create_inbox_ruleset_options: crate::models::CreateInboxRulesetOptions
49}
50
51#[derive(Clone, Debug)]
53pub struct CreateInboxWithOptionsParams {
54 pub create_inbox_dto: crate::models::CreateInboxDto
56}
57
58#[derive(Clone, Debug)]
60pub struct DeleteInboxParams {
61 pub inbox_id: String
63}
64
65#[derive(Clone, Debug)]
67pub struct GetAllInboxesParams {
68 pub before: Option<String>,
70 pub favourite: Option<bool>,
72 pub page: Option<i32>,
74 pub search: Option<String>,
76 pub since: Option<String>,
78 pub size: Option<i32>,
80 pub sort: Option<String>,
82 pub tag: Option<String>,
84 pub team_access: Option<bool>
86}
87
88#[derive(Clone, Debug)]
90pub struct GetEmailsParams {
91 pub inbox_id: String,
93 pub before: Option<String>,
95 pub delay_timeout: Option<i64>,
97 pub limit: Option<i32>,
99 pub min_count: Option<i64>,
101 pub retry_timeout: Option<i64>,
103 pub since: Option<String>,
105 pub size: Option<i32>,
107 pub sort: Option<String>,
109 pub unread_only: Option<bool>
111}
112
113#[derive(Clone, Debug)]
115pub struct GetInboxParams {
116 pub inbox_id: String
118}
119
120#[derive(Clone, Debug)]
122pub struct GetInboxEmailsPaginatedParams {
123 pub inbox_id: String,
125 pub before: Option<String>,
127 pub page: Option<i32>,
129 pub since: Option<String>,
131 pub size: Option<i32>,
133 pub sort: Option<String>
135}
136
137#[derive(Clone, Debug)]
139pub struct GetInboxSentEmailsParams {
140 pub inbox_id: String,
142 pub before: Option<String>,
144 pub page: Option<i32>,
146 pub search_filter: Option<String>,
148 pub since: Option<String>,
150 pub size: Option<i32>,
152 pub sort: Option<String>
154}
155
156#[derive(Clone, Debug)]
158pub struct GetInboxesParams {
159 pub before: Option<String>,
161 pub since: Option<String>,
163 pub size: Option<i32>,
165 pub sort: Option<String>
167}
168
169#[derive(Clone, Debug)]
171pub struct GetOrganizationInboxesParams {
172 pub before: Option<String>,
174 pub page: Option<i32>,
176 pub search_filter: Option<String>,
178 pub since: Option<String>,
180 pub size: Option<i32>,
182 pub sort: Option<String>
184}
185
186#[derive(Clone, Debug)]
188pub struct ListInboxRulesetsParams {
189 pub inbox_id: String,
191 pub before: Option<String>,
193 pub page: Option<i32>,
195 pub search_filter: Option<String>,
197 pub since: Option<String>,
199 pub size: Option<i32>,
201 pub sort: Option<String>
203}
204
205#[derive(Clone, Debug)]
207pub struct ListInboxTrackingPixelsParams {
208 pub inbox_id: String,
210 pub before: Option<String>,
212 pub page: Option<i32>,
214 pub search_filter: Option<String>,
216 pub since: Option<String>,
218 pub size: Option<i32>,
220 pub sort: Option<String>
222}
223
224#[derive(Clone, Debug)]
226pub struct SendEmailParams {
227 pub inbox_id: String,
229 pub send_email_options: Option<crate::models::SendEmailOptions>
231}
232
233#[derive(Clone, Debug)]
235pub struct SendEmailAndConfirmParams {
236 pub inbox_id: String,
238 pub send_email_options: Option<crate::models::SendEmailOptions>
240}
241
242#[derive(Clone, Debug)]
244pub struct SendTestEmailParams {
245 pub inbox_id: String
247}
248
249#[derive(Clone, Debug)]
251pub struct SetInboxFavouritedParams {
252 pub inbox_id: String,
254 pub set_inbox_favourited_options: crate::models::SetInboxFavouritedOptions
256}
257
258#[derive(Clone, Debug)]
260pub struct UpdateInboxParams {
261 pub inbox_id: String,
263 pub update_inbox_options: crate::models::UpdateInboxOptions
265}
266
267
268#[derive(Debug, Clone, Serialize, Deserialize)]
270#[serde(untagged)]
271pub enum CreateInboxError {
272 Status401(),
273 Status403(),
274 Status404(),
275 UnknownValue(serde_json::Value),
276}
277
278#[derive(Debug, Clone, Serialize, Deserialize)]
280#[serde(untagged)]
281pub enum CreateInboxRulesetError {
282 Status401(),
283 Status403(),
284 Status404(),
285 UnknownValue(serde_json::Value),
286}
287
288#[derive(Debug, Clone, Serialize, Deserialize)]
290#[serde(untagged)]
291pub enum CreateInboxWithDefaultsError {
292 Status401(),
293 Status403(),
294 Status404(),
295 UnknownValue(serde_json::Value),
296}
297
298#[derive(Debug, Clone, Serialize, Deserialize)]
300#[serde(untagged)]
301pub enum CreateInboxWithOptionsError {
302 Status401(),
303 Status403(),
304 Status404(),
305 UnknownValue(serde_json::Value),
306}
307
308#[derive(Debug, Clone, Serialize, Deserialize)]
310#[serde(untagged)]
311pub enum DeleteAllInboxesError {
312 Status401(),
313 Status403(),
314 UnknownValue(serde_json::Value),
315}
316
317#[derive(Debug, Clone, Serialize, Deserialize)]
319#[serde(untagged)]
320pub enum DeleteInboxError {
321 Status401(),
322 Status403(),
323 UnknownValue(serde_json::Value),
324}
325
326#[derive(Debug, Clone, Serialize, Deserialize)]
328#[serde(untagged)]
329pub enum GetAllInboxesError {
330 Status401(),
331 Status403(),
332 Status404(),
333 UnknownValue(serde_json::Value),
334}
335
336#[derive(Debug, Clone, Serialize, Deserialize)]
338#[serde(untagged)]
339pub enum GetEmailsError {
340 Status401(),
341 Status403(),
342 Status404(),
343 UnknownValue(serde_json::Value),
344}
345
346#[derive(Debug, Clone, Serialize, Deserialize)]
348#[serde(untagged)]
349pub enum GetInboxError {
350 Status401(),
351 Status403(),
352 Status404(),
353 UnknownValue(serde_json::Value),
354}
355
356#[derive(Debug, Clone, Serialize, Deserialize)]
358#[serde(untagged)]
359pub enum GetInboxEmailsPaginatedError {
360 Status401(),
361 Status403(),
362 Status404(),
363 UnknownValue(serde_json::Value),
364}
365
366#[derive(Debug, Clone, Serialize, Deserialize)]
368#[serde(untagged)]
369pub enum GetInboxSentEmailsError {
370 Status401(),
371 Status403(),
372 Status404(),
373 UnknownValue(serde_json::Value),
374}
375
376#[derive(Debug, Clone, Serialize, Deserialize)]
378#[serde(untagged)]
379pub enum GetInboxTagsError {
380 Status401(),
381 Status403(),
382 Status404(),
383 UnknownValue(serde_json::Value),
384}
385
386#[derive(Debug, Clone, Serialize, Deserialize)]
388#[serde(untagged)]
389pub enum GetInboxesError {
390 Status401(),
391 Status403(),
392 Status404(),
393 UnknownValue(serde_json::Value),
394}
395
396#[derive(Debug, Clone, Serialize, Deserialize)]
398#[serde(untagged)]
399pub enum GetOrganizationInboxesError {
400 Status401(),
401 Status403(),
402 Status404(),
403 UnknownValue(serde_json::Value),
404}
405
406#[derive(Debug, Clone, Serialize, Deserialize)]
408#[serde(untagged)]
409pub enum ListInboxRulesetsError {
410 Status401(),
411 Status403(),
412 Status404(),
413 UnknownValue(serde_json::Value),
414}
415
416#[derive(Debug, Clone, Serialize, Deserialize)]
418#[serde(untagged)]
419pub enum ListInboxTrackingPixelsError {
420 Status401(),
421 Status403(),
422 Status404(),
423 UnknownValue(serde_json::Value),
424}
425
426#[derive(Debug, Clone, Serialize, Deserialize)]
428#[serde(untagged)]
429pub enum SendEmailError {
430 Status401(),
431 Status403(),
432 Status404(),
433 UnknownValue(serde_json::Value),
434}
435
436#[derive(Debug, Clone, Serialize, Deserialize)]
438#[serde(untagged)]
439pub enum SendEmailAndConfirmError {
440 Status401(),
441 Status403(),
442 Status404(),
443 UnknownValue(serde_json::Value),
444}
445
446#[derive(Debug, Clone, Serialize, Deserialize)]
448#[serde(untagged)]
449pub enum SendTestEmailError {
450 Status401(),
451 Status403(),
452 Status404(),
453 UnknownValue(serde_json::Value),
454}
455
456#[derive(Debug, Clone, Serialize, Deserialize)]
458#[serde(untagged)]
459pub enum SetInboxFavouritedError {
460 Status401(),
461 Status403(),
462 Status404(),
463 UnknownValue(serde_json::Value),
464}
465
466#[derive(Debug, Clone, Serialize, Deserialize)]
468#[serde(untagged)]
469pub enum UpdateInboxError {
470 Status401(),
471 Status403(),
472 UnknownValue(serde_json::Value),
473}
474
475
476pub async fn create_inbox(configuration: &configuration::Configuration, params: CreateInboxParams) -> Result<crate::models::Inbox, Error<CreateInboxError>> {
478 let allow_team_access = params.allow_team_access;
480 let description = params.description;
481 let email_address = params.email_address;
482 let expires_at = params.expires_at;
483 let expires_in = params.expires_in;
484 let favourite = params.favourite;
485 let inbox_type = params.inbox_type;
486 let name = params.name;
487 let tags = params.tags;
488 let use_domain_pool = params.use_domain_pool;
489
490
491 let local_var_client = &configuration.client;
492
493 let local_var_uri_str = format!("{}/inboxes", configuration.base_path);
494 let mut local_var_req_builder = local_var_client.post(local_var_uri_str.as_str());
495
496 if let Some(ref local_var_str) = allow_team_access {
497 local_var_req_builder = local_var_req_builder.query(&[("allowTeamAccess", &local_var_str.to_string())]);
498 }
499 if let Some(ref local_var_str) = description {
500 local_var_req_builder = local_var_req_builder.query(&[("description", &local_var_str.to_string())]);
501 }
502 if let Some(ref local_var_str) = email_address {
503 local_var_req_builder = local_var_req_builder.query(&[("emailAddress", &local_var_str.to_string())]);
504 }
505 if let Some(ref local_var_str) = expires_at {
506 local_var_req_builder = local_var_req_builder.query(&[("expiresAt", &local_var_str.to_string())]);
507 }
508 if let Some(ref local_var_str) = expires_in {
509 local_var_req_builder = local_var_req_builder.query(&[("expiresIn", &local_var_str.to_string())]);
510 }
511 if let Some(ref local_var_str) = favourite {
512 local_var_req_builder = local_var_req_builder.query(&[("favourite", &local_var_str.to_string())]);
513 }
514 if let Some(ref local_var_str) = inbox_type {
515 local_var_req_builder = local_var_req_builder.query(&[("inboxType", &local_var_str.to_string())]);
516 }
517 if let Some(ref local_var_str) = name {
518 local_var_req_builder = local_var_req_builder.query(&[("name", &local_var_str.to_string())]);
519 }
520 if let Some(ref local_var_str) = tags {
521 local_var_req_builder = local_var_req_builder.query(&[("tags", &local_var_str.into_iter().map(|p| p.to_string()).collect::<Vec<String>>().join(",").to_string())]);
522 }
523 if let Some(ref local_var_str) = use_domain_pool {
524 local_var_req_builder = local_var_req_builder.query(&[("useDomainPool", &local_var_str.to_string())]);
525 }
526 if let Some(ref local_var_user_agent) = configuration.user_agent {
527 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
528 }
529 if let Some(ref local_var_apikey) = configuration.api_key {
530 let local_var_key = local_var_apikey.key.clone();
531 let local_var_value = match local_var_apikey.prefix {
532 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
533 None => local_var_key,
534 };
535 local_var_req_builder = local_var_req_builder.header("x-api-key", local_var_value);
536 };
537
538 let local_var_req = local_var_req_builder.build()?;
539 let local_var_resp = local_var_client.execute(local_var_req).await?;
540
541 let local_var_status = local_var_resp.status();
542 let local_var_content = local_var_resp.text().await?;
543
544 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
545 serde_json::from_str(&local_var_content).map_err(Error::from)
546 } else {
547 let local_var_entity: Option<CreateInboxError> = serde_json::from_str(&local_var_content).ok();
548 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
549 Err(Error::ResponseError(local_var_error))
550 }
551}
552
553pub async fn create_inbox_ruleset(configuration: &configuration::Configuration, params: CreateInboxRulesetParams) -> Result<crate::models::InboxRulesetDto, Error<CreateInboxRulesetError>> {
555 let inbox_id = params.inbox_id;
557 let create_inbox_ruleset_options = params.create_inbox_ruleset_options;
558
559
560 let local_var_client = &configuration.client;
561
562 let local_var_uri_str = format!("{}/inboxes/{inboxId}/rulesets", configuration.base_path, inboxId=inbox_id);
563 let mut local_var_req_builder = local_var_client.post(local_var_uri_str.as_str());
564
565 if let Some(ref local_var_user_agent) = configuration.user_agent {
566 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
567 }
568 if let Some(ref local_var_apikey) = configuration.api_key {
569 let local_var_key = local_var_apikey.key.clone();
570 let local_var_value = match local_var_apikey.prefix {
571 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
572 None => local_var_key,
573 };
574 local_var_req_builder = local_var_req_builder.header("x-api-key", local_var_value);
575 };
576 local_var_req_builder = local_var_req_builder.json(&create_inbox_ruleset_options);
577
578 let local_var_req = local_var_req_builder.build()?;
579 let local_var_resp = local_var_client.execute(local_var_req).await?;
580
581 let local_var_status = local_var_resp.status();
582 let local_var_content = local_var_resp.text().await?;
583
584 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
585 serde_json::from_str(&local_var_content).map_err(Error::from)
586 } else {
587 let local_var_entity: Option<CreateInboxRulesetError> = serde_json::from_str(&local_var_content).ok();
588 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
589 Err(Error::ResponseError(local_var_error))
590 }
591}
592
593pub async fn create_inbox_with_defaults(configuration: &configuration::Configuration) -> Result<crate::models::Inbox, Error<CreateInboxWithDefaultsError>> {
594 let local_var_client = &configuration.client;
598
599 let local_var_uri_str = format!("{}/inboxes/withDefaults", configuration.base_path);
600 let mut local_var_req_builder = local_var_client.post(local_var_uri_str.as_str());
601
602 if let Some(ref local_var_user_agent) = configuration.user_agent {
603 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
604 }
605 if let Some(ref local_var_apikey) = configuration.api_key {
606 let local_var_key = local_var_apikey.key.clone();
607 let local_var_value = match local_var_apikey.prefix {
608 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
609 None => local_var_key,
610 };
611 local_var_req_builder = local_var_req_builder.header("x-api-key", local_var_value);
612 };
613
614 let local_var_req = local_var_req_builder.build()?;
615 let local_var_resp = local_var_client.execute(local_var_req).await?;
616
617 let local_var_status = local_var_resp.status();
618 let local_var_content = local_var_resp.text().await?;
619
620 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
621 serde_json::from_str(&local_var_content).map_err(Error::from)
622 } else {
623 let local_var_entity: Option<CreateInboxWithDefaultsError> = serde_json::from_str(&local_var_content).ok();
624 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
625 Err(Error::ResponseError(local_var_error))
626 }
627}
628
629pub async fn create_inbox_with_options(configuration: &configuration::Configuration, params: CreateInboxWithOptionsParams) -> Result<crate::models::Inbox, Error<CreateInboxWithOptionsError>> {
631 let create_inbox_dto = params.create_inbox_dto;
633
634
635 let local_var_client = &configuration.client;
636
637 let local_var_uri_str = format!("{}/inboxes/withOptions", configuration.base_path);
638 let mut local_var_req_builder = local_var_client.post(local_var_uri_str.as_str());
639
640 if let Some(ref local_var_user_agent) = configuration.user_agent {
641 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
642 }
643 if let Some(ref local_var_apikey) = configuration.api_key {
644 let local_var_key = local_var_apikey.key.clone();
645 let local_var_value = match local_var_apikey.prefix {
646 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
647 None => local_var_key,
648 };
649 local_var_req_builder = local_var_req_builder.header("x-api-key", local_var_value);
650 };
651 local_var_req_builder = local_var_req_builder.json(&create_inbox_dto);
652
653 let local_var_req = local_var_req_builder.build()?;
654 let local_var_resp = local_var_client.execute(local_var_req).await?;
655
656 let local_var_status = local_var_resp.status();
657 let local_var_content = local_var_resp.text().await?;
658
659 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
660 serde_json::from_str(&local_var_content).map_err(Error::from)
661 } else {
662 let local_var_entity: Option<CreateInboxWithOptionsError> = serde_json::from_str(&local_var_content).ok();
663 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
664 Err(Error::ResponseError(local_var_error))
665 }
666}
667
668pub async fn delete_all_inboxes(configuration: &configuration::Configuration) -> Result<(), Error<DeleteAllInboxesError>> {
670 let local_var_client = &configuration.client;
674
675 let local_var_uri_str = format!("{}/inboxes", configuration.base_path);
676 let mut local_var_req_builder = local_var_client.delete(local_var_uri_str.as_str());
677
678 if let Some(ref local_var_user_agent) = configuration.user_agent {
679 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
680 }
681 if let Some(ref local_var_apikey) = configuration.api_key {
682 let local_var_key = local_var_apikey.key.clone();
683 let local_var_value = match local_var_apikey.prefix {
684 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
685 None => local_var_key,
686 };
687 local_var_req_builder = local_var_req_builder.header("x-api-key", local_var_value);
688 };
689
690 let local_var_req = local_var_req_builder.build()?;
691 let local_var_resp = local_var_client.execute(local_var_req).await?;
692
693 let local_var_status = local_var_resp.status();
694 let local_var_content = local_var_resp.text().await?;
695
696 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
697 Ok(())
698 } else {
699 let local_var_entity: Option<DeleteAllInboxesError> = serde_json::from_str(&local_var_content).ok();
700 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
701 Err(Error::ResponseError(local_var_error))
702 }
703}
704
705pub async fn delete_inbox(configuration: &configuration::Configuration, params: DeleteInboxParams) -> Result<(), Error<DeleteInboxError>> {
707 let inbox_id = params.inbox_id;
709
710
711 let local_var_client = &configuration.client;
712
713 let local_var_uri_str = format!("{}/inboxes/{inboxId}", configuration.base_path, inboxId=inbox_id);
714 let mut local_var_req_builder = local_var_client.delete(local_var_uri_str.as_str());
715
716 if let Some(ref local_var_user_agent) = configuration.user_agent {
717 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
718 }
719 if let Some(ref local_var_apikey) = configuration.api_key {
720 let local_var_key = local_var_apikey.key.clone();
721 let local_var_value = match local_var_apikey.prefix {
722 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
723 None => local_var_key,
724 };
725 local_var_req_builder = local_var_req_builder.header("x-api-key", local_var_value);
726 };
727
728 let local_var_req = local_var_req_builder.build()?;
729 let local_var_resp = local_var_client.execute(local_var_req).await?;
730
731 let local_var_status = local_var_resp.status();
732 let local_var_content = local_var_resp.text().await?;
733
734 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
735 Ok(())
736 } else {
737 let local_var_entity: Option<DeleteInboxError> = serde_json::from_str(&local_var_content).ok();
738 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
739 Err(Error::ResponseError(local_var_error))
740 }
741}
742
743pub async fn get_all_inboxes(configuration: &configuration::Configuration, params: GetAllInboxesParams) -> Result<crate::models::PageInboxProjection, Error<GetAllInboxesError>> {
745 let before = params.before;
747 let favourite = params.favourite;
748 let page = params.page;
749 let search = params.search;
750 let since = params.since;
751 let size = params.size;
752 let sort = params.sort;
753 let tag = params.tag;
754 let team_access = params.team_access;
755
756
757 let local_var_client = &configuration.client;
758
759 let local_var_uri_str = format!("{}/inboxes/paginated", configuration.base_path);
760 let mut local_var_req_builder = local_var_client.get(local_var_uri_str.as_str());
761
762 if let Some(ref local_var_str) = before {
763 local_var_req_builder = local_var_req_builder.query(&[("before", &local_var_str.to_string())]);
764 }
765 if let Some(ref local_var_str) = favourite {
766 local_var_req_builder = local_var_req_builder.query(&[("favourite", &local_var_str.to_string())]);
767 }
768 if let Some(ref local_var_str) = page {
769 local_var_req_builder = local_var_req_builder.query(&[("page", &local_var_str.to_string())]);
770 }
771 if let Some(ref local_var_str) = search {
772 local_var_req_builder = local_var_req_builder.query(&[("search", &local_var_str.to_string())]);
773 }
774 if let Some(ref local_var_str) = since {
775 local_var_req_builder = local_var_req_builder.query(&[("since", &local_var_str.to_string())]);
776 }
777 if let Some(ref local_var_str) = size {
778 local_var_req_builder = local_var_req_builder.query(&[("size", &local_var_str.to_string())]);
779 }
780 if let Some(ref local_var_str) = sort {
781 local_var_req_builder = local_var_req_builder.query(&[("sort", &local_var_str.to_string())]);
782 }
783 if let Some(ref local_var_str) = tag {
784 local_var_req_builder = local_var_req_builder.query(&[("tag", &local_var_str.to_string())]);
785 }
786 if let Some(ref local_var_str) = team_access {
787 local_var_req_builder = local_var_req_builder.query(&[("teamAccess", &local_var_str.to_string())]);
788 }
789 if let Some(ref local_var_user_agent) = configuration.user_agent {
790 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
791 }
792 if let Some(ref local_var_apikey) = configuration.api_key {
793 let local_var_key = local_var_apikey.key.clone();
794 let local_var_value = match local_var_apikey.prefix {
795 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
796 None => local_var_key,
797 };
798 local_var_req_builder = local_var_req_builder.header("x-api-key", local_var_value);
799 };
800
801 let local_var_req = local_var_req_builder.build()?;
802 let local_var_resp = local_var_client.execute(local_var_req).await?;
803
804 let local_var_status = local_var_resp.status();
805 let local_var_content = local_var_resp.text().await?;
806
807 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
808 serde_json::from_str(&local_var_content).map_err(Error::from)
809 } else {
810 let local_var_entity: Option<GetAllInboxesError> = serde_json::from_str(&local_var_content).ok();
811 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
812 Err(Error::ResponseError(local_var_error))
813 }
814}
815
816pub async fn get_emails(configuration: &configuration::Configuration, params: GetEmailsParams) -> Result<Vec<crate::models::EmailPreview>, Error<GetEmailsError>> {
818 let inbox_id = params.inbox_id;
820 let before = params.before;
821 let delay_timeout = params.delay_timeout;
822 let limit = params.limit;
823 let min_count = params.min_count;
824 let retry_timeout = params.retry_timeout;
825 let since = params.since;
826 let size = params.size;
827 let sort = params.sort;
828 let unread_only = params.unread_only;
829
830
831 let local_var_client = &configuration.client;
832
833 let local_var_uri_str = format!("{}/inboxes/{inboxId}/emails", configuration.base_path, inboxId=inbox_id);
834 let mut local_var_req_builder = local_var_client.get(local_var_uri_str.as_str());
835
836 if let Some(ref local_var_str) = before {
837 local_var_req_builder = local_var_req_builder.query(&[("before", &local_var_str.to_string())]);
838 }
839 if let Some(ref local_var_str) = delay_timeout {
840 local_var_req_builder = local_var_req_builder.query(&[("delayTimeout", &local_var_str.to_string())]);
841 }
842 if let Some(ref local_var_str) = limit {
843 local_var_req_builder = local_var_req_builder.query(&[("limit", &local_var_str.to_string())]);
844 }
845 if let Some(ref local_var_str) = min_count {
846 local_var_req_builder = local_var_req_builder.query(&[("minCount", &local_var_str.to_string())]);
847 }
848 if let Some(ref local_var_str) = retry_timeout {
849 local_var_req_builder = local_var_req_builder.query(&[("retryTimeout", &local_var_str.to_string())]);
850 }
851 if let Some(ref local_var_str) = since {
852 local_var_req_builder = local_var_req_builder.query(&[("since", &local_var_str.to_string())]);
853 }
854 if let Some(ref local_var_str) = size {
855 local_var_req_builder = local_var_req_builder.query(&[("size", &local_var_str.to_string())]);
856 }
857 if let Some(ref local_var_str) = sort {
858 local_var_req_builder = local_var_req_builder.query(&[("sort", &local_var_str.to_string())]);
859 }
860 if let Some(ref local_var_str) = unread_only {
861 local_var_req_builder = local_var_req_builder.query(&[("unreadOnly", &local_var_str.to_string())]);
862 }
863 if let Some(ref local_var_user_agent) = configuration.user_agent {
864 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
865 }
866 if let Some(ref local_var_apikey) = configuration.api_key {
867 let local_var_key = local_var_apikey.key.clone();
868 let local_var_value = match local_var_apikey.prefix {
869 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
870 None => local_var_key,
871 };
872 local_var_req_builder = local_var_req_builder.header("x-api-key", local_var_value);
873 };
874
875 let local_var_req = local_var_req_builder.build()?;
876 let local_var_resp = local_var_client.execute(local_var_req).await?;
877
878 let local_var_status = local_var_resp.status();
879 let local_var_content = local_var_resp.text().await?;
880
881 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
882 serde_json::from_str(&local_var_content).map_err(Error::from)
883 } else {
884 let local_var_entity: Option<GetEmailsError> = serde_json::from_str(&local_var_content).ok();
885 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
886 Err(Error::ResponseError(local_var_error))
887 }
888}
889
890pub async fn get_inbox(configuration: &configuration::Configuration, params: GetInboxParams) -> Result<crate::models::Inbox, Error<GetInboxError>> {
892 let inbox_id = params.inbox_id;
894
895
896 let local_var_client = &configuration.client;
897
898 let local_var_uri_str = format!("{}/inboxes/{inboxId}", configuration.base_path, inboxId=inbox_id);
899 let mut local_var_req_builder = local_var_client.get(local_var_uri_str.as_str());
900
901 if let Some(ref local_var_user_agent) = configuration.user_agent {
902 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
903 }
904 if let Some(ref local_var_apikey) = configuration.api_key {
905 let local_var_key = local_var_apikey.key.clone();
906 let local_var_value = match local_var_apikey.prefix {
907 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
908 None => local_var_key,
909 };
910 local_var_req_builder = local_var_req_builder.header("x-api-key", local_var_value);
911 };
912
913 let local_var_req = local_var_req_builder.build()?;
914 let local_var_resp = local_var_client.execute(local_var_req).await?;
915
916 let local_var_status = local_var_resp.status();
917 let local_var_content = local_var_resp.text().await?;
918
919 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
920 serde_json::from_str(&local_var_content).map_err(Error::from)
921 } else {
922 let local_var_entity: Option<GetInboxError> = serde_json::from_str(&local_var_content).ok();
923 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
924 Err(Error::ResponseError(local_var_error))
925 }
926}
927
928pub async fn get_inbox_emails_paginated(configuration: &configuration::Configuration, params: GetInboxEmailsPaginatedParams) -> Result<crate::models::PageEmailPreview, Error<GetInboxEmailsPaginatedError>> {
930 let inbox_id = params.inbox_id;
932 let before = params.before;
933 let page = params.page;
934 let since = params.since;
935 let size = params.size;
936 let sort = params.sort;
937
938
939 let local_var_client = &configuration.client;
940
941 let local_var_uri_str = format!("{}/inboxes/{inboxId}/emails/paginated", configuration.base_path, inboxId=inbox_id);
942 let mut local_var_req_builder = local_var_client.get(local_var_uri_str.as_str());
943
944 if let Some(ref local_var_str) = before {
945 local_var_req_builder = local_var_req_builder.query(&[("before", &local_var_str.to_string())]);
946 }
947 if let Some(ref local_var_str) = page {
948 local_var_req_builder = local_var_req_builder.query(&[("page", &local_var_str.to_string())]);
949 }
950 if let Some(ref local_var_str) = since {
951 local_var_req_builder = local_var_req_builder.query(&[("since", &local_var_str.to_string())]);
952 }
953 if let Some(ref local_var_str) = size {
954 local_var_req_builder = local_var_req_builder.query(&[("size", &local_var_str.to_string())]);
955 }
956 if let Some(ref local_var_str) = sort {
957 local_var_req_builder = local_var_req_builder.query(&[("sort", &local_var_str.to_string())]);
958 }
959 if let Some(ref local_var_user_agent) = configuration.user_agent {
960 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
961 }
962 if let Some(ref local_var_apikey) = configuration.api_key {
963 let local_var_key = local_var_apikey.key.clone();
964 let local_var_value = match local_var_apikey.prefix {
965 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
966 None => local_var_key,
967 };
968 local_var_req_builder = local_var_req_builder.header("x-api-key", local_var_value);
969 };
970
971 let local_var_req = local_var_req_builder.build()?;
972 let local_var_resp = local_var_client.execute(local_var_req).await?;
973
974 let local_var_status = local_var_resp.status();
975 let local_var_content = local_var_resp.text().await?;
976
977 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
978 serde_json::from_str(&local_var_content).map_err(Error::from)
979 } else {
980 let local_var_entity: Option<GetInboxEmailsPaginatedError> = serde_json::from_str(&local_var_content).ok();
981 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
982 Err(Error::ResponseError(local_var_error))
983 }
984}
985
986pub async fn get_inbox_sent_emails(configuration: &configuration::Configuration, params: GetInboxSentEmailsParams) -> Result<crate::models::PageSentEmailProjection, Error<GetInboxSentEmailsError>> {
988 let inbox_id = params.inbox_id;
990 let before = params.before;
991 let page = params.page;
992 let search_filter = params.search_filter;
993 let since = params.since;
994 let size = params.size;
995 let sort = params.sort;
996
997
998 let local_var_client = &configuration.client;
999
1000 let local_var_uri_str = format!("{}/inboxes/{inboxId}/sent", configuration.base_path, inboxId=inbox_id);
1001 let mut local_var_req_builder = local_var_client.get(local_var_uri_str.as_str());
1002
1003 if let Some(ref local_var_str) = before {
1004 local_var_req_builder = local_var_req_builder.query(&[("before", &local_var_str.to_string())]);
1005 }
1006 if let Some(ref local_var_str) = page {
1007 local_var_req_builder = local_var_req_builder.query(&[("page", &local_var_str.to_string())]);
1008 }
1009 if let Some(ref local_var_str) = search_filter {
1010 local_var_req_builder = local_var_req_builder.query(&[("searchFilter", &local_var_str.to_string())]);
1011 }
1012 if let Some(ref local_var_str) = since {
1013 local_var_req_builder = local_var_req_builder.query(&[("since", &local_var_str.to_string())]);
1014 }
1015 if let Some(ref local_var_str) = size {
1016 local_var_req_builder = local_var_req_builder.query(&[("size", &local_var_str.to_string())]);
1017 }
1018 if let Some(ref local_var_str) = sort {
1019 local_var_req_builder = local_var_req_builder.query(&[("sort", &local_var_str.to_string())]);
1020 }
1021 if let Some(ref local_var_user_agent) = configuration.user_agent {
1022 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
1023 }
1024 if let Some(ref local_var_apikey) = configuration.api_key {
1025 let local_var_key = local_var_apikey.key.clone();
1026 let local_var_value = match local_var_apikey.prefix {
1027 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
1028 None => local_var_key,
1029 };
1030 local_var_req_builder = local_var_req_builder.header("x-api-key", local_var_value);
1031 };
1032
1033 let local_var_req = local_var_req_builder.build()?;
1034 let local_var_resp = local_var_client.execute(local_var_req).await?;
1035
1036 let local_var_status = local_var_resp.status();
1037 let local_var_content = local_var_resp.text().await?;
1038
1039 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1040 serde_json::from_str(&local_var_content).map_err(Error::from)
1041 } else {
1042 let local_var_entity: Option<GetInboxSentEmailsError> = serde_json::from_str(&local_var_content).ok();
1043 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
1044 Err(Error::ResponseError(local_var_error))
1045 }
1046}
1047
1048pub async fn get_inbox_tags(configuration: &configuration::Configuration) -> Result<Vec<String>, Error<GetInboxTagsError>> {
1050 let local_var_client = &configuration.client;
1054
1055 let local_var_uri_str = format!("{}/inboxes/tags", configuration.base_path);
1056 let mut local_var_req_builder = local_var_client.get(local_var_uri_str.as_str());
1057
1058 if let Some(ref local_var_user_agent) = configuration.user_agent {
1059 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
1060 }
1061 if let Some(ref local_var_apikey) = configuration.api_key {
1062 let local_var_key = local_var_apikey.key.clone();
1063 let local_var_value = match local_var_apikey.prefix {
1064 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
1065 None => local_var_key,
1066 };
1067 local_var_req_builder = local_var_req_builder.header("x-api-key", local_var_value);
1068 };
1069
1070 let local_var_req = local_var_req_builder.build()?;
1071 let local_var_resp = local_var_client.execute(local_var_req).await?;
1072
1073 let local_var_status = local_var_resp.status();
1074 let local_var_content = local_var_resp.text().await?;
1075
1076 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1077 serde_json::from_str(&local_var_content).map_err(Error::from)
1078 } else {
1079 let local_var_entity: Option<GetInboxTagsError> = serde_json::from_str(&local_var_content).ok();
1080 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
1081 Err(Error::ResponseError(local_var_error))
1082 }
1083}
1084
1085pub async fn get_inboxes(configuration: &configuration::Configuration, params: GetInboxesParams) -> Result<Vec<crate::models::Inbox>, Error<GetInboxesError>> {
1087 let before = params.before;
1089 let since = params.since;
1090 let size = params.size;
1091 let sort = params.sort;
1092
1093
1094 let local_var_client = &configuration.client;
1095
1096 let local_var_uri_str = format!("{}/inboxes", configuration.base_path);
1097 let mut local_var_req_builder = local_var_client.get(local_var_uri_str.as_str());
1098
1099 if let Some(ref local_var_str) = before {
1100 local_var_req_builder = local_var_req_builder.query(&[("before", &local_var_str.to_string())]);
1101 }
1102 if let Some(ref local_var_str) = since {
1103 local_var_req_builder = local_var_req_builder.query(&[("since", &local_var_str.to_string())]);
1104 }
1105 if let Some(ref local_var_str) = size {
1106 local_var_req_builder = local_var_req_builder.query(&[("size", &local_var_str.to_string())]);
1107 }
1108 if let Some(ref local_var_str) = sort {
1109 local_var_req_builder = local_var_req_builder.query(&[("sort", &local_var_str.to_string())]);
1110 }
1111 if let Some(ref local_var_user_agent) = configuration.user_agent {
1112 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
1113 }
1114 if let Some(ref local_var_apikey) = configuration.api_key {
1115 let local_var_key = local_var_apikey.key.clone();
1116 let local_var_value = match local_var_apikey.prefix {
1117 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
1118 None => local_var_key,
1119 };
1120 local_var_req_builder = local_var_req_builder.header("x-api-key", local_var_value);
1121 };
1122
1123 let local_var_req = local_var_req_builder.build()?;
1124 let local_var_resp = local_var_client.execute(local_var_req).await?;
1125
1126 let local_var_status = local_var_resp.status();
1127 let local_var_content = local_var_resp.text().await?;
1128
1129 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1130 serde_json::from_str(&local_var_content).map_err(Error::from)
1131 } else {
1132 let local_var_entity: Option<GetInboxesError> = serde_json::from_str(&local_var_content).ok();
1133 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
1134 Err(Error::ResponseError(local_var_error))
1135 }
1136}
1137
1138pub async fn get_organization_inboxes(configuration: &configuration::Configuration, params: GetOrganizationInboxesParams) -> Result<crate::models::PageOrganizationInboxProjection, Error<GetOrganizationInboxesError>> {
1140 let before = params.before;
1142 let page = params.page;
1143 let search_filter = params.search_filter;
1144 let since = params.since;
1145 let size = params.size;
1146 let sort = params.sort;
1147
1148
1149 let local_var_client = &configuration.client;
1150
1151 let local_var_uri_str = format!("{}/inboxes/organization", configuration.base_path);
1152 let mut local_var_req_builder = local_var_client.get(local_var_uri_str.as_str());
1153
1154 if let Some(ref local_var_str) = before {
1155 local_var_req_builder = local_var_req_builder.query(&[("before", &local_var_str.to_string())]);
1156 }
1157 if let Some(ref local_var_str) = page {
1158 local_var_req_builder = local_var_req_builder.query(&[("page", &local_var_str.to_string())]);
1159 }
1160 if let Some(ref local_var_str) = search_filter {
1161 local_var_req_builder = local_var_req_builder.query(&[("searchFilter", &local_var_str.to_string())]);
1162 }
1163 if let Some(ref local_var_str) = since {
1164 local_var_req_builder = local_var_req_builder.query(&[("since", &local_var_str.to_string())]);
1165 }
1166 if let Some(ref local_var_str) = size {
1167 local_var_req_builder = local_var_req_builder.query(&[("size", &local_var_str.to_string())]);
1168 }
1169 if let Some(ref local_var_str) = sort {
1170 local_var_req_builder = local_var_req_builder.query(&[("sort", &local_var_str.to_string())]);
1171 }
1172 if let Some(ref local_var_user_agent) = configuration.user_agent {
1173 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
1174 }
1175 if let Some(ref local_var_apikey) = configuration.api_key {
1176 let local_var_key = local_var_apikey.key.clone();
1177 let local_var_value = match local_var_apikey.prefix {
1178 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
1179 None => local_var_key,
1180 };
1181 local_var_req_builder = local_var_req_builder.header("x-api-key", local_var_value);
1182 };
1183
1184 let local_var_req = local_var_req_builder.build()?;
1185 let local_var_resp = local_var_client.execute(local_var_req).await?;
1186
1187 let local_var_status = local_var_resp.status();
1188 let local_var_content = local_var_resp.text().await?;
1189
1190 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1191 serde_json::from_str(&local_var_content).map_err(Error::from)
1192 } else {
1193 let local_var_entity: Option<GetOrganizationInboxesError> = serde_json::from_str(&local_var_content).ok();
1194 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
1195 Err(Error::ResponseError(local_var_error))
1196 }
1197}
1198
1199pub async fn list_inbox_rulesets(configuration: &configuration::Configuration, params: ListInboxRulesetsParams) -> Result<crate::models::PageInboxRulesetDto, Error<ListInboxRulesetsError>> {
1201 let inbox_id = params.inbox_id;
1203 let before = params.before;
1204 let page = params.page;
1205 let search_filter = params.search_filter;
1206 let since = params.since;
1207 let size = params.size;
1208 let sort = params.sort;
1209
1210
1211 let local_var_client = &configuration.client;
1212
1213 let local_var_uri_str = format!("{}/inboxes/{inboxId}/rulesets", configuration.base_path, inboxId=inbox_id);
1214 let mut local_var_req_builder = local_var_client.get(local_var_uri_str.as_str());
1215
1216 if let Some(ref local_var_str) = before {
1217 local_var_req_builder = local_var_req_builder.query(&[("before", &local_var_str.to_string())]);
1218 }
1219 if let Some(ref local_var_str) = page {
1220 local_var_req_builder = local_var_req_builder.query(&[("page", &local_var_str.to_string())]);
1221 }
1222 if let Some(ref local_var_str) = search_filter {
1223 local_var_req_builder = local_var_req_builder.query(&[("searchFilter", &local_var_str.to_string())]);
1224 }
1225 if let Some(ref local_var_str) = since {
1226 local_var_req_builder = local_var_req_builder.query(&[("since", &local_var_str.to_string())]);
1227 }
1228 if let Some(ref local_var_str) = size {
1229 local_var_req_builder = local_var_req_builder.query(&[("size", &local_var_str.to_string())]);
1230 }
1231 if let Some(ref local_var_str) = sort {
1232 local_var_req_builder = local_var_req_builder.query(&[("sort", &local_var_str.to_string())]);
1233 }
1234 if let Some(ref local_var_user_agent) = configuration.user_agent {
1235 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
1236 }
1237 if let Some(ref local_var_apikey) = configuration.api_key {
1238 let local_var_key = local_var_apikey.key.clone();
1239 let local_var_value = match local_var_apikey.prefix {
1240 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
1241 None => local_var_key,
1242 };
1243 local_var_req_builder = local_var_req_builder.header("x-api-key", local_var_value);
1244 };
1245
1246 let local_var_req = local_var_req_builder.build()?;
1247 let local_var_resp = local_var_client.execute(local_var_req).await?;
1248
1249 let local_var_status = local_var_resp.status();
1250 let local_var_content = local_var_resp.text().await?;
1251
1252 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1253 serde_json::from_str(&local_var_content).map_err(Error::from)
1254 } else {
1255 let local_var_entity: Option<ListInboxRulesetsError> = serde_json::from_str(&local_var_content).ok();
1256 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
1257 Err(Error::ResponseError(local_var_error))
1258 }
1259}
1260
1261pub async fn list_inbox_tracking_pixels(configuration: &configuration::Configuration, params: ListInboxTrackingPixelsParams) -> Result<crate::models::PageTrackingPixelProjection, Error<ListInboxTrackingPixelsError>> {
1263 let inbox_id = params.inbox_id;
1265 let before = params.before;
1266 let page = params.page;
1267 let search_filter = params.search_filter;
1268 let since = params.since;
1269 let size = params.size;
1270 let sort = params.sort;
1271
1272
1273 let local_var_client = &configuration.client;
1274
1275 let local_var_uri_str = format!("{}/inboxes/{inboxId}/tracking-pixels", configuration.base_path, inboxId=inbox_id);
1276 let mut local_var_req_builder = local_var_client.get(local_var_uri_str.as_str());
1277
1278 if let Some(ref local_var_str) = before {
1279 local_var_req_builder = local_var_req_builder.query(&[("before", &local_var_str.to_string())]);
1280 }
1281 if let Some(ref local_var_str) = page {
1282 local_var_req_builder = local_var_req_builder.query(&[("page", &local_var_str.to_string())]);
1283 }
1284 if let Some(ref local_var_str) = search_filter {
1285 local_var_req_builder = local_var_req_builder.query(&[("searchFilter", &local_var_str.to_string())]);
1286 }
1287 if let Some(ref local_var_str) = since {
1288 local_var_req_builder = local_var_req_builder.query(&[("since", &local_var_str.to_string())]);
1289 }
1290 if let Some(ref local_var_str) = size {
1291 local_var_req_builder = local_var_req_builder.query(&[("size", &local_var_str.to_string())]);
1292 }
1293 if let Some(ref local_var_str) = sort {
1294 local_var_req_builder = local_var_req_builder.query(&[("sort", &local_var_str.to_string())]);
1295 }
1296 if let Some(ref local_var_user_agent) = configuration.user_agent {
1297 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
1298 }
1299 if let Some(ref local_var_apikey) = configuration.api_key {
1300 let local_var_key = local_var_apikey.key.clone();
1301 let local_var_value = match local_var_apikey.prefix {
1302 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
1303 None => local_var_key,
1304 };
1305 local_var_req_builder = local_var_req_builder.header("x-api-key", local_var_value);
1306 };
1307
1308 let local_var_req = local_var_req_builder.build()?;
1309 let local_var_resp = local_var_client.execute(local_var_req).await?;
1310
1311 let local_var_status = local_var_resp.status();
1312 let local_var_content = local_var_resp.text().await?;
1313
1314 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1315 serde_json::from_str(&local_var_content).map_err(Error::from)
1316 } else {
1317 let local_var_entity: Option<ListInboxTrackingPixelsError> = serde_json::from_str(&local_var_content).ok();
1318 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
1319 Err(Error::ResponseError(local_var_error))
1320 }
1321}
1322
1323pub async fn send_email(configuration: &configuration::Configuration, params: SendEmailParams) -> Result<(), Error<SendEmailError>> {
1325 let inbox_id = params.inbox_id;
1327 let send_email_options = params.send_email_options;
1328
1329
1330 let local_var_client = &configuration.client;
1331
1332 let local_var_uri_str = format!("{}/inboxes/{inboxId}", configuration.base_path, inboxId=inbox_id);
1333 let mut local_var_req_builder = local_var_client.post(local_var_uri_str.as_str());
1334
1335 if let Some(ref local_var_user_agent) = configuration.user_agent {
1336 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
1337 }
1338 if let Some(ref local_var_apikey) = configuration.api_key {
1339 let local_var_key = local_var_apikey.key.clone();
1340 let local_var_value = match local_var_apikey.prefix {
1341 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
1342 None => local_var_key,
1343 };
1344 local_var_req_builder = local_var_req_builder.header("x-api-key", local_var_value);
1345 };
1346 local_var_req_builder = local_var_req_builder.json(&send_email_options);
1347
1348 let local_var_req = local_var_req_builder.build()?;
1349 let local_var_resp = local_var_client.execute(local_var_req).await?;
1350
1351 let local_var_status = local_var_resp.status();
1352 let local_var_content = local_var_resp.text().await?;
1353
1354 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1355 Ok(())
1356 } else {
1357 let local_var_entity: Option<SendEmailError> = serde_json::from_str(&local_var_content).ok();
1358 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
1359 Err(Error::ResponseError(local_var_error))
1360 }
1361}
1362
1363pub async fn send_email_and_confirm(configuration: &configuration::Configuration, params: SendEmailAndConfirmParams) -> Result<crate::models::SentEmailDto, Error<SendEmailAndConfirmError>> {
1365 let inbox_id = params.inbox_id;
1367 let send_email_options = params.send_email_options;
1368
1369
1370 let local_var_client = &configuration.client;
1371
1372 let local_var_uri_str = format!("{}/inboxes/{inboxId}/confirm", configuration.base_path, inboxId=inbox_id);
1373 let mut local_var_req_builder = local_var_client.post(local_var_uri_str.as_str());
1374
1375 if let Some(ref local_var_user_agent) = configuration.user_agent {
1376 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
1377 }
1378 if let Some(ref local_var_apikey) = configuration.api_key {
1379 let local_var_key = local_var_apikey.key.clone();
1380 let local_var_value = match local_var_apikey.prefix {
1381 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
1382 None => local_var_key,
1383 };
1384 local_var_req_builder = local_var_req_builder.header("x-api-key", local_var_value);
1385 };
1386 local_var_req_builder = local_var_req_builder.json(&send_email_options);
1387
1388 let local_var_req = local_var_req_builder.build()?;
1389 let local_var_resp = local_var_client.execute(local_var_req).await?;
1390
1391 let local_var_status = local_var_resp.status();
1392 let local_var_content = local_var_resp.text().await?;
1393
1394 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1395 serde_json::from_str(&local_var_content).map_err(Error::from)
1396 } else {
1397 let local_var_entity: Option<SendEmailAndConfirmError> = serde_json::from_str(&local_var_content).ok();
1398 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
1399 Err(Error::ResponseError(local_var_error))
1400 }
1401}
1402
1403pub async fn send_test_email(configuration: &configuration::Configuration, params: SendTestEmailParams) -> Result<(), Error<SendTestEmailError>> {
1405 let inbox_id = params.inbox_id;
1407
1408
1409 let local_var_client = &configuration.client;
1410
1411 let local_var_uri_str = format!("{}/inboxes/{inboxId}/send-test-email", configuration.base_path, inboxId=inbox_id);
1412 let mut local_var_req_builder = local_var_client.post(local_var_uri_str.as_str());
1413
1414 if let Some(ref local_var_user_agent) = configuration.user_agent {
1415 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
1416 }
1417 if let Some(ref local_var_apikey) = configuration.api_key {
1418 let local_var_key = local_var_apikey.key.clone();
1419 let local_var_value = match local_var_apikey.prefix {
1420 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
1421 None => local_var_key,
1422 };
1423 local_var_req_builder = local_var_req_builder.header("x-api-key", local_var_value);
1424 };
1425
1426 let local_var_req = local_var_req_builder.build()?;
1427 let local_var_resp = local_var_client.execute(local_var_req).await?;
1428
1429 let local_var_status = local_var_resp.status();
1430 let local_var_content = local_var_resp.text().await?;
1431
1432 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1433 Ok(())
1434 } else {
1435 let local_var_entity: Option<SendTestEmailError> = serde_json::from_str(&local_var_content).ok();
1436 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
1437 Err(Error::ResponseError(local_var_error))
1438 }
1439}
1440
1441pub async fn set_inbox_favourited(configuration: &configuration::Configuration, params: SetInboxFavouritedParams) -> Result<crate::models::Inbox, Error<SetInboxFavouritedError>> {
1443 let inbox_id = params.inbox_id;
1445 let set_inbox_favourited_options = params.set_inbox_favourited_options;
1446
1447
1448 let local_var_client = &configuration.client;
1449
1450 let local_var_uri_str = format!("{}/inboxes/{inboxId}/favourite", configuration.base_path, inboxId=inbox_id);
1451 let mut local_var_req_builder = local_var_client.put(local_var_uri_str.as_str());
1452
1453 if let Some(ref local_var_user_agent) = configuration.user_agent {
1454 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
1455 }
1456 if let Some(ref local_var_apikey) = configuration.api_key {
1457 let local_var_key = local_var_apikey.key.clone();
1458 let local_var_value = match local_var_apikey.prefix {
1459 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
1460 None => local_var_key,
1461 };
1462 local_var_req_builder = local_var_req_builder.header("x-api-key", local_var_value);
1463 };
1464 local_var_req_builder = local_var_req_builder.json(&set_inbox_favourited_options);
1465
1466 let local_var_req = local_var_req_builder.build()?;
1467 let local_var_resp = local_var_client.execute(local_var_req).await?;
1468
1469 let local_var_status = local_var_resp.status();
1470 let local_var_content = local_var_resp.text().await?;
1471
1472 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1473 serde_json::from_str(&local_var_content).map_err(Error::from)
1474 } else {
1475 let local_var_entity: Option<SetInboxFavouritedError> = serde_json::from_str(&local_var_content).ok();
1476 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
1477 Err(Error::ResponseError(local_var_error))
1478 }
1479}
1480
1481pub async fn update_inbox(configuration: &configuration::Configuration, params: UpdateInboxParams) -> Result<crate::models::Inbox, Error<UpdateInboxError>> {
1483 let inbox_id = params.inbox_id;
1485 let update_inbox_options = params.update_inbox_options;
1486
1487
1488 let local_var_client = &configuration.client;
1489
1490 let local_var_uri_str = format!("{}/inboxes/{inboxId}", configuration.base_path, inboxId=inbox_id);
1491 let mut local_var_req_builder = local_var_client.patch(local_var_uri_str.as_str());
1492
1493 if let Some(ref local_var_user_agent) = configuration.user_agent {
1494 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
1495 }
1496 if let Some(ref local_var_apikey) = configuration.api_key {
1497 let local_var_key = local_var_apikey.key.clone();
1498 let local_var_value = match local_var_apikey.prefix {
1499 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
1500 None => local_var_key,
1501 };
1502 local_var_req_builder = local_var_req_builder.header("x-api-key", local_var_value);
1503 };
1504 local_var_req_builder = local_var_req_builder.json(&update_inbox_options);
1505
1506 let local_var_req = local_var_req_builder.build()?;
1507 let local_var_resp = local_var_client.execute(local_var_req).await?;
1508
1509 let local_var_status = local_var_resp.status();
1510 let local_var_content = local_var_resp.text().await?;
1511
1512 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1513 serde_json::from_str(&local_var_content).map_err(Error::from)
1514 } else {
1515 let local_var_entity: Option<UpdateInboxError> = serde_json::from_str(&local_var_content).ok();
1516 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
1517 Err(Error::ResponseError(local_var_error))
1518 }
1519}
1520