# Saylor Innovations Reverse Geocoder

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

Converts a latitude/longitude coordinate pair into a structured street address including street, city, state, postcode, and country using OpenStreetMap data

## Facts

- Endpoint: GET https://saylorinnovations.com/api/geocode/reverse?utm_source=zero.xyz
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-17
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/saylor-innovations-reverse-geocoder-6e14becf
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_M-NsD61zNBDJ6fMN2ddW1

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-reverse-geocoder-6e14becf
```

Example prompt: What's the street address for the coordinates 40.7484° N, 73.9857° W? I need the full address including city, state, and zip code.

## When to prefer this

Use this endpoint when you need to convert raw GPS coordinates (latitude/longitude) into a human-readable postal address backed by OpenStreetMap data. It costs $0.01 USDC per call via x402 payment, making it suitable for per-query agent workflows. Prefer it over forward geocoding endpoints when you already have coordinates and need address details. It is distinct from the sibling forward-geocoding endpoint which does the reverse direction (address-to-coordinates).

## Known failure modes

- Coordinates in ocean or remote wilderness may return no address or sparse results
- Invalid lat/lon values (out of range, non-numeric) will cause a request error
- Coordinates near borders may return ambiguous or unexpected administrative divisions
- OpenStreetMap coverage is incomplete in some rural or developing regions, yielding partial addresses
- Rate limiting or upstream Nominatim outages may cause timeouts or 5xx errors

## How this service works

Reverse geocode - street address, city, state, postcode and country for any latitude and longitude (OpenStreetMap)

## Output

Returns a JSON object containing a display_name string (full human-readable address), a structured address object with fields like road, city, state, postcode, and country, plus latitude/longitude, bounding box, OSM metadata (type, category, name), data source attribution, and a checked_at timestamp.

## 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",
      "POST",
      "PUT",
      "PATCH",
      "DELETE",
      "HEAD"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "lat",
      "lon"
     ],
     "properties": {
      "lat": {
       "type": "string",
       "description": "Latitude in decimal degrees, e.g. 40.7484"
      },
      "lon": {
       "type": "string",
       "description": "Longitude in decimal degrees, e.g. -73.9857"
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "json"
    },
    "example": {
     "type": "object",
     "required": [
      "display_name",
      "address"
     ],
     "properties": {
      "lat": {
       "type": [
        "number",
        "null"
       ],
       "description": "Latitude in decimal degrees"
      },
      "lon": {
       "type": [
        "number",
        "null"
       ],
       "description": "Longitude in decimal degrees"
      },
      "osm": {
       "type": "object"
      },
      "name": {
       "description": "Name"
      },
      "type": {
       "type": [
        "string",
        "null"
       ],
       "description": "Type or kind"
      },
      "source": {
       "type": [
        "string",
        "null"
       ],
       "description": "Data source the values come from"
      },
      "address": {
       "type": "object",
       "description": "Account or contract address"
      },
      "category": {
       "type": [
        "string",
        "null"
       ],
       "description": "Category"
      },
      "checked_at": {
       "type": [
        "string",
        "null"
       ],
       "description": "Time the check was run (UTC)"
      },
      "attribution": {
       "type": [
        "string",
        "null"
       ],
       "description": "Attribution required by the source"
      },
      "bounding_box": {
       "type": [
        "array",
        "null"
       ],
       "description": "Bounding box"
      },
      "display_name": {
       "type": "string",
       "description": "Display
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/saylor-innovations-reverse-geocoder-6e14becf/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)
