{"openapi":"3.1.0","info":{"title":"SEC, Treasury & Agent Utilities","version":"1.0.0","description":"Pay-per-call (x402/USDC on Base) endpoints: SEC EDGAR filings, US Treasury yield curve, Stablecoin supply, Entity and compliance lookups, Agent utilities, x402 seller checks and agent demand index.","x-guidance":"Paid endpoints accept BOTH the x402 V2 protocol and MPP (Machine Payments Protocol) on the same routes for the same price: call without payment to receive a 402 carrying an x402 PAYMENT-REQUIRED challenge and an MPP WWW-Authenticate: Payment challenge, pay with whichever you support (e.g. @x402/fetch or mppx), retry. USDC on base (eip155:8453). No account, no API key.","contact":{"email":"donny.nguyen.business@gmail.com"}},"x-service-info":{"categories":["data","blockchain","search","web"],"docs":{"homepage":"https://x402.donnyautomation.com","apiReference":"https://x402.donnyautomation.com/openapi.json"}},"servers":[{"url":"https://x402.donnyautomation.com"}],"tags":[{"name":"SEC EDGAR filings","description":"3 routes, $0.01 per call."},{"name":"US Treasury yield curve","description":"1 route, $0.01 per call."},{"name":"Stablecoin supply","description":"1 route, $0.008 per call."},{"name":"Entity and compliance lookups","description":"3 routes, $0.01 to $0.05 per call."},{"name":"Agent utilities","description":"4 routes, $0.01 per call."},{"name":"x402 seller checks and agent demand index","description":"2 routes, $0.01 to $0.02 per call."}],"paths":{"/random":{"get":{"summary":"Cryptographically secure random number generator API - CSPRNG randomness for AI agents that are deterministic or sandboxed and cannot generate their own","tags":["Agent utilities"],"description":"Cryptographically secure random number generator API - CSPRNG randomness for AI agents that are deterministic or sandboxed and cannot generate their own. Uniform random integers in any min-max range (rejection-sampled, so no modulo bias) or raw random bytes returned as hex and base64. For nonces, session tokens, unique IDs, sampling, shuffling, lotteries and simulations. Generated server-side; the response states its source and limits plainly.","x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.010000"},"priceUsd":"$0.01","currency":"USDC","network":"eip155:8453","protocols":[{"mpp":{"method":"evm","intent":"charge","currency":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}},{"x402":{}}]},"parameters":[{"name":"bytes","in":"query","required":false,"schema":{"type":"string"},"description":"Random bytes to return, 1..1024 (default 32). Returned as hex and base64url.","example":"32"},{"name":"min","in":"query","required":false,"schema":{"type":"string"},"description":"With max: return uniform integers in [min, max] inclusive instead of bytes."},{"name":"max","in":"query","required":false,"schema":{"type":"string"},"description":"Upper bound (inclusive) for integer mode. Must be greater than min."},{"name":"count","in":"query","required":false,"schema":{"type":"string"},"description":"How many integers, 1..1000 (default 1). Integer mode only."}],"responses":{"200":{"description":"JSON payload — see the x402 Bazaar output example for this route.","content":{"application/json":{"schema":{"type":"object"},"example":{"hex":"9f86d081884c7d65…","base64":"n4bQgYhMfWWa…","bytes":32,"source":"node:crypto randomBytes (CSPRNG)","ts":"2026-08-01T00:00:00.000Z"}}}},"402":{"description":"x402 V2 payment challenge (PAYMENT-REQUIRED header, base64 JSON)."}},"operationId":"getRandom"}},"/markdown":{"get":{"summary":"Web article and PDF to Markdown converter API - fetch any public URL and get clean Markdown plus title, byline, site name, excerpt and word count","tags":["Agent utilities"],"description":"Web article and PDF to Markdown converter API - fetch any public URL and get clean Markdown plus title, byline, site name, excerpt and word count. HTML is extracted with Firefox reader-mode rules (Readability); PDFs return their text layer with page count. Honest failures: image-only PDFs return no_text_layer, client-rendered app shells return not_extractable - never an empty page passed off as the article. For AI agents, research pipelines, summarizers and content ingestion.","x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.010000"},"priceUsd":"$0.01","currency":"USDC","network":"eip155:8453","protocols":[{"mpp":{"method":"evm","intent":"charge","currency":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}},{"x402":{}}]},"parameters":[{"name":"url","in":"query","required":true,"schema":{"type":"string"},"description":"Public http(s) URL of an article or PDF, e.g. https://en.wikipedia.org/wiki/Markdown. Private and internal hosts are refused. Fetch cap 8 MB, output cap 400K chars.","example":"https://en.wikipedia.org/wiki/Markdown"}],"responses":{"200":{"description":"JSON payload — see the x402 Bazaar output example for this route.","content":{"application/json":{"schema":{"type":"object"},"example":{"url":"https://en.wikipedia.org/wiki/Markdown","finalUrl":"https://en.wikipedia.org/wiki/Markdown","format":"article","title":"Markdown","byline":null,"siteName":"Wikipedia","excerpt":"Markdown is a lightweight markup language…","markdown":"# Markdown\n\nMarkdown is a lightweight markup language…","wordCount":3204,"truncated":false,"ts":"2026-08-01T00:00:00.000Z"}}}},"402":{"description":"x402 V2 payment challenge (PAYMENT-REQUIRED header, base64 JSON)."}},"operationId":"getMarkdown"}},"/feed":{"get":{"summary":"RSS, Atom and RDF feed to clean JSON","tags":["Agent utilities"],"description":"RSS, Atom and RDF feed to clean JSON. Any public feed URL returns the feed title, link, description and last-updated, plus items with title, real destination link, id, author, categories and the published date both verbatim and normalised to ISO 8601. Each summary comes back twice: the feed HTML as published, and a plain-text rendering an agent can put straight into a prompt. An unparseable date is null rather than an invented timestamp. Private and internal hosts are refused.","x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.010000"},"priceUsd":"$0.01","currency":"USDC","network":"eip155:8453","protocols":[{"mpp":{"method":"evm","intent":"charge","currency":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}},{"x402":{}}]},"parameters":[{"name":"url","in":"query","required":true,"schema":{"type":"string"},"description":"Public http(s) URL of an RSS 2.0, Atom or RDF feed. Private and internal hosts are refused. Fetch cap 8 MB.","example":"https://hnrss.org/frontpage"},{"name":"limit","in":"query","required":false,"schema":{"type":"string"},"description":"Maximum items, 1..100 (default 20). totalItems reports how many the feed actually held."}],"responses":{"200":{"description":"JSON payload — see the x402 Bazaar output example for this route.","content":{"application/json":{"schema":{"type":"object"},"example":{"url":"https://hnrss.org/frontpage","format":"rss","feed":{"title":"Hacker News: Front Page","link":"https://news.ycombinator.com/","description":"Hacker News RSS","updated":"2026-08-03T19:39:15.000Z"},"items":[{"title":"ZX Spectrum System Tour: Sound","link":"https://example.com/post","published":"2026-08-03T18:32:06.000Z","summaryText":"Article URL: …","categories":[]}],"count":1,"totalItems":30,"truncated":true,"ts":"2026-08-03T00:00:00.000Z"}}}},"402":{"description":"x402 V2 payment challenge (PAYMENT-REQUIRED header, base64 JSON)."}},"operationId":"getFeed"}},"/ip":{"get":{"summary":"IP geolocation API - country, region, city, postcode, coordinates, timezone and network for any public IPv4 or IPv6 address, plus the field that decides whether to believe any of it","tags":["Agent utilities"],"description":"IP geolocation API - country, region, city, postcode, coordinates, timezone and network for any public IPv4 or IPv6 address, plus the field that decides whether to believe any of it. Datacentre, VPN, proxy and Tor detection is returned first, and when the upstream does not supply it the answer says unknown rather than clean - a missing signal is never reported as a negative one. ASN, org, ISP and domain are included so a hosting provider stays visible.","x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.010000"},"priceUsd":"$0.01","currency":"USDC","network":"eip155:8453","protocols":[{"mpp":{"method":"evm","intent":"charge","currency":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}},{"x402":{}}]},"parameters":[{"name":"ip","in":"query","required":true,"schema":{"type":"string"},"description":"Public IPv4 or IPv6 address, e.g. 8.8.8.8. Private, loopback, link-local and reserved ranges are refused.","example":"8.8.8.8"}],"responses":{"200":{"description":"JSON payload — see the x402 Bazaar output example for this route.","content":{"application/json":{"schema":{"type":"object"},"example":{"ip":"8.8.8.8","version":"IPv4","reliability":{"likelyMasked":null,"signalsAvailable":false,"verdict":"VPN / proxy / hosting detection was NOT returned by the upstream for this address — this is unknown, not clean…"},"location":{"country":"United States","countryCode":"US","region":"California","city":"San Jose","latitude":37.336,"longitude":-121.891},"network":{"asn":15169,"org":"Google LLC","isp":"Google LLC","domain":"google.com"},"timezone":{"id":"America/Los_Angeles","utcOffset":"-07:00","isDst":true},"ts":"2026-08-03T00:00:00.000Z"}}}},"402":{"description":"x402 V2 payment challenge (PAYMENT-REQUIRED header, base64 JSON)."}},"operationId":"getIp"}},"/lei":{"get":{"summary":"Legal Entity Identifier (LEI) lookup from the GLEIF golden copy","tags":["Entity and compliance lookups"],"description":"Legal Entity Identifier (LEI) lookup from the GLEIF golden copy. Search by company NAME, not just by identifier - knowing the LEI already is the hard part. Returns the LEI, registered legal name, previous names, legal form, jurisdiction, legal and headquarters addresses, and the registration record. Status comes back as a lapsed flag: LAPSED, RETIRED and ANNULLED entities are returned rather than hidden, because a filtered record and no record look identical. For KYC and compliance agents.","x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.010000"},"priceUsd":"$0.01","currency":"USDC","network":"eip155:8453","protocols":[{"mpp":{"method":"evm","intent":"charge","currency":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}},{"x402":{}}]},"parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string"},"description":"Legal entity name, max 200 chars. Include the suffix for a precise match, e.g. \"Apple Inc.\" rather than \"Apple\".","example":"Apple Inc."},{"name":"lei","in":"query","required":false,"schema":{"type":"string"},"description":"Exact 20-character LEI for a single record. Use instead of q."},{"name":"limit","in":"query","required":false,"schema":{"type":"string"},"description":"Maximum name-search results, 1..50 (default 10)."}],"responses":{"200":{"description":"JSON payload — see the x402 Bazaar output example for this route.","content":{"application/json":{"schema":{"type":"object"},"example":{"query":"Apple Inc.","records":[{"lei":"HWUPKR0MPOU8FGXBT394","legalName":"APPLE INC.","status":"ACTIVE","jurisdiction":"US-CA","legalAddress":{"city":"CUPERTINO","country":"US","postalCode":"95014"},"registration":{"status":"ISSUED","nextRenewalDate":"2027-03-08T17:27:20Z"},"lapsed":false}],"count":1,"totalMatches":1,"attribution":"LEI data from the GLEIF Golden Copy (CC0 1.0).","ts":"2026-08-03T00:00:00.000Z"}}}},"402":{"description":"x402 V2 payment challenge (PAYMENT-REQUIRED header, base64 JSON)."}},"operationId":"getLei"}},"/treasury":{"get":{"summary":"US Treasury par yield curve API - every constant-maturity rate from 1 month to 30 years for any published business day, plus the spreads nobody wants to compute themselves","tags":["US Treasury yield curve"],"description":"US Treasury par yield curve API - every constant-maturity rate from 1 month to 30 years for any published business day, plus the spreads nobody wants to compute themselves. 2s10s, 3m10y and 5s30s are returned with an explicit inversion flag, because the real question is whether the curve is inverted, not what fourteen numbers are. A tenor Treasury did not publish that day is null, never zero. For macro, rates, credit and risk agents.","x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.010000"},"priceUsd":"$0.01","currency":"USDC","network":"eip155:8453","protocols":[{"mpp":{"method":"evm","intent":"charge","currency":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}},{"x402":{}}]},"parameters":[{"name":"latest","in":"query","required":false,"schema":{"type":"string"},"description":"Pass latest=1 for the most recent published curve. Use instead of date, not with it.","example":"1"},{"name":"date","in":"query","required":false,"schema":{"type":"string"},"description":"YYYY-MM-DD business day, for a specific past day. A non-publication day returns 404 with the available range, not the nearest guess."}],"responses":{"200":{"description":"JSON payload — see the x402 Bazaar output example for this route.","content":{"application/json":{"schema":{"type":"object"},"example":{"date":"2026-08-03","isLatest":true,"curve":[{"tenor":"3 Mo","months":3,"percent":3.91},{"tenor":"2 Yr","months":24,"percent":4.25},{"tenor":"10 Yr","months":120,"percent":4.7}],"spreads":{"2s10s":0.45,"3m10y":0.79,"5s30s":0.83,"unit":"percentage points"},"inversion":{"2s10s":false,"3m10y":false,"anyInverted":false},"attribution":"Daily Treasury Par Yield Curve Rates, U.S. Department of the Treasury (public domain).","ts":"2026-08-03T00:00:00.000Z"}}}},"402":{"description":"x402 V2 payment challenge (PAYMENT-REQUIRED header, base64 JSON)."}},"operationId":"getTreasury"}},"/sanctions":{"get":{"summary":"OFAC sanctions screening","tags":["Entity and compliance lookups"],"description":"OFAC sanctions screening. Checks a person or company against the US Treasury SDN and Consolidated lists - 19,600+ designated parties, 40,000+ names including every alias - and returns the matched record with its sanctions programs, designation remarks and a match score. Word order does not matter, because OFAC stores people as \"SURNAME, Given\" and your caller will not. A list that cannot be loaded returns 503, never a clear. For KYC, payments and compliance agents.","x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.010000"},"priceUsd":"$0.01","currency":"USDC","network":"eip155:8453","protocols":[{"mpp":{"method":"evm","intent":"charge","currency":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}},{"x402":{}}]},"parameters":[{"name":"name","in":"query","required":true,"schema":{"type":"string"},"description":"Person or company name to screen, max 200 chars. Word order does not matter.","example":"Vladimir Putin"},{"name":"minScore","in":"query","required":false,"schema":{"type":"string"},"description":"Match threshold 0.1..1 (default 0.6). 1.0 is an exact name-token match."},{"name":"type","in":"query","required":false,"schema":{"type":"string"},"description":"Filter to individual, entity, vessel or aircraft."},{"name":"limit","in":"query","required":false,"schema":{"type":"string"},"description":"Maximum matches returned, 1..50 (default 10)."}],"responses":{"200":{"description":"JSON payload — see the x402 Bazaar output example for this route.","content":{"application/json":{"schema":{"type":"object"},"example":{"query":"Vladimir Putin","match":true,"riskLevel":"hit","matches":[{"score":1,"matchedName":"PUTIN, Vladimir","matchedOn":"alias","name":"PUTIN, Vladimir Vladimirovich","uid":"35096","list":"OFAC SDN","type":"individual","programs":["RUSSIA-EO14024"],"title":"President of the Russian Federation"}],"count":1,"screened":{"lists":[{"list":"OFAC SDN","entries":19178},{"list":"OFAC Consolidated (non-SDN)","entries":481}],"searchableNames":40936},"notScreened":["EU consolidated list","UK OFSI","UN Security Council"],"attribution":"U.S. Treasury OFAC sanctions lists (public domain).","ts":"2026-08-05T00:00:00.000Z"}}}},"402":{"description":"x402 V2 payment challenge (PAYMENT-REQUIRED header, base64 JSON)."}},"operationId":"getSanctions"}},"/edgar/filings":{"get":{"summary":"SEC EDGAR filing change oracle for one issuer: everything this company has filed with the SEC since your cursor, as a delta rather than a dump","tags":["SEC EDGAR filings"],"description":"SEC EDGAR filing change oracle for one issuer: everything this company has filed with the SEC since your cursor, as a delta rather than a dump. Returns accession number, form type, filing and report dates, acceptance timestamp, 8K item codes, and direct URLs to the filing index and the primary document, plus an inclusive nextSince cursor to poll with. Read live from SEC at call time. US Government public domain records; SEC fair access respected with a declared user agent and a rate limiter.","x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.010000"},"priceUsd":"$0.01","currency":"USDC","network":"eip155:8453","protocols":[{"mpp":{"method":"evm","intent":"charge","currency":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}},{"x402":{}}]},"parameters":[{"name":"ticker","in":"query","required":true,"schema":{"type":"string"},"description":"Exchange ticker, e.g. AAPL. Resolved through SEC company_tickers.json. Send cik instead when you have it: cik is EDGAR identity, ticker is a convenience. If both are sent, cik wins.","example":"AAPL"},{"name":"since","in":"query","required":true,"schema":{"type":"string"},"description":"ISO date YYYY-MM-DD. INCLUSIVE cursor: filings on this date are returned. Required — this endpoint returns a delta, not a dump.","example":"2026-01-01"},{"name":"cik","in":"query","required":false,"schema":{"type":"string"},"description":"SEC Central Index Key, 1 to 10 digits, zero padding optional (e.g. 320193 or 0000320193). Alternative to ticker; supplying either one is enough."},{"name":"forms","in":"query","required":false,"schema":{"type":"string"},"description":"Comma separated form filter, e.g. 10-K,10-Q,8-K. A form also matches its /A amendment; 8-K/A alone matches only amendments."},{"name":"limit","in":"query","required":false,"schema":{"type":"string"},"description":"Maximum filings returned, 1 to 200 (default 50). The response reports matched and truncated so a cut-off delta is never mistaken for a complete one."}],"responses":{"200":{"description":"JSON payload — see the x402 Bazaar output example for this route.","content":{"application/json":{"schema":{"type":"object"},"example":{"endpoint":"/edgar/filings","issuer":{"cik":"0000320193","ticker":"AAPL","name":"Apple Inc.","exchanges":["Nasdaq"],"sicDescription":"Electronic Computers"},"since":"2026-01-01","changed":true,"count":1,"matched":1,"truncated":false,"nextSince":"2026-07-30","cursorSemantics":"nextSince is INCLUSIVE — the next call re-returns that day's filings. Dedupe on accessionNumber.","filings":[{"accessionNumber":"0000320193-26-000018","form":"8-K","filingDate":"2026-07-30","reportDate":"2026-07-30","acceptanceDateTime":"2026-07-30T20:30:28.000Z","items":"2.02,9.01","filingIndexUrl":"https://www.sec.gov/Archives/edgar/data/320193/000032019326000018/0000320193-26-000018-index.htm","primaryDocumentUrl":"https://www.sec.gov/Archives/edgar/data/320193/000032019326000018/aapl-20260730.htm"}],"coverage":{"from":"2015-06-04","to":"2026-08-27","complete":true},"attribution":"Source: U.S. Securities and Exchange Commission EDGAR. US Government public-domain records, read live at call time."}}}},"402":{"description":"x402 V2 payment challenge (PAYMENT-REQUIRED header, base64 JSON)."}},"operationId":"getEdgarFilings"}},"/edgar/events":{"get":{"summary":"SEC EDGAR material corporate event oracle for one issuer: which material events this company has reported since your cursor, with every item code decoded to the title the SEC itself prints for it","tags":["SEC EDGAR filings"],"description":"SEC EDGAR material corporate event oracle for one issuer: which material events this company has reported since your cursor, with every item code decoded to the title the SEC itself prints for it. Covers Form 8K and its amendments only. Merger agreements, earnings, executive departures, auditor changes, delisting notices, cyber incidents and bankruptcy land here first, hours to days before any summarised feed. Filter to the item codes you care about. Read live from SEC at call time.","x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.010000"},"priceUsd":"$0.01","currency":"USDC","network":"eip155:8453","protocols":[{"mpp":{"method":"evm","intent":"charge","currency":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}},{"x402":{}}]},"parameters":[{"name":"ticker","in":"query","required":true,"schema":{"type":"string"},"description":"Exchange ticker, e.g. TSLA. Resolved through SEC company_tickers.json. Send cik instead when you have it. If both are sent, cik wins.","example":"TSLA"},{"name":"since","in":"query","required":true,"schema":{"type":"string"},"description":"ISO date YYYY-MM-DD. INCLUSIVE cursor: events filed on this date are returned. Required — this endpoint returns a delta, not a dump.","example":"2026-01-01"},{"name":"cik","in":"query","required":false,"schema":{"type":"string"},"description":"SEC Central Index Key, 1 to 10 digits (e.g. 1318605). Alternative to ticker; supplying either one is enough."},{"name":"items","in":"query","required":false,"schema":{"type":"string"},"description":"Comma separated 8K item codes to filter on, e.g. 1.01,5.02,2.06. A filing matches if it carries ANY of them. Malformed codes return 400 bad_items rather than being ignored."},{"name":"limit","in":"query","required":false,"schema":{"type":"string"},"description":"Maximum events returned, 1 to 200 (default 50). matched and truncated are reported so a cut-off delta is visible."}],"responses":{"200":{"description":"JSON payload — see the x402 Bazaar output example for this route.","content":{"application/json":{"schema":{"type":"object"},"example":{"endpoint":"/edgar/events","issuer":{"cik":"0001318605","ticker":"TSLA","name":"Tesla, Inc.","exchanges":["Nasdaq"]},"since":"2026-01-01","changed":true,"count":1,"nextSince":"2026-07-23","events":[{"accessionNumber":"0001628280-26-000000","form":"8-K","filingDate":"2026-07-23","itemCodes":"2.02,9.01","items":[{"code":"2.02","title":"Results of Operations and Financial Condition","titleSource":"sec-filing-index"},{"code":"9.01","title":"Financial Statements and Exhibits","titleSource":"sec-filing-index"}],"filingIndexUrl":"https://www.sec.gov/Archives/edgar/data/1318605/000162828026000000/0001628280-26-000000-index.htm"}],"unknownItemCodes":[],"itemTitleSource":"Read from SEC-rendered EDGAR filing-index pages","attribution":"Source: U.S. Securities and Exchange Commission EDGAR. US Government public-domain records, read live at call time."}}}},"402":{"description":"x402 V2 payment challenge (PAYMENT-REQUIRED header, base64 JSON)."}},"operationId":"getEdgarEvents"}},"/edgar/insiders":{"get":{"summary":"SEC EDGAR ownership change oracle for one issuer: who has reported a change in their position since your cursor","tags":["SEC EDGAR filings"],"description":"SEC EDGAR ownership change oracle for one issuer: who has reported a change in their position since your cursor. Covers Forms 3, 4 and 5 (Section 16 officers and directors) and Schedules 13D and 13G (beneficial owners above five percent), amendments included, each classified and linked to the filing itself. Returns the filing level change and the document URL to read; it does not parse share counts out of the filings and does not claim to. Read live from SEC at call time.","x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.010000"},"priceUsd":"$0.01","currency":"USDC","network":"eip155:8453","protocols":[{"mpp":{"method":"evm","intent":"charge","currency":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}},{"x402":{}}]},"parameters":[{"name":"ticker","in":"query","required":true,"schema":{"type":"string"},"description":"Exchange ticker, e.g. NVDA. Resolved through SEC company_tickers.json. Send cik instead when you have it. If both are sent, cik wins.","example":"NVDA"},{"name":"since","in":"query","required":true,"schema":{"type":"string"},"description":"ISO date YYYY-MM-DD. INCLUSIVE cursor: ownership filings on this date are returned. Required — this endpoint returns a delta, not a dump.","example":"2026-01-01"},{"name":"cik","in":"query","required":false,"schema":{"type":"string"},"description":"SEC Central Index Key, 1 to 10 digits (e.g. 1045810). Alternative to ticker; supplying either one is enough."},{"name":"forms","in":"query","required":false,"schema":{"type":"string"},"description":"Comma separated filter within the ownership set, e.g. 4 or SC 13D. A form also matches its /A amendment. Anything outside Forms 3, 4, 5, SC 13D and SC 13G is never returned by this route."},{"name":"limit","in":"query","required":false,"schema":{"type":"string"},"description":"Maximum filings returned, 1 to 200 (default 50). Active issuers file many Form 4s; matched and truncated tell you when you hit the cap."}],"responses":{"200":{"description":"JSON payload — see the x402 Bazaar output example for this route.","content":{"application/json":{"schema":{"type":"object"},"example":{"endpoint":"/edgar/insiders","issuer":{"cik":"0001045810","ticker":"NVDA","name":"NVIDIA CORP","exchanges":["Nasdaq"]},"since":"2026-01-01","changed":true,"count":1,"nextSince":"2026-08-27","formsCovered":["3","3/A","4","4/A","5","5/A","SC 13D","SC 13D/A","SC 13G","SC 13G/A"],"filings":[{"accessionNumber":"0001140361-26-034741","form":"4","filingDate":"2026-08-27","reportDate":"2026-08-25","ownershipClass":"section-16-insider","isAmendment":false,"primaryDocumentUrl":"https://www.sec.gov/Archives/edgar/data/1045810/000114036126034741/xslF345X06/form4.xml"}],"returns":"Filing-level changes and the document URL to read. Owner names and share counts live inside each Form 4 / 13D document and are not parsed here.","notIncluded":"Form 144 (a notice of a PROPOSED sale) and Form 13F.","attribution":"Source: U.S. Securities and Exchange Commission EDGAR. US Government public-domain records, read live at call time."}}}},"402":{"description":"x402 V2 payment challenge (PAYMENT-REQUIRED header, base64 JSON)."}},"operationId":"getEdgarInsiders"}},"/company":{"get":{"summary":"Counterparty dossier for one legal entity in one call: who it is, whether it is sanctioned, and whether it is an SEC registrant","tags":["Entity and compliance lookups"],"description":"Counterparty dossier for one legal entity in one call: who it is, whether it is sanctioned, and whether it is an SEC registrant. Joins three public registries on the legal name - the GLEIF LEI golden copy (legal name, status, lapsed flagged not hidden, jurisdiction, address), OFAC SDN and Consolidated screening of that name, and SEC EDGAR identity with its latest filing. Ask by name, LEI, ticker or CIK. If OFAC screening cannot run it returns 503 - a check that did not run is never a clear.","x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.050000"},"priceUsd":"$0.05","currency":"USDC","network":"eip155:8453","protocols":[{"mpp":{"method":"evm","intent":"charge","currency":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}},{"x402":{}}]},"parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string"},"description":"Legal entity name, max 200 chars. Include the suffix for a precise match, e.g. \"Apple Inc.\" rather than \"Apple\". Use instead of lei/ticker/cik.","example":"Apple Inc."},{"name":"lei","in":"query","required":false,"schema":{"type":"string"},"description":"Exact 20-character LEI, for an unambiguous subject. Use instead of q."},{"name":"ticker","in":"query","required":false,"schema":{"type":"string"},"description":"Exchange ticker, e.g. AAPL. Resolves the SEC block directly and supplies the registered name to search GLEIF with."},{"name":"cik","in":"query","required":false,"schema":{"type":"string"},"description":"SEC Central Index Key, 1 to 10 digits. Alternative to ticker; cik wins if both are sent."},{"name":"minScore","in":"query","required":false,"schema":{"type":"string"},"description":"OFAC name-match threshold 0.1..1, default 0.85. 1.0 is an exact name-token match. Lower it to widen the review set, never to narrow it."}],"responses":{"200":{"description":"JSON payload — see the x402 Bazaar output example for this route.","content":{"application/json":{"schema":{"type":"object"},"example":{"endpoint":"/company","subject":{"name":"APPLE INC.","nameSource":"GLEIF legal name","query":{"q":"Apple Inc.","lei":null,"ticker":null,"cik":null}},"identity":{"resolved":true,"source":"GLEIF","legalName":"APPLE INC.","lei":"HWUPKR0MPOU8FGXBT394","status":"ACTIVE","lapsed":false,"jurisdiction":"US-CA","legalAddress":{"city":"CUPERTINO","country":"US","postalCode":"95014"},"matchCount":1},"sanctions":{"screened":true,"screenedName":"APPLE INC.","riskLevel":"clear","match":false,"count":0,"matches":[],"lists":[{"list":"OFAC SDN","entries":19178},{"list":"OFAC Consolidated (non-SDN)","entries":481}],"notScreened":["EU consolidated list","UK OFSI","UN Security Council"]},"sec":{"resolved":true,"via":"name","cik":"0000320193","tickers":["AAPL"],"name":"Apple Inc.","exchanges":["Nasdaq"],"sicDescription":"Electronic Computers","latestFiling":{"form":"4","filingDate":"2026-08-27","accessionNumber":"0001140361-26-034741","readMoreWith":"/edgar/filings"}},"flags":[],"resolvedBlocks":{"identity":true,"sanctions":true,"sec":true,"count":3,"of":3},"asOf":"2026-08-30T00:00:00.000Z","attribution":"GLEIF Golden Copy (CC0 1.0); U.S. Treasury OFAC sanctions lists (public domain); U.S. Securities and Exchange Commission EDGAR."}}}},"402":{"description":"x402 V2 payment challenge (PAYMENT-REQUIRED header, base64 JSON)."}},"operationId":"getCompany"}},"/index/demand":{"get":{"summary":"Agent demand index: what AI agents asked this x402 gateway for and could not get","tags":["x402 seller checks and agent demand index"],"description":"Agent demand index: what AI agents asked this x402 gateway for and could not get. Returns the top unserved paths and capabilities over 7 and 30 days with request counts and distinct caller counts, plus routes where a caller was quoted a price and did not pay. Built only from this gateway's own request ledger. Aggregates only: every row has at least two callers behind it, scanner sweeps and exploit probes are removed, and no caller identifier, IP or user agent is returned.","x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.010000"},"priceUsd":"$0.01","currency":"USDC","network":"eip155:8453","protocols":[{"mpp":{"method":"evm","intent":"charge","currency":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}},{"x402":{}}]},"parameters":[{"name":"window","in":"query","required":false,"schema":{"type":"string"},"description":"7d or 30d. Leave it out to get both.","example":"7d"},{"name":"limit","in":"query","required":false,"schema":{"type":"string"},"description":"Rows per list, 1 to 50 (default 20)."}],"responses":{"200":{"description":"JSON payload — see the x402 Bazaar output example for this route.","content":{"application/json":{"schema":{"type":"object"},"example":{"endpoint":"/index/demand","source":"This gateway's own request ledger: requests for paths it does not serve, and price quotes that were not paid. No third-party index or registry is read.","asOf":"2026-10-06T12:00:00.000Z","ledgerThrough":"2026-10-06T11:58:41.000Z","notFoundSensorSince":"2026-10-03","windows":{"7d":{"days":7,"from":"2026-09-30","to":"2026-10-06","sensorDaysCovered":4,"unservedPaths":[{"path":"/.well-known/agent.json","requests":36,"distinctCallers":5,"lastSeen":"2026-10-06"}],"capabilities":[{"capability":"discovery:agent.json","requests":36,"distinctCallers":5,"paths":1}],"quotedNotBought":[{"route":"/treasury","challenges":12,"distinctCallers":3}],"counts":{"notFoundRows":986,"listedPaths":1,"listedRequests":36,"excluded":{"exploitOrSecretProbe":412,"scannerSweep":301,"ownTraffic":0,"identifierBearingPath":9,"unlistableShape":14,"singleCaller":214,"overDailyPathCap":0},"challengeRows":1840,"qualifiedChallenges":31}}},"privacy":{"minCallersPerRow":2,"resolution":"day","callerBasis":"distinct user-agent fingerprints, so a floor: two callers on one stock client count once"},"attribution":"x402.donnyautomation.com request ledger, aggregated."}}}},"402":{"description":"x402 V2 payment challenge (PAYMENT-REQUIRED header, base64 JSON)."}},"operationId":"getIndexDemand"}},"/seller/check":{"get":{"summary":"Seller check for one x402 host, asked before an agent pays it","tags":["x402 seller checks and agent demand index"],"description":"Seller check for one x402 host, asked before an agent pays it. This gateway probes the seller's own public endpoint and discovery documents with unpaid GET requests and returns the live 402 terms: price on each payment rail, network, asset, payTo, and whether the rails and the seller's own API document agree. Returns a go, caution or stop flag with every reason, plus this gateway's own settlement census for that payTo when one is held. An unreachable seller is an error and is not charged.","x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.020000"},"priceUsd":"$0.02","currency":"USDC","network":"eip155:8453","protocols":[{"mpp":{"method":"evm","intent":"charge","currency":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}},{"x402":{}}]},"parameters":[{"name":"host","in":"query","required":true,"schema":{"type":"string"},"description":"The seller's public DNS hostname, e.g. api.example-seller.com. No scheme, port or path. IP addresses and internal names are refused.","example":"x402.donnyautomation.com"},{"name":"path","in":"query","required":false,"schema":{"type":"string"},"description":"One paid path on that host to check, starting with a slash, e.g. /v1/quote. Without it the check reads the host's /.well-known/x402 and /openapi.json and probes up to three of the routes they list."}],"responses":{"200":{"description":"JSON payload — see the x402 Bazaar output example for this route.","content":{"application/json":{"schema":{"type":"object"},"example":{"endpoint":"/seller/check","host":"api.example-seller.com","checkedAt":"2026-10-06T12:00:00.000Z","cached":false,"cacheAgeSeconds":0,"probe":{"mode":"live-probe","requests":3,"discovery":{"found":true,"resourcesListed":4,"skippedOffHostOrNotHttps":0},"probed":[{"url":"https://api.example-seller.com/v1/quote","status":402,"payable":true,"version":2,"x402":[{"scheme":"exact","network":"eip155:8453","asset":"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913","assetKnown":true,"assetName":"USD Coin","payTo":"0x1111111111111111111111111111111111111111","amountBaseUnits":"20000","priceUsd":0.02}],"mpp":null,"resourceUrl":"https://api.example-seller.com/v1/quote","listedPriceUsd":0.02}]},"terms":{"payTo":["0x1111111111111111111111111111111111111111"],"networks":["eip155:8453"],"assets":["0x833589fcd6edb6e08f4c7c32d4f71b54bda02913"],"priceUsd":{"min":0.02,"max":0.02}},"agreement":{"rails":"single-rail","listing":"agree","payToAcrossResources":"agree"},"census":{"present":false,"reason":"no census snapshot is loaded"},"flag":"go","reasons":[{"code":"single_rail","severity":"info","detail":"one payment rail is offered"}],"notChecked":["on-chain settlement history for this recipient","whether the endpoint returns useful data after payment"],"attribution":"Terms read from the seller's own public endpoint and discovery documents by this gateway. No third-party index is consulted."}}}},"402":{"description":"x402 V2 payment challenge (PAYMENT-REQUIRED header, base64 JSON)."}},"operationId":"getSellerCheck"}},"/stablecoin/supply":{"get":{"summary":"Stablecoin supply per chain from the figures each issuer publishes itself (Circle for USDC and EURC, Tether for USDT), with this service's own computation on top: the cross-chain total over every chain the issuer reports, each chain's share of that total, and the change since this service's previous read with both read times","tags":["Stablecoin supply"],"description":"Stablecoin supply per chain from the figures each issuer publishes itself (Circle for USDC and EURC, Tether for USDT), with this service's own computation on top: the cross-chain total over every chain the issuer reports, each chain's share of that total, and the change since this service's previous read with both read times. Returns the issuer reserve page link. A chain the issuer does not publish is reported ok:false and null, never as zero. No price, peg or exchange rate.","x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.008000"},"priceUsd":"$0.008","currency":"USDC","network":"eip155:8453","protocols":[{"mpp":{"method":"evm","intent":"charge","currency":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}},{"x402":{}}]},"parameters":[{"name":"symbol","in":"query","required":true,"schema":{"type":"string"},"description":"Token symbol: USDC, EURC or USDT.","example":"USDC"},{"name":"chain","in":"query","required":false,"schema":{"type":"string"},"description":"One chain only, for example ethereum or base. Omit for every chain the issuer reports."}],"responses":{"200":{"description":"JSON payload — see the x402 Bazaar output example for this route.","content":{"application/json":{"schema":{"type":"object"},"example":{"endpoint":"/stablecoin/supply","symbol":"USDC","name":"USD Coin","issuer":{"key":"circle","name":"Circle"},"source":{"endpoint":"https://api.circle.com/v1/stablecoins","fetchedAt":"2026-10-15T20:24:16.000Z"},"chains":[{"chain":"ethereum","issuerLabel":"ETH","ok":true,"supply":"48022061163.368437","share":65.1234,"reason":null},{"chain":"base","issuerLabel":"BASE","ok":true,"supply":"4391930793.280246","share":5.9552,"reason":null}],"total":"73747163092.54821","complete":true,"chainsReported":39,"chainsRead":39,"read":{"at":"2026-10-15T20:24:16.000Z","previousAt":"2026-10-15T20:14:02.000Z"},"change":{"absolute":"12500000","percent":0.0169,"note":"total now minus the total at this service's previous cached read of the issuer feed; null until a second read exists"},"stale":false,"staleAgeSec":null,"issuerPageUrl":"https://www.circle.com/transparency","method":"supply per chain as the issuer publishes it at https://api.circle.com/v1/stablecoins; total, share and change computed by this service over every chain the issuer reports, refreshed at most every 10 minutes. A chain the issuer does not publish is ok:false and null, never zero.","scopeNote":"This route returns supply and an issuer link only. It returns no price, peg or exchange rate.","asOf":"2026-10-15T20:24:17.000Z"}}}},"402":{"description":"x402 V2 payment challenge (PAYMENT-REQUIRED header, base64 JSON)."}},"operationId":"getStablecoinSupply"}}}}