PlantGrail API documentation

The PlantGrail API is a small, free, read-only JSON interface to the PlantGrail houseplant knowledge base. Use this page to call it, discover operations from OpenAPI, and throttle with standard rate-limit headers. The same material, in more detail, lives on the developer resources page.

Do I need an API key?

No. Public read endpoints do not use API keys; send a normal HTTPS GET. Private routes (checkout webhooks, course progress, sales) are authenticated with platform secrets and are out of scope for third-party agents.

Endpoints

Canonical operations are listed in the PlantGrail OpenAPI specification. Function-calling clients should import that document and use the operationId values getHealth, listPlants, listArticles, and getOpenApiDocument.

Example request

curl -s https://plantgrail.com/api/health returns JSON {"status":"ok","service":"plantgrail"}. curl -s "https://plantgrail.com/api/plants?limit=5" returns a paginated plant list. On failure, parse error.resolution instead of scraping an HTML page.

Rate-limit convention

Successful and error API responses include RateLimit, RateLimit-Policy, X-RateLimit-Limit, X-RateLimit-Remaining, and X-RateLimit-Reset. A 429 also includes Retry-After. The public window is 60 requests per 60 seconds per IP.

More PlantGrail developer links