Discover/Wildflower API
live

Wildflower APIwildflower.org

Search and retrieve detailed botanical data from the Lady Bird Johnson Wildflower Center's Native Plant Database — taxonomy, bloom info, distribution, and propagation.

This API takes change requests — .
Endpoint health
verified 1d ago
search_plants
get_plant
2/2 passing latest checkself-healing
Endpoints
2
Updated
1d ago

What is the Wildflower API?

The wildflower.org API gives developers access to the Lady Bird Johnson Wildflower Center's Native Plant Database through 2 endpoints and returns over 15 structured fields per plant. Use search_plants to find plants by scientific or common name, then call get_plant with a USDA symbol to retrieve taxonomy, geographic distribution, bloom characteristics, wildlife benefits, and propagation guidance for native North American species.

Try it
Scientific name, common name, or partial name to search for (e.g. 'Echinacea', 'coneflower').
api.parse.bot/scraper/b4a8ad53-1572-4a5d-b336-4be93ff2c840/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/b4a8ad53-1572-4a5d-b336-4be93ff2c840/search_plants?query=Echinacea' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

Typed, relational, agent-ready

A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.

  • Fully typed · autocompletes
  • Objects link to objects
  • Typed errors & pagination

Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:

uv add parse-sdk
uv run parse init
uv run parse add --marketplace wildflower-org-api

uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.

"""Walkthrough: wildflower_org_api SDK — bounded, re-runnable; every call capped."""
from parse_apis.wildflower_org_api import Wildflower, PlantNotFound

client = Wildflower()

# Search for plants by name — limit caps total items fetched.
for plant_summary in client.plants.search(query="Echinacea", limit=3):
    print(plant_summary.scientific_name, plant_summary.common_names)

# Drill-down: take one result and get full details.
hit = client.plants.search(query="coneflower", limit=1).first()
if hit:
    try:
        full = hit.details()
        print(full.scientific_name, full.family)
        print(full.description)
        if full.characteristics:
            print(full.characteristics.duration, full.characteristics.habit)
        if full.bloom_information:
            print(full.bloom_information.bloom_color, full.bloom_information.bloom_time)
        if full.distribution:
            print(full.distribution.native_habitat)
    except PlantNotFound as e:
        print(f"Plant not found: {e.plant_id}")

print("exercised: plants.search, PlantSummary.details")
All endpoints · 2 totalmissing one? ·

Search the Native Plant Database by scientific or common name. Returns a list of matching plants with their USDA symbol identifiers, which can be used to retrieve full details. Results are limited to the first page (up to 10 matches); the total count of all matches is included.

Input
ParamTypeDescription
queryrequiredstringScientific name, common name, or partial name to search for (e.g. 'Echinacea', 'coneflower').
Response
{
  "type": "object",
  "fields": {
    "total": "total number of matching plants",
    "plants": "array of plant summary objects with id_plant, scientific_name, and common_names"
  },
  "sample": {
    "total": 13,
    "plants": [
      {
        "id_plant": "ECAN2",
        "common_names": "Black Samson, Narrow-leaf Coneflower",
        "scientific_name": "Echinacea angustifolia"
      },
      {
        "id_plant": "ECPA",
        "common_names": "Pale Purple Coneflower, Pale Coneflower",
        "scientific_name": "Echinacea pallida"
      }
    ]
  }
}

About the Wildflower API

Searching the Native Plant Database

The search_plants endpoint accepts a query string — a full or partial scientific name, common name, or genus — and returns up to 10 matching plant summaries. Each summary includes id_plant (the USDA symbol), scientific_name, and common_names. The response also includes a total count of all matching records across the full database, so you know how many results exist even when only the first page is returned. The id_plant value from these results is the key input to the second endpoint.

Retrieving Full Plant Detail

The get_plant endpoint accepts a plant_id USDA symbol (for example, ECPA for *Echinacea pallida*) and returns a single, detailed record. The characteristics object covers duration (annual, perennial), habit (forb, shrub, tree), leaf retention, size notes, and physical descriptors for leaf, flower, and fruit. The distribution object includes U.S. and Canadian state/province coverage, a native distribution range description, and native habitat type. bloom data, propagation details (seed collection, seed treatment, commercial availability), and benefits (ornamental use, wildlife value, pollinators attracted) are each returned as structured objects.

Taxonomy and Nomenclature

Each get_plant response includes family (with common family name), full authority citation, synonyms as a comma-separated string of alternate scientific names, and the canonical usda_symbol. This makes the API usable for cross-referencing records against USDA PLANTS data or other botanical datasets. The description field provides a narrative overview of the species suitable for display or NLP processing.

Reliability & maintenanceVerified

The Wildflower API is a managed, monitored endpoint for wildflower.org — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when wildflower.org changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official wildflower.org API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Last verified
1d ago
Latest check
2/2 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Build a regional native plant finder that filters results by U.S. state using the distribution.usa field.
  • Generate pollinator garden plant lists by querying the benefits.attracts field for bee- or butterfly-friendly species.
  • Populate a nursery inventory system with standardized USDA symbols and botanical metadata from get_plant.
  • Create a seed propagation guide app using propagation.seed_collection, propagation.seed_treatment, and propagation.commercially_avail.
  • Cross-reference native plant records against other botanical databases using synonyms and authority fields.
  • Build a wildflower identification tool that maps common name searches via search_plants to full species detail pages.
  • Analyze native plant habitat data by extracting distribution.native_habitat across a batch of USDA symbols.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min

One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does the Lady Bird Johnson Wildflower Center provide an official developer API?+
The Wildflower Center does not publish an official public developer API for the Native Plant Database. The database is accessible through the website at wildflower.org/plants/.
What does `search_plants` return, and does it paginate beyond the first 10 results?+
It returns up to 10 plant summaries per call, each with id_plant, scientific_name, and common_names, along with a total count of all matches. Pagination beyond the first 10 results is not currently supported — the endpoint always returns the first page only. You can fork this API on Parse and revise it to add offset or page-based pagination if your use case requires deeper result sets.
Does the API return images or photos of plants?+
Not currently. The get_plant endpoint returns text-based botanical data — taxonomy, characteristics, distribution, propagation, and benefits — but does not include image URLs or photo gallery data. You can fork this API on Parse and revise it to add image retrieval if photos are part of your use case.
How is geographic coverage represented in `get_plant` results?+
The distribution object includes separate fields for U.S. state coverage (usa), Canadian province coverage (canada), a descriptive native distribution range (native_distribution), and native habitat type (native_habitat). Coverage reflects the Wildflower Center's database records and is focused on North American native species.
Can I retrieve growing condition details like soil type or sun requirements?+
The characteristics object includes habit, duration, leaf retention, and physical descriptors, and the distribution.native_habitat field gives habitat context, but structured fields for explicit soil type, pH range, or sun/shade requirements are not currently returned as discrete values. You can fork this API on Parse and revise it to extract those fields if the source exposes them.
Page content last updated . Spec covers 2 endpoints from wildflower.org.
Related APIs in OtherSee all →
plantsforafuture.org API
Search for edible and medicinal plants to discover their culinary and health uses, cultivation tips, and physical characteristics. Browse the comprehensive plant database alphabetically or look up detailed information about specific plants' benefits and growing requirements.
rhsplants.co.uk API
Search and browse the RHS Plants catalogue to discover thousands of plants and gardening products. Retrieve detailed specifications, growing conditions, images, and purchasing options for any plant, and filter or sort results by category or keyword.
identify.plantnet.org API
Identify and explore plant species by searching through Pl@ntNet's comprehensive botanical database to access detailed information like taxonomic families, genera, species descriptions, photos, and community observations. Track plant distributions, view contribution trends, and discover expert contributors within the platform's collaborative plant identification community.
plantvillage.psu.edu API
Search for crops, diseases, and pests to access detailed agricultural knowledge including treatments, management strategies, and educational content like blog posts and videos. Get comprehensive plant health information with images and disease identification to help diagnose and manage crop problems.
plantix.net API
Access a comprehensive agricultural database covering over 700 plant diseases and pests, with detailed symptoms, treatment options, and prevention methods. Browse cultivation guides for a wide range of crops, retrieve disease risk by growth stage, and explore expert agricultural blog posts — all through a single structured API.
cabi.org API
Search and retrieve detailed information about plant diseases from the CABI Digital Library, including disease characteristics, symptoms, and management strategies. Find specific disease data by name or browse the comprehensive Compendium to identify and understand plant health issues.
leafly.com API
Browse and search Leafly's cannabis catalog. Look up strains by effect, flavor, terpene, or medical use. Find dispensaries near any location, explore their menus and product details, and search across strains, brands, dispensaries, and articles.
quiltindex.org API
Access data from quiltindex.org.