aws-sdk-groundstation 1.24.0 → 1.41.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -27,7 +27,11 @@ require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
27
27
  require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
28
28
  require 'aws-sdk-core/plugins/transfer_encoding.rb'
29
29
  require 'aws-sdk-core/plugins/http_checksum.rb'
30
- require 'aws-sdk-core/plugins/signature_v4.rb'
30
+ require 'aws-sdk-core/plugins/checksum_algorithm.rb'
31
+ require 'aws-sdk-core/plugins/request_compression.rb'
32
+ require 'aws-sdk-core/plugins/defaults_mode.rb'
33
+ require 'aws-sdk-core/plugins/recursion_detection.rb'
34
+ require 'aws-sdk-core/plugins/sign.rb'
31
35
  require 'aws-sdk-core/plugins/protocols/rest_json.rb'
32
36
 
33
37
  Aws::Plugins::GlobalConfiguration.add_identifier(:groundstation)
@@ -73,8 +77,13 @@ module Aws::GroundStation
73
77
  add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
74
78
  add_plugin(Aws::Plugins::TransferEncoding)
75
79
  add_plugin(Aws::Plugins::HttpChecksum)
76
- add_plugin(Aws::Plugins::SignatureV4)
80
+ add_plugin(Aws::Plugins::ChecksumAlgorithm)
81
+ add_plugin(Aws::Plugins::RequestCompression)
82
+ add_plugin(Aws::Plugins::DefaultsMode)
83
+ add_plugin(Aws::Plugins::RecursionDetection)
84
+ add_plugin(Aws::Plugins::Sign)
77
85
  add_plugin(Aws::Plugins::Protocols::RestJson)
86
+ add_plugin(Aws::GroundStation::Plugins::Endpoints)
78
87
 
79
88
  # @overload initialize(options)
80
89
  # @param [Hash] options
@@ -175,10 +184,18 @@ module Aws::GroundStation
175
184
  # Used only in `standard` and adaptive retry modes. Specifies whether to apply
176
185
  # a clock skew correction and retry requests with skewed client clocks.
177
186
  #
187
+ # @option options [String] :defaults_mode ("legacy")
188
+ # See {Aws::DefaultsModeConfiguration} for a list of the
189
+ # accepted modes and the configuration defaults that are included.
190
+ #
178
191
  # @option options [Boolean] :disable_host_prefix_injection (false)
179
192
  # Set to true to disable SDK automatically adding host prefix
180
193
  # to default service endpoint when available.
181
194
  #
195
+ # @option options [Boolean] :disable_request_compression (false)
196
+ # When set to 'true' the request body will not be compressed
197
+ # for supported operations.
198
+ #
182
199
  # @option options [String] :endpoint
183
200
  # The client endpoint is normally constructed from the `:region`
184
201
  # option. You should only configure an `:endpoint` when connecting
@@ -199,6 +216,10 @@ module Aws::GroundStation
199
216
  # @option options [Boolean] :endpoint_discovery (false)
200
217
  # When set to `true`, endpoint discovery will be enabled for operations when available.
201
218
  #
219
+ # @option options [Boolean] :ignore_configured_endpoint_urls
220
+ # Setting to true disables use of endpoint URLs provided via environment
221
+ # variables and the shared configuration file.
222
+ #
202
223
  # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
203
224
  # The log formatter.
204
225
  #
@@ -219,6 +240,11 @@ module Aws::GroundStation
219
240
  # Used when loading credentials from the shared credentials file
220
241
  # at HOME/.aws/credentials. When not specified, 'default' is used.
221
242
  #
243
+ # @option options [Integer] :request_min_compression_size_bytes (10240)
244
+ # The minimum size in bytes that triggers compression for request
245
+ # bodies. The value must be non-negative integer value between 0
246
+ # and 10485780 bytes inclusive.
247
+ #
222
248
  # @option options [Proc] :retry_backoff
223
249
  # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
224
250
  # This option is only used in the `legacy` retry mode.
@@ -264,6 +290,11 @@ module Aws::GroundStation
264
290
  # in the future.
265
291
  #
266
292
  #
293
+ # @option options [String] :sdk_ua_app_id
294
+ # A unique and opaque application ID that is appended to the
295
+ # User-Agent header as app/<sdk_ua_app_id>. It should have a
296
+ # maximum length of 50.
297
+ #
267
298
  # @option options [String] :secret_access_key
268
299
  #
269
300
  # @option options [String] :session_token
@@ -277,6 +308,19 @@ module Aws::GroundStation
277
308
  # ** Please note ** When response stubbing is enabled, no HTTP
278
309
  # requests are made, and retries are disabled.
279
310
  #
311
+ # @option options [Aws::TokenProvider] :token_provider
312
+ # A Bearer Token Provider. This can be an instance of any one of the
313
+ # following classes:
314
+ #
315
+ # * `Aws::StaticTokenProvider` - Used for configuring static, non-refreshing
316
+ # tokens.
317
+ #
318
+ # * `Aws::SSOTokenProvider` - Used for loading tokens from AWS SSO using an
319
+ # access token generated from `aws login`.
320
+ #
321
+ # When `:token_provider` is not configured directly, the `Aws::TokenProviderChain`
322
+ # will be used to search for tokens configured for your profile in shared configuration files.
323
+ #
280
324
  # @option options [Boolean] :use_dualstack_endpoint
281
325
  # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
282
326
  # will be used if available.
@@ -290,6 +334,9 @@ module Aws::GroundStation
290
334
  # When `true`, request parameters are validated before
291
335
  # sending the request.
292
336
  #
337
+ # @option options [Aws::GroundStation::EndpointProvider] :endpoint_provider
338
+ # The endpoint provider used to resolve endpoints. Any object that responds to `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to `Aws::GroundStation::EndpointParameters`
339
+ #
293
340
  # @option options [URI::HTTP,String] :http_proxy A proxy to send
294
341
  # requests through. Formatted like 'http://proxy.com:123'.
295
342
  #
@@ -297,7 +344,7 @@ module Aws::GroundStation
297
344
  # seconds to wait when opening a HTTP session before raising a
298
345
  # `Timeout::Error`.
299
346
  #
300
- # @option options [Integer] :http_read_timeout (60) The default
347
+ # @option options [Float] :http_read_timeout (60) The default
301
348
  # number of seconds to wait for response data. This value can
302
349
  # safely be set per-request on the session.
303
350
  #
@@ -313,6 +360,9 @@ module Aws::GroundStation
313
360
  # disables this behaviour. This value can safely be set per
314
361
  # request on the session.
315
362
  #
363
+ # @option options [Float] :ssl_timeout (nil) Sets the SSL timeout
364
+ # in seconds.
365
+ #
316
366
  # @option options [Boolean] :http_wire_trace (false) When `true`,
317
367
  # HTTP debug output will be sent to the `:logger`.
318
368
  #
@@ -350,7 +400,7 @@ module Aws::GroundStation
350
400
  # @example Request syntax with placeholder values
351
401
  #
352
402
  # resp = client.cancel_contact({
353
- # contact_id: "String", # required
403
+ # contact_id: "Uuid", # required
354
404
  # })
355
405
  #
356
406
  # @example Response structure
@@ -483,6 +533,19 @@ module Aws::GroundStation
483
533
  # When a contact uses multiple `DataflowEndpointConfig` objects, each
484
534
  # `Config` must match a `DataflowEndpoint` in the same group.
485
535
  #
536
+ # @option params [Integer] :contact_post_pass_duration_seconds
537
+ # Amount of time, in seconds, after a contact ends that the Ground
538
+ # Station Dataflow Endpoint Group will be in a `POSTPASS` state. A
539
+ # Ground Station Dataflow Endpoint Group State Change event will be
540
+ # emitted when the Dataflow Endpoint Group enters and exits the
541
+ # `POSTPASS` state.
542
+ #
543
+ # @option params [Integer] :contact_pre_pass_duration_seconds
544
+ # Amount of time, in seconds, before a contact starts that the Ground
545
+ # Station Dataflow Endpoint Group will be in a `PREPASS` state. A Ground
546
+ # Station Dataflow Endpoint Group State Change event will be emitted
547
+ # when the Dataflow Endpoint Group enters and exits the `PREPASS` state.
548
+ #
486
549
  # @option params [required, Array<Types::EndpointDetails>] :endpoint_details
487
550
  # Endpoint details of each endpoint in the dataflow endpoint group.
488
551
  #
@@ -496,8 +559,32 @@ module Aws::GroundStation
496
559
  # @example Request syntax with placeholder values
497
560
  #
498
561
  # resp = client.create_dataflow_endpoint_group({
562
+ # contact_post_pass_duration_seconds: 1,
563
+ # contact_pre_pass_duration_seconds: 1,
499
564
  # endpoint_details: [ # required
500
565
  # {
566
+ # aws_ground_station_agent_endpoint: {
567
+ # agent_status: "SUCCESS", # accepts SUCCESS, FAILED, ACTIVE, INACTIVE
568
+ # audit_results: "HEALTHY", # accepts HEALTHY, UNHEALTHY
569
+ # egress_address: { # required
570
+ # mtu: 1,
571
+ # socket_address: { # required
572
+ # name: "String", # required
573
+ # port: 1, # required
574
+ # },
575
+ # },
576
+ # ingress_address: { # required
577
+ # mtu: 1,
578
+ # socket_address: { # required
579
+ # name: "IpV4Address", # required
580
+ # port_range: { # required
581
+ # maximum: 1, # required
582
+ # minimum: 1, # required
583
+ # },
584
+ # },
585
+ # },
586
+ # name: "SafeName", # required
587
+ # },
501
588
  # endpoint: {
502
589
  # address: {
503
590
  # name: "String", # required
@@ -507,6 +594,8 @@ module Aws::GroundStation
507
594
  # name: "SafeName",
508
595
  # status: "created", # accepts created, creating, deleted, deleting, failed
509
596
  # },
597
+ # health_reasons: ["NO_REGISTERED_AGENT"], # accepts NO_REGISTERED_AGENT, INVALID_IP_OWNERSHIP, NOT_AUTHORIZED_TO_CREATE_SLR, UNVERIFIED_IP_OWNERSHIP, INITIALIZING_DATAPLANE, DATAPLANE_FAILURE, HEALTHY
598
+ # health_status: "UNHEALTHY", # accepts UNHEALTHY, HEALTHY
510
599
  # security_details: {
511
600
  # role_arn: "RoleArn", # required
512
601
  # security_group_ids: ["String"], # required
@@ -532,6 +621,101 @@ module Aws::GroundStation
532
621
  req.send_request(options)
533
622
  end
534
623
 
624
+ # Creates an Ephemeris with the specified `EphemerisData`.
625
+ #
626
+ # @option params [Boolean] :enabled
627
+ # Whether to set the ephemeris status to `ENABLED` after validation.
628
+ #
629
+ # Setting this to false will set the ephemeris status to `DISABLED`
630
+ # after validation.
631
+ #
632
+ # @option params [Types::EphemerisData] :ephemeris
633
+ # Ephemeris data.
634
+ #
635
+ # @option params [Time,DateTime,Date,Integer,String] :expiration_time
636
+ # An overall expiration time for the ephemeris in UTC, after which it
637
+ # will become `EXPIRED`.
638
+ #
639
+ # @option params [String] :kms_key_arn
640
+ # The ARN of a KMS key used to encrypt the ephemeris in Ground Station.
641
+ #
642
+ # @option params [required, String] :name
643
+ # A name string associated with the ephemeris. Used as a human-readable
644
+ # identifier for the ephemeris.
645
+ #
646
+ # @option params [Integer] :priority
647
+ # Customer-provided priority score to establish the order in which
648
+ # overlapping ephemerides should be used.
649
+ #
650
+ # The default for customer-provided ephemeris priority is 1, and higher
651
+ # numbers take precedence.
652
+ #
653
+ # Priority must be 1 or greater
654
+ #
655
+ # @option params [required, String] :satellite_id
656
+ # AWS Ground Station satellite ID for this ephemeris.
657
+ #
658
+ # @option params [Hash<String,String>] :tags
659
+ # Tags assigned to an ephemeris.
660
+ #
661
+ # @return [Types::EphemerisIdResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
662
+ #
663
+ # * {Types::EphemerisIdResponse#ephemeris_id #ephemeris_id} => String
664
+ #
665
+ # @example Request syntax with placeholder values
666
+ #
667
+ # resp = client.create_ephemeris({
668
+ # enabled: false,
669
+ # ephemeris: {
670
+ # oem: {
671
+ # oem_data: "UnboundedString",
672
+ # s3_object: {
673
+ # bucket: "S3BucketName",
674
+ # key: "S3ObjectKey",
675
+ # version: "S3VersionId",
676
+ # },
677
+ # },
678
+ # tle: {
679
+ # s3_object: {
680
+ # bucket: "S3BucketName",
681
+ # key: "S3ObjectKey",
682
+ # version: "S3VersionId",
683
+ # },
684
+ # tle_data: [
685
+ # {
686
+ # tle_line_1: "TleLineOne", # required
687
+ # tle_line_2: "TleLineTwo", # required
688
+ # valid_time_range: { # required
689
+ # end_time: Time.now, # required
690
+ # start_time: Time.now, # required
691
+ # },
692
+ # },
693
+ # ],
694
+ # },
695
+ # },
696
+ # expiration_time: Time.now,
697
+ # kms_key_arn: "KeyArn",
698
+ # name: "SafeName", # required
699
+ # priority: 1,
700
+ # satellite_id: "Uuid", # required
701
+ # tags: {
702
+ # "String" => "String",
703
+ # },
704
+ # })
705
+ #
706
+ # @example Response structure
707
+ #
708
+ # resp.ephemeris_id #=> String
709
+ #
710
+ # @see http://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/CreateEphemeris AWS API Documentation
711
+ #
712
+ # @overload create_ephemeris(params = {})
713
+ # @param [Hash] params ({})
714
+ def create_ephemeris(params = {}, options = {})
715
+ req = build_request(:create_ephemeris, params)
716
+ req.send_request(options)
717
+ end
718
+
535
719
  # Creates a mission profile.
536
720
  #
537
721
  # `dataflowEdges` is a list of lists of strings. Each lower level list
@@ -557,6 +741,12 @@ module Aws::GroundStation
557
741
  # @option params [required, String] :name
558
742
  # Name of a mission profile.
559
743
  #
744
+ # @option params [Types::KmsKey] :streams_kms_key
745
+ # KMS key to use for encrypting streams.
746
+ #
747
+ # @option params [String] :streams_kms_role
748
+ # Role to use for encrypting streams with KMS key.
749
+ #
560
750
  # @option params [Hash<String,String>] :tags
561
751
  # Tags assigned to a mission profile.
562
752
  #
@@ -577,6 +767,12 @@ module Aws::GroundStation
577
767
  # ],
578
768
  # minimum_viable_contact_duration_seconds: 1, # required
579
769
  # name: "SafeName", # required
770
+ # streams_kms_key: {
771
+ # kms_alias_arn: "KeyAliasArn",
772
+ # kms_alias_name: "KeyAliasName",
773
+ # kms_key_arn: "KeyArn",
774
+ # },
775
+ # streams_kms_role: "RoleArn",
580
776
  # tags: {
581
777
  # "String" => "String",
582
778
  # },
@@ -613,7 +809,7 @@ module Aws::GroundStation
613
809
  # @example Request syntax with placeholder values
614
810
  #
615
811
  # resp = client.delete_config({
616
- # config_id: "String", # required
812
+ # config_id: "Uuid", # required
617
813
  # config_type: "antenna-downlink", # required, accepts antenna-downlink, antenna-downlink-demod-decode, antenna-uplink, dataflow-endpoint, tracking, uplink-echo, s3-recording
618
814
  # })
619
815
  #
@@ -644,7 +840,7 @@ module Aws::GroundStation
644
840
  # @example Request syntax with placeholder values
645
841
  #
646
842
  # resp = client.delete_dataflow_endpoint_group({
647
- # dataflow_endpoint_group_id: "String", # required
843
+ # dataflow_endpoint_group_id: "Uuid", # required
648
844
  # })
649
845
  #
650
846
  # @example Response structure
@@ -660,6 +856,34 @@ module Aws::GroundStation
660
856
  req.send_request(options)
661
857
  end
662
858
 
859
+ # Deletes an ephemeris
860
+ #
861
+ # @option params [required, String] :ephemeris_id
862
+ # The AWS Ground Station ephemeris ID.
863
+ #
864
+ # @return [Types::EphemerisIdResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
865
+ #
866
+ # * {Types::EphemerisIdResponse#ephemeris_id #ephemeris_id} => String
867
+ #
868
+ # @example Request syntax with placeholder values
869
+ #
870
+ # resp = client.delete_ephemeris({
871
+ # ephemeris_id: "Uuid", # required
872
+ # })
873
+ #
874
+ # @example Response structure
875
+ #
876
+ # resp.ephemeris_id #=> String
877
+ #
878
+ # @see http://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/DeleteEphemeris AWS API Documentation
879
+ #
880
+ # @overload delete_ephemeris(params = {})
881
+ # @param [Hash] params ({})
882
+ def delete_ephemeris(params = {}, options = {})
883
+ req = build_request(:delete_ephemeris, params)
884
+ req.send_request(options)
885
+ end
886
+
663
887
  # Deletes a mission profile.
664
888
  #
665
889
  # @option params [required, String] :mission_profile_id
@@ -672,7 +896,7 @@ module Aws::GroundStation
672
896
  # @example Request syntax with placeholder values
673
897
  #
674
898
  # resp = client.delete_mission_profile({
675
- # mission_profile_id: "String", # required
899
+ # mission_profile_id: "Uuid", # required
676
900
  # })
677
901
  #
678
902
  # @example Response structure
@@ -713,7 +937,7 @@ module Aws::GroundStation
713
937
  # @example Request syntax with placeholder values
714
938
  #
715
939
  # resp = client.describe_contact({
716
- # contact_id: "String", # required
940
+ # contact_id: "Uuid", # required
717
941
  # })
718
942
  #
719
943
  # @example Response structure
@@ -722,11 +946,24 @@ module Aws::GroundStation
722
946
  # resp.contact_status #=> String, one of "AVAILABLE", "AWS_CANCELLED", "AWS_FAILED", "CANCELLED", "CANCELLING", "COMPLETED", "FAILED", "FAILED_TO_SCHEDULE", "PASS", "POSTPASS", "PREPASS", "SCHEDULED", "SCHEDULING"
723
947
  # resp.dataflow_list #=> Array
724
948
  # resp.dataflow_list[0].destination.config_details.antenna_demod_decode_details.output_node #=> String
949
+ # resp.dataflow_list[0].destination.config_details.endpoint_details.aws_ground_station_agent_endpoint.agent_status #=> String, one of "SUCCESS", "FAILED", "ACTIVE", "INACTIVE"
950
+ # resp.dataflow_list[0].destination.config_details.endpoint_details.aws_ground_station_agent_endpoint.audit_results #=> String, one of "HEALTHY", "UNHEALTHY"
951
+ # resp.dataflow_list[0].destination.config_details.endpoint_details.aws_ground_station_agent_endpoint.egress_address.mtu #=> Integer
952
+ # resp.dataflow_list[0].destination.config_details.endpoint_details.aws_ground_station_agent_endpoint.egress_address.socket_address.name #=> String
953
+ # resp.dataflow_list[0].destination.config_details.endpoint_details.aws_ground_station_agent_endpoint.egress_address.socket_address.port #=> Integer
954
+ # resp.dataflow_list[0].destination.config_details.endpoint_details.aws_ground_station_agent_endpoint.ingress_address.mtu #=> Integer
955
+ # resp.dataflow_list[0].destination.config_details.endpoint_details.aws_ground_station_agent_endpoint.ingress_address.socket_address.name #=> String
956
+ # resp.dataflow_list[0].destination.config_details.endpoint_details.aws_ground_station_agent_endpoint.ingress_address.socket_address.port_range.maximum #=> Integer
957
+ # resp.dataflow_list[0].destination.config_details.endpoint_details.aws_ground_station_agent_endpoint.ingress_address.socket_address.port_range.minimum #=> Integer
958
+ # resp.dataflow_list[0].destination.config_details.endpoint_details.aws_ground_station_agent_endpoint.name #=> String
725
959
  # resp.dataflow_list[0].destination.config_details.endpoint_details.endpoint.address.name #=> String
726
960
  # resp.dataflow_list[0].destination.config_details.endpoint_details.endpoint.address.port #=> Integer
727
961
  # resp.dataflow_list[0].destination.config_details.endpoint_details.endpoint.mtu #=> Integer
728
962
  # resp.dataflow_list[0].destination.config_details.endpoint_details.endpoint.name #=> String
729
963
  # resp.dataflow_list[0].destination.config_details.endpoint_details.endpoint.status #=> String, one of "created", "creating", "deleted", "deleting", "failed"
964
+ # resp.dataflow_list[0].destination.config_details.endpoint_details.health_reasons #=> Array
965
+ # resp.dataflow_list[0].destination.config_details.endpoint_details.health_reasons[0] #=> String, one of "NO_REGISTERED_AGENT", "INVALID_IP_OWNERSHIP", "NOT_AUTHORIZED_TO_CREATE_SLR", "UNVERIFIED_IP_OWNERSHIP", "INITIALIZING_DATAPLANE", "DATAPLANE_FAILURE", "HEALTHY"
966
+ # resp.dataflow_list[0].destination.config_details.endpoint_details.health_status #=> String, one of "UNHEALTHY", "HEALTHY"
730
967
  # resp.dataflow_list[0].destination.config_details.endpoint_details.security_details.role_arn #=> String
731
968
  # resp.dataflow_list[0].destination.config_details.endpoint_details.security_details.security_group_ids #=> Array
732
969
  # resp.dataflow_list[0].destination.config_details.endpoint_details.security_details.security_group_ids[0] #=> String
@@ -739,11 +976,24 @@ module Aws::GroundStation
739
976
  # resp.dataflow_list[0].destination.dataflow_destination_region #=> String
740
977
  # resp.dataflow_list[0].error_message #=> String
741
978
  # resp.dataflow_list[0].source.config_details.antenna_demod_decode_details.output_node #=> String
979
+ # resp.dataflow_list[0].source.config_details.endpoint_details.aws_ground_station_agent_endpoint.agent_status #=> String, one of "SUCCESS", "FAILED", "ACTIVE", "INACTIVE"
980
+ # resp.dataflow_list[0].source.config_details.endpoint_details.aws_ground_station_agent_endpoint.audit_results #=> String, one of "HEALTHY", "UNHEALTHY"
981
+ # resp.dataflow_list[0].source.config_details.endpoint_details.aws_ground_station_agent_endpoint.egress_address.mtu #=> Integer
982
+ # resp.dataflow_list[0].source.config_details.endpoint_details.aws_ground_station_agent_endpoint.egress_address.socket_address.name #=> String
983
+ # resp.dataflow_list[0].source.config_details.endpoint_details.aws_ground_station_agent_endpoint.egress_address.socket_address.port #=> Integer
984
+ # resp.dataflow_list[0].source.config_details.endpoint_details.aws_ground_station_agent_endpoint.ingress_address.mtu #=> Integer
985
+ # resp.dataflow_list[0].source.config_details.endpoint_details.aws_ground_station_agent_endpoint.ingress_address.socket_address.name #=> String
986
+ # resp.dataflow_list[0].source.config_details.endpoint_details.aws_ground_station_agent_endpoint.ingress_address.socket_address.port_range.maximum #=> Integer
987
+ # resp.dataflow_list[0].source.config_details.endpoint_details.aws_ground_station_agent_endpoint.ingress_address.socket_address.port_range.minimum #=> Integer
988
+ # resp.dataflow_list[0].source.config_details.endpoint_details.aws_ground_station_agent_endpoint.name #=> String
742
989
  # resp.dataflow_list[0].source.config_details.endpoint_details.endpoint.address.name #=> String
743
990
  # resp.dataflow_list[0].source.config_details.endpoint_details.endpoint.address.port #=> Integer
744
991
  # resp.dataflow_list[0].source.config_details.endpoint_details.endpoint.mtu #=> Integer
745
992
  # resp.dataflow_list[0].source.config_details.endpoint_details.endpoint.name #=> String
746
993
  # resp.dataflow_list[0].source.config_details.endpoint_details.endpoint.status #=> String, one of "created", "creating", "deleted", "deleting", "failed"
994
+ # resp.dataflow_list[0].source.config_details.endpoint_details.health_reasons #=> Array
995
+ # resp.dataflow_list[0].source.config_details.endpoint_details.health_reasons[0] #=> String, one of "NO_REGISTERED_AGENT", "INVALID_IP_OWNERSHIP", "NOT_AUTHORIZED_TO_CREATE_SLR", "UNVERIFIED_IP_OWNERSHIP", "INITIALIZING_DATAPLANE", "DATAPLANE_FAILURE", "HEALTHY"
996
+ # resp.dataflow_list[0].source.config_details.endpoint_details.health_status #=> String, one of "UNHEALTHY", "HEALTHY"
747
997
  # resp.dataflow_list[0].source.config_details.endpoint_details.security_details.role_arn #=> String
748
998
  # resp.dataflow_list[0].source.config_details.endpoint_details.security_details.security_group_ids #=> Array
749
999
  # resp.dataflow_list[0].source.config_details.endpoint_details.security_details.security_group_ids[0] #=> String
@@ -768,6 +1018,11 @@ module Aws::GroundStation
768
1018
  # resp.tags #=> Hash
769
1019
  # resp.tags["String"] #=> String
770
1020
  #
1021
+ #
1022
+ # The following waiters are defined for this operation (see {Client#wait_until} for detailed usage):
1023
+ #
1024
+ # * contact_scheduled
1025
+ #
771
1026
  # @see http://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/DescribeContact AWS API Documentation
772
1027
  #
773
1028
  # @overload describe_contact(params = {})
@@ -777,6 +1032,94 @@ module Aws::GroundStation
777
1032
  req.send_request(options)
778
1033
  end
779
1034
 
1035
+ # Describes an existing ephemeris.
1036
+ #
1037
+ # @option params [required, String] :ephemeris_id
1038
+ # The AWS Ground Station ephemeris ID.
1039
+ #
1040
+ # @return [Types::DescribeEphemerisResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1041
+ #
1042
+ # * {Types::DescribeEphemerisResponse#creation_time #creation_time} => Time
1043
+ # * {Types::DescribeEphemerisResponse#enabled #enabled} => Boolean
1044
+ # * {Types::DescribeEphemerisResponse#ephemeris_id #ephemeris_id} => String
1045
+ # * {Types::DescribeEphemerisResponse#invalid_reason #invalid_reason} => String
1046
+ # * {Types::DescribeEphemerisResponse#name #name} => String
1047
+ # * {Types::DescribeEphemerisResponse#priority #priority} => Integer
1048
+ # * {Types::DescribeEphemerisResponse#satellite_id #satellite_id} => String
1049
+ # * {Types::DescribeEphemerisResponse#status #status} => String
1050
+ # * {Types::DescribeEphemerisResponse#supplied_data #supplied_data} => Types::EphemerisTypeDescription
1051
+ # * {Types::DescribeEphemerisResponse#tags #tags} => Hash&lt;String,String&gt;
1052
+ #
1053
+ # @example Request syntax with placeholder values
1054
+ #
1055
+ # resp = client.describe_ephemeris({
1056
+ # ephemeris_id: "Uuid", # required
1057
+ # })
1058
+ #
1059
+ # @example Response structure
1060
+ #
1061
+ # resp.creation_time #=> Time
1062
+ # resp.enabled #=> Boolean
1063
+ # resp.ephemeris_id #=> String
1064
+ # resp.invalid_reason #=> String, one of "METADATA_INVALID", "TIME_RANGE_INVALID", "TRAJECTORY_INVALID", "KMS_KEY_INVALID", "VALIDATION_ERROR"
1065
+ # resp.name #=> String
1066
+ # resp.priority #=> Integer
1067
+ # resp.satellite_id #=> String
1068
+ # resp.status #=> String, one of "VALIDATING", "INVALID", "ERROR", "ENABLED", "DISABLED", "EXPIRED"
1069
+ # resp.supplied_data.oem.ephemeris_data #=> String
1070
+ # resp.supplied_data.oem.source_s3_object.bucket #=> String
1071
+ # resp.supplied_data.oem.source_s3_object.key #=> String
1072
+ # resp.supplied_data.oem.source_s3_object.version #=> String
1073
+ # resp.supplied_data.tle.ephemeris_data #=> String
1074
+ # resp.supplied_data.tle.source_s3_object.bucket #=> String
1075
+ # resp.supplied_data.tle.source_s3_object.key #=> String
1076
+ # resp.supplied_data.tle.source_s3_object.version #=> String
1077
+ # resp.tags #=> Hash
1078
+ # resp.tags["String"] #=> String
1079
+ #
1080
+ # @see http://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/DescribeEphemeris AWS API Documentation
1081
+ #
1082
+ # @overload describe_ephemeris(params = {})
1083
+ # @param [Hash] params ({})
1084
+ def describe_ephemeris(params = {}, options = {})
1085
+ req = build_request(:describe_ephemeris, params)
1086
+ req.send_request(options)
1087
+ end
1088
+
1089
+ # <note markdown="1"> For use by AWS Ground Station Agent and shouldn't be called directly.
1090
+ #
1091
+ # </note>
1092
+ #
1093
+ # Gets the latest configuration information for a registered agent.
1094
+ #
1095
+ # @option params [required, String] :agent_id
1096
+ # UUID of agent to get configuration information for.
1097
+ #
1098
+ # @return [Types::GetAgentConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1099
+ #
1100
+ # * {Types::GetAgentConfigurationResponse#agent_id #agent_id} => String
1101
+ # * {Types::GetAgentConfigurationResponse#tasking_document #tasking_document} => String
1102
+ #
1103
+ # @example Request syntax with placeholder values
1104
+ #
1105
+ # resp = client.get_agent_configuration({
1106
+ # agent_id: "Uuid", # required
1107
+ # })
1108
+ #
1109
+ # @example Response structure
1110
+ #
1111
+ # resp.agent_id #=> String
1112
+ # resp.tasking_document #=> String
1113
+ #
1114
+ # @see http://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/GetAgentConfiguration AWS API Documentation
1115
+ #
1116
+ # @overload get_agent_configuration(params = {})
1117
+ # @param [Hash] params ({})
1118
+ def get_agent_configuration(params = {}, options = {})
1119
+ req = build_request(:get_agent_configuration, params)
1120
+ req.send_request(options)
1121
+ end
1122
+
780
1123
  # Returns `Config` information.
781
1124
  #
782
1125
  # Only one `Config` response can be returned.
@@ -799,7 +1142,7 @@ module Aws::GroundStation
799
1142
  # @example Request syntax with placeholder values
800
1143
  #
801
1144
  # resp = client.get_config({
802
- # config_id: "String", # required
1145
+ # config_id: "Uuid", # required
803
1146
  # config_type: "antenna-downlink", # required, accepts antenna-downlink, antenna-downlink-demod-decode, antenna-uplink, dataflow-endpoint, tracking, uplink-echo, s3-recording
804
1147
  # })
805
1148
  #
@@ -854,6 +1197,8 @@ module Aws::GroundStation
854
1197
  #
855
1198
  # @return [Types::GetDataflowEndpointGroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
856
1199
  #
1200
+ # * {Types::GetDataflowEndpointGroupResponse#contact_post_pass_duration_seconds #contact_post_pass_duration_seconds} => Integer
1201
+ # * {Types::GetDataflowEndpointGroupResponse#contact_pre_pass_duration_seconds #contact_pre_pass_duration_seconds} => Integer
857
1202
  # * {Types::GetDataflowEndpointGroupResponse#dataflow_endpoint_group_arn #dataflow_endpoint_group_arn} => String
858
1203
  # * {Types::GetDataflowEndpointGroupResponse#dataflow_endpoint_group_id #dataflow_endpoint_group_id} => String
859
1204
  # * {Types::GetDataflowEndpointGroupResponse#endpoints_details #endpoints_details} => Array&lt;Types::EndpointDetails&gt;
@@ -862,19 +1207,34 @@ module Aws::GroundStation
862
1207
  # @example Request syntax with placeholder values
863
1208
  #
864
1209
  # resp = client.get_dataflow_endpoint_group({
865
- # dataflow_endpoint_group_id: "String", # required
1210
+ # dataflow_endpoint_group_id: "Uuid", # required
866
1211
  # })
867
1212
  #
868
1213
  # @example Response structure
869
1214
  #
1215
+ # resp.contact_post_pass_duration_seconds #=> Integer
1216
+ # resp.contact_pre_pass_duration_seconds #=> Integer
870
1217
  # resp.dataflow_endpoint_group_arn #=> String
871
1218
  # resp.dataflow_endpoint_group_id #=> String
872
1219
  # resp.endpoints_details #=> Array
1220
+ # resp.endpoints_details[0].aws_ground_station_agent_endpoint.agent_status #=> String, one of "SUCCESS", "FAILED", "ACTIVE", "INACTIVE"
1221
+ # resp.endpoints_details[0].aws_ground_station_agent_endpoint.audit_results #=> String, one of "HEALTHY", "UNHEALTHY"
1222
+ # resp.endpoints_details[0].aws_ground_station_agent_endpoint.egress_address.mtu #=> Integer
1223
+ # resp.endpoints_details[0].aws_ground_station_agent_endpoint.egress_address.socket_address.name #=> String
1224
+ # resp.endpoints_details[0].aws_ground_station_agent_endpoint.egress_address.socket_address.port #=> Integer
1225
+ # resp.endpoints_details[0].aws_ground_station_agent_endpoint.ingress_address.mtu #=> Integer
1226
+ # resp.endpoints_details[0].aws_ground_station_agent_endpoint.ingress_address.socket_address.name #=> String
1227
+ # resp.endpoints_details[0].aws_ground_station_agent_endpoint.ingress_address.socket_address.port_range.maximum #=> Integer
1228
+ # resp.endpoints_details[0].aws_ground_station_agent_endpoint.ingress_address.socket_address.port_range.minimum #=> Integer
1229
+ # resp.endpoints_details[0].aws_ground_station_agent_endpoint.name #=> String
873
1230
  # resp.endpoints_details[0].endpoint.address.name #=> String
874
1231
  # resp.endpoints_details[0].endpoint.address.port #=> Integer
875
1232
  # resp.endpoints_details[0].endpoint.mtu #=> Integer
876
1233
  # resp.endpoints_details[0].endpoint.name #=> String
877
1234
  # resp.endpoints_details[0].endpoint.status #=> String, one of "created", "creating", "deleted", "deleting", "failed"
1235
+ # resp.endpoints_details[0].health_reasons #=> Array
1236
+ # resp.endpoints_details[0].health_reasons[0] #=> String, one of "NO_REGISTERED_AGENT", "INVALID_IP_OWNERSHIP", "NOT_AUTHORIZED_TO_CREATE_SLR", "UNVERIFIED_IP_OWNERSHIP", "INITIALIZING_DATAPLANE", "DATAPLANE_FAILURE", "HEALTHY"
1237
+ # resp.endpoints_details[0].health_status #=> String, one of "UNHEALTHY", "HEALTHY"
878
1238
  # resp.endpoints_details[0].security_details.role_arn #=> String
879
1239
  # resp.endpoints_details[0].security_details.security_group_ids #=> Array
880
1240
  # resp.endpoints_details[0].security_details.security_group_ids[0] #=> String
@@ -892,7 +1252,7 @@ module Aws::GroundStation
892
1252
  req.send_request(options)
893
1253
  end
894
1254
 
895
- # Returns the number of minutes used by account.
1255
+ # Returns the number of reserved minutes used by account.
896
1256
  #
897
1257
  # @option params [required, Integer] :month
898
1258
  # The month being requested, with a value of 1-12.
@@ -947,13 +1307,15 @@ module Aws::GroundStation
947
1307
  # * {Types::GetMissionProfileResponse#mission_profile_id #mission_profile_id} => String
948
1308
  # * {Types::GetMissionProfileResponse#name #name} => String
949
1309
  # * {Types::GetMissionProfileResponse#region #region} => String
1310
+ # * {Types::GetMissionProfileResponse#streams_kms_key #streams_kms_key} => Types::KmsKey
1311
+ # * {Types::GetMissionProfileResponse#streams_kms_role #streams_kms_role} => String
950
1312
  # * {Types::GetMissionProfileResponse#tags #tags} => Hash&lt;String,String&gt;
951
1313
  # * {Types::GetMissionProfileResponse#tracking_config_arn #tracking_config_arn} => String
952
1314
  #
953
1315
  # @example Request syntax with placeholder values
954
1316
  #
955
1317
  # resp = client.get_mission_profile({
956
- # mission_profile_id: "String", # required
1318
+ # mission_profile_id: "Uuid", # required
957
1319
  # })
958
1320
  #
959
1321
  # @example Response structure
@@ -968,6 +1330,10 @@ module Aws::GroundStation
968
1330
  # resp.mission_profile_id #=> String
969
1331
  # resp.name #=> String
970
1332
  # resp.region #=> String
1333
+ # resp.streams_kms_key.kms_alias_arn #=> String
1334
+ # resp.streams_kms_key.kms_alias_name #=> String
1335
+ # resp.streams_kms_key.kms_key_arn #=> String
1336
+ # resp.streams_kms_role #=> String
971
1337
  # resp.tags #=> Hash
972
1338
  # resp.tags["String"] #=> String
973
1339
  # resp.tracking_config_arn #=> String
@@ -988,6 +1354,7 @@ module Aws::GroundStation
988
1354
  #
989
1355
  # @return [Types::GetSatelliteResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
990
1356
  #
1357
+ # * {Types::GetSatelliteResponse#current_ephemeris #current_ephemeris} => Types::EphemerisMetaData
991
1358
  # * {Types::GetSatelliteResponse#ground_stations #ground_stations} => Array&lt;String&gt;
992
1359
  # * {Types::GetSatelliteResponse#norad_satellite_id #norad_satellite_id} => Integer
993
1360
  # * {Types::GetSatelliteResponse#satellite_arn #satellite_arn} => String
@@ -996,11 +1363,15 @@ module Aws::GroundStation
996
1363
  # @example Request syntax with placeholder values
997
1364
  #
998
1365
  # resp = client.get_satellite({
999
- # satellite_id: "String", # required
1366
+ # satellite_id: "Uuid", # required
1000
1367
  # })
1001
1368
  #
1002
1369
  # @example Response structure
1003
1370
  #
1371
+ # resp.current_ephemeris.ephemeris_id #=> String
1372
+ # resp.current_ephemeris.epoch #=> Time
1373
+ # resp.current_ephemeris.name #=> String
1374
+ # resp.current_ephemeris.source #=> String, one of "CUSTOMER_PROVIDED", "SPACE_TRACK"
1004
1375
  # resp.ground_stations #=> Array
1005
1376
  # resp.ground_stations[0] #=> String
1006
1377
  # resp.norad_satellite_id #=> Integer
@@ -1036,7 +1407,7 @@ module Aws::GroundStation
1036
1407
  #
1037
1408
  # resp = client.list_configs({
1038
1409
  # max_results: 1,
1039
- # next_token: "String",
1410
+ # next_token: "PaginationToken",
1040
1411
  # })
1041
1412
  #
1042
1413
  # @example Response structure
@@ -1063,7 +1434,7 @@ module Aws::GroundStation
1063
1434
  # `groundStation`, `missionprofileArn`, and `satelliteArn`.
1064
1435
  #
1065
1436
  # @option params [required, Time,DateTime,Date,Integer,String] :end_time
1066
- # End time of a contact.
1437
+ # End time of a contact in UTC.
1067
1438
  #
1068
1439
  # @option params [String] :ground_station
1069
1440
  # Name of a ground station.
@@ -1082,7 +1453,7 @@ module Aws::GroundStation
1082
1453
  # ARN of a satellite.
1083
1454
  #
1084
1455
  # @option params [required, Time,DateTime,Date,Integer,String] :start_time
1085
- # Start time of a contact.
1456
+ # Start time of a contact in UTC.
1086
1457
  #
1087
1458
  # @option params [required, Array<String>] :status_list
1088
1459
  # Status of a contact reservation.
@@ -1098,10 +1469,10 @@ module Aws::GroundStation
1098
1469
  #
1099
1470
  # resp = client.list_contacts({
1100
1471
  # end_time: Time.now, # required
1101
- # ground_station: "String",
1472
+ # ground_station: "GroundStationName",
1102
1473
  # max_results: 1,
1103
1474
  # mission_profile_arn: "MissionProfileArn",
1104
- # next_token: "String",
1475
+ # next_token: "PaginationToken",
1105
1476
  # satellite_arn: "satelliteArn",
1106
1477
  # start_time: Time.now, # required
1107
1478
  # status_list: ["AVAILABLE"], # required, accepts AVAILABLE, AWS_CANCELLED, AWS_FAILED, CANCELLED, CANCELLING, COMPLETED, FAILED, FAILED_TO_SCHEDULE, PASS, POSTPASS, PREPASS, SCHEDULED, SCHEDULING
@@ -1157,7 +1528,7 @@ module Aws::GroundStation
1157
1528
  #
1158
1529
  # resp = client.list_dataflow_endpoint_groups({
1159
1530
  # max_results: 1,
1160
- # next_token: "String",
1531
+ # next_token: "PaginationToken",
1161
1532
  # })
1162
1533
  #
1163
1534
  # @example Response structure
@@ -1176,6 +1547,71 @@ module Aws::GroundStation
1176
1547
  req.send_request(options)
1177
1548
  end
1178
1549
 
1550
+ # List existing ephemerides.
1551
+ #
1552
+ # @option params [required, Time,DateTime,Date,Integer,String] :end_time
1553
+ # The end time to list in UTC. The operation will return an ephemeris if
1554
+ # its expiration time is within the time range defined by the
1555
+ # `startTime` and `endTime`.
1556
+ #
1557
+ # @option params [Integer] :max_results
1558
+ # Maximum number of ephemerides to return.
1559
+ #
1560
+ # @option params [String] :next_token
1561
+ # Pagination token.
1562
+ #
1563
+ # @option params [required, String] :satellite_id
1564
+ # The AWS Ground Station satellite ID to list ephemeris for.
1565
+ #
1566
+ # @option params [required, Time,DateTime,Date,Integer,String] :start_time
1567
+ # The start time to list in UTC. The operation will return an ephemeris
1568
+ # if its expiration time is within the time range defined by the
1569
+ # `startTime` and `endTime`.
1570
+ #
1571
+ # @option params [Array<String>] :status_list
1572
+ # The list of ephemeris status to return.
1573
+ #
1574
+ # @return [Types::ListEphemeridesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1575
+ #
1576
+ # * {Types::ListEphemeridesResponse#ephemerides #ephemerides} => Array&lt;Types::EphemerisItem&gt;
1577
+ # * {Types::ListEphemeridesResponse#next_token #next_token} => String
1578
+ #
1579
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1580
+ #
1581
+ # @example Request syntax with placeholder values
1582
+ #
1583
+ # resp = client.list_ephemerides({
1584
+ # end_time: Time.now, # required
1585
+ # max_results: 1,
1586
+ # next_token: "PaginationToken",
1587
+ # satellite_id: "Uuid", # required
1588
+ # start_time: Time.now, # required
1589
+ # status_list: ["VALIDATING"], # accepts VALIDATING, INVALID, ERROR, ENABLED, DISABLED, EXPIRED
1590
+ # })
1591
+ #
1592
+ # @example Response structure
1593
+ #
1594
+ # resp.ephemerides #=> Array
1595
+ # resp.ephemerides[0].creation_time #=> Time
1596
+ # resp.ephemerides[0].enabled #=> Boolean
1597
+ # resp.ephemerides[0].ephemeris_id #=> String
1598
+ # resp.ephemerides[0].name #=> String
1599
+ # resp.ephemerides[0].priority #=> Integer
1600
+ # resp.ephemerides[0].source_s3_object.bucket #=> String
1601
+ # resp.ephemerides[0].source_s3_object.key #=> String
1602
+ # resp.ephemerides[0].source_s3_object.version #=> String
1603
+ # resp.ephemerides[0].status #=> String, one of "VALIDATING", "INVALID", "ERROR", "ENABLED", "DISABLED", "EXPIRED"
1604
+ # resp.next_token #=> String
1605
+ #
1606
+ # @see http://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/ListEphemerides AWS API Documentation
1607
+ #
1608
+ # @overload list_ephemerides(params = {})
1609
+ # @param [Hash] params ({})
1610
+ def list_ephemerides(params = {}, options = {})
1611
+ req = build_request(:list_ephemerides, params)
1612
+ req.send_request(options)
1613
+ end
1614
+
1179
1615
  # Returns a list of ground stations.
1180
1616
  #
1181
1617
  # @option params [Integer] :max_results
@@ -1199,8 +1635,8 @@ module Aws::GroundStation
1199
1635
  #
1200
1636
  # resp = client.list_ground_stations({
1201
1637
  # max_results: 1,
1202
- # next_token: "String",
1203
- # satellite_id: "String",
1638
+ # next_token: "PaginationToken",
1639
+ # satellite_id: "Uuid",
1204
1640
  # })
1205
1641
  #
1206
1642
  # @example Response structure
@@ -1240,7 +1676,7 @@ module Aws::GroundStation
1240
1676
  #
1241
1677
  # resp = client.list_mission_profiles({
1242
1678
  # max_results: 1,
1243
- # next_token: "String",
1679
+ # next_token: "PaginationToken",
1244
1680
  # })
1245
1681
  #
1246
1682
  # @example Response structure
@@ -1281,13 +1717,17 @@ module Aws::GroundStation
1281
1717
  #
1282
1718
  # resp = client.list_satellites({
1283
1719
  # max_results: 1,
1284
- # next_token: "String",
1720
+ # next_token: "PaginationToken",
1285
1721
  # })
1286
1722
  #
1287
1723
  # @example Response structure
1288
1724
  #
1289
1725
  # resp.next_token #=> String
1290
1726
  # resp.satellites #=> Array
1727
+ # resp.satellites[0].current_ephemeris.ephemeris_id #=> String
1728
+ # resp.satellites[0].current_ephemeris.epoch #=> Time
1729
+ # resp.satellites[0].current_ephemeris.name #=> String
1730
+ # resp.satellites[0].current_ephemeris.source #=> String, one of "CUSTOMER_PROVIDED", "SPACE_TRACK"
1291
1731
  # resp.satellites[0].ground_stations #=> Array
1292
1732
  # resp.satellites[0].ground_stations[0] #=> String
1293
1733
  # resp.satellites[0].norad_satellite_id #=> Integer
@@ -1315,7 +1755,7 @@ module Aws::GroundStation
1315
1755
  # @example Request syntax with placeholder values
1316
1756
  #
1317
1757
  # resp = client.list_tags_for_resource({
1318
- # resource_arn: "String", # required
1758
+ # resource_arn: "AnyArn", # required
1319
1759
  # })
1320
1760
  #
1321
1761
  # @example Response structure
@@ -1332,10 +1772,62 @@ module Aws::GroundStation
1332
1772
  req.send_request(options)
1333
1773
  end
1334
1774
 
1775
+ # <note markdown="1"> For use by AWS Ground Station Agent and shouldn't be called directly.
1776
+ #
1777
+ # </note>
1778
+ #
1779
+ # Registers a new agent with AWS Ground Station.
1780
+ #
1781
+ # @option params [required, Types::AgentDetails] :agent_details
1782
+ # Detailed information about the agent being registered.
1783
+ #
1784
+ # @option params [required, Types::DiscoveryData] :discovery_data
1785
+ # Data for associating an agent with the capabilities it is managing.
1786
+ #
1787
+ # @return [Types::RegisterAgentResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1788
+ #
1789
+ # * {Types::RegisterAgentResponse#agent_id #agent_id} => String
1790
+ #
1791
+ # @example Request syntax with placeholder values
1792
+ #
1793
+ # resp = client.register_agent({
1794
+ # agent_details: { # required
1795
+ # agent_cpu_cores: [1],
1796
+ # agent_version: "VersionString", # required
1797
+ # component_versions: [ # required
1798
+ # {
1799
+ # component_type: "ComponentTypeString", # required
1800
+ # versions: ["VersionString"], # required
1801
+ # },
1802
+ # ],
1803
+ # instance_id: "InstanceId", # required
1804
+ # instance_type: "InstanceType", # required
1805
+ # reserved_cpu_cores: [1],
1806
+ # },
1807
+ # discovery_data: { # required
1808
+ # capability_arns: ["CapabilityArn"], # required
1809
+ # private_ip_addresses: ["IpV4Address"], # required
1810
+ # public_ip_addresses: ["IpV4Address"], # required
1811
+ # },
1812
+ # })
1813
+ #
1814
+ # @example Response structure
1815
+ #
1816
+ # resp.agent_id #=> String
1817
+ #
1818
+ # @see http://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/RegisterAgent AWS API Documentation
1819
+ #
1820
+ # @overload register_agent(params = {})
1821
+ # @param [Hash] params ({})
1822
+ def register_agent(params = {}, options = {})
1823
+ req = build_request(:register_agent, params)
1824
+ req.send_request(options)
1825
+ end
1826
+
1335
1827
  # Reserves a contact using specified parameters.
1336
1828
  #
1337
1829
  # @option params [required, Time,DateTime,Date,Integer,String] :end_time
1338
- # End time of a contact.
1830
+ # End time of a contact in UTC.
1339
1831
  #
1340
1832
  # @option params [required, String] :ground_station
1341
1833
  # Name of a ground station.
@@ -1347,7 +1839,7 @@ module Aws::GroundStation
1347
1839
  # ARN of a satellite
1348
1840
  #
1349
1841
  # @option params [required, Time,DateTime,Date,Integer,String] :start_time
1350
- # Start time of a contact.
1842
+ # Start time of a contact in UTC.
1351
1843
  #
1352
1844
  # @option params [Hash<String,String>] :tags
1353
1845
  # Tags assigned to a contact.
@@ -1360,7 +1852,7 @@ module Aws::GroundStation
1360
1852
  #
1361
1853
  # resp = client.reserve_contact({
1362
1854
  # end_time: Time.now, # required
1363
- # ground_station: "String", # required
1855
+ # ground_station: "GroundStationName", # required
1364
1856
  # mission_profile_arn: "MissionProfileArn", # required
1365
1857
  # satellite_arn: "satelliteArn", # required
1366
1858
  # start_time: Time.now, # required
@@ -1395,7 +1887,7 @@ module Aws::GroundStation
1395
1887
  # @example Request syntax with placeholder values
1396
1888
  #
1397
1889
  # resp = client.tag_resource({
1398
- # resource_arn: "String", # required
1890
+ # resource_arn: "AnyArn", # required
1399
1891
  # tags: { # required
1400
1892
  # "String" => "String",
1401
1893
  # },
@@ -1423,8 +1915,8 @@ module Aws::GroundStation
1423
1915
  # @example Request syntax with placeholder values
1424
1916
  #
1425
1917
  # resp = client.untag_resource({
1426
- # resource_arn: "String", # required
1427
- # tag_keys: ["String"], # required
1918
+ # resource_arn: "AnyArn", # required
1919
+ # tag_keys: ["UnboundedString"], # required
1428
1920
  # })
1429
1921
  #
1430
1922
  # @see http://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/UntagResource AWS API Documentation
@@ -1436,6 +1928,65 @@ module Aws::GroundStation
1436
1928
  req.send_request(options)
1437
1929
  end
1438
1930
 
1931
+ # <note markdown="1"> For use by AWS Ground Station Agent and shouldn't be called directly.
1932
+ #
1933
+ # </note>
1934
+ #
1935
+ # Update the status of the agent.
1936
+ #
1937
+ # @option params [required, String] :agent_id
1938
+ # UUID of agent to update.
1939
+ #
1940
+ # @option params [required, Types::AggregateStatus] :aggregate_status
1941
+ # Aggregate status for agent.
1942
+ #
1943
+ # @option params [required, Array<Types::ComponentStatusData>] :component_statuses
1944
+ # List of component statuses for agent.
1945
+ #
1946
+ # @option params [required, String] :task_id
1947
+ # GUID of agent task.
1948
+ #
1949
+ # @return [Types::UpdateAgentStatusResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1950
+ #
1951
+ # * {Types::UpdateAgentStatusResponse#agent_id #agent_id} => String
1952
+ #
1953
+ # @example Request syntax with placeholder values
1954
+ #
1955
+ # resp = client.update_agent_status({
1956
+ # agent_id: "Uuid", # required
1957
+ # aggregate_status: { # required
1958
+ # signature_map: {
1959
+ # "String" => false,
1960
+ # },
1961
+ # status: "SUCCESS", # required, accepts SUCCESS, FAILED, ACTIVE, INACTIVE
1962
+ # },
1963
+ # component_statuses: [ # required
1964
+ # {
1965
+ # bytes_received: 1,
1966
+ # bytes_sent: 1,
1967
+ # capability_arn: "CapabilityArn", # required
1968
+ # component_type: "ComponentTypeString", # required
1969
+ # dataflow_id: "Uuid", # required
1970
+ # packets_dropped: 1,
1971
+ # status: "SUCCESS", # required, accepts SUCCESS, FAILED, ACTIVE, INACTIVE
1972
+ # },
1973
+ # ],
1974
+ # task_id: "Uuid", # required
1975
+ # })
1976
+ #
1977
+ # @example Response structure
1978
+ #
1979
+ # resp.agent_id #=> String
1980
+ #
1981
+ # @see http://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/UpdateAgentStatus AWS API Documentation
1982
+ #
1983
+ # @overload update_agent_status(params = {})
1984
+ # @param [Hash] params ({})
1985
+ def update_agent_status(params = {}, options = {})
1986
+ req = build_request(:update_agent_status, params)
1987
+ req.send_request(options)
1988
+ end
1989
+
1439
1990
  # Updates the `Config` used when scheduling contacts.
1440
1991
  #
1441
1992
  # Updating a `Config` will not update the execution parameters for
@@ -1526,7 +2077,7 @@ module Aws::GroundStation
1526
2077
  # enabled: false, # required
1527
2078
  # },
1528
2079
  # },
1529
- # config_id: "String", # required
2080
+ # config_id: "Uuid", # required
1530
2081
  # config_type: "antenna-downlink", # required, accepts antenna-downlink, antenna-downlink-demod-decode, antenna-uplink, dataflow-endpoint, tracking, uplink-echo, s3-recording
1531
2082
  # name: "SafeName", # required
1532
2083
  # })
@@ -1546,6 +2097,54 @@ module Aws::GroundStation
1546
2097
  req.send_request(options)
1547
2098
  end
1548
2099
 
2100
+ # Updates an existing ephemeris
2101
+ #
2102
+ # @option params [required, Boolean] :enabled
2103
+ # Whether the ephemeris is enabled or not. Changing this value will not
2104
+ # require the ephemeris to be re-validated.
2105
+ #
2106
+ # @option params [required, String] :ephemeris_id
2107
+ # The AWS Ground Station ephemeris ID.
2108
+ #
2109
+ # @option params [String] :name
2110
+ # A name string associated with the ephemeris. Used as a human-readable
2111
+ # identifier for the ephemeris.
2112
+ #
2113
+ # @option params [Integer] :priority
2114
+ # Customer-provided priority score to establish the order in which
2115
+ # overlapping ephemerides should be used.
2116
+ #
2117
+ # The default for customer-provided ephemeris priority is 1, and higher
2118
+ # numbers take precedence.
2119
+ #
2120
+ # Priority must be 1 or greater
2121
+ #
2122
+ # @return [Types::EphemerisIdResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2123
+ #
2124
+ # * {Types::EphemerisIdResponse#ephemeris_id #ephemeris_id} => String
2125
+ #
2126
+ # @example Request syntax with placeholder values
2127
+ #
2128
+ # resp = client.update_ephemeris({
2129
+ # enabled: false, # required
2130
+ # ephemeris_id: "Uuid", # required
2131
+ # name: "SafeName",
2132
+ # priority: 1,
2133
+ # })
2134
+ #
2135
+ # @example Response structure
2136
+ #
2137
+ # resp.ephemeris_id #=> String
2138
+ #
2139
+ # @see http://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/UpdateEphemeris AWS API Documentation
2140
+ #
2141
+ # @overload update_ephemeris(params = {})
2142
+ # @param [Hash] params ({})
2143
+ def update_ephemeris(params = {}, options = {})
2144
+ req = build_request(:update_ephemeris, params)
2145
+ req.send_request(options)
2146
+ end
2147
+
1549
2148
  # Updates a mission profile.
1550
2149
  #
1551
2150
  # Updating a mission profile will not update the execution parameters
@@ -1574,6 +2173,12 @@ module Aws::GroundStation
1574
2173
  # @option params [String] :name
1575
2174
  # Name of a mission profile.
1576
2175
  #
2176
+ # @option params [Types::KmsKey] :streams_kms_key
2177
+ # KMS key to use for encrypting streams.
2178
+ #
2179
+ # @option params [String] :streams_kms_role
2180
+ # Role to use for encrypting streams with KMS key.
2181
+ #
1577
2182
  # @option params [String] :tracking_config_arn
1578
2183
  # ARN of a tracking `Config`.
1579
2184
  #
@@ -1590,8 +2195,14 @@ module Aws::GroundStation
1590
2195
  # ["ConfigArn"],
1591
2196
  # ],
1592
2197
  # minimum_viable_contact_duration_seconds: 1,
1593
- # mission_profile_id: "String", # required
2198
+ # mission_profile_id: "Uuid", # required
1594
2199
  # name: "SafeName",
2200
+ # streams_kms_key: {
2201
+ # kms_alias_arn: "KeyAliasArn",
2202
+ # kms_alias_name: "KeyAliasName",
2203
+ # kms_key_arn: "KeyArn",
2204
+ # },
2205
+ # streams_kms_role: "RoleArn",
1595
2206
  # tracking_config_arn: "ConfigArn",
1596
2207
  # })
1597
2208
  #
@@ -1621,14 +2232,127 @@ module Aws::GroundStation
1621
2232
  params: params,
1622
2233
  config: config)
1623
2234
  context[:gem_name] = 'aws-sdk-groundstation'
1624
- context[:gem_version] = '1.24.0'
2235
+ context[:gem_version] = '1.41.0'
1625
2236
  Seahorse::Client::Request.new(handlers, context)
1626
2237
  end
1627
2238
 
2239
+ # Polls an API operation until a resource enters a desired state.
2240
+ #
2241
+ # ## Basic Usage
2242
+ #
2243
+ # A waiter will call an API operation until:
2244
+ #
2245
+ # * It is successful
2246
+ # * It enters a terminal state
2247
+ # * It makes the maximum number of attempts
2248
+ #
2249
+ # In between attempts, the waiter will sleep.
2250
+ #
2251
+ # # polls in a loop, sleeping between attempts
2252
+ # client.wait_until(waiter_name, params)
2253
+ #
2254
+ # ## Configuration
2255
+ #
2256
+ # You can configure the maximum number of polling attempts, and the
2257
+ # delay (in seconds) between each polling attempt. You can pass
2258
+ # configuration as the final arguments hash.
2259
+ #
2260
+ # # poll for ~25 seconds
2261
+ # client.wait_until(waiter_name, params, {
2262
+ # max_attempts: 5,
2263
+ # delay: 5,
2264
+ # })
2265
+ #
2266
+ # ## Callbacks
2267
+ #
2268
+ # You can be notified before each polling attempt and before each
2269
+ # delay. If you throw `:success` or `:failure` from these callbacks,
2270
+ # it will terminate the waiter.
2271
+ #
2272
+ # started_at = Time.now
2273
+ # client.wait_until(waiter_name, params, {
2274
+ #
2275
+ # # disable max attempts
2276
+ # max_attempts: nil,
2277
+ #
2278
+ # # poll for 1 hour, instead of a number of attempts
2279
+ # before_wait: -> (attempts, response) do
2280
+ # throw :failure if Time.now - started_at > 3600
2281
+ # end
2282
+ # })
2283
+ #
2284
+ # ## Handling Errors
2285
+ #
2286
+ # When a waiter is unsuccessful, it will raise an error.
2287
+ # All of the failure errors extend from
2288
+ # {Aws::Waiters::Errors::WaiterFailed}.
2289
+ #
2290
+ # begin
2291
+ # client.wait_until(...)
2292
+ # rescue Aws::Waiters::Errors::WaiterFailed
2293
+ # # resource did not enter the desired state in time
2294
+ # end
2295
+ #
2296
+ # ## Valid Waiters
2297
+ #
2298
+ # The following table lists the valid waiter names, the operations they call,
2299
+ # and the default `:delay` and `:max_attempts` values.
2300
+ #
2301
+ # | waiter_name | params | :delay | :max_attempts |
2302
+ # | ----------------- | ------------------------- | -------- | ------------- |
2303
+ # | contact_scheduled | {Client#describe_contact} | 5 | 180 |
2304
+ #
2305
+ # @raise [Errors::FailureStateError] Raised when the waiter terminates
2306
+ # because the waiter has entered a state that it will not transition
2307
+ # out of, preventing success.
2308
+ #
2309
+ # @raise [Errors::TooManyAttemptsError] Raised when the configured
2310
+ # maximum number of attempts have been made, and the waiter is not
2311
+ # yet successful.
2312
+ #
2313
+ # @raise [Errors::UnexpectedError] Raised when an error is encounted
2314
+ # while polling for a resource that is not expected.
2315
+ #
2316
+ # @raise [Errors::NoSuchWaiterError] Raised when you request to wait
2317
+ # for an unknown state.
2318
+ #
2319
+ # @return [Boolean] Returns `true` if the waiter was successful.
2320
+ # @param [Symbol] waiter_name
2321
+ # @param [Hash] params ({})
2322
+ # @param [Hash] options ({})
2323
+ # @option options [Integer] :max_attempts
2324
+ # @option options [Integer] :delay
2325
+ # @option options [Proc] :before_attempt
2326
+ # @option options [Proc] :before_wait
2327
+ def wait_until(waiter_name, params = {}, options = {})
2328
+ w = waiter(waiter_name, options)
2329
+ yield(w.waiter) if block_given? # deprecated
2330
+ w.wait(params)
2331
+ end
2332
+
1628
2333
  # @api private
1629
2334
  # @deprecated
1630
2335
  def waiter_names
1631
- []
2336
+ waiters.keys
2337
+ end
2338
+
2339
+ private
2340
+
2341
+ # @param [Symbol] waiter_name
2342
+ # @param [Hash] options ({})
2343
+ def waiter(waiter_name, options = {})
2344
+ waiter_class = waiters[waiter_name]
2345
+ if waiter_class
2346
+ waiter_class.new(options.merge(client: self))
2347
+ else
2348
+ raise Aws::Waiters::Errors::NoSuchWaiterError.new(waiter_name, waiters.keys)
2349
+ end
2350
+ end
2351
+
2352
+ def waiters
2353
+ {
2354
+ contact_scheduled: Waiters::ContactScheduled
2355
+ }
1632
2356
  end
1633
2357
 
1634
2358
  class << self