Handbook

Your guide to leveraging kindwise API features.

For product-specific questions, visit FAQs on the product pages on the following links.

General tips

Authentication and API key

You need a unique identifier, an api_key, to use our services. You can obtain an API key after registering. Different API keys are required for each of our products, such as plant.id or insect.id

There are two options for authentication:

1. The easiest way is to include the Api-Key header with your api_key by setting the Api-Key key in the JSON header.

Output example:

headers = {
    "Content-Type": "application/json",
    "Api-Key": "123abc",
    }

response = requests.get("https://api.plant.id/v3/usage_info", headers=headers)

2. Another way is via basic authentication. Use the following credentials:

  • username: "client"
  • password: YOUR_API_KEY

Output example:

response = requests.get("https://api.plant.id/v3/usage_info", auth=("client", "123abc"))


For alternative authentication methods to improve security, read our FAQ.

Retrieve identification

The identification result is available for 6 months and can be obtained using the Retrieve identification endpoint (plant.id example). It can also be used to get results in different languages or with different identification details. 

You can use the custom_id parameter or the access_token of the response to retrieve the identification results.

Description

The response of the description attribute contains a dictionary with the description of the plants, plant diseases, insects, or mushrooms. The source is either Wikipedia (plant.id, insect.id, mushroom.id and crop.health (wiki_description), with the response including source URL, license name and license URL, and/or our own text compiling different sources (plant.health, crop.health (description)). The description is returned in the language specified in the language GET parameter if available. For example, English descriptions in plant.id are available for 30,000+ classes.

Please be sure to include the licence information if you are using the description.

Scientific and common names

The API results provide three types of records related to name records for a single class of taxa (basic unit in the taxonomy hierarchy).

  • id is a unique identifier for the class. It doesn't change over time. Therefore, you can use it as a key to link other in-app content.
  • name is a string that identifies the result of the identification. It is a scientific (Latin) name. Example: "Taraxacum officinale". This string reflects the current taxonomic consensus and is subject to change as research advances.
  • "details": ["common_names"]lists non-scientific (common or vernacular) names, specific to different languages. The language can be specified in the language parameter. Multiple common names may exist for a single language.
  • Output example for a single language:
"common_names": ["Common dandelion", "Dandelion"]
  • Output example for multiple languages:
"common_names": {
    "en": ["Common dandelion", "Dandelion"],
    "cs": ["smetánka lékařská"]
}
Synonyms

The attribute synonyms lists alternative scientific names for the accepted name, if there are any. These names are usually obsolete due to changes in nomenclature. See the explanation on Wikipedia.

Taxonomy

The response includes a dictionary of taxon classification within higher taxonomic ranks. For plant.health, a similar parameter classification is used.

Output example:

"taxonomy": {
    "kingdom": "Plantae",
    "phylum": "Tracheophyta",
    "class": "Magnoliopsida",
    "order": "Asterales",
    "family": "Asteraceae",
    "genus": "Taraxacum"
}
URL

The response contains a string with the link to the plant profile page (usually Wikipedia). 

Output example for a single language:

"url": "http://en.wikipedia.org/wiki/Taraxacum_officinale"
Rank

The response contains string with taxonomic rank (such as species, genus, …). 
Input in the request: rank

Output example:

 "rank": "species"
GBIF id

The response contains the id of the species used at GBIF. You can use it to get more information about the plant from the GBIF Species API.

Output example:

"gbif_id": "5394163"
iNaturalist id

The response contains the id of the taxon used in iNaturalist database.

Output example:

Output example:  "inaturalist_id": 61749
Representative images

You can use image or images to get one or more images in the response. The main source is Wikipedia, but other sources such as iNaturalist are also included.

Please be sure to include the licence information if you are using the image(s). See plant.id example.

Serves as input for the associated Detail endpoint. Available for plant.id, insect.id and mushroom.id. Enables searching our knowledge base using scientific (Latin) names (including synonyms) or common names. It is designed for dynamic name suggestions when typing the name in an app. It is free to use. See blogpost for more information.

Detail

The input is the result of the associated Search endpoint. Available for plant.id, insect.id and mushroom.id. It enables getting related information. The cost is 0.5 credits per call. See blogpost for more information.

plant.id

Name authority

Scientific name including the author(s) who first published the name. The way it is written slightly differs for plants and animals, read more at Wikipedia.

Edible and medicinal parts

⚠️ We are not liable for damages or injury caused by actions based on inaccurate, misleading, incomplete or wrong responses to client requests - whether it be a misidentification of species or a misattribution of attributes of a proposed class. For example, it could be poisoning by a fungus based on a misidentified species or its poisonousness, damage to a plant by a recommended phytosanitary intervention, injury caused by careless handling of an animal, etc. (from Kindise T&C)

The response contains a list of edible and medicinal parts of the plant. The data were obtained from the Plants for a Future database. Please be aware that some data may be inaccurate. Also, the edibility of different plants may vary depending on the quantity, type of preparation (e.g. cooking) or stage of the plant.

Output example:

"edible_parts": ["fruit", "leaves"]


Possible values: bulb, flowers, frond, fruit, gum, leaves, lichen, mushroom, nectar, nuts, seaweed, seeds, shoots, stems, tubers

Propagation methods

The response contains a list of suitable propagation methods for a specific plant. The source for this data is the Food Plants International database.

Possible values:

  • cuttings - A piece of the stem or root is cut off with clean scissors or a knife and placed in water or a suitable medium (e.g. soil). The cutting will later produce new roots or stems and can be planted in soil. Example: Azalea, Ficus, Hibiscus, Tradescantia
  • division - The whole plant is divided into two or more parts and potted. This method is typically used in gardening and horticulture. Example: Asters, Chlorophytum, garlic, chives, Nephrolepis exaltata.
  • grafting - Parts from different plants are joined together. After the point of joining heals, the plant grows as one plant. Grafting is usually done during winter and early spring. Example: apple, rose, citrus, pear.
  • seeds - Most plants can be grown from seeds using various sewing methods. Usually, seeds (purchased or gathered from the plant) are sewn directly into a medium (e.g. soil). (Example: Ficus, chamomile, rose)
  • spores - Ferns, and Mosses but also Fungi produce spores (unlike flowering plants producing seeds), which can be used for propagation. Spores (gathered or purchased) are sewn into medium (e.g. soil or compost). Example: ferns such as Nephrolepis exaltata or Dicksonia antarctica.
  • suckers - Some plants produce new shoots or suckers from their roots. These shoots can be removed with roots and potted. Example: blackberries, strawberries, lilac.

Watering

The response contains two values - min and max, which represent the range on the following scale of how wet the environment the plant prefers.

  • 1 … dry
  • 2 … medium
  • 3 … wet

These numeric values can be represented with text (e.g. min: 1, max: 2 → dry to medium) or with water symbols (e.g. min: 2, max: 3 → 💧💧–💧💧💧)

If the information for a given species is not available, the value of the watering key is None.

Output example:

"watering": {
        "min": 1,
        "max": 2
    }

plant.health

Disease details

The response to an identification request includes additional information about plant diseases. To specify the details you want, include the corresponding strings in the details parameter of your request.

The default language is English, but we support multiple languages which can be specified using the language or languages parameters. The supported languages are as follows: The default language is English but the supported languages are: English - en, German - de, Czech - cs, Spanish - es, French - fr, Italian - it, Dutch - nl", Polish - pl, Swedish - sv, Chinese - zh, Danish - da, Turkish - tr, Hindu - hi, Arabic - ar, Portuguese - pt, Korean - ko. If you require another language, let us know at support@kindwise.com.

The available disease details are listed below.

Cause

A string containing the scientific name of the cause. For example, the cause for the class “late blight” is “Phytophthora infestans”, a species of oomycetes. This parameter is also applicable for pests known by common names, such as the class “aphids”; in this case, the “cause” would be “Aphididae”, a family of insects. However, not all classes contain this parameter, for example “water deficiency”.

Output example for late blight:

"cause": "Phytophthora infestans"
Common names

A list of strings containing common names of the disease. It also includes other names for the disease, such as drought for the water deficiency class.

Output example for Insecta:

"common_names": ["insects"]
Classification

A list of strings with parent classes in the class hierarchy. sorted from the most general taxonomical ranks to the most specific.

Output example for the whiteflies:

"classification": ["Animalia", "Insecta", "Hemiptera", "Sternorrhyncha"]
Local name

A string with a localized name. The default is English. This parameter is typically used for other languages

Output example for water deficiency class in German:

"Local_name": "unzureichende Bewässerung"
Treatment

A JSON-structured result containing biological and chemical treatments, and prevention for each suggested class. This information is not AI-generated, but has been carefully synthesized by a phytosanitary expert.

Biological and chemical treatments are available for a limited number of diseases but prevention information is always available.

Output example:

"treatment":{
    "biological":[
         "If possible ...",
         "Apply ecological..."
         ],
     "chemical":[
         "If necessary, apply..."
         ],
     "prevention":[
         "Use resistant species...",
         "Avoid...",
         "Improve...",
         "Avoid prolonged wetting...",
         "Rotate crops...",
         "Disinfect the tools and..."
     ]
},

insect.id

The response to an identification request includes additional information about the insect. To specify the details you want, include the corresponding strings in the details parameter of your request.

The default language is English, but we support multiple languages which can be specified using the language or languages parameters. 

The available disease details are listed below.

Red list

The response contains the taxon status according to the IUCN Red list

Input in the request: red_list

Output example:

"red_list": NEAR_THREATENED
Danger

The response contains ways in which the taxon is dangerous. It is available for the most common taxa. 

Input in the request: danger

Output example:

"danger": ['mildly venomous', 'allergenic', 'bites pets', 'bites or stings']

mushroom.id

Details

The response to an identification request includes additional information about the genus or species. To specify the details you want, include the corresponding strings in the details parameter of your request.

The default language is English, but we support multiple languages which can be specified using the language or languages parameters. 

The available disease details are listed below.

Edibility

A short string suggesting the edibility status of the mushroom. Possible values are:

  • choice: highly regarded for its edibility and widely used in cooking
  • edible: safe to eat
  • edible when cooked: only edible when cooked
  • caution: there are warnings regarding the mushroom’s edibility, such as stomach irritations or easy confusion with poisonous mushroom species
  • medicinal: valued for its medicinal properties
  • inedible: not considered edible
  • poisonous: toxic and should not be eaten
  • deadly: can cause fatal poisoning

String in the request: edibility

Output example:

"edibility": "choice",
Psychoactivity

The psychoactive parameter indicates that the mushroom can alter mental processes, behaviour or perception by interacting with the central nervous system. Source is Wikidata.

Characteristics

Detailed information for the following mushroom morphological characteristics:

hymenium attachment
hymenium type
mushroom cap shape
mushroom ecological type
spore print color
stipe character

Available for selected mushrooms. The source is primarily Wikidata.

Output example:

"characteristic": {
                            "hymenium type": "pores",
                            "stipe character": "bare stipe",
                            "spore print color": "brown",
                            "mushroom cap shape": "convex mushroom cap",
                            "hymenium attachment": "adnate hymenium attachment",
                            "mushroom ecological type": "mycorrhiza"
                        }
Look alike

List of mushrooms that are often confused with the suggested mushroom.

Output example:

"look_alike": [
                            {
                                "url": "https://en.wikipedia.org/wiki/Tylopilus_felleus",
                                "entity_id": "890a4718415a46dc",
                                "name": "Tylopilus felleus"
                            },
                            {
                                "url": "https://en.wikipedia.org/wiki/Boletus_reticulatus",
                                "entity_id": "05e03d65448cc6d4",
                                "name": "Boletus reticulatus"
                            },
                            {
                                "url": "https://en.wikipedia.org/wiki/Imleria_badia",
                                "entity_id": "267b8dbf53a57b55",
                                "name": "Imleria badia"
                            },
                            {
                                "url": "https://en.wikipedia.org/wiki/Boletus_regineus",
                                "entity_id": "9a3dc8add32d55e3",
                                "name": "Boletus regineus"
                            }

crop.health

Details are available separately for plant crops and diseases. Crop details include GBIF ID of the plant and representative images; disease details include:

Type

Returns the high-level taxonomic classification. This is the same information as the highest rank in the taxonomy parameter.

The response to an identification request includes additional information about the genus or species. To specify the details you want, include the corresponding strings in the details parameter of your request.

The default language is English, but we support multiple languages which can be specified using the language or languages parameters. 

EPPO code

Matching profile page in the European and Mediterranean Plant Protection Organization (EPPO) database.

Output example:

"eppo_code": "PHYTIN"
EPPO regulation status

Many of the pests and diseases are considered hazardous. This parameter lists countries where a particular disease is regulated, according to the EPPO database.

Output example:

"eppo_regulation_status": {
                            "Chile": "A1 list",
                            "Guinea": "Regulated non-quarantine pest",
                            "Mexico": "Quarantine pest",
                            "Bahrain": "A2 list"
                        }
By clicking “Accept All Cookies”, you agree to the storing of cookies on your device to enhance site navigation, analyze site usage, and assist in our marketing efforts. View our Privacy Policy for more information.