Off-Nadir Delta

Your first query — balance, then the top signals in an area

You have an API key and want to see real data in under a minute, without spending tokens on the wrong call.

Steps

  1. Verify the key and read your balance with the free GET /api/v1/usage.
  2. List the highest-severity signals over your area of interest.
  3. Open any returned id on the Watchfloor to see the same signal in the app.

In the web app

Open the Watchfloor

REST

Authenticate with Authorization: Bearer ond_… (create a key at /account/api). Try any of these live in the Playground.

Verify the key (free)

bash
curl "https://offnadir-delta.com/api/v1/usage" \
  -H "Authorization: Bearer ond_YOUR_API_KEY"

Top signals over the AOI

bash
curl "https://offnadir-delta.com/api/v1/signals?bbox=22%2C44%2C40%2C53&days=7&sort=severity&limit=5" \
  -H "Authorization: Bearer ond_YOUR_API_KEY"

Python

This is the runnable example shipped with the SDK (pip install offnadir-delta, then set OFFNADIR_DELTA_API_KEY).

python
"""Fetch the top signals in an area of interest.

Run with:  OFFNADIR_DELTA_API_KEY=ond_... python examples/quickstart.py
"""

from offnadir_delta import Client

# bbox = [min_lon, min_lat, max_lon, max_lat] — this one roughly covers Ukraine.
UKRAINE = [22.0, 44.0, 40.0, 53.0]


def main() -> None:
    with Client() as client:  # reads OFFNADIR_DELTA_API_KEY
        usage = client.usage()
        print(f"Balance: {usage.tokens.remaining} tokens | LLM access: {usage.plan.api_llm_access}")

        page = client.signals.list(
            bbox=UKRAINE,
            days=7,
            min_severity=5,
            sort="severity",
            limit=20,
        )
        charged = page.meta.tokens.charged if page.meta.tokens else 0
        print(f"\n{page.meta.count} signals ({charged} tokens charged):\n")
        for s in page.signals:
            print(f"  [{s.severity_score}] {s.event_date} {s.country_code} — {s.title}")
            if s.source_url:
                print(f"      source: {s.source_url}")


if __name__ == "__main__":
    main()

MCP

Connect once, from any MCP client:

bash
claude mcp add --transport http off-nadir-delta \
  https://offnadir-delta.com/api/v1/mcp \
  --header "Authorization: Bearer ond_..."

The tools this workflow uses: get_usage, query_signals. See the full roster at /docs/mcp.

Go deeper

← All recipes

From headline to satellite evidence

One connected intelligence workflow across four surfaces — free to start, no GIS software or remote-sensing background required.