Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Crea una sessione di pagamento
Una sessione di pagamento è un contesto di pagamento limitato nel tempo che, facoltativamente, impone un budget di spesa. Quando la sessione scade o viene raggiunto il budget, le ulteriori richieste di pagamento all'interno di tale sessione vengono rifiutate. Per lo schema completo di richieste e risposte, consulta CreatePaymentSession l'API Reference.
Puoi automatizzare i passaggi in questa pagina con l'abilità AgentCore Payments nel toolkit per AWS agenti. L'abilità fa parte del plug-in aws-agents e consente a un agente di codifica AI di creare il Payment Manager, il connettore, il fornitore di credenziali, lo strumento di pagamento e la sessione utilizzando la agentcore CLI e aggiungere uno strumento di elaborazione dei pagamenti all'agente. Per i dettagli, consulta il quickstart e il toolkit per gli agenti attivi. AWS GitHub
Esempio
- 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()),
)
Se utilizzi la AgentCore CLI (v0.19.0+), passa --auto-session a per agentcore invoke creare o riutilizzare una sessione con il limite di spesa predefinito configurato nel tuo gestore dei pagamenti. Ciò elimina la necessità di creare sessioni manualmente per la maggior parte dei flussi di lavoro.
Richiedi una sessione di pagamento
Esempio
- 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']}")