Discover/CABI API
live

CABI APIcabi.org

Search and retrieve plant disease datasheet metadata from the CABI Digital Library Compendium, including titles, DOIs, and abstracts via 2 endpoints.

Endpoint health
verified 4d ago
get_disease_details
search_diseases
2/2 passing latest checkself-healing
Endpoints
2
Updated
26d ago

What is the CABI API?

The CABI Plant Disease API provides access to plant disease datasheet data from the CABI Digital Library Compendium across 2 endpoints. Use search_diseases to find datasheets by keyword — returning titles, URLs, and datasheet IDs — then pass a result URL to get_disease_details to retrieve the DOI, abstract description, and available reference citations for that specific disease record.

Try it
Search term for plant diseases (e.g. 'late blight', 'Phytophthora')
api.parse.bot/scraper/f64c9998-0222-4b89-a53c-c3579ec02423/<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/f64c9998-0222-4b89-a53c-c3579ec02423/search_diseases?query=late+blight' \
  -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 cabi-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: CABI Compendium SDK — search diseases and fetch details."""
from parse_apis.cabi_compendium_api import CABI, DiseaseNotFound

client = CABI()

# Search for plant diseases — limit= caps total items fetched.
for disease in client.searchresults.search(query="Phytophthora", limit=5):
    print(disease.title, disease.url)

# Drill into the first result for full metadata.
first = client.searchresults.search(query="powdery mildew", limit=1).first()
if first:
    detail = first.details()
    print(detail.title, detail.doi, detail.description)

# Typed error handling for a bad URL.
try:
    bad = Disease(_api=client, id="cabicompendium.0000000", title="", url="https://www.cabidigitallibrary.org/doi/10.1079/cabicompendium.0000000")
    bad.details()
except DiseaseNotFound as exc:
    print(f"Not found: {exc.url}")

print("exercised: searchresults.search / disease.details / DiseaseNotFound")
All endpoints · 2 totalmissing one? ·

Full-text search across the CABI Compendium for plant disease datasheets. Returns up to 20 results per query, each carrying a title, URL, and compendium ID. Results are ordered by relevance. No pagination beyond the first page is supported.

Input
ParamTypeDescription
queryrequiredstringSearch term for plant diseases (e.g. 'late blight', 'Phytophthora')
Response
{
  "type": "object",
  "fields": {
    "query": "the search term that was used",
    "results": "array of matching datasheets, each with title, url, and id"
  },
  "sample": {
    "data": {
      "query": "late blight",
      "results": [
        {
          "id": "cabicompendium.40970",
          "url": "https://www.cabidigitallibrary.org/doi/10.1079/cabicompendium.40970",
          "title": "Phytophthora infestans (Phytophthora blight )"
        },
        {
          "id": "cabicompendium.4528",
          "url": "https://www.cabidigitallibrary.org/doi/10.1079/cabicompendium.4528",
          "title": "Alternaria solani (early blight of potato and tomato)"
        }
      ]
    },
    "status": "success"
  }
}

About the CABI API

What the API Returns

The API covers plant disease datasheet records from the CABI Digital Library Compendium. The search_diseases endpoint accepts a query string (for example, 'late blight' or 'Phytophthora') and returns up to 20 matching results, each containing the datasheet title, its url, and a datasheet id. This is the standard entry point for discovery when you know a disease name, pathogen genus, or symptom term.

Datasheet Detail Retrieval

Once you have a datasheet URL from search results, pass it to get_disease_details to retrieve publicly available metadata for that record. The response includes the datasheet title (common and scientific name), the doi link, a description field containing the abstract that summarizes topics covered, and a references array of citation strings. The references array may be empty when that data is not publicly loaded for a given record.

Access Limitations

CABI's Compendium datasheets are partly paywalled. Full datasheet content — including host plant lists, geographic distribution tables, control measures, and detailed symptom descriptions — requires institutional subscription access and is not returned by this API. The get_disease_details endpoint exposes only the publicly available metadata layer: title, DOI, and abstract. This makes the API suitable for indexing, linking, and screening datasheets, but not for extracting full agronomic detail.

Reliability & maintenanceVerified

The CABI API is a managed, monitored endpoint for cabi.org — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when cabi.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 cabi.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
4d 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
  • Building a plant pathology reference index by collecting datasheet titles, DOIs, and abstracts for a library catalog
  • Screening search results for a specific pathogen genus using the query parameter in search_diseases
  • Generating citation-ready DOI links for plant disease records in research tooling
  • Populating a disease lookup tool with CABI datasheet URLs to direct agronomists to canonical records
  • Cross-referencing CABI datasheet IDs with internal crop protection databases
  • Alerting systems that check whether a newly reported disease name exists in the CABI Compendium
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 CABI offer an official developer API for the Digital Library?+
CABI does not publish a general-purpose public developer API for the Compendium at this time. Institutional subscribers can access content through the CABI Digital Library platform at cabidigitallibrary.org, but there is no documented open REST API for programmatic access.
What does `get_disease_details` actually return, and what is excluded?+
It returns the publicly available metadata for a datasheet: title, doi, url, description (the abstract), and a references array. It does not return host plant lists, distribution maps, symptom details, control measures, or other content gated behind institutional access. Those sections are available only to subscribers on the CABI Digital Library site.
Can I retrieve more than 20 search results per query?+
search_diseases returns up to 20 results per call and does not currently expose pagination parameters. You can fork this API on Parse and revise it to add offset or page-number support if your use case requires deeper result sets.
Does the API cover fungal pathogens, bacteria, viruses, and nematodes, or only certain disease types?+
The query parameter in search_diseases searches across all disease types indexed in the CABI Compendium, so fungal, bacterial, viral, and nematode-related datasheets can appear in results. However, the API does not expose a filter parameter for pathogen type or host crop — all filtering must be done against the returned title field in your own application. You can fork the API on Parse and revise it to add a pathogen-type or crop filter endpoint.
Are the references returned in `get_disease_details` always populated?+
No. The references array may be empty for a given datasheet if that citation data is not part of the publicly accessible portion of the record. Availability varies by datasheet.
Page content last updated . Spec covers 2 endpoints from cabi.org.
Related APIs in HealthcareSee all →
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.
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.
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.
altibbi.com API
Search and browse comprehensive medicine and disease information from Altibbi's medical encyclopedia using commercial or scientific names. Get detailed profiles including dosage, uses, side effects, and disease descriptions to support healthcare decisions and medical research.
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.
dermnetnz.org API
Search a comprehensive database of dermatological conditions to get detailed information including symptoms, causes, treatments, and extensive photo galleries for diagnosis and reference. Explore hair and scalp conditions or any other skin concern with structured medical descriptions and visual examples.
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.
ncvbdc.mohfw.gov.in API
Track real-time surveillance data on malaria, dengue, chikungunya, kalaazar, and Japanese encephalitis cases across India, along with disease reports, clinical guidelines, and official announcements from India's National Center for Vector Borne Diseases Control. Access annual disease reports, latest news updates, and recruitment information all in one place.