1use reqwest;
13
14use crate::apis::ResponseContent;
15use super::{Error, configuration};
16
17
18#[derive(Debug, Clone, Serialize, Deserialize)]
20#[serde(untagged)]
21pub enum CreateEmailCampaignError {
22 Status400(crate::models::ErrorModel),
23 UnknownValue(serde_json::Value),
24}
25
26#[derive(Debug, Clone, Serialize, Deserialize)]
28#[serde(untagged)]
29pub enum DeleteEmailCampaignError {
30 Status404(crate::models::ErrorModel),
31 Status400(crate::models::ErrorModel),
32 UnknownValue(serde_json::Value),
33}
34
35#[derive(Debug, Clone, Serialize, Deserialize)]
37#[serde(untagged)]
38pub enum EmailExportRecipientsError {
39 Status400(crate::models::ErrorModel),
40 Status404(crate::models::ErrorModel),
41 UnknownValue(serde_json::Value),
42}
43
44#[derive(Debug, Clone, Serialize, Deserialize)]
46#[serde(untagged)]
47pub enum GetAbTestCampaignResultError {
48 Status404(crate::models::ErrorModel),
49 Status400(crate::models::ErrorModel),
50 UnknownValue(serde_json::Value),
51}
52
53#[derive(Debug, Clone, Serialize, Deserialize)]
55#[serde(untagged)]
56pub enum GetEmailCampaignError {
57 Status404(crate::models::ErrorModel),
58 Status400(crate::models::ErrorModel),
59 UnknownValue(serde_json::Value),
60}
61
62#[derive(Debug, Clone, Serialize, Deserialize)]
64#[serde(untagged)]
65pub enum GetEmailCampaignsError {
66 Status400(crate::models::ErrorModel),
67 UnknownValue(serde_json::Value),
68}
69
70#[derive(Debug, Clone, Serialize, Deserialize)]
72#[serde(untagged)]
73pub enum GetSharedTemplateUrlError {
74 Status404(crate::models::ErrorModel),
75 Status405(crate::models::ErrorModel),
76 Status400(crate::models::ErrorModel),
77 UnknownValue(serde_json::Value),
78}
79
80#[derive(Debug, Clone, Serialize, Deserialize)]
82#[serde(untagged)]
83pub enum SendEmailCampaignNowError {
84 Status400(crate::models::ErrorModel),
85 Status402(crate::models::ErrorModel),
86 Status404(crate::models::ErrorModel),
87 UnknownValue(serde_json::Value),
88}
89
90#[derive(Debug, Clone, Serialize, Deserialize)]
92#[serde(untagged)]
93pub enum SendReportError {
94 Status400(crate::models::ErrorModel),
95 Status404(crate::models::ErrorModel),
96 UnknownValue(serde_json::Value),
97}
98
99#[derive(Debug, Clone, Serialize, Deserialize)]
101#[serde(untagged)]
102pub enum SendTestEmailError {
103 Status400(crate::models::PostSendFailed),
104 Status404(crate::models::ErrorModel),
105 UnknownValue(serde_json::Value),
106}
107
108#[derive(Debug, Clone, Serialize, Deserialize)]
110#[serde(untagged)]
111pub enum UpdateCampaignStatusError {
112 Status400(crate::models::ErrorModel),
113 Status404(crate::models::ErrorModel),
114 UnknownValue(serde_json::Value),
115}
116
117#[derive(Debug, Clone, Serialize, Deserialize)]
119#[serde(untagged)]
120pub enum UpdateEmailCampaignError {
121 Status400(crate::models::ErrorModel),
122 Status404(crate::models::ErrorModel),
123 UnknownValue(serde_json::Value),
124}
125
126#[derive(Debug, Clone, Serialize, Deserialize)]
128#[serde(untagged)]
129pub enum UploadImageToGalleryError {
130 Status400(crate::models::ErrorModel),
131 UnknownValue(serde_json::Value),
132}
133
134
135pub async fn create_email_campaign(configuration: &configuration::Configuration, email_campaigns: crate::models::CreateEmailCampaign) -> Result<crate::models::CreateModel, Error<CreateEmailCampaignError>> {
136 let local_var_configuration = configuration;
137
138 let local_var_client = &local_var_configuration.client;
139
140 let local_var_uri_str = format!("{}/emailCampaigns", local_var_configuration.base_path);
141 let mut local_var_req_builder = local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
142
143 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
144 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
145 }
146 if let Some(ref local_var_apikey) = local_var_configuration.api_key {
147 let local_var_key = local_var_apikey.key.clone();
148 let local_var_value = match local_var_apikey.prefix {
149 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
150 None => local_var_key,
151 };
152 local_var_req_builder = local_var_req_builder.header("api-key", local_var_value);
153 };
154 local_var_req_builder = local_var_req_builder.json(&email_campaigns);
155
156 let local_var_req = local_var_req_builder.build()?;
157 let local_var_resp = local_var_client.execute(local_var_req).await?;
158
159 let local_var_status = local_var_resp.status();
160 let local_var_content = local_var_resp.text().await?;
161
162 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
163 serde_json::from_str(&local_var_content).map_err(Error::from)
164 } else {
165 let local_var_entity: Option<CreateEmailCampaignError> = serde_json::from_str(&local_var_content).ok();
166 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
167 Err(Error::ResponseError(local_var_error))
168 }
169}
170
171pub async fn delete_email_campaign(configuration: &configuration::Configuration, campaign_id: i64) -> Result<(), Error<DeleteEmailCampaignError>> {
172 let local_var_configuration = configuration;
173
174 let local_var_client = &local_var_configuration.client;
175
176 let local_var_uri_str = format!("{}/emailCampaigns/{campaignId}", local_var_configuration.base_path, campaignId=campaign_id);
177 let mut local_var_req_builder = local_var_client.request(reqwest::Method::DELETE, local_var_uri_str.as_str());
178
179 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
180 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
181 }
182 if let Some(ref local_var_apikey) = local_var_configuration.api_key {
183 let local_var_key = local_var_apikey.key.clone();
184 let local_var_value = match local_var_apikey.prefix {
185 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
186 None => local_var_key,
187 };
188 local_var_req_builder = local_var_req_builder.header("api-key", local_var_value);
189 };
190
191 let local_var_req = local_var_req_builder.build()?;
192 let local_var_resp = local_var_client.execute(local_var_req).await?;
193
194 let local_var_status = local_var_resp.status();
195 let local_var_content = local_var_resp.text().await?;
196
197 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
198 Ok(())
199 } else {
200 let local_var_entity: Option<DeleteEmailCampaignError> = serde_json::from_str(&local_var_content).ok();
201 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
202 Err(Error::ResponseError(local_var_error))
203 }
204}
205
206pub async fn email_export_recipients(configuration: &configuration::Configuration, campaign_id: i64, recipient_export: Option<crate::models::EmailExportRecipients>) -> Result<crate::models::CreatedProcessId, Error<EmailExportRecipientsError>> {
207 let local_var_configuration = configuration;
208
209 let local_var_client = &local_var_configuration.client;
210
211 let local_var_uri_str = format!("{}/emailCampaigns/{campaignId}/exportRecipients", local_var_configuration.base_path, campaignId=campaign_id);
212 let mut local_var_req_builder = local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
213
214 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
215 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
216 }
217 if let Some(ref local_var_apikey) = local_var_configuration.api_key {
218 let local_var_key = local_var_apikey.key.clone();
219 let local_var_value = match local_var_apikey.prefix {
220 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
221 None => local_var_key,
222 };
223 local_var_req_builder = local_var_req_builder.header("api-key", local_var_value);
224 };
225 local_var_req_builder = local_var_req_builder.json(&recipient_export);
226
227 let local_var_req = local_var_req_builder.build()?;
228 let local_var_resp = local_var_client.execute(local_var_req).await?;
229
230 let local_var_status = local_var_resp.status();
231 let local_var_content = local_var_resp.text().await?;
232
233 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
234 serde_json::from_str(&local_var_content).map_err(Error::from)
235 } else {
236 let local_var_entity: Option<EmailExportRecipientsError> = serde_json::from_str(&local_var_content).ok();
237 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
238 Err(Error::ResponseError(local_var_error))
239 }
240}
241
242pub async fn get_ab_test_campaign_result(configuration: &configuration::Configuration, campaign_id: i64) -> Result<crate::models::AbTestCampaignResult, Error<GetAbTestCampaignResultError>> {
244 let local_var_configuration = configuration;
245
246 let local_var_client = &local_var_configuration.client;
247
248 let local_var_uri_str = format!("{}/emailCampaigns/{campaignId}/abTestCampaignResult", local_var_configuration.base_path, campaignId=campaign_id);
249 let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
250
251 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
252 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
253 }
254 if let Some(ref local_var_apikey) = local_var_configuration.api_key {
255 let local_var_key = local_var_apikey.key.clone();
256 let local_var_value = match local_var_apikey.prefix {
257 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
258 None => local_var_key,
259 };
260 local_var_req_builder = local_var_req_builder.header("api-key", local_var_value);
261 };
262
263 let local_var_req = local_var_req_builder.build()?;
264 let local_var_resp = local_var_client.execute(local_var_req).await?;
265
266 let local_var_status = local_var_resp.status();
267 let local_var_content = local_var_resp.text().await?;
268
269 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
270 serde_json::from_str(&local_var_content).map_err(Error::from)
271 } else {
272 let local_var_entity: Option<GetAbTestCampaignResultError> = serde_json::from_str(&local_var_content).ok();
273 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
274 Err(Error::ResponseError(local_var_error))
275 }
276}
277
278pub async fn get_email_campaign(configuration: &configuration::Configuration, campaign_id: i64) -> Result<crate::models::GetEmailCampaign, Error<GetEmailCampaignError>> {
279 let local_var_configuration = configuration;
280
281 let local_var_client = &local_var_configuration.client;
282
283 let local_var_uri_str = format!("{}/emailCampaigns/{campaignId}", local_var_configuration.base_path, campaignId=campaign_id);
284 let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
285
286 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
287 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
288 }
289 if let Some(ref local_var_apikey) = local_var_configuration.api_key {
290 let local_var_key = local_var_apikey.key.clone();
291 let local_var_value = match local_var_apikey.prefix {
292 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
293 None => local_var_key,
294 };
295 local_var_req_builder = local_var_req_builder.header("api-key", local_var_value);
296 };
297
298 let local_var_req = local_var_req_builder.build()?;
299 let local_var_resp = local_var_client.execute(local_var_req).await?;
300
301 let local_var_status = local_var_resp.status();
302 let local_var_content = local_var_resp.text().await?;
303
304 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
305 serde_json::from_str(&local_var_content).map_err(Error::from)
306 } else {
307 let local_var_entity: Option<GetEmailCampaignError> = serde_json::from_str(&local_var_content).ok();
308 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
309 Err(Error::ResponseError(local_var_error))
310 }
311}
312
313pub async fn get_email_campaigns(configuration: &configuration::Configuration, r#type: Option<&str>, status: Option<&str>, start_date: Option<String>, end_date: Option<String>, limit: Option<i64>, offset: Option<i64>) -> Result<crate::models::GetEmailCampaigns, Error<GetEmailCampaignsError>> {
314 let local_var_configuration = configuration;
315
316 let local_var_client = &local_var_configuration.client;
317
318 let local_var_uri_str = format!("{}/emailCampaigns", local_var_configuration.base_path);
319 let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
320
321 if let Some(ref local_var_str) = r#type {
322 local_var_req_builder = local_var_req_builder.query(&[("type", &local_var_str.to_string())]);
323 }
324 if let Some(ref local_var_str) = status {
325 local_var_req_builder = local_var_req_builder.query(&[("status", &local_var_str.to_string())]);
326 }
327 if let Some(ref local_var_str) = start_date {
328 local_var_req_builder = local_var_req_builder.query(&[("startDate", &local_var_str.to_string())]);
329 }
330 if let Some(ref local_var_str) = end_date {
331 local_var_req_builder = local_var_req_builder.query(&[("endDate", &local_var_str.to_string())]);
332 }
333 if let Some(ref local_var_str) = limit {
334 local_var_req_builder = local_var_req_builder.query(&[("limit", &local_var_str.to_string())]);
335 }
336 if let Some(ref local_var_str) = offset {
337 local_var_req_builder = local_var_req_builder.query(&[("offset", &local_var_str.to_string())]);
338 }
339 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
340 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
341 }
342 if let Some(ref local_var_apikey) = local_var_configuration.api_key {
343 let local_var_key = local_var_apikey.key.clone();
344 let local_var_value = match local_var_apikey.prefix {
345 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
346 None => local_var_key,
347 };
348 local_var_req_builder = local_var_req_builder.header("api-key", local_var_value);
349 };
350
351 let local_var_req = local_var_req_builder.build()?;
352 let local_var_resp = local_var_client.execute(local_var_req).await?;
353
354 let local_var_status = local_var_resp.status();
355 let local_var_content = local_var_resp.text().await?;
356
357 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
358 serde_json::from_str(&local_var_content).map_err(Error::from)
359 } else {
360 let local_var_entity: Option<GetEmailCampaignsError> = serde_json::from_str(&local_var_content).ok();
361 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
362 Err(Error::ResponseError(local_var_error))
363 }
364}
365
366pub async fn get_shared_template_url(configuration: &configuration::Configuration, campaign_id: i64) -> Result<crate::models::GetSharedTemplateUrl, Error<GetSharedTemplateUrlError>> {
368 let local_var_configuration = configuration;
369
370 let local_var_client = &local_var_configuration.client;
371
372 let local_var_uri_str = format!("{}/emailCampaigns/{campaignId}/sharedUrl", local_var_configuration.base_path, campaignId=campaign_id);
373 let mut local_var_req_builder = local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
374
375 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
376 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
377 }
378 if let Some(ref local_var_apikey) = local_var_configuration.api_key {
379 let local_var_key = local_var_apikey.key.clone();
380 let local_var_value = match local_var_apikey.prefix {
381 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
382 None => local_var_key,
383 };
384 local_var_req_builder = local_var_req_builder.header("api-key", local_var_value);
385 };
386
387 let local_var_req = local_var_req_builder.build()?;
388 let local_var_resp = local_var_client.execute(local_var_req).await?;
389
390 let local_var_status = local_var_resp.status();
391 let local_var_content = local_var_resp.text().await?;
392
393 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
394 serde_json::from_str(&local_var_content).map_err(Error::from)
395 } else {
396 let local_var_entity: Option<GetSharedTemplateUrlError> = serde_json::from_str(&local_var_content).ok();
397 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
398 Err(Error::ResponseError(local_var_error))
399 }
400}
401
402pub async fn send_email_campaign_now(configuration: &configuration::Configuration, campaign_id: i64) -> Result<(), Error<SendEmailCampaignNowError>> {
403 let local_var_configuration = configuration;
404
405 let local_var_client = &local_var_configuration.client;
406
407 let local_var_uri_str = format!("{}/emailCampaigns/{campaignId}/sendNow", local_var_configuration.base_path, campaignId=campaign_id);
408 let mut local_var_req_builder = local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
409
410 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
411 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
412 }
413 if let Some(ref local_var_apikey) = local_var_configuration.api_key {
414 let local_var_key = local_var_apikey.key.clone();
415 let local_var_value = match local_var_apikey.prefix {
416 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
417 None => local_var_key,
418 };
419 local_var_req_builder = local_var_req_builder.header("api-key", local_var_value);
420 };
421
422 let local_var_req = local_var_req_builder.build()?;
423 let local_var_resp = local_var_client.execute(local_var_req).await?;
424
425 let local_var_status = local_var_resp.status();
426 let local_var_content = local_var_resp.text().await?;
427
428 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
429 Ok(())
430 } else {
431 let local_var_entity: Option<SendEmailCampaignNowError> = serde_json::from_str(&local_var_content).ok();
432 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
433 Err(Error::ResponseError(local_var_error))
434 }
435}
436
437pub async fn send_report(configuration: &configuration::Configuration, campaign_id: i64, send_report: crate::models::SendReport) -> Result<(), Error<SendReportError>> {
439 let local_var_configuration = configuration;
440
441 let local_var_client = &local_var_configuration.client;
442
443 let local_var_uri_str = format!("{}/emailCampaigns/{campaignId}/sendReport", local_var_configuration.base_path, campaignId=campaign_id);
444 let mut local_var_req_builder = local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
445
446 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
447 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
448 }
449 if let Some(ref local_var_apikey) = local_var_configuration.api_key {
450 let local_var_key = local_var_apikey.key.clone();
451 let local_var_value = match local_var_apikey.prefix {
452 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
453 None => local_var_key,
454 };
455 local_var_req_builder = local_var_req_builder.header("api-key", local_var_value);
456 };
457 local_var_req_builder = local_var_req_builder.json(&send_report);
458
459 let local_var_req = local_var_req_builder.build()?;
460 let local_var_resp = local_var_client.execute(local_var_req).await?;
461
462 let local_var_status = local_var_resp.status();
463 let local_var_content = local_var_resp.text().await?;
464
465 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
466 Ok(())
467 } else {
468 let local_var_entity: Option<SendReportError> = serde_json::from_str(&local_var_content).ok();
469 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
470 Err(Error::ResponseError(local_var_error))
471 }
472}
473
474pub async fn send_test_email(configuration: &configuration::Configuration, campaign_id: i64, email_to: crate::models::SendTestEmail) -> Result<(), Error<SendTestEmailError>> {
475 let local_var_configuration = configuration;
476
477 let local_var_client = &local_var_configuration.client;
478
479 let local_var_uri_str = format!("{}/emailCampaigns/{campaignId}/sendTest", local_var_configuration.base_path, campaignId=campaign_id);
480 let mut local_var_req_builder = local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
481
482 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
483 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
484 }
485 if let Some(ref local_var_apikey) = local_var_configuration.api_key {
486 let local_var_key = local_var_apikey.key.clone();
487 let local_var_value = match local_var_apikey.prefix {
488 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
489 None => local_var_key,
490 };
491 local_var_req_builder = local_var_req_builder.header("api-key", local_var_value);
492 };
493 local_var_req_builder = local_var_req_builder.json(&email_to);
494
495 let local_var_req = local_var_req_builder.build()?;
496 let local_var_resp = local_var_client.execute(local_var_req).await?;
497
498 let local_var_status = local_var_resp.status();
499 let local_var_content = local_var_resp.text().await?;
500
501 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
502 Ok(())
503 } else {
504 let local_var_entity: Option<SendTestEmailError> = serde_json::from_str(&local_var_content).ok();
505 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
506 Err(Error::ResponseError(local_var_error))
507 }
508}
509
510pub async fn update_campaign_status(configuration: &configuration::Configuration, campaign_id: i64, status: crate::models::UpdateCampaignStatus) -> Result<(), Error<UpdateCampaignStatusError>> {
511 let local_var_configuration = configuration;
512
513 let local_var_client = &local_var_configuration.client;
514
515 let local_var_uri_str = format!("{}/emailCampaigns/{campaignId}/status", local_var_configuration.base_path, campaignId=campaign_id);
516 let mut local_var_req_builder = local_var_client.request(reqwest::Method::PUT, local_var_uri_str.as_str());
517
518 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
519 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
520 }
521 if let Some(ref local_var_apikey) = local_var_configuration.api_key {
522 let local_var_key = local_var_apikey.key.clone();
523 let local_var_value = match local_var_apikey.prefix {
524 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
525 None => local_var_key,
526 };
527 local_var_req_builder = local_var_req_builder.header("api-key", local_var_value);
528 };
529 local_var_req_builder = local_var_req_builder.json(&status);
530
531 let local_var_req = local_var_req_builder.build()?;
532 let local_var_resp = local_var_client.execute(local_var_req).await?;
533
534 let local_var_status = local_var_resp.status();
535 let local_var_content = local_var_resp.text().await?;
536
537 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
538 Ok(())
539 } else {
540 let local_var_entity: Option<UpdateCampaignStatusError> = serde_json::from_str(&local_var_content).ok();
541 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
542 Err(Error::ResponseError(local_var_error))
543 }
544}
545
546pub async fn update_email_campaign(configuration: &configuration::Configuration, campaign_id: i64, email_campaign: crate::models::UpdateEmailCampaign) -> Result<(), Error<UpdateEmailCampaignError>> {
547 let local_var_configuration = configuration;
548
549 let local_var_client = &local_var_configuration.client;
550
551 let local_var_uri_str = format!("{}/emailCampaigns/{campaignId}", local_var_configuration.base_path, campaignId=campaign_id);
552 let mut local_var_req_builder = local_var_client.request(reqwest::Method::PUT, local_var_uri_str.as_str());
553
554 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
555 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
556 }
557 if let Some(ref local_var_apikey) = local_var_configuration.api_key {
558 let local_var_key = local_var_apikey.key.clone();
559 let local_var_value = match local_var_apikey.prefix {
560 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
561 None => local_var_key,
562 };
563 local_var_req_builder = local_var_req_builder.header("api-key", local_var_value);
564 };
565 local_var_req_builder = local_var_req_builder.json(&email_campaign);
566
567 let local_var_req = local_var_req_builder.build()?;
568 let local_var_resp = local_var_client.execute(local_var_req).await?;
569
570 let local_var_status = local_var_resp.status();
571 let local_var_content = local_var_resp.text().await?;
572
573 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
574 Ok(())
575 } else {
576 let local_var_entity: Option<UpdateEmailCampaignError> = serde_json::from_str(&local_var_content).ok();
577 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
578 Err(Error::ResponseError(local_var_error))
579 }
580}
581
582pub async fn upload_image_to_gallery(configuration: &configuration::Configuration, upload_image: crate::models::UploadImageToGallery) -> Result<(), Error<UploadImageToGalleryError>> {
583 let local_var_configuration = configuration;
584
585 let local_var_client = &local_var_configuration.client;
586
587 let local_var_uri_str = format!("{}/emailCampaigns/images", local_var_configuration.base_path);
588 let mut local_var_req_builder = local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
589
590 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
591 local_var_req_builder = local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
592 }
593 if let Some(ref local_var_apikey) = local_var_configuration.api_key {
594 let local_var_key = local_var_apikey.key.clone();
595 let local_var_value = match local_var_apikey.prefix {
596 Some(ref local_var_prefix) => format!("{} {}", local_var_prefix, local_var_key),
597 None => local_var_key,
598 };
599 local_var_req_builder = local_var_req_builder.header("api-key", local_var_value);
600 };
601 local_var_req_builder = local_var_req_builder.json(&upload_image);
602
603 let local_var_req = local_var_req_builder.build()?;
604 let local_var_resp = local_var_client.execute(local_var_req).await?;
605
606 let local_var_status = local_var_resp.status();
607 let local_var_content = local_var_resp.text().await?;
608
609 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
610 Ok(())
611 } else {
612 let local_var_entity: Option<UploadImageToGalleryError> = serde_json::from_str(&local_var_content).ok();
613 let local_var_error = ResponseContent { status: local_var_status, content: local_var_content, entity: local_var_entity };
614 Err(Error::ResponseError(local_var_error))
615 }
616}
617