Handle Apiosk x402 payments, browse and publish listing types, and create signed payment proofs for paid gateway requests.
Use this skill when calling https://gateway.apiosk.com for paid endpoints, publishing APIs, or working with listing-type discovery.
402 Payment Required.x-payment proof and retry the request./types, /types/:listing_type/v1, /v1/apis).GET /typesGET /types/:listing_type/v1GET /v1/apisGET /v1/balance?address=0x...GET /v1/usage?address=0x...&period=all|today|week|monthPOST /v1/apis/registerPOST /v1/apis/:slugGET /v1/apis/mine?wallet=0x...DELETE /v1/apis/:slug?wallet=0x...ANY /:api_slug/*path (paid proxy calls)apidatasetscomputeapiskillproductdatasetserviceconnectorFor discovery, always start with:
GET /typesGET /types/<group>/v1GET /v1/apis with search, category, sort, order, limit, offsetx-payment.402, parse accepts[0] from JSON:
schemenetworkmaxAmountRequiredpayToassetmaxTimeoutSecondsextra.name and extra.version (token EIP-712 domain)TransferWithAuthorization payload and sign it with EIP-712.x402Version: 1schemenetworkpayload.signaturepayload.authorization (from, to, value, validAfter, validBefore, nonce)x-payment: <base64-proof>.If the retry returns 402 again, generate a new nonce and fresh validBefore and retry once more.
Use EIP-3009 TransferWithAuthorization typed data:
name = requirement.extra.name (fallback USD Coin)version = requirement.extra.version (fallback 2)chainId from requirement.networkverifyingContract = requirement.assetfrom, to, value, validAfter, validBefore, noncefrom = caller walletto = requirement.payTovalue = requirement.maxAmountRequiredvalidAfter = 0validBefore = now + requirement.maxTimeoutSecondsnonce = random 32-byte hexNetwork-to-chainId defaults:
base-sepolia => 84532base => 8453ethereum => 1polygon => 137arbitrum => 42161Use POST /v1/apis/register with JSON:
{
"name": "My API",
"slug": "my-api",
"endpoint_url": "https://example.com",
"price_usd": 0.01,
"description": "My paid API",
"owner_wallet": "0x...",
"category": "data"
}
Required auth headers for register/update/mine/delete:
x-wallet-addressx-wallet-signaturex-wallet-timestampx-wallet-nonceCanonical signed message:
Apiosk auth