REST API · Testnet
De l'intention à la preuve.
Connectez-vous à l’API Testnet gratuite. Conservez votre intégration de paiement ; aucun SDK n’est requis.
Obtenez une clé API
curl -X POST https://agenttrail.online/api/v1/accounts \
-H 'Content-Type: application/json' -d '{}'La réponse contient account_id, key_id et un api_key unique. Enregistrez-le en toute sécurité. La création de compte et l'émission de nouvelles clés créent de nouvelles informations d'identification à chaque appel réussi ; ce ne sont pas des points de terminaison de relecture. Les clés perdues ne peuvent pas être récupérées par ce service de développement. Émettez des clés d’agent limitées à partir de la console.
1. Enregistrez le paiement attendu
export AUDIT_KEY='<save the one-time API key securely>'
curl -X POST https://agenttrail.online/api/v1/audit/intents \
-H "Authorization: Bearer $AUDIT_KEY" \
-H 'Content-Type: application/json' \
-H 'Idempotency-Key: your-stable-intent-reference' \
-d '{"agent_id":"research-01","network":"xrpl-testnet", "asset":{"type":"native","currency":"XRP"},"expected_amount":"1","recipient":"<recipient classic address>","purpose":"purchase_market_data"}'Les montants sont des chaînes décimales. Testnet et Mainnet ne peuvent pas être mélangés. Le but et l’identité de l’agent sont des déclarations et non une preuve d’autorisation. Le payer_address en option permet la correspondance des expéditeurs ; sans cela, l'appariement du payeur n'est pas vérifié. Utilisez context_hash pour le contexte de tâche sensible.
2. Payez en externe, puis soumettez le hachage
Votre propre code de paiement Testnet envoie le paiement. N’envoyez jamais au service une graine de portefeuille ou une clé privée.
curl -X POST https://agenttrail.online/api/v1/audit/transactions \
-H "Authorization: Bearer $AUDIT_KEY" \
-H 'Content-Type: application/json' \
-H 'Idempotency-Key: your-stable-payment-reference' \
-d '{"audit_id":"<audit_id>","network":"xrpl-testnet","tx_hash":"<64-character hash>"}'Une réponse 202 signifie que la vérification est en attente. Réessayez l'audit d'écriture avec le même Idempotency-Key et le même corps de requête après des erreurs de transport. La réutilisation d'une clé avec un corps différent renvoie 409.
3. Vérifiez le statut, téléchargez et vérifiez
curl -H "Authorization: Bearer $AUDIT_KEY" \ https://agenttrail.online/api/v1/audit/records/<audit_id> curl -H "Authorization: Bearer $AUDIT_KEY" \ https://agenttrail.online/api/v1/audit/records/<audit_id>/report -o audit.json
Le statut de paiement et le statut d’ancrage sont distincts. Seul anchor_validated établit un ancrage complet. Les rapports téléchargés peuvent être en attente ; une vérification indépendante doit alors clairement échouer. Utilisez la page Vérifier localement ou exécutez scripts/verify_report.py à partir du référentiel.
Erreurs et limites de support
400 : entrée invalide, mauvais réseau ou émetteur désactivé. 401 : clé invalide/révoquée. 403 : portée insuffisante. 404 : enregistrement absent ou inaccessible. 409 : idempotence/conflit de transaction ou rapport non prêt. 413 : corps trop gros. 429 : quota dépassé, réessayez plus tard. 503 : stockage/fournisseur indisponible ; réessayez en toute sécurité.
Interprétation des paiements prise en charge : actifs XRP directs et actifs RLUSD activés. Les paiements partiels réussis utilisent les métadonnées fournies, jamais le montant demandé. Les chemins complexes, les conversions et les transactions sans paiement ne sont pas pris en charge. Les délais d'attente des nœuds restent en attente et peuvent nécessiter une récupération de l'opérateur à partir de la file d'attente de lettres mortes.
Limites de preuve et de confidentialité
Les rapports et déclarations sont privés sur votre compte. Les preuves publiques exposent des hachages et des informations minimales sur les lots/réseaux. Une ancre prouve l'intégrité d'un dossier fourni, et non ses réclamations, sa livraison ou la couverture de chaque paiement. L'ancrage de la plate-forme utilise un signataire Testnet restreint dédié, des budgets explicites et une étape d'activation de l'opérateur.