{"name":"OpenVerbs","protocol":"mpp","description":"A catalog of small, single-purpose machine-payable services (verbs), each on its own subdomain, dual-served over MPP and x402 with USDC settlement on Base.","version":"0.1.0","apex":"openverbs.com","homepage":"https://openverbs.com/","catalog":"https://openverbs.com/catalog","services":[{"id":"tokens","name":"Token Counter","description":"Count the LLM tokens in text for a given model or encoding — exact for OpenAI and open models, labelled-approximate for Claude & Gemini.","category":"compute","url":"https://tokens.openverbs.com","openapi":"https://tokens.openverbs.com/openapi.json","mpp":"https://tokens.openverbs.com/.well-known/mpp"},{"id":"phone","name":"Phone Number Parser","description":"Parse, validate and format phone numbers — E.164, national, international, region and line type (no carrier lookup).","category":"compute","url":"https://phone.openverbs.com","openapi":"https://phone.openverbs.com/openapi.json","mpp":"https://phone.openverbs.com/.well-known/mpp"},{"id":"crypto","name":"Crypto Market Data","description":"Live crypto market data — token prices, historical price series, total market cap & BTC/ETH dominance, trending 24h movers, DeFi TVL, DeFi market overview, top protocols by TVL, DEX trading volume, DEX aggregator volume, onchain options volume, protocol fees & revenue, stablecoin supply, top yields, perpetual-futures funding & open interest, OHLC price-history candles, live L2 order book depth, Fear & Greed market sentiment, web-buzz sentiment, crypto news headlines and Google Trends search interest.","category":"crypto","url":"https://crypto.openverbs.com","openapi":"https://crypto.openverbs.com/openapi.json","mpp":"https://crypto.openverbs.com/.well-known/mpp"},{"id":"dns","name":"DNS Lookup","description":"Resolve DNS records (A, AAAA, CNAME, MX, TXT, NS, SOA, CAA, SRV) for a hostname, or reverse-resolve an IP — via public recursive resolvers.","category":"network","url":"https://dns.openverbs.com","openapi":"https://dns.openverbs.com/openapi.json","mpp":"https://dns.openverbs.com/.well-known/mpp"},{"id":"fx","name":"Currency Exchange","description":"Convert amounts between currencies and fetch reference exchange rates (latest or historical).","category":"finance","url":"https://fx.openverbs.com","openapi":"https://fx.openverbs.com/openapi.json","mpp":"https://fx.openverbs.com/.well-known/mpp"},{"id":"holidays","name":"Public Holidays","description":"List public/bank holidays by country and year, or check whether a date is a holiday.","category":"reference","url":"https://holidays.openverbs.com","openapi":"https://holidays.openverbs.com/openapi.json","mpp":"https://holidays.openverbs.com/.well-known/mpp"},{"id":"airport","name":"Airport reference","description":"Worldwide airport reference — resolve an airport by IATA or ICAO code, fuzzy-search by name or city, or find the nearest airports to any coordinates. Covers every large and medium airport plus every IATA-coded airport globally.","category":"location","url":"https://airport.openverbs.com","openapi":"https://airport.openverbs.com/openapi.json","mpp":"https://airport.openverbs.com/.well-known/mpp"},{"id":"dictionary","name":"Dictionary","description":"English dictionary and thesaurus — define a word with per-sense definitions, examples and synonyms, or fetch its synonyms and antonyms. Offline and deterministic.","category":"text","url":"https://dictionary.openverbs.com","openapi":"https://dictionary.openverbs.com/openapi.json","mpp":"https://dictionary.openverbs.com/.well-known/mpp"},{"id":"iban","name":"IBAN & BIC Validator","description":"Validate and parse IBAN account numbers and BIC/SWIFT codes — checksum, country and structure.","category":"validation","url":"https://iban.openverbs.com","openapi":"https://iban.openverbs.com/openapi.json","mpp":"https://iban.openverbs.com/.well-known/mpp"},{"id":"qr","name":"QR & Barcode Generator","description":"Generate and decode QR codes and barcodes.","category":"compute","url":"https://qr.openverbs.com","openapi":"https://qr.openverbs.com/openapi.json","mpp":"https://qr.openverbs.com/.well-known/mpp"},{"id":"datetime","name":"Date, Time, Duration & Calendar Toolkit","description":"Dates and time: timezone conversion and business-day math; ISO-8601 duration parse/format/humanize/add/between; and calendar math — Julian Day Number conversion, weekday, ISO week, Easter and day-of-year.","category":"compute","url":"https://datetime.openverbs.com","openapi":"https://datetime.openverbs.com/openapi.json","mpp":"https://datetime.openverbs.com/.well-known/mpp"},{"id":"tls","name":"TLS Certificate Inspector","description":"Inspect the TLS/SSL certificate a host presents — issuer, expiry, SANs, fingerprint and trust status.","category":"network","url":"https://tls.openverbs.com","openapi":"https://tls.openverbs.com/openapi.json","mpp":"https://tls.openverbs.com/.well-known/mpp"},{"id":"rdap","name":"Domain RDAP Lookup","description":"Look up domain registration data (registrar, dates, status, nameservers, DNSSEC).","category":"network","url":"https://rdap.openverbs.com","openapi":"https://rdap.openverbs.com/openapi.json","mpp":"https://rdap.openverbs.com/.well-known/mpp"},{"id":"email","name":"Email Validator","description":"Validate email addresses — syntax, MX deliverability and disposable/role detection (no mailbox probing).","category":"email","url":"https://email.openverbs.com","openapi":"https://email.openverbs.com/openapi.json","mpp":"https://email.openverbs.com/.well-known/mpp"},{"id":"vat","name":"VAT Validator","description":"Validate business VAT/GST numbers against official government registers for Norway, Finland, France, Czech Republic, Poland and Latvia, with one operation per jurisdiction. Each check confirms the number is live and returns registered entity details where disclosed.","category":"validation","url":"https://vat.openverbs.com","openapi":"https://vat.openverbs.com/openapi.json","mpp":"https://vat.openverbs.com/.well-known/mpp"},{"id":"wikidata","name":"Wikidata Knowledge","description":"Search entities and fetch normalized entity records (label, description, claims).","category":"reference","url":"https://wikidata.openverbs.com","openapi":"https://wikidata.openverbs.com/openapi.json","mpp":"https://wikidata.openverbs.com/.well-known/mpp"},{"id":"color","name":"Color Toolkit","description":"Color conversion, WCAG contrast, harmony schemes and nearest named color.","category":"compute","url":"https://color.openverbs.com","openapi":"https://color.openverbs.com/openapi.json","mpp":"https://color.openverbs.com/.well-known/mpp"},{"id":"password","name":"Password Toolkit","description":"Password strength estimation and secure generation (random or passphrase).","category":"compute","url":"https://password.openverbs.com","openapi":"https://password.openverbs.com/openapi.json","mpp":"https://password.openverbs.com/.well-known/mpp"},{"id":"ical","name":"iCalendar Toolkit","description":"Parse .ics, expand RRULE recurrences and build .ics documents.","category":"compute","url":"https://ical.openverbs.com","openapi":"https://ical.openverbs.com/openapi.json","mpp":"https://ical.openverbs.com/.well-known/mpp"},{"id":"semver","name":"SemVer Toolkit","description":"Parse, compare and range-test semantic versions.","category":"compute","url":"https://semver.openverbs.com","openapi":"https://semver.openverbs.com/openapi.json","mpp":"https://semver.openverbs.com/.well-known/mpp"},{"id":"slug","name":"Slug Toolkit","description":"Convert text into URL-safe slugs with accent transliteration.","category":"compute","url":"https://slug.openverbs.com","openapi":"https://slug.openverbs.com/openapi.json","mpp":"https://slug.openverbs.com/.well-known/mpp"},{"id":"mime","name":"MIME Toolkit","description":"Resolve filenames to MIME types and MIME types to extensions.","category":"compute","url":"https://mime.openverbs.com","openapi":"https://mime.openverbs.com/openapi.json","mpp":"https://mime.openverbs.com/.well-known/mpp"},{"id":"web","name":"Web Content Toolkit","description":"Fetch a public URL and extract its readable article, link-preview metadata, structured data (JSON-LD/Open Graph/microdata), sitemap URLs, HTTP/security response headers, trace its redirect chain, check its robots.txt crawl rules, extract and classify all its hyperlinks, or audit its on-page SEO.","category":"content","url":"https://web.openverbs.com","openapi":"https://web.openverbs.com/openapi.json","mpp":"https://web.openverbs.com/.well-known/mpp"},{"id":"pdf","name":"PDF Text Extraction","description":"Extract text and metadata from a PDF document by URL or base64.","category":"content","url":"https://pdf.openverbs.com","openapi":"https://pdf.openverbs.com/openapi.json","mpp":"https://pdf.openverbs.com/.well-known/mpp"},{"id":"format","name":"Format Toolkit","description":"Convert, validate, detect, infer-schema and canonicalize structured data — JSON, YAML, XML, CSV, TSV, TOML, NDJSON, INI, .env, .properties, plist, querystring.","category":"compute","url":"https://format.openverbs.com","openapi":"https://format.openverbs.com/openapi.json","mpp":"https://format.openverbs.com/.well-known/mpp"},{"id":"data","name":"Data Toolkit","description":"Query, diff, patch, merge and flatten JSON — JMESPath queries, RFC 6902 JSON Patch diff/apply, deep merge and flatten/unflatten —","category":"compute","url":"https://data.openverbs.com","openapi":"https://data.openverbs.com/openapi.json","mpp":"https://data.openverbs.com/.well-known/mpp"},{"id":"jwt","name":"JWT Toolkit","description":"Decode, verify and sign JSON Web Tokens (HS/RS/ES/PS) against your own secrets and keys —","category":"compute","url":"https://jwt.openverbs.com","openapi":"https://jwt.openverbs.com/openapi.json","mpp":"https://jwt.openverbs.com/.well-known/mpp"},{"id":"hash","name":"Hash Toolkit","description":"Cryptographic digests and HMACs — SHA-2, SHA-3, BLAKE2, SHA-1, MD5, RIPEMD-160 — with hex/base64 I/O.","category":"compute","url":"https://hash.openverbs.com","openapi":"https://hash.openverbs.com/openapi.json","mpp":"https://hash.openverbs.com/.well-known/mpp"},{"id":"pack","name":"Pack Toolkit","description":"Serialize JSON to and from compact binary formats — MessagePack and CBOR — carried as base64/hex.","category":"compute","url":"https://pack.openverbs.com","openapi":"https://pack.openverbs.com/openapi.json","mpp":"https://pack.openverbs.com/.well-known/mpp"},{"id":"text","name":"Text Toolkit","description":"String utilities — case conversion, base64/base32/hex/URL encoding, and unified/structured text diffing —","category":"compute","url":"https://text.openverbs.com","openapi":"https://text.openverbs.com/openapi.json","mpp":"https://text.openverbs.com/.well-known/mpp"},{"id":"unit","name":"Unit Converter","description":"Convert between physical and digital units — length, mass, volume, temperature, speed, pressure, energy, power, storage, time, angle and more.","category":"compute","url":"https://unit.openverbs.com","openapi":"https://unit.openverbs.com/openapi.json","mpp":"https://unit.openverbs.com/.well-known/mpp"},{"id":"math","name":"Expression Evaluator","description":"Safely evaluate mathematical expressions with variables and standard functions — sandboxed.","category":"compute","url":"https://math.openverbs.com","openapi":"https://math.openverbs.com/openapi.json","mpp":"https://math.openverbs.com/.well-known/mpp"},{"id":"random","name":"Secure Random","description":"Cryptographically-secure randomness — bytes, integers, strings and array sampling — unbiased.","category":"compute","url":"https://random.openverbs.com","openapi":"https://random.openverbs.com/openapi.json","mpp":"https://random.openverbs.com/.well-known/mpp"},{"id":"finance","name":"Finance Calculator","description":"Financial math — loan amortization, simple/compound interest, future & present value, NPV and IRR.","category":"compute","url":"https://finance.openverbs.com","openapi":"https://finance.openverbs.com/openapi.json","mpp":"https://finance.openverbs.com/.well-known/mpp"},{"id":"ip","name":"IP Toolkit","description":"IPv4/IPv6 address and subnet math — parse & classify, subnet calculator, CIDR membership and IPv6 expand/compress.","category":"network","url":"https://ip.openverbs.com","openapi":"https://ip.openverbs.com/openapi.json","mpp":"https://ip.openverbs.com/.well-known/mpp"},{"id":"html","name":"HTML Toolkit","description":"HTML string safety — entity encode/decode, strip tags to plain text and sanitize untrusted HTML to a safe allowlist.","category":"content","url":"https://html.openverbs.com","openapi":"https://html.openverbs.com/openapi.json","mpp":"https://html.openverbs.com/.well-known/mpp"},{"id":"checkdigit","name":"Check Digit Validator","description":"Validate common check-digit schemes — Luhn (cards), ISBN-10/13, EAN/UPC/GTIN, IMEI and US ABA routing numbers. Malformed input is rejected, a wrong check digit returns valid:false.","category":"validation","url":"https://checkdigit.openverbs.com","openapi":"https://checkdigit.openverbs.com/openapi.json","mpp":"https://checkdigit.openverbs.com/.well-known/mpp"},{"id":"geometry","name":"Geometry Toolkit","description":"Planar geometry — circle, rectangle and triangle metrics, polygon area/perimeter/centroid (shoelace) and point distances.","category":"compute","url":"https://geometry.openverbs.com","openapi":"https://geometry.openverbs.com/openapi.json","mpp":"https://geometry.openverbs.com/.well-known/mpp"},{"id":"numeral","name":"Numeral Systems","description":"Numeral-system conversions — arbitrary-base radix conversion, Roman numerals (both ways) and English number words / ordinals.","category":"compute","url":"https://numeral.openverbs.com","openapi":"https://numeral.openverbs.com/openapi.json","mpp":"https://numeral.openverbs.com/.well-known/mpp"},{"id":"inflect","name":"Inflection & Case","description":"English word inflection — pluralize, singularize, count-aware phrasing — and identifier case conversion across all common styles.","category":"content","url":"https://inflect.openverbs.com","openapi":"https://inflect.openverbs.com/openapi.json","mpp":"https://inflect.openverbs.com/.well-known/mpp"},{"id":"markdown","name":"Markdown Toolkit","description":"Markdown processing — render GFM to sanitized HTML, extract a heading table of contents and parse YAML front-matter.","category":"content","url":"https://markdown.openverbs.com","openapi":"https://markdown.openverbs.com/openapi.json","mpp":"https://markdown.openverbs.com/.well-known/mpp"},{"id":"stats","name":"Statistics","description":"Descriptive and inferential statistics — summary stats, percentiles/quantiles, Pearson correlation and linear regression.","category":"compute","url":"https://stats.openverbs.com","openapi":"https://stats.openverbs.com/openapi.json","mpp":"https://stats.openverbs.com/.well-known/mpp"},{"id":"url","name":"URL Toolkit","description":"WHATWG URL parsing and manipulation — parse into components, normalize/canonicalize, resolve references against a base, and parse/build query strings.","category":"web","url":"https://url.openverbs.com","openapi":"https://url.openverbs.com/openapi.json","mpp":"https://url.openverbs.com/.well-known/mpp"},{"id":"money","name":"Money Toolkit","description":"Locale-aware money handling — format and parse currency strings, round to minor units with selectable modes, and split amounts with exact minor-unit allocation. (Currency conversion lives in the fx verb.)","category":"compute","url":"https://money.openverbs.com","openapi":"https://money.openverbs.com/openapi.json","mpp":"https://money.openverbs.com/.well-known/mpp"},{"id":"timecode","name":"SMPTE Timecode","description":"SMPTE timecode toolkit — parse, rebase between frame rates and do frame-exact arithmetic, with correct non-drop and drop-frame (29.97/59.94) counting.","category":"media","url":"https://timecode.openverbs.com","openapi":"https://timecode.openverbs.com/openapi.json","mpp":"https://timecode.openverbs.com/.well-known/mpp"},{"id":"jsonschema","name":"JSON Schema","description":"JSON Schema tooling — validate a value against a schema (draft-07 with standard formats) and infer a schema from an example.","category":"compute","url":"https://jsonschema.openverbs.com","openapi":"https://jsonschema.openverbs.com/openapi.json","mpp":"https://jsonschema.openverbs.com/.well-known/mpp"},{"id":"otp","name":"One-Time Passwords","description":"HOTP (RFC 4226) and TOTP (RFC 6238) one-time passwords — generate counter- and time-based codes, verify a code within a drift window, and build otpauth:// provisioning URIs.","category":"compute","url":"https://otp.openverbs.com","openapi":"https://otp.openverbs.com/openapi.json","mpp":"https://otp.openverbs.com/.well-known/mpp"},{"id":"fraction","name":"Fraction Toolkit","description":"Exact rational arithmetic (BigInt) — simplify to lowest terms, add/subtract/multiply/divide, and convert between fractions and decimals including repeating decimals.","category":"compute","url":"https://fraction.openverbs.com","openapi":"https://fraction.openverbs.com/openapi.json","mpp":"https://fraction.openverbs.com/.well-known/mpp"},{"id":"matrix","name":"Matrix Algebra","description":"Dense linear algebra — multiply and transpose matrices, compute determinants, invert square matrices, and solve linear systems A·x = b via Gaussian elimination. Singular matrices return honest negative results rather than errors.","category":"compute","url":"https://matrix.openverbs.com","openapi":"https://matrix.openverbs.com/openapi.json","mpp":"https://matrix.openverbs.com/.well-known/mpp"},{"id":"regex","name":"Regular Expressions","description":"ReDoS-safe regular expressions powered by RE2 — test, find matches with numbered and named capture groups, replace, and split. RE2 guarantees linear-time evaluation, so untrusted patterns can never cause catastrophic backtracking.","category":"text","url":"https://regex.openverbs.com","openapi":"https://regex.openverbs.com/openapi.json","mpp":"https://regex.openverbs.com/.well-known/mpp"},{"id":"bitwise","name":"Bitwise Integer Ops","description":"Arbitrary-precision integer bit manipulation — AND/OR/XOR across many operands, width-bounded NOT, logical shift, circular rotate, and bit analysis (population count, trailing zeros, power-of-two). No 32-bit ceiling.","category":"compute","url":"https://bitwise.openverbs.com","openapi":"https://bitwise.openverbs.com/openapi.json","mpp":"https://bitwise.openverbs.com/.well-known/mpp"},{"id":"checksum","name":"Integrity Checksums","description":"Fast non-cryptographic integrity checksums — CRC-32, CRC-16 (CCITT/XMODEM/Modbus/IBM variants), Adler-32 and Fletcher-16/32 — for error detection in files and protocols. For security use the `hash` verb instead.","category":"compute","url":"https://checksum.openverbs.com","openapi":"https://checksum.openverbs.com/openapi.json","mpp":"https://checksum.openverbs.com/.well-known/mpp"},{"id":"numtheory","name":"Number Theory","description":"Elementary number theory on arbitrary-precision integers — GCD and LCM, prime factorization, primality testing, Euler's totient, and modular exponentiation.","category":"compute","url":"https://numtheory.openverbs.com","openapi":"https://numtheory.openverbs.com/openapi.json","mpp":"https://numtheory.openverbs.com/.well-known/mpp"},{"id":"combinatorics","name":"Combinatorics","description":"Exact combinatorial counting on arbitrary-precision integers — factorials, permutations (nPr), combinations (nCr), multinomial coefficients and Catalan numbers.","category":"compute","url":"https://combinatorics.openverbs.com","openapi":"https://combinatorics.openverbs.com/openapi.json","mpp":"https://combinatorics.openverbs.com/.well-known/mpp"},{"id":"spreadsheet","name":"Spreadsheet References","description":"A1 / R1C1 cell-reference arithmetic — convert A1 references to row/column coordinates and back, translate column letters to indices, and parse A1 ranges into their extent.","category":"compute","url":"https://spreadsheet.openverbs.com","openapi":"https://spreadsheet.openverbs.com/openapi.json","mpp":"https://spreadsheet.openverbs.com/.well-known/mpp"},{"id":"distribution","name":"Probability Distributions","description":"Probability distributions — normal, Student's t, binomial and Poisson — each with density/mass, cumulative distribution and quantile (inverse-CDF) functions.","category":"compute","url":"https://distribution.openverbs.com","openapi":"https://distribution.openverbs.com/openapi.json","mpp":"https://distribution.openverbs.com/.well-known/mpp"},{"id":"chem","name":"Chemistry","description":"Periodic-table lookup and molar-mass computation — look up any of the 118 elements by symbol, name or atomic number, search the table, and compute the molar mass and composition of a chemical formula.","category":"science","url":"https://chem.openverbs.com","openapi":"https://chem.openverbs.com/openapi.json","mpp":"https://chem.openverbs.com/.well-known/mpp"},{"id":"creditcard","name":"Payment Card Numbers","description":"Payment-card number utilities — Luhn validation, network/brand detection, masking, display formatting and Luhn-valid TEST-number generation. Not a fraud or authorization check.","category":"validation","url":"https://creditcard.openverbs.com","openapi":"https://creditcard.openverbs.com/openapi.json","mpp":"https://creditcard.openverbs.com/.well-known/mpp"},{"id":"macaddress","name":"MAC Addresses","description":"MAC / EUI-48 & EUI-64 address utilities — parse and normalize any notation, inspect unicast/multicast and universal/local properties, reformat, derive the EUI-64 / IPv6 link-local identifier, and generate random addresses.","category":"network","url":"https://macaddress.openverbs.com","openapi":"https://macaddress.openverbs.com/openapi.json","mpp":"https://macaddress.openverbs.com/.well-known/mpp"},{"id":"physics","name":"Physics constants","description":"CODATA 2018 physical-constants lookup — resolve any of the fundamental constants by key, symbol or name, search the table, or list them by category. Each result carries the recommended value, unit and relative standard uncertainty.","category":"science","url":"https://physics.openverbs.com","openapi":"https://physics.openverbs.com/openapi.json","mpp":"https://physics.openverbs.com/.well-known/mpp"},{"id":"wallet","name":"Crypto wallet addresses","description":"Blockchain address validation and normalisation — validate Ethereum and Bitcoin addresses, detect a chain from an address, apply the EIP-55 checksum, and normalise addresses to canonical form.","category":"crypto","url":"https://wallet.openverbs.com","openapi":"https://wallet.openverbs.com/openapi.json","mpp":"https://wallet.openverbs.com/.well-known/mpp"},{"id":"music","name":"Music theory","description":"Music-theory primitives — parse notes and their frequency/MIDI number, name the interval between two notes, transpose, and build scales and chords with correct diatonic spelling. Standard pitch A4 = 440 Hz.","category":"media","url":"https://music.openverbs.com","openapi":"https://music.openverbs.com/openapi.json","mpp":"https://music.openverbs.com/.well-known/mpp"},{"id":"astro","name":"Astronomy","description":"Astronomy primitives — the astronomical Julian Date of an instant, sunrise/sunset/solar-noon for a location, the Moon's phase and illumination, and the astronomical season. All times UTC.","category":"science","url":"https://astro.openverbs.com","openapi":"https://astro.openverbs.com/openapi.json","mpp":"https://astro.openverbs.com/.well-known/mpp"},{"id":"iso","name":"ISO registries","description":"ISO standard registries — 3166-1 countries, 4217 currencies and 639 languages. Resolve any record by its codes or name, or fuzzy-search across one or all registries.","category":"reference","url":"https://iso.openverbs.com","openapi":"https://iso.openverbs.com/openapi.json","mpp":"https://iso.openverbs.com/.well-known/mpp"},{"id":"postal","name":"Postal codes","description":"Postal / ZIP code validation by country — check a code against its ISO 3166-1 alpha-2 pattern, normalise casing and whitespace, inspect a country's pattern, or list every supported country.","category":"validation","url":"https://postal.openverbs.com","openapi":"https://postal.openverbs.com/openapi.json","mpp":"https://postal.openverbs.com/.well-known/mpp"},{"id":"encoding","name":"Character encoding","description":"Character-set and Unicode utilities — detect the charset of a byte buffer, transcode bytes between character sets, apply Unicode normalisation forms, and inspect a string's code points and byte layout.","category":"text","url":"https://encoding.openverbs.com","openapi":"https://encoding.openverbs.com/openapi.json","mpp":"https://encoding.openverbs.com/.well-known/mpp"},{"id":"nato","name":"Phonetic & Morse","description":"NATO/ICAO phonetic alphabet and international Morse code — spell text phonetically and back, and encode/decode Morse.","category":"text","url":"https://nato.openverbs.com","openapi":"https://nato.openverbs.com/openapi.json","mpp":"https://nato.openverbs.com/.well-known/mpp"},{"id":"emoji","name":"Emoji","description":"Emoji utilities — look an emoji up by shortcode or name, fuzzy-search by keyword, inspect an emoji's code points and metadata, and build country-flag emoji.","category":"content","url":"https://emoji.openverbs.com","openapi":"https://emoji.openverbs.com/openapi.json","mpp":"https://emoji.openverbs.com/.well-known/mpp"},{"id":"chemeq","name":"Chemical equations","description":"Chemical-reaction maths — balance equations into whole-number coefficients (exact rational null-space), run mole/mass stoichiometry from one known species to another, and find the limiting reagent with theoretical yields.","category":"science","url":"https://chemeq.openverbs.com","openapi":"https://chemeq.openverbs.com/openapi.json","mpp":"https://chemeq.openverbs.com/.well-known/mpp"},{"id":"dice","name":"Dice","description":"RPG dice-notation utilities — parse notation like \"3d6+2\" or \"4d6kh3\", roll it with a cryptographically secure RNG, or compute the exact probability distribution (mean, variance, min/max and the full pmf) with no sampling.","category":"games","url":"https://dice.openverbs.com","openapi":"https://dice.openverbs.com/openapi.json","mpp":"https://dice.openverbs.com/.well-known/mpp"},{"id":"braille","name":"Braille","description":"Unicode braille utilities — transcribe text to grade-1 (uncontracted) English braille and back, and convert between braille cells and their raised-dot numbers.","category":"content","url":"https://braille.openverbs.com","openapi":"https://braille.openverbs.com/openapi.json","mpp":"https://braille.openverbs.com/.well-known/mpp"},{"id":"emailauth","name":"Email authentication","description":"Parse and validate the email-authentication DNS records SPF, DMARC and DKIM, and evaluate an SPF record against an IPv4/IPv6 address, with honest handling of DNS-dependent SPF mechanisms.","category":"email","url":"https://emailauth.openverbs.com","openapi":"https://emailauth.openverbs.com/openapi.json","mpp":"https://emailauth.openverbs.com/.well-known/mpp"},{"id":"readability","name":"Readability","description":"English readability analysis — the standard formulas (Flesch Reading Ease, Flesch–Kincaid, Gunning fog, SMOG, Coleman–Liau, ARI), a consensus grade level, per-word syllable counts and reading/speaking-time estimates.","category":"text","url":"https://readability.openverbs.com","openapi":"https://readability.openverbs.com/openapi.json","mpp":"https://readability.openverbs.com/.well-known/mpp"},{"id":"unicode","name":"Unicode","description":"Inspect Unicode code points and look up characters by name, block or script over a Unicode Character Database subset. Handles algorithmic CJK, Tangut and Hangul names.","category":"text","url":"https://unicode.openverbs.com","openapi":"https://unicode.openverbs.com/openapi.json","mpp":"https://unicode.openverbs.com/.well-known/mpp"},{"id":"useragent","name":"User-Agent","description":"Parse and classify User-Agent strings — browser, engine, OS and device — and detect bots, crawlers, AI agents and HTTP tools. Unknown components are reported honestly as null.","category":"web","url":"https://useragent.openverbs.com","openapi":"https://useragent.openverbs.com/openapi.json","mpp":"https://useragent.openverbs.com/.well-known/mpp"},{"id":"geocode","name":"Geocoding","description":"Forward and reverse geocoding: address → coordinates and coordinates → address, with structured, normalized results.","category":"location","url":"https://geocode.openverbs.com","openapi":"https://geocode.openverbs.com/openapi.json","mpp":"https://geocode.openverbs.com/.well-known/mpp"},{"id":"search","name":"Web, News, Video, Image, Scholar, Wikipedia & Local Search","description":"Live search-engine results — organic web (Google or Bing), Google News, YouTube videos, Google Images, scholarly/academic papers (OpenAlex), Wikipedia article summaries, local places and autocomplete suggestions — with ranked, structured hits.","category":"web","url":"https://search.openverbs.com","openapi":"https://search.openverbs.com/openapi.json","mpp":"https://search.openverbs.com/.well-known/mpp"},{"id":"sentiment","name":"Market & Brand Sentiment","description":"Market & brand sentiment for any keyword, brand, ticker or product, computed from the sentiment of web and news content that mentions it.","category":"web","url":"https://sentiment.openverbs.com","openapi":"https://sentiment.openverbs.com/openapi.json","mpp":"https://sentiment.openverbs.com/.well-known/mpp"},{"id":"places","name":"Places — Google Business Profiles & Local Business Search","description":"Google Business Data: look up a business's full profile (rating, hours, categories, place_id, coordinates) by name, or search the local-business directory within a radius by category and name.","category":"web","url":"https://places.openverbs.com","openapi":"https://places.openverbs.com/openapi.json","mpp":"https://places.openverbs.com/.well-known/mpp"},{"id":"products","name":"Product Search & Data (Amazon + Google Shopping)","description":"Live retail product data for shopping agents — Amazon keyword search, ASIN detail and multi-seller offers, plus Google Shopping product search across sellers, with prices, ratings, reviews and availability.","category":"business","url":"https://products.openverbs.com","openapi":"https://products.openverbs.com/openapi.json","mpp":"https://products.openverbs.com/.well-known/mpp"},{"id":"seo","name":"SEO Keyword, Backlink & Site Audit Data","description":"SEO data for content and marketing agents — keyword research (search volume, CPC, difficulty, intent), Google Trends search interest, domain rankings, competitors, backlink profiles (domain rank, referring domains, spam score), on-page SEO audits and page-speed / Core Web Vitals.","category":"business","url":"https://seo.openverbs.com","openapi":"https://seo.openverbs.com/openapi.json","mpp":"https://seo.openverbs.com/.well-known/mpp"},{"id":"urltrust","name":"URL & Domain Trust","description":"Trust and phishing analysis for a link or a domain. `analyze` runs offline lexical phishing checks on a URL (IP hosts, embedded credentials, punycode, brand typosquatting, brand-in-subdomain, abused TLDs, shorteners) → risk score, verdict and reasons. `domain` scores a domain's reputation from live signals (RDAP registration age, DNS/MX presence) → age, records and a trust score.","category":"trust-safety","url":"https://urltrust.openverbs.com","openapi":"https://urltrust.openverbs.com/openapi.json","mpp":"https://urltrust.openverbs.com/.well-known/mpp"},{"id":"chain","name":"On-Chain Reads (EVM + Bitcoin)","description":"Live on-chain data. EVM networks (Ethereum, Base, Arbitrum, Optimism, Polygon): gas, address balance/nonce/contract detection, ERC-20 token metadata and wallet token balances, transaction status and block info, plain-language transaction explains, deterministic ERC-20 token-risk scans, ENS name resolution (resolve, reverse, text records), NFT metadata and function-selector/calldata decoding. Bitcoin (`btc-*` ops): recommended fees, mempool congestion, address balance/history and transaction status. Live reads with automatic endpoint fallback.","category":"crypto","url":"https://chain.openverbs.com","openapi":"https://chain.openverbs.com/openapi.json","mpp":"https://chain.openverbs.com/.well-known/mpp"},{"id":"preflight","name":"x402 Endpoint Preflight","description":"Inspect any x402 endpoint's payment challenge before paying: price, asset, network, payTo, input schema, and MPP/Bazaar support. SSRF-hardened outbound fetch.","category":"trust-safety","url":"https://preflight.openverbs.com","openapi":"https://preflight.openverbs.com/openapi.json","mpp":"https://preflight.openverbs.com/.well-known/mpp"},{"id":"mcpscan","name":"MCP Manifest Scanner","description":"Static security scan of a Model Context Protocol server manifest: dangerous capabilities, prompt injection, hidden unicode and unconstrained parameters. Deterministic and fully offline.","category":"trust-safety","url":"https://mcpscan.openverbs.com","openapi":"https://mcpscan.openverbs.com/openapi.json","mpp":"https://mcpscan.openverbs.com/.well-known/mpp"},{"id":"gleif","name":"Legal Entity Identifier (LEI) Lookup","description":"Authoritative legal-entity identity via the Legal Entity Identifier (LEI): resolve an LEI to its name, status, jurisdiction and address, search by legal name, or retrieve direct and ultimate accounting-consolidating parents with reporting exceptions. Global CC0 registry data for counterparty diligence.","category":"business","url":"https://gleif.openverbs.com","openapi":"https://gleif.openverbs.com/openapi.json","mpp":"https://gleif.openverbs.com/.well-known/mpp"},{"id":"edgar","name":"SEC EDGAR Company Filings & Financials","description":"U.S. public-company filings and financials: resolve a ticker or company name to a CIK, list filing history (10-K, 10-Q, 8-K and more), and read exact XBRL financial facts (revenue, net income, assets) from as-filed statements. Authoritative, as-reported numbers.","category":"finance","url":"https://edgar.openverbs.com","openapi":"https://edgar.openverbs.com/openapi.json","mpp":"https://edgar.openverbs.com/.well-known/mpp"},{"id":"id","name":"Unique Identifiers (UUID + ULID)","description":"Generate and inspect unique identifiers in one place. `uuid` mints RFC 4122/9562 UUIDs (v4 random, v7 time-ordered); `inspect` parses a UUID's version, variant and embedded timestamp. `ulid` mints lexicographically sortable ULIDs; `decode` parses a ULID's timestamp and entropy. Deterministic.","category":"compute","url":"https://id.openverbs.com","openapi":"https://id.openverbs.com/openapi.json","mpp":"https://id.openverbs.com/.well-known/mpp"},{"id":"similarity","name":"String Similarity & Fuzzy Name Matching","description":"String similarity and fuzzy matching. Edit-distance and set metrics — Levenshtein, Damerau-Levenshtein, Hamming, Jaro-Winkler, Sørensen-Dice, Jaccard — plus phonetic encoders (Soundex, Metaphone, Double Metaphone) and phonetic comparison. Everything an agent needs for dedup, record linkage and name matching. Deterministic.","category":"text","url":"https://similarity.openverbs.com","openapi":"https://similarity.openverbs.com/openapi.json","mpp":"https://similarity.openverbs.com/.well-known/mpp"},{"id":"geospatial","name":"Geospatial Coordinates, Projections & Geodesy","description":"Geospatial math in one place. Coordinate-format conversion (decimal ↔ DMS, UTM, MGRS); Web Mercator (EPSG:3857) forward/inverse projection with slippy-map tile and quadkey helpers; and geodesy — haversine distance, geohash encode/decode, point-in-polygon and timezone-from-coordinates. Deterministic.","category":"compute","url":"https://geospatial.openverbs.com","openapi":"https://geospatial.openverbs.com/openapi.json","mpp":"https://geospatial.openverbs.com/.well-known/mpp"},{"id":"scan","name":"Security & Privacy Checks","description":"Security and privacy checks: offline leaked-secret scanning and PII detection/redaction for prompts, logs and tool output, plus live CISA known-exploited vulnerability (KEV) catalog checks by CVE for patch prioritization.","category":"trust-safety","url":"https://scan.openverbs.com","openapi":"https://scan.openverbs.com/openapi.json","mpp":"https://scan.openverbs.com/.well-known/mpp"}],"resources":[{"url":"https://tokens.openverbs.com/v1/count","method":"POST","description":"Count the LLM tokens in text for a given model or encoding — exact for OpenAI and open models (Llama, Mistral, Qwen, Gemma, DeepSeek, Command-R); labelled-approximate for Claude & Gemini.","tags":["count llm tokens","token count api","count text tokens","estimate prompt tokens","model tokenizer count","openai token count"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://phone.openverbs.com/v1/parse","method":"POST","description":"Parse, validate and format a phone number — E.164/national/international/RFC 3966, region and line type (syntactic validation, no carrier lookup).","tags":["parse phone number","validate phone number","format e164 number","phone number lookup","international phone validation","libphonenumber api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://crypto.openverbs.com/v1/price","method":"POST","description":"Crypto & token prices: live USD spot price for one or more coins/tokens by coin id — market coins (e.g. \"coingecko:bitcoin\", \"coingecko:ethereum\") or any ERC-20 by contract (e.g. \"ethereum:0xdAC17...\"). Real-time bitcoin, ethereum and token price feed from an open, redistribution-OK source. Unknown ids are returned in `notFound`.","tags":["crypto","bitcoin-price","token-price","contract-address","dex"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.001","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://crypto.openverbs.com/v1/history","method":"POST","description":"Token price history: historical USD price series (price chart data) for one coin/token by coin id (e.g. \"coingecko:bitcoin\", \"ethereum:0xdAC17…\"). Returns evenly spaced `points` over the last `span` periods.","tags":["crypto","price-history","historical-prices","bitcoin-price-history","crypto-chart"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.003","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://crypto.openverbs.com/v1/market-cap","method":"POST","description":"Crypto market cap: total cryptocurrency market capitalization (USD), 24h trading volume, Bitcoin (BTC) and Ethereum (ETH) dominance, 24h market-cap change and active coin/market counts. Whole-market context behind any single coin's move. Data source: CoinLore.","tags":["crypto","market-cap","crypto-market-cap","btc-dominance","market-overview"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.003","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://crypto.openverbs.com/v1/trending","method":"POST","description":"Trending crypto by 24h price momentum: the biggest gainers and losers among the top coins by market cap, each with symbol, rank, USD price, 24h change % and market cap. A momentum/discovery signal for agents. Data source: CoinLore.","tags":["crypto","trending","trending-crypto","top-movers","gainers","losers","top-gainers","crypto-movers","price-movers","momentum","24h-change","market-data"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.003","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://crypto.openverbs.com/v1/tvl","method":"POST","description":"Total value locked (USD) for a DeFi protocol (e.g. \"aave\") or a whole chain (e.g. \"Ethereum\"). Provide exactly one of `protocol` or `chain`.","tags":["total value locked","defi tvl","protocol tvl","chain tvl","tvl api","defi analytics"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.003","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://crypto.openverbs.com/v1/defi-overview","method":"POST","description":"DeFi market overview: total value locked (USD) across all chains, the chain count, and the top chains by TVL with each chain's TVL dominance. This is DeFi TVL — not total crypto market cap.","tags":["defi market overview","total value locked","total defi tvl","defi tvl by chain","chain tvl ranking","defi market size"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.003","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://crypto.openverbs.com/v1/protocols","method":"POST","description":"Top DeFi protocols ranked by total value locked (USD), with 1d/7d TVL change, category and chains. Optional filters: `chain` (ranks by that chain's TVL) and `category` (e.g. \"Dexes\", \"Lending\"). Centralised-exchange reserves are excluded.","tags":["top defi protocols","defi protocol rankings","protocol tvl ranking","biggest defi protocols","defi tvl by protocol","defi analytics"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.003","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://crypto.openverbs.com/v1/protocol","method":"POST","description":"Total value locked (USD) for one DeFi protocol by DefiLlama slug or name (e.g. \"aave-v3\", \"lido\", \"uniswap-v3\"): current TVL, per-chain TVL breakdown, 1h/1d/7d TVL change, category, chains, token symbol and market cap. Optional `chain` also returns that chain's TVL for the protocol. Unknown names return `found:false` with slug `suggestions`.","tags":["protocol tvl","defi protocol tvl","aave tvl","uniswap tvl","lido tvl","tvl by protocol","defi protocol data"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.001","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://crypto.openverbs.com/v1/categories","method":"POST","description":"Crypto categories & sectors ranked by total value locked (USD): each DeFi narrative (e.g. Dexes, Lending, Liquid Staking, Restaking, RWA) with its aggregate TVL, protocol count and share of total DeFi TVL. A map of where capital sits across sectors. Centralised-exchange reserves are excluded.","tags":["crypto","categories","sectors","narratives","defi"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://crypto.openverbs.com/v1/dex-volume","method":"POST","description":"Decentralised exchange (DEX) trading volume: total 24h and 7d USD volume with 1d/7d change, plus the top DEXs by 24h volume. Optional `chain` filter scopes the totals and ranking to one chain.","tags":["dex-volume","dex-trading-volume","defi-volume","dex-rankings","trading-volume"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.003","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://crypto.openverbs.com/v1/fees","method":"POST","description":"DeFi protocol fees and revenue: total 24h and 7d fees (USD) paid by users across protocols, plus the top protocols by 24h fees with each one's 24h revenue where reported. Optional `chain` filter scopes totals and ranking to one chain.","tags":["protocol fees","defi fees","protocol revenue","defi revenue","fees and revenue","top earning protocols"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.003","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://crypto.openverbs.com/v1/options","method":"POST","description":"Onchain options trading volume (premium): total 24h/7d/30d USD volume with 1d/7d change, plus the top options protocols by 24h volume. Optional `chain` filter scopes the totals and ranking to one chain.","tags":["options volume","onchain options volume","crypto options volume","defi options","options trading volume","options dex volume"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.003","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://crypto.openverbs.com/v1/dex-aggregators","method":"POST","description":"DEX aggregator trading volume: total 24h/7d/30d USD volume with 1d/7d change, plus the top aggregators (1inch, CowSwap, Jupiter, etc.) by 24h volume. Optional chain filter scopes the totals and ranking to one chain.","tags":["dex aggregator volume","dex aggregators","1inch volume","jupiter volume","cowswap volume","swap aggregator volume","defi trading volume"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.003","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://crypto.openverbs.com/v1/stablecoins","method":"POST","description":"Stablecoin market: total circulating market cap (USD) and the largest stablecoins by mcap with their peg type, peg mechanism (e.g. fiat-backed, crypto-backed) and dominance.","tags":["stablecoin market cap","stablecoin supply","usdt usdc supply","stablecoin circulating supply","total stablecoin mcap","stablecoin rankings"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.003","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://crypto.openverbs.com/v1/yields","method":"POST","description":"Top DeFi yield pools ranked by APY, with optional filters (chain, project, stablecoin-only, minimum TVL). Dust pools below `minTvlUsd` (default $10k) are excluded so reported APYs are meaningful.","tags":["defi yields","best defi apy","yield farming rates","stablecoin yield","highest apy pools","defi lending rates"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.003","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://crypto.openverbs.com/v1/staking","method":"POST","description":"Crypto staking rewards: live staking APY and TVL for liquid-staking and restaking protocols (Lido, Rocket Pool, ether.fi, Jito, Binance, …), ranked by size. Filter by asset (e.g. ETH, SOL), chain or protocol. Data source: DefiLlama.","tags":["staking rewards","staking rewards api","liquid staking apy","staking apy api","restaking rewards"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.003","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://crypto.openverbs.com/v1/fear-greed","method":"POST","description":"Crypto sentiment via the live Fear and Greed Index (0-100 with classification, e.g. Fear/Greed). Optionally include a short historical series. Source: alternative.me.","tags":["crypto","fear-greed","crypto-sentiment","market-sentiment","fear-and-greed"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.003","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://crypto.openverbs.com/v1/buzz","method":"POST","description":"Web buzz for a coin/token: total count of web mentions (news, blogs, forums) plus an emotion breakdown (happiness, anger, love, sadness, fun) and a 0-1 positivityScore. A social/editorial signal distinct from the market Fear and Greed index and news lists.","tags":["crypto buzz","crypto social sentiment","crypto web mentions","coin sentiment","bitcoin buzz","token sentiment analysis","crypto media sentiment"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.05","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://crypto.openverbs.com/v1/news","method":"POST","description":"Crypto news API: live cryptocurrency news headlines for a query (e.g. \"bitcoin etf\", \"ethereum upgrade\", \"solana\"), from Google News and localised by location/language. Returns ranked articles with title, URL, domain and, where available, source and publish time.","tags":["crypto-news","crypto","bitcoin-news","defi-news","financial-news"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.005","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://crypto.openverbs.com/v1/trends","method":"POST","description":"Google Trends search interest for crypto terms (e.g. [\"bitcoin\",\"solana\"], up to 5): a relative 0-100 popularity series over time, with per-keyword average and latest value. Optional `location` (default worldwide), `timeframe` (7d/30d/90d/12m/5y, default 12m) and `type` (web/news/youtube). Measures retail attention, not on-chain state.","tags":["crypto trends","google trends","bitcoin search interest","crypto search volume","token popularity","retail interest","crypto hype"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.03","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://crypto.openverbs.com/v1/derivatives","method":"POST","description":"Crypto perpetual-futures data from on-chain perp DEXs: per market the funding rate (hourly + annualized %), open interest (USD and base units), mark & oracle price, 24h volume and 24h price change. Ranked by open interest; filter by `coins` or `limit`. Data source: Hyperliquid (dYdX fallback).","tags":["crypto","derivatives","perpetuals","funding-rate","open-interest"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://crypto.openverbs.com/v1/funding","method":"POST","description":"Live perpetual-futures funding rates per market — each market's funding rate as hourly, the standard 8-hour figure and annualized %, alongside mark price and open interest. Ranked by the most extreme (|annualized|) funding by default; pass `coins` to get the funding rate for a specific market (e.g. [\"BTC\",\"ETH\"]). Real-time crypto perp funding rate feed. Data source: Hyperliquid (dYdX fallback).","tags":["crypto","funding-rate","perp-funding","perpetuals","funding"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://crypto.openverbs.com/v1/ohlc","method":"POST","description":"Crypto price history as OHLC candles from on-chain perp DEXs: open/high/low/close, base volume and trade count per interval (1m, 5m, 15m, 1h, 4h, 1d) for a coin (BTC, ETH, SOL, and more). Returns up to 500 candles, oldest first. Data source: Hyperliquid (dYdX fallback).","tags":["crypto","ohlc","candles","price-history","historical-prices"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.003","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://crypto.openverbs.com/v1/orderbook","method":"POST","description":"Live L2 order book for a crypto perp market: aggregated bids and asks with price, size and resting-order count per level, plus the best bid/ask spread, spread % and mid price. Real-time market-depth snapshot for a coin (BTC, ETH, SOL, and more); pass `depth` for how many price levels per side. Data source: Hyperliquid (dYdX fallback).","tags":["crypto","order-book","orderbook","market-depth","bids-asks","l2"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://dns.openverbs.com/v1/resolve","method":"POST","description":"Resolve DNS records for a hostname — A, AAAA, CNAME, MX, TXT, NS, SOA, CAA or SRV. NXDOMAIN or an absent record type returns an empty record set.","tags":["dns lookup","resolve dns","dns records","mx record lookup","txt record lookup","nameserver lookup"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://dns.openverbs.com/v1/reverse","method":"POST","description":"Reverse-resolve an IPv4 or IPv6 address to its PTR hostname(s). No PTR record returns an empty list. This is reverse DNS (PTR) — not ENS or onchain name resolution.","tags":["reverse dns","ptr record","reverse dns lookup","ip to hostname","ptr lookup"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://fx.openverbs.com/v1/convert","method":"POST","description":"Convert an amount from one currency to another using reference rates (latest or a historical date). Amount defaults to 1.","tags":["convert currency","currency conversion api","exchange amount conversion","forex rate conversion","historical currency conversion","convert money rates"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://fx.openverbs.com/v1/rates","method":"POST","description":"Reference exchange rates for a base currency against some or all supported currencies (latest or a historical date).","tags":["exchange rates","currency rates api","forex rates lookup","historical exchange rates","base currency rates","reference fx rates"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://holidays.openverbs.com/v1/list","method":"POST","description":"List a country's holidays for a calendar year (optionally by state/region, language and type).","tags":["public holidays","list public holidays","country holidays api","bank holidays by year","holiday calendar lookup","state holidays list"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://holidays.openverbs.com/v1/check","method":"POST","description":"Check whether a specific date is a public holiday in a country (optionally by state/region).","tags":["check public holiday","is date a holiday","holiday date lookup","bank holiday check","country holiday validation","working day holiday check"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://airport.openverbs.com/v1/airport","method":"POST","description":"Look up an airport by its 3-letter IATA code or 4-character ICAO code. Provide exactly one. Returns the airport name, both codes, city, country, coordinates, elevation and type.","tags":["airport lookup","iata code lookup","icao code lookup","airport by code","airport code api","airport info"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://airport.openverbs.com/v1/search","method":"POST","description":"Fuzzy-search airports by name, city or code, optionally filtered by ISO country code or airport type. Matches are ranked exact-code/name then prefix then substring, larger airports first. Empty result is a successful 200.","tags":["airport search","find airport by name","airport by city","search airports","airport name lookup","airports in country"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://airport.openverbs.com/v1/nearest","method":"POST","description":"Find the airports nearest to a latitude/longitude, ordered by great-circle distance. Optionally cap the search radius (km), result count and airport type. Returns each airport with its distance in km.","tags":["nearest airport","closest airport","airport by coordinates","airport near lat lng","find nearby airports","airport distance"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://dictionary.openverbs.com/v1/define","method":"POST","description":"Look up the definitions of an English word. Returns one entry per sense with its part of speech, definition, example sentences and synonyms. Optionally filter by part of speech. An unknown word returns found:false with a 200.","tags":["define word","word definition","dictionary lookup","meaning of word","english dictionary","definition api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://dictionary.openverbs.com/v1/synonyms","method":"POST","description":"Return the synonyms of an English word, aggregated across all its senses. Optionally filter by part of speech. An unknown word returns found:false with a 200.","tags":["synonyms","word synonyms","thesaurus api","similar words","synonyms of word","synonym lookup"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://dictionary.openverbs.com/v1/antonyms","method":"POST","description":"Return the antonyms (opposites) of an English word, aggregated across all its senses. Optionally filter by part of speech. An unknown word returns found:false with a 200.","tags":["antonyms","word antonyms","opposite words","opposite of word","antonyms of word","antonym lookup"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://iban.openverbs.com/v1/validate","method":"POST","description":"Validate an IBAN (mod-97 checksum, length, country format) and decompose it into country, bank, branch and account parts.","tags":["validate iban","iban validation api","iban checksum check","parse iban number","bank account validation","iban lookup"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://iban.openverbs.com/v1/bic","method":"POST","description":"Validate a BIC/SWIFT code and decompose it into bank, country, location and branch codes.","tags":["validate bic","swift code validation","bic lookup","bank identifier code","parse swift code","swift bic api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://qr.openverbs.com/v1/qr","method":"POST","description":"Render text (URL, vCard, Wi-Fi config, …) as a QR code — SVG string or PNG data URL.","tags":["generate qr code","qr code api","create qr code","text to qr code","url qr code generator","qr svg png"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://qr.openverbs.com/v1/barcode","method":"POST","description":"Render a barcode (Code128, Code39, EAN-13/8, UPC-A/E, ITF-14, DataMatrix, PDF417) as SVG or PNG data URL.","tags":["generate barcode","barcode generator api","create code128 barcode","ean upc barcode","datamatrix barcode","pdf417 barcode"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://qr.openverbs.com/v1/decode","method":"POST","description":"Read the text out of a QR code or barcode in a PNG or JPEG image. Auto-detects QR, DataMatrix, PDF417, Aztec and 1D symbologies (Code128/39/93, EAN-13/8, UPC-A/E, ITF, Codabar). A valid image with no code returns { found: false }; a payload that is not a parseable image is a 400.","tags":["decode qr code","scan barcode image","read qr barcode","barcode decode api","extract code text","decode image code"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://datetime.openverbs.com/v1/convert","method":"POST","description":"Convert an ISO datetime into another timezone, with offset, weekday and Unix time.","tags":["convert timezone","timezone conversion api","date time zone convert","iana timezone lookup","world time conversion","convert iso datetime"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://datetime.openverbs.com/v1/business-days","method":"POST","description":"Add/subtract business days to a date, or count business days between two dates — skipping weekends and optional holidays.","tags":["business day math","add business days","count business days","skip weekends holidays","working days calculator","business date calculator"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://datetime.openverbs.com/v1/parse","method":"POST","description":"Parse an ISO 8601 duration such as 'P1Y2M10DT2H30M' into its components. Returns a normalized ISO string and totalSeconds — but totalSeconds is null when the duration contains years or months, because those are calendar-variable (use /v1/add or /v1/between for exact date math).","tags":["parse iso duration","iso 8601 duration parse","duration components","period string parser","parse duration api","duration to seconds"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://datetime.openverbs.com/v1/format","method":"POST","description":"Assemble an ISO 8601 duration string from individual components (years, months, weeks, days, hours, minutes, seconds) and an optional sign. All components must be non-negative and at least one must be non-zero.","tags":["format iso duration","build iso duration","duration string builder","components to duration","create period string","iso 8601 period format"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://datetime.openverbs.com/v1/humanize","method":"POST","description":"Render an ISO 8601 duration as an English phrase, e.g. 'P1Y2M' → '1 year and 2 months'. Components are shown in descending order with correct pluralization.","tags":["humanize duration","duration to text","iso duration human readable","period humanizer","explain duration string","duration phrase"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://datetime.openverbs.com/v1/add","method":"POST","description":"Add an ISO 8601 duration to a start date or date-time and return the resulting UTC instant. Calendar-aware: months and years honor month lengths (e.g. Jan 31 + P1M clamps to the last day of February). A negative-signed duration subtracts.","tags":["add duration to date","date duration math","iso duration add","calendar aware date add","add period to datetime","subtract duration from date"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://datetime.openverbs.com/v1/between","method":"POST","description":"Compute the calendar breakdown (years, months, days, hours, minutes, seconds) between two ISO 8601 dates/date-times, plus exact totalSeconds. If end precedes start the result is flagged negative rather than erroring.","tags":["duration between dates","date difference duration","calendar interval between","time between datetimes","compute date duration","dates to iso duration"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://datetime.openverbs.com/v1/to-jdn","method":"POST","description":"Convert a proleptic-Gregorian calendar date to its Julian Day Number (the integer count of days since JDN 0, 1 January 4713 BC in the proleptic Julian calendar).","tags":["date to julian day","julian day number conversion","gregorian to jdn","calendar date serial","convert date to jdn","julian day api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://datetime.openverbs.com/v1/from-jdn","method":"POST","description":"Convert a Julian Day Number back to a proleptic-Gregorian date, with the ISO weekday (1=Monday..7=Sunday) and its name.","tags":["julian day to date","jdn to gregorian date","julian day lookup","convert jdn to date","julian day weekday","jdn calendar conversion"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://datetime.openverbs.com/v1/weekday","method":"POST","description":"Return the ISO weekday (1=Monday..7=Sunday) and its name for a Gregorian date.","tags":["day of week","weekday lookup","date weekday api","gregorian weekday","find weekday for date","calendar weekday"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://datetime.openverbs.com/v1/iso-week","method":"POST","description":"Return the ISO-8601 week-numbering year, week number (1..53) and weekday (1=Monday..7=Sunday) for a Gregorian date. The ISO year can differ from the calendar year around New Year.","tags":["iso week number","week number lookup","iso 8601 week","date to iso week","calendar week api","week numbering year"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://datetime.openverbs.com/v1/easter","method":"POST","description":"Compute the date of Western (Gregorian) Easter Sunday for a year in 1583..9999 using the Anonymous Gregorian computus.","tags":["easter date","calculate easter","gregorian easter date","western easter calculator","easter computus","easter sunday lookup"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://datetime.openverbs.com/v1/day-of-year","method":"POST","description":"Return the ordinal day of the year (1..366), the number of days in that year and whether it is a leap year.","tags":["day of year","ordinal date lookup","date to day number","leap year day count","year day calculator","days in year"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://tls.openverbs.com/v1/inspect","method":"POST","description":"Open an SSL/TLS connection to a host and report its certificate — issuer, subject, validity window, days remaining, SANs, fingerprint and trust status.","tags":["ssl certificate lookup","ssl certificate inspection","tls certificate check","check certificate expiry","x509 certificate details","certificate fingerprint"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://rdap.openverbs.com/v1/domain","method":"POST","description":"Look up a domain's RDAP registration data — registrar, status, creation/expiry/update dates, nameservers and DNSSEC. Unregistered domains return found:false.","tags":["domain rdap lookup","whois domain lookup","domain registration data","registrar lookup","domain expiry check","nameserver lookup"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://email.openverbs.com/v1/validate","method":"POST","description":"Validate an email address — syntax, MX/A deliverability lookup, and disposable / role-based address detection. No mailbox probing.","tags":["validate email address","email deliverability check","mx record lookup","disposable email detection","role email detection","email verification api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://vat.openverbs.com/v1/norway","method":"POST","description":"Validate a Norwegian VAT (MVA) number against the official business register. Validity means the entity exists and is entered in the VAT register.","tags":["norwegian vat validation","norway mva lookup","validate norway org number","bronnoysund vat check","norwegian business register","norway vat api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://vat.openverbs.com/v1/finland","method":"POST","description":"Validate a Finnish VAT (ALV) number against the official VAT register. Validity means the entity exists and holds a live registration.","tags":["finnish vat validation","finland alv lookup","validate finnish business id","ytj company lookup","finland vat api","y tunnus validation"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://vat.openverbs.com/v1/france","method":"POST","description":"Validate a French VAT (TVA) number against the official company register. Validity means the SIREN exists and the company is administratively active.","tags":["french vat validation","france tva lookup","validate french siren","siren company lookup","france vat api","french business register"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://vat.openverbs.com/v1/czechia","method":"POST","description":"Validate a Czech VAT (DIČ) number for a legal entity against the official register. Validity means the subject exists and is live in the VAT (DPH) register.","tags":["czech vat validation","czechia dic lookup","validate czech ico","ares company lookup","czech vat api","czech business register"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://vat.openverbs.com/v1/poland","method":"POST","description":"Validate a Polish VAT (NIP) number against the official VAT register. Validity means the taxpayer's VAT status is active (Czynny).","tags":["polish vat validation","poland nip lookup","validate polish nip","vat white list lookup","poland vat api","polish taxpayer status"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://vat.openverbs.com/v1/latvia","method":"POST","description":"Validate a Latvian VAT (PVN) number against the official VAT-payers register. Validity means the number has a currently active entry in the register.","tags":["latvian vat validation","latvia pvn lookup","validate latvian vat","vid vat register","latvia vat api","latvian business register"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://wikidata.openverbs.com/v1/search","method":"POST","description":"Search Wikidata for entities matching a text query, returning candidate Q-ids with labels and descriptions.","tags":["search wikidata","wikidata entity search","knowledge graph search","find qid","entity lookup api","wikidata query search"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://wikidata.openverbs.com/v1/entity","method":"POST","description":"Fetch a Wikidata entity by Q-id: label, description, aliases and its claims (property → values).","tags":["get wikidata entity","wikidata qid lookup","fetch entity claims","wikidata claims api","knowledge entity details","qid entity lookup"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://color.openverbs.com/v1/convert","method":"POST","description":"Parse any CSS color and return it as hex, rgb, hsl, hwb, lab, lch and oklch.","tags":["convert color","css color conversion","hex rgb hsl converter","oklch color conversion","parse css color","color format api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://color.openverbs.com/v1/contrast","method":"POST","description":"Compute the WCAG 2.1 contrast ratio between two colors and whether it passes AA/AAA.","tags":["wcag contrast check","color contrast ratio","accessibility color check","aa aaa contrast","foreground background contrast","text contrast api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://color.openverbs.com/v1/scheme","method":"POST","description":"Generate a harmony scheme (complementary, analogous, triadic, tetradic, monochromatic) from a base color.","tags":["color scheme generator","generate color palette","color harmony scheme","complementary colors","analogous color palette","triadic color scheme"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://color.openverbs.com/v1/nearest-named","method":"POST","description":"Find the nearest CSS named color to a given color, by perceptual distance.","tags":["nearest named color","css color name lookup","find color name","color name matching","named css color","closest color name"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://password.openverbs.com/v1/strength","method":"POST","description":"Estimate password strength: score, guesses, crack-time and feedback. Never stored.","tags":["password strength check","estimate password strength","zxcvbn password score","password crack time","password feedback api","credential strength analysis"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://password.openverbs.com/v1/generate","method":"POST","description":"Generate a secure random password (characters) or a wordlist passphrase.","tags":["generate password","secure password generator","random password api","generate passphrase","diceware passphrase","password entropy generator"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://ical.openverbs.com/v1/parse","method":"POST","description":"Parse an .ics document into structured calendar events (summary, times, location, RRULE, attendees).","tags":["parse icalendar","parse ics file","ics event parser","calendar event extraction","read ical events","icalendar parser api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://ical.openverbs.com/v1/expand","method":"POST","description":"Expand an RRULE recurrence rule into its occurrence datetimes, with a human-readable description.","tags":["expand recurrence","rrule expansion","recurrence occurrences","calendar recurrence api","expand rrule dates","recurring event schedule"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://ical.openverbs.com/v1/create","method":"POST","description":"Build a valid .ics document from event fields (summary, start/end, location, …).","tags":["create icalendar","generate ics file","build calendar invite","ical event generator","ics document builder","create calendar event"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://semver.openverbs.com/v1/parse","method":"POST","description":"Parse a semantic version into major/minor/patch, prerelease and build metadata.","tags":["parse semver","semantic version parser","version metadata lookup","normalize package version","extract prerelease build","semver api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://semver.openverbs.com/v1/compare","method":"POST","description":"Compare two semantic versions and report which is greater (precedence-aware).","tags":["compare semver versions","version precedence check","which version is newer","sort package versions","semver compare api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://semver.openverbs.com/v1/satisfies","method":"POST","description":"Test whether a version satisfies a semver range (^, ~, x-ranges, ||, hyphen).","tags":["check semver range","version range satisfaction","validate package version range","npm semver satisfies","test version constraint","semver range api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://slug.openverbs.com/v1/create","method":"POST","description":"Convert text into a URL-safe slug: transliterate accents, apply a locale character map, and join with a separator.","tags":["create url slug","slugify text","text to slug","generate permalink slug","transliterate accents","url safe slug api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://mime.openverbs.com/v1/lookup","method":"POST","description":"Resolve a filename, path or extension to its MIME type, charset and full Content-Type.","tags":["mime type lookup","file extension mime","filename content type","detect media type","path to mime type","content type api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://mime.openverbs.com/v1/extension","method":"POST","description":"Resolve a MIME type to its default file extension.","tags":["mime to extension","content type extension","media type lookup","default file extension","extension from mime type","mime extension api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://web.openverbs.com/v1/extract","method":"POST","description":"Fetch a URL and return its main article as clean HTML, Markdown and plain text.","tags":["extract article text","readable content api","url to markdown","web page to text","html article extraction","fetch article content"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://web.openverbs.com/v1/unfurl","method":"POST","description":"Fetch a URL and return link-preview metadata from Open Graph, Twitter Card and standard meta tags.","tags":["link preview api","unfurl url metadata","open graph lookup","twitter card metadata","fetch page preview","url metadata extraction"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://web.openverbs.com/v1/structured","method":"POST","description":"Fetch a URL and pull out its machine-readable structured data: all JSON-LD blocks (schema.org), Open Graph and Twitter Card tags, standard named meta tags, and inline microdata items. Also returns the page title, canonical URL, language and the distinct schema.org types found. Ideal for turning a product, article, recipe, event or organization page into structured fields without bespoke scraping.","tags":["extract structured data","json ld extraction","schema org lookup","open graph structured data","microdata parser api","web page schema extraction"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://web.openverbs.com/v1/sitemap","method":"POST","description":"Discover a site's XML sitemaps (via robots.txt Sitemap: directives, an explicit sitemap URL, or the conventional /sitemap.xml) and parse them into a bounded list of URLs with their lastmod, changefreq and priority. Follows sitemap-index files to their child sitemaps. Fetches and URL counts are capped (with a `truncated` flag) to stay fast and memory-bounded. The reliable way for an agent to enumerate a site's pages.","tags":["parse sitemap","discover sitemap urls","robots sitemap lookup","website page enumeration","sitemap xml parser","list site urls"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://web.openverbs.com/v1/headers","method":"POST","description":"Fetch a URL (following redirects) and return the final response's HTTP headers, the server banner and content-type, plus a security-header audit reporting HSTS, Content-Security-Policy, X-Content-Type-Options, X-Frame-Options, Referrer-Policy, Permissions-Policy and the cross-origin policies (with the missing ones listed). No body is downloaded or parsed.","tags":["http headers lookup","response headers api","check security headers","hsts csp inspector","server header check","fetch url headers"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.003","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://web.openverbs.com/v1/redirects","method":"POST","description":"Follow a URL's redirect chain (301/302/303/307/308) to its final destination and return every hop with its status and Location. Unwraps link shorteners and cloaked/tracking links so an agent can see where a link really goes before following it. Each hop is SSRF-validated and the chain is capped.","tags":["url redirect tracer","follow redirect chain","unshorten url api","expand short link","resolve final url","http redirect lookup"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.003","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://web.openverbs.com/v1/robots","method":"POST","description":"Fetch a site's robots.txt and evaluate crawl permissions: given a URL (plus optional extra paths) and a user-agent, return whether each path is allowed or disallowed, the rule that matched, the user-agent group, the crawl-delay and any declared sitemaps. Implements the Robots Exclusion Protocol (RFC 9309) with longest-match-wins, Allow-over-Disallow tie-breaking and * / $ wildcards.","tags":["robots.txt parser","robots txt checker","is url crawlable","crawl permission api","user-agent allow disallow","crawler compliance api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://web.openverbs.com/v1/links","method":"POST","description":"Fetch a URL and extract every hyperlink on the page, each resolved to an absolute URL and classified as internal vs external (by registrable host), with its anchor text, rel attributes (nofollow, sponsored, ugc) and whether it opens in a new tab. Returns internal/external/nofollow counts. For SEO link audits, internal-linking analysis and outbound-link/nofollow compliance checks.","tags":["extract links api","page links api","internal external links","nofollow link checker","outbound links api","link audit api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://web.openverbs.com/v1/seo-audit","method":"POST","description":"Fetch a public page and grade its on-page SEO: title and meta-description length, H1 and heading outline, canonical, meta-robots indexability, viewport/lang/charset, hreflang, Open Graph and Twitter Card completeness, image alt coverage and word count — plus optional focus-keyword placement and density. Returns a pass/warn/fail verdict per check and an overall 0–100 score.","tags":["on page seo audit","seo audit api","website audit","meta tag checker","on-page optimization","page seo analyzer"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://pdf.openverbs.com/v1/extract","method":"POST","description":"Extract plain text and metadata (title, author, producer, page count) from a PDF supplied by URL or base64 — heavy pdf.js parsing an agent can't self-run.","tags":["pdf","pdf-extract","pdf-to-text","extract-text","document-text"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://format.openverbs.com/v1/convert","method":"POST","description":"Transcode a document between json, json5, jsonc, yaml, xml, csv, tsv, toml, ndjson, ini, env, properties, plist and querystring. Any source converts to any target through a JSON hub. Malformed input or a target that cannot represent the structure is rejected before payment.","tags":["convert json to yaml","yaml to json converter","xml to json api","csv to json transform","structured data conversion","transcode document formats"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://format.openverbs.com/v1/validate","method":"POST","description":"Parse a document (json, json5, jsonc, yaml, xml, csv, tsv, toml, ndjson, ini, env, properties, plist or querystring) and validate it against a JSON Schema. Returns whether it is valid and a list of precise, path-tagged errors. Malformed input or an invalid schema is rejected before payment.","tags":["validate json schema","json schema validation","check yaml against schema","validate structured data","schema validation errors","jsonschema api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://format.openverbs.com/v1/detect","method":"POST","description":"Sniff which structured format an unknown document is. Because formats overlap, returns every plausible format with a 0–1 score plus the best guess — honest about ambiguity rather than pretending certainty.","tags":["detect data format","identify json yaml csv","sniff document format","guess structured format","blob format detection","format lookup api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://format.openverbs.com/v1/infer-schema","method":"POST","description":"Infer a JSON Schema (draft-07) from a sample document in any supported format. Types are inferred, present keys are marked required, and heterogeneous array item schemas are merged. The result validates out of the box with /v1/validate.","tags":["infer json schema","generate schema from sample","json schema inference","sample data schema","derive schema from json","schema discovery api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://format.openverbs.com/v1/canonicalize","method":"POST","description":"Parse a document (in any format) and re-emit it in the RFC 8785 JSON Canonicalization Scheme form — sorted keys, canonical number/string formatting — plus the SHA-256 of the canonical bytes for stable hashing, signing and dedup.","tags":["canonicalize json","rfc 8785 json","stable json hash","json canonicalization api","sort json keys","hash canonical json"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://data.openverbs.com/v1/query","method":"POST","description":"Evaluate a JMESPath expression against a JSON value and return the selected/projected result. A malformed expression is rejected before payment.","tags":["query json with jmespath","jmespath api","select json fields","json query expression","extract data from json","filter json data"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://data.openverbs.com/v1/diff","method":"POST","description":"Compute the RFC 6902 JSON Patch that transforms `source` into `target`. The patch is a minimal array of add/remove/replace operations.","tags":["json patch diff","diff json documents","compare json objects","generate rfc6902 patch","json document changes","json diff api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://data.openverbs.com/v1/patch","method":"POST","description":"Apply an RFC 6902 JSON Patch to a JSON document and return the result. An invalid or unresolvable patch (e.g. a failed `test`, or a path that does not exist) is rejected before payment.","tags":["apply json patch","rfc6902 patch api","update json document","json pointer patch","validate json patch","patch json data"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://data.openverbs.com/v1/merge","method":"POST","description":"Deep-merge an ordered list of JSON documents, left to right. Objects are merged key-by-key; arrays, scalars and null in a later document replace the earlier value (last-wins, no array concatenation).","tags":["deep merge json","merge config objects","combine json documents","last wins merge","json deepmerge api","merge nested data"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://data.openverbs.com/v1/flatten","method":"POST","description":"Flatten a nested object/array into a single-level object whose keys are the delimited paths to each leaf (default delimiter `.`). Requires an object or array.","tags":["flatten nested json","object path flatten","json to flat object","flatten array object","delimited keys json","flatten data api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://data.openverbs.com/v1/unflatten","method":"POST","description":"Rebuild a nested object from a single-level object whose keys are delimited paths (default delimiter `.`) — the inverse of flatten. Requires a flat object.","tags":["unflatten json object","flat keys to nested json","expand delimited object","rebuild nested object","inverse json flatten","unflatten data api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://jwt.openverbs.com/v1/decode","method":"POST","description":"Decode a JSON Web Token WITHOUT verifying its signature and return the header, payload and signature. A structurally malformed token is rejected before payment. Never trust a decoded payload you have not verified.","tags":["decode jwt","parse jwt token","jwt payload lookup","read token claims","unverified jwt decode","jwt header payload"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://jwt.openverbs.com/v1/verify","method":"POST","description":"Verify a JSON Web Token's signature and claims against a shared secret (HS*) or a PEM public key (RS/ES/PS). Returns { valid, payload } on success or { valid: false, reason } for a bad signature, expired/not-yet-active token, or a failed issuer/audience/subject check. Pass `algorithms` to pin the accepted signing algorithms and prevent algorithm-confusion attacks.","tags":["verify jwt signature","validate jwt claims","jwt auth verification","check token expiration","verify jws token","jwt verify api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://jwt.openverbs.com/v1/sign","method":"POST","description":"Mint a signed JSON Web Token from a JSON claims object, using a shared secret (HS*) or a PEM private key (RS/ES/PS). Supports expiresInSec, notBeforeSec, issuer, audience, subject and keyid. An unusable key or option is rejected before payment.","tags":["sign jwt","create jwt token","mint auth token","generate jws signature","jwt signing api","issue signed token"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://hash.openverbs.com/v1/hash","method":"POST","description":"Compute a cryptographic digest (SHA-2, SHA-3, BLAKE2, and legacy SHA-1/MD5/RIPEMD-160) of some data. The input may be utf8/hex/base64/base64url and the digest is returned as hex/base64/base64url.","tags":["hash data","sha256 hash","compute digest","md5 checksum api","sha3 digest","data checksum"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://hash.openverbs.com/v1/hmac","method":"POST","description":"Compute a keyed HMAC of some data with a secret key — the standard way to sign and verify webhooks (Stripe, GitHub, etc.) and API requests. Data and key may each be utf8/hex/base64/base64url; the tag is returned as hex/base64/base64url.","tags":["hmac signature","sign webhook payload","verify webhook hmac","keyed hash api","hmac sha256","api request signature"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://pack.openverbs.com/v1/encode","method":"POST","description":"Serialize a JSON value into a compact MessagePack or CBOR byte stream, returned as a base64 (default), base64url or hex string, along with the byte length.","tags":["json to messagepack","json to cbor","serialize json binary","messagepack encode api","cbor encode api","compact json bytes"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://pack.openverbs.com/v1/decode","method":"POST","description":"Decode a MessagePack or CBOR byte stream (supplied as a base64/base64url/hex string) back into a JSON value. A malformed envelope, malformed bytes, or a value that is not JSON-representable is rejected before payment.","tags":["messagepack to json","cbor to json","decode binary json","messagepack decode api","cbor decode api","unpack serialized data"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://text.openverbs.com/v1/case","method":"POST","description":"Recase a string into camelCase, PascalCase, snake_case, kebab-case, CONSTANT_CASE, dot.case, path/case, Sentence case, Capital Case, Train-Case, no case, Title Case, or plain UPPER/lower — the word boundaries are detected regardless of the input casing.","tags":["convert string case","camelcase converter","snake case transform","kebab case text","title case api","recase text"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://text.openverbs.com/v1/encode","method":"POST","description":"Encode a UTF-8 string into base64, base64url, hex, base32, or URL percent-encoding.","tags":["encode text base64","string to hex","url encode text","text encoding api","utf8 to base32","base64url encode"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://text.openverbs.com/v1/decode","method":"POST","description":"Decode a base64, base64url, hex, base32, or URL percent-encoded string back into UTF-8 text. Malformed input for the chosen encoding is rejected as a clean 400.","tags":["decode base64 text","hex to string","url decode text","text decoding api","base32 to utf8","base64url decode"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://text.openverbs.com/v1/diff","method":"POST","description":"Diff two texts. The default `unified` mode returns a unified-diff patch string; `lines`, `words`, and `chars` modes return a structured array of added/removed/unchanged parts.","tags":["diff text","generate unified diff","compare strings","word diff api","line by line diff","text patch preview"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://unit.openverbs.com/v1/convert","method":"POST","description":"Convert a value between units — length, mass, volume, temperature, area, speed, pressure, energy, power, digital storage, time, angle, frequency and more. Unknown units or a conversion between incompatible measures (e.g. kg → km) are rejected as a clean 400.","tags":["convert units","unit conversion api","kilometers to miles","celsius to fahrenheit","kg to pounds","storage unit converter"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://unit.openverbs.com/v1/list","method":"POST","description":"List the supported units and their metadata (abbreviation, measure, system, singular/plural names), optionally filtered to a single measure — a discovery endpoint for choosing valid `from`/`to` values.","tags":["list supported units","unit metadata lookup","valid unit abbreviations","measurement units api","discover conversion units","unit catalog"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://math.openverbs.com/v1/eval","method":"POST","description":"Evaluate a mathematical expression with optional named variables — arithmetic, comparison and logic operators plus functions like sqrt, abs, min, max, sin, cos, log, floor, round, etc. A syntax error, an undefined variable, or a non-finite result is a clean 400. The factorial operator is disabled for safety.","tags":["evaluate math expression","calculator api","compute formula","expression evaluator","math with variables","safe arithmetic parser"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://math.openverbs.com/v1/variables","method":"POST","description":"Parse an expression and return the free variables it references, without evaluating it — so an agent can discover which inputs a formula needs before supplying values. A syntax error is a clean 400.","tags":["list formula variables","extract expression variables","parse variables in math","formula input discovery","expression variable lookup","math variables api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://random.openverbs.com/v1/bytes","method":"POST","description":"Generate cryptographically-secure random bytes, returned as hex, base64 or base64url.","tags":["random bytes","secure random bytes","csprng bytes api","generate entropy","hex random data","base64 random bytes"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://random.openverbs.com/v1/integer","method":"POST","description":"Generate one or more uniformly-distributed random integers in an inclusive [min, max] range.","tags":["random integer","secure random number","random number in range","generate integers","uniform integer api","roll random values"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://random.openverbs.com/v1/string","method":"POST","description":"Generate a random string of a given length from a named charset (alphanumeric, alpha, lower, upper, numeric, hex, base58) or a custom alphabet. Unbiased character selection.","tags":["random string","generate random token","secure password string","alphanumeric random","base58 random string","custom alphabet random"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://random.openverbs.com/v1/sample","method":"POST","description":"Draw a random sample from a provided array — without replacement by default (a fair shuffle), or with replacement when unique is false. count defaults to 1.","tags":["random sample array","shuffle array items","pick random item","sample without replacement","draw random subset","fair array sampling"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://finance.openverbs.com/v1/loan","method":"POST","description":"Compute the level monthly payment, total paid and total interest of a fully-amortizing loan. Handles a 0% rate. Set schedule=true to also return the full month-by-month amortization table.","tags":["loan amortization","mortgage payment calculator","monthly loan payment","amortization schedule","total loan interest","loan calculator api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://finance.openverbs.com/v1/interest","method":"POST","description":"Grow a principal by simple or compound interest over a number of years. Compound interest uses compoundsPerYear compounding periods (default 12, monthly).","tags":["compound interest calculator","simple interest calculator","grow principal","interest over time","monthly compounding api","calculate interest"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://finance.openverbs.com/v1/future-value","method":"POST","description":"Future value of a present sum and/or a level annuity, given a per-period rate and number of periods. Set dueAtBeginning=true for an annuity-due (payments at the start of each period).","tags":["future value calculator","annuity future value","fv financial formula","investment growth projection","payments to future value","future value api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://finance.openverbs.com/v1/present-value","method":"POST","description":"Present value of a future sum and/or a level annuity, given a per-period rate and number of periods. Set dueAtBeginning=true for an annuity-due.","tags":["present value calculator","annuity present value","pv financial formula","discount future cashflow","payments to present value","present value api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://finance.openverbs.com/v1/npv","method":"POST","description":"Net present value of a series of cash flows discounted at a per-period rate. cashflows[0] is the time-0 flow (typically the initial outlay, negative).","tags":["net present value","npv calculator","discount cash flows","investment npv api","cashflow valuation","present value of cashflows"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://finance.openverbs.com/v1/irr","method":"POST","description":"Internal rate of return (per period) of a series of cash flows, solved with a bounded bisection. Requires at least one positive and one negative flow; flows with no sign change or no bracketable root are rejected as a clean 400.","tags":["internal rate of return","irr calculator","cashflow return rate","investment irr api","solve discount rate","project return percentage"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://ip.openverbs.com/v1/parse","method":"POST","description":"Parse an IPv4 or IPv6 address and classify it — version, normalized form and RFC range (unicast, private, loopback, linkLocal, multicast, uniqueLocal, ipv4Mapped, …). Detects IPv4-mapped IPv6.","tags":["ip address parser","parse ip address","classify ip address","ipv4 ipv6 lookup","detect private ip","normalize ip address"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://ip.openverbs.com/v1/subnet","method":"POST","description":"Compute network details of a CIDR block — network & broadcast address, usable host range, total and usable address counts. Works for IPv4 and IPv6 (counts returned as strings for large IPv6 blocks). Honours RFC 3021 for /31.","tags":["subnet calculator","cidr calculator","ip network range","calculate usable hosts","network broadcast address","ipv4 ipv6 subnet"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://ip.openverbs.com/v1/contains","method":"POST","description":"Test whether an IP address falls within a CIDR block. A well-formed address of a different family (or simply outside the block) returns contains=false — not an error.","tags":["cidr membership","check ip in cidr","ip range lookup","test subnet contains ip","validate ip network membership","cidr contains address"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://ip.openverbs.com/v1/expand","method":"POST","description":"Return both the fully-expanded (eight 4-hex groups) and canonical compressed (RFC 5952) forms of an address. IPv4 is returned unchanged in both fields.","tags":["ipv6 expand compress","expand ipv6 address","compress ipv6 address","canonical ipv6 format","rfc 5952 ipv6","normalize ipv6 address"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://html.openverbs.com/v1/encode","method":"POST","description":"Encode text to HTML entities so it can be safely embedded in markup. By default uses hex numeric references; set useNamedReferences for named entities (&amp;, &copy;) or encodeEverything to encode every character.","tags":["html entity encode","encode html entities","escape html text","text to html entities","html escape api","encode unsafe characters"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://html.openverbs.com/v1/decode","method":"POST","description":"Decode HTML entities (named, decimal and hex numeric references) back into plain text.","tags":["html entity decode","decode html entities","unescape html text","html entities to text","numeric entity decoder","named entity lookup"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://html.openverbs.com/v1/strip","method":"POST","description":"Remove all HTML tags, returning the plain text content. Entities are decoded to real characters by default (set decodeEntities=false to keep them encoded).","tags":["strip html tags","html to plain text","remove html markup","extract text from html","decode html text content","sanitize to text"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://html.openverbs.com/v1/sanitize","method":"POST","description":"Sanitize untrusted HTML to a safe allowlist. Keeps common formatting and links but removes dangerous scripting tags, inline event handlers and unsafe URL schemes. Ideal for rendering user-supplied HTML.","tags":["sanitize html","clean untrusted html","xss html sanitizer","remove script tags","safe html allowlist","sanitize user html"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://checkdigit.openverbs.com/v1/luhn","method":"POST","description":"Validate a number by the Luhn (mod-10) algorithm — the scheme behind credit/debit card numbers and many IDs. Spaces and hyphens are ignored. A mismatched check digit is a successful { valid: false }.","tags":["luhn validation","validate credit card number","mod 10 check digit","luhn checksum api","check card number","validate luhn number"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://checkdigit.openverbs.com/v1/isbn","method":"POST","description":"Validate an ISBN-10 (mod-11, trailing X allowed) or ISBN-13 (GTIN mod-10) book number. Length after removing spaces/hyphens selects the scheme.","tags":["isbn validation","validate isbn","isbn check digit","isbn 10 isbn 13","book number lookup","isbn checksum api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://checkdigit.openverbs.com/v1/ean","method":"POST","description":"Validate a GTIN barcode number — EAN-8, UPC-A (12), EAN-13 or GTIN-14 — by the standard mod-10 check digit. Length selects the scheme.","tags":["gtin validation","validate barcode number","ean upc check digit","upc validation","ean 13 checksum","barcode check digit"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://checkdigit.openverbs.com/v1/imei","method":"POST","description":"Validate a 15-digit mobile device IMEI by its Luhn check digit. Spaces and hyphens are ignored.","tags":["imei validation","validate imei number","mobile device imei","imei check digit","imei luhn check","phone imei validator"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://checkdigit.openverbs.com/v1/routing","method":"POST","description":"Validate a 9-digit US ABA bank routing number by its weighted (3,7,1) mod-10 checksum. Spaces and hyphens are ignored.","tags":["aba routing validation","validate routing number","bank routing checksum","us routing number lookup","aba check digit","routing number api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://geometry.openverbs.com/v1/circle","method":"POST","description":"Diameter, circumference and area of a circle from its radius.","tags":["circle area calculator","calculate circumference","radius to diameter","circle geometry api","area of circle","circle metrics"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://geometry.openverbs.com/v1/rectangle","method":"POST","description":"Area, perimeter and diagonal of a rectangle from its width and height.","tags":["rectangle area calculator","calculate rectangle perimeter","rectangle diagonal","width height geometry","area of rectangle","rectangle metrics"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://geometry.openverbs.com/v1/triangle","method":"POST","description":"Area (Heron's formula), perimeter and interior angles of a triangle from its three side lengths. Sides that violate the triangle inequality are rejected as a clean 400.","tags":["triangle area calculator","herons formula","triangle side lengths","calculate triangle angles","triangle inequality validation","sss triangle metrics"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://geometry.openverbs.com/v1/polygon","method":"POST","description":"Area (shoelace formula), perimeter and centroid of a simple polygon given its vertices in order. Vertices are treated as a closed ring (last connects to first).","tags":["polygon area calculator","shoelace formula","polygon centroid","calculate polygon perimeter","vertices to area","area of polygon"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://geometry.openverbs.com/v1/distance","method":"POST","description":"Euclidean, Manhattan and Chebyshev distance between two 2-D points.","tags":["point distance calculator","euclidean distance","manhattan distance","chebyshev distance","distance between points","2d point distance"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://numeral.openverbs.com/v1/radix","method":"POST","description":"Convert an integer between numeral bases 2–36 (binary, octal, hex, base36, …). Arbitrary size via BigInt; digits are case-insensitive and a leading minus is allowed.","tags":["base conversion","convert number base","binary to hex","decimal to base36","radix converter api","integer base converter"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://numeral.openverbs.com/v1/roman","method":"POST","description":"Convert between integers (1–3999) and Roman numerals in either direction — a digit string is encoded to Roman, a Roman numeral is decoded to an integer. Non-canonical numerals (IIII, IC) are rejected.","tags":["roman numeral converter","convert roman numerals","roman to integer","integer to roman","validate roman numeral","decode roman numeral"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://numeral.openverbs.com/v1/ordinal","method":"POST","description":"Format a non-negative integer as an ordinal — both the suffixed form (21st) and the ordinal words (twenty-first).","tags":["ordinal number formatter","number to ordinal","add ordinal suffix","ordinal words","format 21st","integer ordinal api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://numeral.openverbs.com/v1/words","method":"POST","description":"Spell an integer out in English words, e.g. 123 → \"one hundred twenty-three\". Negatives are prefixed with \"minus\".","tags":["number to words","spell out number","integer to english words","convert number to text","english number words","amount in words"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://inflect.openverbs.com/v1/pluralize","method":"POST","description":"Return the plural form of an English word (handles irregulars — person → people, mouse → mice).","tags":["pluralize word","english plural api","noun plural form","convert singular to plural","irregular plural lookup","word pluralizer"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://inflect.openverbs.com/v1/singularize","method":"POST","description":"Return the singular form of an English word (handles irregulars — people → person, mice → mouse).","tags":["singularize word","english singular api","noun singular form","convert plural to singular","irregular singular lookup","word singularizer"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://inflect.openverbs.com/v1/count","method":"POST","description":"Choose the singular or plural form for a given count, e.g. (apple, 3) → \"apples\", (apple, 1) → \"apple\". By default the count is prepended (\"3 apples\"); set includeCount=false to omit it.","tags":["count aware noun","pluralize by count","singular plural phrase","quantity phrasing","format count with noun","inflect noun by number"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://inflect.openverbs.com/v1/case","method":"POST","description":"Split an identifier or phrase into words and render it in every common case — camelCase, PascalCase, snake_case, kebab-case, CONSTANT_CASE, dot.case, path/case, Title Case and Sentence case. Handles acronyms (HTMLParser → html parser).","tags":["case conversion","convert identifier case","camelcase snakecase","kebab case converter","title case api","split identifier words"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://markdown.openverbs.com/v1/render","method":"POST","description":"Render GitHub-Flavored Markdown to HTML. Output is sanitized by default (scripts, event handlers and javascript: URLs removed); set sanitize=false to keep raw HTML.","tags":["markdown to html","render markdown","gfm renderer","sanitize markdown html","convert md to html","markdown render api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://markdown.openverbs.com/v1/toc","method":"POST","description":"Extract the heading outline from Markdown — depth, text and a unique GitHub-style anchor slug for each heading. Optionally limit to a maximum heading depth.","tags":["markdown table of contents","extract markdown headings","generate toc from markdown","github heading anchors","markdown outline api","heading slug lookup"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://markdown.openverbs.com/v1/frontmatter","method":"POST","description":"Split YAML front-matter from a document — returns the parsed metadata object and the remaining content body. Malformed YAML is rejected as a clean 400.","tags":["parse front matter","yaml frontmatter parser","extract document metadata","split frontmatter content","markdown metadata lookup","front matter api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://stats.openverbs.com/v1/summary","method":"POST","description":"Full descriptive summary of a numeric sample: count, sum, min/max/range, mean, median, mode(s), variance, standard deviation and the quartiles (q1/q3/iqr). Set sample=true for the sample variance/stdev (÷ n-1) instead of the population form (÷ n).","tags":["descriptive statistics","summary statistics api","calculate mean median","variance standard deviation","numeric sample summary","quartiles and iqr"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://stats.openverbs.com/v1/percentile","method":"POST","description":"Evaluate one or more percentiles (0–100) of a numeric sample using linear interpolation between order statistics (the R-7 / Excel PERCENTILE.INC method). 50 is the median, 25/75 the quartiles.","tags":["percentile calculator","quantile calculator","calculate percentiles","r7 percentile","excel percentile inc","sample quantile lookup"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://stats.openverbs.com/v1/correlation","method":"POST","description":"Pearson correlation coefficient and covariance of two equal-length paired series. Rejected as a clean 400 if the lengths differ or either series has zero variance (correlation undefined).","tags":["pearson correlation","correlation coefficient","calculate covariance","paired series correlation","linear relationship stats","correlation api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://stats.openverbs.com/v1/regression","method":"POST","description":"Ordinary-least-squares linear regression of y on x: slope, intercept, correlation r and coefficient of determination r². Pass predictAt to also evaluate the fitted line at a given x. Rejected as a clean 400 if lengths differ or x has zero variance.","tags":["linear regression","ordinary least squares","fit regression line","predict from regression","slope and intercept","regression api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://url.openverbs.com/v1/parse","method":"POST","description":"Parse an absolute URL into its WHATWG components: protocol/scheme, credentials, host/hostname/port, origin, pathname (plus path segments), search (plus a decoded query object) and hash. A string that is not a valid absolute URL is rejected as a clean 400.","tags":["url parser","parse url components","url component lookup","whatwg url parse","extract hostname path","decode url query"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://url.openverbs.com/v1/normalize","method":"POST","description":"Canonicalize a URL: WHATWG parsing already lowercases the host, resolves dot-segments and drops default ports; on top of that, query parameters are sorted by default and you can optionally drop the fragment or a trailing slash. Returns the normalized URL and whether it changed.","tags":["normalize url","canonicalize url","sort query parameters","remove url fragment","clean url api","lowercase hostname"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://url.openverbs.com/v1/resolve","method":"POST","description":"Resolve a relative or absolute reference against a base URL, following RFC 3986 reference resolution (e.g. base 'https://a.com/x/y' + ref '../z' → 'https://a.com/z'). The base must itself be a valid absolute URL, else a clean 400.","tags":["resolve relative url","url reference resolution","base url resolver","relative link to absolute","rfc 3986 resolve","join base and ref"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://url.openverbs.com/v1/query","method":"POST","description":"Two directions over query strings. action='parse' decodes a query string (with or without a leading '?') into an object, collapsing repeated keys into arrays. action='build' encodes a params object into a query string, expanding array values into repeated keys; set sort=true to order keys alphabetically.","tags":["query string parser","build query string","parse url params","encode query parameters","decode query string","query params api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://money.openverbs.com/v1/format","method":"POST","description":"Format a numeric amount as currency for a given locale using Intl, honouring the currency's own minor-unit convention (USD→2, JPY→0). display selects the symbol, narrow symbol, ISO code or full name. An unknown currency or locale is a clean 400.","tags":["format currency","currency formatting api","intl money format","amount to currency string","localized currency display","iso currency formatter"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://money.openverbs.com/v1/parse","method":"POST","description":"Parse a formatted money string back into a number, using the locale's grouping and decimal separators (so '1.234,56' in de-DE → 1234.56). Currency symbols/codes and whitespace are stripped; parentheses or a leading minus mean negative. A string with no numeric amount is a clean 400.","tags":["parse money string","currency string parser","money text to number","localized amount parsing","extract amount from price","parse formatted currency"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://money.openverbs.com/v1/round","method":"POST","description":"Round an amount to a currency's minor units (or an explicit minorUnits) with a chosen rounding mode: half-even (banker's, default), half-up, half-down, ceil, floor or trunc. Give a currency to derive minor units automatically (USD→2, JPY→0).","tags":["round currency amount","minor unit rounding","bankers rounding money","currency decimal places","round to cents","money rounding api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://money.openverbs.com/v1/allocate","method":"POST","description":"Split an amount into parts using integer minor-unit math so the shares always sum back to the exact original — no rounding drift. Pass parts for an even split, or ratios for a weighted one (e.g. [1,1,1] splits $100 into 33.34/33.33/33.33). The leftover minor units go to the largest fractional remainders.","tags":["split money amount","allocate cents exactly","divide without rounding drift","proportional money split","minor unit allocation","split bill cents"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://timecode.openverbs.com/v1/parse","method":"POST","description":"Parse an SMPTE timecode (HH:MM:SS:FF, or HH:MM:SS;FF for drop-frame) at a given frame rate into its components, total frame count and real-time seconds. Drop-frame is auto-detected from a ';' separator unless dropFrame is set. Out-of-range or non-existent drop-frame values are a clean 400.","tags":["parse timecode","smpte timecode parser","timecode to frames","drop frame detection","video frame count","timecode seconds lookup"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://timecode.openverbs.com/v1/convert","method":"POST","description":"Rebase a timecode (or a raw frame count) from one frame rate to another on a real-time basis, so the wall-clock position is preserved. Give a source frameRate plus timecode or totalFrames, and a toFrameRate (with optional toDropFrame). Returns the target timecode, frame count and seconds.","tags":["convert timecode","rebase frame rate","timecode frame rate conversion","frames to timecode","drop frame conversion","video fps conversion"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://timecode.openverbs.com/v1/add","method":"POST","description":"Add or subtract from a timecode, either another timecode (b) or a raw frame count (frames), at a given frame rate. Uses frame-exact SMPTE math (including drop-frame). A result below zero is rejected as a clean 400.","tags":["timecode arithmetic","add timecode","subtract timecode","add frames to timecode","frame exact calculation","smpte timecode math"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://jsonschema.openverbs.com/v1/validate","method":"POST","description":"Validate a JSON value against a JSON Schema (draft-07, with the standard string formats enabled). An invalid schema is rejected as a clean 400 before payment; a valid schema that the data simply fails to satisfy is a successful result with valid=false and a list of errors (path, keyword, message).","tags":["json schema validation","validate json data","draft 07 validator","schema validation api","json validation errors","check data against schema"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://jsonschema.openverbs.com/v1/infer","method":"POST","description":"Infer a JSON Schema (draft-07) from an example value, walking objects and arrays recursively. Set detectFormat=true to tag strings that look like date-time/date/email/uri/uuid, requireAll=false to leave object properties optional, and additionalProperties=true to allow extra keys.","tags":["infer json schema","generate schema from json","json schema inference","sample to schema","detect json formats","create draft 07 schema"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://otp.openverbs.com/v1/totp","method":"POST","description":"Generate an RFC 6238 time-based one-time password from a base32 secret. Uses the current time by default, or an explicit unix timestamp (seconds); configurable period (default 30s), digits (default 6) and algorithm (default SHA1). Also returns the counter and seconds remaining in the window.","tags":["totp api","generate totp","time based otp","authenticator code","rfc 6238 code","one time password"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://otp.openverbs.com/v1/hotp","method":"POST","description":"Generate an RFC 4226 counter-based HMAC one-time password from a base32 secret and counter. Configurable digits (6–10, default 6) and algorithm (SHA1/SHA256/SHA512, default SHA1). An invalid base32 secret is a clean 400.","tags":["hotp api","generate hotp","counter based otp","hmac one time password","rfc 4226 code","otp counter code"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://otp.openverbs.com/v1/verify","method":"POST","description":"Verify a submitted TOTP code against a base32 secret, scanning ±window time steps (default ±1) to tolerate clock drift. Returns valid plus the matching step offset (delta). A code that does not match is a successful result with valid=false — not an error.","tags":["verify totp","validate otp code","check authenticator code","totp verification api","mfa code validation","otp drift window"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://otp.openverbs.com/v1/uri","method":"POST","description":"Build an otpauth:// provisioning URI (the string encoded in authenticator QR codes) for a totp or hotp secret. Includes label, issuer, algorithm, digits and period (totp) or counter (hotp). The secret must be valid base32.","tags":["otpauth uri","generate qr provisioning uri","authenticator setup uri","build otpauth link","totp provisioning","hotp provisioning"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://fraction.openverbs.com/v1/simplify","method":"POST","description":"Reduce a fraction to lowest terms and describe it: numerator/denominator (denominator normalized positive), sign, whether it is an integer, and a mixed-number form when improper. A zero denominator is a clean 400.","tags":["simplify fraction","reduce fraction","fraction lowest terms","mixed number conversion","normalize rational number","fraction api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://fraction.openverbs.com/v1/arithmetic","method":"POST","description":"Add, subtract, multiply or divide two fractions and return the exact, fully-reduced result. All computation is done in BigInt so there is no floating-point error. Dividing by a zero fraction is a clean 400.","tags":["fraction arithmetic","add fractions","subtract fractions","multiply fractions","divide fractions","exact rational math"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://fraction.openverbs.com/v1/from-decimal","method":"POST","description":"Convert a decimal string to an exact reduced fraction. For a repeating decimal, set repeat to the number of trailing fractional digits that repeat (e.g. value='0.1666', repeat=1 → 1/6; value='0.3', repeat=1 → 1/3). A non-numeric value is a clean 400.","tags":["decimal to fraction","convert decimal fraction","repeating decimal to fraction","parse decimal as rational","fraction from decimal"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://fraction.openverbs.com/v1/to-decimal","method":"POST","description":"Expand a fraction to its decimal form by exact long division, detecting a repeating cycle and rendering it in parenthesis notation (e.g. 1/6 → '0.1(6)', 1/7 → '0.(142857)'). maxDigits caps a non-repeating expansion. A zero denominator is a clean 400.","tags":["fraction to decimal","convert fraction decimal","repeating decimal expansion","long division fraction","decimal representation of fraction"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://matrix.openverbs.com/v1/multiply","method":"POST","description":"Multiply two matrices A·B. The inner dimensions must agree (columns of A equal rows of B); a mismatch or a ragged/empty matrix is a clean 400.","tags":["matrix multiplication","multiply matrices","linear algebra multiply","matrix product api","compute a dot b"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://matrix.openverbs.com/v1/transpose","method":"POST","description":"Transpose a matrix, swapping rows and columns. A ragged/empty matrix is a clean 400.","tags":["transpose matrix","swap matrix rows columns","matrix transpose api","flip matrix axes","convert rows to columns"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://matrix.openverbs.com/v1/determinant","method":"POST","description":"Compute the determinant of a square matrix via Gaussian elimination with partial pivoting. A non-square, ragged or empty matrix is a clean 400; a singular matrix simply returns 0.","tags":["matrix determinant","compute determinant","square matrix determinant","gaussian elimination determinant","determinant api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://matrix.openverbs.com/v1/inverse","method":"POST","description":"Invert a square matrix via Gauss-Jordan elimination. A non-square, ragged or empty matrix is a clean 400. A singular (non-invertible) matrix is NOT an error — it returns a successful { invertible:false, inverse:null }.","tags":["matrix inverse","invert matrix","inverse matrix api","gauss jordan inverse","check matrix invertible","solve inverse matrix"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://matrix.openverbs.com/v1/solve","method":"POST","description":"Solve the linear system A·x = b for a square coefficient matrix A and vector b via Gaussian elimination with partial pivoting. A non-square A or a b of the wrong length is a clean 400. A singular system is NOT an error — it returns a successful { solvable:false, solution:null }.","tags":["solve linear system","linear equation solver","matrix solve ax b","gaussian elimination solver","solve coefficients vector","linear algebra system"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://regex.openverbs.com/v1/test","method":"POST","description":"Test whether a RE2 pattern matches anywhere in the input. Returns { matched }. RE2 guarantees linear-time evaluation, so this is safe against catastrophic backtracking. An invalid pattern is a clean 400; no match is a successful 200.","tags":["test regex","regex match boolean","check pattern match","re2 test api","validate regular expression match","safe regex test"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://regex.openverbs.com/v1/match","method":"POST","description":"Find the first match (or all matches with all=true) of a RE2 pattern, returning each match's text, start/end offsets, and numbered and named capture groups. No match is a successful 200 with an empty match list.","tags":["find regex matches","regex capture groups","extract pattern matches","named group lookup","re2 match api","regular expression search"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://regex.openverbs.com/v1/replace","method":"POST","description":"Replace matches of a RE2 pattern with a replacement string. Replaces all matches by default (set all=false for first-only). The replacement may reference capture groups with $1, $2 or ${name}. Returns the resulting string.","tags":["regex replace","replace pattern matches","regular expression substitution","capture group replacement","re2 replace api","safe regex replace"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://regex.openverbs.com/v1/split","method":"POST","description":"Split the input into parts on each match of a RE2 pattern. An optional limit caps the number of parts (0 = unlimited). Returns the parts array and its count.","tags":["regex split","split by pattern","regular expression delimiter","re2 split api","tokenize text with regex","split text safely"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://bitwise.openverbs.com/v1/and","method":"POST","description":"Bitwise AND across two or more non-negative integers (given as decimal strings, evaluated as arbitrary-precision BigInt). Returns the result in decimal, hex and binary.","tags":["bitwise and","and integers","integer bit mask","bitwise and api","bigint and operation","combine bit flags"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://bitwise.openverbs.com/v1/or","method":"POST","description":"Bitwise OR across two or more non-negative integers (given as decimal strings, evaluated as arbitrary-precision BigInt). Returns the result in decimal, hex and binary.","tags":["bitwise or","or integers","set bit flags","bitwise or api","bigint or operation","merge bit masks"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://bitwise.openverbs.com/v1/xor","method":"POST","description":"Bitwise XOR across two or more non-negative integers (given as decimal strings, evaluated as arbitrary-precision BigInt). Returns the result in decimal, hex and binary.","tags":["bitwise xor","xor integers","toggle bit flags","bitwise xor api","bigint xor operation","exclusive or bits"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://bitwise.openverbs.com/v1/not","method":"POST","description":"One's-complement NOT of a non-negative integer within an explicit bit width (two's-complement domain). The value must fit in `width` bits. Returns decimal, hex and binary.","tags":["bitwise not","ones complement","invert bits","bitwise not api","width bounded complement","flip integer bits"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://bitwise.openverbs.com/v1/shift","method":"POST","description":"Shift a non-negative integer left or right by `amount` bits. A right shift is logical (fills with zeros). A left shift grows freely unless a `width` is given, in which case the result is masked to that width and the input must fit it. Returns decimal, hex and binary.","tags":["bit shift","shift bits left","shift bits right","logical right shift","left shift integer","bit shift api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://bitwise.openverbs.com/v1/rotate","method":"POST","description":"Circularly rotate a non-negative integer left or right within an explicit bit width (bits shifted off one end reappear at the other). The value must fit in `width` bits. Returns decimal, hex and binary.","tags":["bit rotate","rotate bits left","rotate bits right","circular bit rotation","width bounded rotate","bit rotate api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://bitwise.openverbs.com/v1/analyze","method":"POST","description":"Inspect a non-negative integer's bit structure: bit length, set-bit count (population count), trailing-zero count, power-of-two test, and hex/binary representations. An optional width zero-pads the binary form.","tags":["analyze bits","population count","count set bits","trailing zero count","integer bit length","check power of two","bit analysis api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://checksum.openverbs.com/v1/crc32","method":"POST","description":"CRC-32 (IEEE 802.3 polynomial, as used by zip, gzip and PNG) over the input payload. Returns the checksum as an unsigned integer and 8-digit hex. Non-cryptographic — for error detection only.","tags":["crc32 checksum","calculate crc32","crc32 api","zip checksum","gzip checksum","png crc validation","file integrity crc32"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://checksum.openverbs.com/v1/crc16","method":"POST","description":"CRC-16 over the input payload in one of several standard variants (ccitt-false, xmodem, modbus, ibm; default ccitt-false). Returns the checksum as an unsigned integer and 4-digit hex. Non-cryptographic.","tags":["crc16 checksum","calculate crc16","crc16 variants","ccitt crc lookup","modbus crc","xmodem crc","crc16 api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://checksum.openverbs.com/v1/adler32","method":"POST","description":"Adler-32 checksum (as used by zlib) over the input payload. Faster than CRC-32 but weaker for short inputs. Returns the checksum as an unsigned integer and 8-digit hex. Non-cryptographic.","tags":["adler32 checksum","calculate adler32","zlib checksum","adler32 api","fast data checksum","non cryptographic adler"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://checksum.openverbs.com/v1/fletcher","method":"POST","description":"Fletcher checksum over the input payload, in 16-bit (default) or 32-bit width. Returns the checksum as an unsigned integer and hex. Non-cryptographic.","tags":["fletcher checksum","fletcher16 checksum","fletcher32 checksum","calculate fletcher","fletcher api","protocol error detection"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://numtheory.openverbs.com/v1/gcd","method":"POST","description":"Greatest common divisor of two or more non-negative integers (arbitrary precision).","tags":["greatest common divisor","compute gcd","gcd api","common divisor lookup","integer gcd","bigint gcd"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://numtheory.openverbs.com/v1/lcm","method":"POST","description":"Least common multiple of two or more positive integers (arbitrary precision).","tags":["least common multiple","compute lcm","lcm api","common multiple lookup","integer lcm","bigint lcm"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://numtheory.openverbs.com/v1/factorize","method":"POST","description":"Prime-factorize a positive integer (≤ 10^15 so the computation is always fast). Returns the prime factors with exponents, the divisor count, and whether n is prime.","tags":["prime factorization","factor integer","integer factors api","prime factors lookup","divisor count","factorize number"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://numtheory.openverbs.com/v1/is-prime","method":"POST","description":"Miller-Rabin primality test (with witnesses that are exact for all 64-bit integers) on an arbitrary-precision integer. Returns { prime }.","tags":["primality test","check prime number","is prime api","miller rabin test","validate prime","prime lookup"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://numtheory.openverbs.com/v1/totient","method":"POST","description":"Euler's totient φ(n) — the count of integers in [1, n] coprime to n — for a positive integer ≤ 10^15 (it is computed from the prime factorization).","tags":["euler totient","compute phi","totient function","coprime count","number theory totient","totient api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://numtheory.openverbs.com/v1/modpow","method":"POST","description":"Compute (base ^ exponent) mod modulus efficiently for arbitrary-precision integers. The modulus must be positive.","tags":["modular exponentiation","mod pow","compute base exponent mod","fast modular power","modular arithmetic api","bigint modpow"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://combinatorics.openverbs.com/v1/factorial","method":"POST","description":"Exact factorial n! for 0 ≤ n ≤ 20000, returned as a decimal string with its digit count.","tags":["factorial api","compute factorial","n factorial","exact factorial","bigint factorial","factorial digit count"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://combinatorics.openverbs.com/v1/permutations","method":"POST","description":"Number of ordered arrangements of r items from n, nPr = n!/(n-r)!. Requires r ≤ n and r ≤ 10000.","tags":["permutations npr","compute permutations","ordered arrangements","npr api","permutation count","arrangements without replacement"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://combinatorics.openverbs.com/v1/combinations","method":"POST","description":"Binomial coefficient nCr = n!/(r!(n-r)!), the number of unordered r-subsets of n. Requires r ≤ n and min(r, n-r) ≤ 10000.","tags":["combinations ncr","compute combinations","binomial coefficient","ncr api","choose r from n","combination count"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://combinatorics.openverbs.com/v1/multinomial","method":"POST","description":"Multinomial coefficient (k1+k2+…)! / (k1! k2! …) — the number of ways to partition n = Σki items into labelled groups of the given sizes. The sum must be ≤ 20000.","tags":["multinomial coefficient","compute multinomial","partition items into groups","labelled group count","multinomial api","group arrangement count"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://combinatorics.openverbs.com/v1/catalan","method":"POST","description":"The n-th Catalan number Cₙ = C(2n, n)/(n+1), counting balanced bracketings, binary trees, and many other structures. Requires n ≤ 10000.","tags":["catalan number","compute catalan","balanced bracket count","binary tree count","catalan api","combinatorics sequence"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://spreadsheet.openverbs.com/v1/a1-to-rc","method":"POST","description":"Parse an A1-style cell reference (e.g. \"B3\" or \"$AA$100\") into 1-based row and column numbers, plus the column letters and whether each part is absolute.","tags":["a1 to row column","parse a1 reference","spreadsheet cell lookup","excel cell coordinates","a1 reference parser","cell row column api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://spreadsheet.openverbs.com/v1/rc-to-a1","method":"POST","description":"Build an A1-style cell reference from 1-based row and column numbers, optionally marking the row and/or column absolute ($).","tags":["row column to a1","generate a1 reference","spreadsheet coordinate format","excel cell address","build cell reference","a1 reference api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://spreadsheet.openverbs.com/v1/column","method":"POST","description":"Convert between a spreadsheet column letter and its 1-based index in either direction. Provide exactly one of `letter` (e.g. \"AA\") or `number` (e.g. 27); the response always contains both.","tags":["spreadsheet column conversion","column letter to number","column number to letter","excel column lookup","a1 column api","convert column letters"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://spreadsheet.openverbs.com/v1/range","method":"POST","description":"Parse an A1 range like \"A1:C10\" into its start and end cells (normalized so start is the top-left) and its extent — row count, column count and total cell count.","tags":["parse a1 range","spreadsheet range extent","excel range parser","cell range dimensions","normalize a1 range","range cell count"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://distribution.openverbs.com/v1/normal","method":"POST","description":"Normal distribution with optional mean (default 0) and standard deviation sd (default 1). `function` selects the density (pdf), cumulative distribution (cdf) or quantile / inverse-CDF.","tags":["normal distribution","gaussian distribution","normal cdf","normal quantile","normal pdf","z score probability","gaussian api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://distribution.openverbs.com/v1/t","method":"POST","description":"Student's t distribution with df degrees of freedom (> 0). `function` selects the density (pdf), cumulative distribution (cdf) or quantile / inverse-CDF.","tags":["student t distribution","t distribution cdf","t distribution quantile","t test probability","degrees of freedom distribution","student t api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://distribution.openverbs.com/v1/binomial","method":"POST","description":"Binomial distribution with `trials` (n ≥ 0, ≤ 1e6) and success `probability` (0..1). `function` selects the mass (pmf), cumulative distribution (cdf) or quantile / inverse-CDF.","tags":["binomial distribution","binomial pmf","binomial cdf","binomial quantile","success probability model","binomial probability api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://distribution.openverbs.com/v1/poisson","method":"POST","description":"Poisson distribution with rate `lambda` (> 0, ≤ 1e9). `function` selects the mass (pmf), cumulative distribution (cdf) or quantile / inverse-CDF.","tags":["poisson distribution","poisson pmf","poisson cdf","poisson quantile","rate lambda probability","poisson probability api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://chem.openverbs.com/v1/element","method":"POST","description":"Look up a periodic-table element by exactly one of `symbol` (e.g. \"Fe\"), `name` (e.g. \"iron\") or atomic `number` (1..118). Returns its number, symbol, name, standard atomic weight and whether that weight is a true standard atomic weight.","tags":["element lookup","periodic table element","atomic number lookup","element symbol lookup","atomic weight lookup","chemistry element api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://chem.openverbs.com/v1/search","method":"POST","description":"Search the periodic table by name or symbol substring. Exact matches rank first, then prefix matches, then substring matches. Returns up to `limit` elements (default 20) plus the total match count.","tags":["search periodic table","element search","find element by name","find element by symbol","periodic table search api","chemical element lookup"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://chem.openverbs.com/v1/molar-mass","method":"POST","description":"Compute the molar mass (g/mol) of a chemical formula. Supports nested parentheses and brackets, element multipliers, and hydrate dot notation with coefficients (e.g. \"Ca(OH)2\", \"CuSO4·5H2O\", \"K4[Fe(CN)6]\"). Returns the total mass and the per-element composition with mass fraction percentages.","tags":["molar mass","calculate molecular weight","chemical formula mass","formula composition","molar mass api","hydrate formula mass","element percent composition"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://creditcard.openverbs.com/v1/validate","method":"POST","description":"Validate a payment-card number: Luhn check-digit test plus network detection and length check. A syntactically valid number that fails Luhn returns `valid:false` (a 200, not an error).","tags":["validate credit card","luhn check api","credit card validation","payment card validation","card number lookup","check card number"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://creditcard.openverbs.com/v1/network","method":"POST","description":"Detect the issuing network/brand (Visa, Mastercard, American Express, Discover, Diners Club, JCB, UnionPay, Maestro) from the card's IIN prefix, with the network's valid lengths. Returns `network:null` for an unrecognized prefix.","tags":["card network lookup","detect card brand","iin lookup api","bin network detection","credit card issuer network","payment card brand"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://creditcard.openverbs.com/v1/mask","method":"POST","description":"Mask a card number for display, keeping the first six and last four digits (the PCI-permitted maximum) and replacing the rest with a mask character (default `*`).","tags":["mask credit card","redact card number","pan masking api","pci card masking","hide credit card digits","payment card redaction"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://creditcard.openverbs.com/v1/format","method":"POST","description":"Format a card number into the conventional display groups for its network (4-6-5 for Amex, 4-6-4 for 14-digit Diners, otherwise groups of four).","tags":["format credit card","group card number","card number formatting","format payment card","credit card display groups","pan formatting"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://creditcard.openverbs.com/v1/generate","method":"POST","description":"Generate a random Luhn-valid TEST card number for the given network (default Visa). For testing only — these are not issued cards and cannot be charged. The response is always flagged `test:true`.","tags":["generate test card","test credit card number","luhn valid card generator","fake payment card","credit card test data","generate pan number"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://macaddress.openverbs.com/v1/parse","method":"POST","description":"Parse a MAC / EUI-48 or EUI-64 address from any common notation (colon, hyphen, Cisco dot, or bare hex) and return it in every canonical form plus its integer value.","tags":["parse mac address","normalize mac address","mac address parser","eui-48 lookup","convert mac notation","mac address canonical form"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://macaddress.openverbs.com/v1/info","method":"POST","description":"Report the properties of a MAC address encoded in its first octet: unicast vs multicast (I/G bit), universal vs locally-administered (U/L bit), the broadcast address, and — for EUI-48 — the OUI and NIC portions.","tags":["mac address lookup","inspect mac address","oui lookup api","mac address properties","detect multicast mac","locally administered mac"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://macaddress.openverbs.com/v1/format","method":"POST","description":"Reformat a MAC address into the requested notation (colon, hyphen, Cisco dot or bare) and case (lower default or upper).","tags":["format mac address","mac notation converter","convert mac to colon","cisco mac format","uppercase mac address","reformat eui address"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://macaddress.openverbs.com/v1/to-eui64","method":"POST","description":"Derive the modified EUI-64 interface identifier from a 48-bit MAC (insert FFFE, flip the U/L bit) and the resulting IPv6 link-local address (fe80::/64).","tags":["mac to eui64","derive ipv6 interface id","eui-48 to eui-64","ipv6 link local from mac","modified eui64 converter","mac address iid"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://macaddress.openverbs.com/v1/generate","method":"POST","description":"Generate a random EUI-48 MAC address. By default it is locally-administered and unicast (safe for testing); set `local:false` for a universal-bit address or `multicast:true` for a group address.","tags":["generate mac address","random mac address","test mac address generator","locally administered mac generator","multicast mac generator","fake eui-48 address"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://physics.openverbs.com/v1/constant","method":"POST","description":"Look up a physical constant by its key (e.g. \"speed-of-light\"), symbol (e.g. \"c\") or exact name. Returns the CODATA 2018 recommended value, unit, relative standard uncertainty (0 for values that are exact by SI definition) and category.","tags":["physical constant lookup","codata constant api","physics constant value","lookup speed of light","scientific constant lookup","constant by symbol"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://physics.openverbs.com/v1/search","method":"POST","description":"Search the constants table by key, symbol or name substring. Exact matches rank first, then prefix matches, then substring matches. Returns up to `limit` constants (default 20) plus the total match count.","tags":["search physical constants","codata search api","physics constants search","find constant by name","constant name lookup","search by constant symbol"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://physics.openverbs.com/v1/list","method":"POST","description":"List every physical constant in the dataset, or only those in a given category (universal, adopted, electromagnetic, atomic, physico-chemical). Returns the constants, the total count and the set of available categories.","tags":["list physical constants","codata constants list","physics categories api","constants by category","physical constants dataset","browse science constants"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://wallet.openverbs.com/v1/validate","method":"POST","description":"Validate a blockchain address. Supply `chain` to check against a specific chain, or omit it to auto-detect. Ethereum addresses report their EIP-55 checksum state; Bitcoin covers base58check (P2PKH/P2SH) and bech32/bech32m segwit (P2WPKH/P2WSH/P2TR). A well-formed but invalid address returns `valid:false` — not an error.","tags":["validate wallet address","ethereum address validation","bitcoin address validation","crypto address checker","blockchain address validation","check eip55 checksum"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://wallet.openverbs.com/v1/detect","method":"POST","description":"Guess which chain an address belongs to from its shape and encoding, without requiring the caller to know it up front. Returns the chain, format and address type, or nulls when nothing matches.","tags":["detect blockchain address","wallet chain detection","identify crypto address","bitcoin ethereum detector","address format lookup","guess address chain"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://wallet.openverbs.com/v1/eip55","method":"POST","description":"Apply the EIP-55 mixed-case checksum to an Ethereum address, regardless of its input casing. Returns the checksummed address and whether it differed from the input. Non-hex input is rejected before payment.","tags":["eip55 checksum api","checksum ethereum address","convert eth address checksum","ethereum mixed case checksum","apply eip55","eth address normalizer"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://wallet.openverbs.com/v1/normalize","method":"POST","description":"Normalise an address to its canonical form — Ethereum to its EIP-55 checksummed form, bech32 Bitcoin to lowercase (base58check is left untouched as it is case-sensitive). An address that is not a valid address of a known chain is rejected before payment.","tags":["normalize wallet address","canonical crypto address","normalize ethereum address","lowercase bech32 address","wallet address canonicalization","format blockchain address"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://music.openverbs.com/v1/note","method":"POST","description":"Parse a note in scientific pitch notation (e.g. \"A4\", \"C#5\", \"Bb3\") into its letter, accidental, pitch class (0..11), octave, MIDI number and frequency in Hz (A4 = 440 Hz).","tags":["parse musical note","note frequency lookup","midi note converter","scientific pitch notation","musical note api","convert note to hz"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://music.openverbs.com/v1/interval","method":"POST","description":"Name the interval between two notes (`to` at or above `from`) — its size in semitones, its diatonic number and its quality (perfect/major/minor/augmented/diminished). Correct spelling matters: C→F# is an augmented fourth, C→Gb a diminished fifth.","tags":["music interval calculator","interval between notes","name musical interval","semitone interval lookup","diatonic interval api","compare two notes"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://music.openverbs.com/v1/transpose","method":"POST","description":"Transpose a note by a (possibly negative) number of semitones. Result is spelled chromatically with sharps, or flats when `preferFlats` is true.","tags":["transpose musical note","shift note by semitones","note transposition api","convert pitch up down","music key transpose","semitone transpose"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://music.openverbs.com/v1/scale","method":"POST","description":"Build a scale from a root note and type (major, natural-minor, harmonic-minor, melodic-minor, dorian, phrygian, lydian, mixolydian, locrian, major-pentatonic, minor-pentatonic, blues, chromatic). Heptatonic scales and modes are spelled diatonically (F major → F G A Bb C D E). Returns the note names, MIDI numbers and semitone intervals.","tags":["build music scale","scale notes generator","major scale api","musical mode builder","diatonic scale lookup","generate scale notes"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://music.openverbs.com/v1/chord","method":"POST","description":"Build a chord from a root note and quality (major, minor, dim, aug, maj7, min7, dom7, dim7, half-dim7, sus2, sus4, maj6, min6). Notes are spelled by stacked thirds (C dom7 → C E G Bb). Returns the note names, MIDI numbers and semitone intervals.","tags":["build music chord","chord notes generator","chord quality lookup","triad seventh chord api","generate chord tones","music chord builder"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://astro.openverbs.com/v1/julian-date","method":"POST","description":"Compute the astronomical Julian Date (JD, fractional, epoch noon 1 Jan 4713 BC) and Modified Julian Date (MJD = JD − 2400000.5) of a UTC instant. Unlike `calendar`'s integer Julian Day Number, this carries the time-of-day fraction.","tags":["julian date calculator","modified julian date","utc to julian date","astronomical jd api","compute mjd","date to jd"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://astro.openverbs.com/v1/sun","method":"POST","description":"Compute sunrise, sunset, solar noon and day length for a latitude/longitude (east-positive) and date, using the NOAA sunrise equation. All times are UTC ISO-8601. Locations in polar day or night return null rise/set with a `polar` flag — a successful result, not an error.","tags":["sunrise sunset api","solar noon calculator","day length lookup","noaa sunrise equation","sun times by location","polar day night"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://astro.openverbs.com/v1/moon-phase","method":"POST","description":"Compute the Moon's phase name, age in days since the last new moon and illuminated fraction (0..1) for a UTC date/time. Uses the mean synodic month (29.53 days).","tags":["moon phase api","lunar phase calculator","moon illumination lookup","moon age in days","date to moon phase","synodic month phase"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://astro.openverbs.com/v1/season","method":"POST","description":"Determine the astronomical season for a date, based on the Sun's apparent ecliptic longitude (0°=March equinox, 90°=June solstice, …). Defaults to the northern hemisphere; pass `hemisphere` to flip.","tags":["astronomical season api","season by date","equinox solstice season","solar longitude lookup","hemisphere season calculator","date to season"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://iso.openverbs.com/v1/country","method":"POST","description":"Look up a country by its ISO 3166-1 alpha-2 code, alpha-3 code, numeric code or English name. Provide exactly one field. Returns all codes plus the UN region.","tags":["iso country lookup","iso 3166 api","country code lookup","alpha2 country code","alpha3 country code","country numeric code"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://iso.openverbs.com/v1/currency","method":"POST","description":"Look up an active ISO 4217 currency by its alphabetic code or numeric code. Provide exactly one field. Returns the code, numeric code, name and number of minor units (decimal places).","tags":["iso currency lookup","iso 4217 api","currency code lookup","currency minor units","numeric currency code","validate currency code"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://iso.openverbs.com/v1/language","method":"POST","description":"Look up a language by its ISO 639-1 alpha-2 code, ISO 639-2 alpha-3 code (bibliographic or terminologic) or English name. Provide exactly one field.","tags":["iso language lookup","iso 639 api","language code lookup","alpha2 language code","alpha3 language code","language name lookup"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://iso.openverbs.com/v1/search","method":"POST","description":"Fuzzy-search countries, currencies and languages by name or code. Scope with `registry` (defaults to all). Matches are ranked exact-code/name → prefix → substring.","tags":["search iso codes","iso registry search","find country currency language","fuzzy iso lookup","search standards registries","code name search"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://postal.openverbs.com/v1/validate","method":"POST","description":"Check whether a postal / ZIP code is well-formed for a country (ISO 3166-1 alpha-2). A malformed code is a successful result with `valid:false`, not an error — only an unsupported country or empty code is a 400.","tags":["validate postal code","zip code validation","postcode validator","postal code api","check country postcode","verify zip format"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://postal.openverbs.com/v1/format","method":"POST","description":"Normalise a postal code's casing and whitespace (uppercase, collapse runs of spaces) and report whether the normalised form is valid for the country.","tags":["normalize postal code","format zip code","postcode normalization","postal code cleanup","uppercase postal code","standardize address code"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://postal.openverbs.com/v1/spec","method":"POST","description":"Return the validation regular expression (source and flags) used for a country's postal codes.","tags":["postal code regex","country postcode pattern","zip code pattern lookup","postal validation regex","postal format rules","postcode spec api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://postal.openverbs.com/v1/countries","method":"POST","description":"List every ISO 3166-1 alpha-2 country code for which a postal-code pattern is available.","tags":["supported postal countries","list postcode countries","postal country codes","zip validation coverage","postal code country list","countries with postcodes"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://encoding.openverbs.com/v1/detect","method":"POST","description":"Guess the character set of a base64-encoded byte buffer: sniffs a byte-order mark, then falls back to ASCII / UTF-8 validation and a UTF-16 NUL-pattern heuristic. Returns a best-effort charset with a confidence label — a low-confidence guess is still a successful 200.","tags":["detect character set","charset detection api","encoding detector","detect utf-8 bytes","base64 charset lookup","sniff byte order mark"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://encoding.openverbs.com/v1/transcode","method":"POST","description":"Decode a base64 byte buffer from one character set and re-encode it into another (utf-8, utf-16le, utf-16be, latin1, ascii). Characters that the target set cannot represent, or bytes invalid for the source set, are clean 400s.","tags":["transcode charset","convert text encoding","utf-8 to utf-16","latin1 to utf8","decode base64 bytes","character set converter"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://encoding.openverbs.com/v1/normalize","method":"POST","description":"Apply a Unicode normalisation form (NFC, NFD, NFKC or NFKD) to a string. Reports whether the text changed and its length in UTF-16 code units and code points.","tags":["unicode normalization api","normalize unicode string","nfc nfkc converter","unicode form conversion","canonical unicode text","normalize text accents"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://encoding.openverbs.com/v1/inspect","method":"POST","description":"Break a string into its Unicode code points, each with its U+ notation, decimal value and UTF-8 / UTF-16 byte layout, plus total byte lengths.","tags":["inspect unicode code points","unicode codepoint lookup","string byte layout","utf-8 bytes inspector","utf-16 code units","text code points"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://nato.openverbs.com/v1/spell","method":"POST","description":"Spell text using the NATO/ICAO phonetic alphabet (A→Alfa, B→Bravo, …), including digits and spaces (→Space). Characters with no phonetic spelling are clean 400s.","tags":["nato phonetic spelling","spell with nato alphabet","icao alphabet api","text to phonetic words","radio spelling alphabet","convert letters to alfa bravo"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://nato.openverbs.com/v1/unspell","method":"POST","description":"Turn a string of phonetic words back into text (\"Sierra Oscar Sierra\" → \"SOS\"). Accepts common alternative spellings (Alpha, Juliet, Niner). Unknown words are clean 400s.","tags":["decode nato phonetic","phonetic words to text","nato alphabet decoder","unspell radio words","alfa bravo to letters","icao words decoder"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://nato.openverbs.com/v1/to-morse","method":"POST","description":"Encode text into international (ITU) Morse code. Letters are separated by spaces and words by \"/\". Supports A-Z, 0-9 and common punctuation; unsupported characters are clean 400s.","tags":["text to morse code","encode morse code","morse encoder api","convert text to dots dashes","international morse encode","letters to morse"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://nato.openverbs.com/v1/from-morse","method":"POST","description":"Decode international Morse code back into text. Letters are separated by whitespace and words by \"/\". Unknown Morse sequences are clean 400s.","tags":["decode morse code","morse code translator","dots dashes to text","morse decoder api","international morse decode","morse to letters"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://emoji.openverbs.com/v1/lookup","method":"POST","description":"Resolve an emoji by its shortcode (e.g. \"smile\" or \":smile:\") or exact name. Provide exactly one field. Returns the emoji, its metadata and code points.","tags":["emoji lookup api","shortcode emoji lookup","emoji name lookup","resolve emoji shortcode","gemoji lookup","find exact emoji"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://emoji.openverbs.com/v1/search","method":"POST","description":"Fuzzy-search emoji by name, shortcode or keyword tag, ranked exact → prefix → substring.","tags":["emoji search api","search emoji by keyword","emoji shortcode search","find emoji by name","fuzzy emoji search","emoji keyword lookup"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://emoji.openverbs.com/v1/info","method":"POST","description":"Given an emoji character (or any string), return its code points and — if known — its name, category, shortcodes and tags. An unknown emoji is a successful result with `known:false`, not an error.","tags":["inspect emoji","emoji code points","emoji metadata lookup","unicode emoji info","emoji shortcode info","analyze emoji character"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://emoji.openverbs.com/v1/flag","method":"POST","description":"Build the flag emoji for an ISO 3166-1 alpha-2 country code from its regional-indicator symbols (e.g. \"US\" → 🇺🇸). Non two-letter codes are clean 400s.","tags":["country flag emoji","iso flag emoji","generate flag emoji","country code to flag","regional indicator symbols","flag emoji api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://chemeq.openverbs.com/v1/balance","method":"POST","description":"Balance an equation such as \"H2 + O2 -> H2O\" into the smallest whole-number coefficients using exact rational linear algebra. Equations that cannot be balanced with positive coefficients are clean 400s.","tags":["balance chemical equation","chemical equation balancer","stoichiometric coefficients","reaction balancing api","balance chemistry reaction","equation to coefficients"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://chemeq.openverbs.com/v1/stoichiometry","method":"POST","description":"Given a reaction and a known amount (moles or grams) of one species, compute the amount of a target species. The equation is balanced automatically.","tags":["reaction stoichiometry calculator","moles to grams chemistry","compute target species","chemical yield from amount","stoichiometry api","mole mass conversion"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://chemeq.openverbs.com/v1/limiting","method":"POST","description":"Given a reaction and the supplied amount of every reactant, identify the limiting reagent and compute leftover reactant and theoretical product yields.","tags":["limiting reagent calculator","theoretical yield api","find limiting reactant","leftover reactant calculation","reaction yield calculator","chemistry limiting reagent"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://dice.openverbs.com/v1/parse","method":"POST","description":"Parse dice notation such as \"3d6+2\", \"4d6kh3\" (keep highest 3) or \"2d20dl1\" (drop lowest 1) into structured terms. Malformed notation is a clean 400.","tags":["parse dice notation","dice notation parser","validate dice notation","rpg dice parser","dnd dice syntax lookup"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://dice.openverbs.com/v1/roll","method":"POST","description":"Roll dice notation with a cryptographically secure RNG, optionally repeated. Returns per-die rolls, the kept dice and the total for each roll.","tags":["roll dice","rpg dice roller","secure dice roll","roll dice notation","random dice api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://dice.openverbs.com/v1/stats","method":"POST","description":"Compute the exact probability distribution of a dice notation — mean, variance, standard deviation, min/max and the full probability mass function — with no sampling. Notations whose outcome range is too large for exact computation are clean 400s.","tags":["dice probability distribution","calculate dice odds","dice statistics api","exact dice probabilities","rpg dice probability"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://braille.openverbs.com/v1/encode","method":"POST","description":"Transcribe text to Unicode braille (grade-1 / uncontracted English braille), with capital and number signs. Characters with no grade-1 representation are clean 400s.","tags":["text to braille","braille encoder","transcribe braille text","unicode braille conversion","grade one braille"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://braille.openverbs.com/v1/decode","method":"POST","description":"Transcribe a Unicode braille string back to text, honouring capital and number signs. Non-braille or unmapped cells are clean 400s.","tags":["braille to text","braille decoder","parse braille cells","unicode braille translation","decode braille string"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://braille.openverbs.com/v1/to-dots","method":"POST","description":"Break a braille string into its cells and the raised-dot numbers (1–8) of each cell.","tags":["braille dot numbers","braille cell dots","parse braille dots","braille dots lookup","raised dot numbers"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://braille.openverbs.com/v1/from-dots","method":"POST","description":"Build braille cells from raised-dot numbers (each cell an array of 1–8). Out-of-range or repeated dots are clean 400s.","tags":["dots to braille","braille cell builder","convert dot numbers","braille from dots","raised dots to unicode"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://emailauth.openverbs.com/v1/spf-parse","method":"POST","description":"Parse an SPF TXT record (\"v=spf1 …\") into its qualified mechanisms and modifiers. Records that do not start with v=spf1 or use unknown mechanisms are clean 400s.","tags":["parse spf record","spf record parser","spf dns lookup","validate spf syntax","email spf mechanisms"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://emailauth.openverbs.com/v1/spf-check","method":"POST","description":"Evaluate an SPF record against an IPv4/IPv6 address using only its literal ip4/ip6/all mechanisms. DNS-dependent mechanisms (include, a, mx, exists, redirect) reached before a match yield an honest `indeterminate` result rather than a guess.","tags":["check spf ip","evaluate spf record","spf ip validation","spf sender check","email authentication check"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://emailauth.openverbs.com/v1/dmarc-parse","method":"POST","description":"Parse a DMARC TXT record (\"v=DMARC1; p=…\") into its policy, alignment, sampling and reporting tags. Missing or invalid policy/alignment/pct values are clean 400s.","tags":["parse dmarc record","dmarc record parser","validate dmarc policy","dmarc dns lookup","email dmarc tags"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://emailauth.openverbs.com/v1/dkim-parse","method":"POST","description":"Parse a DKIM public-key DNS TXT record (\"v=DKIM1; k=rsa; p=…\") into its key type, public key, hash algorithms, service types and flags. An empty `p` is reported as a revoked key. A missing `p` tag is a clean 400.","tags":["parse dkim record","dkim key parser","validate dkim dns","dkim public key lookup","email dkim tags"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://readability.openverbs.com/v1/score","method":"POST","description":"Compute the standard English readability formulas — Flesch Reading Ease, Flesch–Kincaid grade, Gunning fog, SMOG, Coleman–Liau and ARI — along with the underlying sentence/word/syllable statistics. Empty text is a clean 400.","tags":["readability score","text readability api","flesch score calculator","reading ease analysis","grade formula scores"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://readability.openverbs.com/v1/grade","method":"POST","description":"Summarise a text's difficulty as a single consensus US grade level (averaging the five grade formulas), plus the Flesch Reading Ease, a plain-language difficulty band and an approximate age range.","tags":["grade level estimate","text difficulty grade","reading grade level","consensus readability grade","age range readability"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://readability.openverbs.com/v1/syllables","method":"POST","description":"Count syllables per word and in total across the text.","tags":["count syllables","syllable counter","word syllable lookup","text syllable count","parse word syllables"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://readability.openverbs.com/v1/reading-time","method":"POST","description":"Estimate reading and speaking time for a text at configurable words-per-minute rates (defaults: 200 wpm reading, 130 wpm speaking).","tags":["reading time estimate","speaking time estimate","words per minute calculator","estimate read time","text duration api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://unicode.openverbs.com/v1/inspect","method":"POST","description":"Resolve a single code point (given as 'char' or 'codepoint') to its name, general category, block, script and plane. Provide exactly one of the two inputs.","tags":["inspect unicode character","unicode code point lookup","unicode character info","code point inspector","unicode category lookup"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://unicode.openverbs.com/v1/name","method":"POST","description":"Reverse lookup: resolve a Unicode character name (e.g. 'SNOWMAN', 'CJK UNIFIED IDEOGRAPH-4E2D', 'HANGUL SYLLABLE GA') to its code point. Loose whitespace/case matching. An unknown name is a successful `found:false`.","tags":["unicode name lookup","character name to codepoint","find unicode by name","unicode character search","resolve character name"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://unicode.openverbs.com/v1/block","method":"POST","description":"Resolve a Unicode block name (loose matching) to its range, size, count of assigned characters and a small sample. An unknown block is a successful `found:false`. This is a Unicode Character Database block — not a blockchain block.","tags":["unicode block","character block","unicode block range","code point block","unicode character range"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://unicode.openverbs.com/v1/script","method":"POST","description":"Resolve a Unicode script name (loose matching) to its code point ranges, total size and a small sample. An unknown script is a successful `found:false`.","tags":["unicode script lookup","character script ranges","script code point lookup","unicode writing system","find script characters"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://useragent.openverbs.com/v1/parse","method":"POST","description":"Break a User-Agent string into browser, engine, operating system (each with a version) and device type. Unidentifiable components are reported as null.","tags":["parse user agent","user agent parser","browser ua lookup","device user agent info","parse browser string"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://useragent.openverbs.com/v1/classify","method":"POST","description":"Classify a User-Agent by device form factor and return convenience booleans (isBot, isMobile, isTablet, isDesktop, isTouchCapable) for routing decisions.","tags":["classify user agent","detect device type","user agent device api","mobile desktop detection","ua form factor"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://useragent.openverbs.com/v1/is-bot","method":"POST","description":"Detect whether a User-Agent belongs to a known bot, crawler, AI agent or HTTP tool, and if so return its name and category (search, social, seo, ai, monitoring, tool, …).","tags":["detect bot user agent","crawler user agent lookup","bot detection api","ai crawler detection","identify http tool"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://geocode.openverbs.com/v1/forward","method":"POST","description":"Convert a free-form address or place name into ranked coordinates with a structured, normalized address. Optionally bias by country and language.","tags":["geocode address","address to coordinates","place geocoding api","location lookup api","normalize address geocode"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://geocode.openverbs.com/v1/reverse","method":"POST","description":"Convert latitude/longitude coordinates into the nearest structured address. Optionally set the preferred result language.","tags":["reverse geocode","coordinates to address","lat lon address lookup","nearest address api","gps reverse geocoding"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://search.openverbs.com/v1/web","method":"POST","description":"Web search API - live Google (default) or Bing SERP for a query: search engine results returned as ranked organic hits with title, URL, domain and snippet, localised by location and language. A google search api / serp api for agents: search the web, live web search for grounding, RAG and web lookup.","tags":["search","web-search","google-search","serp","search-engine"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.01","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://search.openverbs.com/v1/bing","method":"POST","description":"Bing search API - live Bing SERP for a query: Bing search engine results returned as ranked organic hits with title, URL, domain and snippet, localised by location and language. A bing serp api for agents: search Bing, live Bing web search for grounding, RAG and cross-engine lookup beyond Google.","tags":["bing","bing-search","search","web-search","serp"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.01","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://search.openverbs.com/v1/news","method":"POST","description":"News search: live Google News results for a query, localised by location and language. Returns ranked articles with title, URL, domain and, where available, source and timestamp. Real-time news API for current events and headlines.","tags":["news","news-search","search","serp","google-news","news-api","web-search","current-events","headlines","news-results","articles","real-time"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.01","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://search.openverbs.com/v1/jobs","method":"POST","description":"Jobs search: Google Jobs listings for a query (e.g. \"backend engineer\"), localised by location and language. Returns ranked postings with title, employer, location and, where available, salary, contract type, source and posting date. Results are collected on demand, so the call may take a few seconds.","tags":["jobs","job-search","jobs-api","google-jobs","hiring","job-listings","job-postings","recruiting","vacancies","careers","employment","search"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.01","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://search.openverbs.com/v1/youtube","method":"POST","description":"Live YouTube video-search results for a query, localised by location and language. Returns ranked videos with title, URL, video id, channel, view count, publish date and duration.","tags":["youtube","video-search","search","videos","youtube-search","video","serp","youtube-api","video-results","youtube-videos"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.01","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://search.openverbs.com/v1/local","method":"POST","description":"Live Google local-finder (map places) results for a query, localised by location and language. Returns ranked places with title, address, website domain, phone, rating and review count.","tags":["local-search","search","places","google-maps","local","businesses","local-finder","maps","business-search","local-pack","places-api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.01","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://search.openverbs.com/v1/images","method":"POST","description":"Image search API - live Google Images results for a query, localised by location and language. Returns ranked images with title, direct image URL, source page URL and alt text. A google images / image search api for agents.","tags":["image-search","images","google-images","search","photos","picture-search","serp"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://search.openverbs.com/v1/scholar","method":"POST","description":"Scholarly search API - academic papers and research articles for a query, powered by OpenAlex. Returns ranked works with title, authors, year, venue, DOI, citation count and open-access status. A google-scholar-style research / scholarly articles search for agents. Data source: OpenAlex (CC0).","tags":["scholar","academic-search","research-papers","scholarly-articles","google-scholar","citations","search"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://search.openverbs.com/v1/wikipedia","method":"POST","description":"Wikipedia summary API - the plain-language summary of the best-matching Wikipedia article for a topic or query, in any language. Returns the article title, short description, summary extract, thumbnail image and canonical URL. A wikipedia / encyclopedia lookup for agents grounding answers on a topic. No match returns found:false. Data source: Wikipedia (CC BY-SA 4.0).","tags":["wikipedia","wiki","encyclopedia","article-summary","topic-summary","reference","search"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://search.openverbs.com/v1/suggest","method":"POST","description":"Live Google autocomplete suggestions for a partial query, localised by location and language. Returns ranked suggestion strings with a relevance score.","tags":["autocomplete","search-suggestions","search","suggest","keyword-suggest","query-autocomplete","google-autocomplete","suggestions","keyword-ideas"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.01","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://sentiment.openverbs.com/v1/sentiment","method":"POST","description":"Market & brand sentiment for any keyword, brand, ticker or product: analyses the sentiment of web & news content mentioning it and returns an overall label (positive/negative/neutral/mixed), a net sentiment score (-1..1), positive/negative/neutral shares and an emotion breakdown (anger, happiness, love, sadness, fun).","tags":["crypto sentiment","sentiment","sentiment-analysis","market-sentiment","social-sentiment"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.04","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://places.openverbs.com/v1/place-details","method":"POST","description":"Look up a business's full Google Business Profile by name and location. Returns name, category, star rating and review count, address, phone, website, opening hours by day, Google place_id and CID, coordinates and claimed status. For place enrichment, store-hours and business lookups. Unknown business returns found=false.","tags":["place details","google business profile","business details","business hours","opening hours","google places api","place lookup","business info","store hours","place profile","business enrichment","gmb"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.02","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://places.openverbs.com/v1/business-search","method":"POST","description":"Google Business Profile and Google Maps local business search API: find businesses within a radius of a coordinate, filtered by category and/or name. Returns ranked businesses with name, category, star rating and review count, address, phone, website domain, place_id/CID and coordinates. For local SEO, lead lists and competitor research. No match → empty results.","tags":["find local business","local business search","business directory","google maps","places search","nearby businesses","local listings","business finder","map search","poi search","google places","business data","google-business-profile","google-maps","local-seo","places","leads","reviews"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.03","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://places.openverbs.com/v1/business-categories","method":"POST","description":"Count how many Google businesses fall under each category within a radius of a coordinate, optionally filtered by category or name. Returns categories ranked by business count - for local market sizing, competitor-density analysis and site-selection research. No match → empty results.","tags":["business categories","category aggregation","local market research","business density","market sizing","competitor density","google business categories","local business counts","area analysis","business data"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.04","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://products.openverbs.com/v1/amazon-search","method":"POST","description":"Amazon product search API - search Amazon products / find products on Amazon by keyword (US). Live Amazon product data: ranked listings with ASIN, title, product URL, image, price range, currency, star rating, review count and Amazon's Choice / Best Seller flags. No matches returns empty results.","tags":["amazon product search","search amazon products","find products on amazon","amazon product data","amazon prices","amazon","products","product search","shopping","ecommerce","amazon products","price comparison","retail","asin"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://products.openverbs.com/v1/amazon-product","method":"POST","description":"Amazon product detail API (US) by ASIN - Amazon product data for one ASIN: title, product URL, image, price range, discount, currency, star rating, review count, category path, availability and description. Amazon prices and product-detail lookup. Unknown ASIN returns found=false.","tags":["amazon product detail","amazon product data","amazon prices","amazon product","product detail","asin","asin lookup","amazon","products","product info","ecommerce","price"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://products.openverbs.com/v1/amazon-sellers","method":"POST","description":"Amazon offers & sellers API (US) by ASIN: the buy-box winner plus third-party sellers, each with seller name, price, regular price, discount, condition (new/used), ships-from and seller rating. Amazon offers and sellers for buy-box tracking and price comparison. No offers returns empty results.","tags":["amazon offers and sellers","amazon offers","amazon sellers","buy box","price comparison","third-party sellers","asin","amazon","products","ecommerce","seller prices"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://products.openverbs.com/v1/google-shopping","method":"POST","description":"Google Shopping product search API - search Google Shopping by keyword (US) and get ranked product offers across sellers. Live Google Shopping data: title, product URL, image, seller, price, currency, star rating, review count, Google product id and delivery info. Compare product prices across merchants. No matches returns empty results.","tags":["google shopping","google shopping search","shopping search","compare product prices","product search","shopping","google shopping api","products","ecommerce","price comparison","retail","product prices"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://seo.openverbs.com/v1/keyword-ideas","method":"POST","description":"Keyword ideas API: discover related keyword ideas from a seed keyword for keyword research, each with Google monthly search volume, CPC, competition, keyword difficulty and search intent. For content planning and SEO research. No ideas returns empty results.","tags":["related keywords api","keyword research api","keyword ideas generator","search volume api","keyword difficulty api","seo keyword tool","keyword-ideas","keyword-research","search-volume","related-keywords","cpc","seo"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.04","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://seo.openverbs.com/v1/related-keywords","method":"POST","description":"Related keywords API - expand a seed keyword using Google's \"searches related to\" graph, returning the related keywords (traversed to a configurable depth) each with monthly search volume, CPC, competition, keyword difficulty and search intent, plus the further related terms branching off each. For content-cluster planning and keyword discovery. No matches returns empty results.","tags":["related keywords api","keyword expansion api","searches related to","serp related searches","keyword research api","lsi keywords api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.04","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://seo.openverbs.com/v1/keyword-variations","method":"POST","description":"Keyword variations API: expand a seed phrase into keywords containing that phrase, such as 'running shoes' into 'running shoes for women'. Each includes Google monthly search volume, CPC, competition, keyword difficulty and search intent. No matches returns empty results.","tags":["keyword variations","keyword variations api","keyword research","search volume","seo"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.04","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://seo.openverbs.com/v1/keyword-suggestions","method":"POST","description":"Keyword suggestions API: discover keywords to target from a website or page using Google Ads Keyword Planner data, with monthly search volume, CPC, advertising competition, bid estimates and monthly search history. Unlike ranked-keywords, these are suggestions, not existing rankings. Returns up to 100 keywords. No data returns empty results.","tags":["keyword suggestions","keywords for site","website keywords","keyword research","google keyword planner"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.15","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://seo.openverbs.com/v1/keyword-overview","method":"POST","description":"Keyword volume API: get exact SEO metrics for a list of keywords you already have: Google monthly search volume, CPC, competition, keyword difficulty and search intent for each. For prioritising a keyword list. Unknown keywords are omitted.","tags":["keyword overview api","search volume lookup","keyword metrics api","keyword cpc api","seo keyword metrics","bulk keyword volume","keyword-overview","keyword-volume","search-volume","keyword-research","keyword-difficulty","cpc","seo"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.04","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://seo.openverbs.com/v1/keyword-volume-history","method":"POST","description":"Keyword volume history API: get Google monthly search volume history for a list of keywords, back to 2019: a per-keyword month-by-month search-volume time series plus current CPC and competition. For spotting seasonality, demand trends and momentum that a single keyword-overview snapshot misses. Up to 10 keywords per call; unknown keywords are omitted.","tags":["historical search volume api","keyword search volume history","monthly search volume","keyword seasonality","search volume trend","keyword demand history","search-volume","keyword-volume","keyword-research","google-trends","cpc","seo"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.15","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://seo.openverbs.com/v1/search-intent","method":"POST","description":"Classify the search intent behind keywords: for each keyword, the dominant intent (informational, navigational, commercial or transactional) with a probability, plus any secondary intents. For mapping a keyword list to funnel stage and content type. Up to 1000 keywords per call.","tags":["search intent api","keyword intent api","query intent classification","informational transactional","seo intent","keyword classification"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.03","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://seo.openverbs.com/v1/keyword-difficulty","method":"POST","description":"Keyword difficulty API: get the SEO keyword difficulty score (0-100, how hard it is to rank in Google top 10) for up to 1000 keywords in a single call. For prioritising which keywords to target. Keywords with no data are omitted.","tags":["keyword difficulty api","bulk keyword difficulty","seo difficulty score","keyword competition api","kd score api","keyword ranking difficulty","keyword-difficulty","keyword-research","seo-difficulty","keyword-competition","kd","seo"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.03","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://seo.openverbs.com/v1/trends","method":"POST","description":"Google Trends search interest for up to 5 terms: a relative 0-100 popularity series over time, with per-keyword average and latest value. For content timing, seasonality and demand research. Optional location (default worldwide), timeframe (7d/30d/90d/12m/5y, default 12m) and type (web/news/youtube). found=false when no data.","tags":["google trends api","search interest api","trending keywords api","keyword popularity api","search demand trends","interest over time"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.03","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://seo.openverbs.com/v1/ranked-keywords","method":"POST","description":"Get the Google organic keywords a domain already ranks for, each with its ranking position, ranking URL, monthly search volume, CPC, difficulty and search intent. For competitor and site SEO audits. Unknown domain returns empty results.","tags":["ranked keywords api","organic keywords by domain","domain keyword rankings","keyword rank checker","seo competitor keywords","serp position api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.05","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://seo.openverbs.com/v1/competitors","method":"POST","description":"Find a domain's organic search competitors: rival domains ranking for the same Google keywords, each with the number of common keywords, average position, total ranked keywords and estimated organic traffic. For competitive SEO research. Empty results if none.","tags":["seo competitors api","organic competitors api","competitor analysis api","competing domains api","serp competitors","domain competitors"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.05","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://seo.openverbs.com/v1/serp-competitors","method":"POST","description":"SERP competitors API - given a set of target Google keywords, find the domains that dominate those search results, each with how many of the keywords they rank for, average and median position, SERP rating, estimated traffic (ETV) and visibility. Unlike a domain-based competitor lookup, this starts from the keywords you want to win. For competitive SEO and content-strategy research. Empty results if none.","tags":["serp competitors api","keyword serp competitors","competing domains api","serp analysis api","keyword competition api","competitor discovery api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.05","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://seo.openverbs.com/v1/page-intersection","method":"POST","description":"Given a set of specific page URLs, find the Google keywords those pages jointly rank for, with each page's position, URL and estimated traffic (ETV) per keyword, plus search volume, CPC, competition, difficulty and intent. Page-level, not domain-level. Optional exclude_pages narrows to keywords the pages rank for that others do not.","tags":["page intersection api","page keyword intersection","content gap pages","competing pages keywords","serp page overlap","page level keyword analysis"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.05","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://seo.openverbs.com/v1/keyword-gap","method":"POST","description":"Keyword gap analysis API - find the Google keywords a competitor ranks for that your domain does not, each with the competitor's ranking position and URL plus monthly search volume, CPC, competition, keyword difficulty and search intent. Surfaces content gaps and keyword opportunities for competitive SEO. Empty results if no gap.","tags":["keyword gap api","content gap analysis","competitor keyword gap","missing keywords api","seo gap analysis","domain intersection api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.05","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://seo.openverbs.com/v1/domain-overview","method":"POST","description":"Domain overview: estimate a domain's Google SEO footprint — total organic and paid keywords, estimated traffic (ETV), traffic cost, and how many keywords rank in the top 3, top 10 and top 100. Fast website and domain SEO traffic overview and audit. Unknown domain returns found=false.","tags":["domain overview api","website seo overview","domain traffic overview","organic traffic estimate","domain seo metrics","website traffic api","seo audit api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.04","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://seo.openverbs.com/v1/traffic-estimate","method":"POST","description":"Website traffic estimator API - estimate monthly Google organic and paid traffic (ETV) and ranked-keyword counts for up to 100 domains in a single call. For competitor analysis, prospect/CRM scoring and bulk domain enrichment. Unknown domains return found=false.","tags":["website traffic api","traffic estimation api","bulk traffic estimator","organic traffic api","domain traffic checker","competitor traffic api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.05","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://seo.openverbs.com/v1/backlinks","method":"POST","description":"Get a domain's backlink profile and authority: DataForSEO domain rank, total backlinks, referring domains and main domains, referring pages, broken backlinks and spam score. For link analysis and competitor research. Unknown domain returns found=false.","tags":["backlinks api","backlink checker","domain authority api","referring domains api","domain rank api","link profile api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.06","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://seo.openverbs.com/v1/backlinks-history","method":"POST","description":"Get a domain's backlink profile over time: a monthly timeseries of domain rank, total backlinks, new and lost backlinks, referring domains (new/lost/total), referring main domains, broken backlinks and crawled pages. For tracking link velocity and growth or a competitor's link building. Unknown domain returns found=false.","tags":["backlink history api","link growth api","referring domains history","backlink timeseries","link velocity api","seo trend api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.05","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://seo.openverbs.com/v1/referring-domains","method":"POST","description":"List the domains linking to a target, each with DataForSEO domain rank, number of backlinks, dofollow count, referring subdomains, broken backlinks, spam score and first/last seen dates. For backlink audits and link building. Unknown domain returns empty results.","tags":["referring domains api","backlink sources api","linking domains api","backlink profile api","link building api","domain rank api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.05","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://seo.openverbs.com/v1/backlink-anchors","method":"POST","description":"Backlink anchor text API - list the anchor texts pointing at a domain, each with how many backlinks, referring domains and referring pages use it, the dofollow/nofollow split, DataForSEO rank, spam score and broken-link count. For anchor-text distribution analysis, over-optimization/penalty audits and link-building research. Unknown domain returns empty results.","tags":["backlink anchors api","anchor text api","anchor text distribution","backlink profile api","link anchor analysis","seo anchor text"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.05","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://seo.openverbs.com/v1/relevant-pages","method":"POST","description":"Relevant pages API - list a domain's best-performing pages in Google, each with page-level organic and paid metrics: ranked keyword count, estimated traffic (ETV), traffic cost and position buckets (pos1/top3/top10/top100). For finding a site's top content, competitor content research and page-level SEO audits. Unknown domain returns empty results.","tags":["relevant pages api","top pages api","best performing pages","page level seo metrics","domain pages traffic","content gap api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.05","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://seo.openverbs.com/v1/historical-rank","method":"POST","description":"Historical rank overview API - a monthly time series of a domain's Google organic and paid visibility: ranked keyword count, estimated traffic (ETV), traffic cost and position buckets (pos1/top3/top10/top100) for each month. For tracking a site's SEO trajectory, spotting traffic drops/recoveries and competitor trend analysis. Unknown domain returns an empty series.","tags":["historical rank api","domain traffic history","seo trend api","organic traffic trend","keyword visibility history","domain rank over time"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.18","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://seo.openverbs.com/v1/on-page","method":"POST","description":"On-page SEO audit API - crawl a single URL and return its on-page SEO health: overall score, title & meta description, H1, word count, internal/external link and image counts, load timing (LCP, TTI) and a list of detected issues (missing meta, broken status, not-https, images missing alt, slow load, …).","tags":["on-page-seo","seo-audit","page-audit","onpage","website-audit","seo","technical-seo"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://seo.openverbs.com/v1/pagespeed","method":"POST","description":"Page speed API - Google PageSpeed Insights (Lighthouse) performance audit for a URL on mobile or desktop. Returns the performance score plus lab Core Web Vitals (LCP, FCP, CLS, TBT, Speed Index, TTI) and, where available, real-user (CrUX) field data. Data source: Google PageSpeed Insights.","tags":["page-speed","core-web-vitals","pagespeed","lighthouse","web-performance","seo","site-speed"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://urltrust.openverbs.com/v1/analyze","method":"POST","description":"Score how likely a URL is to be phishing or untrustworthy using offline lexical and structural heuristics (no network lookups). Checks raw-IP hosts, embedded credentials, punycode/homoglyph labels, brand typosquatting, brand-in-subdomain, abused TLDs, shorteners, random hostnames, odd ports, plaintext http and executable paths. Returns a 0-100 risk score, a verdict and the reasons.","tags":["analyze url trust","phishing url scanner","url risk score","detect typosquatting url","malicious link analysis","url safety check"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://urltrust.openverbs.com/v1/domain","method":"POST","description":"Assess how trustworthy a domain is using authoritative live signals, not just its spelling. Fuses RDAP registration data (domain age — the single strongest phishing signal — plus registrar, expiry and registry status flags), DNS resolvability (A/AAAA), MX presence and DNSSEC into a 0-100 risk score with a verdict (low/medium/high) and the exact reasons. Pairs with `urltrust` (lexical) for a complete picture.","tags":["domain reputation score","check domain trust","rdap domain age","dns mx reputation","domain phishing signals","whois trust lookup"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://urltrust.openverbs.com/v1/techstack","method":"POST","description":"Detect the technology stack a website runs on. Given a domain, returns the software and services it uses (CDN, analytics, frameworks, CMS, payment, hosting, security) grouped by category, plus a domain rank, last-seen date, country and public social links. Unknown domain returns found=false.","tags":["website technology lookup","tech stack detector","what technologies a site uses","cms framework detection","builtwith alternative api","domain technology profile"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.05","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://chain.openverbs.com/v1/gas","method":"POST","description":"Live gas conditions for an EVM chain: current gas price, the latest block's base fee (EIP-1559) and the suggested max priority fee — all in both wei and gwei. Ground truth an agent can't compute. Reads live on-chain data with automatic endpoint fallback.","tags":["gas price","gas","gas fees","gwei","eip-1559"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://chain.openverbs.com/v1/address","method":"POST","description":"Native ETH / wallet balance for an address on any EVM chain: native balance (wei + ether), transaction count (nonce), and whether it's a contract or an externally-owned account (with deployed code size). Reads live on-chain data with automatic endpoint fallback.","tags":["eth balance","wallet balance","native balance","balance","base"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://chain.openverbs.com/v1/token","method":"POST","description":"Live ERC-20 metadata read directly from the contract: name, symbol, decimals and total supply (raw + decimal-formatted). Handles both string and legacy bytes32 name/symbol encodings. Returns `isToken:false` for EOAs or non-token contracts. Reads live on-chain data with automatic endpoint fallback.","tags":["onchain","erc20","token-metadata","total-supply","token-info"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://chain.openverbs.com/v1/token-balance","method":"POST","description":"Live ERC-20 token balance held by a wallet: calls `balanceOf(address)` on the token contract and returns the raw balance plus a decimal-formatted amount (using the token's own decimals) with its symbol. Distinct from `address` (native ETH balance) and `token` (contract metadata). Reads live on-chain data with automatic endpoint fallback.","tags":["onchain","erc20","token-balance","erc20-balance","defi"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://chain.openverbs.com/v1/token-allowance","method":"POST","description":"Live ERC-20 spending allowance an owner has granted a spender: calls `allowance(owner, spender)` on the token and returns the raw amount, a decimal-formatted amount (using the token's decimals) with its symbol, and an `isUnlimited` flag for effectively-infinite approvals. Use it to audit token approvals / approval risk before signing. Reads live on-chain data with automatic endpoint fallback.","tags":["token allowance","erc20 allowance","token approval check","spending approval","unlimited approval","check token approval"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://chain.openverbs.com/v1/gas-estimate","method":"POST","description":"Simulate a transaction before signing: runs `eth_estimateGas` for `{ to, from?, data?, value? }` and returns the estimated gas units and estimated fee (current gas price x gas, in wei + ETH). If the node rejects the call it returns `ok:false` with the decoded `revertReason` (why it would fail) instead of erroring. Reads live on-chain state with automatic endpoint fallback.","tags":["estimate gas","gas estimate","simulate transaction","will transaction revert","revert reason","transaction gas cost"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://chain.openverbs.com/v1/tx","method":"POST","description":"Live status and details of a transaction by hash: success/failed/pending, from/to, value (wei + ether), nonce, block number, gas used, effective gas price and any created contract address. Returns `found:false` for unknown hashes. Reads live on-chain data with automatic endpoint fallback.","tags":["onchain","transaction","tx-hash","transaction-receipt","ethereum"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.003","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://chain.openverbs.com/v1/block","method":"POST","description":"Live block summary by number, hex, or tag (latest/earliest/pending/safe/finalized; default latest): number, hash, parent, timestamp (unix + ISO), transaction count, gas used/limit, base fee and miner. Reads live on-chain data with automatic endpoint fallback.","tags":["onchain","block","block-height","latest-block","ethereum"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.001","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://chain.openverbs.com/v1/logs","method":"POST","description":"Query a contract's event logs over a bounded block range via `eth_getLogs`: filter by `address` (required) and optional `topics`, get back raw logs (topics, data, block, tx hash, log index) with ERC-20/721 Transfer logs auto-decoded to `{from, to, value}`. Block span is capped (large windows are clamped); results are capped by `limit`. Reads live on-chain data with automatic endpoint fallback.","tags":["event logs","get logs","erc20 transfers","token transfer history","contract event logs","eth_getLogs"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://chain.openverbs.com/v1/receipt","method":"POST","description":"Live transaction receipt by hash via `eth_getTransactionReceipt`: success/failed status, block number, from/to, created contract address, gas used, cumulative gas, effective gas price (wei + gwei), tx type and the emitted event logs (capped). Complements `tx` (which reads the transaction itself). Returns `found:false` for unknown/pending hashes. Reads live on-chain data with automatic endpoint fallback.","tags":["transaction receipt","get transaction receipt","tx status","gas used","transaction logs","eth_getTransactionReceipt"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.003","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://chain.openverbs.com/v1/proxy","method":"POST","description":"Detect whether a contract is an upgradeable proxy and resolve its implementation: reads the standard EIP-1967 implementation/admin/beacon slots, EIP-1822 (UUPS), the OpenZeppelin legacy slot, and EIP-1167 minimal-proxy bytecode. Returns the proxy type, implementation, admin and beacon addresses when present. Reads live on-chain data with automatic endpoint fallback.","tags":["proxy contract","implementation address","upgradeable proxy","eip-1967","proxy detection","find implementation contract"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://chain.openverbs.com/v1/explain","method":"POST","description":"Decode a transaction into plain language: native ETH transfer, contract call (with decoded method name for common ERC-20/DEX functions like transfer, approve, swap, mint, multicall) or contract creation; ERC-20 and NFT (ERC-721) transfers it triggered (token, from, to, amount/tokenId from logs); gas spent in ETH; success/failed/pending; and a one-line summary. Reads live on-chain data with automatic endpoint fallback.","tags":["explain transaction","decode transaction","transaction summary","decode calldata","erc20 transfers in transaction","what did this transaction do"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://chain.openverbs.com/v1/token-risk","method":"POST","description":"Deterministic risk screen of an ERC-20 token from on-chain bytecode and metadata, no third-party risk API. Flags privileged or abuse capabilities: blacklist/freeze, owner mint, pausable transfers, upgradeable proxy and a privileged owner, plus tokens missing symbol/decimals or code. Returns each flag with a severity, a 0-100 score and a verdict. Reads live on-chain data with automatic endpoint fallback.","tags":["token risk scan","erc20 honeypot check","token security scan","rug pull check","token contract risk","detect malicious token"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://chain.openverbs.com/v1/ens-resolve","method":"POST","description":"Resolve an ENS name (like alice.eth) to its Ethereum address, read live from the ENS resolver on Ethereum mainnet. Offchain names such as *.base.eth resolve too. Returns `found:false` (a real answer, not an error) when the name has no address record. Live reads with automatic endpoint fallback.","tags":["onchain","ens","ens-resolve","ens-lookup","ethereum-name-service"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.003","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://chain.openverbs.com/v1/ens-reverse","method":"POST","description":"Reverse-resolve an Ethereum address to its primary ENS name (the reverse record set by the owner), read live on Ethereum mainnet. Returns `found:false` when the address has no primary name set. Live reads with automatic endpoint fallback.","tags":["ens reverse","address to ens name","reverse ens lookup","primary ens name","ens name of address","wallet ens name"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.003","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://chain.openverbs.com/v1/ens-records","method":"POST","description":"Read an ENS name's address plus its text records (avatar, url, email, description, com.twitter, com.github and more) in one call, live from the resolver on Ethereum mainnet. Pass `keys` to fetch specific records, or omit it for a sensible default set. Only records that are set are returned. Live reads with automatic endpoint fallback.","tags":["ens text records","ens avatar","ens twitter","ens profile","ens metadata","ens resolver records"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://chain.openverbs.com/v1/nft-metadata","method":"POST","description":"Resolve one NFT (contract + tokenId) into normalized metadata: name, description, image, attributes and token standard (ERC-721 or ERC-1155). Reads the on-chain tokenURI/uri, then fetches and normalizes the metadata document (ipfs/ar/http/data), rewriting ipfs image links to a gateway URL. Returns `found:false` for non-NFT contracts. Live reads with automatic endpoint fallback.","tags":["nft metadata","nft token uri","erc721 metadata","erc1155 metadata","nft image","nft attributes","get nft"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://chain.openverbs.com/v1/decode","method":"POST","description":"Turn a 4-byte function selector or full calldata into its human-readable function signature, and (when calldata is present) the decoded argument values. Supply an `abi` for a fully deterministic offline decode, or omit it to look the selector up in public signature registries. Reads with automatic fallback.","tags":["decode calldata","function selector lookup","4byte selector","decode transaction input","what function is this selector","abi decode"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://chain.openverbs.com/v1/abi","method":"POST","description":"Get the verified contract ABI and verification metadata for a deployed contract by address, sourced from Sourcify. Returns the contract ABI (to decode or call it), contract name, compiler/language, match type, and proxy resolution (is-proxy plus implementation addresses). Supports Ethereum, Base, Arbitrum, Optimism, Polygon. Unverified contracts return `verified:false`. Live reads with cache fallback.","tags":["contract abi","get abi","get contract abi","verified contract","contract metadata"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://chain.openverbs.com/v1/source","method":"POST","description":"Get the verified Solidity/Vyper source code for a deployed contract by address, sourced from Sourcify. Returns every source file (path + content), the contract name, language, compiler version and compiler settings (optimizer, evmVersion) — the full human-readable source an agent needs to read, audit or feed to an LLM. Supports Ethereum, Base, Arbitrum, Optimism, Polygon. Unverified contracts return `verified:false`. Live reads with cache fallback.","tags":["contract source code","get source code","verified source","solidity source","smart contract source"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://chain.openverbs.com/v1/read-contract","method":"POST","description":"Call a read-only (view/pure) function on any deployed contract via eth_call and get the decoded result. Give the contract address and a human-readable signature (e.g. 'balanceOf(address) view returns (uint256)') plus args; include return types to decode outputs, else raw hex is returned. Reads allowances, oracle prices and vault/DAO state. Read-only, no signing. Ethereum, Base, Arbitrum, Optimism, Polygon.","tags":["read contract","call contract","contract read","eth_call","view function","read onchain state"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://chain.openverbs.com/v1/sanctions","method":"POST","description":"Screen a crypto wallet address against the OFAC SDN sanctions list (US Treasury Specially Designated Nationals) before transacting. Multi-chain across ~20 assets (BTC, ETH, USDT, TRX, XMR and more); EVM 0x addresses match case-insensitively. Returns whether the address is sanctioned plus the listed entity, asset and list publish date. Clean address returns `sanctioned:false`. Public-domain OFAC data.","tags":["sanctioned address","ofac screening","wallet sanctions check","aml address screening","sanctions screening"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://chain.openverbs.com/v1/bytecode","method":"POST","description":"Fetch deployed EVM contract runtime bytecode and its Keccak-256 code hash to fingerprint or compare contracts, or feed a disassembler. Supports Ethereum, Base, Arbitrum, Optimism and Polygon, with optional historical block reads. Returns full hex code, byte size and isContract; an empty-code address returns 0x and a null hash. Key-free RPC with endpoint fallback; code capped at 256 KiB.","tags":["contract bytecode","runtime bytecode","contract code hash","eth_getCode","deployed code"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://chain.openverbs.com/v1/btc-fees","method":"POST","description":"Live recommended Bitcoin transaction fee rates (in sat/vB) for next-block, ~30-minute, ~1-hour, economy and minimum confirmation targets, straight from the mempool. Also estimates the total fee (in sats and BTC) for a transaction of the given virtual size, so an agent can pick a fee tier and know the cost before broadcasting.","tags":["bitcoin fees","btc transaction fee","recommended bitcoin fee","sat per vbyte","bitcoin fee estimator","btc fee rate"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://chain.openverbs.com/v1/btc-mempool","method":"POST","description":"Live snapshot of the Bitcoin mempool: number of unconfirmed transactions, total pending virtual size (bytes and MB), the current backlog in blocks, total fees pending (sats and BTC), the fee-rate histogram, and the current chain tip height. Lets an agent gauge network congestion and time a transaction.","tags":["bitcoin mempool","mempool congestion","unconfirmed transactions","bitcoin network congestion","mempool size","btc transaction backlog"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://chain.openverbs.com/v1/btc-address","method":"POST","description":"Balance and activity for a Bitcoin address (base58 1…/3… or bech32 bc1…): confirmed balance (sats and BTC), total received and sent, confirmed transaction count, and unconfirmed/pending value and tx count from the mempool. On-chain ground truth an agent cannot compute locally.","tags":["bitcoin address balance","btc wallet balance","check bitcoin address","bitcoin balance lookup","btc address history","bitcoin received and sent"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://chain.openverbs.com/v1/btc-tx","method":"POST","description":"Look up a Bitcoin transaction by txid: confirmation status, block height and time, fee (sats), effective fee rate (sat/vB), size, weight and virtual size, input and output counts, and total output value (sats and BTC). On-chain ground truth for verifying a payment.","tags":["bitcoin transaction lookup","btc transaction status","verify bitcoin payment","bitcoin txid lookup","btc confirmation status","bitcoin transaction details"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://preflight.openverbs.com/v1/inspect","method":"POST","description":"Fetch any URL and, without paying, decode its x402 402 Payment Required challenge: price (atomic and formatted for known stablecoins), asset, network, payTo, resource, description, timeout and any input schema. Flags MPP and Bazaar discovery extensions. Returns free:true when no payment is needed. SSRF-hardened: public hosts only; private, loopback, link-local and cloud-metadata addresses are rejected.","tags":["inspect x402 endpoint","x402 payment preflight","check payment challenge","bazaar endpoint discovery","mpp payment metadata","validate x402 resource"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://mcpscan.openverbs.com/v1/scan","method":"POST","description":"Statically analyse a Model Context Protocol (MCP) server manifest for security risks. Tool descriptions enter the model context, a prime prompt-injection vector. Deterministic and offline (inline manifest). Flags dangerous capabilities (command/code execution, filesystem, credential and network access), injection patterns, hidden unicode and unconstrained parameters. Returns severity-ranked findings and a 0-100 score.","tags":["scan mcp manifest","mcp security audit","detect prompt injection","mcp tool risk analysis","agent tool safety check","manifest risk score"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://gleif.openverbs.com/v1/lookup","method":"POST","description":"Resolve a 20-character Legal Entity Identifier (LEI, ISO 17442) to its authoritative entity record: verified legal name, registration status (ISSUED/LAPSED/RETIRED), entity status, jurisdiction, legal form, registration number, legal and headquarters addresses, key dates (registration, last update, next renewal), managing LOU, corroboration level and any BIC codes. ISO 7064 check digits are verified before payment.","tags":["lei lookup api","legal entity identifier lookup","verify company lei","kyc entity lookup","gleif registration status"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://gleif.openverbs.com/v1/search","method":"POST","description":"Find Legal Entity Identifiers by legal name, optionally filtered to an ISO 3166-1 alpha-2 country. Returns matching entities with their LEI, verified legal name, registration status, jurisdiction and city/country - the reverse of lookup, for when you have a company name but need its authoritative LEI and legal identity.","tags":["search legal entities","company lei search","find lei by name","gleif entity search","legal name registry lookup"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://gleif.openverbs.com/v1/parents","method":"POST","description":"Resolve a legal entity's direct and ultimate accounting-consolidating parents from GLEIF's global CC0 LEI registry. Returns parent names and LEIs, relationship status, corroboration and explicit reporting exceptions. Useful for counterparty and corporate-group diligence. Not beneficial-owner identities or ownership percentages. LEI checksum validated before payment; stale results flagged.","tags":["lei parent company","corporate parent","ultimate parent company","company ownership","gleif parents"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://edgar.openverbs.com/v1/lookup","method":"POST","description":"Resolve a stock ticker symbol or company name to its Central Index Key (CIK) - the identifier every other EDGAR endpoint keys on. Exact ticker matches rank first, then company-name prefix/substring matches. Returns each match's zero-padded CIK, numeric CIK, ticker and official company title.","tags":["cik lookup api","ticker to cik","sec company lookup","resolve ticker symbol","edgar company search"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://edgar.openverbs.com/v1/filings","method":"POST","description":"SEC filings API: list a company's recent SEC EDGAR filings (10-K, 10-Q, 8-K, Form 4, S-1) by ticker or CIK, optionally filtered by form type. Each filing has its accession number, form, filing/report dates, primary document, XBRL flag and a direct as-filed document URL, plus company name, tickers, exchanges and SIC code.","tags":["sec filings api","sec filings lookup","list company filings","10-k 10-q search","edgar filing history","company filing api","sec","edgar","filings","10-k","10-q","8-k","stocks"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://edgar.openverbs.com/v1/facts","method":"POST","description":"Read a single XBRL financial concept for a company (by CIK or ticker) from its as-filed statements. Give the concept's XBRL tag (e.g. Revenues, NetIncomeLoss, Assets, EarningsPerShareDiluted) and optionally the taxonomy (default us-gaap, also dei). Returns the label and, per unit (USD, shares), recent datapoints with period end, value, fiscal year/period, form, filing date and accession. Bounded, as-reported output.","tags":["xbrl facts api","read financial facts","sec companyconcept lookup","edgar revenue lookup","as filed financial data"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://edgar.openverbs.com/v1/financials","method":"POST","description":"Company financials API: one-call snapshot for a US public company (by ticker or CIK) from as-filed SEC XBRL statements — revenue, cost of revenue, gross profit, operating income, net income, EPS (basic/diluted), total assets, total liabilities, stockholders equity, cash, operating cash flow and shares outstanding, each with the latest fiscal-year value. Unknown company returns found=false.","tags":["company financials api","financial statements api","earnings api","stock fundamentals api","income statement api","balance sheet api","sec financials","financials","sec","edgar","xbrl","revenue","eps","stocks"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.008","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://id.openverbs.com/v1/uuid","method":"POST","description":"Generate one or more UUIDs. Supports v4 (random), v1/v7 (time), and v3/v5 (namespaced).","tags":["generate uuid","uuid generator api","create guid","v4 uuid generation","v7 uuid generation","namespaced uuid"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://id.openverbs.com/v1/inspect","method":"POST","description":"Validate a UUID and report its version and variant.","tags":["inspect uuid","validate uuid","uuid version lookup","parse guid","uuid variant check"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://id.openverbs.com/v1/ulid","method":"POST","description":"Generate one or more lexicographically sortable ULIDs (monotonic within a call).","tags":["generate ulid","ulid generator api","create sortable id","time ordered identifier","monotonic ulid"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://id.openverbs.com/v1/decode","method":"POST","description":"Validate a ULID and extract its embedded timestamp and time/random components.","tags":["decode ulid","parse ulid timestamp","validate ulid","ulid time lookup","inspect sortable id"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://similarity.openverbs.com/v1/levenshtein","method":"POST","description":"Levenshtein edit distance (insertions, deletions, substitutions) between two strings, plus a normalized similarity in [0,1]. Operates on Unicode code points.","tags":["levenshtein distance","edit distance api","string edit distance","compare two strings","fuzzy string match","normalized text similarity"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://similarity.openverbs.com/v1/damerau","method":"POST","description":"Damerau-Levenshtein distance — like Levenshtein but also counts adjacent transpositions as a single edit — plus a normalized similarity in [0,1].","tags":["damerau levenshtein distance","transposition edit distance","typo similarity api","adjacent swap distance","fuzzy typo matching","string edit distance with swaps"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://similarity.openverbs.com/v1/hamming","method":"POST","description":"Hamming distance — the number of positions at which two EQUAL-LENGTH strings differ — plus a normalized similarity. Strings of unequal length are a clean 400.","tags":["hamming distance","equal length string distance","character mismatch count","compare fixed length strings","binary string similarity","position difference metric"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://similarity.openverbs.com/v1/jaro","method":"POST","description":"Jaro similarity and the Jaro-Winkler variant (which boosts scores for a shared prefix), both in [0,1]. The prefix boost factor is configurable (default 0.1, max 0.25). Well suited to short strings like names.","tags":["jaro winkler similarity","jaro similarity api","name similarity score","short string matching","prefix boosted matching","fuzzy name comparison"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://similarity.openverbs.com/v1/dice","method":"POST","description":"Sørensen-Dice similarity coefficient in [0,1] over character bigrams — robust to word order and minor edits.","tags":["sorensen dice coefficient","dice similarity api","character bigram similarity","bigram text comparison","word order tolerant match","string overlap score"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://similarity.openverbs.com/v1/jaccard","method":"POST","description":"Jaccard similarity index in [0,1] — the size of the intersection over the union of the two strings' character-bigram sets.","tags":["jaccard index","jaccard similarity api","set overlap similarity","character bigram jaccard","intersection over union text","compare string sets"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://similarity.openverbs.com/v1/soundex","method":"POST","description":"Encode a word with the classic Soundex algorithm (letter + 3 digits) for phonetic matching of names.","tags":["soundex api","soundex encode name","phonetic name code","classic name matching","surname sound matching","english phonetic lookup"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://similarity.openverbs.com/v1/metaphone","method":"POST","description":"Encode a word with the Metaphone algorithm — more accurate than Soundex for English pronunciation.","tags":["metaphone api","metaphone encode word","english pronunciation code","phonetic search key","better soundex matching","name pronunciation matching"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://similarity.openverbs.com/v1/double-metaphone","method":"POST","description":"Encode a word with Double Metaphone, returning a primary and a secondary code to capture alternate pronunciations (useful for non-English names).","tags":["double metaphone api","double metaphone encode","alternate pronunciation codes","non english name matching","primary secondary phonetic code","multilingual phonetic lookup"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://similarity.openverbs.com/v1/compare","method":"POST","description":"Report whether two tokens sound alike under a chosen algorithm (soundex, metaphone or double-metaphone; default double-metaphone). Returns each token's codes and a boolean match.","tags":["phonetic compare api","sounds alike names","compare name pronunciation","fuzzy phonetic match","soundex metaphone compare","name dedup by sound"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://geospatial.openverbs.com/v1/to-dms","method":"POST","description":"Convert a decimal-degree latitude/longitude to degrees-minutes-seconds, with hemisphere letters and a formatted string for each axis.","tags":["decimal to dms","convert coordinates to dms","degrees minutes seconds","latitude longitude formatter","coordinate format conversion","dms coordinate api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://geospatial.openverbs.com/v1/parse","method":"POST","description":"Parse a coordinate string into decimal lat/lon. Accepts a plain decimal pair ('40.4462, -79.9822') or DMS with hemisphere letters ('40°26'46\"N 79°58'56\"W'). Anything unrecognized is a clean 400.","tags":["parse coordinate string","coordinate parser api","dms to decimal degrees","latitude longitude lookup","convert coordinate text","read gps coordinates"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://geospatial.openverbs.com/v1/utm","method":"POST","description":"Convert decimal lat/lon to a UTM coordinate (zone, latitude band, hemisphere, easting, northing) on WGS84, including the Norway/Svalbard zone exceptions. Defined for latitudes -80..84.","tags":["lat lon to utm","utm conversion api","convert coordinates to utm","wgs84 utm zone","utm easting northing","utm coordinate lookup"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://geospatial.openverbs.com/v1/from-utm","method":"POST","description":"Convert a UTM coordinate (zone, hemisphere, easting, northing) back to decimal lat/lon on WGS84.","tags":["utm to lat lon","convert utm to decimal","utm reverse conversion","easting northing to coordinates","utm zone lookup","wgs84 from utm"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://geospatial.openverbs.com/v1/mgrs","method":"POST","description":"Convert decimal lat/lon to a Military Grid Reference System (MGRS) string on WGS84. Precision is the number of digits per axis (1–5; 5 = 1-metre resolution, default 5).","tags":["lat lon to mgrs","mgrs conversion api","convert coordinates to mgrs","military grid reference","mgrs grid lookup","wgs84 mgrs encoder"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://geospatial.openverbs.com/v1/from-mgrs","method":"POST","description":"Convert an MGRS grid reference back to decimal lat/lon on WGS84 (the coordinate of the grid cell's south-west corner at the given precision). Whitespace is ignored; a malformed reference is a clean 400.","tags":["mgrs to lat lon","parse mgrs reference","mgrs reverse conversion","military grid to coordinates","decode mgrs coordinate","mgrs coordinate lookup"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://geospatial.openverbs.com/v1/forward","method":"POST","description":"Project WGS84 longitude/latitude (degrees) to Web Mercator (EPSG:3857) easting/northing in metres. Latitude is clamped to ±85.0511° (the projection's valid extent).","tags":["wgs84 to web mercator","epsg 3857 projection","project lat lon to meters","longitude latitude to mercator","web mercator forward","gis projection api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://geospatial.openverbs.com/v1/inverse","method":"POST","description":"Un-project Web Mercator (EPSG:3857) easting/northing in metres back to WGS84 longitude/latitude in degrees.","tags":["web mercator to wgs84","epsg 3857 inverse","mercator meters to lat lon","unproject web mercator","convert x y to coordinates","reverse projection api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://geospatial.openverbs.com/v1/tile","method":"POST","description":"Map a WGS84 coordinate at a given zoom (0..30) to its slippy-map (XYZ / Google / OSM) tile x,y and its Bing quadkey.","tags":["coordinate to map tile","slippy map tile","xyz tile lookup","lat lon to tile x y","quadkey from coordinate","osm tile calculator"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://geospatial.openverbs.com/v1/tile-bounds","method":"POST","description":"Compute the geographic bounding box (west/south/east/north in degrees) of a slippy-map tile z/x/y, plus its Bing quadkey.","tags":["tile geographic bounds","map tile bounding box","xyz tile bounds","slippy tile bbox","quadkey tile bounds","tile to lat lon extent"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://geospatial.openverbs.com/v1/resolution","method":"POST","description":"Report the ground resolution (metres per pixel, for 256-px tiles) and the OGC map scale denominator at a zoom level, optionally adjusted for latitude (default equator).","tags":["map ground resolution","meters per pixel","tile zoom scale","web mercator scale","resolution by zoom level","map scale denominator"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://geospatial.openverbs.com/v1/distance","method":"POST","description":"Distance and initial bearing between two coordinates.","tags":["haversine distance","distance between coordinates","great circle distance","bearing between points","geodesic distance api","lat lon distance calculator"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://geospatial.openverbs.com/v1/geohash","method":"POST","description":"Encode a coordinate to a geohash and return its bounding box and 8 neighbors.","tags":["geohash encode","coordinate to geohash","geohash neighbors","geohash bounding box","spatial hash api","geohash lookup"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://geospatial.openverbs.com/v1/timezone","method":"POST","description":"Resolve the timezone for a latitude/longitude.","tags":["timezone from coordinates","lat lon timezone lookup","iana timezone api","coordinate timezone resolver","find timezone by location","offline timezone lookup"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://geospatial.openverbs.com/v1/point-in-polygon","method":"POST","description":"Test whether a coordinate falls inside a polygon.","tags":["point in polygon","coordinate inside polygon","polygon containment test","geofence check api","spatial point lookup","gis containment query"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.002","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://scan.openverbs.com/v1/secrets","method":"POST","description":"Scan source code or configuration text for hardcoded secrets: AWS access keys, GitHub/Slack/Google tokens, Stripe and OpenAI keys, PEM private-key blocks, JWTs and high-entropy secret assignments. Placeholder values are filtered out. Each finding gives the rule, a severity (critical/high/medium/low), line and column, entropy and a masked excerpt. Offline and deterministic.","tags":["scan for secrets","detect leaked credentials","api key scanner","find hardcoded tokens","secret leak detection","credential scan api"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://scan.openverbs.com/v1/detect","method":"POST","description":"Find personally identifiable information in a text blob: emails, phone numbers, credit cards (Luhn-validated), IBANs (mod-97 validated), IPv4/IPv6 addresses, US SSNs and JWTs. Returns every match with its type and character offsets, plus per-type counts. Validated — not just pattern-matched — to keep false positives low. Fully offline.","tags":["detect pii","pii detection api","find personal data","privacy data scanner","identify sensitive text","pii lookup"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://scan.openverbs.com/v1/redact","method":"POST","description":"Return the input text with every detected PII span replaced. `mode` controls the replacement: \"label\" (default) → `[EMAIL]`; \"mask\" → the value covered with a mask character; \"hash\" → `[EMAIL:1a2b3c4d]`, a stable per-value fingerprint so equal values stay linkable without exposing them. Same validated detectors as `/detect`. Fully offline.","tags":["redact pii","pii redaction api","mask personal data","anonymize sensitive text","remove private information","hash pii values"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.004","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}},{"url":"https://scan.openverbs.com/v1/kev","method":"POST","description":"Check up to 50 CVE IDs against CISA's Known Exploited Vulnerabilities (KEV) catalog. Returns membership, vendor/product, exploitation evidence, ransomware-use status and remediation guidance from CC0 data. Not listed does not mean safe or unexploited. Federal due dates are not global deadlines. Refreshed hourly; stale snapshots are explicitly flagged.","tags":["cisa kev","known exploited vulnerabilities","actively exploited cve","cve remediation","ransomware vulnerabilities"],"payment":{"method":"evm","intent":"charge","network":"8453","currency":"USDC","price":"$0.006","recipient":"0xb3f4de103F34b99f0Da19B4F16D6B53a14C2194A"}}]}