← Marketplace

Donnyautomation

Donnyautomation is an x402-native service at https://x402.donnyautomation.com, indexed from the x402 Bazaar (Coinbase's public discovery directory). It charges callers itself in USDC on Base and is paid directly at its own wallet; Monex Protocol passes your request and payment headers through untouched. 12 endpoints listed.

Base

Offers

OfferEndpointPrice
Call
Cross-DEX price, liquidity and gross arbitrage spread for ONE BSC pair in a single call, across PancakeSwap v2/v3, Biswap and ApeSwap. Returns pricesByVenue[], bestBuy, bestSell, midSpreadBps, crossDex (grossSpreadBps, grossUsd, optimalInput) and liquidity at a stated blockNumber. Requires ?pair=SYM/SYM (first symbol is USD-priceable); optional ?fee= pins one v3 tier. Errors: 400 bad_pair|bad_fee,
/m/bz-x402-donnyautomation-com/call0.01 USDC
Edgar Events
Form 8-K material events for one issuer SINCE a cursor, each item code decoded to the title SEC prints (2.02 Results of Operations, 5.02 Departure of Directors, 1.05 Cybersecurity Incidents). Requires ?since=YYYY-MM-DD AND ?ticker= or ?cik=. Optional ?items=1.01,5.02 (matches ANY), ?limit=1..200. Errors: 400 missing_since|missing_issuer|bad_items, 404 unknown_ticker|unknown_cik, 502 edgar_unavaila
/m/bz-x402-donnyautomation-com/edgar/events0.05 USDC
Geocode
Forward geocoding: street address or place name to latitude/longitude, worldwide, via OpenStreetMap Nominatim. Returns best {lat, lon, displayName, type, importance}, count and attribution. Requires ?q=<address or place name>, max 300 chars. Errors: 400 missing_query|query_too_long, 404 no_match - a coordinate is never guessed, 502 geocoder_unavailable|geocoder_failed. The OPPOSITE direction (coor
/m/bz-x402-donnyautomation-com/geocode0.01 USDC
Lei
Legal Entity Identifier lookup from the GLEIF golden copy, searchable by NAME - knowing the LEI already is the hard part. Returns records[] with lei, legalName, status, jurisdiction, legalAddress and a lapsed flag; LAPSED and RETIRED entities are returned, not hidden - a filtered record and no record look identical. Requires ?q=<legal name, max 200> or ?lei=<20 chars>. Errors: 400 missing_query|ba
/m/bz-x402-donnyautomation-com/lei0.03 USDC
Markdown
Fetch a public article or PDF and return clean Markdown plus title, byline, siteName, excerpt and wordCount. HTML is extracted with Firefox reader-mode rules; PDFs return their text layer. Requires ?url=<public http(s) URL>. Errors: 400 missing_url|bad_url, 403 blocked_private (private and internal hosts refused, every redirect hop re-checked), 413 too_large above 8 MB, 422 no_text_layer for scann
/m/bz-x402-donnyautomation-com/markdown0.01 USDC
Reverse Geocode
Reverse geocoding: latitude/longitude to a street address, worldwide, via OpenStreetMap Nominatim. Returns displayName plus structured address (road, city, state, postcode, country), place type and attribution. Requires BOTH ?lat= and ?lon=. Errors: 400 bad_coords (either missing or non-numeric) or coords_out_of_range (lat -90..90, lon -180..180), 404 no_match for ocean or unmapped points, 502 geo
/m/bz-x402-donnyautomation-com/reverse-geocode0.01 USDC
Sanctions
OFAC screening against the Treasury SDN and Consolidated lists - 19,600+ parties, 40,000+ names including aliases. Returns match, riskLevel, matches[] with score, matchedName, matchedOn and programs, plus screened and notScreened naming what was NOT checked (EU, UK OFSI, UN). Word order does not matter: OFAC stores people SURNAME, Given. Requires ?name= (max 200); optional ?minScore, ?type, ?limit
/m/bz-x402-donnyautomation-com/sanctions0.01 USDC
Search
Free-text web search to ranked organic results, sponsored rows excluded. Returns results[] with rank, title, real destination url, displayUrl and snippet, plus count and attribution. Requires ?q= (max 500 chars); optional ?count=1..25 (default 10). Errors: 400 missing_query|query_too_long|bad_count, 404 no_match, 503 upstream_unavailable. Results are NOT fetched or verified - to read one, pass its
/m/bz-x402-donnyautomation-com/search0.01 USDC
Suggest
Live Google Autocomplete for a topic, expanded across question modifiers (how, what, why, is, can, does) and comparison modifiers (vs, or), split into suggestions, questions and comparisons. Off-topic rows are dropped and counted. Requires ?q= (max 200 chars); optional ?depth=full|basic, ?country=us, ?lang=en. Errors: 400 missing_q|q_too_long|bad_depth, 504 suggest_timeout. This is DEMAND (what pe
/m/bz-x402-donnyautomation-com/suggest0.01 USDC
Treasury
US Treasury par yield curve, every constant maturity from 1 month to 30 years for a published business day. Returns curve[] with tenor, months and percent, spreads (2s10s, 3m10y, 5s30s) and an explicit inversion flag - the real question is whether the curve is inverted, not what fourteen numbers are. A tenor Treasury did not publish is null, never zero. Pass ?latest=1 OR ?date=YYYY-MM-DD, not both
/m/bz-x402-donnyautomation-com/treasury0.03 USDC
V4hooks
Uniswap v4 hook capability scan on Base mainnet. Decodes all 14 permission bits from the hook address per v4-core Hooks.sol, flags swap custody, fee-taking and EIP-1967 upgradeability, and verifies source by Basescan/Sourcify/Blockscout consensus. Returns custodyClass PASSIVE|FLOW_CONTROL|FEE_TAKING|SWAP_CUSTODY|OPAQUE, flags[], riskFlags[] and verificationState. Requires ?address=0x + 40 hex. Err
/m/bz-x402-donnyautomation-com/v4hooks0.01 USDC
Weather
Current conditions and up to a 7-day forecast for any coordinates, via Open-Meteo. Returns current (tempC, feelsLikeC, humidityPct, windKmh, weatherCode, description), daily[] highs/lows/precipitation, and explicit units. Requires BOTH ?lat= and ?lon=; optional ?days=1..7 (default 3, clamped not rejected). Errors: 400 bad_coords|coords_out_of_range|bad_days, 502 weather_unavailable|weather_malform
/m/bz-x402-donnyautomation-com/weather0.01 USDC

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.

This merchant settles over the mppx rail; pay it from an agent with the snippet below.

Pay with an agent

Any MPP or x402-compatible client works. With mppx, payment is automatic:

import { Mppx, evm } from 'mppx/client'
import { privateKeyToAccount } from 'viem/accounts'

const mppx = Mppx.create({
  methods: [evm({
    account: privateKeyToAccount(process.env.KEY),
    currencies: [evm.assets.base.USDC],
  })],
})

const res = await mppx.fetch('https://api.meshgateway.co/m/bz-x402-donnyautomation-com/call')
// 402 challenge signed and settled automatically; response includes Payment-Receipt

Or inspect the challenge yourself:

curl -i https://api.meshgateway.co/m/bz-x402-donnyautomation-com/call
# HTTP/1.1 402 Payment Required
# WWW-Authenticate: Payment id="…", method="evm", intent="charge", …