Agent API de paiement

Introduction

L'API de paiement pour agents permet à un agent IA de gérer et d'acheter des crédits API de manière autonome pour le compte d'un utilisateur. Ceci permet des flux de travail automatisés où l'agent peut consulter son solde de crédits, vérifier les limites de dépenses et recharger ses crédits via le moyen de paiement Stripe enregistré par l'utilisateur, le tout sans intervention humaine.

Les trois points de terminaison sont hébergés sur payments.builtwith.com et authentifiez-vous avec votre clé API BuiltWith.

Avant qu'un agent puisse utiliser ces points de terminaison, l'utilisateur doit activer la facturation de l'API Agent et configurer les limites de dépenses sur https://payments.builtwith.com/agent-payment-api-config.
Authentification

Transmettez la clé API de l'agent en utilisant l'une des méthodes ci-dessous. Si les deux paramètres sont fournis, le paramètre de requête KEY est prioritaire.

En-tête d'autorisation (recommandé)

Authorization: Bearer 00000000-0000-0000-0000-000000000000

Paramètre de requête (solution de repli)

?KEY=00000000-0000-0000-0000-000000000000

Les requêtes comportant une clé manquante, invalide ou désactivée renvoient une erreur HTTP 401. Les comptes dont la facturation est suspendue renvoient une erreur HTTP 403.

🤖 Invite de l'agent IA
Reference https://api.builtwith.com/llms.txt and
https://raw.githubusercontent.com/builtwith/builtwith-ai-sdk/refs/heads/main/README.md
Add BuiltWith Agent Payment API support to my app. Check the current API credit balance,
and if below 1000 credits, purchase 2000 more using the Agent Payment API.
GET /v1/billing/api-discovery — Solde créditeur

Renvoie le solde créditeur API actuel du compte.

Demande

GET https://payments.builtwith.com/v1/billing/api-discovery?KEY=00000000-0000-0000-0000-000000000000

Champs de réponse
ChampTaperDescription
credits_totalnumberTotal des crédits jamais alloués au compte.
credits_usednumberCrédits consommés par les appels API à ce jour.
credits_availablenumberCrédits disponibles restants (total moins utilisé). C'est ce que l'agent doit vérifier avant d'effectuer des appels API.
Exemple de réponse
{
  "credits_total": 10000,
  "credits_used": 1234,
  "credits_available": 8766
}
GET /v1/billing/api-configuration — Limites de dépenses

Renvoie les limites de dépenses configurées et le montant de l'allocation mensuelle déjà utilisé. L'agent doit vérifier ces informations avant de tenter un achat afin d'éviter les demandes rejetées.

Demande

GET https://payments.builtwith.com/v1/billing/api-configuration?KEY=00000000-0000-0000-0000-000000000000

Champs de réponse
ChampTaperDescription
max_per_purchasenumberNombre maximal de crédits que l'agent peut acheter en une seule transaction.
max_monthlynumberNombre maximal de crédits que l'agent peut acheter au cours du mois civil en cours.
monthly_purchasednumberCrédits déjà achetés par l'agent ce mois-ci.
monthly_remainingnumberCombien de crédits supplémentaires puis-je acheter ce mois-ci avant d'atteindre la limite mensuelle ?
cost_per_2000_credits_usdnumberCoût en dollars américains pour un achat minimum de 2 000 crédits. Utilisez ce montant pour estimer le coût d'un achat prévu.
Exemple de réponse
{
  "max_per_purchase": 5000,
  "max_monthly": 20000,
  "monthly_purchased": 5000,
  "monthly_remaining": 15000,
  "cost_per_2000_credits_usd": 99.00
}
POST /v1/billing/api-purchase — Acheter des crédits

Le paiement est débité du mode de paiement Stripe enregistré de l'utilisateur et son compte est immédiatement crédité. Cet achat est soumis aux limites par achat et mensuelles définies dans la configuration de facturation de l'API Agent.

Demande

POST https://payments.builtwith.com/v1/billing/api-purchase

Envoyez la clé API de l'agent comme Authorization: Bearer en-tête ou comme un ?KEY= Paramètre de requête. Le corps de la requête doit être au format JSON.

Corps de la requête
ChampTaperRequisDescription
creditsnumberOuiNombre de crédits à acheter. Minimum 2 000. Ne doit pas dépasser max_per_purchase ou le reste de l'allocation mensuelle.
Réponse de succès (HTTP 200)
ChampTaperDescription
successbooleantrue
credits_purchasednumberCrédits ajoutés au compte.
cost_usdnumberMontant facturé en USD.
payment_idstringIdentifiant Stripe PaymentIntent pour le rapprochement.
credits_availablenumberSolde de crédit disponible mis à jour après l'achat.
Exemple de corps de requête
{ "credits": 2000 }
Exemple de réponse positive
{
  "success": true,
  "credits_purchased": 2000,
  "cost_usd": 99.00,
  "payment_id": "pi_3abc123xyz",
  "credits_available": 10766
}
Réponses d'erreur
HTTPSignification
400Échec de la validation : crédits inférieurs à 2 000, dépassement de la limite par achat ou dépassement de la limite mensuelle.
401Clé API de l'agent manquante ou invalide.
402Le paiement Stripe a échoué ou aucun mode de paiement n'est enregistré.
403Facturation du compte suspendue.
405Méthode non autorisée - le point de terminaison requiert une méthode POST.
Domaines spéciaux

Nous tenons à votre disposition deux listes utiles pour la recherche de domaines : les listes « Ignorer » et les listes « Construire avec un suffixe ».

Liste d'ignorés
TVoici notre liste interne de domaines que nous n'indexons pas. Ils sont soit bloqués, soit contiennent trop de technologies trompeuses, soit trop de sous-domaines avec du contenu généré par les utilisateurs.

BuiltWith Liste des suffixes
Ceci est basé sur le Liste publique des suffixes mais comprend de nombreuses entrées supplémentaires pour les entreprises avec des sous-domaines qui doivent être considérés comme des domaines de premier niveau. Cette liste nous offre une meilleure visibilité pour les sites Web internes, par exemple, elle amène northernbeaches.nsw.gov.au au niveau supérieur par rapport à nsw.gov.au.

Ignorer les domaines (XML, JSON or TXT)
https://api.builtwith.com/ignoresv1/api.json
Domaines de suffixe (XML, JSON or TXT)
https://api.builtwith.com/suffixv1/api.json
Codes d'erreur

Notez que les messages d'erreur dans ce format ne peuvent pas être garantis, votre implémentation doit également considérer les codes de réponse non 200 comme des erreurs. La propriété Lookup sera nulle (json) ou non fournie (xml) si l'erreur est liée au serveur. Afficher tous les codes d'erreur potentiels bien formés.

Conditions d'utilisation

Notre conditions générales couvrir l'utilisation de toutes nos API.

En général, vous pouvez utiliser l'API pour améliorer votre produit de nombreuses façons. La seule limitation est que vous ne pouvez pas revendre les données en l'état ni fournir des fonctionnalités dupliquées à builtwith.com et ses services associés.