Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Créer une session de paiement
Une session de paiement est un contexte de paiement limité dans le temps qui impose éventuellement un budget de dépenses. Lorsque la session expire ou que le budget est atteint, les autres demandes de paiement au cours de cette session sont refusées. Pour le schéma complet de la demande et de la réponse, consultez CreatePaymentSession la référence de l'API.
Vous pouvez automatiser les étapes de cette page à l'aide de la compétence AgentCore Paiements de la boîte à outils de l' AWS agent. La compétence fait partie du plugin aws-agents et permet à un agent de codage IA de créer votre gestionnaire de paiement, votre connecteur, votre fournisseur d'informations d'identification, votre instrument de paiement et votre session à l'aide de la agentcore CLI, et d'ajouter un outil de traitement des paiements à votre agent. Pour plus de détails, consultez le guide de démarrage rapide et la boîte à outils de l'AWS agent sur GitHub.
Exemple
- AgentCore SDK
-
from bedrock_agentcore.payments import PaymentManager
manager = PaymentManager(
payment_manager_arn=mgr["paymentManagerArn"],
region_name="us-west-2"
)
# Create payment session with payment limits
session = manager.create_payment_session(
user_id="test-user-123",
limits={"maxSpendAmount": {"value": "100.00", "currency": "USD"}},
expiry_time_in_minutes=60
)
- AWS CLI
-
aws bedrock-agentcore create-payment-session \
--payment-manager-arn "arn:aws:bedrock-agentcore:us-west-2:123456789012:payment-manager/my-manager" \
--user-id "test-user-123" \
--expiry-time-in-minutes 60 \
--limits '{"maxSpendAmount": {"value": "100.00", "currency": "USD"}}' \
--client-token "$(uuidgen)" \
--region us-west-2
- AWS SDK
-
import boto3
import uuid
dp_client = boto3.client("bedrock-agentcore", region_name="us-west-2",
endpoint_url="https://bedrock-agentcore.us-west-2.amazonaws.com")
# Create payment session with payment limits
session = dp_client.create_payment_session(
userId="test-user-123",
paymentManagerArn=PAYMENT_MANAGER_ARN,
expiryTimeInMinutes=120,
limits={"maxSpendAmount": {"value": "100.00", "currency": "USD"}},
clientToken=str(uuid.uuid4()),
)
Si vous utilisez la AgentCore CLI (v0.19.0+), passez --auto-session à pour agentcore invoke créer ou réutiliser une session avec la limite de dépenses par défaut configurée sur votre gestionnaire de paiement. Il n'est donc plus nécessaire de créer des sessions manuellement pour la plupart des flux de travail.
Obtenez une session de paiement
Exemple
- AgentCore SDK
-
session = manager.get_payment_session(
user_id="test-user-123",
payment_session_id="payment-session-abc123"
)
print(f"Status: {session['status']}, Remaining: {session['remainingAmount']}")
- AWS CLI
-
aws bedrock-agentcore get-payment-session \
--payment-manager-arn "arn:aws:bedrock-agentcore:us-west-2:123456789012:payment-manager/my-manager" \
--payment-session-id "payment-session-abc123" \
--region us-west-2
- AWS SDK
-
response = dp_client.get_payment_session(
paymentManagerArn=PAYMENT_MANAGER_ARN,
paymentSessionId="payment-session-abc123"
)
print(f"Status: {response['status']}")
print(f"Spent: {response['spentAmount']} / {response['limits']['maxSpendAmount']['value']}")