accepts, och hur PAYMENT-SIGNATURE gör samma API-förfrågan till en betald förfrågan.
Förberedelser
Du behöver förbereda:
X402-anropet till Ace Data Cloud API kräver ingen API-token. SDK:n gör den första förfrågan utan
Authorization, Gateway kommer att returnera 402 Payment Required och betalningskrav; SDK:n kommer automatiskt att försöka igen efter signering.
Installera SDK
Källkod och paketadress:- SDK-förråd: https://github.com/AceDataCloud/SDK
- X402 Client-förråd: https://github.com/AceDataCloud/X402Client
- npm:
@acedatacloud/sdk,@acedatacloud/x402-client - PyPI:
acedatacloud,acedatacloud-x402
acedatacloud-x402.
Installation och importkontroll av en ren temporär miljö:
- npm-paket och PyPI-paket är verkliga publicerade paket, inte platshållarnamn i dokumentationen.
acedatacloud-x402[cli]kommer att installera CLI,approve-permit2underkommandot kan användas föruptoscenarier för Permit2-auktorisering.
Första förfrågan kommer att returnera 402
Du kan först användacurl för att se vad en obetald förfrågan returnerar. Nedan exempel kommer inte att generera kostnader eftersom det inte innehåller PAYMENT-SIGNATURE:
accepts array, en vanlig struktur ser ut som följer:
PAYMENT-REQUIRED svarshuvudet, vilket gör det lättare för klienten att läsa betalningskravet utan att behöva analysera kroppen.
Sammanfattning av programutdata för obetalda API-förfrågningar ser ut som följer:
- Den första förfrågan innehöll varken
AuthorizationellerPAYMENT-SIGNATURE, så den returnerade HTTP 402 och genererade inga kostnader. acceptsär den enda pålitliga signaturgrunden för denna förfrågan, som innehåller valfritt nätverk, schema, beloppsgräns, mottagaradress och tillgångsadress.networkär CAIP-2 identifiering, klienten måste matcha nätverket enligt CAIP-2 sträng.- Denna
gpt-4o-miniminimi chattförfrågan har en beloppsgräns på95215atomära USDC, vilket motsvarar0.095215USDC. - Varje förfrågan bör läsa det aktuella 402-svaret, och inte hårdkoda exempelbelopp i affärskoden.
Använd SDK för att slutföra betalningsåterförsök
Nedan är ett minimalt TypeScript-exempel. Det specificerarnetwork: 'skale', handler kommer att välja SKALE:s betalningskrav från detta 402-svar; det faktiska beloppet och mottagaradressen kommer fortfarande att baseras på accepts.
content ADC_TS_SDK_X402_OKär en fast sträng som modellen returnerar enligt prompten, vilket indikerar att betalningen har försökt igen och att begäran verkligen har kommit in i modellens API.payerär den lokala signerade plånboksadressen, privatnyckeln har inte skickats till Ace Data Cloud.- SDK har genomfört 402-analys,
PAYMENT-SIGNATUREsignering och omförsökt den ursprungliga begäran; affärskoden är fortfarande skriven enligt det vanliga SDK-anropet.
- SDK skickar en vanlig API-begäran utan
Authorization. - Gateway returnerar
402 Payment Requiredochaccepts. createX402PaymentHandlerväljer betalningskravet förnetwork = 'skale'och signerarPAYMENT-SIGNATURE.- SDK försöker igen med samma begäran, Gateway anropar Facilitator för att verifiera och avveckla innan den släpps till mål-API:t.
Kontrollera Facilitators stöd
X402 API är inte beroende av resurskataloger. Klienten anropar direkt kända API:er och använder den begäran som returneras i realtid402 Payment Required och accepts som det enda priset och signeringsunderlaget.
Facilitators kapacitetsdeklaration finns på:
/supported, /verify, /settle och de aktuellt aktiverade betalningsnäten, utan att lista API-resurser.
Ace Data Clouds produktionsfacilitatoradress är:
kinds kommer att lista de nätverk och scheman som Facilitator stöder. Vid faktisk anropning gäller fortfarande det som API:t returnerar i accepts.
Facilitator /supported utdata:
/supportedvisar att Facilitator har verifierings- och avvecklingskapacitet för dessa nätverk och scheman.- Base, SKALE och Solana stöder
exact;uptoerbjuds för närvarande endast på Base. - Huruvida ett specifikt API tillåter ett visst nätverk beror fortfarande på det API:s 402
accepts.

