1#![allow(non_camel_case_types)]
4#![allow(unused_imports)]
5use serde::de::{value, Deserializer, IntoDeserializer};
6use serde::{Deserialize, Serialize, Serializer};
7use std::str::FromStr;
8#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
9pub struct AadOauthTokenRequest {
10 #[serde(default, skip_serializing_if = "Option::is_none")]
11 pub refresh: Option<bool>,
12 #[serde(default, skip_serializing_if = "Option::is_none")]
13 pub resource: Option<String>,
14 #[serde(rename = "tenantId", default, skip_serializing_if = "Option::is_none")]
15 pub tenant_id: Option<String>,
16 #[serde(default, skip_serializing_if = "Option::is_none")]
17 pub token: Option<String>,
18}
19impl AadOauthTokenRequest {
20 pub fn new() -> Self {
21 Self::default()
22 }
23}
24#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
25pub struct AadOauthTokenResult {
26 #[serde(
27 rename = "accessToken",
28 default,
29 skip_serializing_if = "Option::is_none"
30 )]
31 pub access_token: Option<String>,
32 #[serde(
33 rename = "refreshTokenCache",
34 default,
35 skip_serializing_if = "Option::is_none"
36 )]
37 pub refresh_token_cache: Option<String>,
38}
39impl AadOauthTokenResult {
40 pub fn new() -> Self {
41 Self::default()
42 }
43}
44#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
45pub struct AuthConfiguration {
46 #[serde(flatten)]
47 pub o_auth_configuration: OAuthConfiguration,
48 #[doc = "Gets or sets parameters contained in configuration object."]
49 #[serde(default, skip_serializing_if = "Option::is_none")]
50 pub parameters: Option<serde_json::Value>,
51}
52impl AuthConfiguration {
53 pub fn new() -> Self {
54 Self::default()
55 }
56}
57#[doc = "Specifies the authentication scheme to be used for authentication."]
58#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
59pub struct AuthenticationSchemeReference {
60 #[doc = "Gets or sets the key and value of the fields used for authentication."]
61 #[serde(default, skip_serializing_if = "Option::is_none")]
62 pub inputs: Option<serde_json::Value>,
63 #[doc = "Gets or sets the type of authentication scheme of an endpoint."]
64 #[serde(rename = "type", default, skip_serializing_if = "Option::is_none")]
65 pub type_: Option<String>,
66}
67impl AuthenticationSchemeReference {
68 pub fn new() -> Self {
69 Self::default()
70 }
71}
72#[doc = "Represents the header of the REST request."]
73#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
74pub struct AuthorizationHeader {
75 #[doc = "Gets or sets the name of authorization header."]
76 #[serde(default, skip_serializing_if = "Option::is_none")]
77 pub name: Option<String>,
78 #[doc = "Gets or sets the value of authorization header."]
79 #[serde(default, skip_serializing_if = "Option::is_none")]
80 pub value: Option<String>,
81}
82impl AuthorizationHeader {
83 pub fn new() -> Self {
84 Self::default()
85 }
86}
87#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
88pub struct AzureAppService {
89 #[serde(default, skip_serializing_if = "Option::is_none")]
90 pub id: Option<String>,
91 #[serde(default, skip_serializing_if = "Option::is_none")]
92 pub name: Option<String>,
93}
94impl AzureAppService {
95 pub fn new() -> Self {
96 Self::default()
97 }
98}
99#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
100pub struct AzureKeyVaultPermission {
101 #[serde(flatten)]
102 pub azure_resource_permission: AzureResourcePermission,
103 #[serde(default, skip_serializing_if = "Option::is_none")]
104 pub vault: Option<String>,
105}
106impl AzureKeyVaultPermission {
107 pub fn new() -> Self {
108 Self::default()
109 }
110}
111#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
112pub struct AzureMlWorkspace {
113 #[serde(default, skip_serializing_if = "Option::is_none")]
114 pub id: Option<String>,
115 #[serde(default, skip_serializing_if = "Option::is_none")]
116 pub location: Option<String>,
117 #[serde(default, skip_serializing_if = "Option::is_none")]
118 pub name: Option<String>,
119}
120impl AzureMlWorkspace {
121 pub fn new() -> Self {
122 Self::default()
123 }
124}
125#[doc = "Azure Management Group"]
126#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
127pub struct AzureManagementGroup {
128 #[doc = "Display name of azure management group"]
129 #[serde(
130 rename = "displayName",
131 default,
132 skip_serializing_if = "Option::is_none"
133 )]
134 pub display_name: Option<String>,
135 #[doc = "Id of azure management group"]
136 #[serde(default, skip_serializing_if = "Option::is_none")]
137 pub id: Option<String>,
138 #[doc = "Azure management group name"]
139 #[serde(default, skip_serializing_if = "Option::is_none")]
140 pub name: Option<String>,
141 #[doc = "Id of tenant from which azure management group belogs"]
142 #[serde(rename = "tenantId", default, skip_serializing_if = "Option::is_none")]
143 pub tenant_id: Option<String>,
144}
145impl AzureManagementGroup {
146 pub fn new() -> Self {
147 Self::default()
148 }
149}
150#[doc = "Azure management group query result"]
151#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
152pub struct AzureManagementGroupQueryResult {
153 #[doc = "Error message in case of an exception"]
154 #[serde(
155 rename = "errorMessage",
156 default,
157 skip_serializing_if = "Option::is_none"
158 )]
159 pub error_message: Option<String>,
160 #[doc = "List of azure management groups"]
161 #[serde(
162 default,
163 deserialize_with = "crate::serde::deserialize_null_as_default",
164 skip_serializing_if = "Vec::is_empty"
165 )]
166 pub value: Vec<AzureManagementGroup>,
167}
168impl AzureManagementGroupQueryResult {
169 pub fn new() -> Self {
170 Self::default()
171 }
172}
173#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
174pub struct AzurePermission {
175 #[serde(default, skip_serializing_if = "Option::is_none")]
176 pub provisioned: Option<bool>,
177 #[serde(
178 rename = "resourceProvider",
179 default,
180 skip_serializing_if = "Option::is_none"
181 )]
182 pub resource_provider: Option<String>,
183}
184impl AzurePermission {
185 pub fn new() -> Self {
186 Self::default()
187 }
188}
189#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
190pub struct AzureResourcePermission {
191 #[serde(flatten)]
192 pub azure_permission: AzurePermission,
193 #[serde(
194 rename = "resourceGroup",
195 default,
196 skip_serializing_if = "Option::is_none"
197 )]
198 pub resource_group: Option<String>,
199}
200impl AzureResourcePermission {
201 pub fn new() -> Self {
202 Self::default()
203 }
204}
205#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
206pub struct AzureRoleAssignmentPermission {
207 #[serde(flatten)]
208 pub azure_permission: AzurePermission,
209 #[serde(
210 rename = "roleAssignmentId",
211 default,
212 skip_serializing_if = "Option::is_none"
213 )]
214 pub role_assignment_id: Option<String>,
215}
216impl AzureRoleAssignmentPermission {
217 pub fn new() -> Self {
218 Self::default()
219 }
220}
221#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
222pub struct AzureSpnOperationStatus {
223 #[serde(default, skip_serializing_if = "Option::is_none")]
224 pub severity: Option<String>,
225 #[serde(default, skip_serializing_if = "Option::is_none")]
226 pub state: Option<String>,
227 #[serde(
228 rename = "statusMessage",
229 default,
230 skip_serializing_if = "Option::is_none"
231 )]
232 pub status_message: Option<String>,
233}
234impl AzureSpnOperationStatus {
235 pub fn new() -> Self {
236 Self::default()
237 }
238}
239#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
240pub struct AzureSubscription {
241 #[serde(
242 rename = "displayName",
243 default,
244 skip_serializing_if = "Option::is_none"
245 )]
246 pub display_name: Option<String>,
247 #[serde(
248 rename = "subscriptionId",
249 default,
250 skip_serializing_if = "Option::is_none"
251 )]
252 pub subscription_id: Option<String>,
253 #[serde(
254 rename = "subscriptionTenantId",
255 default,
256 skip_serializing_if = "Option::is_none"
257 )]
258 pub subscription_tenant_id: Option<String>,
259 #[serde(
260 rename = "subscriptionTenantName",
261 default,
262 skip_serializing_if = "Option::is_none"
263 )]
264 pub subscription_tenant_name: Option<String>,
265}
266impl AzureSubscription {
267 pub fn new() -> Self {
268 Self::default()
269 }
270}
271#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
272pub struct AzureSubscriptionQueryResult {
273 #[serde(
274 rename = "errorMessage",
275 default,
276 skip_serializing_if = "Option::is_none"
277 )]
278 pub error_message: Option<String>,
279 #[serde(
280 default,
281 deserialize_with = "crate::serde::deserialize_null_as_default",
282 skip_serializing_if = "Vec::is_empty"
283 )]
284 pub value: Vec<AzureSubscription>,
285}
286impl AzureSubscriptionQueryResult {
287 pub fn new() -> Self {
288 Self::default()
289 }
290}
291#[doc = "Specifies the client certificate to be used for the endpoint request."]
292#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
293pub struct ClientCertificate {
294 #[doc = "Gets or sets the value of client certificate."]
295 #[serde(default, skip_serializing_if = "Option::is_none")]
296 pub value: Option<String>,
297}
298impl ClientCertificate {
299 pub fn new() -> Self {
300 Self::default()
301 }
302}
303#[doc = "Specifies the data sources for this endpoint."]
304#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
305pub struct DataSource {
306 #[doc = "Specifies the authentication scheme to be used for authentication."]
307 #[serde(
308 rename = "authenticationScheme",
309 default,
310 skip_serializing_if = "Option::is_none"
311 )]
312 pub authentication_scheme: Option<AuthenticationSchemeReference>,
313 #[doc = "Gets or sets the pagination format supported by this data source(ContinuationToken/SkipTop)."]
314 #[serde(
315 rename = "callbackContextTemplate",
316 default,
317 skip_serializing_if = "Option::is_none"
318 )]
319 pub callback_context_template: Option<String>,
320 #[doc = "Gets or sets the template to check if subsequent call is needed."]
321 #[serde(
322 rename = "callbackRequiredTemplate",
323 default,
324 skip_serializing_if = "Option::is_none"
325 )]
326 pub callback_required_template: Option<String>,
327 #[doc = "Gets or sets the endpoint url of the data source."]
328 #[serde(
329 rename = "endpointUrl",
330 default,
331 skip_serializing_if = "Option::is_none"
332 )]
333 pub endpoint_url: Option<String>,
334 #[doc = "Gets or sets the authorization headers of the request."]
335 #[serde(
336 default,
337 deserialize_with = "crate::serde::deserialize_null_as_default",
338 skip_serializing_if = "Vec::is_empty"
339 )]
340 pub headers: Vec<AuthorizationHeader>,
341 #[doc = "Gets or sets the initial value of the query params."]
342 #[serde(
343 rename = "initialContextTemplate",
344 default,
345 skip_serializing_if = "Option::is_none"
346 )]
347 pub initial_context_template: Option<String>,
348 #[doc = "Gets or sets the name of the data source."]
349 #[serde(default, skip_serializing_if = "Option::is_none")]
350 pub name: Option<String>,
351 #[doc = "Gets or sets the request content of the endpoint request."]
352 #[serde(
353 rename = "requestContent",
354 default,
355 skip_serializing_if = "Option::is_none"
356 )]
357 pub request_content: Option<String>,
358 #[doc = "Gets or sets the request method of the endpoint request."]
359 #[serde(
360 rename = "requestVerb",
361 default,
362 skip_serializing_if = "Option::is_none"
363 )]
364 pub request_verb: Option<String>,
365 #[doc = "Gets or sets the resource url of the endpoint request."]
366 #[serde(
367 rename = "resourceUrl",
368 default,
369 skip_serializing_if = "Option::is_none"
370 )]
371 pub resource_url: Option<String>,
372 #[doc = "Gets or sets the result selector to filter the response of the endpoint request."]
373 #[serde(
374 rename = "resultSelector",
375 default,
376 skip_serializing_if = "Option::is_none"
377 )]
378 pub result_selector: Option<String>,
379}
380impl DataSource {
381 pub fn new() -> Self {
382 Self::default()
383 }
384}
385#[doc = "Represents the data source binding of the endpoint."]
386#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
387pub struct DataSourceBinding {
388 #[serde(flatten)]
389 pub data_source_binding_base: DataSourceBindingBase,
390}
391impl DataSourceBinding {
392 pub fn new() -> Self {
393 Self::default()
394 }
395}
396#[doc = "Represents binding of data source for the service endpoint request."]
397#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
398pub struct DataSourceBindingBase {
399 #[doc = "Pagination format supported by this data source(ContinuationToken/SkipTop)."]
400 #[serde(
401 rename = "callbackContextTemplate",
402 default,
403 skip_serializing_if = "Option::is_none"
404 )]
405 pub callback_context_template: Option<String>,
406 #[doc = "Subsequent calls needed?"]
407 #[serde(
408 rename = "callbackRequiredTemplate",
409 default,
410 skip_serializing_if = "Option::is_none"
411 )]
412 pub callback_required_template: Option<String>,
413 #[doc = "Gets or sets the name of the data source."]
414 #[serde(
415 rename = "dataSourceName",
416 default,
417 skip_serializing_if = "Option::is_none"
418 )]
419 pub data_source_name: Option<String>,
420 #[doc = "Gets or sets the endpoint Id."]
421 #[serde(
422 rename = "endpointId",
423 default,
424 skip_serializing_if = "Option::is_none"
425 )]
426 pub endpoint_id: Option<String>,
427 #[doc = "Gets or sets the url of the service endpoint."]
428 #[serde(
429 rename = "endpointUrl",
430 default,
431 skip_serializing_if = "Option::is_none"
432 )]
433 pub endpoint_url: Option<String>,
434 #[doc = "Gets or sets the authorization headers."]
435 #[serde(
436 default,
437 deserialize_with = "crate::serde::deserialize_null_as_default",
438 skip_serializing_if = "Vec::is_empty"
439 )]
440 pub headers: Vec<AuthorizationHeader>,
441 #[doc = "Defines the initial value of the query params"]
442 #[serde(
443 rename = "initialContextTemplate",
444 default,
445 skip_serializing_if = "Option::is_none"
446 )]
447 pub initial_context_template: Option<String>,
448 #[doc = "Gets or sets the parameters for the data source."]
449 #[serde(default, skip_serializing_if = "Option::is_none")]
450 pub parameters: Option<serde_json::Value>,
451 #[doc = "Gets or sets http request body"]
452 #[serde(
453 rename = "requestContent",
454 default,
455 skip_serializing_if = "Option::is_none"
456 )]
457 pub request_content: Option<String>,
458 #[doc = "Gets or sets http request verb"]
459 #[serde(
460 rename = "requestVerb",
461 default,
462 skip_serializing_if = "Option::is_none"
463 )]
464 pub request_verb: Option<String>,
465 #[doc = "Gets or sets the result selector."]
466 #[serde(
467 rename = "resultSelector",
468 default,
469 skip_serializing_if = "Option::is_none"
470 )]
471 pub result_selector: Option<String>,
472 #[doc = "Gets or sets the result template."]
473 #[serde(
474 rename = "resultTemplate",
475 default,
476 skip_serializing_if = "Option::is_none"
477 )]
478 pub result_template: Option<String>,
479 #[doc = "Gets or sets the target of the data source."]
480 #[serde(default, skip_serializing_if = "Option::is_none")]
481 pub target: Option<String>,
482}
483impl DataSourceBindingBase {
484 pub fn new() -> Self {
485 Self::default()
486 }
487}
488#[doc = "Represents details of the service endpoint data source."]
489#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
490pub struct DataSourceDetails {
491 #[doc = "Gets or sets the data source name."]
492 #[serde(
493 rename = "dataSourceName",
494 default,
495 skip_serializing_if = "Option::is_none"
496 )]
497 pub data_source_name: Option<String>,
498 #[doc = "Gets or sets the data source url."]
499 #[serde(
500 rename = "dataSourceUrl",
501 default,
502 skip_serializing_if = "Option::is_none"
503 )]
504 pub data_source_url: Option<String>,
505 #[doc = "Gets or sets the request headers."]
506 #[serde(
507 default,
508 deserialize_with = "crate::serde::deserialize_null_as_default",
509 skip_serializing_if = "Vec::is_empty"
510 )]
511 pub headers: Vec<AuthorizationHeader>,
512 #[doc = "Gets or sets the initialization context used for the initial call to the data source"]
513 #[serde(
514 rename = "initialContextTemplate",
515 default,
516 skip_serializing_if = "Option::is_none"
517 )]
518 pub initial_context_template: Option<String>,
519 #[doc = "Gets the parameters of data source."]
520 #[serde(default, skip_serializing_if = "Option::is_none")]
521 pub parameters: Option<serde_json::Value>,
522 #[doc = "Gets or sets the data source request content."]
523 #[serde(
524 rename = "requestContent",
525 default,
526 skip_serializing_if = "Option::is_none"
527 )]
528 pub request_content: Option<String>,
529 #[doc = "Gets or sets the data source request verb. Get/Post are the only implemented types"]
530 #[serde(
531 rename = "requestVerb",
532 default,
533 skip_serializing_if = "Option::is_none"
534 )]
535 pub request_verb: Option<String>,
536 #[doc = "Gets or sets the resource url of data source."]
537 #[serde(
538 rename = "resourceUrl",
539 default,
540 skip_serializing_if = "Option::is_none"
541 )]
542 pub resource_url: Option<String>,
543 #[doc = "Gets or sets the result selector."]
544 #[serde(
545 rename = "resultSelector",
546 default,
547 skip_serializing_if = "Option::is_none"
548 )]
549 pub result_selector: Option<String>,
550}
551impl DataSourceDetails {
552 pub fn new() -> Self {
553 Self::default()
554 }
555}
556#[doc = "Represents the details of the input on which a given input is dependent."]
557#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
558pub struct DependencyBinding {
559 #[doc = "Gets or sets the value of the field on which url is dependent."]
560 #[serde(default, skip_serializing_if = "Option::is_none")]
561 pub key: Option<String>,
562 #[doc = "Gets or sets the corresponding value of url."]
563 #[serde(default, skip_serializing_if = "Option::is_none")]
564 pub value: Option<String>,
565}
566impl DependencyBinding {
567 pub fn new() -> Self {
568 Self::default()
569 }
570}
571#[doc = "Represents the dependency data for the endpoint inputs."]
572#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
573pub struct DependencyData {
574 #[doc = "Gets or sets the category of dependency data."]
575 #[serde(default, skip_serializing_if = "Option::is_none")]
576 pub input: Option<String>,
577 #[doc = "Gets or sets the key-value pair to specify properties and their values."]
578 #[serde(
579 default,
580 deserialize_with = "crate::serde::deserialize_null_as_default",
581 skip_serializing_if = "Vec::is_empty"
582 )]
583 pub map: Vec<serde_json::Value>,
584}
585impl DependencyData {
586 pub fn new() -> Self {
587 Self::default()
588 }
589}
590#[doc = "Represents the inputs on which any given input is dependent."]
591#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
592pub struct DependsOn {
593 #[doc = "Gets or sets the ID of the field on which URL's value is dependent."]
594 #[serde(default, skip_serializing_if = "Option::is_none")]
595 pub input: Option<String>,
596 #[doc = "Gets or sets key-value pair containing other's field value and corresponding url value."]
597 #[serde(
598 default,
599 deserialize_with = "crate::serde::deserialize_null_as_default",
600 skip_serializing_if = "Vec::is_empty"
601 )]
602 pub map: Vec<DependencyBinding>,
603}
604impl DependsOn {
605 pub fn new() -> Self {
606 Self::default()
607 }
608}
609#[doc = "Represents the authorization used for service endpoint."]
610#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
611pub struct EndpointAuthorization {
612 #[doc = "Gets or sets the parameters for the selected authorization scheme."]
613 #[serde(default, skip_serializing_if = "Option::is_none")]
614 pub parameters: Option<serde_json::Value>,
615 #[doc = "Gets or sets the scheme used for service endpoint authentication."]
616 #[serde(default, skip_serializing_if = "Option::is_none")]
617 pub scheme: Option<String>,
618}
619impl EndpointAuthorization {
620 pub fn new() -> Self {
621 Self::default()
622 }
623}
624#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
625pub struct EndpointOperationStatus {
626 #[serde(default, skip_serializing_if = "Option::is_none")]
627 pub state: Option<String>,
628 #[serde(
629 rename = "statusMessage",
630 default,
631 skip_serializing_if = "Option::is_none"
632 )]
633 pub status_message: Option<String>,
634}
635impl EndpointOperationStatus {
636 pub fn new() -> Self {
637 Self::default()
638 }
639}
640#[doc = "Represents url of the service endpoint."]
641#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
642pub struct EndpointUrl {
643 #[doc = "Represents the inputs on which any given input is dependent."]
644 #[serde(rename = "dependsOn", default, skip_serializing_if = "Option::is_none")]
645 pub depends_on: Option<DependsOn>,
646 #[doc = "Gets or sets the display name of service endpoint url."]
647 #[serde(
648 rename = "displayName",
649 default,
650 skip_serializing_if = "Option::is_none"
651 )]
652 pub display_name: Option<String>,
653 #[doc = "Gets or sets the format of the url."]
654 #[serde(default, skip_serializing_if = "Option::is_none")]
655 pub format: Option<String>,
656 #[doc = "Gets or sets the help text of service endpoint url."]
657 #[serde(rename = "helpText", default, skip_serializing_if = "Option::is_none")]
658 pub help_text: Option<String>,
659 #[doc = "Gets or sets the visibility of service endpoint url."]
660 #[serde(rename = "isVisible", default, skip_serializing_if = "Option::is_none")]
661 pub is_visible: Option<String>,
662 #[doc = "Gets or sets the value of service endpoint url."]
663 #[serde(default, skip_serializing_if = "Option::is_none")]
664 pub value: Option<String>,
665}
666impl EndpointUrl {
667 pub fn new() -> Self {
668 Self::default()
669 }
670}
671#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
672pub struct GraphSubjectBase {
673 #[doc = "Links"]
674 #[serde(rename = "_links", default, skip_serializing_if = "Option::is_none")]
675 pub links: Option<serde_json::Value>,
676 #[doc = "The descriptor is the primary way to reference the graph subject while the system is running. This field will uniquely identify the same graph subject across both Accounts and Organizations."]
677 #[serde(default, skip_serializing_if = "Option::is_none")]
678 pub descriptor: Option<String>,
679 #[doc = "This is the non-unique display name of the graph subject. To change this field, you must alter its value in the source provider."]
680 #[serde(
681 rename = "displayName",
682 default,
683 skip_serializing_if = "Option::is_none"
684 )]
685 pub display_name: Option<String>,
686 #[doc = "This url is the full route to the source resource of this graph subject."]
687 #[serde(default, skip_serializing_if = "Option::is_none")]
688 pub url: Option<String>,
689}
690impl GraphSubjectBase {
691 pub fn new() -> Self {
692 Self::default()
693 }
694}
695#[doc = "Specifies the public url of the help documentation."]
696#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
697pub struct HelpLink {
698 #[doc = "Gets or sets the help text."]
699 #[serde(default, skip_serializing_if = "Option::is_none")]
700 pub text: Option<String>,
701 #[doc = "Gets or sets the public url of the help documentation."]
702 #[serde(default, skip_serializing_if = "Option::is_none")]
703 pub url: Option<String>,
704}
705impl HelpLink {
706 pub fn new() -> Self {
707 Self::default()
708 }
709}
710#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
711pub struct IdentityRef {
712 #[serde(flatten)]
713 pub graph_subject_base: GraphSubjectBase,
714 #[doc = "Deprecated - Can be retrieved by querying the Graph user referenced in the \"self\" entry of the IdentityRef \"_links\" dictionary"]
715 #[serde(
716 rename = "directoryAlias",
717 default,
718 skip_serializing_if = "Option::is_none"
719 )]
720 pub directory_alias: Option<String>,
721 pub id: String,
722 #[doc = "Deprecated - Available in the \"avatar\" entry of the IdentityRef \"_links\" dictionary"]
723 #[serde(rename = "imageUrl", default, skip_serializing_if = "Option::is_none")]
724 pub image_url: Option<String>,
725 #[doc = "Deprecated - Can be retrieved by querying the Graph membership state referenced in the \"membershipState\" entry of the GraphUser \"_links\" dictionary"]
726 #[serde(default, skip_serializing_if = "Option::is_none")]
727 pub inactive: Option<bool>,
728 #[doc = "Deprecated - Can be inferred from the subject type of the descriptor (Descriptor.IsAadUserType/Descriptor.IsAadGroupType)"]
729 #[serde(
730 rename = "isAadIdentity",
731 default,
732 skip_serializing_if = "Option::is_none"
733 )]
734 pub is_aad_identity: Option<bool>,
735 #[doc = "Deprecated - Can be inferred from the subject type of the descriptor (Descriptor.IsGroupType)"]
736 #[serde(
737 rename = "isContainer",
738 default,
739 skip_serializing_if = "Option::is_none"
740 )]
741 pub is_container: Option<bool>,
742 #[serde(
743 rename = "isDeletedInOrigin",
744 default,
745 skip_serializing_if = "Option::is_none"
746 )]
747 pub is_deleted_in_origin: Option<bool>,
748 #[doc = "Deprecated - not in use in most preexisting implementations of ToIdentityRef"]
749 #[serde(
750 rename = "profileUrl",
751 default,
752 skip_serializing_if = "Option::is_none"
753 )]
754 pub profile_url: Option<String>,
755 #[doc = "Deprecated - use Domain+PrincipalName instead"]
756 #[serde(
757 rename = "uniqueName",
758 default,
759 skip_serializing_if = "Option::is_none"
760 )]
761 pub unique_name: Option<String>,
762}
763impl IdentityRef {
764 pub fn new(id: String) -> Self {
765 Self {
766 graph_subject_base: GraphSubjectBase::default(),
767 directory_alias: None,
768 id,
769 image_url: None,
770 inactive: None,
771 is_aad_identity: None,
772 is_container: None,
773 is_deleted_in_origin: None,
774 profile_url: None,
775 unique_name: None,
776 }
777 }
778}
779#[doc = "Describes an input for subscriptions."]
780#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
781pub struct InputDescriptor {
782 #[doc = "The ids of all inputs that the value of this input is dependent on."]
783 #[serde(
784 rename = "dependencyInputIds",
785 default,
786 deserialize_with = "crate::serde::deserialize_null_as_default",
787 skip_serializing_if = "Vec::is_empty"
788 )]
789 pub dependency_input_ids: Vec<String>,
790 #[doc = "Description of what this input is used for"]
791 #[serde(default, skip_serializing_if = "Option::is_none")]
792 pub description: Option<String>,
793 #[doc = "The group localized name to which this input belongs and can be shown as a header for the container that will include all the inputs in the group."]
794 #[serde(rename = "groupName", default, skip_serializing_if = "Option::is_none")]
795 pub group_name: Option<String>,
796 #[doc = "If true, the value information for this input is dynamic and should be fetched when the value of dependency inputs change."]
797 #[serde(
798 rename = "hasDynamicValueInformation",
799 default,
800 skip_serializing_if = "Option::is_none"
801 )]
802 pub has_dynamic_value_information: Option<bool>,
803 #[doc = "Identifier for the subscription input"]
804 #[serde(default, skip_serializing_if = "Option::is_none")]
805 pub id: Option<String>,
806 #[doc = "Mode in which the value of this input should be entered"]
807 #[serde(rename = "inputMode", default, skip_serializing_if = "Option::is_none")]
808 pub input_mode: Option<input_descriptor::InputMode>,
809 #[doc = "Gets whether this input is confidential, such as for a password or application key"]
810 #[serde(
811 rename = "isConfidential",
812 default,
813 skip_serializing_if = "Option::is_none"
814 )]
815 pub is_confidential: Option<bool>,
816 #[doc = "Localized name which can be shown as a label for the subscription input"]
817 #[serde(default, skip_serializing_if = "Option::is_none")]
818 pub name: Option<String>,
819 #[doc = "Custom properties for the input which can be used by the service provider"]
820 #[serde(default, skip_serializing_if = "Option::is_none")]
821 pub properties: Option<serde_json::Value>,
822 #[doc = "Underlying data type for the input value. When this value is specified, InputMode, Validation and Values are optional."]
823 #[serde(rename = "type", default, skip_serializing_if = "Option::is_none")]
824 pub type_: Option<String>,
825 #[doc = "Gets whether this input is included in the default generated action description."]
826 #[serde(
827 rename = "useInDefaultDescription",
828 default,
829 skip_serializing_if = "Option::is_none"
830 )]
831 pub use_in_default_description: Option<bool>,
832 #[doc = "Describes what values are valid for a subscription input"]
833 #[serde(default, skip_serializing_if = "Option::is_none")]
834 pub validation: Option<InputValidation>,
835 #[doc = "A hint for input value. It can be used in the UI as the input placeholder."]
836 #[serde(rename = "valueHint", default, skip_serializing_if = "Option::is_none")]
837 pub value_hint: Option<String>,
838 #[doc = "Information about the possible/allowed values for a given subscription input"]
839 #[serde(default, skip_serializing_if = "Option::is_none")]
840 pub values: Option<InputValues>,
841}
842impl InputDescriptor {
843 pub fn new() -> Self {
844 Self::default()
845 }
846}
847pub mod input_descriptor {
848 use super::*;
849 #[doc = "Mode in which the value of this input should be entered"]
850 #[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
851 pub enum InputMode {
852 #[serde(rename = "none")]
853 None,
854 #[serde(rename = "textBox")]
855 TextBox,
856 #[serde(rename = "passwordBox")]
857 PasswordBox,
858 #[serde(rename = "combo")]
859 Combo,
860 #[serde(rename = "radioButtons")]
861 RadioButtons,
862 #[serde(rename = "checkBox")]
863 CheckBox,
864 #[serde(rename = "textArea")]
865 TextArea,
866 }
867}
868#[doc = "Describes what values are valid for a subscription input"]
869#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
870pub struct InputValidation {
871 #[doc = "Gets or sets the data type to validate."]
872 #[serde(rename = "dataType", default, skip_serializing_if = "Option::is_none")]
873 pub data_type: Option<input_validation::DataType>,
874 #[doc = "Gets or sets if this is a required field."]
875 #[serde(
876 rename = "isRequired",
877 default,
878 skip_serializing_if = "Option::is_none"
879 )]
880 pub is_required: Option<bool>,
881 #[doc = "Gets or sets the maximum length of this descriptor."]
882 #[serde(rename = "maxLength", default, skip_serializing_if = "Option::is_none")]
883 pub max_length: Option<i32>,
884 #[doc = "Gets or sets the minimum value for this descriptor."]
885 #[serde(rename = "maxValue", default, skip_serializing_if = "Option::is_none")]
886 pub max_value: Option<String>,
887 #[doc = "Gets or sets the minimum length of this descriptor."]
888 #[serde(rename = "minLength", default, skip_serializing_if = "Option::is_none")]
889 pub min_length: Option<i32>,
890 #[doc = "Gets or sets the minimum value for this descriptor."]
891 #[serde(rename = "minValue", default, skip_serializing_if = "Option::is_none")]
892 pub min_value: Option<String>,
893 #[doc = "Gets or sets the pattern to validate."]
894 #[serde(default, skip_serializing_if = "Option::is_none")]
895 pub pattern: Option<String>,
896 #[doc = "Gets or sets the error on pattern mismatch."]
897 #[serde(
898 rename = "patternMismatchErrorMessage",
899 default,
900 skip_serializing_if = "Option::is_none"
901 )]
902 pub pattern_mismatch_error_message: Option<String>,
903}
904impl InputValidation {
905 pub fn new() -> Self {
906 Self::default()
907 }
908}
909pub mod input_validation {
910 use super::*;
911 #[doc = "Gets or sets the data type to validate."]
912 #[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
913 pub enum DataType {
914 #[serde(rename = "none")]
915 None,
916 #[serde(rename = "string")]
917 String,
918 #[serde(rename = "number")]
919 Number,
920 #[serde(rename = "boolean")]
921 Boolean,
922 #[serde(rename = "guid")]
923 Guid,
924 #[serde(rename = "uri")]
925 Uri,
926 }
927}
928#[doc = "Information about a single value for an input"]
929#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
930pub struct InputValue {
931 #[doc = "Any other data about this input"]
932 #[serde(default, skip_serializing_if = "Option::is_none")]
933 pub data: Option<serde_json::Value>,
934 #[doc = "The text to show for the display of this value"]
935 #[serde(
936 rename = "displayValue",
937 default,
938 skip_serializing_if = "Option::is_none"
939 )]
940 pub display_value: Option<String>,
941 #[doc = "The value to store for this input"]
942 #[serde(default, skip_serializing_if = "Option::is_none")]
943 pub value: Option<String>,
944}
945impl InputValue {
946 pub fn new() -> Self {
947 Self::default()
948 }
949}
950#[doc = "Information about the possible/allowed values for a given subscription input"]
951#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
952pub struct InputValues {
953 #[doc = "The default value to use for this input"]
954 #[serde(
955 rename = "defaultValue",
956 default,
957 skip_serializing_if = "Option::is_none"
958 )]
959 pub default_value: Option<String>,
960 #[doc = "Error information related to a subscription input value."]
961 #[serde(default, skip_serializing_if = "Option::is_none")]
962 pub error: Option<InputValuesError>,
963 #[doc = "The id of the input"]
964 #[serde(rename = "inputId", default, skip_serializing_if = "Option::is_none")]
965 pub input_id: Option<String>,
966 #[doc = "Should this input be disabled"]
967 #[serde(
968 rename = "isDisabled",
969 default,
970 skip_serializing_if = "Option::is_none"
971 )]
972 pub is_disabled: Option<bool>,
973 #[doc = "Should the value be restricted to one of the values in the PossibleValues (True) or are the values in PossibleValues just a suggestion (False)"]
974 #[serde(
975 rename = "isLimitedToPossibleValues",
976 default,
977 skip_serializing_if = "Option::is_none"
978 )]
979 pub is_limited_to_possible_values: Option<bool>,
980 #[doc = "Should this input be made read-only"]
981 #[serde(
982 rename = "isReadOnly",
983 default,
984 skip_serializing_if = "Option::is_none"
985 )]
986 pub is_read_only: Option<bool>,
987 #[doc = "Possible values that this input can take"]
988 #[serde(
989 rename = "possibleValues",
990 default,
991 deserialize_with = "crate::serde::deserialize_null_as_default",
992 skip_serializing_if = "Vec::is_empty"
993 )]
994 pub possible_values: Vec<InputValue>,
995}
996impl InputValues {
997 pub fn new() -> Self {
998 Self::default()
999 }
1000}
1001#[doc = "Error information related to a subscription input value."]
1002#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
1003pub struct InputValuesError {
1004 #[doc = "The error message."]
1005 #[serde(default, skip_serializing_if = "Option::is_none")]
1006 pub message: Option<String>,
1007}
1008impl InputValuesError {
1009 pub fn new() -> Self {
1010 Self::default()
1011 }
1012}
1013#[doc = "Represents a JSON object."]
1014#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
1015pub struct JObject {
1016 #[doc = "Represents an abstract JSON token."]
1017 #[serde(default, skip_serializing_if = "Option::is_none")]
1018 pub item: Option<JToken>,
1019 #[doc = "Gets the node type for this JToken."]
1020 #[serde(rename = "type", default, skip_serializing_if = "Option::is_none")]
1021 pub type_: Option<String>,
1022}
1023impl JObject {
1024 pub fn new() -> Self {
1025 Self::default()
1026 }
1027}
1028#[doc = "Represents an abstract JSON token."]
1029#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
1030pub struct JToken {
1031 #[doc = "Represents an abstract JSON token."]
1032 #[serde(default, skip_serializing_if = "Option::is_none")]
1033 pub first: Option<Box<JToken>>,
1034 #[doc = "Gets a value indicating whether this token has child tokens."]
1035 #[serde(rename = "hasValues", default, skip_serializing_if = "Option::is_none")]
1036 pub has_values: Option<bool>,
1037 #[doc = "Represents an abstract JSON token."]
1038 #[serde(default, skip_serializing_if = "Option::is_none")]
1039 pub item: Option<Box<JToken>>,
1040 #[doc = "Represents an abstract JSON token."]
1041 #[serde(default, skip_serializing_if = "Option::is_none")]
1042 pub last: Option<Box<JToken>>,
1043 #[doc = "Represents an abstract JSON token."]
1044 #[serde(default, skip_serializing_if = "Option::is_none")]
1045 pub next: Option<Box<JToken>>,
1046 #[doc = "Gets or sets the parent."]
1047 #[serde(default, skip_serializing_if = "Option::is_none")]
1048 pub parent: Option<String>,
1049 #[doc = "Gets the path of the JSON token."]
1050 #[serde(default, skip_serializing_if = "Option::is_none")]
1051 pub path: Option<String>,
1052 #[doc = "Represents an abstract JSON token."]
1053 #[serde(default, skip_serializing_if = "Option::is_none")]
1054 pub previous: Option<Box<JToken>>,
1055 #[doc = "Represents an abstract JSON token."]
1056 #[serde(default, skip_serializing_if = "Option::is_none")]
1057 pub root: Option<Box<JToken>>,
1058 #[doc = "Gets the node type for this JToken."]
1059 #[serde(rename = "type", default, skip_serializing_if = "Option::is_none")]
1060 pub type_: Option<String>,
1061}
1062impl JToken {
1063 pub fn new() -> Self {
1064 Self::default()
1065 }
1066}
1067#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
1068pub struct OAuth2TokenResult {
1069 #[serde(
1070 rename = "accessToken",
1071 default,
1072 skip_serializing_if = "Option::is_none"
1073 )]
1074 pub access_token: Option<String>,
1075 #[serde(default, skip_serializing_if = "Option::is_none")]
1076 pub error: Option<String>,
1077 #[serde(
1078 rename = "errorDescription",
1079 default,
1080 skip_serializing_if = "Option::is_none"
1081 )]
1082 pub error_description: Option<String>,
1083 #[serde(rename = "expiresIn", default, skip_serializing_if = "Option::is_none")]
1084 pub expires_in: Option<String>,
1085 #[serde(rename = "issuedAt", default, skip_serializing_if = "Option::is_none")]
1086 pub issued_at: Option<String>,
1087 #[serde(
1088 rename = "refreshToken",
1089 default,
1090 skip_serializing_if = "Option::is_none"
1091 )]
1092 pub refresh_token: Option<String>,
1093 #[serde(default, skip_serializing_if = "Option::is_none")]
1094 pub scope: Option<String>,
1095}
1096impl OAuth2TokenResult {
1097 pub fn new() -> Self {
1098 Self::default()
1099 }
1100}
1101#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
1102pub struct OAuthConfiguration {
1103 #[doc = "Gets or sets the ClientId"]
1104 #[serde(rename = "clientId", default, skip_serializing_if = "Option::is_none")]
1105 pub client_id: Option<String>,
1106 #[doc = "Gets or sets the ClientSecret"]
1107 #[serde(
1108 rename = "clientSecret",
1109 default,
1110 skip_serializing_if = "Option::is_none"
1111 )]
1112 pub client_secret: Option<String>,
1113 #[serde(rename = "createdBy", default, skip_serializing_if = "Option::is_none")]
1114 pub created_by: Option<IdentityRef>,
1115 #[doc = "Gets or sets the time when config was created."]
1116 #[serde(
1117 rename = "createdOn",
1118 default,
1119 skip_serializing_if = "Option::is_none",
1120 with = "crate::date_time::rfc3339::option"
1121 )]
1122 pub created_on: Option<time::OffsetDateTime>,
1123 #[doc = "Gets or sets the type of the endpoint."]
1124 #[serde(
1125 rename = "endpointType",
1126 default,
1127 skip_serializing_if = "Option::is_none"
1128 )]
1129 pub endpoint_type: Option<String>,
1130 #[doc = "Gets or sets the unique identifier of this field"]
1131 #[serde(default, skip_serializing_if = "Option::is_none")]
1132 pub id: Option<String>,
1133 #[serde(
1134 rename = "modifiedBy",
1135 default,
1136 skip_serializing_if = "Option::is_none"
1137 )]
1138 pub modified_by: Option<IdentityRef>,
1139 #[doc = "Gets or sets the time when variable group was modified"]
1140 #[serde(
1141 rename = "modifiedOn",
1142 default,
1143 skip_serializing_if = "Option::is_none",
1144 with = "crate::date_time::rfc3339::option"
1145 )]
1146 pub modified_on: Option<time::OffsetDateTime>,
1147 #[doc = "Gets or sets the name"]
1148 #[serde(default, skip_serializing_if = "Option::is_none")]
1149 pub name: Option<String>,
1150 #[doc = "Gets or sets the Url"]
1151 #[serde(default, skip_serializing_if = "Option::is_none")]
1152 pub url: Option<String>,
1153}
1154impl OAuthConfiguration {
1155 pub fn new() -> Self {
1156 Self::default()
1157 }
1158}
1159#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
1160pub struct OAuthConfigurationParams {
1161 #[doc = "Gets or sets the ClientId"]
1162 #[serde(rename = "clientId", default, skip_serializing_if = "Option::is_none")]
1163 pub client_id: Option<String>,
1164 #[doc = "Gets or sets the ClientSecret"]
1165 #[serde(
1166 rename = "clientSecret",
1167 default,
1168 skip_serializing_if = "Option::is_none"
1169 )]
1170 pub client_secret: Option<String>,
1171 #[doc = "Gets or sets the type of the endpoint."]
1172 #[serde(
1173 rename = "endpointType",
1174 default,
1175 skip_serializing_if = "Option::is_none"
1176 )]
1177 pub endpoint_type: Option<String>,
1178 #[doc = "Gets or sets the name"]
1179 #[serde(default, skip_serializing_if = "Option::is_none")]
1180 pub name: Option<String>,
1181 #[doc = "Gets or sets the Url"]
1182 #[serde(default, skip_serializing_if = "Option::is_none")]
1183 pub url: Option<String>,
1184}
1185impl OAuthConfigurationParams {
1186 pub fn new() -> Self {
1187 Self::default()
1188 }
1189}
1190#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
1191pub struct OAuthEndpointStatus {
1192 #[serde(default, skip_serializing_if = "Option::is_none")]
1193 pub state: Option<String>,
1194 #[serde(
1195 rename = "statusMessage",
1196 default,
1197 skip_serializing_if = "Option::is_none"
1198 )]
1199 pub status_message: Option<String>,
1200}
1201impl OAuthEndpointStatus {
1202 pub fn new() -> Self {
1203 Self::default()
1204 }
1205}
1206#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
1207pub struct Parameter {
1208 #[serde(rename = "isSecret", default, skip_serializing_if = "Option::is_none")]
1209 pub is_secret: Option<bool>,
1210 #[serde(default, skip_serializing_if = "Option::is_none")]
1211 pub value: Option<String>,
1212}
1213impl Parameter {
1214 pub fn new() -> Self {
1215 Self::default()
1216 }
1217}
1218#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
1219pub struct ProjectReference {
1220 pub id: String,
1221 #[serde(default, skip_serializing_if = "Option::is_none")]
1222 pub name: Option<String>,
1223}
1224impl ProjectReference {
1225 pub fn new(id: String) -> Self {
1226 Self { id, name: None }
1227 }
1228}
1229#[doc = "The class to represent a collection of REST reference links."]
1230#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
1231pub struct ReferenceLinks {
1232 #[doc = "The readonly view of the links. Because Reference links are readonly, we only want to expose them as read only."]
1233 #[serde(default, skip_serializing_if = "Option::is_none")]
1234 pub links: Option<serde_json::Value>,
1235}
1236impl ReferenceLinks {
1237 pub fn new() -> Self {
1238 Self::default()
1239 }
1240}
1241#[doc = "Specify the properties for refreshing the endpoint authentication object being queried"]
1242#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
1243pub struct RefreshAuthenticationParameters {
1244 #[doc = "EndpointId which needs new authentication params"]
1245 #[serde(
1246 rename = "endpointId",
1247 default,
1248 skip_serializing_if = "Option::is_none"
1249 )]
1250 pub endpoint_id: Option<String>,
1251 #[doc = "Scope of the token requested. For GitHub marketplace apps, scope contains repository Ids"]
1252 #[serde(
1253 default,
1254 deserialize_with = "crate::serde::deserialize_null_as_default",
1255 skip_serializing_if = "Vec::is_empty"
1256 )]
1257 pub scope: Vec<i32>,
1258 #[doc = "The requested endpoint authentication should be valid for _ minutes. Authentication params will not be refreshed if the token contained in endpoint already has active token."]
1259 #[serde(
1260 rename = "tokenValidityInMinutes",
1261 default,
1262 skip_serializing_if = "Option::is_none"
1263 )]
1264 pub token_validity_in_minutes: Option<i64>,
1265}
1266impl RefreshAuthenticationParameters {
1267 pub fn new() -> Self {
1268 Self::default()
1269 }
1270}
1271#[doc = "Represents template to transform the result data."]
1272#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
1273pub struct ResultTransformationDetails {
1274 #[doc = "Gets or sets the template for callback parameters"]
1275 #[serde(
1276 rename = "callbackContextTemplate",
1277 default,
1278 skip_serializing_if = "Option::is_none"
1279 )]
1280 pub callback_context_template: Option<String>,
1281 #[doc = "Gets or sets the template to decide whether to callback or not"]
1282 #[serde(
1283 rename = "callbackRequiredTemplate",
1284 default,
1285 skip_serializing_if = "Option::is_none"
1286 )]
1287 pub callback_required_template: Option<String>,
1288 #[doc = "Gets or sets the template for result transformation."]
1289 #[serde(
1290 rename = "resultTemplate",
1291 default,
1292 skip_serializing_if = "Option::is_none"
1293 )]
1294 pub result_template: Option<String>,
1295}
1296impl ResultTransformationDetails {
1297 pub fn new() -> Self {
1298 Self::default()
1299 }
1300}
1301#[doc = "Represents an endpoint which may be used by an orchestration job."]
1302#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
1303pub struct ServiceEndpoint {
1304 #[serde(
1305 rename = "administratorsGroup",
1306 default,
1307 skip_serializing_if = "Option::is_none"
1308 )]
1309 pub administrators_group: Option<IdentityRef>,
1310 #[doc = "Represents the authorization used for service endpoint."]
1311 pub authorization: EndpointAuthorization,
1312 #[serde(rename = "createdBy")]
1313 pub created_by: IdentityRef,
1314 pub data: serde_json::Value,
1315 #[doc = "Gets or sets the description of endpoint."]
1316 #[serde(default, skip_serializing_if = "Option::is_none")]
1317 pub description: Option<String>,
1318 #[doc = "This is a deprecated field."]
1319 #[serde(
1320 rename = "groupScopeId",
1321 default,
1322 skip_serializing_if = "Option::is_none"
1323 )]
1324 pub group_scope_id: Option<String>,
1325 #[doc = "Gets or sets the identifier of this endpoint."]
1326 pub id: String,
1327 #[doc = "EndPoint state indicator"]
1328 #[serde(rename = "isReady")]
1329 pub is_ready: bool,
1330 #[doc = "Indicates whether service endpoint is shared with other projects or not."]
1331 #[serde(rename = "isShared")]
1332 pub is_shared: bool,
1333 #[doc = "Gets or sets the friendly name of the endpoint."]
1334 pub name: String,
1335 #[doc = "Error message during creation/deletion of endpoint"]
1336 #[serde(
1337 rename = "operationStatus",
1338 default,
1339 skip_serializing_if = "Option::is_none"
1340 )]
1341 pub operation_status: Option<serde_json::Value>,
1342 #[doc = "Owner of the endpoint Supported values are \"library\", \"agentcloud\""]
1343 pub owner: String,
1344 #[serde(
1345 rename = "readersGroup",
1346 default,
1347 skip_serializing_if = "Option::is_none"
1348 )]
1349 pub readers_group: Option<IdentityRef>,
1350 #[doc = "All other project references where the service endpoint is shared."]
1351 #[serde(
1352 rename = "serviceEndpointProjectReferences",
1353 default,
1354 deserialize_with = "crate::serde::deserialize_null_as_default",
1355 skip_serializing_if = "Vec::is_empty"
1356 )]
1357 pub service_endpoint_project_references: Vec<ServiceEndpointProjectReference>,
1358 #[doc = "Gets or sets the type of the endpoint."]
1359 #[serde(rename = "type")]
1360 pub type_: String,
1361 #[doc = "Gets or sets the url of the endpoint."]
1362 pub url: String,
1363}
1364impl ServiceEndpoint {
1365 pub fn new(
1366 authorization: EndpointAuthorization,
1367 created_by: IdentityRef,
1368 data: serde_json::Value,
1369 id: String,
1370 is_ready: bool,
1371 is_shared: bool,
1372 name: String,
1373 owner: String,
1374 type_: String,
1375 url: String,
1376 ) -> Self {
1377 Self {
1378 administrators_group: None,
1379 authorization,
1380 created_by,
1381 data,
1382 description: None,
1383 group_scope_id: None,
1384 id,
1385 is_ready,
1386 is_shared,
1387 name,
1388 operation_status: None,
1389 owner,
1390 readers_group: None,
1391 service_endpoint_project_references: Vec::new(),
1392 type_,
1393 url,
1394 }
1395 }
1396}
1397#[doc = "Represents the authentication scheme used to authenticate the endpoint."]
1398#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
1399pub struct ServiceEndpointAuthenticationScheme {
1400 #[doc = "Gets or sets the authorization headers of service endpoint authentication scheme."]
1401 #[serde(
1402 rename = "authorizationHeaders",
1403 default,
1404 deserialize_with = "crate::serde::deserialize_null_as_default",
1405 skip_serializing_if = "Vec::is_empty"
1406 )]
1407 pub authorization_headers: Vec<AuthorizationHeader>,
1408 #[doc = "Gets or sets the Authorization url required to authenticate using OAuth2"]
1409 #[serde(
1410 rename = "authorizationUrl",
1411 default,
1412 skip_serializing_if = "Option::is_none"
1413 )]
1414 pub authorization_url: Option<String>,
1415 #[doc = "Gets or sets the certificates of service endpoint authentication scheme."]
1416 #[serde(
1417 rename = "clientCertificates",
1418 default,
1419 deserialize_with = "crate::serde::deserialize_null_as_default",
1420 skip_serializing_if = "Vec::is_empty"
1421 )]
1422 pub client_certificates: Vec<ClientCertificate>,
1423 #[doc = "Gets or sets the data source bindings of the endpoint."]
1424 #[serde(
1425 rename = "dataSourceBindings",
1426 default,
1427 deserialize_with = "crate::serde::deserialize_null_as_default",
1428 skip_serializing_if = "Vec::is_empty"
1429 )]
1430 pub data_source_bindings: Vec<DataSourceBinding>,
1431 #[doc = "Gets or sets the display name for the service endpoint authentication scheme."]
1432 #[serde(
1433 rename = "displayName",
1434 default,
1435 skip_serializing_if = "Option::is_none"
1436 )]
1437 pub display_name: Option<String>,
1438 #[doc = "Gets or sets the input descriptors for the service endpoint authentication scheme."]
1439 #[serde(
1440 rename = "inputDescriptors",
1441 default,
1442 deserialize_with = "crate::serde::deserialize_null_as_default",
1443 skip_serializing_if = "Vec::is_empty"
1444 )]
1445 pub input_descriptors: Vec<InputDescriptor>,
1446 #[doc = "Gets or sets the properties of service endpoint authentication scheme."]
1447 #[serde(default, skip_serializing_if = "Option::is_none")]
1448 pub properties: Option<serde_json::Value>,
1449 #[doc = "Gets or sets whether this auth scheme requires OAuth2 configuration or not."]
1450 #[serde(
1451 rename = "requiresOAuth2Configuration",
1452 default,
1453 skip_serializing_if = "Option::is_none"
1454 )]
1455 pub requires_o_auth2_configuration: Option<bool>,
1456 #[doc = "Gets or sets the scheme for service endpoint authentication."]
1457 #[serde(default, skip_serializing_if = "Option::is_none")]
1458 pub scheme: Option<String>,
1459}
1460impl ServiceEndpointAuthenticationScheme {
1461 pub fn new() -> Self {
1462 Self::default()
1463 }
1464}
1465#[doc = "Represents details of the service endpoint."]
1466#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
1467pub struct ServiceEndpointDetails {
1468 #[doc = "Represents the authorization used for service endpoint."]
1469 #[serde(default, skip_serializing_if = "Option::is_none")]
1470 pub authorization: Option<EndpointAuthorization>,
1471 #[doc = "Gets or sets the data of service endpoint."]
1472 #[serde(default, skip_serializing_if = "Option::is_none")]
1473 pub data: Option<serde_json::Value>,
1474 #[doc = "Gets or sets the type of service endpoint."]
1475 #[serde(rename = "type", default, skip_serializing_if = "Option::is_none")]
1476 pub type_: Option<String>,
1477 #[doc = "Gets or sets the connection url of service endpoint."]
1478 #[serde(default, skip_serializing_if = "Option::is_none")]
1479 pub url: Option<String>,
1480}
1481impl ServiceEndpointDetails {
1482 pub fn new() -> Self {
1483 Self::default()
1484 }
1485}
1486#[doc = "Represents service endpoint execution data."]
1487#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
1488pub struct ServiceEndpointExecutionData {
1489 #[doc = "Represents execution owner of the service endpoint."]
1490 #[serde(default, skip_serializing_if = "Option::is_none")]
1491 pub definition: Option<ServiceEndpointExecutionOwner>,
1492 #[doc = "Gets the finish time of service endpoint execution."]
1493 #[serde(
1494 rename = "finishTime",
1495 default,
1496 skip_serializing_if = "Option::is_none",
1497 with = "crate::date_time::rfc3339::option"
1498 )]
1499 pub finish_time: Option<time::OffsetDateTime>,
1500 #[doc = "Gets the Id of service endpoint execution data."]
1501 #[serde(default, skip_serializing_if = "Option::is_none")]
1502 pub id: Option<i64>,
1503 #[doc = "Represents execution owner of the service endpoint."]
1504 #[serde(default, skip_serializing_if = "Option::is_none")]
1505 pub owner: Option<ServiceEndpointExecutionOwner>,
1506 #[doc = "Gets the additional details about the instance that used the service endpoint."]
1507 #[serde(
1508 rename = "ownerDetails",
1509 default,
1510 skip_serializing_if = "Option::is_none"
1511 )]
1512 pub owner_details: Option<String>,
1513 #[doc = "Gets the plan type of service endpoint execution data."]
1514 #[serde(rename = "planType", default, skip_serializing_if = "Option::is_none")]
1515 pub plan_type: Option<String>,
1516 #[doc = "Gets the result of service endpoint execution."]
1517 #[serde(default, skip_serializing_if = "Option::is_none")]
1518 pub result: Option<service_endpoint_execution_data::Result>,
1519 #[doc = "Gets the start time of service endpoint execution."]
1520 #[serde(
1521 rename = "startTime",
1522 default,
1523 skip_serializing_if = "Option::is_none",
1524 with = "crate::date_time::rfc3339::option"
1525 )]
1526 pub start_time: Option<time::OffsetDateTime>,
1527}
1528impl ServiceEndpointExecutionData {
1529 pub fn new() -> Self {
1530 Self::default()
1531 }
1532}
1533pub mod service_endpoint_execution_data {
1534 use super::*;
1535 #[doc = "Gets the result of service endpoint execution."]
1536 #[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
1537 pub enum Result {
1538 #[serde(rename = "succeeded")]
1539 Succeeded,
1540 #[serde(rename = "succeededWithIssues")]
1541 SucceededWithIssues,
1542 #[serde(rename = "failed")]
1543 Failed,
1544 #[serde(rename = "canceled")]
1545 Canceled,
1546 #[serde(rename = "skipped")]
1547 Skipped,
1548 #[serde(rename = "abandoned")]
1549 Abandoned,
1550 }
1551}
1552#[doc = "Represents execution owner of the service endpoint."]
1553#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
1554pub struct ServiceEndpointExecutionOwner {
1555 #[doc = "The class to represent a collection of REST reference links."]
1556 #[serde(rename = "_links", default, skip_serializing_if = "Option::is_none")]
1557 pub links: Option<ReferenceLinks>,
1558 #[doc = "Gets or sets the Id of service endpoint execution owner."]
1559 #[serde(default, skip_serializing_if = "Option::is_none")]
1560 pub id: Option<i32>,
1561 #[doc = "Gets or sets the name of service endpoint execution owner."]
1562 #[serde(default, skip_serializing_if = "Option::is_none")]
1563 pub name: Option<String>,
1564}
1565impl ServiceEndpointExecutionOwner {
1566 pub fn new() -> Self {
1567 Self::default()
1568 }
1569}
1570#[doc = "Represents the details of service endpoint execution."]
1571#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
1572pub struct ServiceEndpointExecutionRecord {
1573 #[doc = "Represents service endpoint execution data."]
1574 #[serde(default, skip_serializing_if = "Option::is_none")]
1575 pub data: Option<ServiceEndpointExecutionData>,
1576 #[doc = "Gets the Id of service endpoint."]
1577 #[serde(
1578 rename = "endpointId",
1579 default,
1580 skip_serializing_if = "Option::is_none"
1581 )]
1582 pub endpoint_id: Option<String>,
1583}
1584impl ServiceEndpointExecutionRecord {
1585 pub fn new() -> Self {
1586 Self::default()
1587 }
1588}
1589#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
1590pub struct ServiceEndpointExecutionRecordList {
1591 #[serde(default, skip_serializing_if = "Option::is_none")]
1592 pub count: Option<i32>,
1593 #[serde(
1594 default,
1595 deserialize_with = "crate::serde::deserialize_null_as_default",
1596 skip_serializing_if = "Vec::is_empty"
1597 )]
1598 pub value: Vec<ServiceEndpointExecutionRecord>,
1599}
1600impl ServiceEndpointExecutionRecordList {
1601 pub fn new() -> Self {
1602 Self::default()
1603 }
1604}
1605#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
1606pub struct ServiceEndpointExecutionRecordsInput {
1607 #[doc = "Represents service endpoint execution data."]
1608 #[serde(default, skip_serializing_if = "Option::is_none")]
1609 pub data: Option<ServiceEndpointExecutionData>,
1610 #[serde(
1611 rename = "endpointIds",
1612 default,
1613 deserialize_with = "crate::serde::deserialize_null_as_default",
1614 skip_serializing_if = "Vec::is_empty"
1615 )]
1616 pub endpoint_ids: Vec<String>,
1617}
1618impl ServiceEndpointExecutionRecordsInput {
1619 pub fn new() -> Self {
1620 Self::default()
1621 }
1622}
1623#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
1624pub struct ServiceEndpointList {
1625 #[serde(default, skip_serializing_if = "Option::is_none")]
1626 pub count: Option<i32>,
1627 #[serde(
1628 default,
1629 deserialize_with = "crate::serde::deserialize_null_as_default",
1630 skip_serializing_if = "Vec::is_empty"
1631 )]
1632 pub value: Vec<ServiceEndpoint>,
1633}
1634impl ServiceEndpointList {
1635 pub fn new() -> Self {
1636 Self::default()
1637 }
1638}
1639#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
1640pub struct ServiceEndpointOAuthConfigurationReference {
1641 #[serde(
1642 rename = "configurationId",
1643 default,
1644 skip_serializing_if = "Option::is_none"
1645 )]
1646 pub configuration_id: Option<String>,
1647 #[serde(
1648 rename = "serviceEndpointId",
1649 default,
1650 skip_serializing_if = "Option::is_none"
1651 )]
1652 pub service_endpoint_id: Option<String>,
1653 #[serde(
1654 rename = "serviceEndpointProjectId",
1655 default,
1656 skip_serializing_if = "Option::is_none"
1657 )]
1658 pub service_endpoint_project_id: Option<String>,
1659}
1660impl ServiceEndpointOAuthConfigurationReference {
1661 pub fn new() -> Self {
1662 Self::default()
1663 }
1664}
1665#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
1666pub struct ServiceEndpointProjectReference {
1667 #[doc = "Gets or sets description of the service endpoint."]
1668 #[serde(default, skip_serializing_if = "Option::is_none")]
1669 pub description: Option<String>,
1670 #[doc = "Gets or sets name of the service endpoint."]
1671 #[serde(default, skip_serializing_if = "Option::is_none")]
1672 pub name: Option<String>,
1673 #[serde(rename = "projectReference")]
1674 pub project_reference: ProjectReference,
1675}
1676impl ServiceEndpointProjectReference {
1677 pub fn new(project_reference: ProjectReference) -> Self {
1678 Self {
1679 description: None,
1680 name: None,
1681 project_reference,
1682 }
1683 }
1684}
1685#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
1686pub struct ServiceEndpointRequest {
1687 #[doc = "Represents details of the service endpoint data source."]
1688 #[serde(
1689 rename = "dataSourceDetails",
1690 default,
1691 skip_serializing_if = "Option::is_none"
1692 )]
1693 pub data_source_details: Option<DataSourceDetails>,
1694 #[doc = "Represents template to transform the result data."]
1695 #[serde(
1696 rename = "resultTransformationDetails",
1697 default,
1698 skip_serializing_if = "Option::is_none"
1699 )]
1700 pub result_transformation_details: Option<ResultTransformationDetails>,
1701 #[doc = "Represents details of the service endpoint."]
1702 #[serde(
1703 rename = "serviceEndpointDetails",
1704 default,
1705 skip_serializing_if = "Option::is_none"
1706 )]
1707 pub service_endpoint_details: Option<ServiceEndpointDetails>,
1708}
1709impl ServiceEndpointRequest {
1710 pub fn new() -> Self {
1711 Self::default()
1712 }
1713}
1714#[doc = "Represents result of the service endpoint request."]
1715#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
1716pub struct ServiceEndpointRequestResult {
1717 #[doc = "Gets or sets the parameters used to make subsequent calls to the data source"]
1718 #[serde(
1719 rename = "callbackContextParameters",
1720 default,
1721 skip_serializing_if = "Option::is_none"
1722 )]
1723 pub callback_context_parameters: Option<serde_json::Value>,
1724 #[doc = "Gets or sets the flat that decides if another call to the data source is to be made"]
1725 #[serde(
1726 rename = "callbackRequired",
1727 default,
1728 skip_serializing_if = "Option::is_none"
1729 )]
1730 pub callback_required: Option<bool>,
1731 #[doc = "Gets or sets the error message of the service endpoint request result."]
1732 #[serde(
1733 rename = "errorMessage",
1734 default,
1735 skip_serializing_if = "Option::is_none"
1736 )]
1737 pub error_message: Option<String>,
1738 #[doc = "Represents an abstract JSON token."]
1739 #[serde(default, skip_serializing_if = "Option::is_none")]
1740 pub result: Option<JToken>,
1741 #[doc = "Gets or sets the status code of the service endpoint request result."]
1742 #[serde(
1743 rename = "statusCode",
1744 default,
1745 skip_serializing_if = "Option::is_none"
1746 )]
1747 pub status_code: Option<service_endpoint_request_result::StatusCode>,
1748}
1749impl ServiceEndpointRequestResult {
1750 pub fn new() -> Self {
1751 Self::default()
1752 }
1753}
1754pub mod service_endpoint_request_result {
1755 use super::*;
1756 #[doc = "Gets or sets the status code of the service endpoint request result."]
1757 #[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
1758 pub enum StatusCode {
1759 #[serde(rename = "continue")]
1760 Continue,
1761 #[serde(rename = "switchingProtocols")]
1762 SwitchingProtocols,
1763 #[serde(rename = "ok")]
1764 Ok,
1765 #[serde(rename = "created")]
1766 Created,
1767 #[serde(rename = "accepted")]
1768 Accepted,
1769 #[serde(rename = "nonAuthoritativeInformation")]
1770 NonAuthoritativeInformation,
1771 #[serde(rename = "noContent")]
1772 NoContent,
1773 #[serde(rename = "resetContent")]
1774 ResetContent,
1775 #[serde(rename = "partialContent")]
1776 PartialContent,
1777 #[serde(rename = "multipleChoices")]
1778 MultipleChoices,
1779 #[serde(rename = "ambiguous")]
1780 Ambiguous,
1781 #[serde(rename = "movedPermanently")]
1782 MovedPermanently,
1783 #[serde(rename = "moved")]
1784 Moved,
1785 #[serde(rename = "found")]
1786 Found,
1787 #[serde(rename = "redirect")]
1788 Redirect,
1789 #[serde(rename = "seeOther")]
1790 SeeOther,
1791 #[serde(rename = "redirectMethod")]
1792 RedirectMethod,
1793 #[serde(rename = "notModified")]
1794 NotModified,
1795 #[serde(rename = "useProxy")]
1796 UseProxy,
1797 #[serde(rename = "unused")]
1798 Unused,
1799 #[serde(rename = "temporaryRedirect")]
1800 TemporaryRedirect,
1801 #[serde(rename = "redirectKeepVerb")]
1802 RedirectKeepVerb,
1803 #[serde(rename = "badRequest")]
1804 BadRequest,
1805 #[serde(rename = "unauthorized")]
1806 Unauthorized,
1807 #[serde(rename = "paymentRequired")]
1808 PaymentRequired,
1809 #[serde(rename = "forbidden")]
1810 Forbidden,
1811 #[serde(rename = "notFound")]
1812 NotFound,
1813 #[serde(rename = "methodNotAllowed")]
1814 MethodNotAllowed,
1815 #[serde(rename = "notAcceptable")]
1816 NotAcceptable,
1817 #[serde(rename = "proxyAuthenticationRequired")]
1818 ProxyAuthenticationRequired,
1819 #[serde(rename = "requestTimeout")]
1820 RequestTimeout,
1821 #[serde(rename = "conflict")]
1822 Conflict,
1823 #[serde(rename = "gone")]
1824 Gone,
1825 #[serde(rename = "lengthRequired")]
1826 LengthRequired,
1827 #[serde(rename = "preconditionFailed")]
1828 PreconditionFailed,
1829 #[serde(rename = "requestEntityTooLarge")]
1830 RequestEntityTooLarge,
1831 #[serde(rename = "requestUriTooLong")]
1832 RequestUriTooLong,
1833 #[serde(rename = "unsupportedMediaType")]
1834 UnsupportedMediaType,
1835 #[serde(rename = "requestedRangeNotSatisfiable")]
1836 RequestedRangeNotSatisfiable,
1837 #[serde(rename = "expectationFailed")]
1838 ExpectationFailed,
1839 #[serde(rename = "upgradeRequired")]
1840 UpgradeRequired,
1841 #[serde(rename = "internalServerError")]
1842 InternalServerError,
1843 #[serde(rename = "notImplemented")]
1844 NotImplemented,
1845 #[serde(rename = "badGateway")]
1846 BadGateway,
1847 #[serde(rename = "serviceUnavailable")]
1848 ServiceUnavailable,
1849 #[serde(rename = "gatewayTimeout")]
1850 GatewayTimeout,
1851 #[serde(rename = "httpVersionNotSupported")]
1852 HttpVersionNotSupported,
1853 }
1854}
1855#[doc = "Represents type of the service endpoint."]
1856#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
1857pub struct ServiceEndpointType {
1858 #[doc = "Authentication scheme of service endpoint type."]
1859 #[serde(
1860 rename = "authenticationSchemes",
1861 default,
1862 deserialize_with = "crate::serde::deserialize_null_as_default",
1863 skip_serializing_if = "Vec::is_empty"
1864 )]
1865 pub authentication_schemes: Vec<ServiceEndpointAuthenticationScheme>,
1866 #[doc = "Data sources of service endpoint type."]
1867 #[serde(
1868 rename = "dataSources",
1869 default,
1870 deserialize_with = "crate::serde::deserialize_null_as_default",
1871 skip_serializing_if = "Vec::is_empty"
1872 )]
1873 pub data_sources: Vec<DataSource>,
1874 #[doc = "Dependency data of service endpoint type."]
1875 #[serde(
1876 rename = "dependencyData",
1877 default,
1878 deserialize_with = "crate::serde::deserialize_null_as_default",
1879 skip_serializing_if = "Vec::is_empty"
1880 )]
1881 pub dependency_data: Vec<DependencyData>,
1882 #[doc = "Gets or sets the description of service endpoint type."]
1883 #[serde(default, skip_serializing_if = "Option::is_none")]
1884 pub description: Option<String>,
1885 #[doc = "Gets or sets the display name of service endpoint type."]
1886 #[serde(
1887 rename = "displayName",
1888 default,
1889 skip_serializing_if = "Option::is_none"
1890 )]
1891 pub display_name: Option<String>,
1892 #[doc = "Represents url of the service endpoint."]
1893 #[serde(
1894 rename = "endpointUrl",
1895 default,
1896 skip_serializing_if = "Option::is_none"
1897 )]
1898 pub endpoint_url: Option<EndpointUrl>,
1899 #[doc = "Specifies the public url of the help documentation."]
1900 #[serde(rename = "helpLink", default, skip_serializing_if = "Option::is_none")]
1901 pub help_link: Option<HelpLink>,
1902 #[doc = "Gets or sets the help text shown at the endpoint create dialog."]
1903 #[serde(
1904 rename = "helpMarkDown",
1905 default,
1906 skip_serializing_if = "Option::is_none"
1907 )]
1908 pub help_mark_down: Option<String>,
1909 #[doc = "Gets or sets the icon url of service endpoint type."]
1910 #[serde(rename = "iconUrl", default, skip_serializing_if = "Option::is_none")]
1911 pub icon_url: Option<String>,
1912 #[doc = "Input descriptor of service endpoint type."]
1913 #[serde(
1914 rename = "inputDescriptors",
1915 default,
1916 deserialize_with = "crate::serde::deserialize_null_as_default",
1917 skip_serializing_if = "Vec::is_empty"
1918 )]
1919 pub input_descriptors: Vec<InputDescriptor>,
1920 #[doc = "Gets or sets the name of service endpoint type."]
1921 #[serde(default, skip_serializing_if = "Option::is_none")]
1922 pub name: Option<String>,
1923 #[doc = "Trusted hosts of a service endpoint type."]
1924 #[serde(
1925 rename = "trustedHosts",
1926 default,
1927 deserialize_with = "crate::serde::deserialize_null_as_default",
1928 skip_serializing_if = "Vec::is_empty"
1929 )]
1930 pub trusted_hosts: Vec<String>,
1931 #[doc = "Gets or sets the ui contribution id of service endpoint type."]
1932 #[serde(
1933 rename = "uiContributionId",
1934 default,
1935 skip_serializing_if = "Option::is_none"
1936 )]
1937 pub ui_contribution_id: Option<String>,
1938}
1939impl ServiceEndpointType {
1940 pub fn new() -> Self {
1941 Self::default()
1942 }
1943}
1944#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
1945pub struct ServiceEndpointTypeList {
1946 #[serde(default, skip_serializing_if = "Option::is_none")]
1947 pub count: Option<i32>,
1948 #[serde(
1949 default,
1950 deserialize_with = "crate::serde::deserialize_null_as_default",
1951 skip_serializing_if = "Vec::is_empty"
1952 )]
1953 pub value: Vec<ServiceEndpointType>,
1954}
1955impl ServiceEndpointTypeList {
1956 pub fn new() -> Self {
1957 Self::default()
1958 }
1959}
1960#[doc = "This class is used to serialize collections as a single JSON object on the wire."]
1961#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
1962pub struct VssJsonCollectionWrapper {
1963 #[serde(flatten)]
1964 pub vss_json_collection_wrapper_base: VssJsonCollectionWrapperBase,
1965 #[doc = "The serialized item."]
1966 #[serde(default, skip_serializing_if = "Option::is_none")]
1967 pub value: Option<String>,
1968}
1969impl VssJsonCollectionWrapper {
1970 pub fn new() -> Self {
1971 Self::default()
1972 }
1973}
1974#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, Default)]
1975pub struct VssJsonCollectionWrapperBase {
1976 #[doc = "The number of serialized items."]
1977 #[serde(default, skip_serializing_if = "Option::is_none")]
1978 pub count: Option<i32>,
1979}
1980impl VssJsonCollectionWrapperBase {
1981 pub fn new() -> Self {
1982 Self::default()
1983 }
1984}