# Overview

> One API for public lidar elevation data — a STAC catalog plus an Elevation API, with a single key and one set of quotas.

Darly indexes national lidar programs into one normalized catalog and serves
the data two ways:

- **STAC API** — a standards-compliant [STAC](https://stacspec.org) catalog of
  every dataset we index: collections, item footprints, projection metadata,
  and cloud-optimized GeoTIFF (COG) assets. Works with `pystac-client`, QGIS,
  GDAL, and any STAC browser. Browsable anonymously.
- **Elevation API** — point lookups, batch lookups, path sampling, and raster
  extracts computed from the best available source at each location. Requires
  a free API key.

All endpoints live on one host:

```text
https://api.darly.io
```

## The two APIs at a glance

| | STAC API | Elevation API |
|---|---|---|
| Purpose | Find and download source data | Get elevations and DEM extracts |
| Auth | Anonymous OK ([API key raises limits](/docs/authentication)) | API key required |
| Formats | STAC JSON, COG assets | JSON, cloud-optimized GeoTIFF |
| Endpoints | `/collections`, `/search`, … | `/v1/elevation/*` |
| Docs | [STAC catalog](/docs/stac) | [Points](/docs/elevation) · [Raster](/docs/raster) |

## Typical first call

```bash cURL
curl "https://api.darly.io/v1/elevation/point?lat=45.51&lon=-73.56" \
  -H "X-API-Key: $DARLY_API_KEY"
```

```python Python
import requests

resp = requests.get(
    "https://api.darly.io/v1/elevation/point",
    params={"lat": 45.51, "lon": -73.56},
    headers={"X-API-Key": DARLY_API_KEY},
)
print(resp.json()["result"]["elevation"])
```

```javascript JavaScript
const resp = await fetch(
  "https://api.darly.io/v1/elevation/point?lat=45.51&lon=-73.56",
  { headers: { "X-API-Key": process.env.DARLY_API_KEY } },
)
const { result } = await resp.json()
console.log(result.elevation)
```

Head to the [quickstart](/docs/quickstart) for the full walkthrough, including
creating a key.

## For LLMs and agents

These docs are built to be machine-readable. Point your tools at:

- [`/llms.txt`](/llms.txt) — index of all documentation in the
  [llms.txt](https://llmstxt.org) convention.
- [`/llms-full.txt`](/llms-full.txt) — the complete documentation as a single
  Markdown file.
- Every page is available as raw Markdown at `/docs/md/{slug}`
  (for example [`/docs/md/quickstart`](/docs/md/quickstart)).
- [`/openapi.json`](/openapi.json) — OpenAPI 3.1 description of every public
  endpoint, including parameter schemas and error shapes.

## Support

- Community and email support: [contact@darly.io](mailto:contact@darly.io)
- Coverage questions: see [coverage & datasets](/docs/coverage) or the
  interactive [explorer](/explorer).
- Plans and pricing: [darly.io/#pricing](/#pricing); limits are documented in
  [rate limits & quotas](/docs/limits).
