Voraussetzungen
- Eine EVM-Wallet auf Base, die vom Agenten kontrolliert wird (Private Key in einer Umgebungsvariablen oder einem Secret Manager).
- Ein kleiner Betrag ETH auf Base für Gas (Staking sind zwei Transaktionen:
approveund dannstake). - Ein beliebiger Nicht-Null-Betrag VVV zum Staken. Der Mint-Endpoint erfordert lediglich, dass die Wallet ein Nicht-Null-sVVV-Guthaben hat, sodass 1 VVV ausreicht, um einen Schlüssel zu erstellen. Siehe Bezahlung für Inferenz für die Voraussetzungen, um bezahlte Endpoints tatsächlich aufzurufen.
Schritte
VVV bei Venice staken
Staken Sie das VVV im Venice Staking Smart Contract unter 
Wenn die zweite Transaktion bestätigt ist, sinkt das VVV-Guthaben der Wallet, und ihr sVVV-Guthaben steigt um denselben Betrag. Der Mint-Endpoint liest das sVVV-Guthaben, um zu bestätigen, dass die Wallet gestaked ist.
0x321b7ff75154472B18EDb199033fF4D116F340Ff. Das sind zwei Transaktionen:approve(spender, amount)auf dem VVV-Token, wobeispenderder Staking-Contract ist.stake(amount)auf dem Staking-Contract.

Ein Validierungs-Token anfordern
Rufen Sie Die Antwort enthält ein
GET /api/v1/api_keys/generate_web3_key auf, um ein kurzlebiges, von Venice signiertes Token zu erhalten. Der Endpoint ist unauthentifiziert.token-Feld. Das Token läuft 15 Minuten nach Ausstellung ab, also signieren und übermitteln Sie es deutlich vorher.Das Token mit der Staking-Wallet signieren
Signieren Sie den rohen Token-String mit der Wallet, die das gestakte VVV hält. Dies ist ein standardmäßiger
personal_sign über die Token-Bytes. Sowohl ethers.Wallet.signMessage(token) als auch account.signMessage({ message: token }) in viem erzeugen die korrekte Signatur.Den API-Schlüssel erstellen
POSTen Sie die Adresse, die Signatur und das Token zusammen mit dem gewünschten Schlüsseltyp an denselben Endpoint.address, signature, token, apiKeyType (INFERENCE oder ADMIN).Optionale Felder: description, expiresAt, consumptionLimit (begrenzt die Gesamtausgaben dieses Schlüssels, denominiert in usd, vcu oder diem).Bei Erfolg enthält die Antwort den erstellten apiKey-String. Speichern Sie ihn im Secret-Store des Agenten und verwenden Sie ihn als normales Bearer-Token (Authorization: Bearer <key>).End-to-End-Beispiel
Das folgende Beispiel verwendet eine echte Wallet aus einer Umgebungsvariablen statt einer zufällig generierten. Eine zufällige Wallet hat kein gestaktes VVV, und der Mint wird mit dem FehlerWallet has no staked VVV on Base abgelehnt.
Fehlerreferenz
Der Endpoint gibt spezifische, umsetzbare Fehlermeldungen zurück. Mappen Sie diese im Agenten, damit er entscheiden kann, ob er es erneut versucht, ein neues Token anfordert oder abbricht.| Status | Fehlermeldung enthält | Bedeutung | Vorgehen |
|---|---|---|---|
400 | Invalid wallet address | Das address-Feld ist keine gültige EVM-Adresse. | Adresse korrigieren und erneut einreichen. |
400 | JWT has expired | Das Validierungs-Token ist abgelaufen, bevor Sie es signiert und eingereicht haben. | Neues Token anfordern, signieren und sofort einreichen. |
400 | JWT signature is invalid | Das Token wurde nicht von Venice signiert (wahrscheinlich manipuliert oder gefälscht). | Immer ein frisches Token vom GET-Endpoint verwenden. |
400 | JWT claims are invalid | Aussteller oder Audience des Tokens entsprechen nicht dem, was Venice erwartet. | Verwenden Sie das unveränderte Token aus dem GET-Endpoint. |
400 | JWT is malformed | Das eingereichte token ist kein JWT. | Stellen Sie sicher, dass Sie den exakten token-String aus dem GET-Endpoint senden. |
400 | Wallet signature does not match | Die signature passt nicht zur address für das angegebene token. | Signieren Sie die rohen Token-Bytes mit der Wallet, die address besitzt. |
400 | Could not verify wallet signature | Der RPC-Aufruf zur Verifizierung der Signatur ist fehlgeschlagen (transient). | Mit Backoff erneut versuchen. |
400 | Wallet has no staked VVV on Base | Die Wallet hat ein sVVV-Guthaben von Null. | Zuerst VVV staken, dann erneut versuchen. |
Bezahlung für Inferenz
Einen Schlüssel zu erstellen und damit bezahlte Endpoints aufrufen zu können sind zwei verschiedene Dinge. Ein frisch erstellter Schlüssel authentifiziert sich korrekt, kann aber keine bezahlten Endpoints (z. B./chat/completions) aufrufen, bis das Konto der Wallet ein verfügbares Guthaben hat.
Der erstellte Schlüssel kann vom Benutzerkonto in dieser Prioritätsreihenfolge ausgeben: DIEM, dann gebündelte Credits, dann USD.
| Finanzierungsquelle | Autonom? | Wie |
|---|---|---|
| DIEM aus VVV-Staking | Ja | Die tägliche DIEM-Zuteilung der Wallet ist proportional zu ihrem Anteil am Staking-Pool. Das Konto benötigt mindestens 0,1 gestakte DIEM, damit überhaupt DIEM ausgegeben werden können. Größere Stakes verdienen proportional mehr tägliches DIEM, das jede Epoche (00:00 UTC) erneuert wird. |
| USD über Stripe | Nein (Browser) | Melden Sie sich auf venice.ai mit derselben Wallet an (Sign-In-With-Ethereum). Das Dashboard findet den vorhandenen Benutzerdatensatz. Credits unter Settings, API hinzufügen. |
| Coinbase Crypto Subscription | Nein (Browser) | Gleiche Wallet-Anmeldung, dann über das Dashboard abonnieren. Der Flow leitet für die eigentliche Zahlung zu Coinbase Commerce um, daher kann er nicht aus einem Skript gesteuert werden. |
| Coinbase Onramp | Nein (Browser) | Gleiche Wallet-Anmeldung, dann das Onramp-Widget im Dashboard verwenden. Wird auf der Coinbase-UI gehostet. |
- Mehr VVV staken, sodass die tägliche DIEM-Zuteilung die Ausgaben des Agenten abdeckt. Der erstellte Schlüssel verwendet dies automatisch.
- Verwenden Sie den x402-Wallet-Flow anstelle des API-Schlüssels. Bei x402 signiert der Agent pro Anfrage eine Sign-In-With-X-Nachricht, lädt direkt mit USDC auf Base oder Solana über
POST /api/v1/x402/top-upauf und bezahlt pro Anfrage. Das x402-USDC-Guthaben ist wallet-gebunden, nicht benutzerbezogen, sodass es nicht als Guthaben für den erstellten Bearer-Schlüssel angezeigt wird, aber es ermöglicht es derselben Wallet, programmatisch für Inferenz zu bezahlen.
Verwandte Ressourcen
Krypto und Agenten
Verwenden Sie Venice sowohl als Modellanbieter als auch als Blockchain-RPC-Schicht für autonome Agenten.
x402-Wallet-Authentifizierung
Bezahlen Sie pro Anfrage mit USDC auf Base oder Solana, ohne API-Schlüssel.
Web3 API Key Endpoint generieren
Endpoint-Referenz für den Mint-Endpoint.
Standard-API-Schlüssel-Leitfaden
Für Nutzer, die einen Schlüssel über das Dashboard erstellen möchten.