# Saylor Innovations Geohash Encoder/Decoder

> Saylor Innovations Geohash Encoder/Decoder is a paid API for AI agents from saylorinnovations.com, paid per call via x402, $0.01/call, status unknown (last checked 2026-10-18).

Encodes a latitude/longitude into a geohash string at any precision (1–12), returning the hash, its bounding box, cell size, and eight neighboring cells

## Facts

- Endpoint: GET https://saylorinnovations.com/api/geo/geohash?utm_source=zero.xyz
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-18
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/saylor-innovations-geohash-encoder-decoder-8829fe64
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_m18YQVuIWP1lFcrw9O64j

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability saylor-innovations-geohash-encoder-decoder-8829fe64
```

Example prompt: Can you encode the coordinates 37.7749° N, 122.4194° W into a geohash at precision 9 and also show me the eight neighboring cells?

## When to prefer this

Choose this endpoint when you need to encode or decode geohashes with full cell metadata including bounding box, cell size, and neighbors in a single call — ideal for proximity search indexing, geofencing, and spatial clustering workflows that need the surrounding cell context, not just a raw hash string.

## Known failure modes

- Missing lat or lon parameter returns an error
- Latitude out of range (-90 to 90) causes invalid input error
- Longitude out of range (-180 to 180) causes invalid input error
- Precision outside 1–12 range may return default or error
- Payment not received returns 402 Payment Required

## How this service works

Encode a latitude and longitude into a geohash at any precision, or decode a geohash into its centre, bounding box, cell size and eight neighbouring cells

## Output

Returns a JSON object containing the geohash string, the mode used, the precision level, approximate cell size in meters, bounding box coordinates, eight neighboring cell hashes, shorter prefix hashes that contain the cell, and the input latitude/longitude reflected back.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "lat",
      "lon"
     ],
     "properties": {
      "lat": {
       "type": "string",
       "description": "Latitude to encode"
      },
      "lon": {
       "type": "string",
       "description": "Longitude to encode"
      },
      "precision": {
       "type": "string",
       "description": "optional 1-12, default 9"
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "json"
    },
    "example": {
     "type": "object",
     "required": [
      "mode",
      "geohash"
     ],
     "properties": {
      "lat": {
       "type": [
        "number",
        "null"
       ],
       "description": "Latitude in decimal degrees"
      },
      "lon": {
       "type": [
        "number",
        "null"
       ],
       "description": "Longitude in decimal degrees"
      },
      "mode": {
       "type": "string",
       "description": "Mode used"
      },
      "note": {
       "type": "string",
       "description": "Caveat or context for reading the result"
      },
      "source": {
       "type": "string",
       "description": "Data source the values come from"
      },
      "geohash": {
       "type": "string",
       "description": "Geohash string"
      },
      "prefixes": {
       "type": [
        "array",
        "null"
       ],
       "description": "Shorter geohashes that contain this cell"
      },
      "precision": {
       "type": [
        "number",
        "null"
       ],
       "description": "Number of characters in the geohash"
      },
      "cell_size_approx_m": {
       "type": "object",
       "description": "Cell size approx m"
      }
     }
    }
   }
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/saylor-innovations-geohash-encoder-decoder-8829fe64/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from saylorinnovations.com](https://www.zero.xyz/host/saylorinnovations.com/llms.txt)
