{"openapi":"3.1.0","info":{"title":"Wicket API","version":"1.0.0","summary":"Every x402 settlement on Arc, read from the chain.","description":"Open read-only API over x402 payment settlements on Circle Arc (chain id 5042). No authentication, no API key, CORS open to all origins. Amounts are integers in atomic USDC units (6 decimals); timestamps are Unix seconds in UTC; addresses are lowercase.","license":{"name":"CC BY 4.0","url":"https://creativecommons.org/licenses/by/4.0/"},"contact":{"name":"@wicketprotocol","url":"https://x.com/wicketprotocol"}},"servers":[{"url":"https://wicketworld.xyz"}],"externalDocs":{"description":"Human documentation","url":"https://wicketworld.xyz/docs/api"},"tags":[{"name":"network","description":"Chain-wide aggregates"},{"name":"settlements","description":"Individual payments"}],"paths":{"/api/stats":{"get":{"tags":["network"],"operationId":"getStats","summary":"Headline numbers for the whole network","description":"All-time and 24-hour totals plus indexer position. Compare indexedBlock across two calls to check liveness.","responses":{"200":{"description":"Current network statistics","content":{"application/json":{"schema":{"type":"object","properties":{"settles24":{"type":"integer","description":"Successful settles in the last 24 hours."},"volume24":{"type":"integer","format":"int64","description":"USDC in atomic units (6 decimals). 10000 = $0.01."},"facilitators24":{"type":"integer","description":"Distinct facilitators active in the last 24 hours."},"total":{"type":"integer","description":"Successful settles since Arc mainnet."},"volume":{"type":"integer","format":"int64","description":"USDC in atomic units (6 decimals). 10000 = $0.01."},"facilitators":{"type":"integer","description":"Distinct facilitators ever seen."},"lastTs":{"type":"integer","format":"int64","description":"Unix seconds, UTC.","nullable":true},"lastBlock":{"type":"integer","nullable":true,"description":"Block of the most recent settle."},"indexedBlock":{"type":"integer","nullable":true,"description":"Highest block the indexer has read."}}}}}}}}},"/api/leaderboard":{"get":{"tags":["network"],"operationId":"getLeaderboard","summary":"Every facilitator, ranked by successful settles","description":"Complete list, no pagination. Recomputed from raw rows on each request.","responses":{"200":{"description":"Facilitator ranking","content":{"application/json":{"schema":{"type":"object","properties":{"network":{"type":"string","examples":["eip155:5042"]},"asset":{"type":"string","pattern":"^0x[0-9a-f]{40}$","description":"The USDC predeploy on Arc."},"updatedAt":{"type":"integer","format":"int64","description":"Unix seconds, UTC."},"facilitators":{"type":"array","items":{"$ref":"#/components/schemas/Facilitator"}}}}}}}}}},"/api/settles":{"get":{"tags":["settlements"],"operationId":"listSettles","summary":"Settlement feed, newest first","description":"Paginate with the block cursor `before` rather than an offset, so rows do not shift as new settles arrive. Invalid parameters fall back to defaults instead of returning an error.","parameters":[{"name":"limit","in":"query","description":"Rows to return.","schema":{"type":"integer","minimum":1,"maximum":200,"default":25}},{"name":"range","in":"query","description":"Time window counted back from now.","schema":{"type":"string","enum":["24h","7d","all"],"default":"7d"}},{"name":"facilitator","in":"query","description":"Only settles broadcast by this wallet.","schema":{"type":"string","pattern":"^0x[0-9a-f]{40}$","description":"Lowercase hex address."}},{"name":"address","in":"query","description":"Only settles where this address is payer or payee.","schema":{"type":"string","pattern":"^0x[0-9a-f]{40}$","description":"Lowercase hex address."}},{"name":"min","in":"query","description":"Minimum value in atomic units: 0 all, 100 = $0.0001, 10000 = $0.01, 1000000 = $1.","schema":{"type":"integer","enum":[0,100,10000,1000000],"default":0}},{"name":"before","in":"query","description":"Return rows strictly below this block number. Pass the block of the last row you received.","schema":{"type":"integer"}}],"responses":{"200":{"description":"Settlements matching the filters","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Settle"}}}}}}}},"/api/search":{"get":{"tags":["settlements"],"operationId":"search","summary":"Resolve a hash, an address or a facilitator name","description":"One address can be both a facilitator and a payer, so every possible reading is returned rather than one guess.","parameters":[{"name":"q","in":"query","required":true,"description":"A 0x+64 transaction hash, a 0x+40 address, or at least two characters of a facilitator name.","schema":{"type":"string"}}],"responses":{"200":{"description":"Matches, possibly empty","content":{"application/json":{"schema":{"type":"object","properties":{"hits":{"type":"array","items":{"$ref":"#/components/schemas/Hit"}}}}}}}}}}},"components":{"schemas":{"Facilitator":{"type":"object","description":"A wallet that broadcasts x402 settlements and pays their gas.","properties":{"rank":{"type":"integer","description":"1 is the most settles; ties broken by volume."},"address":{"type":"string","pattern":"^0x[0-9a-f]{40}$","description":"Lowercase hex address."},"name":{"type":"string","description":"A known name, or 'unlabeled'."},"labeled":{"type":"boolean","description":"Whether the name is a real identification."},"settles":{"type":"integer","description":"Successful settles, all time."},"reverted":{"type":"integer","description":"Mined but failed. Excluded from settles and volume."},"volume":{"type":"integer","format":"int64","description":"USDC in atomic units (6 decimals). 10000 = $0.01."},"settles24":{"type":"integer"},"volume24":{"type":"integer","format":"int64","description":"USDC in atomic units (6 decimals). 10000 = $0.01."},"firstTs":{"type":"integer","format":"int64","description":"Unix seconds, UTC."},"lastTs":{"type":"integer","format":"int64","description":"Unix seconds, UTC."},"lastBlock":{"type":"integer"}}},"Settle":{"type":"object","description":"One on-chain transaction that carried out an x402 payment.","properties":{"tx_hash":{"type":"string","pattern":"^0x[0-9a-f]{64}$"},"block":{"type":"integer"},"ts":{"type":"integer","format":"int64","description":"Unix seconds, UTC."},"facilitator":{"type":"string","pattern":"^0x[0-9a-f]{40}$","description":"tx.from — who broadcast it and paid the gas."},"payer":{"type":"string","pattern":"^0x[0-9a-f]{40}$","description":"Whose USDC moved. Signed the authorization, sent no transaction."},"payee":{"type":"string","pattern":"^0x[0-9a-f]{40}$","description":"Who received the USDC."},"value":{"type":"integer","format":"int64","description":"USDC in atomic units (6 decimals). 10000 = $0.01."},"status":{"type":"integer","enum":[0,1],"description":"1 succeeded, 0 reverted."},"facName":{"type":"string","description":"Display name of the facilitator."},"labeled":{"type":"boolean"}}},"Hit":{"type":"object","properties":{"kind":{"type":"string","enum":["tx","facilitator","address"]},"href":{"type":"string","description":"Path on wicketworld.xyz describing the match."},"label":{"type":"string"},"note":{"type":"string","description":"Human-readable context for the match."}}}}}}