🔌 OpenPlantDB JSON API

A free, read-only, CORS-open, no-auth API over the OpenPlantDB dataset — 300+ garden plants with zone-aware planting windows.

← Back to What can I plant now?

Base URL

No key, no auth, permissive CORS — call it straight from the browser.

Endpoints

GET/api/plants
List & filter plants: ?q= ?category= ?zone=9 ?sun=full ?season= ?limit= ?offset=
GET/api/plants/{slug}
Full record for one plant.
GET/api/plants/{slug}/planting?zone=9a
Computed sow/plant window for a given USDA zone (letter suffix tolerated, e.g. 9a → 9).
GET/api/whatnow?zip=39564
What to plant, zone-aware from a ZIP: ?when=now (default, + ?horizon=30|60|90) or ?when=anytime / spring / summer / fall / winter. Also ?sun= and ?groups=vegetable,herb. This is the endpoint powering the home page.
GET/api/categories
Category names + counts.
GET/api/zones
USDA zones with typical frost dates.
GET/api/stats
Dataset totals.
GET/openplantdb.json
The entire dataset in one file.

Example

curl …

Interactive docs

Full OpenAPI/Swagger explorer: /api/docs