1use serde::{Deserialize, Serialize};
2
3#[derive(Debug, Clone, Serialize, Deserialize)]
6#[serde(rename_all = "camelCase")]
7pub struct HealthResponse {
8 pub status: String,
9 pub version: String,
10 pub services: Vec<String>,
11}
12
13#[derive(Debug, Clone, Serialize, Deserialize)]
16#[serde(rename_all = "camelCase")]
17pub struct ResetResponse {
18 pub status: String,
19}
20
21#[derive(Debug, Clone, Serialize, Deserialize)]
22#[serde(rename_all = "camelCase")]
23pub struct ResetServiceResponse {
24 pub reset: String,
25}
26
27#[derive(Debug, Clone, Serialize, Deserialize)]
30#[serde(rename_all = "camelCase")]
31pub struct RdsTag {
32 pub key: String,
33 pub value: String,
34}
35
36#[derive(Debug, Clone, Serialize, Deserialize)]
37#[serde(rename_all = "camelCase")]
38pub struct RdsInstance {
39 pub db_instance_identifier: String,
40 pub db_instance_arn: String,
41 pub db_instance_class: String,
42 pub engine: String,
43 pub engine_version: String,
44 pub db_instance_status: String,
45 pub master_username: String,
46 pub db_name: Option<String>,
47 pub endpoint_address: String,
48 pub port: i32,
49 pub allocated_storage: i32,
50 pub publicly_accessible: bool,
51 pub deletion_protection: bool,
52 pub created_at: String,
53 pub dbi_resource_id: String,
54 pub container_id: String,
55 pub host_port: u16,
56 pub tags: Vec<RdsTag>,
57}
58
59#[derive(Debug, Clone, Serialize, Deserialize)]
60#[serde(rename_all = "camelCase")]
61pub struct RdsInstancesResponse {
62 pub instances: Vec<RdsInstance>,
63}
64
65#[derive(Debug, Clone, Serialize, Deserialize)]
68#[serde(rename_all = "camelCase")]
69pub struct LambdaInvocation {
70 pub function_arn: String,
71 pub payload: String,
72 pub source: String,
73 pub timestamp: String,
74}
75
76#[derive(Debug, Clone, Serialize, Deserialize)]
77#[serde(rename_all = "camelCase")]
78pub struct LambdaInvocationsResponse {
79 pub invocations: Vec<LambdaInvocation>,
80}
81
82#[derive(Debug, Clone, Serialize, Deserialize)]
83#[serde(rename_all = "camelCase")]
84pub struct WarmContainer {
85 pub function_name: String,
86 pub runtime: String,
87 pub container_id: String,
88 pub last_used_secs_ago: u64,
89}
90
91#[derive(Debug, Clone, Serialize, Deserialize)]
92#[serde(rename_all = "camelCase")]
93pub struct WarmContainersResponse {
94 pub containers: Vec<WarmContainer>,
95}
96
97#[derive(Debug, Clone, Serialize, Deserialize)]
98#[serde(rename_all = "camelCase")]
99pub struct EvictContainerResponse {
100 pub evicted: bool,
101}
102
103#[derive(Debug, Clone, Serialize, Deserialize)]
106#[serde(rename_all = "camelCase")]
107pub struct SentEmail {
108 pub message_id: String,
109 pub from: String,
110 pub to: Vec<String>,
111 #[serde(default)]
112 pub cc: Vec<String>,
113 #[serde(default)]
114 pub bcc: Vec<String>,
115 pub subject: Option<String>,
116 pub html_body: Option<String>,
117 pub text_body: Option<String>,
118 pub raw_data: Option<String>,
119 pub template_name: Option<String>,
120 pub template_data: Option<String>,
121 pub timestamp: String,
122}
123
124#[derive(Debug, Clone, Serialize, Deserialize)]
125#[serde(rename_all = "camelCase")]
126pub struct SesEmailsResponse {
127 pub emails: Vec<SentEmail>,
128}
129
130#[derive(Debug, Clone, Serialize, Deserialize)]
131#[serde(rename_all = "camelCase")]
132pub struct InboundEmailRequest {
133 pub from: String,
134 pub to: Vec<String>,
135 pub subject: String,
136 pub body: String,
137}
138
139#[derive(Debug, Clone, Serialize, Deserialize)]
140#[serde(rename_all = "camelCase")]
141pub struct InboundActionExecuted {
142 pub rule: String,
143 pub action_type: String,
144}
145
146#[derive(Debug, Clone, Serialize, Deserialize)]
147#[serde(rename_all = "camelCase")]
148pub struct InboundEmailResponse {
149 pub message_id: String,
150 pub matched_rules: Vec<String>,
151 pub actions_executed: Vec<InboundActionExecuted>,
152}
153
154#[derive(Debug, Clone, Serialize, Deserialize)]
157#[serde(rename_all = "camelCase")]
158pub struct SnsMessage {
159 pub message_id: String,
160 pub topic_arn: String,
161 pub message: String,
162 pub subject: Option<String>,
163 pub timestamp: String,
164}
165
166#[derive(Debug, Clone, Serialize, Deserialize)]
167#[serde(rename_all = "camelCase")]
168pub struct SnsMessagesResponse {
169 pub messages: Vec<SnsMessage>,
170}
171
172#[derive(Debug, Clone, Serialize, Deserialize)]
173#[serde(rename_all = "camelCase")]
174pub struct SnsSmsMessage {
175 pub phone_number: String,
176 pub message: String,
177}
178
179#[derive(Debug, Clone, Serialize, Deserialize)]
180#[serde(rename_all = "camelCase")]
181pub struct SnsSmsResponse {
182 pub messages: Vec<SnsSmsMessage>,
183}
184
185#[derive(Debug, Clone, Serialize, Deserialize)]
186#[serde(rename_all = "camelCase")]
187pub struct PendingConfirmation {
188 pub subscription_arn: String,
189 pub topic_arn: String,
190 pub protocol: String,
191 pub endpoint: String,
192 pub token: Option<String>,
193}
194
195#[derive(Debug, Clone, Serialize, Deserialize)]
196#[serde(rename_all = "camelCase")]
197pub struct PendingConfirmationsResponse {
198 pub pending_confirmations: Vec<PendingConfirmation>,
199}
200
201#[derive(Debug, Clone, Serialize, Deserialize)]
202#[serde(rename_all = "camelCase")]
203pub struct ConfirmSubscriptionRequest {
204 pub subscription_arn: String,
205}
206
207#[derive(Debug, Clone, Serialize, Deserialize)]
208#[serde(rename_all = "camelCase")]
209pub struct ConfirmSubscriptionResponse {
210 pub confirmed: bool,
211}
212
213#[derive(Debug, Clone, Serialize, Deserialize)]
216#[serde(rename_all = "camelCase")]
217pub struct SqsMessageInfo {
218 pub message_id: String,
219 pub body: String,
220 pub receive_count: u64,
221 pub in_flight: bool,
222 pub created_at: String,
223}
224
225#[derive(Debug, Clone, Serialize, Deserialize)]
226#[serde(rename_all = "camelCase")]
227pub struct SqsQueueMessages {
228 pub queue_url: String,
229 pub queue_name: String,
230 pub messages: Vec<SqsMessageInfo>,
231}
232
233#[derive(Debug, Clone, Serialize, Deserialize)]
234#[serde(rename_all = "camelCase")]
235pub struct SqsMessagesResponse {
236 pub queues: Vec<SqsQueueMessages>,
237}
238
239#[derive(Debug, Clone, Serialize, Deserialize)]
240#[serde(rename_all = "camelCase")]
241pub struct ExpirationTickResponse {
242 pub expired_messages: u64,
243}
244
245#[derive(Debug, Clone, Serialize, Deserialize)]
246#[serde(rename_all = "camelCase")]
247pub struct ForceDlqResponse {
248 pub moved_messages: u64,
249}
250
251#[derive(Debug, Clone, Serialize, Deserialize)]
254#[serde(rename_all = "camelCase")]
255pub struct EventBridgeEvent {
256 pub event_id: String,
257 pub source: String,
258 pub detail_type: String,
259 pub detail: String,
260 pub bus_name: String,
261 pub timestamp: String,
262}
263
264#[derive(Debug, Clone, Serialize, Deserialize)]
265#[serde(rename_all = "camelCase")]
266pub struct EventBridgeLambdaDelivery {
267 pub function_arn: String,
268 pub payload: String,
269 pub timestamp: String,
270}
271
272#[derive(Debug, Clone, Serialize, Deserialize)]
273#[serde(rename_all = "camelCase")]
274pub struct EventBridgeLogDelivery {
275 pub log_group_arn: String,
276 pub payload: String,
277 pub timestamp: String,
278}
279
280#[derive(Debug, Clone, Serialize, Deserialize)]
281#[serde(rename_all = "camelCase")]
282pub struct EventBridgeDeliveries {
283 pub lambda: Vec<EventBridgeLambdaDelivery>,
284 pub logs: Vec<EventBridgeLogDelivery>,
285}
286
287#[derive(Debug, Clone, Serialize, Deserialize)]
288#[serde(rename_all = "camelCase")]
289pub struct EventHistoryResponse {
290 pub events: Vec<EventBridgeEvent>,
291 pub deliveries: EventBridgeDeliveries,
292}
293
294#[derive(Debug, Clone, Serialize, Deserialize)]
295#[serde(rename_all = "camelCase")]
296pub struct FireRuleRequest {
297 pub bus_name: Option<String>,
298 pub rule_name: String,
299}
300
301#[derive(Debug, Clone, Serialize, Deserialize)]
302#[serde(rename_all = "camelCase")]
303pub struct FireRuleTarget {
304 #[serde(rename = "type")]
305 pub target_type: String,
306 pub arn: String,
307}
308
309#[derive(Debug, Clone, Serialize, Deserialize)]
310#[serde(rename_all = "camelCase")]
311pub struct FireRuleResponse {
312 pub targets: Vec<FireRuleTarget>,
313}
314
315#[derive(Debug, Clone, Serialize, Deserialize)]
318#[serde(rename_all = "camelCase")]
319pub struct SchedulerSchedule {
320 pub account_id: String,
321 pub group_name: String,
322 pub name: String,
323 pub arn: String,
324 pub state: String,
325 pub schedule_expression: String,
326 pub target_arn: String,
327 pub last_fired: Option<String>,
328}
329
330#[derive(Debug, Clone, Serialize, Deserialize)]
331#[serde(rename_all = "camelCase")]
332pub struct SchedulerSchedulesResponse {
333 pub schedules: Vec<SchedulerSchedule>,
334}
335
336#[derive(Debug, Clone, Serialize, Deserialize)]
337#[serde(rename_all = "camelCase")]
338pub struct FireScheduleResponse {
339 pub schedule_arn: String,
340 pub target_arn: String,
341}
342
343#[derive(Debug, Clone, Serialize, Deserialize)]
346#[serde(rename_all = "camelCase")]
347pub struct S3Notification {
348 pub bucket: String,
349 pub key: String,
350 pub event_type: String,
351 pub timestamp: String,
352}
353
354#[derive(Debug, Clone, Serialize, Deserialize)]
355#[serde(rename_all = "camelCase")]
356pub struct S3NotificationsResponse {
357 pub notifications: Vec<S3Notification>,
358}
359
360#[derive(Debug, Clone, Serialize, Deserialize)]
361#[serde(rename_all = "camelCase")]
362pub struct LifecycleTickResponse {
363 pub processed_buckets: u64,
364 pub expired_objects: u64,
365 pub transitioned_objects: u64,
366}
367
368#[derive(Debug, Clone, Serialize, Deserialize)]
371#[serde(rename_all = "camelCase")]
372pub struct TtlTickResponse {
373 pub expired_items: u64,
374}
375
376#[derive(Debug, Clone, Serialize, Deserialize)]
379#[serde(rename_all = "camelCase")]
380pub struct RotationTickResponse {
381 pub rotated_secrets: Vec<String>,
382}
383
384#[derive(Debug, Clone, Serialize, Deserialize)]
387#[serde(rename_all = "camelCase")]
388pub struct ElastiCacheCluster {
389 pub cache_cluster_id: String,
390 pub cache_cluster_status: String,
391 pub engine: String,
392 pub engine_version: String,
393 pub cache_node_type: String,
394 pub num_cache_nodes: i32,
395 pub replication_group_id: Option<String>,
396 pub port: Option<i32>,
397 pub host_port: Option<u16>,
398 pub container_id: Option<String>,
399}
400
401#[derive(Debug, Clone, Serialize, Deserialize)]
402#[serde(rename_all = "camelCase")]
403pub struct ElastiCacheClustersResponse {
404 pub clusters: Vec<ElastiCacheCluster>,
405}
406
407#[derive(Debug, Clone, Serialize, Deserialize)]
408#[serde(rename_all = "camelCase")]
409pub struct ElastiCacheReplicationGroupIntrospection {
410 pub replication_group_id: String,
411 pub status: String,
412 pub description: String,
413 pub member_clusters: Vec<String>,
414 pub automatic_failover: bool,
415 pub multi_az: bool,
416 pub engine: String,
417 pub engine_version: String,
418 pub cache_node_type: String,
419 pub num_cache_clusters: i32,
420}
421
422#[derive(Debug, Clone, Serialize, Deserialize)]
423#[serde(rename_all = "camelCase")]
424pub struct ElastiCacheReplicationGroupsResponse {
425 pub replication_groups: Vec<ElastiCacheReplicationGroupIntrospection>,
426}
427
428#[derive(Debug, Clone, Serialize, Deserialize)]
429#[serde(rename_all = "camelCase")]
430pub struct ElastiCacheServerlessCacheIntrospection {
431 pub serverless_cache_name: String,
432 pub status: String,
433 pub engine: String,
434 pub engine_version: String,
435 pub cache_node_type: Option<String>,
436}
437
438#[derive(Debug, Clone, Serialize, Deserialize)]
439#[serde(rename_all = "camelCase")]
440pub struct ElastiCacheServerlessCachesResponse {
441 pub serverless_caches: Vec<ElastiCacheServerlessCacheIntrospection>,
442}
443
444#[derive(Debug, Clone, Serialize, Deserialize)]
447#[serde(rename_all = "camelCase")]
448pub struct StepFunctionsExecution {
449 pub execution_arn: String,
450 pub state_machine_arn: String,
451 pub name: String,
452 pub status: String,
453 #[serde(skip_serializing_if = "Option::is_none")]
454 pub input: Option<String>,
455 #[serde(skip_serializing_if = "Option::is_none")]
456 pub output: Option<String>,
457 pub start_date: String,
458 #[serde(skip_serializing_if = "Option::is_none")]
459 pub stop_date: Option<String>,
460}
461
462#[derive(Debug, Clone, Serialize, Deserialize)]
463#[serde(rename_all = "camelCase")]
464pub struct StepFunctionsExecutionsResponse {
465 pub executions: Vec<StepFunctionsExecution>,
466}
467
468#[derive(Debug, Clone, Serialize, Deserialize)]
471#[serde(rename_all = "camelCase")]
472pub struct UserConfirmationCodes {
473 pub confirmation_code: Option<String>,
474 pub attribute_verification_codes: serde_json::Value,
475}
476
477#[derive(Debug, Clone, Serialize, Deserialize)]
478#[serde(rename_all = "camelCase")]
479pub struct ConfirmationCode {
480 pub pool_id: String,
481 pub username: String,
482 pub code: String,
483 #[serde(rename = "type")]
484 pub code_type: String,
485 #[serde(skip_serializing_if = "Option::is_none")]
486 pub attribute: Option<String>,
487}
488
489#[derive(Debug, Clone, Serialize, Deserialize)]
490#[serde(rename_all = "camelCase")]
491pub struct ConfirmationCodesResponse {
492 pub codes: Vec<ConfirmationCode>,
493}
494
495#[derive(Debug, Clone, Serialize, Deserialize)]
496#[serde(rename_all = "camelCase")]
497pub struct ConfirmUserRequest {
498 pub user_pool_id: String,
499 pub username: String,
500}
501
502#[derive(Debug, Clone, Serialize, Deserialize)]
503#[serde(rename_all = "camelCase")]
504pub struct ConfirmUserResponse {
505 pub confirmed: bool,
506 #[serde(skip_serializing_if = "Option::is_none")]
507 pub error: Option<String>,
508}
509
510#[derive(Debug, Clone, Serialize, Deserialize)]
511#[serde(rename_all = "camelCase")]
512pub struct TokenInfo {
513 #[serde(rename = "type")]
514 pub token_type: String,
515 pub username: String,
516 pub pool_id: String,
517 pub client_id: String,
518 pub issued_at: f64,
519}
520
521#[derive(Debug, Clone, Serialize, Deserialize)]
522#[serde(rename_all = "camelCase")]
523pub struct TokensResponse {
524 pub tokens: Vec<TokenInfo>,
525}
526
527#[derive(Debug, Clone, Serialize, Deserialize)]
528#[serde(rename_all = "camelCase")]
529pub struct ExpireTokensRequest {
530 #[serde(skip_serializing_if = "Option::is_none")]
531 pub user_pool_id: Option<String>,
532 #[serde(skip_serializing_if = "Option::is_none")]
533 pub username: Option<String>,
534}
535
536#[derive(Debug, Clone, Serialize, Deserialize)]
537#[serde(rename_all = "camelCase")]
538pub struct ExpireTokensResponse {
539 pub expired_tokens: u64,
540}
541
542#[derive(Debug, Clone, Serialize, Deserialize)]
543#[serde(rename_all = "camelCase")]
544pub struct AuthEvent {
545 pub event_type: String,
546 pub username: String,
547 pub user_pool_id: String,
548 pub client_id: Option<String>,
549 pub timestamp: f64,
550 pub success: bool,
551}
552
553#[derive(Debug, Clone, Serialize, Deserialize)]
554#[serde(rename_all = "camelCase")]
555pub struct AuthEventsResponse {
556 pub events: Vec<AuthEvent>,
557}
558
559#[derive(Debug, Clone, Serialize, Deserialize)]
562#[serde(rename_all = "camelCase")]
563pub struct ApiGatewayV2Request {
564 pub request_id: String,
565 pub api_id: String,
566 pub stage: String,
567 pub method: String,
568 pub path: String,
569 pub headers: std::collections::HashMap<String, String>,
570 pub query_params: std::collections::HashMap<String, String>,
571 #[serde(skip_serializing_if = "Option::is_none")]
572 pub body: Option<String>,
573 pub timestamp: String,
574 pub status_code: u16,
575}
576
577#[derive(Debug, Clone, Serialize, Deserialize)]
578#[serde(rename_all = "camelCase")]
579pub struct ApiGatewayV2RequestsResponse {
580 pub requests: Vec<ApiGatewayV2Request>,
581}
582
583#[derive(Debug, Clone, Serialize, Deserialize)]
586#[serde(rename_all = "camelCase")]
587pub struct BedrockInvocation {
588 pub model_id: String,
589 pub input: String,
590 pub output: String,
591 pub timestamp: String,
592 #[serde(default)]
594 pub error: Option<String>,
595}
596
597#[derive(Debug, Clone, Serialize, Deserialize)]
598#[serde(rename_all = "camelCase")]
599pub struct BedrockInvocationsResponse {
600 pub invocations: Vec<BedrockInvocation>,
601}
602
603#[derive(Debug, Clone, Serialize, Deserialize)]
604#[serde(rename_all = "camelCase")]
605pub struct BedrockModelResponseConfig {
606 pub status: String,
607 pub model_id: String,
608}
609
610#[derive(Debug, Clone, Serialize, Deserialize)]
615#[serde(rename_all = "camelCase")]
616pub struct BedrockResponseRule {
617 #[serde(default, skip_serializing_if = "Option::is_none")]
618 pub prompt_contains: Option<String>,
619 pub response: String,
620}
621
622#[derive(Debug, Clone, Serialize, Deserialize, Default)]
624#[serde(rename_all = "camelCase")]
625pub struct BedrockFaultRule {
626 pub error_type: String,
627 #[serde(default, skip_serializing_if = "Option::is_none")]
628 pub message: Option<String>,
629 #[serde(default, skip_serializing_if = "Option::is_none")]
630 pub http_status: Option<u16>,
631 #[serde(default, skip_serializing_if = "Option::is_none")]
632 pub count: Option<u32>,
633 #[serde(default, skip_serializing_if = "Option::is_none")]
634 pub model_id: Option<String>,
635 #[serde(default, skip_serializing_if = "Option::is_none")]
636 pub operation: Option<String>,
637}
638
639#[derive(Debug, Clone, Serialize, Deserialize)]
641#[serde(rename_all = "camelCase")]
642pub struct BedrockFaultRuleState {
643 pub error_type: String,
644 pub message: String,
645 pub http_status: u16,
646 pub remaining: u32,
647 #[serde(default)]
648 pub model_id: Option<String>,
649 #[serde(default)]
650 pub operation: Option<String>,
651}
652
653#[derive(Debug, Clone, Serialize, Deserialize)]
654#[serde(rename_all = "camelCase")]
655pub struct BedrockFaultsResponse {
656 pub faults: Vec<BedrockFaultRuleState>,
657}
658
659#[derive(Debug, Clone, Serialize, Deserialize)]
660#[serde(rename_all = "camelCase")]
661pub struct BedrockStatusResponse {
662 pub status: String,
663}
664
665#[derive(Debug, Clone, Serialize, Deserialize)]
666#[serde(rename_all = "camelCase")]
667pub struct EcrRepository {
668 pub repository_name: String,
669 pub repository_arn: String,
670 pub registry_id: String,
671 pub repository_uri: String,
672 pub image_tag_mutability: String,
673 pub scan_on_push: bool,
674 pub created_at: String,
675 pub tags: Vec<EcrTag>,
676 pub has_policy: bool,
677 pub has_lifecycle_policy: bool,
678 pub image_count: u64,
679 pub layer_count: u64,
680}
681
682#[derive(Debug, Clone, Serialize, Deserialize)]
683#[serde(rename_all = "camelCase")]
684pub struct EcrImage {
685 pub repository_name: String,
686 pub image_digest: String,
687 pub image_tags: Vec<String>,
688 pub image_size_in_bytes: u64,
689 pub image_manifest_media_type: String,
690 pub image_pushed_at: String,
691}
692
693#[derive(Debug, Clone, Serialize, Deserialize)]
694#[serde(rename_all = "camelCase")]
695pub struct EcrImagesResponse {
696 pub images: Vec<EcrImage>,
697}
698
699#[derive(Debug, Clone, Serialize, Deserialize)]
700#[serde(rename_all = "camelCase")]
701pub struct EcrPullThroughRule {
702 pub ecr_repository_prefix: String,
703 pub upstream_registry_url: String,
704 pub upstream_registry: Option<String>,
705 pub credential_arn: Option<String>,
706 pub custom_role_arn: Option<String>,
707 pub created_at: String,
708 pub updated_at: String,
709}
710
711#[derive(Debug, Clone, Serialize, Deserialize)]
712#[serde(rename_all = "camelCase")]
713pub struct EcrPullThroughRulesResponse {
714 pub rules: Vec<EcrPullThroughRule>,
715}
716
717#[derive(Debug, Clone, Serialize, Deserialize)]
718#[serde(rename_all = "camelCase")]
719pub struct EcrTag {
720 pub key: String,
721 pub value: String,
722}
723
724#[derive(Debug, Clone, Serialize, Deserialize)]
725#[serde(rename_all = "camelCase")]
726pub struct EcrRepositoriesResponse {
727 pub repositories: Vec<EcrRepository>,
728}
729
730#[derive(Debug, Clone, Serialize, Deserialize)]
731#[serde(rename_all = "camelCase")]
732pub struct EcsCluster {
733 pub cluster_name: String,
734 pub cluster_arn: String,
735 pub status: String,
736 pub running_tasks_count: i32,
737 pub pending_tasks_count: i32,
738 pub active_services_count: i32,
739 pub registered_container_instances_count: i32,
740 pub capacity_providers: Vec<String>,
741 pub tags: Vec<EcsTag>,
742 pub created_at: String,
743}
744
745#[derive(Debug, Clone, Serialize, Deserialize)]
746#[serde(rename_all = "camelCase")]
747pub struct EcsTag {
748 pub key: String,
749 pub value: String,
750}
751
752#[derive(Debug, Clone, Serialize, Deserialize)]
753#[serde(rename_all = "camelCase")]
754pub struct EcsClustersResponse {
755 pub clusters: Vec<EcsCluster>,
756}
757
758#[derive(Debug, Clone, Serialize, Deserialize)]
759#[serde(rename_all = "camelCase")]
760pub struct EcsTaskContainer {
761 pub name: String,
762 pub image: String,
763 pub last_status: String,
764 pub exit_code: Option<i64>,
765 pub runtime_id: Option<String>,
766 pub essential: bool,
767}
768
769#[derive(Debug, Clone, Serialize, Deserialize)]
770#[serde(rename_all = "camelCase")]
771pub struct EcsTask {
772 pub task_arn: String,
773 pub task_id: String,
774 pub cluster_arn: String,
775 pub cluster_name: String,
776 pub task_definition_arn: String,
777 pub family: String,
778 pub revision: i32,
779 pub last_status: String,
780 pub desired_status: String,
781 pub launch_type: String,
782 pub created_at: String,
783 pub started_at: Option<String>,
784 pub stopping_at: Option<String>,
785 pub stopped_at: Option<String>,
786 pub stop_code: Option<String>,
787 pub stopped_reason: Option<String>,
788 pub containers: Vec<EcsTaskContainer>,
789 pub captured_log_bytes: usize,
790}
791
792#[derive(Debug, Clone, Serialize, Deserialize)]
793#[serde(rename_all = "camelCase")]
794pub struct EcsTasksResponse {
795 pub tasks: Vec<EcsTask>,
796}
797
798#[derive(Debug, Clone, Serialize, Deserialize)]
799#[serde(rename_all = "camelCase")]
800pub struct EcsTaskLogsResponse {
801 pub task_arn: String,
802 pub logs: String,
803 pub last_status: String,
804 pub exit_code: Option<i64>,
805}
806
807#[derive(Debug, Clone, Serialize, Deserialize, Default)]
808#[serde(rename_all = "camelCase")]
809pub struct EcsMarkFailedRequest {
810 pub exit_code: Option<i64>,
811 pub reason: Option<String>,
812}
813
814#[derive(Debug, Clone, Serialize, Deserialize)]
815#[serde(rename_all = "camelCase")]
816pub struct EcsLifecycleEvent {
817 pub at: String,
818 pub event_type: String,
819 pub task_arn: Option<String>,
820 pub cluster_arn: Option<String>,
821 pub last_status: Option<String>,
822 pub detail: serde_json::Value,
823}
824
825#[derive(Debug, Clone, Serialize, Deserialize)]
826#[serde(rename_all = "camelCase")]
827pub struct EcsEventsResponse {
828 pub events: Vec<EcsLifecycleEvent>,
829}
830
831#[derive(Debug, Clone, Serialize, Deserialize)]
834#[serde(rename_all = "camelCase")]
835pub struct Elbv2LoadBalancer {
836 pub arn: String,
837 pub name: String,
838 pub dns_name: String,
839 pub scheme: String,
840 pub vpc_id: String,
841 pub state_code: String,
842 pub state_reason: Option<String>,
843 pub lb_type: String,
844 pub ip_address_type: String,
845 pub availability_zones: Vec<Elbv2AvailabilityZone>,
846 pub security_groups: Vec<String>,
847 pub created_time: String,
848 pub tags: Vec<Elbv2Tag>,
849}
850
851#[derive(Debug, Clone, Serialize, Deserialize)]
852#[serde(rename_all = "camelCase")]
853pub struct Elbv2AvailabilityZone {
854 pub zone_name: String,
855 pub subnet_id: String,
856}
857
858#[derive(Debug, Clone, Serialize, Deserialize)]
859#[serde(rename_all = "camelCase")]
860pub struct Elbv2Tag {
861 pub key: String,
862 pub value: String,
863}
864
865#[derive(Debug, Clone, Serialize, Deserialize)]
866#[serde(rename_all = "camelCase")]
867pub struct Elbv2LoadBalancersResponse {
868 pub load_balancers: Vec<Elbv2LoadBalancer>,
869}
870
871#[derive(Debug, Clone, Serialize, Deserialize)]
872#[serde(rename_all = "camelCase")]
873pub struct Elbv2TargetGroup {
874 pub arn: String,
875 pub name: String,
876 pub protocol: Option<String>,
877 pub port: Option<i32>,
878 pub vpc_id: Option<String>,
879 pub target_type: String,
880 pub load_balancer_arns: Vec<String>,
881 pub targets: Vec<Elbv2Target>,
882 pub health_check_protocol: Option<String>,
883 pub health_check_port: Option<String>,
884 pub health_check_path: Option<String>,
885 pub healthy_threshold_count: i32,
886 pub unhealthy_threshold_count: i32,
887 pub created_time: String,
888 pub tags: Vec<Elbv2Tag>,
889}
890
891#[derive(Debug, Clone, Serialize, Deserialize)]
892#[serde(rename_all = "camelCase")]
893pub struct Elbv2Target {
894 pub id: String,
895 pub port: Option<i32>,
896 pub availability_zone: Option<String>,
897 pub health_state: String,
898 pub health_reason: Option<String>,
899 pub health_description: Option<String>,
900}
901
902#[derive(Debug, Clone, Serialize, Deserialize)]
903#[serde(rename_all = "camelCase")]
904pub struct Elbv2TargetGroupsResponse {
905 pub target_groups: Vec<Elbv2TargetGroup>,
906}
907
908#[derive(Debug, Clone, Serialize, Deserialize)]
909#[serde(rename_all = "camelCase")]
910pub struct Elbv2Listener {
911 pub arn: String,
912 pub load_balancer_arn: String,
913 pub port: Option<i32>,
914 pub protocol: Option<String>,
915 pub ssl_policy: Option<String>,
916 pub certificate_arns: Vec<String>,
917 pub default_action_type: Option<String>,
918 pub default_target_group_arn: Option<String>,
919}
920
921#[derive(Debug, Clone, Serialize, Deserialize)]
922#[serde(rename_all = "camelCase")]
923pub struct Elbv2ListenersResponse {
924 pub listeners: Vec<Elbv2Listener>,
925}
926
927#[derive(Debug, Clone, Serialize, Deserialize)]
928#[serde(rename_all = "camelCase")]
929pub struct Elbv2Rule {
930 pub arn: String,
931 pub listener_arn: String,
932 pub priority: String,
933 pub is_default: bool,
934 pub condition_fields: Vec<String>,
935 pub action_type: Option<String>,
936}
937
938#[derive(Debug, Clone, Serialize, Deserialize)]
939#[serde(rename_all = "camelCase")]
940pub struct Elbv2RulesResponse {
941 pub rules: Vec<Elbv2Rule>,
942}
943
944#[derive(Debug, Clone, Serialize, Deserialize)]
949#[serde(rename_all = "camelCase")]
950pub struct CreateAdminRequest {
951 pub account_id: String,
952 pub user_name: String,
953}
954
955#[derive(Debug, Clone, Serialize, Deserialize)]
956#[serde(rename_all = "camelCase")]
957pub struct CreateAdminResponse {
958 pub access_key_id: String,
959 pub secret_access_key: String,
960 pub account_id: String,
961 pub arn: String,
962}