aws-sdk-groundstation 1.24.0 → 1.41.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -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