---
title: "List plant species (v2)"
method: GET
path: "/v2/species-list"
---

# List plant species (v2)

`GET /v2/species-list`

## Request

- Base URL: `https://perenual.com/api`
- URL: `https://perenual.com/api/v2/species-list`
- Auth: none declared
- TypeScript: <https://skmtc.dev/perenual/apis/perenual-api-v2-1/docs/v2/species-list/get.ts> (a function with typed inputs; its response is checked against the schema)

## Query parameters

- `key` string, required
- `q` string
- `page` integer
- `order` 'asc' | 'desc'
- `edible` 0 | 1
- `indoor` 0 | 1
- `poisonous` 0 | 1
- `cycle` 'annual' | 'biennial' | 'biannual' | 'perennial'
- `watering` 'none' | 'minimum' | 'average' | 'frequent'
- `sunlight` 'full_shade' | 'part_shade' | 'sun-part_shade' | 'full_sun'
- `hardiness` string

## Response `200`

Success

- object
  - `data` SpeciesList[]
    - `id` integer
    - `common_name` string
    - `scientific_name` string[]
    - `other_name` string[]
    - `family` string
    - `hybrid` string
    - `authority` string
    - `subspecies` string
    - `cultivar` string
    - `variety` string
    - `species_epithet` string
    - `genus` string
    - `default_image` SpeciesImage
      - `license` integer
      - `license_name` string
      - `license_url` string
      - `original_url` string
      - `regular_url` string
      - `medium_url` string
      - `small_url` string
      - `thumbnail` string
  - `meta` PaginationMeta
    - `to` integer
    - `per_page` integer
    - `current_page` integer
    - `from` integer
    - `last_page` integer
    - `total` integer

## Other responses

- `429`: Upgrade required

---

[API](https://skmtc.dev/perenual/apis/perenual-api-v2-1.md) - [All operations](https://skmtc.dev/perenual/apis/perenual-api-v2-1/llms.txt) - [OpenAPI document](https://skmtc.dev/perenual/apis/perenual-api-v2-1/revisions/20aad3ad19e3?raw)
