1use reqwest;
12
13use super::{configuration, Error};
14use crate::apis::ResponseContent;
15
16#[derive(Clone, Debug)]
18pub struct ProjectsCreateParams {
19 pub project_update: crate::models::ProjectUpdate,
20}
21
22#[derive(Clone, Debug)]
24pub struct ProjectsFollowCreateParams {
25 pub id: i32,
27 pub project: crate::models::Project,
28}
29
30#[derive(Clone, Debug)]
32pub struct ProjectsInviteMembersCreateParams {
33 pub id: i32,
35 pub project: crate::models::Project,
36}
37
38#[derive(Clone, Debug)]
40pub struct ProjectsIsFollowingRetrieveParams {
41 pub id: i32,
43}
44
45#[derive(Clone, Debug)]
47pub struct ProjectsJoinCreateParams {
48 pub id: i32,
50 pub project: crate::models::Project,
51}
52
53#[derive(Clone, Debug)]
55pub struct ProjectsLeaveCreateParams {
56 pub id: i32,
58 pub project: crate::models::Project,
59}
60
61#[derive(Clone, Debug)]
63pub struct ProjectsListParams {
64 pub limit: Option<i32>,
66 pub offset: Option<i32>,
68}
69
70#[derive(Clone, Debug)]
72pub struct ProjectsMembersCreateParams {
73 pub id: i32,
75 pub user_id: String,
76 pub project: crate::models::Project,
77}
78
79#[derive(Clone, Debug)]
81pub struct ProjectsMembersDestroyParams {
82 pub id: i32,
84 pub user_id: String,
85}
86
87#[derive(Clone, Debug)]
89pub struct ProjectsMembersPartialUpdateParams {
90 pub id: i32,
92 pub user_id: String,
93 pub patched_project: Option<crate::models::PatchedProject>,
94}
95
96#[derive(Clone, Debug)]
98pub struct ProjectsMembersUpdateParams {
99 pub id: i32,
101 pub user_id: String,
102 pub project: crate::models::Project,
103}
104
105#[derive(Clone, Debug)]
107pub struct ProjectsPartialUpdateParams {
108 pub id: i32,
110 pub patched_project: Option<crate::models::PatchedProject>,
111}
112
113#[derive(Clone, Debug)]
115pub struct ProjectsPersonalStatsRetrieveParams {
116 pub id: i32,
118}
119
120#[derive(Clone, Debug)]
122pub struct ProjectsRegisterCreateParams {
123 pub id: i32,
125 pub project: crate::models::Project,
126}
127
128#[derive(Clone, Debug)]
130pub struct ProjectsRegisteredRetrieveParams {
131 pub id: i32,
133}
134
135#[derive(Clone, Debug)]
137pub struct ProjectsRetrieveParams {
138 pub id: i32,
140}
141
142#[derive(Clone, Debug)]
144pub struct ProjectsUnfollowCreateParams {
145 pub id: i32,
147 pub project: crate::models::Project,
148}
149
150#[derive(Clone, Debug)]
152pub struct ProjectsUpdateParams {
153 pub id: i32,
155 pub project_update: crate::models::ProjectUpdate,
156}
157
158#[derive(Debug, Clone, Serialize, Deserialize)]
160#[serde(untagged)]
161pub enum ProjectsCreateError {
162 UnknownValue(serde_json::Value),
163}
164
165#[derive(Debug, Clone, Serialize, Deserialize)]
167#[serde(untagged)]
168pub enum ProjectsFollowCreateError {
169 UnknownValue(serde_json::Value),
170}
171
172#[derive(Debug, Clone, Serialize, Deserialize)]
174#[serde(untagged)]
175pub enum ProjectsInviteMembersCreateError {
176 UnknownValue(serde_json::Value),
177}
178
179#[derive(Debug, Clone, Serialize, Deserialize)]
181#[serde(untagged)]
182pub enum ProjectsIsFollowingRetrieveError {
183 UnknownValue(serde_json::Value),
184}
185
186#[derive(Debug, Clone, Serialize, Deserialize)]
188#[serde(untagged)]
189pub enum ProjectsJoinCreateError {
190 UnknownValue(serde_json::Value),
191}
192
193#[derive(Debug, Clone, Serialize, Deserialize)]
195#[serde(untagged)]
196pub enum ProjectsLeaveCreateError {
197 UnknownValue(serde_json::Value),
198}
199
200#[derive(Debug, Clone, Serialize, Deserialize)]
202#[serde(untagged)]
203pub enum ProjectsListError {
204 UnknownValue(serde_json::Value),
205}
206
207#[derive(Debug, Clone, Serialize, Deserialize)]
209#[serde(untagged)]
210pub enum ProjectsMembersCreateError {
211 UnknownValue(serde_json::Value),
212}
213
214#[derive(Debug, Clone, Serialize, Deserialize)]
216#[serde(untagged)]
217pub enum ProjectsMembersDestroyError {
218 UnknownValue(serde_json::Value),
219}
220
221#[derive(Debug, Clone, Serialize, Deserialize)]
223#[serde(untagged)]
224pub enum ProjectsMembersPartialUpdateError {
225 UnknownValue(serde_json::Value),
226}
227
228#[derive(Debug, Clone, Serialize, Deserialize)]
230#[serde(untagged)]
231pub enum ProjectsMembersUpdateError {
232 UnknownValue(serde_json::Value),
233}
234
235#[derive(Debug, Clone, Serialize, Deserialize)]
237#[serde(untagged)]
238pub enum ProjectsPartialUpdateError {
239 UnknownValue(serde_json::Value),
240}
241
242#[derive(Debug, Clone, Serialize, Deserialize)]
244#[serde(untagged)]
245pub enum ProjectsPersonalStatsRetrieveError {
246 UnknownValue(serde_json::Value),
247}
248
249#[derive(Debug, Clone, Serialize, Deserialize)]
251#[serde(untagged)]
252pub enum ProjectsRegisterCreateError {
253 UnknownValue(serde_json::Value),
254}
255
256#[derive(Debug, Clone, Serialize, Deserialize)]
258#[serde(untagged)]
259pub enum ProjectsRegisteredRetrieveError {
260 UnknownValue(serde_json::Value),
261}
262
263#[derive(Debug, Clone, Serialize, Deserialize)]
265#[serde(untagged)]
266pub enum ProjectsRetrieveError {
267 UnknownValue(serde_json::Value),
268}
269
270#[derive(Debug, Clone, Serialize, Deserialize)]
272#[serde(untagged)]
273pub enum ProjectsUnfollowCreateError {
274 UnknownValue(serde_json::Value),
275}
276
277#[derive(Debug, Clone, Serialize, Deserialize)]
279#[serde(untagged)]
280pub enum ProjectsUpdateError {
281 UnknownValue(serde_json::Value),
282}
283
284pub async fn projects_create(
285 configuration: &configuration::Configuration,
286 params: ProjectsCreateParams,
287) -> Result<crate::models::ProjectUpdate, Error<ProjectsCreateError>> {
288 let local_var_configuration = configuration;
289
290 let project_update = params.project_update;
292
293 let local_var_client = &local_var_configuration.client;
294
295 let local_var_uri_str = format!("{}/api2/projects/", local_var_configuration.base_path);
296 let mut local_var_req_builder =
297 local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
298
299 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
300 local_var_req_builder =
301 local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
302 }
303 if let Some(ref local_var_auth_conf) = local_var_configuration.basic_auth {
304 local_var_req_builder = local_var_req_builder
305 .basic_auth(local_var_auth_conf.0.clone(), local_var_auth_conf.1.clone());
306 };
307 if let Some(ref local_var_cookie) = local_var_configuration.cookie {
308 local_var_req_builder =
309 local_var_req_builder.header("Cookie", format!("sessionid={}", local_var_cookie.value));
310 };
311 if let Some(ref local_var_apikey) = local_var_configuration.api_key {
312 let local_var_key = local_var_apikey.key.clone();
313 let local_var_value = match local_var_apikey.prefix {
314 Some(ref local_var_prefix) => format!("{local_var_prefix} {local_var_key}"),
315 None => local_var_key,
316 };
317 local_var_req_builder = local_var_req_builder.header("Authorization", local_var_value);
318 };
319 local_var_req_builder = local_var_req_builder.json(&project_update);
320
321 let local_var_req = local_var_req_builder.build()?;
322 let local_var_resp = local_var_client.execute(local_var_req).await?;
323
324 let local_var_status = local_var_resp.status();
325 let local_var_content = local_var_resp.text().await?;
326
327 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
328 serde_json::from_str(&local_var_content).map_err(Error::from)
329 } else {
330 let local_var_entity: Option<ProjectsCreateError> =
331 serde_json::from_str(&local_var_content).ok();
332 let local_var_error = ResponseContent {
333 status: local_var_status,
334 content: local_var_content,
335 entity: local_var_entity,
336 };
337 Err(Error::ResponseError(local_var_error))
338 }
339}
340
341pub async fn projects_follow_create(
342 configuration: &configuration::Configuration,
343 params: ProjectsFollowCreateParams,
344) -> Result<crate::models::Project, Error<ProjectsFollowCreateError>> {
345 let local_var_configuration = configuration;
346
347 let id = params.id;
349 let project = params.project;
350
351 let local_var_client = &local_var_configuration.client;
352
353 let local_var_uri_str = format!(
354 "{}/api2/projects/{id}/follow/",
355 local_var_configuration.base_path,
356 id = id
357 );
358 let mut local_var_req_builder =
359 local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
360
361 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
362 local_var_req_builder =
363 local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
364 }
365 if let Some(ref local_var_auth_conf) = local_var_configuration.basic_auth {
366 local_var_req_builder = local_var_req_builder
367 .basic_auth(local_var_auth_conf.0.clone(), local_var_auth_conf.1.clone());
368 };
369 if let Some(ref local_var_cookie) = local_var_configuration.cookie {
370 local_var_req_builder =
371 local_var_req_builder.header("Cookie", format!("sessionid={}", local_var_cookie.value));
372 };
373 if let Some(ref local_var_apikey) = local_var_configuration.api_key {
374 let local_var_key = local_var_apikey.key.clone();
375 let local_var_value = match local_var_apikey.prefix {
376 Some(ref local_var_prefix) => format!("{local_var_prefix} {local_var_key}"),
377 None => local_var_key,
378 };
379 local_var_req_builder = local_var_req_builder.header("Authorization", local_var_value);
380 };
381 local_var_req_builder = local_var_req_builder.json(&project);
382
383 let local_var_req = local_var_req_builder.build()?;
384 let local_var_resp = local_var_client.execute(local_var_req).await?;
385
386 let local_var_status = local_var_resp.status();
387 let local_var_content = local_var_resp.text().await?;
388
389 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
390 serde_json::from_str(&local_var_content).map_err(Error::from)
391 } else {
392 let local_var_entity: Option<ProjectsFollowCreateError> =
393 serde_json::from_str(&local_var_content).ok();
394 let local_var_error = ResponseContent {
395 status: local_var_status,
396 content: local_var_content,
397 entity: local_var_entity,
398 };
399 Err(Error::ResponseError(local_var_error))
400 }
401}
402
403pub async fn projects_invite_members_create(
404 configuration: &configuration::Configuration,
405 params: ProjectsInviteMembersCreateParams,
406) -> Result<crate::models::Project, Error<ProjectsInviteMembersCreateError>> {
407 let local_var_configuration = configuration;
408
409 let id = params.id;
411 let project = params.project;
412
413 let local_var_client = &local_var_configuration.client;
414
415 let local_var_uri_str = format!(
416 "{}/api2/projects/{id}/invite-members/",
417 local_var_configuration.base_path,
418 id = id
419 );
420 let mut local_var_req_builder =
421 local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
422
423 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
424 local_var_req_builder =
425 local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
426 }
427 if let Some(ref local_var_auth_conf) = local_var_configuration.basic_auth {
428 local_var_req_builder = local_var_req_builder
429 .basic_auth(local_var_auth_conf.0.clone(), local_var_auth_conf.1.clone());
430 };
431 if let Some(ref local_var_cookie) = local_var_configuration.cookie {
432 local_var_req_builder =
433 local_var_req_builder.header("Cookie", format!("sessionid={}", local_var_cookie.value));
434 };
435 if let Some(ref local_var_apikey) = local_var_configuration.api_key {
436 let local_var_key = local_var_apikey.key.clone();
437 let local_var_value = match local_var_apikey.prefix {
438 Some(ref local_var_prefix) => format!("{local_var_prefix} {local_var_key}"),
439 None => local_var_key,
440 };
441 local_var_req_builder = local_var_req_builder.header("Authorization", local_var_value);
442 };
443 local_var_req_builder = local_var_req_builder.json(&project);
444
445 let local_var_req = local_var_req_builder.build()?;
446 let local_var_resp = local_var_client.execute(local_var_req).await?;
447
448 let local_var_status = local_var_resp.status();
449 let local_var_content = local_var_resp.text().await?;
450
451 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
452 serde_json::from_str(&local_var_content).map_err(Error::from)
453 } else {
454 let local_var_entity: Option<ProjectsInviteMembersCreateError> =
455 serde_json::from_str(&local_var_content).ok();
456 let local_var_error = ResponseContent {
457 status: local_var_status,
458 content: local_var_content,
459 entity: local_var_entity,
460 };
461 Err(Error::ResponseError(local_var_error))
462 }
463}
464
465pub async fn projects_is_following_retrieve(
466 configuration: &configuration::Configuration,
467 params: ProjectsIsFollowingRetrieveParams,
468) -> Result<crate::models::Project, Error<ProjectsIsFollowingRetrieveError>> {
469 let local_var_configuration = configuration;
470
471 let id = params.id;
473
474 let local_var_client = &local_var_configuration.client;
475
476 let local_var_uri_str = format!(
477 "{}/api2/projects/{id}/is-following/",
478 local_var_configuration.base_path,
479 id = id
480 );
481 let mut local_var_req_builder =
482 local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
483
484 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
485 local_var_req_builder =
486 local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
487 }
488 if let Some(ref local_var_auth_conf) = local_var_configuration.basic_auth {
489 local_var_req_builder = local_var_req_builder
490 .basic_auth(local_var_auth_conf.0.clone(), local_var_auth_conf.1.clone());
491 };
492 if let Some(ref local_var_cookie) = local_var_configuration.cookie {
493 local_var_req_builder =
494 local_var_req_builder.header("Cookie", format!("sessionid={}", local_var_cookie.value));
495 };
496 if let Some(ref local_var_apikey) = local_var_configuration.api_key {
497 let local_var_key = local_var_apikey.key.clone();
498 let local_var_value = match local_var_apikey.prefix {
499 Some(ref local_var_prefix) => format!("{local_var_prefix} {local_var_key}"),
500 None => local_var_key,
501 };
502 local_var_req_builder = local_var_req_builder.header("Authorization", local_var_value);
503 };
504
505 let local_var_req = local_var_req_builder.build()?;
506 let local_var_resp = local_var_client.execute(local_var_req).await?;
507
508 let local_var_status = local_var_resp.status();
509 let local_var_content = local_var_resp.text().await?;
510
511 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
512 serde_json::from_str(&local_var_content).map_err(Error::from)
513 } else {
514 let local_var_entity: Option<ProjectsIsFollowingRetrieveError> =
515 serde_json::from_str(&local_var_content).ok();
516 let local_var_error = ResponseContent {
517 status: local_var_status,
518 content: local_var_content,
519 entity: local_var_entity,
520 };
521 Err(Error::ResponseError(local_var_error))
522 }
523}
524
525pub async fn projects_join_create(
526 configuration: &configuration::Configuration,
527 params: ProjectsJoinCreateParams,
528) -> Result<crate::models::Project, Error<ProjectsJoinCreateError>> {
529 let local_var_configuration = configuration;
530
531 let id = params.id;
533 let project = params.project;
534
535 let local_var_client = &local_var_configuration.client;
536
537 let local_var_uri_str = format!(
538 "{}/api2/projects/{id}/join/",
539 local_var_configuration.base_path,
540 id = id
541 );
542 let mut local_var_req_builder =
543 local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
544
545 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
546 local_var_req_builder =
547 local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
548 }
549 if let Some(ref local_var_auth_conf) = local_var_configuration.basic_auth {
550 local_var_req_builder = local_var_req_builder
551 .basic_auth(local_var_auth_conf.0.clone(), local_var_auth_conf.1.clone());
552 };
553 if let Some(ref local_var_cookie) = local_var_configuration.cookie {
554 local_var_req_builder =
555 local_var_req_builder.header("Cookie", format!("sessionid={}", local_var_cookie.value));
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("Authorization", local_var_value);
564 };
565 local_var_req_builder = local_var_req_builder.json(&project);
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 serde_json::from_str(&local_var_content).map_err(Error::from)
575 } else {
576 let local_var_entity: Option<ProjectsJoinCreateError> =
577 serde_json::from_str(&local_var_content).ok();
578 let local_var_error = ResponseContent {
579 status: local_var_status,
580 content: local_var_content,
581 entity: local_var_entity,
582 };
583 Err(Error::ResponseError(local_var_error))
584 }
585}
586
587pub async fn projects_leave_create(
588 configuration: &configuration::Configuration,
589 params: ProjectsLeaveCreateParams,
590) -> Result<crate::models::Project, Error<ProjectsLeaveCreateError>> {
591 let local_var_configuration = configuration;
592
593 let id = params.id;
595 let project = params.project;
596
597 let local_var_client = &local_var_configuration.client;
598
599 let local_var_uri_str = format!(
600 "{}/api2/projects/{id}/leave/",
601 local_var_configuration.base_path,
602 id = id
603 );
604 let mut local_var_req_builder =
605 local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
606
607 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
608 local_var_req_builder =
609 local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
610 }
611 if let Some(ref local_var_auth_conf) = local_var_configuration.basic_auth {
612 local_var_req_builder = local_var_req_builder
613 .basic_auth(local_var_auth_conf.0.clone(), local_var_auth_conf.1.clone());
614 };
615 if let Some(ref local_var_cookie) = local_var_configuration.cookie {
616 local_var_req_builder =
617 local_var_req_builder.header("Cookie", format!("sessionid={}", local_var_cookie.value));
618 };
619 if let Some(ref local_var_apikey) = local_var_configuration.api_key {
620 let local_var_key = local_var_apikey.key.clone();
621 let local_var_value = match local_var_apikey.prefix {
622 Some(ref local_var_prefix) => format!("{local_var_prefix} {local_var_key}"),
623 None => local_var_key,
624 };
625 local_var_req_builder = local_var_req_builder.header("Authorization", local_var_value);
626 };
627 local_var_req_builder = local_var_req_builder.json(&project);
628
629 let local_var_req = local_var_req_builder.build()?;
630 let local_var_resp = local_var_client.execute(local_var_req).await?;
631
632 let local_var_status = local_var_resp.status();
633 let local_var_content = local_var_resp.text().await?;
634
635 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
636 serde_json::from_str(&local_var_content).map_err(Error::from)
637 } else {
638 let local_var_entity: Option<ProjectsLeaveCreateError> =
639 serde_json::from_str(&local_var_content).ok();
640 let local_var_error = ResponseContent {
641 status: local_var_status,
642 content: local_var_content,
643 entity: local_var_entity,
644 };
645 Err(Error::ResponseError(local_var_error))
646 }
647}
648
649pub async fn projects_list(
650 configuration: &configuration::Configuration,
651 params: ProjectsListParams,
652) -> Result<crate::models::PaginatedProjectList, Error<ProjectsListError>> {
653 let local_var_configuration = configuration;
654
655 let limit = params.limit;
657 let offset = params.offset;
658
659 let local_var_client = &local_var_configuration.client;
660
661 let local_var_uri_str = format!("{}/api2/projects/", local_var_configuration.base_path);
662 let mut local_var_req_builder =
663 local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
664
665 if let Some(ref local_var_str) = limit {
666 local_var_req_builder =
667 local_var_req_builder.query(&[("limit", &local_var_str.to_string())]);
668 }
669 if let Some(ref local_var_str) = offset {
670 local_var_req_builder =
671 local_var_req_builder.query(&[("offset", &local_var_str.to_string())]);
672 }
673 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
674 local_var_req_builder =
675 local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
676 }
677 if let Some(ref local_var_auth_conf) = local_var_configuration.basic_auth {
678 local_var_req_builder = local_var_req_builder
679 .basic_auth(local_var_auth_conf.0.clone(), local_var_auth_conf.1.clone());
680 };
681 if let Some(ref local_var_cookie) = local_var_configuration.cookie {
682 local_var_req_builder =
683 local_var_req_builder.header("Cookie", format!("sessionid={}", local_var_cookie.value));
684 };
685 if let Some(ref local_var_apikey) = local_var_configuration.api_key {
686 let local_var_key = local_var_apikey.key.clone();
687 let local_var_value = match local_var_apikey.prefix {
688 Some(ref local_var_prefix) => format!("{local_var_prefix} {local_var_key}"),
689 None => local_var_key,
690 };
691 local_var_req_builder = local_var_req_builder.header("Authorization", local_var_value);
692 };
693
694 let local_var_req = local_var_req_builder.build()?;
695 let local_var_resp = local_var_client.execute(local_var_req).await?;
696
697 let local_var_status = local_var_resp.status();
698 let local_var_content = local_var_resp.text().await?;
699
700 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
701 serde_json::from_str(&local_var_content).map_err(Error::from)
702 } else {
703 let local_var_entity: Option<ProjectsListError> =
704 serde_json::from_str(&local_var_content).ok();
705 let local_var_error = ResponseContent {
706 status: local_var_status,
707 content: local_var_content,
708 entity: local_var_entity,
709 };
710 Err(Error::ResponseError(local_var_error))
711 }
712}
713
714pub async fn projects_members_create(
715 configuration: &configuration::Configuration,
716 params: ProjectsMembersCreateParams,
717) -> Result<crate::models::Project, Error<ProjectsMembersCreateError>> {
718 let local_var_configuration = configuration;
719
720 let id = params.id;
722 let user_id = params.user_id;
723 let project = params.project;
724
725 let local_var_client = &local_var_configuration.client;
726
727 let local_var_uri_str = format!(
728 "{}/api2/projects/{id}/members/{user_id}/",
729 local_var_configuration.base_path,
730 id = id,
731 user_id = crate::apis::urlencode(user_id)
732 );
733 let mut local_var_req_builder =
734 local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
735
736 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
737 local_var_req_builder =
738 local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
739 }
740 if let Some(ref local_var_auth_conf) = local_var_configuration.basic_auth {
741 local_var_req_builder = local_var_req_builder
742 .basic_auth(local_var_auth_conf.0.clone(), local_var_auth_conf.1.clone());
743 };
744 if let Some(ref local_var_cookie) = local_var_configuration.cookie {
745 local_var_req_builder =
746 local_var_req_builder.header("Cookie", format!("sessionid={}", local_var_cookie.value));
747 };
748 if let Some(ref local_var_apikey) = local_var_configuration.api_key {
749 let local_var_key = local_var_apikey.key.clone();
750 let local_var_value = match local_var_apikey.prefix {
751 Some(ref local_var_prefix) => format!("{local_var_prefix} {local_var_key}"),
752 None => local_var_key,
753 };
754 local_var_req_builder = local_var_req_builder.header("Authorization", local_var_value);
755 };
756 local_var_req_builder = local_var_req_builder.json(&project);
757
758 let local_var_req = local_var_req_builder.build()?;
759 let local_var_resp = local_var_client.execute(local_var_req).await?;
760
761 let local_var_status = local_var_resp.status();
762 let local_var_content = local_var_resp.text().await?;
763
764 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
765 serde_json::from_str(&local_var_content).map_err(Error::from)
766 } else {
767 let local_var_entity: Option<ProjectsMembersCreateError> =
768 serde_json::from_str(&local_var_content).ok();
769 let local_var_error = ResponseContent {
770 status: local_var_status,
771 content: local_var_content,
772 entity: local_var_entity,
773 };
774 Err(Error::ResponseError(local_var_error))
775 }
776}
777
778pub async fn projects_members_destroy(
779 configuration: &configuration::Configuration,
780 params: ProjectsMembersDestroyParams,
781) -> Result<(), Error<ProjectsMembersDestroyError>> {
782 let local_var_configuration = configuration;
783
784 let id = params.id;
786 let user_id = params.user_id;
787
788 let local_var_client = &local_var_configuration.client;
789
790 let local_var_uri_str = format!(
791 "{}/api2/projects/{id}/members/{user_id}/",
792 local_var_configuration.base_path,
793 id = id,
794 user_id = crate::apis::urlencode(user_id)
795 );
796 let mut local_var_req_builder =
797 local_var_client.request(reqwest::Method::DELETE, local_var_uri_str.as_str());
798
799 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
800 local_var_req_builder =
801 local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
802 }
803 if let Some(ref local_var_auth_conf) = local_var_configuration.basic_auth {
804 local_var_req_builder = local_var_req_builder
805 .basic_auth(local_var_auth_conf.0.clone(), local_var_auth_conf.1.clone());
806 };
807 if let Some(ref local_var_cookie) = local_var_configuration.cookie {
808 local_var_req_builder =
809 local_var_req_builder.header("Cookie", format!("sessionid={}", local_var_cookie.value));
810 };
811 if let Some(ref local_var_apikey) = local_var_configuration.api_key {
812 let local_var_key = local_var_apikey.key.clone();
813 let local_var_value = match local_var_apikey.prefix {
814 Some(ref local_var_prefix) => format!("{local_var_prefix} {local_var_key}"),
815 None => local_var_key,
816 };
817 local_var_req_builder = local_var_req_builder.header("Authorization", local_var_value);
818 };
819
820 let local_var_req = local_var_req_builder.build()?;
821 let local_var_resp = local_var_client.execute(local_var_req).await?;
822
823 let local_var_status = local_var_resp.status();
824 let local_var_content = local_var_resp.text().await?;
825
826 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
827 Ok(())
828 } else {
829 let local_var_entity: Option<ProjectsMembersDestroyError> =
830 serde_json::from_str(&local_var_content).ok();
831 let local_var_error = ResponseContent {
832 status: local_var_status,
833 content: local_var_content,
834 entity: local_var_entity,
835 };
836 Err(Error::ResponseError(local_var_error))
837 }
838}
839
840pub async fn projects_members_partial_update(
841 configuration: &configuration::Configuration,
842 params: ProjectsMembersPartialUpdateParams,
843) -> Result<crate::models::Project, Error<ProjectsMembersPartialUpdateError>> {
844 let local_var_configuration = configuration;
845
846 let id = params.id;
848 let user_id = params.user_id;
849 let patched_project = params.patched_project;
850
851 let local_var_client = &local_var_configuration.client;
852
853 let local_var_uri_str = format!(
854 "{}/api2/projects/{id}/members/{user_id}/",
855 local_var_configuration.base_path,
856 id = id,
857 user_id = crate::apis::urlencode(user_id)
858 );
859 let mut local_var_req_builder =
860 local_var_client.request(reqwest::Method::PATCH, local_var_uri_str.as_str());
861
862 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
863 local_var_req_builder =
864 local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
865 }
866 if let Some(ref local_var_auth_conf) = local_var_configuration.basic_auth {
867 local_var_req_builder = local_var_req_builder
868 .basic_auth(local_var_auth_conf.0.clone(), local_var_auth_conf.1.clone());
869 };
870 if let Some(ref local_var_cookie) = local_var_configuration.cookie {
871 local_var_req_builder =
872 local_var_req_builder.header("Cookie", format!("sessionid={}", local_var_cookie.value));
873 };
874 if let Some(ref local_var_apikey) = local_var_configuration.api_key {
875 let local_var_key = local_var_apikey.key.clone();
876 let local_var_value = match local_var_apikey.prefix {
877 Some(ref local_var_prefix) => format!("{local_var_prefix} {local_var_key}"),
878 None => local_var_key,
879 };
880 local_var_req_builder = local_var_req_builder.header("Authorization", local_var_value);
881 };
882 local_var_req_builder = local_var_req_builder.json(&patched_project);
883
884 let local_var_req = local_var_req_builder.build()?;
885 let local_var_resp = local_var_client.execute(local_var_req).await?;
886
887 let local_var_status = local_var_resp.status();
888 let local_var_content = local_var_resp.text().await?;
889
890 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
891 serde_json::from_str(&local_var_content).map_err(Error::from)
892 } else {
893 let local_var_entity: Option<ProjectsMembersPartialUpdateError> =
894 serde_json::from_str(&local_var_content).ok();
895 let local_var_error = ResponseContent {
896 status: local_var_status,
897 content: local_var_content,
898 entity: local_var_entity,
899 };
900 Err(Error::ResponseError(local_var_error))
901 }
902}
903
904pub async fn projects_members_update(
905 configuration: &configuration::Configuration,
906 params: ProjectsMembersUpdateParams,
907) -> Result<crate::models::Project, Error<ProjectsMembersUpdateError>> {
908 let local_var_configuration = configuration;
909
910 let id = params.id;
912 let user_id = params.user_id;
913 let project = params.project;
914
915 let local_var_client = &local_var_configuration.client;
916
917 let local_var_uri_str = format!(
918 "{}/api2/projects/{id}/members/{user_id}/",
919 local_var_configuration.base_path,
920 id = id,
921 user_id = crate::apis::urlencode(user_id)
922 );
923 let mut local_var_req_builder =
924 local_var_client.request(reqwest::Method::PUT, local_var_uri_str.as_str());
925
926 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
927 local_var_req_builder =
928 local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
929 }
930 if let Some(ref local_var_auth_conf) = local_var_configuration.basic_auth {
931 local_var_req_builder = local_var_req_builder
932 .basic_auth(local_var_auth_conf.0.clone(), local_var_auth_conf.1.clone());
933 };
934 if let Some(ref local_var_cookie) = local_var_configuration.cookie {
935 local_var_req_builder =
936 local_var_req_builder.header("Cookie", format!("sessionid={}", local_var_cookie.value));
937 };
938 if let Some(ref local_var_apikey) = local_var_configuration.api_key {
939 let local_var_key = local_var_apikey.key.clone();
940 let local_var_value = match local_var_apikey.prefix {
941 Some(ref local_var_prefix) => format!("{local_var_prefix} {local_var_key}"),
942 None => local_var_key,
943 };
944 local_var_req_builder = local_var_req_builder.header("Authorization", local_var_value);
945 };
946 local_var_req_builder = local_var_req_builder.json(&project);
947
948 let local_var_req = local_var_req_builder.build()?;
949 let local_var_resp = local_var_client.execute(local_var_req).await?;
950
951 let local_var_status = local_var_resp.status();
952 let local_var_content = local_var_resp.text().await?;
953
954 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
955 serde_json::from_str(&local_var_content).map_err(Error::from)
956 } else {
957 let local_var_entity: Option<ProjectsMembersUpdateError> =
958 serde_json::from_str(&local_var_content).ok();
959 let local_var_error = ResponseContent {
960 status: local_var_status,
961 content: local_var_content,
962 entity: local_var_entity,
963 };
964 Err(Error::ResponseError(local_var_error))
965 }
966}
967
968pub async fn projects_partial_update(
969 configuration: &configuration::Configuration,
970 params: ProjectsPartialUpdateParams,
971) -> Result<crate::models::Project, Error<ProjectsPartialUpdateError>> {
972 let local_var_configuration = configuration;
973
974 let id = params.id;
976 let patched_project = params.patched_project;
977
978 let local_var_client = &local_var_configuration.client;
979
980 let local_var_uri_str = format!(
981 "{}/api2/projects/{id}/",
982 local_var_configuration.base_path,
983 id = id
984 );
985 let mut local_var_req_builder =
986 local_var_client.request(reqwest::Method::PATCH, local_var_uri_str.as_str());
987
988 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
989 local_var_req_builder =
990 local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
991 }
992 if let Some(ref local_var_auth_conf) = local_var_configuration.basic_auth {
993 local_var_req_builder = local_var_req_builder
994 .basic_auth(local_var_auth_conf.0.clone(), local_var_auth_conf.1.clone());
995 };
996 if let Some(ref local_var_cookie) = local_var_configuration.cookie {
997 local_var_req_builder =
998 local_var_req_builder.header("Cookie", format!("sessionid={}", local_var_cookie.value));
999 };
1000 if let Some(ref local_var_apikey) = local_var_configuration.api_key {
1001 let local_var_key = local_var_apikey.key.clone();
1002 let local_var_value = match local_var_apikey.prefix {
1003 Some(ref local_var_prefix) => format!("{local_var_prefix} {local_var_key}"),
1004 None => local_var_key,
1005 };
1006 local_var_req_builder = local_var_req_builder.header("Authorization", local_var_value);
1007 };
1008 local_var_req_builder = local_var_req_builder.json(&patched_project);
1009
1010 let local_var_req = local_var_req_builder.build()?;
1011 let local_var_resp = local_var_client.execute(local_var_req).await?;
1012
1013 let local_var_status = local_var_resp.status();
1014 let local_var_content = local_var_resp.text().await?;
1015
1016 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1017 serde_json::from_str(&local_var_content).map_err(Error::from)
1018 } else {
1019 let local_var_entity: Option<ProjectsPartialUpdateError> =
1020 serde_json::from_str(&local_var_content).ok();
1021 let local_var_error = ResponseContent {
1022 status: local_var_status,
1023 content: local_var_content,
1024 entity: local_var_entity,
1025 };
1026 Err(Error::ResponseError(local_var_error))
1027 }
1028}
1029
1030pub async fn projects_personal_stats_retrieve(
1031 configuration: &configuration::Configuration,
1032 params: ProjectsPersonalStatsRetrieveParams,
1033) -> Result<crate::models::Project, Error<ProjectsPersonalStatsRetrieveError>> {
1034 let local_var_configuration = configuration;
1035
1036 let id = params.id;
1038
1039 let local_var_client = &local_var_configuration.client;
1040
1041 let local_var_uri_str = format!(
1042 "{}/api2/projects/{id}/personal-stats/",
1043 local_var_configuration.base_path,
1044 id = id
1045 );
1046 let mut local_var_req_builder =
1047 local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
1048
1049 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
1050 local_var_req_builder =
1051 local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
1052 }
1053 if let Some(ref local_var_auth_conf) = local_var_configuration.basic_auth {
1054 local_var_req_builder = local_var_req_builder
1055 .basic_auth(local_var_auth_conf.0.clone(), local_var_auth_conf.1.clone());
1056 };
1057 if let Some(ref local_var_cookie) = local_var_configuration.cookie {
1058 local_var_req_builder =
1059 local_var_req_builder.header("Cookie", format!("sessionid={}", local_var_cookie.value));
1060 };
1061 if let Some(ref local_var_apikey) = local_var_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("Authorization", 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<ProjectsPersonalStatsRetrieveError> =
1080 serde_json::from_str(&local_var_content).ok();
1081 let local_var_error = ResponseContent {
1082 status: local_var_status,
1083 content: local_var_content,
1084 entity: local_var_entity,
1085 };
1086 Err(Error::ResponseError(local_var_error))
1087 }
1088}
1089
1090pub async fn projects_register_create(
1091 configuration: &configuration::Configuration,
1092 params: ProjectsRegisterCreateParams,
1093) -> Result<crate::models::Project, Error<ProjectsRegisterCreateError>> {
1094 let local_var_configuration = configuration;
1095
1096 let id = params.id;
1098 let project = params.project;
1099
1100 let local_var_client = &local_var_configuration.client;
1101
1102 let local_var_uri_str = format!(
1103 "{}/api2/projects/{id}/register/",
1104 local_var_configuration.base_path,
1105 id = id
1106 );
1107 let mut local_var_req_builder =
1108 local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
1109
1110 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
1111 local_var_req_builder =
1112 local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
1113 }
1114 if let Some(ref local_var_auth_conf) = local_var_configuration.basic_auth {
1115 local_var_req_builder = local_var_req_builder
1116 .basic_auth(local_var_auth_conf.0.clone(), local_var_auth_conf.1.clone());
1117 };
1118 if let Some(ref local_var_cookie) = local_var_configuration.cookie {
1119 local_var_req_builder =
1120 local_var_req_builder.header("Cookie", format!("sessionid={}", local_var_cookie.value));
1121 };
1122 if let Some(ref local_var_apikey) = local_var_configuration.api_key {
1123 let local_var_key = local_var_apikey.key.clone();
1124 let local_var_value = match local_var_apikey.prefix {
1125 Some(ref local_var_prefix) => format!("{local_var_prefix} {local_var_key}"),
1126 None => local_var_key,
1127 };
1128 local_var_req_builder = local_var_req_builder.header("Authorization", local_var_value);
1129 };
1130 local_var_req_builder = local_var_req_builder.json(&project);
1131
1132 let local_var_req = local_var_req_builder.build()?;
1133 let local_var_resp = local_var_client.execute(local_var_req).await?;
1134
1135 let local_var_status = local_var_resp.status();
1136 let local_var_content = local_var_resp.text().await?;
1137
1138 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1139 serde_json::from_str(&local_var_content).map_err(Error::from)
1140 } else {
1141 let local_var_entity: Option<ProjectsRegisterCreateError> =
1142 serde_json::from_str(&local_var_content).ok();
1143 let local_var_error = ResponseContent {
1144 status: local_var_status,
1145 content: local_var_content,
1146 entity: local_var_entity,
1147 };
1148 Err(Error::ResponseError(local_var_error))
1149 }
1150}
1151
1152pub async fn projects_registered_retrieve(
1153 configuration: &configuration::Configuration,
1154 params: ProjectsRegisteredRetrieveParams,
1155) -> Result<crate::models::Project, Error<ProjectsRegisteredRetrieveError>> {
1156 let local_var_configuration = configuration;
1157
1158 let id = params.id;
1160
1161 let local_var_client = &local_var_configuration.client;
1162
1163 let local_var_uri_str = format!(
1164 "{}/api2/projects/{id}/registered/",
1165 local_var_configuration.base_path,
1166 id = id
1167 );
1168 let mut local_var_req_builder =
1169 local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
1170
1171 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
1172 local_var_req_builder =
1173 local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
1174 }
1175 if let Some(ref local_var_auth_conf) = local_var_configuration.basic_auth {
1176 local_var_req_builder = local_var_req_builder
1177 .basic_auth(local_var_auth_conf.0.clone(), local_var_auth_conf.1.clone());
1178 };
1179 if let Some(ref local_var_cookie) = local_var_configuration.cookie {
1180 local_var_req_builder =
1181 local_var_req_builder.header("Cookie", format!("sessionid={}", local_var_cookie.value));
1182 };
1183 if let Some(ref local_var_apikey) = local_var_configuration.api_key {
1184 let local_var_key = local_var_apikey.key.clone();
1185 let local_var_value = match local_var_apikey.prefix {
1186 Some(ref local_var_prefix) => format!("{local_var_prefix} {local_var_key}"),
1187 None => local_var_key,
1188 };
1189 local_var_req_builder = local_var_req_builder.header("Authorization", local_var_value);
1190 };
1191
1192 let local_var_req = local_var_req_builder.build()?;
1193 let local_var_resp = local_var_client.execute(local_var_req).await?;
1194
1195 let local_var_status = local_var_resp.status();
1196 let local_var_content = local_var_resp.text().await?;
1197
1198 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1199 serde_json::from_str(&local_var_content).map_err(Error::from)
1200 } else {
1201 let local_var_entity: Option<ProjectsRegisteredRetrieveError> =
1202 serde_json::from_str(&local_var_content).ok();
1203 let local_var_error = ResponseContent {
1204 status: local_var_status,
1205 content: local_var_content,
1206 entity: local_var_entity,
1207 };
1208 Err(Error::ResponseError(local_var_error))
1209 }
1210}
1211
1212pub async fn projects_retrieve(
1213 configuration: &configuration::Configuration,
1214 params: ProjectsRetrieveParams,
1215) -> Result<crate::models::ProjectDetail, Error<ProjectsRetrieveError>> {
1216 let local_var_configuration = configuration;
1217
1218 let id = params.id;
1220
1221 let local_var_client = &local_var_configuration.client;
1222
1223 let local_var_uri_str = format!(
1224 "{}/api2/projects/{id}/",
1225 local_var_configuration.base_path,
1226 id = id
1227 );
1228 let mut local_var_req_builder =
1229 local_var_client.request(reqwest::Method::GET, local_var_uri_str.as_str());
1230
1231 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
1232 local_var_req_builder =
1233 local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
1234 }
1235 if let Some(ref local_var_auth_conf) = local_var_configuration.basic_auth {
1236 local_var_req_builder = local_var_req_builder
1237 .basic_auth(local_var_auth_conf.0.clone(), local_var_auth_conf.1.clone());
1238 };
1239 if let Some(ref local_var_cookie) = local_var_configuration.cookie {
1240 local_var_req_builder =
1241 local_var_req_builder.header("Cookie", format!("sessionid={}", local_var_cookie.value));
1242 };
1243 if let Some(ref local_var_apikey) = local_var_configuration.api_key {
1244 let local_var_key = local_var_apikey.key.clone();
1245 let local_var_value = match local_var_apikey.prefix {
1246 Some(ref local_var_prefix) => format!("{local_var_prefix} {local_var_key}"),
1247 None => local_var_key,
1248 };
1249 local_var_req_builder = local_var_req_builder.header("Authorization", local_var_value);
1250 };
1251
1252 let local_var_req = local_var_req_builder.build()?;
1253 let local_var_resp = local_var_client.execute(local_var_req).await?;
1254
1255 let local_var_status = local_var_resp.status();
1256 let local_var_content = local_var_resp.text().await?;
1257
1258 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1259 serde_json::from_str(&local_var_content).map_err(Error::from)
1260 } else {
1261 let local_var_entity: Option<ProjectsRetrieveError> =
1262 serde_json::from_str(&local_var_content).ok();
1263 let local_var_error = ResponseContent {
1264 status: local_var_status,
1265 content: local_var_content,
1266 entity: local_var_entity,
1267 };
1268 Err(Error::ResponseError(local_var_error))
1269 }
1270}
1271
1272pub async fn projects_unfollow_create(
1273 configuration: &configuration::Configuration,
1274 params: ProjectsUnfollowCreateParams,
1275) -> Result<crate::models::Project, Error<ProjectsUnfollowCreateError>> {
1276 let local_var_configuration = configuration;
1277
1278 let id = params.id;
1280 let project = params.project;
1281
1282 let local_var_client = &local_var_configuration.client;
1283
1284 let local_var_uri_str = format!(
1285 "{}/api2/projects/{id}/unfollow/",
1286 local_var_configuration.base_path,
1287 id = id
1288 );
1289 let mut local_var_req_builder =
1290 local_var_client.request(reqwest::Method::POST, local_var_uri_str.as_str());
1291
1292 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
1293 local_var_req_builder =
1294 local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
1295 }
1296 if let Some(ref local_var_auth_conf) = local_var_configuration.basic_auth {
1297 local_var_req_builder = local_var_req_builder
1298 .basic_auth(local_var_auth_conf.0.clone(), local_var_auth_conf.1.clone());
1299 };
1300 if let Some(ref local_var_cookie) = local_var_configuration.cookie {
1301 local_var_req_builder =
1302 local_var_req_builder.header("Cookie", format!("sessionid={}", local_var_cookie.value));
1303 };
1304 if let Some(ref local_var_apikey) = local_var_configuration.api_key {
1305 let local_var_key = local_var_apikey.key.clone();
1306 let local_var_value = match local_var_apikey.prefix {
1307 Some(ref local_var_prefix) => format!("{local_var_prefix} {local_var_key}"),
1308 None => local_var_key,
1309 };
1310 local_var_req_builder = local_var_req_builder.header("Authorization", local_var_value);
1311 };
1312 local_var_req_builder = local_var_req_builder.json(&project);
1313
1314 let local_var_req = local_var_req_builder.build()?;
1315 let local_var_resp = local_var_client.execute(local_var_req).await?;
1316
1317 let local_var_status = local_var_resp.status();
1318 let local_var_content = local_var_resp.text().await?;
1319
1320 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1321 serde_json::from_str(&local_var_content).map_err(Error::from)
1322 } else {
1323 let local_var_entity: Option<ProjectsUnfollowCreateError> =
1324 serde_json::from_str(&local_var_content).ok();
1325 let local_var_error = ResponseContent {
1326 status: local_var_status,
1327 content: local_var_content,
1328 entity: local_var_entity,
1329 };
1330 Err(Error::ResponseError(local_var_error))
1331 }
1332}
1333
1334pub async fn projects_update(
1335 configuration: &configuration::Configuration,
1336 params: ProjectsUpdateParams,
1337) -> Result<crate::models::ProjectUpdate, Error<ProjectsUpdateError>> {
1338 let local_var_configuration = configuration;
1339
1340 let id = params.id;
1342 let project_update = params.project_update;
1343
1344 let local_var_client = &local_var_configuration.client;
1345
1346 let local_var_uri_str = format!(
1347 "{}/api2/projects/{id}/",
1348 local_var_configuration.base_path,
1349 id = id
1350 );
1351 let mut local_var_req_builder =
1352 local_var_client.request(reqwest::Method::PUT, local_var_uri_str.as_str());
1353
1354 if let Some(ref local_var_user_agent) = local_var_configuration.user_agent {
1355 local_var_req_builder =
1356 local_var_req_builder.header(reqwest::header::USER_AGENT, local_var_user_agent.clone());
1357 }
1358 if let Some(ref local_var_auth_conf) = local_var_configuration.basic_auth {
1359 local_var_req_builder = local_var_req_builder
1360 .basic_auth(local_var_auth_conf.0.clone(), local_var_auth_conf.1.clone());
1361 };
1362 if let Some(ref local_var_cookie) = local_var_configuration.cookie {
1363 local_var_req_builder =
1364 local_var_req_builder.header("Cookie", format!("sessionid={}", local_var_cookie.value));
1365 };
1366 if let Some(ref local_var_apikey) = local_var_configuration.api_key {
1367 let local_var_key = local_var_apikey.key.clone();
1368 let local_var_value = match local_var_apikey.prefix {
1369 Some(ref local_var_prefix) => format!("{local_var_prefix} {local_var_key}"),
1370 None => local_var_key,
1371 };
1372 local_var_req_builder = local_var_req_builder.header("Authorization", local_var_value);
1373 };
1374 local_var_req_builder = local_var_req_builder.json(&project_update);
1375
1376 let local_var_req = local_var_req_builder.build()?;
1377 let local_var_resp = local_var_client.execute(local_var_req).await?;
1378
1379 let local_var_status = local_var_resp.status();
1380 let local_var_content = local_var_resp.text().await?;
1381
1382 if !local_var_status.is_client_error() && !local_var_status.is_server_error() {
1383 serde_json::from_str(&local_var_content).map_err(Error::from)
1384 } else {
1385 let local_var_entity: Option<ProjectsUpdateError> =
1386 serde_json::from_str(&local_var_content).ok();
1387 let local_var_error = ResponseContent {
1388 status: local_var_status,
1389 content: local_var_content,
1390 entity: local_var_entity,
1391 };
1392 Err(Error::ResponseError(local_var_error))
1393 }
1394}