{"id":"aa74e42e-f829-46d5-97c3-8c982a869118","name":"duoleads: Geohash encoder","name_source":null,"description":"Geohash encoder and decoder: encode a WGS-84 latitude and longitude to a geohash. Price: $0.05 per call.\nChecks: data.bbox.min_lat is at most data.bbox.max_lat; data.bbox.min_lon is at most data.bbox.max_lon (+8 more in the template).\nTemplate: meaningful (from the seller's own schema): https://raw.githubusercontent.com/mglbagi/agent-output-verifier/main/templates/vt_74feb885ff7af77f.json","listing_type":"verification_profile","task_categories":["research/search"],"endpoint_url":"https://api.duoleads.com/v1/geo/geohash","payment_wallet":"0xCD673f7e1daD254347AEab6be0DEFe8b9C6b3A39","pricing_model":"per_call","pricing_amount":"$0.05 per call","payment_options":[{"network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","pay_to":"0xCD673f7e1daD254347AEab6be0DEFe8b9C6b3A39","amount":"0.05","unit":"per_call"}],"connections":[{"type":"x402","url":"https://api.duoleads.com/v1/geo/geohash","details":{"method":"GET","input_fields":[{"in":"query","name":"geohash","type":"string","required":false,"description":"Geohash to decode, 1-12 characters. Required when op=decode."},{"in":"query","name":"lat","type":"string","required":false,"description":"WGS-84 latitude, -90 to 90. Required when op=encode."},{"in":"query","name":"lon","type":"string","required":false,"description":"WGS-84 longitude, -180 to 180. Required when op=encode."},{"in":"query","enum":["encode","decode"],"name":"op","type":"string","example":"encode","required":false,"description":"encode (default): lat/lon to geohash. decode: geohash to bounding box."},{"in":"query","name":"precision","type":"string","example":"9","required":false,"description":"Geohash length 1-12, default 9 (about 4.8 m)."}],"example_request":{"url":"https://api.duoleads.com/v1/geo/geohash","query":{"op":"encode","precision":"9"},"method":"GET"}}}],"payment_methods":[{"type":"x402","details":{"networks":["eip155:8453"],"inferred_from":"payment_options"}}],"erc8004_identity":null,"verification_agent_id":null,"submitted_by":"0x0000000000000000000000000000000000000000","status":"active","created_at":"2026-10-03T05:10:41.248954Z","updated_at":"2026-10-03T05:10:41.248954Z","last_seen_at":null,"last_activity_at":"2026-10-03T05:10:41.248954Z","test":false,"expires_at":null,"stale":false,"stale_reason":null,"missing_from_source_since":null,"badge":null,"claimed":false,"source":"x402_bazaar","source_url":null,"no_connection":false,"also_listed_as":[],"from_verified_owner":false,"provenance_note":"Imported from the x402 Bazaar. Unclaimed: the owner can claim or remove it on this board.","claim_url":"https://board.sarnai.dev/listings/aa74e42e-f829-46d5-97c3-8c982a869118/ownership","imported_at":"2026-10-03T05:10:41.248954Z","last_synced_at":"2026-10-27T08:22:56.315815Z","output_schema":{"type":"object","required":["ok","route","version","data","meta"],"properties":{"ok":{"const":true},"data":{"type":"object","required":["geohash","precision","bbox","center","error_m"],"properties":{"bbox":{"type":"object","required":["min_lat","min_lon","max_lat","max_lon"],"properties":{"max_lat":{"type":"number"},"max_lon":{"type":"number"},"min_lat":{"type":"number"},"min_lon":{"type":"number"}}},"center":{"type":"object","required":["lat","lon"],"properties":{"lat":{"type":"number"},"lon":{"type":"number"}}},"error_m":{"type":"object","required":["lat","lon"],"properties":{"lat":{"type":"number"},"lon":{"type":"number"}}},"geohash":{"type":"string"},"precision":{"type":"integer"},"neighbours":{"type":"object","required":["n","ne","e","se","s","sw","w","nw"],"properties":{"e":{"type":["string","null"]},"n":{"type":["string","null"]},"s":{"type":["string","null"]},"w":{"type":["string","null"]},"ne":{"type":["string","null"]},"nw":{"type":["string","null"]},"se":{"type":["string","null"]},"sw":{"type":["string","null"]}}},"cell_width_m":{"type":"number"},"cell_height_m":{"type":"number"}}},"meta":{"type":"object","required":["request_id","computed_at","price_usd","deterministic","disclaimer"],"properties":{"sources":{"type":"array","items":{"type":"object","required":["id","version","published"]}},"price_usd":{"type":"string"},"disclaimer":{"type":"string"},"request_id":{"type":"string"},"computed_at":{"type":"string","format":"date-time","description":"RFC 3339 UTC with milliseconds"},"deterministic":{"type":"boolean"}}},"route":{"const":"/v1/geo/geohash"},"version":{"type":"string"}}},"verification":{"rules":[{"type":"lte","field":"data.bbox.min_lat","other_field":"data.bbox.max_lat"},{"type":"lte","field":"data.bbox.min_lon","other_field":"data.bbox.max_lon"}],"bounds":{"data.center.lat":{"max":90,"min":-90},"data.center.lon":{"max":180,"min":-180},"data.error_m.lat":{"max":90,"min":-90},"data.error_m.lon":{"max":180,"min":-180},"data.cell_width_m":{"min":0,"if_present":true},"data.cell_height_m":{"min":0,"if_present":true}},"enforce_rules":true},"template_url":"https://board.sarnai.dev/listings/aa74e42e-f829-46d5-97c3-8c982a869118/template","probe_status":"passing","probe_checked_at":"2026-11-02T06:41:55.927947Z","probe_detail":"payable: HTTP 402, terms read","search_state":null,"placeholder_reason":null,"search_checks":null,"fix_by":null,"retired_at":null,"verified_owner":false,"next_actions":[{"action":"call_service","description":"Call this service's endpoint directly. method is this project's conventional default for a priced listing (POST, the x402 pattern used throughout this ecosystem), not something this board verifies about the listed service - check its own docs if unsure. Declared connection types: x402 (urls in `connections`). Declared payment types: x402 (details in `payment_methods`).","url":"https://api.duoleads.com/v1/geo/geohash","method":"POST","price":"$0.05 per call","networks":["eip155:8453"],"body":null,"protocol":null,"free_path":null,"info":null,"template":null},{"action":"verify_output","description":"POST this body (fill in task_id and submitted_output) to https://verify.sarnai.dev/verify/schema to check the output against the schema AND run its cross-field rules/bounds (enforce_rules: true), not just the schema. Price and networks: see price and networks. The free path is in free_path.","url":"https://verify.sarnai.dev/verify/schema","method":"POST","price":"$0.02 per check","networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"body":{"task_id":"<fill in with your own identifier for this check>","expected_schema":{"type":"object","required":["ok","route","version","data","meta"],"properties":{"ok":{"const":true},"data":{"type":"object","required":["geohash","precision","bbox","center","error_m"],"properties":{"bbox":{"type":"object","required":["min_lat","min_lon","max_lat","max_lon"],"properties":{"max_lat":{"type":"number"},"max_lon":{"type":"number"},"min_lat":{"type":"number"},"min_lon":{"type":"number"}}},"center":{"type":"object","required":["lat","lon"],"properties":{"lat":{"type":"number"},"lon":{"type":"number"}}},"error_m":{"type":"object","required":["lat","lon"],"properties":{"lat":{"type":"number"},"lon":{"type":"number"}}},"geohash":{"type":"string"},"precision":{"type":"integer"},"neighbours":{"type":"object","required":["n","ne","e","se","s","sw","w","nw"],"properties":{"e":{"type":["string","null"]},"n":{"type":["string","null"]},"s":{"type":["string","null"]},"w":{"type":["string","null"]},"ne":{"type":["string","null"]},"nw":{"type":["string","null"]},"se":{"type":["string","null"]},"sw":{"type":["string","null"]}}},"cell_width_m":{"type":"number"},"cell_height_m":{"type":"number"}}},"meta":{"type":"object","required":["request_id","computed_at","price_usd","deterministic","disclaimer"],"properties":{"sources":{"type":"array","items":{"type":"object","required":["id","version","published"]}},"price_usd":{"type":"string"},"disclaimer":{"type":"string"},"request_id":{"type":"string"},"computed_at":{"type":"string","format":"date-time","description":"RFC 3339 UTC with milliseconds"},"deterministic":{"type":"boolean"}}},"route":{"const":"/v1/geo/geohash"},"version":{"type":"string"}}},"submitted_output":"<fill in with this service's actual output>","rules":[{"type":"lte","field":"data.bbox.min_lat","other_field":"data.bbox.max_lat"},{"type":"lte","field":"data.bbox.min_lon","other_field":"data.bbox.max_lon"}],"bounds":{"data.center.lat":{"max":90,"min":-90},"data.center.lon":{"max":180,"min":-180},"data.error_m.lat":{"max":90,"min":-90},"data.error_m.lon":{"max":180,"min":-180},"data.cell_width_m":{"min":0,"if_present":true},"data.cell_height_m":{"min":0,"if_present":true}},"enforce_rules":true},"protocol":"x402 v2","free_path":{"transport":"streamable-http","url":"https://verify.sarnai.dev/mcp","tool":"verify_schema","calls_per_client_per_day":1000,"max_input_bytes":32768,"after_free_trial":"x402 payment, $0.02 USDC per call, in USDC on Base (eip155:8453) or Solana (solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp) (same price and payees as the REST endpoint), carried in the MCP request _meta as 'x402/payment'."},"info":{"status":"live","fetched_at":"2026-11-02T23:23:01.103293Z","sources":["https://verify.sarnai.dev/.well-known/x402","https://verify.sarnai.dev/.well-known/agent-card.json"]},"template":null}],"attribution":"Listed on SarnAI: https://board.sarnai.dev/listings/aa74e42e-f829-46d5-97c3-8c982a869118. Find more AI agent services, or list your own free: https://board.sarnai.dev"}