# RIDB Federal Recreation Search

> RIDB Federal Recreation Search is a paid API for AI agents from 2s.io, paid per call via x402, $0.0012/call, status unknown (last checked 2026-09-13).

Search the Recreation Information Database (RIDB) for federal recreation lands, campgrounds, permits, tours, and activities across NPS, USFS, BLM, USACE, BOR, FWS, and NARA

## Facts

- Endpoint: GET https://2s.io/api/recreation/search
- Price: $0.0012/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-13
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/2s-io-6b2ec7ee
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_0zONkNrE6UywoJ4IKDZbq

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 2s-io-6b2ec7ee
```

Example prompt: Search the RIDB for reservable campsites within 25 miles of Asheville, North Carolina — pull up to 10 results so I can see what federal campgrounds are nearby.

## When to prefer this

Use this endpoint when you need authoritative data about U.S. federal recreation lands — campgrounds, rec areas, permits, tours, and events managed by NPS, USFS, BLM, USACE, BOR, FWS, or NARA. Prefer this over generic web search when you need structured, filterable data with geospatial queries or activity-based filtering. Ideal for trip-planning agents, permit chasers, campground availability tools, and fishing/hunting locators that need to query the single federal source of truth.

## Known failure modes

- Missing required 'resource' parameter returns a 400 validation error
- Radius > 50 miles is rejected; must be capped at 50
- Invalid resource enum value causes schema validation failure
- lat/lon provided without radius (or vice versa) may return unexpected results
- lastUpdated date in wrong format (not MM-DD-YYYY) causes filter to be ignored or error
- Payment failure or x402 auth error returns 402 with no data
- RIDB upstream outage results in 502/503 response
- No results found returns empty list (not an error)

## How this service works

Search the Recreation Information Database (RIDB) — the single source of truth for federal recreation lands and programs across NPS, USFS, BLM, USACE, BOR, FWS, NARA. Pick a resource: recareas (designated recreation areas), facilities (individual sites — campgrounds, day-use, visitor centers), campsites (individual reservable campsites with attributes), permits (special-use permits, lotteries), tours, events, activities (taxonomy lookup). Filter by free-text query, state, activity ID, or lat/lon + radius (miles, max 50). Used by every federal-recreation-related agent: trip planning, permit chasers, fishing/hunting locator, campground availability tools.

## Output

A paginated list of RIDB records matching the query — each record includes the name, description, geographic location, activity options, reservation details, and metadata specific to the resource type (e.g. campsite attributes, permit lottery info, facility type). Returns up to 50 records per call with offset-based pagination.

## Example request

```json
{
 "input": {
  "type": "http",
  "method": "GET",
  "queryParams": {
   "limit": 10,
   "query": "campground",
   "state": "NC",
   "offset": 0,
   "radius": 25,
   "latitude": 35.5951,
   "resource": "campsites",
   "longitude": -82.5515
  }
 }
}
```

## 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",
    "queryParams"
   ],
   "properties": {
    "type": {
     "const": "http"
    },
    "method": {
     "const": "GET"
    },
    "queryParams": {
     "required": [
      "resource"
     ],
     "properties": {
      "limit": {
       "type": "integer",
       "default": 25,
       "maximum": 50,
       "minimum": 1
      },
      "query": {
       "type": "string",
       "description": "Free-text match."
      },
      "state": {
       "type": "string"
      },
      "offset": {
       "type": "integer",
       "default": 0,
       "minimum": 0
      },
      "radius": {
       "type": "number",
       "maximum": 50
      },
      "activity": {
       "type": "integer",
       "description": "RIDB ActivityID."
      },
      "latitude": {
       "type": "number"
      },
      "resource": {
       "enum": [
        "recareas",
        "facilities",
        "campsites",
        "permits",
        "tours",
        "events",
        "activities"
       ],
       "type": "string"
      },
      "longitude": {
       "type": "number"
      },
      "lastUpdated": {
       "type": "string",
       "description": "MM-DD-YYYY filter."
      }
     }
    }
   }
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/2s-io-6b2ec7ee/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from 2s.io](https://www.zero.xyz/host/2s.io/llms.txt)
