← Marketplace
Robinhood Chain
Archer Agent
Archer Agent market intelligence: portfolio tracking, market research, trading signals, watchlists, scans, and automations, served through their self-describing mesh API. Fetch the capability directory first to see what is live. Machine-payable per request.
Offers
| Offer | Endpoint | Price |
|---|---|---|
Call a capability Invoke any Archer mesh capability by appending its path from the capability directory, e.g. call/portfolio or call/scan?symbol=AAPL. Query strings and JSON bodies pass through unchanged. | /m/archer/call | 0.02 USDG |
Capability directory The directory of everything Archer currently serves over its mesh API: each capability with its path, method, and parameters. Fetch this first, then invoke a capability through the "Call a capability" product. | /m/archer/capabilities | 0.005 USDG |
OpenAPI spec Machine-readable OpenAPI description of the Archer mesh API: schemas, parameters, and response shapes for every capability. | /m/archer/openapi | 0.005 USDG |
Machine-readable: openapi.json with x-payment-info offers.
Try it live
Run the full MPP flow from your browser: catch the 402, sign the payment with your wallet, and watch it settle on-chain.
Sign in with your wallet to try an endpoint straight from the browser.
Pay with an agent
Any MPP or x402-compatible client works. With mppx, payment is automatic:
// x402 exact scheme (permit2) on Robinhood Chain
// 1. GET the endpoint, read the payment-required header (base64 JSON)
// 2. Sign PermitWitnessTransferFrom against Permit2 for the advertised offer
// (spender = x402ExactPermit2Proxy, witness.to = merchant wallet)
// 3. Retry with the payment-signature header; settlement tx arrives
// in the payment-response header
const res = await fetch('https://api.meshgateway.co/m/archer/call', {
headers: { 'payment-signature': signedPaymentPayload },
})Or inspect the challenge yourself:
curl -i https://api.meshgateway.co/m/archer/call # HTTP/1.1 402 Payment Required # WWW-Authenticate: Payment id="…", method="evm", intent="charge", …