aws-sdk-bedrockagentcore 1.31.0 → 1.32.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.
@@ -233,6 +233,25 @@ module Aws::BedrockAgentCore
233
233
  class Unknown < AgentTracesConfig; end
234
234
  end
235
235
 
236
+ # Money amount with currency
237
+ #
238
+ # @!attribute [rw] value
239
+ # The numeric value of the amount.
240
+ # @return [String]
241
+ #
242
+ # @!attribute [rw] currency
243
+ # The currency code for this amount.
244
+ # @return [String]
245
+ #
246
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/Amount AWS API Documentation
247
+ #
248
+ class Amount < Struct.new(
249
+ :value,
250
+ :currency)
251
+ SENSITIVE = []
252
+ include Aws::Structure
253
+ end
254
+
236
255
  # The configuration for a stream that enables programmatic control of a
237
256
  # browser session in Amazon Bedrock AgentCore. This stream provides a
238
257
  # bidirectional communication channel for sending commands to the
@@ -274,6 +293,25 @@ module Aws::BedrockAgentCore
274
293
  include Aws::Structure
275
294
  end
276
295
 
296
+ # Available session limits. Currently only budget is supported.
297
+ #
298
+ # @!attribute [rw] available_spend_amount
299
+ # The available spend amount for this session.
300
+ # @return [Types::Amount]
301
+ #
302
+ # @!attribute [rw] updated_at
303
+ # The timestamp when the available limits were last updated.
304
+ # @return [Time]
305
+ #
306
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/AvailableLimits AWS API Documentation
307
+ #
308
+ class AvailableLimits < Struct.new(
309
+ :available_spend_amount,
310
+ :updated_at)
311
+ SENSITIVE = []
312
+ include Aws::Structure
313
+ end
314
+
277
315
  # Configuration for HTTP Basic Authentication using credentials stored
278
316
  # in Amazon Web Services Secrets Manager. The secret must contain a JSON
279
317
  # object with `username` and `password` string fields. Username allows
@@ -1046,6 +1084,60 @@ module Aws::BedrockAgentCore
1046
1084
  include Aws::Structure
1047
1085
  end
1048
1086
 
1087
+ # Coinbase CDP token request parameters
1088
+ #
1089
+ # @!attribute [rw] request_method
1090
+ # The HTTP method for the payment API request.
1091
+ # @return [String]
1092
+ #
1093
+ # @!attribute [rw] request_host
1094
+ # Optional - defaults to "api.cdp.coinbase.com"
1095
+ # @return [String]
1096
+ #
1097
+ # @!attribute [rw] request_path
1098
+ # The path of the payment API request.
1099
+ # @return [String]
1100
+ #
1101
+ # @!attribute [rw] include_wallet_auth_token
1102
+ # Set to true for wallet write operations (requires walletSecret
1103
+ # configured)
1104
+ # @return [Boolean]
1105
+ #
1106
+ # @!attribute [rw] request_body
1107
+ # Request body JSON - used to generate wallet auth JWT
1108
+ # @return [String]
1109
+ #
1110
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/CoinbaseCdpTokenRequestInput AWS API Documentation
1111
+ #
1112
+ class CoinbaseCdpTokenRequestInput < Struct.new(
1113
+ :request_method,
1114
+ :request_host,
1115
+ :request_path,
1116
+ :include_wallet_auth_token,
1117
+ :request_body)
1118
+ SENSITIVE = []
1119
+ include Aws::Structure
1120
+ end
1121
+
1122
+ # Coinbase CDP token response
1123
+ #
1124
+ # @!attribute [rw] bearer_token
1125
+ # Bearer Token for Authorization header
1126
+ # @return [String]
1127
+ #
1128
+ # @!attribute [rw] wallet_auth_token
1129
+ # Wallet Auth Token for X-Wallet-Auth header
1130
+ # @return [String]
1131
+ #
1132
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/CoinbaseCdpTokenResponseOutput AWS API Documentation
1133
+ #
1134
+ class CoinbaseCdpTokenResponseOutput < Struct.new(
1135
+ :bearer_token,
1136
+ :wallet_auth_token)
1137
+ SENSITIVE = [:bearer_token, :wallet_auth_token]
1138
+ include Aws::Structure
1139
+ end
1140
+
1049
1141
  # @!attribute [rw] user_identifier
1050
1142
  # The OAuth2.0 token or user ID that was used to generate the workload
1051
1143
  # access token used for initiating the user authorization flow to
@@ -1527,6 +1619,162 @@ module Aws::BedrockAgentCore
1527
1619
  include Aws::Structure
1528
1620
  end
1529
1621
 
1622
+ # Request structure for creating a payment instrument
1623
+ #
1624
+ # @!attribute [rw] user_id
1625
+ # The user ID associated with this payment instrument.
1626
+ # @return [String]
1627
+ #
1628
+ # @!attribute [rw] agent_name
1629
+ # The agent name associated with this request, used for observability.
1630
+ # @return [String]
1631
+ #
1632
+ # @!attribute [rw] payment_manager_arn
1633
+ # The ARN of the payment manager that owns this payment instrument.
1634
+ # @return [String]
1635
+ #
1636
+ # @!attribute [rw] payment_connector_id
1637
+ # The ID of the payment connector to use for this instrument.
1638
+ # @return [String]
1639
+ #
1640
+ # @!attribute [rw] payment_instrument_type
1641
+ # The type of payment instrument being created.
1642
+ # @return [String]
1643
+ #
1644
+ # @!attribute [rw] payment_instrument_details
1645
+ # The details of the payment instrument.
1646
+ # @return [Types::PaymentInstrumentDetails]
1647
+ #
1648
+ # @!attribute [rw] client_token
1649
+ # Idempotency token to ensure request uniqueness.
1650
+ #
1651
+ # **A suitable default value is auto-generated.** You should normally
1652
+ # not need to pass this option.
1653
+ # @return [String]
1654
+ #
1655
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/CreatePaymentInstrumentRequest AWS API Documentation
1656
+ #
1657
+ class CreatePaymentInstrumentRequest < Struct.new(
1658
+ :user_id,
1659
+ :agent_name,
1660
+ :payment_manager_arn,
1661
+ :payment_connector_id,
1662
+ :payment_instrument_type,
1663
+ :payment_instrument_details,
1664
+ :client_token)
1665
+ SENSITIVE = []
1666
+ include Aws::Structure
1667
+ end
1668
+
1669
+ # Response structure for creating a payment instrument
1670
+ #
1671
+ # @!attribute [rw] payment_instrument
1672
+ # Represents a payment instrument
1673
+ # @return [Types::PaymentInstrument]
1674
+ #
1675
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/CreatePaymentInstrumentResponse AWS API Documentation
1676
+ #
1677
+ class CreatePaymentInstrumentResponse < Struct.new(
1678
+ :payment_instrument)
1679
+ SENSITIVE = []
1680
+ include Aws::Structure
1681
+ end
1682
+
1683
+ # Request structure for creating a payment session
1684
+ #
1685
+ # @!attribute [rw] user_id
1686
+ # The user ID associated with this payment session.
1687
+ # @return [String]
1688
+ #
1689
+ # @!attribute [rw] agent_name
1690
+ # The agent name associated with this request, used for observability.
1691
+ # @return [String]
1692
+ #
1693
+ # @!attribute [rw] payment_manager_arn
1694
+ # The ARN of the payment manager that owns this session.
1695
+ # @return [String]
1696
+ #
1697
+ # @!attribute [rw] limits
1698
+ # The spending limits for this payment session.
1699
+ # @return [Types::SessionLimits]
1700
+ #
1701
+ # @!attribute [rw] expiry_time_in_minutes
1702
+ # The session expiry time in minutes. Must be between 15 and 480
1703
+ # minutes.
1704
+ # @return [Integer]
1705
+ #
1706
+ # @!attribute [rw] client_token
1707
+ # Idempotency token to ensure request uniqueness.
1708
+ #
1709
+ # **A suitable default value is auto-generated.** You should normally
1710
+ # not need to pass this option.
1711
+ # @return [String]
1712
+ #
1713
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/CreatePaymentSessionRequest AWS API Documentation
1714
+ #
1715
+ class CreatePaymentSessionRequest < Struct.new(
1716
+ :user_id,
1717
+ :agent_name,
1718
+ :payment_manager_arn,
1719
+ :limits,
1720
+ :expiry_time_in_minutes,
1721
+ :client_token)
1722
+ SENSITIVE = []
1723
+ include Aws::Structure
1724
+ end
1725
+
1726
+ # Response structure for creating a payment session
1727
+ #
1728
+ # @!attribute [rw] payment_session
1729
+ # Payment manager session
1730
+ # @return [Types::PaymentSession]
1731
+ #
1732
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/CreatePaymentSessionResponse AWS API Documentation
1733
+ #
1734
+ class CreatePaymentSessionResponse < Struct.new(
1735
+ :payment_session)
1736
+ SENSITIVE = []
1737
+ include Aws::Structure
1738
+ end
1739
+
1740
+ # X402 payment requirement input
1741
+ #
1742
+ # @!attribute [rw] version
1743
+ # The X402 protocol version (e.g., "v1", "v2")
1744
+ # @return [String]
1745
+ #
1746
+ # @!attribute [rw] payload
1747
+ # This can hold any JSON-like object
1748
+ # @return [Hash,Array,String,Numeric,Boolean]
1749
+ #
1750
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/CryptoX402PaymentInput AWS API Documentation
1751
+ #
1752
+ class CryptoX402PaymentInput < Struct.new(
1753
+ :version,
1754
+ :payload)
1755
+ SENSITIVE = [:payload]
1756
+ include Aws::Structure
1757
+ end
1758
+
1759
+ # X402 payment requirement output
1760
+ #
1761
+ # @!attribute [rw] version
1762
+ # The X402 protocol version (e.g., "1", "2")
1763
+ # @return [String]
1764
+ #
1765
+ # @!attribute [rw] payload
1766
+ # This can hold any JSON-like object
1767
+ # @return [Hash,Array,String,Numeric,Boolean]
1768
+ #
1769
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/CryptoX402PaymentOutput AWS API Documentation
1770
+ #
1771
+ class CryptoX402PaymentOutput < Struct.new(
1772
+ :version,
1773
+ :payload)
1774
+ SENSITIVE = [:payload]
1775
+ include Aws::Structure
1776
+ end
1777
+
1530
1778
  # A custom descriptor configuration for a registry record.
1531
1779
  #
1532
1780
  # @!attribute [rw] inline_content
@@ -1702,6 +1950,106 @@ module Aws::BedrockAgentCore
1702
1950
  include Aws::Structure
1703
1951
  end
1704
1952
 
1953
+ # Request structure for deleting a payment instrument
1954
+ #
1955
+ # All fields are required and must match the instrument owner's
1956
+ # identifiers for authorization to succeed.
1957
+ #
1958
+ # @!attribute [rw] user_id
1959
+ # The user ID making the delete request. Must match the instrument's
1960
+ # userId.
1961
+ # @return [String]
1962
+ #
1963
+ # @!attribute [rw] payment_manager_arn
1964
+ # The payment manager ARN. Must match the instrument's
1965
+ # paymentManagerArn.
1966
+ # @return [String]
1967
+ #
1968
+ # @!attribute [rw] payment_connector_id
1969
+ # The payment connector ID. Must match the instrument's
1970
+ # paymentConnectorId.
1971
+ # @return [String]
1972
+ #
1973
+ # @!attribute [rw] payment_instrument_id
1974
+ # The payment instrument ID to delete.
1975
+ # @return [String]
1976
+ #
1977
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/DeletePaymentInstrumentRequest AWS API Documentation
1978
+ #
1979
+ class DeletePaymentInstrumentRequest < Struct.new(
1980
+ :user_id,
1981
+ :payment_manager_arn,
1982
+ :payment_connector_id,
1983
+ :payment_instrument_id)
1984
+ SENSITIVE = []
1985
+ include Aws::Structure
1986
+ end
1987
+
1988
+ # Response structure for deleting a payment instrument
1989
+ #
1990
+ # Returns the deletion status with HTTP 200 OK status code on successful
1991
+ # soft deletion.
1992
+ #
1993
+ # @!attribute [rw] status
1994
+ # The status of the instrument after deletion. Always DELETED for
1995
+ # successful soft delete.
1996
+ # @return [String]
1997
+ #
1998
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/DeletePaymentInstrumentResponse AWS API Documentation
1999
+ #
2000
+ class DeletePaymentInstrumentResponse < Struct.new(
2001
+ :status)
2002
+ SENSITIVE = []
2003
+ include Aws::Structure
2004
+ end
2005
+
2006
+ # Request structure for deleting a payment session
2007
+ #
2008
+ # All fields are required and must match the session owner's
2009
+ # identifiers for authorization to succeed.
2010
+ #
2011
+ # @!attribute [rw] user_id
2012
+ # The user ID making the delete request. Must match the session's
2013
+ # userId.
2014
+ # @return [String]
2015
+ #
2016
+ # @!attribute [rw] payment_manager_arn
2017
+ # The payment manager ARN. Must match the session's
2018
+ # paymentManagerArn.
2019
+ # @return [String]
2020
+ #
2021
+ # @!attribute [rw] payment_session_id
2022
+ # The payment session ID to delete.
2023
+ # @return [String]
2024
+ #
2025
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/DeletePaymentSessionRequest AWS API Documentation
2026
+ #
2027
+ class DeletePaymentSessionRequest < Struct.new(
2028
+ :user_id,
2029
+ :payment_manager_arn,
2030
+ :payment_session_id)
2031
+ SENSITIVE = []
2032
+ include Aws::Structure
2033
+ end
2034
+
2035
+ # Response structure for deleting a payment session
2036
+ #
2037
+ # Returns the deletion status with HTTP 200 status code on successful
2038
+ # deletion.
2039
+ #
2040
+ # @!attribute [rw] status
2041
+ # The status of the deletion. Always DELETED for successful hard
2042
+ # delete.
2043
+ # @return [String]
2044
+ #
2045
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/DeletePaymentSessionResponse AWS API Documentation
2046
+ #
2047
+ class DeletePaymentSessionResponse < Struct.new(
2048
+ :status)
2049
+ SENSITIVE = []
2050
+ include Aws::Structure
2051
+ end
2052
+
1705
2053
  # @!attribute [rw] recommendation_id
1706
2054
  # The unique identifier of the recommendation to delete.
1707
2055
  # @return [String]
@@ -1779,6 +2127,40 @@ module Aws::BedrockAgentCore
1779
2127
  include Aws::Structure
1780
2128
  end
1781
2129
 
2130
+ # Embedded Crypto wallet instrument details
2131
+ #
2132
+ # @!attribute [rw] network
2133
+ # The blockchain network for this embedded crypto wallet. Supported
2134
+ # networks: ETHEREUM, SOLANA
2135
+ # @return [String]
2136
+ #
2137
+ # @!attribute [rw] linked_accounts
2138
+ # List of linkedAccounts linked to this wallet. Each linkedAccount
2139
+ # represents a way the end user can authenticate to this wallet. Can
2140
+ # be empty when adding a new linkedAccount to an existing wallet.
2141
+ # @return [Array<Types::LinkedAccount>]
2142
+ #
2143
+ # @!attribute [rw] wallet_address
2144
+ # The wallet address on the specified blockchain network.
2145
+ # @return [String]
2146
+ #
2147
+ # @!attribute [rw] redirect_url
2148
+ # URL for the end user to complete a provider-specific action (e.g.,
2149
+ # wallet linking, onboarding). Returned by the payment connector
2150
+ # during instrument creation.
2151
+ # @return [String]
2152
+ #
2153
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/EmbeddedCryptoWallet AWS API Documentation
2154
+ #
2155
+ class EmbeddedCryptoWallet < Struct.new(
2156
+ :network,
2157
+ :linked_accounts,
2158
+ :wallet_address,
2159
+ :redirect_url)
2160
+ SENSITIVE = [:linked_accounts]
2161
+ include Aws::Structure
2162
+ end
2163
+
1782
2164
  # @!attribute [rw] evaluator_id
1783
2165
  # The unique identifier of the evaluator to use for scoring. Can be a
1784
2166
  # built-in evaluator (e.g., `Builtin.Helpfulness`,
@@ -3006,52 +3388,209 @@ module Aws::BedrockAgentCore
3006
3388
  include Aws::Structure
3007
3389
  end
3008
3390
 
3009
- # @!attribute [rw] recommendation_id
3010
- # The unique identifier of the recommendation to retrieve.
3391
+ # Request structure for getting payment instrument balance
3392
+ #
3393
+ # @!attribute [rw] user_id
3394
+ # The user ID associated with this payment instrument.
3011
3395
  # @return [String]
3012
3396
  #
3013
- # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/GetRecommendationRequest AWS API Documentation
3397
+ # @!attribute [rw] agent_name
3398
+ # The agent name associated with this request, used for observability.
3399
+ # @return [String]
3014
3400
  #
3015
- class GetRecommendationRequest < Struct.new(
3016
- :recommendation_id)
3401
+ # @!attribute [rw] payment_manager_arn
3402
+ # The ARN of the payment manager that owns this payment instrument.
3403
+ # @return [String]
3404
+ #
3405
+ # @!attribute [rw] payment_connector_id
3406
+ # The ID of the payment connector associated with this instrument.
3407
+ # @return [String]
3408
+ #
3409
+ # @!attribute [rw] payment_instrument_id
3410
+ # The ID of the payment instrument to query balance for.
3411
+ # @return [String]
3412
+ #
3413
+ # @!attribute [rw] chain
3414
+ # The specific blockchain chain to query balance on. Required because
3415
+ # balances are chain-specific — the same wallet address may hold
3416
+ # different token balances on different chains.
3417
+ # @return [String]
3418
+ #
3419
+ # @!attribute [rw] token
3420
+ # The token to query balance for. Required to specify which supported
3421
+ # token's balance to return.
3422
+ # @return [String]
3423
+ #
3424
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/GetPaymentInstrumentBalanceRequest AWS API Documentation
3425
+ #
3426
+ class GetPaymentInstrumentBalanceRequest < Struct.new(
3427
+ :user_id,
3428
+ :agent_name,
3429
+ :payment_manager_arn,
3430
+ :payment_connector_id,
3431
+ :payment_instrument_id,
3432
+ :chain,
3433
+ :token)
3017
3434
  SENSITIVE = []
3018
3435
  include Aws::Structure
3019
3436
  end
3020
3437
 
3021
- # @!attribute [rw] recommendation_id
3022
- # The unique identifier of the recommendation.
3023
- # @return [String]
3438
+ # Response structure for getting payment instrument balance
3024
3439
  #
3025
- # @!attribute [rw] recommendation_arn
3026
- # The Amazon Resource Name (ARN) of the recommendation.
3440
+ # @!attribute [rw] payment_instrument_id
3441
+ # The ID of the payment instrument.
3027
3442
  # @return [String]
3028
3443
  #
3029
- # @!attribute [rw] name
3030
- # The name of the recommendation.
3444
+ # @!attribute [rw] token_balance
3445
+ # The balance of the supported token on the requested chain.
3446
+ # @return [Types::TokenBalance]
3447
+ #
3448
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/GetPaymentInstrumentBalanceResponse AWS API Documentation
3449
+ #
3450
+ class GetPaymentInstrumentBalanceResponse < Struct.new(
3451
+ :payment_instrument_id,
3452
+ :token_balance)
3453
+ SENSITIVE = []
3454
+ include Aws::Structure
3455
+ end
3456
+
3457
+ # Request structure for getting a payment instrument
3458
+ #
3459
+ # @!attribute [rw] user_id
3460
+ # The user ID associated with this payment instrument.
3031
3461
  # @return [String]
3032
3462
  #
3033
- # @!attribute [rw] description
3034
- # The description of the recommendation.
3463
+ # @!attribute [rw] agent_name
3464
+ # The agent name associated with this request, used for observability.
3035
3465
  # @return [String]
3036
3466
  #
3037
- # @!attribute [rw] type
3038
- # The type of recommendation.
3467
+ # @!attribute [rw] payment_manager_arn
3468
+ # The ARN of the payment manager that owns this payment instrument.
3039
3469
  # @return [String]
3040
3470
  #
3041
- # @!attribute [rw] recommendation_config
3042
- # The configuration for the recommendation.
3043
- # @return [Types::RecommendationConfig]
3471
+ # @!attribute [rw] payment_connector_id
3472
+ # The ID of the payment connector.
3473
+ # @return [String]
3044
3474
  #
3045
- # @!attribute [rw] status
3046
- # The current status of the recommendation.
3475
+ # @!attribute [rw] payment_instrument_id
3476
+ # The ID of the payment instrument to retrieve.
3047
3477
  # @return [String]
3048
3478
  #
3049
- # @!attribute [rw] created_at
3050
- # The timestamp when the recommendation was created.
3051
- # @return [Time]
3479
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/GetPaymentInstrumentRequest AWS API Documentation
3052
3480
  #
3053
- # @!attribute [rw] updated_at
3054
- # The timestamp when the recommendation was last updated.
3481
+ class GetPaymentInstrumentRequest < Struct.new(
3482
+ :user_id,
3483
+ :agent_name,
3484
+ :payment_manager_arn,
3485
+ :payment_connector_id,
3486
+ :payment_instrument_id)
3487
+ SENSITIVE = []
3488
+ include Aws::Structure
3489
+ end
3490
+
3491
+ # Response structure for getting a payment instrument
3492
+ #
3493
+ # @!attribute [rw] payment_instrument
3494
+ # Represents a payment instrument
3495
+ # @return [Types::PaymentInstrument]
3496
+ #
3497
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/GetPaymentInstrumentResponse AWS API Documentation
3498
+ #
3499
+ class GetPaymentInstrumentResponse < Struct.new(
3500
+ :payment_instrument)
3501
+ SENSITIVE = []
3502
+ include Aws::Structure
3503
+ end
3504
+
3505
+ # Request structure for getting a payment session
3506
+ #
3507
+ # @!attribute [rw] user_id
3508
+ # The user ID associated with this payment session.
3509
+ # @return [String]
3510
+ #
3511
+ # @!attribute [rw] agent_name
3512
+ # The agent name associated with this request, used for observability.
3513
+ # @return [String]
3514
+ #
3515
+ # @!attribute [rw] payment_manager_arn
3516
+ # The ARN of the payment manager that owns this session.
3517
+ # @return [String]
3518
+ #
3519
+ # @!attribute [rw] payment_session_id
3520
+ # The ID of the payment session to retrieve.
3521
+ # @return [String]
3522
+ #
3523
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/GetPaymentSessionRequest AWS API Documentation
3524
+ #
3525
+ class GetPaymentSessionRequest < Struct.new(
3526
+ :user_id,
3527
+ :agent_name,
3528
+ :payment_manager_arn,
3529
+ :payment_session_id)
3530
+ SENSITIVE = []
3531
+ include Aws::Structure
3532
+ end
3533
+
3534
+ # Response structure for getting a payment session
3535
+ #
3536
+ # @!attribute [rw] payment_session
3537
+ # Payment manager session
3538
+ # @return [Types::PaymentSession]
3539
+ #
3540
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/GetPaymentSessionResponse AWS API Documentation
3541
+ #
3542
+ class GetPaymentSessionResponse < Struct.new(
3543
+ :payment_session)
3544
+ SENSITIVE = []
3545
+ include Aws::Structure
3546
+ end
3547
+
3548
+ # @!attribute [rw] recommendation_id
3549
+ # The unique identifier of the recommendation to retrieve.
3550
+ # @return [String]
3551
+ #
3552
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/GetRecommendationRequest AWS API Documentation
3553
+ #
3554
+ class GetRecommendationRequest < Struct.new(
3555
+ :recommendation_id)
3556
+ SENSITIVE = []
3557
+ include Aws::Structure
3558
+ end
3559
+
3560
+ # @!attribute [rw] recommendation_id
3561
+ # The unique identifier of the recommendation.
3562
+ # @return [String]
3563
+ #
3564
+ # @!attribute [rw] recommendation_arn
3565
+ # The Amazon Resource Name (ARN) of the recommendation.
3566
+ # @return [String]
3567
+ #
3568
+ # @!attribute [rw] name
3569
+ # The name of the recommendation.
3570
+ # @return [String]
3571
+ #
3572
+ # @!attribute [rw] description
3573
+ # The description of the recommendation.
3574
+ # @return [String]
3575
+ #
3576
+ # @!attribute [rw] type
3577
+ # The type of recommendation.
3578
+ # @return [String]
3579
+ #
3580
+ # @!attribute [rw] recommendation_config
3581
+ # The configuration for the recommendation.
3582
+ # @return [Types::RecommendationConfig]
3583
+ #
3584
+ # @!attribute [rw] status
3585
+ # The current status of the recommendation.
3586
+ # @return [String]
3587
+ #
3588
+ # @!attribute [rw] created_at
3589
+ # The timestamp when the recommendation was created.
3590
+ # @return [Time]
3591
+ #
3592
+ # @!attribute [rw] updated_at
3593
+ # The timestamp when the recommendation was last updated.
3055
3594
  # @return [Time]
3056
3595
  #
3057
3596
  # @!attribute [rw] recommendation_result
@@ -3218,6 +3757,43 @@ module Aws::BedrockAgentCore
3218
3757
  include Aws::Structure
3219
3758
  end
3220
3759
 
3760
+ # @!attribute [rw] workload_identity_token
3761
+ # Workload access token for authorization. Named workloadIdentityToken
3762
+ # for consistency with APIKey and OAuth2CredentialProvider.
3763
+ # @return [String]
3764
+ #
3765
+ # @!attribute [rw] resource_credential_provider_name
3766
+ # Name of the payment credential provider to use
3767
+ # @return [String]
3768
+ #
3769
+ # @!attribute [rw] payment_token_request
3770
+ # Vendor-specific token request input Contains all request parameters
3771
+ # in a type-safe, vendor-specific structure
3772
+ # @return [Types::PaymentTokenRequestInput]
3773
+ #
3774
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/GetResourcePaymentTokenRequest AWS API Documentation
3775
+ #
3776
+ class GetResourcePaymentTokenRequest < Struct.new(
3777
+ :workload_identity_token,
3778
+ :resource_credential_provider_name,
3779
+ :payment_token_request)
3780
+ SENSITIVE = [:workload_identity_token]
3781
+ include Aws::Structure
3782
+ end
3783
+
3784
+ # @!attribute [rw] payment_token_response
3785
+ # Vendor-specific token response output Contains all response data in
3786
+ # a type-safe, vendor-specific structure
3787
+ # @return [Types::PaymentTokenResponseOutput]
3788
+ #
3789
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/GetResourcePaymentTokenResponse AWS API Documentation
3790
+ #
3791
+ class GetResourcePaymentTokenResponse < Struct.new(
3792
+ :payment_token_response)
3793
+ SENSITIVE = []
3794
+ include Aws::Structure
3795
+ end
3796
+
3221
3797
  # @!attribute [rw] workload_name
3222
3798
  # The unique identifier for the registered workload.
3223
3799
  # @return [String]
@@ -5003,6 +5579,149 @@ module Aws::BedrockAgentCore
5003
5579
  class Unknown < LeftExpression; end
5004
5580
  end
5005
5581
 
5582
+ # Represents different linkedAccounts that can be linked to an embedded
5583
+ # wallet. This union supports multiple linkedAccount approaches: email,
5584
+ # SMS, JWT, and OAuth2.
5585
+ #
5586
+ # @note LinkedAccount is a union - when making an API calls you must set exactly one of the members.
5587
+ #
5588
+ # @note LinkedAccount is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of LinkedAccount corresponding to the set member.
5589
+ #
5590
+ # @!attribute [rw] email
5591
+ # Email-based linkedAccount
5592
+ # @return [Types::LinkedAccountEmail]
5593
+ #
5594
+ # @!attribute [rw] sms
5595
+ # SMS-based linkedAccount using phone number
5596
+ # @return [Types::LinkedAccountSms]
5597
+ #
5598
+ # @!attribute [rw] developer_jwt
5599
+ # Developer JWT linkedAccount with key ID and subject
5600
+ # @return [Types::LinkedAccountDeveloperJwt]
5601
+ #
5602
+ # @!attribute [rw] o_auth_2
5603
+ # OAuth2 provider linkedAccount (Google, Apple, X, Telegram, GitHub)
5604
+ # @return [Types::LinkedAccountOAuth2]
5605
+ #
5606
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/LinkedAccount AWS API Documentation
5607
+ #
5608
+ class LinkedAccount < Struct.new(
5609
+ :email,
5610
+ :sms,
5611
+ :developer_jwt,
5612
+ :o_auth_2,
5613
+ :unknown)
5614
+ SENSITIVE = [:email, :sms]
5615
+ include Aws::Structure
5616
+ include Aws::Structure::Union
5617
+
5618
+ class Email < LinkedAccount; end
5619
+ class Sms < LinkedAccount; end
5620
+ class DeveloperJwt < LinkedAccount; end
5621
+ class OAuth2 < LinkedAccount; end
5622
+ class Unknown < LinkedAccount; end
5623
+ end
5624
+
5625
+ # Authentication method using JWT with key ID and subject claims.
5626
+ #
5627
+ # @!attribute [rw] kid
5628
+ # The key ID (kid) from the JWT header. Identifies which key was used
5629
+ # to sign the JWT.
5630
+ # @return [String]
5631
+ #
5632
+ # @!attribute [rw] sub
5633
+ # The subject (sub) claim from the JWT payload. Identifies the
5634
+ # principal that is the subject of the JWT.
5635
+ # @return [String]
5636
+ #
5637
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/LinkedAccountDeveloperJwt AWS API Documentation
5638
+ #
5639
+ class LinkedAccountDeveloperJwt < Struct.new(
5640
+ :kid,
5641
+ :sub)
5642
+ SENSITIVE = []
5643
+ include Aws::Structure
5644
+ end
5645
+
5646
+ # LinkedAccount using an email address.
5647
+ #
5648
+ # @!attribute [rw] email_address
5649
+ # The email address used for linkedAccount. Must be a valid email
5650
+ # format.
5651
+ # @return [String]
5652
+ #
5653
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/LinkedAccountEmail AWS API Documentation
5654
+ #
5655
+ class LinkedAccountEmail < Struct.new(
5656
+ :email_address)
5657
+ SENSITIVE = [:email_address]
5658
+ include Aws::Structure
5659
+ end
5660
+
5661
+ # Authentication method using OAuth2 providers. Supports Google, Apple,
5662
+ # X, Telegram, and GitHub providers.
5663
+ #
5664
+ # @note LinkedAccountOAuth2 is a union - when making an API calls you must set exactly one of the members.
5665
+ #
5666
+ # @note LinkedAccountOAuth2 is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of LinkedAccountOAuth2 corresponding to the set member.
5667
+ #
5668
+ # @!attribute [rw] google
5669
+ # Google OAuth2 authentication
5670
+ # @return [Types::OAuth2Authentication]
5671
+ #
5672
+ # @!attribute [rw] apple
5673
+ # Apple OAuth2 authentication
5674
+ # @return [Types::OAuth2Authentication]
5675
+ #
5676
+ # @!attribute [rw] x
5677
+ # X (formerly Twitter) OAuth2 authentication
5678
+ # @return [Types::OAuth2Authentication]
5679
+ #
5680
+ # @!attribute [rw] telegram
5681
+ # Telegram OAuth2 authentication
5682
+ # @return [Types::OAuth2Authentication]
5683
+ #
5684
+ # @!attribute [rw] github
5685
+ # GitHub OAuth2 authentication
5686
+ # @return [Types::OAuth2Authentication]
5687
+ #
5688
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/LinkedAccountOAuth2 AWS API Documentation
5689
+ #
5690
+ class LinkedAccountOAuth2 < Struct.new(
5691
+ :google,
5692
+ :apple,
5693
+ :x,
5694
+ :telegram,
5695
+ :github,
5696
+ :unknown)
5697
+ SENSITIVE = [:google, :apple, :x, :telegram, :github]
5698
+ include Aws::Structure
5699
+ include Aws::Structure::Union
5700
+
5701
+ class Google < LinkedAccountOAuth2; end
5702
+ class Apple < LinkedAccountOAuth2; end
5703
+ class X < LinkedAccountOAuth2; end
5704
+ class Telegram < LinkedAccountOAuth2; end
5705
+ class Github < LinkedAccountOAuth2; end
5706
+ class Unknown < LinkedAccountOAuth2; end
5707
+ end
5708
+
5709
+ # LinkedAccount using a phone number in E.164 format.
5710
+ #
5711
+ # @!attribute [rw] phone_number
5712
+ # The phone number in E.164 format (e.g., +1234567890). Must be a
5713
+ # valid E.164 formatted phone number starting with + and containing
5714
+ # 1-15 digits.
5715
+ # @return [String]
5716
+ #
5717
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/LinkedAccountSms AWS API Documentation
5718
+ #
5719
+ class LinkedAccountSms < Struct.new(
5720
+ :phone_number)
5721
+ SENSITIVE = [:phone_number]
5722
+ include Aws::Structure
5723
+ end
5724
+
5006
5725
  # @!attribute [rw] max_results
5007
5726
  # The maximum number of results to return in the response. If the
5008
5727
  # total number of results is greater than this value, use the token
@@ -5428,6 +6147,117 @@ module Aws::BedrockAgentCore
5428
6147
  include Aws::Structure
5429
6148
  end
5430
6149
 
6150
+ # Request structure for listing payment instruments
6151
+ #
6152
+ # @!attribute [rw] user_id
6153
+ # The user ID associated with the payment instruments.
6154
+ # @return [String]
6155
+ #
6156
+ # @!attribute [rw] agent_name
6157
+ # The agent name associated with this request, used for observability.
6158
+ # @return [String]
6159
+ #
6160
+ # @!attribute [rw] payment_manager_arn
6161
+ # The ARN of the payment manager that owns the payment instruments.
6162
+ # @return [String]
6163
+ #
6164
+ # @!attribute [rw] payment_connector_id
6165
+ # The ID of the payment connector to filter by.
6166
+ # @return [String]
6167
+ #
6168
+ # @!attribute [rw] next_token
6169
+ # Token for pagination to retrieve the next set of results.
6170
+ # @return [String]
6171
+ #
6172
+ # @!attribute [rw] max_results
6173
+ # Maximum number of results to return in a single response.
6174
+ # @return [Integer]
6175
+ #
6176
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/ListPaymentInstrumentsRequest AWS API Documentation
6177
+ #
6178
+ class ListPaymentInstrumentsRequest < Struct.new(
6179
+ :user_id,
6180
+ :agent_name,
6181
+ :payment_manager_arn,
6182
+ :payment_connector_id,
6183
+ :next_token,
6184
+ :max_results)
6185
+ SENSITIVE = []
6186
+ include Aws::Structure
6187
+ end
6188
+
6189
+ # Response structure for listing payment instruments
6190
+ #
6191
+ # @!attribute [rw] payment_instruments
6192
+ # List of payment instrument summaries matching the request criteria.
6193
+ # @return [Array<Types::PaymentInstrumentSummary>]
6194
+ #
6195
+ # @!attribute [rw] next_token
6196
+ # Token for pagination to retrieve the next set of results.
6197
+ # @return [String]
6198
+ #
6199
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/ListPaymentInstrumentsResponse AWS API Documentation
6200
+ #
6201
+ class ListPaymentInstrumentsResponse < Struct.new(
6202
+ :payment_instruments,
6203
+ :next_token)
6204
+ SENSITIVE = []
6205
+ include Aws::Structure
6206
+ end
6207
+
6208
+ # Request structure for listing payment sessions
6209
+ #
6210
+ # @!attribute [rw] user_id
6211
+ # The user ID associated with the payment sessions.
6212
+ # @return [String]
6213
+ #
6214
+ # @!attribute [rw] agent_name
6215
+ # The agent name associated with this request, used for observability.
6216
+ # @return [String]
6217
+ #
6218
+ # @!attribute [rw] payment_manager_arn
6219
+ # The ARN of the payment manager that owns the sessions.
6220
+ # @return [String]
6221
+ #
6222
+ # @!attribute [rw] next_token
6223
+ # Token for pagination to retrieve the next set of results.
6224
+ # @return [String]
6225
+ #
6226
+ # @!attribute [rw] max_results
6227
+ # Maximum number of results to return in a single response.
6228
+ # @return [Integer]
6229
+ #
6230
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/ListPaymentSessionsRequest AWS API Documentation
6231
+ #
6232
+ class ListPaymentSessionsRequest < Struct.new(
6233
+ :user_id,
6234
+ :agent_name,
6235
+ :payment_manager_arn,
6236
+ :next_token,
6237
+ :max_results)
6238
+ SENSITIVE = []
6239
+ include Aws::Structure
6240
+ end
6241
+
6242
+ # Response structure for listing payment sessions
6243
+ #
6244
+ # @!attribute [rw] payment_sessions
6245
+ # List of payment session summaries matching the request criteria.
6246
+ # @return [Array<Types::PaymentSessionSummary>]
6247
+ #
6248
+ # @!attribute [rw] next_token
6249
+ # Token for pagination to retrieve the next set of results.
6250
+ # @return [String]
6251
+ #
6252
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/ListPaymentSessionsResponse AWS API Documentation
6253
+ #
6254
+ class ListPaymentSessionsResponse < Struct.new(
6255
+ :payment_sessions,
6256
+ :next_token)
6257
+ SENSITIVE = []
6258
+ include Aws::Structure
6259
+ end
6260
+
5431
6261
  # @!attribute [rw] max_results
5432
6262
  # The maximum number of results to return in the response. If the
5433
6263
  # total number of results is greater than this value, use the token
@@ -6157,6 +6987,37 @@ module Aws::BedrockAgentCore
6157
6987
  include Aws::Structure
6158
6988
  end
6159
6989
 
6990
+ # OAuth2 authentication information for third-party providers. Supports
6991
+ # Google, Apple, X, Telegram, and GitHub providers.
6992
+ #
6993
+ # @!attribute [rw] sub
6994
+ # The subject (sub) claim from the OAuth2 provider. Uniquely
6995
+ # identifies the user at the provider.
6996
+ # @return [String]
6997
+ #
6998
+ # @!attribute [rw] email_address
6999
+ # The email address from the OAuth2 provider (optional).
7000
+ # @return [String]
7001
+ #
7002
+ # @!attribute [rw] name
7003
+ # The user's name from the OAuth2 provider (optional).
7004
+ # @return [String]
7005
+ #
7006
+ # @!attribute [rw] username
7007
+ # The username from the OAuth2 provider (optional).
7008
+ # @return [String]
7009
+ #
7010
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/OAuth2Authentication AWS API Documentation
7011
+ #
7012
+ class OAuth2Authentication < Struct.new(
7013
+ :sub,
7014
+ :email_address,
7015
+ :name,
7016
+ :username)
7017
+ SENSITIVE = [:email_address]
7018
+ include Aws::Structure
7019
+ end
7020
+
6160
7021
  # Configuration for an OAuth 2.0 credential provider used to
6161
7022
  # authenticate tool calls.
6162
7023
  #
@@ -6243,23 +7104,442 @@ module Aws::BedrockAgentCore
6243
7104
  class Unknown < PayloadType; end
6244
7105
  end
6245
7106
 
6246
- # An online evaluation configuration associated with a specific A/B test
6247
- # variant.
7107
+ # Payment request details union
6248
7108
  #
6249
- # @!attribute [rw] name
6250
- # The name of the variant this evaluation configuration applies to.
6251
- # @return [String]
7109
+ # @note PaymentInput is a union - when making an API calls you must set exactly one of the members.
6252
7110
  #
6253
- # @!attribute [rw] online_evaluation_config_arn
6254
- # The Amazon Resource Name (ARN) of the online evaluation
6255
- # configuration for this variant.
6256
- # @return [String]
7111
+ # @!attribute [rw] crypto_x402
7112
+ # X402 payment requirement input
7113
+ # @return [Types::CryptoX402PaymentInput]
6257
7114
  #
6258
- # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/PerVariantOnlineEvaluationConfig AWS API Documentation
7115
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/PaymentInput AWS API Documentation
6259
7116
  #
6260
- class PerVariantOnlineEvaluationConfig < Struct.new(
6261
- :name,
6262
- :online_evaluation_config_arn)
7117
+ class PaymentInput < Struct.new(
7118
+ :crypto_x402,
7119
+ :unknown)
7120
+ SENSITIVE = []
7121
+ include Aws::Structure
7122
+ include Aws::Structure::Union
7123
+
7124
+ class CryptoX402 < PaymentInput; end
7125
+ class Unknown < PaymentInput; end
7126
+ end
7127
+
7128
+ # Represents a payment instrument
7129
+ #
7130
+ # @!attribute [rw] payment_instrument_id
7131
+ # The unique identifier for this payment instrument.
7132
+ # @return [String]
7133
+ #
7134
+ # @!attribute [rw] payment_manager_arn
7135
+ # The ARN of the payment manager that owns this payment instrument.
7136
+ # @return [String]
7137
+ #
7138
+ # @!attribute [rw] payment_connector_id
7139
+ # The ID of the payment connector associated with this instrument.
7140
+ # @return [String]
7141
+ #
7142
+ # @!attribute [rw] user_id
7143
+ # The user ID associated with this payment instrument.
7144
+ # @return [String]
7145
+ #
7146
+ # @!attribute [rw] payment_instrument_type
7147
+ # The type of payment instrument (e.g., EMBEDDED\_CRYPTO\_WALLET).
7148
+ # @return [String]
7149
+ #
7150
+ # @!attribute [rw] payment_instrument_details
7151
+ # The details specific to the payment instrument type.
7152
+ # @return [Types::PaymentInstrumentDetails]
7153
+ #
7154
+ # @!attribute [rw] created_at
7155
+ # The timestamp when this payment instrument was created.
7156
+ # @return [Time]
7157
+ #
7158
+ # @!attribute [rw] status
7159
+ # The current status of this payment instrument.
7160
+ # @return [String]
7161
+ #
7162
+ # @!attribute [rw] updated_at
7163
+ # The timestamp when this payment instrument was last updated.
7164
+ # @return [Time]
7165
+ #
7166
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/PaymentInstrument AWS API Documentation
7167
+ #
7168
+ class PaymentInstrument < Struct.new(
7169
+ :payment_instrument_id,
7170
+ :payment_manager_arn,
7171
+ :payment_connector_id,
7172
+ :user_id,
7173
+ :payment_instrument_type,
7174
+ :payment_instrument_details,
7175
+ :created_at,
7176
+ :status,
7177
+ :updated_at)
7178
+ SENSITIVE = []
7179
+ include Aws::Structure
7180
+ end
7181
+
7182
+ # Details specific to the instrument type
7183
+ #
7184
+ # @note PaymentInstrumentDetails is a union - when making an API calls you must set exactly one of the members.
7185
+ #
7186
+ # @note PaymentInstrumentDetails is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of PaymentInstrumentDetails corresponding to the set member.
7187
+ #
7188
+ # @!attribute [rw] embedded_crypto_wallet
7189
+ # Embedded crypto wallet managed directly by end user
7190
+ # @return [Types::EmbeddedCryptoWallet]
7191
+ #
7192
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/PaymentInstrumentDetails AWS API Documentation
7193
+ #
7194
+ class PaymentInstrumentDetails < Struct.new(
7195
+ :embedded_crypto_wallet,
7196
+ :unknown)
7197
+ SENSITIVE = []
7198
+ include Aws::Structure
7199
+ include Aws::Structure::Union
7200
+
7201
+ class EmbeddedCryptoWallet < PaymentInstrumentDetails; end
7202
+ class Unknown < PaymentInstrumentDetails; end
7203
+ end
7204
+
7205
+ # Summary of a payment instrument for list operations
7206
+ #
7207
+ # @!attribute [rw] payment_instrument_id
7208
+ # The unique identifier for this payment instrument.
7209
+ # @return [String]
7210
+ #
7211
+ # @!attribute [rw] payment_manager_arn
7212
+ # The ARN of the payment manager that owns this payment instrument.
7213
+ # @return [String]
7214
+ #
7215
+ # @!attribute [rw] payment_connector_id
7216
+ # The ID of the payment connector associated with this instrument.
7217
+ # @return [String]
7218
+ #
7219
+ # @!attribute [rw] user_id
7220
+ # The user ID associated with this payment instrument.
7221
+ # @return [String]
7222
+ #
7223
+ # @!attribute [rw] payment_instrument_type
7224
+ # The type of payment instrument (e.g., EMBEDDED\_CRYPTO\_WALLET).
7225
+ # @return [String]
7226
+ #
7227
+ # @!attribute [rw] status
7228
+ # The current status of this payment instrument.
7229
+ # @return [String]
7230
+ #
7231
+ # @!attribute [rw] created_at
7232
+ # The timestamp when this payment instrument was created.
7233
+ # @return [Time]
7234
+ #
7235
+ # @!attribute [rw] updated_at
7236
+ # The timestamp when this payment instrument was last updated.
7237
+ # @return [Time]
7238
+ #
7239
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/PaymentInstrumentSummary AWS API Documentation
7240
+ #
7241
+ class PaymentInstrumentSummary < Struct.new(
7242
+ :payment_instrument_id,
7243
+ :payment_manager_arn,
7244
+ :payment_connector_id,
7245
+ :user_id,
7246
+ :payment_instrument_type,
7247
+ :status,
7248
+ :created_at,
7249
+ :updated_at)
7250
+ SENSITIVE = []
7251
+ include Aws::Structure
7252
+ end
7253
+
7254
+ # Payment response payload union. We will support versioning by
7255
+ # introducing other model in this union
7256
+ #
7257
+ # @note PaymentOutput is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of PaymentOutput corresponding to the set member.
7258
+ #
7259
+ # @!attribute [rw] crypto_x402
7260
+ # X402 payment requirement output
7261
+ # @return [Types::CryptoX402PaymentOutput]
7262
+ #
7263
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/PaymentOutput AWS API Documentation
7264
+ #
7265
+ class PaymentOutput < Struct.new(
7266
+ :crypto_x402,
7267
+ :unknown)
7268
+ SENSITIVE = []
7269
+ include Aws::Structure
7270
+ include Aws::Structure::Union
7271
+
7272
+ class CryptoX402 < PaymentOutput; end
7273
+ class Unknown < PaymentOutput; end
7274
+ end
7275
+
7276
+ # Payment manager session
7277
+ #
7278
+ # @!attribute [rw] payment_session_id
7279
+ # The unique identifier for this payment session.
7280
+ # @return [String]
7281
+ #
7282
+ # @!attribute [rw] payment_manager_arn
7283
+ # The ARN of the payment manager that owns this session.
7284
+ # @return [String]
7285
+ #
7286
+ # @!attribute [rw] limits
7287
+ # The spending limits for this session.
7288
+ # @return [Types::SessionLimits]
7289
+ #
7290
+ # @!attribute [rw] user_id
7291
+ # The user ID associated with this payment session.
7292
+ # @return [String]
7293
+ #
7294
+ # @!attribute [rw] expiry_time_in_minutes
7295
+ # The session expiry time in minutes.
7296
+ # @return [Integer]
7297
+ #
7298
+ # @!attribute [rw] created_at
7299
+ # The timestamp when this payment session was created.
7300
+ # @return [Time]
7301
+ #
7302
+ # @!attribute [rw] available_limits
7303
+ # The available limits for this session after accounting for processed
7304
+ # payments.
7305
+ # @return [Types::AvailableLimits]
7306
+ #
7307
+ # @!attribute [rw] updated_at
7308
+ # The timestamp when this payment session was last updated.
7309
+ # @return [Time]
7310
+ #
7311
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/PaymentSession AWS API Documentation
7312
+ #
7313
+ class PaymentSession < Struct.new(
7314
+ :payment_session_id,
7315
+ :payment_manager_arn,
7316
+ :limits,
7317
+ :user_id,
7318
+ :expiry_time_in_minutes,
7319
+ :created_at,
7320
+ :available_limits,
7321
+ :updated_at)
7322
+ SENSITIVE = []
7323
+ include Aws::Structure
7324
+ end
7325
+
7326
+ # Summary of a payment session for list operations
7327
+ #
7328
+ # @!attribute [rw] payment_session_id
7329
+ # The unique identifier for this payment session.
7330
+ # @return [String]
7331
+ #
7332
+ # @!attribute [rw] payment_manager_arn
7333
+ # The ARN of the payment manager that owns this session.
7334
+ # @return [String]
7335
+ #
7336
+ # @!attribute [rw] user_id
7337
+ # The user ID associated with this payment session.
7338
+ # @return [String]
7339
+ #
7340
+ # @!attribute [rw] expiry_time_in_minutes
7341
+ # The session expiry time in minutes.
7342
+ # @return [Integer]
7343
+ #
7344
+ # @!attribute [rw] created_at
7345
+ # The timestamp when this payment session was created.
7346
+ # @return [Time]
7347
+ #
7348
+ # @!attribute [rw] updated_at
7349
+ # The timestamp when this payment session was last updated.
7350
+ # @return [Time]
7351
+ #
7352
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/PaymentSessionSummary AWS API Documentation
7353
+ #
7354
+ class PaymentSessionSummary < Struct.new(
7355
+ :payment_session_id,
7356
+ :payment_manager_arn,
7357
+ :user_id,
7358
+ :expiry_time_in_minutes,
7359
+ :created_at,
7360
+ :updated_at)
7361
+ SENSITIVE = []
7362
+ include Aws::Structure
7363
+ end
7364
+
7365
+ # VENDOR-SPECIFIC TOKEN REQUEST CONFIGURATION - Input
7366
+ #
7367
+ # @note PaymentTokenRequestInput is a union - when making an API calls you must set exactly one of the members.
7368
+ #
7369
+ # @!attribute [rw] coinbase_cdp_token_request
7370
+ # Coinbase CDP token request parameters
7371
+ # @return [Types::CoinbaseCdpTokenRequestInput]
7372
+ #
7373
+ # @!attribute [rw] stripe_privy_token_request
7374
+ # StripePrivy token request parameters
7375
+ # @return [Types::StripePrivyTokenRequestInput]
7376
+ #
7377
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/PaymentTokenRequestInput AWS API Documentation
7378
+ #
7379
+ class PaymentTokenRequestInput < Struct.new(
7380
+ :coinbase_cdp_token_request,
7381
+ :stripe_privy_token_request,
7382
+ :unknown)
7383
+ SENSITIVE = []
7384
+ include Aws::Structure
7385
+ include Aws::Structure::Union
7386
+
7387
+ class CoinbaseCdpTokenRequest < PaymentTokenRequestInput; end
7388
+ class StripePrivyTokenRequest < PaymentTokenRequestInput; end
7389
+ class Unknown < PaymentTokenRequestInput; end
7390
+ end
7391
+
7392
+ # VENDOR-SPECIFIC TOKEN RESPONSE CONFIGURATION - Output
7393
+ #
7394
+ # @note PaymentTokenResponseOutput is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of PaymentTokenResponseOutput corresponding to the set member.
7395
+ #
7396
+ # @!attribute [rw] coinbase_cdp_token_response
7397
+ # Coinbase CDP token response
7398
+ # @return [Types::CoinbaseCdpTokenResponseOutput]
7399
+ #
7400
+ # @!attribute [rw] stripe_privy_token_response
7401
+ # StripePrivy token response containing appId, basicAuthToken, and
7402
+ # optionally authorizationSignature
7403
+ # @return [Types::StripePrivyTokenResponseOutput]
7404
+ #
7405
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/PaymentTokenResponseOutput AWS API Documentation
7406
+ #
7407
+ class PaymentTokenResponseOutput < Struct.new(
7408
+ :coinbase_cdp_token_response,
7409
+ :stripe_privy_token_response,
7410
+ :unknown)
7411
+ SENSITIVE = []
7412
+ include Aws::Structure
7413
+ include Aws::Structure::Union
7414
+
7415
+ class CoinbaseCdpTokenResponse < PaymentTokenResponseOutput; end
7416
+ class StripePrivyTokenResponse < PaymentTokenResponseOutput; end
7417
+ class Unknown < PaymentTokenResponseOutput; end
7418
+ end
7419
+
7420
+ # An online evaluation configuration associated with a specific A/B test
7421
+ # variant.
7422
+ #
7423
+ # @!attribute [rw] name
7424
+ # The name of the variant this evaluation configuration applies to.
7425
+ # @return [String]
7426
+ #
7427
+ # @!attribute [rw] online_evaluation_config_arn
7428
+ # The Amazon Resource Name (ARN) of the online evaluation
7429
+ # configuration for this variant.
7430
+ # @return [String]
7431
+ #
7432
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/PerVariantOnlineEvaluationConfig AWS API Documentation
7433
+ #
7434
+ class PerVariantOnlineEvaluationConfig < Struct.new(
7435
+ :name,
7436
+ :online_evaluation_config_arn)
7437
+ SENSITIVE = []
7438
+ include Aws::Structure
7439
+ end
7440
+
7441
+ # Request structure for processing a payment
7442
+ #
7443
+ # @!attribute [rw] user_id
7444
+ # The user ID associated with this payment.
7445
+ # @return [String]
7446
+ #
7447
+ # @!attribute [rw] agent_name
7448
+ # The agent name associated with this request, used for observability.
7449
+ # @return [String]
7450
+ #
7451
+ # @!attribute [rw] payment_manager_arn
7452
+ # The ARN of the payment manager handling this payment.
7453
+ # @return [String]
7454
+ #
7455
+ # @!attribute [rw] payment_session_id
7456
+ # The ID of the payment session for this transaction.
7457
+ # @return [String]
7458
+ #
7459
+ # @!attribute [rw] payment_instrument_id
7460
+ # The ID of the payment instrument to use for this transaction.
7461
+ # @return [String]
7462
+ #
7463
+ # @!attribute [rw] payment_type
7464
+ # The type of payment being processed.
7465
+ # @return [String]
7466
+ #
7467
+ # @!attribute [rw] payment_input
7468
+ # The payment input details specific to the payment type.
7469
+ # @return [Types::PaymentInput]
7470
+ #
7471
+ # @!attribute [rw] client_token
7472
+ # Idempotency token to ensure request uniqueness.
7473
+ #
7474
+ # **A suitable default value is auto-generated.** You should normally
7475
+ # not need to pass this option.
7476
+ # @return [String]
7477
+ #
7478
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/ProcessPaymentRequest AWS API Documentation
7479
+ #
7480
+ class ProcessPaymentRequest < Struct.new(
7481
+ :user_id,
7482
+ :agent_name,
7483
+ :payment_manager_arn,
7484
+ :payment_session_id,
7485
+ :payment_instrument_id,
7486
+ :payment_type,
7487
+ :payment_input,
7488
+ :client_token)
7489
+ SENSITIVE = []
7490
+ include Aws::Structure
7491
+ end
7492
+
7493
+ # Response structure for processing a payment
7494
+ #
7495
+ # @!attribute [rw] process_payment_id
7496
+ # The unique ID of the processed payment transaction.
7497
+ # @return [String]
7498
+ #
7499
+ # @!attribute [rw] payment_manager_arn
7500
+ # The ARN of the payment manager that processed this payment.
7501
+ # @return [String]
7502
+ #
7503
+ # @!attribute [rw] payment_session_id
7504
+ # The ID of the payment session for this transaction.
7505
+ # @return [String]
7506
+ #
7507
+ # @!attribute [rw] payment_instrument_id
7508
+ # The ID of the payment instrument used for this transaction.
7509
+ # @return [String]
7510
+ #
7511
+ # @!attribute [rw] payment_type
7512
+ # The type of payment that was processed.
7513
+ # @return [String]
7514
+ #
7515
+ # @!attribute [rw] status
7516
+ # The status of the payment transaction.
7517
+ # @return [String]
7518
+ #
7519
+ # @!attribute [rw] payment_output
7520
+ # The payment output details specific to the payment type.
7521
+ # @return [Types::PaymentOutput]
7522
+ #
7523
+ # @!attribute [rw] created_at
7524
+ # The timestamp when the payment was created.
7525
+ # @return [Time]
7526
+ #
7527
+ # @!attribute [rw] updated_at
7528
+ # The timestamp when the payment was last updated.
7529
+ # @return [Time]
7530
+ #
7531
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/ProcessPaymentResponse AWS API Documentation
7532
+ #
7533
+ class ProcessPaymentResponse < Struct.new(
7534
+ :process_payment_id,
7535
+ :payment_manager_arn,
7536
+ :payment_session_id,
7537
+ :payment_instrument_id,
7538
+ :payment_type,
7539
+ :status,
7540
+ :payment_output,
7541
+ :created_at,
7542
+ :updated_at)
6263
7543
  SENSITIVE = []
6264
7544
  include Aws::Structure
6265
7545
  end
@@ -7128,6 +8408,20 @@ module Aws::BedrockAgentCore
7128
8408
  include Aws::Structure
7129
8409
  end
7130
8410
 
8411
+ # Session spending limits
8412
+ #
8413
+ # @!attribute [rw] max_spend_amount
8414
+ # The maximum amount that can be spent in this session.
8415
+ # @return [Types::Amount]
8416
+ #
8417
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/SessionLimits AWS API Documentation
8418
+ #
8419
+ class SessionLimits < Struct.new(
8420
+ :max_spend_amount)
8421
+ SENSITIVE = []
8422
+ include Aws::Structure
8423
+ end
8424
+
7131
8425
  # Metadata for a specific session in a batch evaluation, including
7132
8426
  # ground truth data and test scenario identifiers.
7133
8427
  #
@@ -7912,6 +9206,68 @@ module Aws::BedrockAgentCore
7912
9206
  class Unknown < StreamUpdate; end
7913
9207
  end
7914
9208
 
9209
+ # StripePrivy token request parameters
9210
+ #
9211
+ # @!attribute [rw] request_host
9212
+ # Optional - defaults to "api.privy.io"
9213
+ # @return [String]
9214
+ #
9215
+ # @!attribute [rw] request_path
9216
+ # The path of the Stripe Privy API request.
9217
+ # @return [String]
9218
+ #
9219
+ # @!attribute [rw] request_body
9220
+ # Request body JSON for the Privy API call
9221
+ # @return [String]
9222
+ #
9223
+ # @!attribute [rw] include_authorization_signature
9224
+ # Set to true to generate privy-authorization-signature
9225
+ # @return [Boolean]
9226
+ #
9227
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/StripePrivyTokenRequestInput AWS API Documentation
9228
+ #
9229
+ class StripePrivyTokenRequestInput < Struct.new(
9230
+ :request_host,
9231
+ :request_path,
9232
+ :request_body,
9233
+ :include_authorization_signature)
9234
+ SENSITIVE = [:request_body]
9235
+ include Aws::Structure
9236
+ end
9237
+
9238
+ # StripePrivy token response containing appId, basicAuthToken, and
9239
+ # optionally authorizationSignature
9240
+ #
9241
+ # @!attribute [rw] authorization_signature
9242
+ # Base64-encoded ECDSA P-256 authorization signature (only present
9243
+ # when includeAuthorizationSignature is true)
9244
+ # @return [String]
9245
+ #
9246
+ # @!attribute [rw] request_expiry
9247
+ # Unix timestamp in milliseconds when the authorization signature
9248
+ # expires. Set as privy-request-expiry header.
9249
+ # @return [Integer]
9250
+ #
9251
+ # @!attribute [rw] app_id
9252
+ # The Privy app ID for the privy-app-id header
9253
+ # @return [String]
9254
+ #
9255
+ # @!attribute [rw] basic_auth_token
9256
+ # Base64-encoded Basic Auth token (appId:appSecret) for the
9257
+ # Authorization header
9258
+ # @return [String]
9259
+ #
9260
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/StripePrivyTokenResponseOutput AWS API Documentation
9261
+ #
9262
+ class StripePrivyTokenResponseOutput < Struct.new(
9263
+ :authorization_signature,
9264
+ :request_expiry,
9265
+ :app_id,
9266
+ :basic_auth_token)
9267
+ SENSITIVE = [:authorization_signature, :basic_auth_token]
9268
+ include Aws::Structure
9269
+ end
9270
+
7915
9271
  # The system prompt input, either as inline text or from a configuration
7916
9272
  # bundle.
7917
9273
  #
@@ -8069,6 +9425,41 @@ module Aws::BedrockAgentCore
8069
9425
  include Aws::Structure
8070
9426
  end
8071
9427
 
9428
+ # A single token balance entry
9429
+ #
9430
+ # @!attribute [rw] amount
9431
+ # Raw balance in the smallest denomination (e.g., USDC base units
9432
+ # where 1 USDC = 1000000).
9433
+ # @return [String]
9434
+ #
9435
+ # @!attribute [rw] decimals
9436
+ # Number of decimal places for the token (e.g., 6 for USDC).
9437
+ # @return [Integer]
9438
+ #
9439
+ # @!attribute [rw] token
9440
+ # The supported token for this balance.
9441
+ # @return [String]
9442
+ #
9443
+ # @!attribute [rw] network
9444
+ # The blockchain network family (ETHEREUM or SOLANA).
9445
+ # @return [String]
9446
+ #
9447
+ # @!attribute [rw] chain
9448
+ # The specific blockchain chain.
9449
+ # @return [String]
9450
+ #
9451
+ # @see http://docs.aws.amazon.com/goto/WebAPI/bedrock-agentcore-2024-02-28/TokenBalance AWS API Documentation
9452
+ #
9453
+ class TokenBalance < Struct.new(
9454
+ :amount,
9455
+ :decimals,
9456
+ :token,
9457
+ :network,
9458
+ :chain)
9459
+ SENSITIVE = []
9460
+ include Aws::Structure
9461
+ end
9462
+
8072
9463
  # The token consumption statistics for language model operations during
8073
9464
  # evaluation. Provides detailed breakdown of input, output, and total
8074
9465
  # tokens used for cost tracking and performance monitoring.