# Halowerk Geo Distance & Bearing

> Halowerk Geo Distance & Bearing is a paid API for AI agents from geo.halowerk.com, paid per call via x402, $0.004/call, status unknown (last checked 2026-09-15).

Calculates the WGS84 great-circle distance and initial bearing between two geographic coordinates

## Facts

- Endpoint: POST https://geo.halowerk.com/v1/distance-bearing
- Price: $0.004/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/halowerk-geo-distance-bearing-9abcb105
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_OD5Lqa2Tb3Uh9JaKmZR7m

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 halowerk-geo-distance-bearing-9abcb105 -d '<json body>'
```

Example prompt: What's the great-circle distance and initial bearing from New York (40.7128°N, 74.0060°W) to London (51.5074°N, 0.1278°W)?

## When to prefer this

Use this endpoint when you need a precise WGS84 great-circle (geodesic) distance and/or initial bearing between two coordinate pairs on Earth's surface. Prefer it over simple Euclidean distance calculations when geographic accuracy matters, or over full routing APIs when you only need the straight-line distance and direction rather than road-based navigation. It is especially useful for aviation, maritime, drone range checking, and any geospatial proximity or heading calculation.

## Known failure modes

- Invalid latitude or longitude values outside allowed ranges (-90 to 90 for lat, -180 to 180 for lon)
- Missing required 'from' or 'to' objects in the request body
- Identical from/to coordinates may produce zero distance and undefined bearing
- Antipodal points may result in undefined or null bearing, listed in unavailable_fields
- Payment failure or insufficient USDC balance (x402 protocol rejection)

## How this service works

Calculates WGS84 great-circle distance and initial bearing. Missing facts are returned as null and named in unavailable_fields where applicable. Derived values disclose their method; source-backed values disclose source, time window and age. 

## Output

Returns the WGS84 great-circle distance between the two points and the initial bearing (azimuth) from the origin to the destination. Missing or uncomputable values are returned as null and listed in an unavailable_fields array. The response also discloses the computation method used for derived values.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "to": {
   "type": "object",
   "required": [
    "lat",
    "lon"
   ],
   "properties": {
    "lat": {
     "type": "number",
     "maximum": 90,
     "minimum": -90,
     "description": ""
    },
    "lon": {
     "type": "number",
     "maximum": 180,
     "minimum": -180,
     "description": ""
    }
   },
   "additionalProperties": false
  },
  "from": {
   "type": "object",
   "required": [
    "lat",
    "lon"
   ],
   "properties": {
    "lat": {
     "type": "number",
     "maximum": 90,
     "minimum": -90,
     "description": ""
    },
    "lon": {
     "type": "number",
     "maximum": 180,
     "minimum": -180,
     "description": ""
    }
   },
   "additionalProperties": false
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/halowerk-geo-distance-bearing-9abcb105/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from geo.halowerk.com](https://www.zero.xyz/host/geo.halowerk.com/llms.txt)
