{"uid":"cap_KqgUFZ0Z4domEs0Rp26m_","slug":"animica-batch-geocoder-8db97ad1","name":"Animica Batch Geocoder","description":"Resolve up to 25 places in one call and one payment: free-text or structured addresses to coordinates, coordinates to addresses, mixed freely in one batch. Self-hosted planet OpenStreetMap — no key, no contract, no bulk-use ban. Optional country filter and bounding box. Returns coordinates, named bbox edges, structured address and OSM id. No match returns matched:false, not an error. OSM data under ODbL; required attribution is in every response.","url":"https://animica.dev/x402/geocode","method":"POST","headers":{},"bodySchema":{"type":"object","properties":{"zoom":{"type":"integer","description":"reverse detail level 0-18 (default 18, building)"},"limit":{"type":"integer","description":"max results per forward query (1-10, default 1)"},"queries":{"type":"array","description":"1..50 objects. Forward: {q:\"free text\"} OR structured {street,city,state,county,country,postalcode} (any subset). Reverse: {lat:<number>, lon:<number>}. Lookup: {osm_ids:\"R146656,W104393803\"} (1-10 ids). Structured resolves more accurately than free text when you already have the parts."},"viewbox":{"type":"string","description":"restrict to a box: \"minLon,minLat,maxLon,maxLat\""},"language":{"type":"string","description":"preferred result language, BCP-47, e.g. \"en\" or \"de,en\""},"countrycodes":{"type":"string","description":"restrict to ISO 3166-1 alpha-2 codes, e.g. \"de,at\""}}},"responseSchema":null,"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.001802","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.001798/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.001798","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.001798","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_1N6pzU3GU0pQGokM-teKB","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.001798","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Batch geocode up to 50 mixed queries per call — forward (free-text or structured address to coordinates), reverse (coordinates to address), and OSM ID lookup — powered by a self-hosted planet-scale OpenStreetMap.","exampleAgentPrompt":"Geocode these 3 addresses for me in one batch — '10 Downing Street, London', '1600 Pennsylvania Ave NW, Washington DC', and '1 Infinite Loop, Cupertino CA' — and give me back the coordinates and structured address for each.","exampleUseCases":[{"title":"Bulk address-to-coordinates for delivery fleet","prompt":"I have a list of 40 customer delivery addresses in Germany — can you convert all of them to GPS coordinates in one go, restricted to Germany only?"},{"title":"Reverse geocode GPS tracks to readable addresses","prompt":"I've got 25 lat/lon pairs from our field team's GPS devices — please reverse geocode all of them to get structured street addresses in English."},{"title":"OSM landmark lookup for map annotation","prompt":"I have these OpenStreetMap IDs — R146656, W104393803, and N240109189 — can you resolve them to place names and coordinates so I can annotate my map?"}],"resultDescription":"An array of result objects (one per input query), each containing: matched (boolean), coordinates (lat/lon), structured address fields, OSM ID, and named bounding box edges. Unmatched queries return matched:false rather than an error. Every response includes required ODbL attribution text.","failureModes":["No match found for a query — returns matched:false, not an HTTP error","Batch exceeds 50 queries — request rejected","Invalid OSM ID format — query may fail to match","Malformed lat/lon values for reverse queries — no match returned","countrycodes or viewbox too restrictive — valid addresses return no match","OSM ID lookup with more than 10 IDs in a single osm_ids string — may be rejected"],"whenToPreferThis":"Choose this endpoint when you need to geocode multiple addresses, coordinates, or OSM IDs in a single paid call without an API key or contract. It is especially useful for batch workflows that mix forward geocoding, reverse geocoding, and OSM ID lookups in one request. Prefer it over Nominatim directly when you want pay-per-call pricing with no bulk-use restrictions, or when you need country/bounding box filtering baked in. If you only need a single lookup, still use this endpoint since the batch size of 1 is supported.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-09-14T00:35:06.509Z","isFirstParty":false}