Skip to main content
Denna handledning beskriver hela processen för Ace Data Cloud X402 med en minimal API-förfrågan. Målet är inte att skriva komplex kod först, utan att förstå: varför den första förfrågan returnerar 402, vad som finns i 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: TypeScript:
Python:
Om du vill använda Solana, behöver du också installera motsvarande beroenden:
Python-versionen av Solana signer-beroendet ingår redan i acedatacloud-x402. Installation och importkontroll av en ren temporär miljö:
Resultatförklaring:
  • npm-paket och PyPI-paket är verkliga publicerade paket, inte platshållarnamn i dokumentationen.
  • acedatacloud-x402[cli] kommer att installera CLI, approve-permit2 underkommandot kan användas för upto scenarier för Permit2-auktorisering.

Första förfrågan kommer att returnera 402

Du kan först använda curl 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:
Svarskroppen kommer att innehålla en accepts array, en vanlig struktur ser ut som följer:
Samma utmaningsinnehåll kommer också att placeras i base64-format i 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:
Resultatförklaring:
  • Den första förfrågan innehöll varken Authorization eller PAYMENT-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-mini minimi chattförfrågan har en beloppsgräns på 95215 atomära USDC, vilket motsvarar 0.095215 USDC.
  • Varje förfrågan bör läsa det aktuella 402-svaret, och inte hårdkoda exempelbelopp i affärskoden.
Fältens betydelse:

Använd SDK för att slutföra betalningsåterförsök

Nedan är ett minimalt TypeScript-exempel. Det specificerar network: '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.
Resultatet av att köra programmet med TypeScript SDK på samma länk:
Resultatförklaring:
  • 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-SIGNATURE signering och omförsökt den ursprungliga begäran; affärskoden är fortfarande skriven enligt det vanliga SDK-anropet.
Det här kodstycket genomgick fyra steg:
  1. SDK skickar en vanlig API-begäran utan Authorization.
  2. Gateway returnerar 402 Payment Required och accepts.
  3. createX402PaymentHandler väljer betalningskravet för network = 'skale' och signerar PAYMENT-SIGNATURE.
  4. 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 realtid 402 Payment Required och accepts som det enda priset och signeringsunderlaget. Facilitators kapacitetsdeklaration finns på:
Den beskriver endast /supported, /verify, /settle och de aktuellt aktiverade betalningsnäten, utan att lista API-resurser. Ace Data Clouds produktionsfacilitatoradress är:
Du kan se vilka nätverk och scheman den stöder:
Den returnerade 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:
Resultatförklaring:
  • /supported visar att Facilitator har verifierings- och avvecklingskapacitet för dessa nätverk och scheman.
  • Base, SKALE och Solana stöder exact; upto erbjuds 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.