Handbook
Your guide to leveraging kindwise API features.
For product-specific questions, visit FAQs on the product pages on the following links.
General tips
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.
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.
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.
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á"]
}
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.
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"
}
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"
The response contains string with taxonomic rank (such as species, genus, …).
Input in the request: rank
Output example:
"rank": "species"
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"
The response contains the id of the taxon used in iNaturalist database.
Output example:
Output example: "inaturalist_id": 61749
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.
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
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.
⚠️ 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
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, Tradescantiadivision
- 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.
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
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.
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"
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"]
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"]
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"
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.
The response contains the taxon status according to the IUCN Red list.
Input in the request: red_list
Output example:
"red_list": NEAR_THREATENED
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
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.
A short string suggesting the edibility status of the mushroom. Possible values are:
choice
: highly regarded for its edibility and widely used in cookingedible
: safe to eatedible when cooked
: only edible when cookedcaution
: there are warnings regarding the mushroom’s edibility, such as stomach irritations or easy confusion with poisonous mushroom speciesmedicinal
: valued for its medicinal propertiesinedible
: not considered ediblepoisonous
: toxic and should not be eatendeadly
: can cause fatal poisoning
String in the request: edibility
Output example:
"edibility": "choice",
The psychoactive parameter indicates that the mushroom can alter mental processes, behaviour or perception by interacting with the central nervous system. Source is Wikidata.
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"
}
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:
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.
Matching profile page in the European and Mediterranean Plant Protection Organization (EPPO) database.
Output example:
"eppo_code": "PHYTIN"
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"
}