{"openapi":"3.1.0","info":{"title":"x402-farm","version":"1.0.0","description":"Pay-per-call APIs for AI agents — x402 protocol, USDC on Base, no account needed.","contact":{"email":"laurenthalbrun@gmail.com"}},"servers":[{"url":"https://api.x-402.online"}],"paths":{"/v1/weather":{"get":{"summary":"Worldwide weather: current conditions + 3-day forecast by lat/lon or city name. Query: ?city= or ?lat=&lon=","description":"Worldwide weather: current conditions + 3-day forecast by lat/lon or city name. Query: ?city= or ?lat=&lon= — Price: $0.003 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"city","in":"query","required":true,"schema":{"type":"string"},"example":"Paris"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"current":{"temperature_2m":21.4,"wind_speed_10m":12},"daily":{"temperature_2m_max":[24]}}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/crypto/price":{"get":{"summary":"Spot prices + 24h change for any CoinGecko-listed tokens, multi-currency. Query: ?ids=bitcoin,ethereum&vs=usd,eur","description":"Spot prices + 24h change for any CoinGecko-listed tokens, multi-currency. Query: ?ids=bitcoin,ethereum&vs=usd,eur — Price: $0.003 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"ids","in":"query","required":true,"schema":{"type":"string"},"example":"bitcoin,ethereum"},{"name":"vs","in":"query","required":true,"schema":{"type":"string"},"example":"usd"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"prices":{"bitcoin":{"usd":97250,"usd_24h_change":1.2}}}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/extract":{"post":{"summary":"URL -> main content as clean markdown, from a FRENCH RESIDENTIAL IP + real Chromium (JS-rendered). Reaches sites that block datacenter/cloud IPs (Firecrawl/ScrapingBee territory) at a fraction of the price. Input: {url}","description":"URL -> main content as clean markdown, from a FRENCH RESIDENTIAL IP + real Chromium (JS-rendered). Reaches sites that block datacenter/cloud IPs (Firecrawl/ScrapingBee territory) at a fraction of the price. Input: {url} — Price: $0.005 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"url":{"type":"string","format":"uri"}},"required":["url"]},"example":{"url":"https://example.com"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"url":"https://example.com/","title":"Example Domain","markdown":"# Example Domain…"}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/render":{"post":{"summary":"URL -> full HTML after JS execution, from a French residential IP + real browser (bypasses datacenter blocks). Input: {url}","description":"URL -> full HTML after JS execution, from a French residential IP + real browser (bypasses datacenter blocks). Input: {url} — Price: $0.005 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"url":{"type":"string","format":"uri"}},"required":["url"]},"example":{"url":"https://example.com"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"url":"https://example.com/","html":"<html>…</html>"}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/screenshot":{"post":{"summary":"URL -> PNG screenshot from a French residential IP + real browser (renders sites that block cloud IPs). Input: {url, fullPage?}","description":"URL -> PNG screenshot from a French residential IP + real browser (renders sites that block cloud IPs). Input: {url, fullPage?} — Price: $0.01 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"url":{"type":"string","format":"uri"}},"required":["url"]},"example":{"url":"https://example.com","fullPage":false}}}},"responses":{"200":{"description":"Success"},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/pdf":{"post":{"summary":"URL -> A4 PDF from a French residential IP + real browser. Input: {url}","description":"URL -> A4 PDF from a French residential IP + real browser. Input: {url} — Price: $0.01 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"url":{"type":"string","format":"uri"}},"required":["url"]},"example":{"url":"https://example.com"}}}},"responses":{"200":{"description":"Success"},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/links":{"post":{"summary":"URL -> deduplicated links (internal/external + anchor text), fetched from a French residential IP. Input: {url}","description":"URL -> deduplicated links (internal/external + anchor text), fetched from a French residential IP. Input: {url} — Price: $0.005 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"url":{"type":"string","format":"uri"}},"required":["url"]},"example":{"url":"https://example.com"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"url":"https://example.com/","count":1,"internal":[],"external":[{"href":"https://iana.org","text":"Learn more"}]}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/meta":{"post":{"summary":"URL -> SEO meta, OpenGraph, canonical, JSON-LD, from a French residential IP + real browser. Input: {url}","description":"URL -> SEO meta, OpenGraph, canonical, JSON-LD, from a French residential IP + real browser. Input: {url} — Price: $0.005 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"url":{"type":"string","format":"uri"}},"required":["url"]},"example":{"url":"https://example.com"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"url":"https://example.com/","title":"Example Domain","meta":{},"jsonLd":[]}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/entreprise":{"get":{"summary":"French company lookup by name or SIREN/SIRET: officers, NAF, HQ, status. Query: ?q=","description":"French company lookup by name or SIREN/SIRET: officers, NAF, HQ, status. Query: ?q= — Price: $0.02 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string"},"example":"Decathlon"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"query":"Decathlon","total":151,"results":[{"siren":"306138900","nom":"DECATHLON"}]}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/geocode":{"get":{"summary":"Geocode any French address incl. overseas territories (lat/lon, score). Query: ?q=","description":"Geocode any French address incl. overseas territories (lat/lon, score). Query: ?q= — Price: $0.005 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string"},"example":"Pointe-à-Pitre"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"results":[{"label":"Pointe-à-Pitre","lat":16.23619,"lon":-61.537759}]}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/dns":{"get":{"summary":"Full DNS records for a domain: A, AAAA, MX, TXT, NS, SPF. Query: ?domain=","description":"Full DNS records for a domain: A, AAAA, MX, TXT, NS, SPF. Query: ?domain= — Price: $0.005 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"domain","in":"query","required":true,"schema":{"type":"string"},"example":"example.com"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"domain":"example.com","a":["1.2.3.4"],"mx":[]}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/email/validate":{"get":{"summary":"Email validation: syntax + domain MX check, no email sent. Query: ?email=","description":"Email validation: syntax + domain MX check, no email sent. Query: ?email= — Price: $0.005 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"email","in":"query","required":true,"schema":{"type":"string"},"example":"test@gmail.com"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"email":"test@gmail.com","valid":true,"mx":"gmail-smtp-in.l.google.com"}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/tva":{"get":{"summary":"Compute French intra-EU VAT number from a SIREN (offline, instant). Query: ?siren=","description":"Compute French intra-EU VAT number from a SIREN (offline, instant). Query: ?siren= — Price: $0.005 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"siren","in":"query","required":true,"schema":{"type":"string"},"example":"306138900"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"siren":"306138900","tva":"FR51306138900"}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/vat-eu":{"get":{"summary":"Validate any EU VAT number via the official VIES service, returns trader name/address. Query: ?vat=","description":"Validate any EU VAT number via the official VIES service, returns trader name/address. Query: ?vat= — Price: $0.02 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"vat","in":"query","required":true,"schema":{"type":"string"},"example":"FR40306138900"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"vat":"FR40306138900","valid":true,"name":"DECATHLON","country":"FR"}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/commune":{"get":{"summary":"French commune info: population, INSEE code, postal codes, EPCI, department, region, coords. Query: ?q= or ?cp=","description":"French commune info: population, INSEE code, postal codes, EPCI, department, region, coords. Query: ?q= or ?cp= — Price: $0.005 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string"},"example":"Basse-Terre"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"results":[{"nom":"Basse-Terre","insee":"97105","population":9417,"region":"Guadeloupe"}]}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/reverse-geocode":{"get":{"summary":"Reverse geocode lat/lon to a French address (incl. overseas). Query: ?lat=&lon=","description":"Reverse geocode lat/lon to a French address (incl. overseas). Query: ?lat=&lon= — Price: $0.005 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"lat","in":"query","required":true,"schema":{"type":"string"},"example":"16.24"},{"name":"lon","in":"query","required":true,"schema":{"type":"string"},"example":"-61.53"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"label":"Pointe-à-Pitre","cp":"97110","ville":"Pointe-à-Pitre"}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/jours-feries":{"get":{"summary":"French public holidays for a year and zone (metropole, alsace-moselle, guadeloupe, etc.). Query: ?annee=&zone=","description":"French public holidays for a year and zone (metropole, alsace-moselle, guadeloupe, etc.). Query: ?annee=&zone= — Price: $0.005 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"annee","in":"query","required":true,"schema":{"type":"string"},"example":"2026"},{"name":"zone","in":"query","required":true,"schema":{"type":"string"},"example":"metropole"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"annee":"2026","jours":[{"date":"2026-01-01","nom":"1er janvier"}]}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/georisques":{"get":{"summary":"Natural & technological risks for a French commune (flood, seismic, industrial...). Query: ?insee=","description":"Natural & technological risks for a French commune (flood, seismic, industrial...). Query: ?insee= — Price: $0.02 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"insee","in":"query","required":true,"schema":{"type":"string"},"example":"97120"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"insee":"97120","risques":[{"libelle":"Séisme"}]}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/carburants":{"get":{"summary":"Live fuel prices at stations near a French postal code (gazole, SP95/98, E85, GPL). Query: ?cp=","description":"Live fuel prices at stations near a French postal code (gazole, SP95/98, E85, GPL). Query: ?cp= — Price: $0.01 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"cp","in":"query","required":true,"schema":{"type":"string"},"example":"97110"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"cp":"97110","stations":[{"nom":"Station","prix":{"gazole":1.7}}]}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/etablissements":{"get":{"summary":"French company HQ + establishment counts by SIREN (SIRET, address, status). Query: ?siren=","description":"French company HQ + establishment counts by SIREN (SIRET, address, status). Query: ?siren= — Price: $0.02 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"siren","in":"query","required":true,"schema":{"type":"string"},"example":"306138900"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"siren":"306138900","nb_etablissements":385,"siege":{"siret":"30613890001294"}}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/association":{"get":{"summary":"Search French associations (RNA) by name: SIREN, RNA id, creation date, city. Query: ?q=","description":"Search French associations (RNA) by name: SIREN, RNA id, creation date, city. Query: ?q= — Price: $0.02 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string"},"example":"Croix Rouge"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"total":42,"results":[{"nom":"CROIX ROUGE FRANCAISE"}]}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/dpe":{"get":{"summary":"Energy performance diagnostics (DPE/GES labels) for dwellings in a French area. Query: ?insee= or ?cp=","description":"Energy performance diagnostics (DPE/GES labels) for dwellings in a French area. Query: ?insee= or ?cp= — Price: $0.02 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"cp","in":"query","required":true,"schema":{"type":"string"},"example":"97110"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"results":[{"adresse":"...","etiquette_dpe":"D","etiquette_ges":"B"}]}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/vacances-scolaires":{"get":{"summary":"French school holidays by zone and year. Query: ?zone=&annee=","description":"French school holidays by zone and year. Query: ?zone=&annee= — Price: $0.005 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"zone","in":"query","required":true,"schema":{"type":"string"},"example":"Zone A"},{"name":"annee","in":"query","required":true,"schema":{"type":"string"},"example":"2025-2026"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"zone":"Zone A","vacances":[{"description":"Vacances de la Toussaint"}]}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/ecoles":{"get":{"summary":"French schools directory lookup by name or postal code (type, status, address, phone). Query: ?q= or ?cp=","description":"French schools directory lookup by name or postal code (type, status, address, phone). Query: ?q= or ?cp= — Price: $0.01 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"cp","in":"query","required":true,"schema":{"type":"string"},"example":"97110"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"results":[{"nom":"Lycée","type":"Lycée","ville":"Pointe-à-Pitre"}]}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/iban":{"get":{"summary":"Validate an IBAN (mod-97 checksum), returns country and French bank code. Query: ?iban=","description":"Validate an IBAN (mod-97 checksum), returns country and French bank code. Query: ?iban= — Price: $0.005 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"iban","in":"query","required":true,"schema":{"type":"string"},"example":"FR7630006000011234567890189"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"iban":"FR76...","valid":true,"pays":"FR"}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/codes-postaux":{"get":{"summary":"Map a French postal code to its communes (name + INSEE code). Query: ?cp=","description":"Map a French postal code to its communes (name + INSEE code). Query: ?cp= — Price: $0.005 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"cp","in":"query","required":true,"schema":{"type":"string"},"example":"97110"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"cp":"97110","communes":[{"nom":"Pointe-à-Pitre","insee":"97120"}]}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/cadastre":{"get":{"summary":"French cadastral parcel at given coordinates: parcel id, section, number, surface (IGN). Query: ?lat=&lon=","description":"French cadastral parcel at given coordinates: parcel id, section, number, surface (IGN). Query: ?lat=&lon= — Price: $0.01 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"lat","in":"query","required":true,"schema":{"type":"string"},"example":"48.8606"},{"name":"lon","in":"query","required":true,"schema":{"type":"string"},"example":"2.3364"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"idu":"75101000AI0002","section":"AI","contenance_m2":4322}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/valeurs-foncieres":{"get":{"summary":"Real French real-estate sale prices (DVF) for a commune: date, price, surface, type. Query: ?insee=&annee=","description":"Real French real-estate sale prices (DVF) for a commune: date, price, surface, type. Query: ?insee=&annee= — Price: $0.02 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"insee","in":"query","required":true,"schema":{"type":"string"},"example":"75101"},{"name":"annee","in":"query","required":true,"schema":{"type":"string"},"example":"2023"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"insee":"75101","total":478,"mutations":[{"date":"2023-06-01","valeur_fonciere":258000,"surface_bati_m2":22}]}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/insee-commune":{"get":{"summary":"INSEE commune stats: population, area, computed density, department, region, EPCI. Query: ?insee=","description":"INSEE commune stats: population, area, computed density, department, region, EPCI. Query: ?insee= — Price: $0.01 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"insee","in":"query","required":true,"schema":{"type":"string"},"example":"97120"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"insee":"97120","nom":"Pointe-à-Pitre","population":15040,"densite_hab_km2":5419}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/meteo":{"get":{"summary":"Current weather + up to 7-day forecast for any coordinates (France & overseas), French descriptions. Query: ?lat=&lon=&jours=","description":"Current weather + up to 7-day forecast for any coordinates (France & overseas), French descriptions. Query: ?lat=&lon=&jours= — Price: $0.005 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"lat","in":"query","required":true,"schema":{"type":"string"},"example":"16.24"},{"name":"lon","in":"query","required":true,"schema":{"type":"string"},"example":"-61.53"},{"name":"jours","in":"query","required":true,"schema":{"type":"string"},"example":"3"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"actuel":{"temperature":30.7,"description":"Principalement clair"},"previsions":[{"date":"2026-07-22","tmax":31}]}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/rge":{"get":{"summary":"RGE-certified renovation contractors near a French postal code (name, trade, phone, email). Query: ?cp=&domaine=","description":"RGE-certified renovation contractors near a French postal code (name, trade, phone, email). Query: ?cp=&domaine= — Price: $0.02 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"cp","in":"query","required":true,"schema":{"type":"string"},"example":"97110"},{"name":"domaine","in":"query","required":true,"schema":{"type":"string"},"example":"Isolation"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"cp":"97110","artisans":[{"nom":"EURL X","domaine":"Isolation","telephone":"0590..."}]}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/rge-check":{"get":{"summary":"Check whether a French company (by SIRET) is RGE-certified, with its qualifications. Query: ?siret=","description":"Check whether a French company (by SIRET) is RGE-certified, with its qualifications. Query: ?siret= — Price: $0.01 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"siret","in":"query","required":true,"schema":{"type":"string"},"example":"49974034800028"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"siret":"49974034800028","rge":true,"qualifications":[{"domaine":"Architecte"}]}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/transport":{"get":{"summary":"Public-transit & mobility open datasets for a French area with GTFS/NeTEx/GBFS feed URLs. Query: ?q=","description":"Public-transit & mobility open datasets for a French area with GTFS/NeTEx/GBFS feed URLs. Query: ?q= — Price: $0.01 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string"},"example":"Guadeloupe"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"query":"Guadeloupe","datasets":[{"titre":"...","type":"public-transit","feeds":[{"format":"GTFS","url":"https://..."}]}]}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/irve":{"get":{"summary":"EV charging stations in a French commune: operator, power, connectors, access, coords (IRVE). Query: ?insee=","description":"EV charging stations in a French commune: operator, power, connectors, access, coords (IRVE). Query: ?insee= — Price: $0.01 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"insee","in":"query","required":true,"schema":{"type":"string"},"example":"75101"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"insee":"75101","bornes":[{"station":"QPARK RIVOLI","operateur":"IZIVIA","puissance_kw":22}]}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/bodacc":{"get":{"summary":"BODACC legal announcements for a French company by SIREN (filings, sales, insolvency, changes). Query: ?siren=","description":"BODACC legal announcements for a French company by SIREN (filings, sales, insolvency, changes). Query: ?siren= — Price: $0.02 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"siren","in":"query","required":true,"schema":{"type":"string"},"example":"306138900"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"siren":"306138900","total":98,"annonces":[{"date":"2026-07-09","type":"Avis initial","famille":"Dépôts des comptes"}]}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/bio":{"get":{"summary":"Certified organic (AB) operators in France by department and/or text search: farms, processors, productions. Query: ?departement=&q=","description":"Certified organic (AB) operators in France by department and/or text search: farms, processors, productions. Query: ?departement=&q= — Price: $0.02 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"departement","in":"query","required":true,"schema":{"type":"string"},"example":"971"},{"name":"q","in":"query","required":true,"schema":{"type":"string"},"example":"vignoble"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"total":475,"operateurs":[{"nom":"...","numeroBio":136219,"activites":["Production"]}]}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/entreprise-360/partial":{"get":{"summary":"LITE version of entreprise-360 (identity, HQ city, establishments count, legal notices count). Try cheap, upgrade to /v1/fr/entreprise-360 for officers, finances, RGE. Query: ?q= or ?siren=","description":"LITE version of entreprise-360 (identity, HQ city, establishments count, legal notices count). Try cheap, upgrade to /v1/fr/entreprise-360 for officers, finances, RGE. Query: ?q= or ?siren= — Price: $0.02 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string"},"example":"Decathlon"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"identite":{"denomination":"DECATHLON"},"annonces_legales_total":45,"_partial":true}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/entreprise-360":{"get":{"summary":"Full French company report in ONE call: identity, VAT, HQ, officers, establishments, finances, legal notices (BODACC), RGE cert. Aggregates 3 sources. Free trial: /free/entreprise-360. Query: ?q= or ?siren=","description":"Full French company report in ONE call: identity, VAT, HQ, officers, establishments, finances, legal notices (BODACC), RGE cert. Aggregates 3 sources. Free trial: /free/entreprise-360. Query: ?q= or ?siren= — Price: $0.04 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string"},"example":"Decathlon"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"found":true,"identite":{"siren":"306138900","tva":"FR51306138900"},"annonces_legales":{"total":98}}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/estimation-immo":{"get":{"summary":"Real-estate price estimate (AVM) computed from real DVF sale comparables: €/m² median + range and value for a surface. Free trial: /free/estimation-immo. Query: ?adresse=&surface=&type=appartement|maison","description":"Real-estate price estimate (AVM) computed from real DVF sale comparables: €/m² median + range and value for a surface. Free trial: /free/estimation-immo. Query: ?adresse=&surface=&type=appartement|maison — Price: $0.05 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"adresse","in":"query","required":true,"schema":{"type":"string"},"example":"10 rue de Rivoli Paris"},{"name":"surface","in":"query","required":true,"schema":{"type":"string"},"example":"50"},{"name":"type","in":"query","required":true,"schema":{"type":"string"},"example":"appartement"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"ville":"Paris","prix_m2":{"median":12110},"estimation":{"valeur_estimee":605476}}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/bilans":{"get":{"summary":"French company annual accounts & financial statements (revenue, net income, capital) + list of filed accounts, via INPI RNE (auth-gated source). Query: ?siren=","description":"French company annual accounts & financial statements (revenue, net income, capital) + list of filed accounts, via INPI RNE (auth-gated source). Query: ?siren= — Price: $0.06 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"siren","in":"query","required":true,"schema":{"type":"string"},"example":"306138900"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"siren":"306138900","denomination":"DECATHLON","comptes_annuels_deposes":[{"date_cloture":"2024-12-31"}]}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/procedures-collectives":{"get":{"summary":"Is this French company in insolvency proceedings (sauvegarde, redressement, liquidation judiciaire)? Official BODACC court announcements: synthetic status, full judgment history, RCS deregistration flag. The #1 B2B check before signing. Query: ?siren=","description":"Is this French company in insolvency proceedings (sauvegarde, redressement, liquidation judiciaire)? Official BODACC court announcements: synthetic status, full judgment history, RCS deregistration flag. The #1 B2B check before signing. Query: ?siren= — Price: $0.03 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"siren","in":"query","required":true,"schema":{"type":"string"},"example":"812501419"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"siren":"812501419","statut":"procedure_cloturee","alerte":false,"procedures":[{"famille":"Jugement de clôture","nature":"Jugement de clôture pour insuffisance d'actif","date_jugement":"2026-07-10"}]}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/score-entreprise/partial":{"get":{"summary":"LITE version of score-entreprise: score 0-100 + level + insolvency count only. Upgrade to /v1/fr/score-entreprise for factor breakdown & financials. Query: ?q= or ?siren=","description":"LITE version of score-entreprise: score 0-100 + level + insolvency count only. Upgrade to /v1/fr/score-entreprise for factor breakdown & financials. Query: ?q= or ?siren= — Price: $0.02 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string"},"example":"Decathlon"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"siren":"306138900","score":82,"niveau":"solide","_partial":true}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/score-entreprise":{"get":{"summary":"Company solidity/risk score 0-100 for a French company: crosses INPI financials (revenue/profit trend), BODACC legal proceedings, age, status. Replaces a paid solvency report. Free trial: /free/score-entreprise. Query: ?q= or ?siren=","description":"Company solidity/risk score 0-100 for a French company: crosses INPI financials (revenue/profit trend), BODACC legal proceedings, age, status. Replaces a paid solvency report. Free trial: /free/score-entreprise. Query: ?q= or ?siren= — Price: $0.08 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string"},"example":"Decathlon"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"siren":"306138900","score":82,"niveau":"solide"}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/analyse-immo/partial":{"get":{"summary":"LITE version of analyse-immo: median price/m2, estimated value, investment score. Upgrade to /v1/fr/analyse-immo for energy, risks, demographics, yield. Query: ?adresse=&surface=","description":"LITE version of analyse-immo: median price/m2, estimated value, investment score. Upgrade to /v1/fr/analyse-immo for energy, risks, demographics, yield. Query: ?adresse=&surface= — Price: $0.03 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"adresse","in":"query","required":true,"schema":{"type":"string"},"example":"10 rue de Rivoli Paris"},{"name":"surface","in":"query","required":true,"schema":{"type":"string"},"example":"50"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"prix_m2_median":12110,"valeur_estimee":605476,"score_investissement":73,"_partial":true}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/analyse-immo":{"get":{"summary":"Real-estate investment scorecard for an address: DVF value estimate + energy (DPE) + natural risks + demographics + rental yield estimate. Query: ?adresse=&surface=&type=appartement|maison","description":"Real-estate investment scorecard for an address: DVF value estimate + energy (DPE) + natural risks + demographics + rental yield estimate. Query: ?adresse=&surface=&type=appartement|maison — Price: $0.08 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"adresse","in":"query","required":true,"schema":{"type":"string"},"example":"10 rue de Rivoli Paris"},{"name":"surface","in":"query","required":true,"schema":{"type":"string"},"example":"50"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"ville":"Paris","estimation":{"prix_m2_median":12110},"score_investissement":73}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/kyb/partial":{"get":{"summary":"LITE version of kyb: compliance verdict + VAT VIES validity + insolvency + red-flag count. Upgrade to /v1/fr/kyb for full dossier (officers, financials, flags detail). Query: ?q= or ?siren=","description":"LITE version of kyb: compliance verdict + VAT VIES validity + insolvency + red-flag count. Upgrade to /v1/fr/kyb for full dossier (officers, financials, flags detail). Query: ?q= or ?siren= — Price: $0.03 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string"},"example":"Decathlon"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"siren":"306138900","verdict":"CONFORME","tva_validee_vies":true,"_partial":true}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/kyb":{"get":{"summary":"Know-Your-Business compliance dossier for a French company in one call: identity, VAT + VIES validation, officers, financial health (INPI), legal proceedings (BODACC), risk verdict. Free trial: /free/kyb. Query: ?q= or ?siren=","description":"Know-Your-Business compliance dossier for a French company in one call: identity, VAT + VIES validation, officers, financial health (INPI), legal proceedings (BODACC), risk verdict. Free trial: /free/kyb. Query: ?q= or ?siren= — Price: $0.10 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string"},"example":"Decathlon"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"siren":"306138900","verdict":"CONFORME","fiscal":{"tva_validee_vies":true}}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/etude-implantation":{"get":{"summary":"Business location study: competitor saturation (same activity in commune), demographics, commercial real-estate prices, opportunity score. Query: ?activite=&commune=","description":"Business location study: competitor saturation (same activity in commune), demographics, commercial real-estate prices, opportunity score. Query: ?activite=&commune= — Price: $0.12 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"activite","in":"query","required":true,"schema":{"type":"string"},"example":"boulangerie"},{"name":"commune","in":"query","required":true,"schema":{"type":"string"},"example":"Pointe-à-Pitre"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"commune":"Pointe-à-Pitre","concurrents_actifs":56,"habitants_par_concurrent":268,"score_opportunite":45}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/reseau-dirigeant":{"get":{"summary":"All French companies linked to a person (director search) with active/ceased flags and fraud-risk level. Query: ?nom=&prenom=","description":"All French companies linked to a person (director search) with active/ceased flags and fraud-risk level. Query: ?nom=&prenom= — Price: $0.08 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"nom","in":"query","required":true,"schema":{"type":"string"},"example":"Arnault"},{"name":"prenom","in":"query","required":true,"schema":{"type":"string"},"example":"Bernard"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"total_societes":40,"cessees":2,"niveau_alerte":"modérée"}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/concurrents":{"get":{"summary":"Competitive landscape of a French company: same-NAF rivals in its area ranked by revenue, with CA position. Query: ?q= or ?siren= &zone=departement|region","description":"Competitive landscape of a French company: same-NAF rivals in its area ranked by revenue, with CA position. Query: ?q= or ?siren= &zone=departement|region — Price: $0.08 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string"},"example":"Decathlon"},{"name":"zone","in":"query","required":true,"schema":{"type":"string"},"example":"departement"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"total_marche":297,"top_concurrents":[{"nom":"...","finances":{"ca":1000000}}]}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/verif-artisan":{"get":{"summary":"Verify a French contractor before hiring: company health, age, RGE certification, insolvency proceedings, trust level. Query: ?q= or ?siren=","description":"Verify a French contractor before hiring: company health, age, RGE certification, insolvency proceedings, trust level. Query: ?q= or ?siren= — Price: $0.08 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string"},"example":"EURL LAURENT LAVALL"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"confiance":"élevée","certifie_rge":true,"procedures_collectives":0}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/valorisation":{"get":{"summary":"Company valuation estimate from public financials (revenue & earnings multiples), with range. Query: ?q= or ?siren=","description":"Company valuation estimate from public financials (revenue & earnings multiples), with range. Query: ?q= or ?siren= — Price: $0.10 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string"},"example":"Decathlon"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"chiffre_affaires":16207285000,"valorisation":{"estimation_centrale":15000000000}}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/uk/company":{"get":{"summary":"UK company profile (Companies House): status, incorporation, SIC codes, registered office, accounts due dates, insolvency/charges flags. Query: ?q= or ?number=","description":"UK company profile (Companies House): status, incorporation, SIC codes, registered office, accounts due dates, insolvency/charges flags. Query: ?q= or ?number= — Price: $0.02 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string"},"example":"Tesco PLC"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"company_number":"00445790","name":"TESCO PLC","status":"active"}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/uk/officers":{"get":{"summary":"UK company directors/officers (Companies House): name, role, appointment/resignation, nationality. Query: ?q= or ?number=","description":"UK company directors/officers (Companies House): name, role, appointment/resignation, nationality. Query: ?q= or ?number= — Price: $0.02 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"number","in":"query","required":true,"schema":{"type":"string"},"example":"00445790"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"total":12,"officers":[{"name":"...","role":"director"}]}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/uk/psc":{"get":{"summary":"UK beneficial owners — Persons with Significant Control (Companies House), key for KYB/AML. Query: ?q= or ?number=","description":"UK beneficial owners — Persons with Significant Control (Companies House), key for KYB/AML. Query: ?q= or ?number= — Price: $0.03 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"number","in":"query","required":true,"schema":{"type":"string"},"example":"00445790"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"total":1,"controllers":[{"name":"...","nature_of_control":["ownership-of-shares-75-to-100-percent"]}]}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/uk/company-check":{"get":{"summary":"UK company KYB verdict in one call: status, accounts/filing compliance, insolvency history, officers, beneficial owners. Query: ?q= or ?number=","description":"UK company KYB verdict in one call: status, accounts/filing compliance, insolvency history, officers, beneficial owners. Query: ?q= or ?number= — Price: $0.08 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string"},"example":"Tesco PLC"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"name":"TESCO PLC","verdict":"PASS","active_officers":12}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/us/company":{"get":{"summary":"US public company profile (SEC EDGAR): name, CIK, tickers, exchange, SIC, state, fiscal year, latest filing. Query: ?ticker= or ?cik=","description":"US public company profile (SEC EDGAR): name, CIK, tickers, exchange, SIC, state, fiscal year, latest filing. Query: ?ticker= or ?cik= — Price: $0.02 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"ticker","in":"query","required":true,"schema":{"type":"string"},"example":"AAPL"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"cik":"0000320193","name":"Apple Inc.","exchanges":["Nasdaq"]}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/us/financials":{"get":{"summary":"US public company key annual financials from SEC XBRL: revenue, net income, assets, liabilities, equity, cash (3 years). Query: ?ticker= or ?cik=","description":"US public company key annual financials from SEC XBRL: revenue, net income, assets, liabilities, equity, cash (3 years). Query: ?ticker= or ?cik= — Price: $0.05 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"ticker","in":"query","required":true,"schema":{"type":"string"},"example":"AAPL"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"name":"Apple Inc.","net_income":[{"end":"2025-09-27","value":112010000000}]}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/us/filings":{"get":{"summary":"Recent SEC filings for a US company (10-K, 10-Q, 8-K...) with dates and document URLs. Query: ?ticker= or ?cik= &type=","description":"Recent SEC filings for a US company (10-K, 10-Q, 8-K...) with dates and document URLs. Query: ?ticker= or ?cik= &type= — Price: $0.02 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"ticker","in":"query","required":true,"schema":{"type":"string"},"example":"AAPL"},{"name":"type","in":"query","required":true,"schema":{"type":"string"},"example":"10-K"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"name":"Apple Inc.","filings":[{"form":"10-K","filed":"2025-11-01"}]}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/us/snapshot":{"get":{"summary":"One-call US company financial snapshot: revenue, growth, net income, margin, ROE, profitability from SEC XBRL. Query: ?ticker= or ?cik=","description":"One-call US company financial snapshot: revenue, growth, net income, margin, ROE, profitability from SEC XBRL. Query: ?ticker= or ?cik= — Price: $0.06 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"ticker","in":"query","required":true,"schema":{"type":"string"},"example":"AAPL"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"name":"Apple Inc.","revenue_growth_pct":6.2,"net_margin_pct":24.3}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/maps":{"get":{"summary":"Google Maps local business scraper via a FRENCH RESIDENTIAL IP (Google blocks datacenter IPs). One call = one activity+location search -> up to 120 businesses with name, rating, category, address, Maps URL. The first `detailsMax` results (default 25, max 60) are also enriched with phone, website and review count; beyond that these three fields are null. Query: ?q=<activity>&location=<city>&max=&detailsMax=&details=false (feed only, faster)","description":"Google Maps local business scraper via a FRENCH RESIDENTIAL IP (Google blocks datacenter IPs). One call = one activity+location search -> up to 120 businesses with name, rating, category, address, Maps URL. The first `detailsMax` results (default 25, max 60) are also enriched with phone, website and review count; beyond that these three fields are null. Query: ?q=<activity>&location=<city>&max=&detailsMax=&details=false (feed only, faster) — Price: $0.03 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string"},"example":"plombier"},{"name":"location","in":"query","required":true,"schema":{"type":"string"},"example":"Bordeaux"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"source":"google_maps","count":20,"enriched":20,"results":[{"name":"JFS Plombier Bordeaux","rating":4.9,"reviews":120,"category":"Plombier","address":"12 Rue Sainte-Catherine, 33000 Bordeaux","phone":"06 48 56 65 03","website":"https://…","bookingUrl":null,"placeId":"ChIJ…","mapsUrl":"https://www.google.com/maps/place/…"}]}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/enrich":{"get":{"summary":"Enrich a French company (Clearbit/Apollo for France): input a SIREN or a name (+city) -> full sales dossier = legal identity, directors, financials, INSOLVENCY risk (BODACC), plus CONTACT (phone, website, rating) found via residential Google Maps. Registry + legal announcements + Maps in one call. Query: ?siren= or ?name=&city=","description":"Enrich a French company (Clearbit/Apollo for France): input a SIREN or a name (+city) -> full sales dossier = legal identity, directors, financials, INSOLVENCY risk (BODACC), plus CONTACT (phone, website, rating) found via residential Google Maps. Registry + legal announcements + Maps in one call. Query: ?siren= or ?name=&city= — Price: $0.08 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"name","in":"query","required":true,"schema":{"type":"string"},"example":"Decathlon"},{"name":"city","in":"query","required":true,"schema":{"type":"string"},"example":"Lille"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"company":{"siren":"306138900","legalName":"DECATHLON","dirigeants":[{"nom":"...","qualite":"President"}]},"risk":{"hasInsolvencyHistory":false},"contact":{"phone":"03...","website":"https://..."}}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/leboncoin":{"get":{"summary":"Leboncoin listings (France's #1 classifieds) via its internal JSON API + a residential IP that carries a solved DataDome session. Reaches what cloud scrapers cannot (Leboncoin is DataDome-protected). Search by keyword and/or category + city -> structured ads (title, price, city, date, url, images, attributes). Query: ?text=&category=&city=&zipcode=&limit=","description":"Leboncoin listings (France's #1 classifieds) via its internal JSON API + a residential IP that carries a solved DataDome session. Reaches what cloud scrapers cannot (Leboncoin is DataDome-protected). Search by keyword and/or category + city -> structured ads (title, price, city, date, url, images, attributes). Query: ?text=&category=&city=&zipcode=&limit= — Price: $0.02 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"text","in":"query","required":true,"schema":{"type":"string"},"example":"iphone"},{"name":"city","in":"query","required":true,"schema":{"type":"string"},"example":"Bordeaux"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"source":"leboncoin.fr","total":1240,"count":20,"ads":[{"id":"2812345678","title":"iPhone 13","price":420,"city":"Bordeaux","url":"https://www.leboncoin.fr/ad/..."}]}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/seloger":{"get":{"summary":"SeLoger real-estate listings (DataDome-protected, unreachable from datacenters). Search a city (buy/rent) -> listings with type, rooms, surface, price, price per m2, URL + median asking price/m2. Pairs with DVF sold prices. Query: ?city=&cp=&type=achat|location&max=","description":"SeLoger real-estate listings (DataDome-protected, unreachable from datacenters). Search a city (buy/rent) -> listings with type, rooms, surface, price, price per m2, URL + median asking price/m2. Pairs with DVF sold prices. Query: ?city=&cp=&type=achat|location&max= — Price: $0.03 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"city","in":"query","required":true,"schema":{"type":"string"},"example":"Bordeaux"},{"name":"cp","in":"query","required":true,"schema":{"type":"string"},"example":"33000"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"source":"seloger.com","count":25,"summary":{"medianAskingPricePerM2":5200},"listings":[{"type":"Appartement","rooms":4,"surface":132,"price":1370000,"pricePerM2":8422}]}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/unblock":{"get":{"summary":"Unblock ANY anti-bot-protected URL (DataDome, Cloudflare, PerimeterX) and get clean content. Sell the capability, not the data: residential IP + challenge solving. Query: ?url= (&country=fr &render=true &format=html|text|markdown). Returns the page others can't fetch.","description":"Unblock ANY anti-bot-protected URL (DataDome, Cloudflare, PerimeterX) and get clean content. Sell the capability, not the data: residential IP + challenge solving. Query: ?url= (&country=fr &render=true &format=html|text|markdown). Returns the page others can't fetch. — Price: $0.02 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"url","in":"query","required":true,"schema":{"type":"string"},"example":"https://www.leboncoin.fr"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"url":"https://…","format":"html","bytes":1050000,"html":"<html>…</html>"}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/biens-sous-cotes":{"get":{"summary":"Undervalued French property deal-flow: cross a commune's LISTED prices (Bien'ici) with the OFFICIAL SOLD-price median (DVF) -> properties listed well below what the area actually sells for. Sorted by discount. Query: ?city=&cp=&minGap=20. The asking-vs-sold gap nobody else assembles.","description":"Undervalued French property deal-flow: cross a commune's LISTED prices (Bien'ici) with the OFFICIAL SOLD-price median (DVF) -> properties listed well below what the area actually sells for. Sorted by discount. Query: ?city=&cp=&minGap=20. The asking-vs-sold gap nobody else assembles. — Price: $0.05 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"city","in":"query","required":true,"schema":{"type":"string"},"example":"Bordeaux"},{"name":"cp","in":"query","required":true,"schema":{"type":"string"},"example":"33000"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"soldMedianPerM2":4778,"candidatesCount":6,"candidates":[{"type":"Appartement","surface":70,"price":243000,"pricePerM2":3307,"gapPct":-31,"url":"https://..."}]}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/marches-publics":{"get":{"summary":"Live French public tenders (BOAMP, official): find open procurement contracts to bid on by keyword + department, with buyer, object, publication & response deadline, days-left. The revenue-opportunity feed for BD/tender-watch agents — loop by keyword+department for continuous monitoring. Query: ?q=&departement=&actif=true&order=deadline|recent&max=","description":"Live French public tenders (BOAMP, official): find open procurement contracts to bid on by keyword + department, with buyer, object, publication & response deadline, days-left. The revenue-opportunity feed for BD/tender-watch agents — loop by keyword+department for continuous monitoring. Query: ?q=&departement=&actif=true&order=deadline|recent&max= — Price: $0.02 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string"},"example":"informatique"},{"name":"departement","in":"query","required":true,"schema":{"type":"string"},"example":"33"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"source":"BOAMP","total":173,"count":20,"tenders":[{"id":"26-61505","buyer":"Conseil Départemental","object":"Achats d'équipement…","departments":["33"],"deadline":"2026-07-27T10:00:00+00:00","daysLeft":3,"url":"https://www.boamp.fr/pages/avis/?q=idweb:26-61505"}]}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/qualified-leads":{"get":{"summary":"Qualified French B2B leads in one call: finds businesses by activity+city (Google Maps via residential IP -> phone, website, rating) then CROSS-REFERENCES each with the official company registry (SIREN, legal form, NAF, directors, age, status) and scores them HOT/WARM/COLD. A full call list + qualification a solo dev can't assemble (needs residential IP + registry + orchestration). Query: ?activity=&location=&max=","description":"Qualified French B2B leads in one call: finds businesses by activity+city (Google Maps via residential IP -> phone, website, rating) then CROSS-REFERENCES each with the official company registry (SIREN, legal form, NAF, directors, age, status) and scores them HOT/WARM/COLD. A full call list + qualification a solo dev can't assemble (needs residential IP + registry + orchestration). Query: ?activity=&location=&max= — Price: $0.25 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"activity","in":"query","required":true,"schema":{"type":"string"},"example":"plombier"},{"name":"location","in":"query","required":true,"schema":{"type":"string"},"example":"Bordeaux"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"count":12,"summary":{"registryMatched":9,"hot":5},"leads":[{"name":"…","phone":"05…","website":"https://…","company":{"siren":"…","dateCreation":"2012-05-02","ageYears":14,"dirigeants":[{"nom":"…","qualite":"Gérant"}]},"score":85,"tier":"HOT"}]}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/amazon":{"get":{"summary":"Amazon product & search scraper via a residential IP + stealth browser (bypasses Amazon bot detection). Product mode (?asin= or ?url=) -> title, price, rating, reviews, brand, image. Search mode (?q=) -> up to 60 products with price/rating. Great for price monitoring & competitive intel.","description":"Amazon product & search scraper via a residential IP + stealth browser (bypasses Amazon bot detection). Product mode (?asin= or ?url=) -> title, price, rating, reviews, brand, image. Search mode (?q=) -> up to 60 products with price/rating. Great for price monitoring & competitive intel. — Price: $0.02 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"asin","in":"query","required":true,"schema":{"type":"string"},"example":"B09XS7JWHH"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"source":"amazon.fr","mode":"product","product":{"title":"Sony WH-1000XM5","price":"€204.92","priceValue":204.92,"rating":4.3,"reviews":12614}}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/fr/immo":{"get":{"summary":"French real-estate listings (asking prices) from Bien'ici via a residential IP (datacenter IPs are blocked). One call = one city search -> listings with type, rooms, surface, price, €/m², postal code, URL + a median asking €/m². Pairs with /v1/fr/estimation-immo (DVF sold prices) to compare asking vs sold. Query: ?city=&cp=&type=achat|location","description":"French real-estate listings (asking prices) from Bien'ici via a residential IP (datacenter IPs are blocked). One call = one city search -> listings with type, rooms, surface, price, €/m², postal code, URL + a median asking €/m². Pairs with /v1/fr/estimation-immo (DVF sold prices) to compare asking vs sold. Query: ?city=&cp=&type=achat|location — Price: $0.03 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"city","in":"query","required":true,"schema":{"type":"string"},"example":"Bordeaux"},{"name":"cp","in":"query","required":true,"schema":{"type":"string"},"example":"33000"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"source":"bienici.com","count":25,"summary":{"medianAskingPricePerM2":4602},"listings":[{"type":"Appartement","rooms":4,"surface":132,"price":635000,"pricePerM2":4602,"postalCode":"33100"}]}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/search":{"get":{"summary":"Cheap web search (real Google results via Serper): top 10 organic results + answer box + knowledge graph. Cheaper than Exa /search on x402. Query: ?q=&gl=&hl=","description":"Cheap web search (real Google results via Serper): top 10 organic results + answer box + knowledge graph. Cheaper than Exa /search on x402. Query: ?q=&gl=&hl= — Price: $0.003 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string"},"example":"x402 protocol"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"results":[{"title":"x402","url":"https://x402.org","snippet":"…"}]}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/search/news":{"get":{"summary":"Fresh news search (Google News via Serper): latest headlines with source, date, snippet. Great for crypto/market/current-events agents. Query: ?q=&gl=&hl=","description":"Fresh news search (Google News via Serper): latest headlines with source, date, snippet. Great for crypto/market/current-events agents. Query: ?q=&gl=&hl= — Price: $0.003 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string"},"example":"bitcoin"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"news":[{"title":"…","link":"…","date":"1h ago","source":"…"}]}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/llm":{"post":{"summary":"Cheap LLM inference pay-per-call, no account, no API key: prompt in, completion out (DeepSeek v4, up to 2000 output tokens). Among the lowest $/call on x402. Body: {prompt, system?, max_tokens?}","description":"Cheap LLM inference pay-per-call, no account, no API key: prompt in, completion out (DeepSeek v4, up to 2000 output tokens). Among the lowest $/call on x402. Body: {prompt, system?, max_tokens?} — Price: $0.002 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"url":{"type":"string","format":"uri"}},"required":["url"]},"example":{"prompt":"Summarize x402 in one sentence"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"output":"x402 lets agents pay APIs per call in stablecoins.","usage":{"output_tokens":18}}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/extract-structured":{"get":{"summary":"URL + wanted fields -> clean JSON. Scrapes the page from a French residential IP (reaches sites that block datacenters) and uses an LLM to return exactly the fields you ask for. The 'scrape into this shape' call agents love (Firecrawl-extract territory), cheaper. Query: ?url=&fields=price,rating,stock (or ?schema=free-text)","description":"URL + wanted fields -> clean JSON. Scrapes the page from a French residential IP (reaches sites that block datacenters) and uses an LLM to return exactly the fields you ask for. The 'scrape into this shape' call agents love (Firecrawl-extract territory), cheaper. Query: ?url=&fields=price,rating,stock (or ?schema=free-text) — Price: $0.015 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","parameters":[{"name":"url","in":"query","required":true,"schema":{"type":"string"},"example":"https://example.com"},{"name":"fields","in":"query","required":true,"schema":{"type":"string"},"example":"title,price"}],"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"url":"https://…","data":{"title":"…","price":19.9}}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}},"/v1/llm/pro":{"post":{"summary":"Smart LLM inference (DeepSeek v4 Pro): stronger reasoning for hard prompts, up to 2000 output tokens, no account. Body: {prompt, system?, max_tokens?}","description":"Smart LLM inference (DeepSeek v4 Pro): stronger reasoning for hard prompts, up to 2000 output tokens, no account. Body: {prompt, system?, max_tokens?} — Price: $0.006 per call via x402 (USDC on Base). Unpaid requests get HTTP 402 with payment instructions in the PAYMENT-REQUIRED header.","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"url":{"type":"string","format":"uri"}},"required":["url"]},"example":{"prompt":"Explain the tradeoffs of x402 vs API keys"}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"example":{"output":"…","usage":{"output_tokens":300}}}}},"402":{"description":"Payment required (x402 — see PAYMENT-REQUIRED response header)"}}}}}}