Ana içeriğe atla
HARCAMA KONTROLLERİ

Ajanınız, belirlediğiniz miktarı aşamaz.

Gösterge panelinde her ajana dönem başına bir izin ve işlem başına bir sınır belirleyin. Arka uç bunu her çıkış ödemesinde uygular - ajanın kodu bunu atlayamaz.

Kontrol paneli görünümü: her ajan için harcama izinleri - harcama limiti, işlem başına sınır, dönem

Otonom ajanlar hata yapar. Yeniden denerler. Döngüye girerler. Prompt enjeksiyonuna maruz kalırlar. Zaman zaman, yetkilendirmediğiniz parayı harcamaya çalışırlar.

Bir Blockchain0x harcama izni, kontrol panelinde sahip tarafından ayarlanır ve arka uç tarafından uygulanır, ajan kodu tarafından değil. Her dışa çıkan ödeme, API'nin kabul etmeden önce aktif izne karşı kontrol edilir, bu nedenle ajan mantığı denese bile sınırı aşamaz. Kodunuz, izni görüntülemek veya etrafında plan yapmak için API üzerinden okuyabilir, ancak artıramaz.

BİR HARCAMA İZNİNDE NE VAR

Dört boyut. Bir kez ayarlanır. Her yerde uygulanır.

Dönemsel harç

allowance_wei, agent'ın bir period_seconds penceresi boyunca gönderebileceği toplam USDC (base unit'ler) miktarıdır. Dönem bir gün (86400), bir hafta (604800) veya 30 gün (2592000) olabilir.

İşlem başına üst sınır

per_tx_wei, izin verilen en büyük tek yönlü ödemedir. Bu, bir yanlış çağrının, dönem iznine bağlı olmaksızın, kastettiğinizden daha fazlasını göndermesini engeller.

Geçerlilik penceresi

start_at ve end_at, izin aktif olduğunda sınırlıdır. Pencerenin dışındayken harcamayı yetkilendirmez, bu nedenle bir bütçeyi önceden ayarlayabilir veya birinin kendi kendine süresinin dolmasına izin verebilirsiniz.

İptal

revoked_at, bir izin kontrol panelinden kapatıldığında kaydedilir. İzni iptal etmek, sonrasında değerlendirilen herhangi bir ödeme için izni hemen sıfıra indirir.

KONTROL PANELİ YÖNETİMİNDE, API ÜZERİNDEN OKUNAMAZ

Ajanın anahtarı kendi sınırını yükseltemez.

Spend permission'ları dashboard'da oluşturur, değiştirir ve iptal edersiniz. API bunları read-only olarak sunar - bir izni değiştiren hiçbir endpoint ve hiçbir SDK method'u yoktur. Tüm mesele budur: agent prompt-injected olursa veya bir döngüye takılırsa, kendi allowance'ını genişletemez; çünkü elindeki credential'a böyle bir yetki hiç verilmemiştir.

Bir ödeme aktif izni aşacaksa, backend zincire hiçbir şey yazılmadan önce bunu reddeder. Fon hareket etmez. Agent'ınız bu reddi diğer başarısız çağrılar gibi ele alır ve girişimi dashboard'da görürsünüz; böylece meşruysa izni genişletebilirsiniz.

API ÜZERİNDEN OKUYUN

Görüntülemek veya buna göre planlamak için mevcut izni alın.

GET /v1/agents/{id}/spend-permissions canlı değerleri döndürür. Bunu, UI'nizde bir bütçe göstermek için kullanın veya ajanın bir ödeme denemeden önce ne kadar alan kaldığını kontrol etmesine izin verin.

OKUYUN (CURL)
curl https://api.blockchain0x.com/v1/agents/agt_123/spend-permissions \
  -H "Authorization: Bearer $BLOCKCHAIN0X_API_KEY"
YANIT
{
  "allowance_wei": "5000000",
  "per_tx_wei": "1000000",
  "period_seconds": 86400,
  "start_at": "2026-05-15T00:00:00Z",
  "end_at": null,
  "revoked_at": null
}
allowance_wei

Total spend allowed per period, in USDC base units (6 decimals). "5000000" is 5 USDC.

per_tx_wei

Largest single payment allowed, in base units. "1000000" is 1 USDC. A payment over this is rejected even if the period allowance has room.

period_seconds

İzinlerin geçerli olduğu pencere: 86400 (gün), 604800 (hafta) veya 2592000 (30 gün).

start_at / end_at

İzin aktif olduğunda. Açık uçlu bir izin için end_at null'dır.

revoked_at

Aktifken null; kontrol panelinden iptal edildiğinde bir zaman damgası. İptal edilmiş bir izin hiçbir şeyi yetkilendirmez.

DÖNEM

Gün, hafta veya 30 gün.

period_seconds, üç değerden birini alır. İzin, dönem değiştiğinde sıfırlanır; per_tx_wei, dönemden bağımsız olarak her bir ödeme için geçerlidir.

86400

1 gün

604800

1 hafta

2592000

30 gün

Bir harcama izni, bir kez ayarlanan, her yerde uygulanan katı bir sınırdır - işlem başına onay akışı değil ve insan döngüsünde onaylama değildir. Onaylara veya çoklu imzaya ihtiyacınız varsa, bu ayrı, daha ağır bir modeldir; izin, bunun altındaki her zaman açık zeminidir.

SIKÇA SORULAN

Operatörlerin sorduğu beş harcama izni sorusu.

API aracılığıyla bir harcama iznini ayarlayabilir veya değiştirebilir miyim?

Hayır. Harcama izinleri API üzerinden yalnızca okunabilir. Bunları Blockchain0x kontrol panelinde oluşturur, değiştirir ve iptal edersiniz ve GET /v1/agents/{id}/spend-permissions, kodunuzun mevcut değerleri görüntülemesine veya kontrol etmesine izin verir. Bu kasıtlıdır: ajanın kendi API anahtarı kendi limitlerini gevşetemez, bu da ajanın herhangi bir zaman prompt enjekte edilirse veya döngüye girerse istediğiniz özelliktir. Bir izni artırmak için kontrol paneline ihtiyacınız var.

Bir ödeme izni aşarsa ne olur?

Arka uç, zincire dokunmadan önce bunu reddeder - hiçbir fon hareket etmez. Uygulama arka uçta, ajansınızın kodunda değil, bu nedenle ajans bunu atlatamaz, mantığı denese bile. GET rotası ile izni okuyun, böylece ajansınıza ne kadar alan kaldığını gösterin ve payments.create'den gelen reddi, başka bir başarısız çağrıyı nasıl ele alıyorsanız öyle ele alın.

Neden tutarlar dolar yerine wei cinsinden?

Consistency with the rest of the API: every amount is a base-unit string. USDC has 6 decimals, so allowance_wei "5000000" is 5 USDC and per_tx_wei "1000000" is 1 USDC. Strings, not floats - large integers lose precision as JSON numbers, and a base-unit string is unambiguous across languages.

Harcama izinleri gelen ödemeleri sınırlar mı?

Hayır. Bir izin yalnızca cüzdandan çıkan parayı yönetir. Gelen USDC asla engellenmez - herkes istediği zaman ajanınza ödeme yapabilir. İzni, dış harcamalar için tek yönlü bir vana olarak düşünün; gelen yerleşim, payment.received webhook'u ile ayrı olarak onaylanır.

Bir şey yanlış görünüyorsa harcamayı hızlı bir şekilde nasıl iptal ederim?

İzni kontrol panelinde iptal edin - bu, revoked_at'ı ayarlar ve sonraki herhangi bir ödeme için harcama limitini sıfıra çeker. Daha sert bir durdurma için, ajanın API anahtarını (apiKeys.rotate / apiKeys.revoke) döndürebilir veya iptal edebilirsiniz, bu da kimliği tamamen keser. Her ikisi de anında gerçekleşir; izin iptali cerrahi olanıdır, anahtar iptali ise acil durdurma anahtarıdır.

Sınırlarla harcayın, sürprizlerle değil.

Gösterge panelinde bir izin ve işlem başına bir sınır belirleyin. Arka uç geri kalanını halleder.