# Basalt > Autonomous economic agent selling 22 pay-per-call utility tools to other AI agents, charging USDC via x402 on Base. Basalt is a resource server, not a marketing site: call any endpoint below unpaid first to receive an HTTP 402 challenge with the exact price, then retry with a valid x402 payment signature. All endpoints are POST with a JSON body. ## Discovery - [OpenAPI](/openapi.json): canonical machine-readable contract — full request/response schemas and examples for every endpoint. - [x402 manifest](/.well-known/x402.json): x402 Foundation discovery draft format. - [Catalog](/products): free JSON list of tools, prices, and launch dates. - [Tool pages](/tools): one page per tool, with its schema, a real call and how its price compares to the verified x402 index. - [Sitemap](/sitemap.xml) ## Tools - POST /extract ($0.005): Extracts title, description, image, and clean text from a URL — built for other agents to consume. - POST /domain-check ($0.01): Checks whether a domain is available to register via RDAP, or who owns it and when it expires if not. - POST /email-check ($0.005): Validates email syntax and confirms real MX records for the domain — filters out addresses that can't receive mail. - POST /html-to-markdown ($0.003): Converts HTML to clean Markdown — so an agent doesn't have to build its own converter. - POST /qrcode ($0.002): Generates a QR code (PNG, base64) for a text string or URL. - POST /pdf-extract ($0.01): Extracts the text from a PDF given its URL. - POST /ssl-check ($0.005): Checks a domain's TLS certificate: validity, issuer, and days until expiry. - POST /language-detect ($0.002): Detects the language of a text (186 languages supported), returning the top 3 most likely matches. - POST /json-validate ($0.002): Validates a JSON payload against a JSON Schema (draft 2020-12) and returns the exact validation errors. - POST /verify-signature ($0.002): Recovers the signer of an EIP-191 or EIP-712 signature and checks it against a claimed address. - POST /financial-id-check ($0.002): Validates an IBAN (mod-97 checksum), BIC/SWIFT (ISO 9362 format), or card number (Luhn checksum). - POST /geo-distance ($0.002): Calculates great-circle distance (km/mi) and initial bearing between two lat/lng coordinates. - POST /markdown-to-html ($0.003): Converts Markdown to HTML — the reverse direction of html-to-markdown. - POST /timezone-convert ($0.002): Converts an ISO 8601 instant into the local wall-clock time of any IANA time zone, DST-aware. - POST /token-count ($0.002): Counts tokens in a text using real GPT-family BPE encodings (cl100k_base or o200k_base) — check length before calling an LLM. - POST /hash-digest ($0.002): Hashes text with sha256, sha512, sha1, md5, sha3-256, or keccak256 — optionally as an HMAC with a secret key. - POST /jwt-decode ($0.002): Decodes a JWT's header and claims and reports its time status (active, expired, not yet valid) — without signature verification. - POST /url-parse ($0.002): Parses a URL into its components and returns a normalized canonical form with tracking parameters (utm_*, fbclid, gclid…) removed. - POST /eth-address ($0.002): Validates an EVM address and returns its EIP-55 checksummed form; flags bad checksums and the zero address. - POST /ip-check ($0.002): Classifies an IPv4/IPv6 address (public, private, loopback, link-local, reserved…) and tests it against optional CIDR ranges — an SSRF/allowlist check. - POST /x402-discover ($0.02): Searches an index of live x402 seller endpoints — each verified by knocking, not scraped — filtering by capability, max price and network. - POST /page-build ($0.02): Builds one complete, self-contained HTML page from structured blocks — responsive, light/dark aware, every value escaped, zero external requests. ## Contact - Email: sebastian689@gmail.com