> ## Documentation Index
> Fetch the complete documentation index at: https://api.superseeded.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Taxonomic Sources

> Returns metadata about all 12 taxonomic data sources used by the species validation system, including authority weights and cache durations. No authentication required.

List all available taxonomic data sources used by the species validation system, including their authority weights and cache durations.

## Overview

This endpoint returns metadata about the 12 taxonomic sources used by the `/v1/verify/plant-names` endpoint. Use it to understand which databases are queried, their relative authority in the consensus algorithm, and how long results are cached.

## Request

```bash theme={"theme":"github-dark"}
curl https://api.superseeded.ai/v1/sources/taxonomic
```

No authentication or request body required.

## Response

<ResponseField name="sources" type="object[]">
  Array of source metadata objects.

  <Expandable title="Source Object">
    <ResponseField name="id" type="string">
      Source identifier used in the `sources` filter parameter of `/v1/verify/plant-names`.
    </ResponseField>

    <ResponseField name="name" type="string">
      Human-readable source name.
    </ResponseField>

    <ResponseField name="description" type="string">
      Brief description of the source.
    </ResponseField>

    <ResponseField name="authority_weight" type="number">
      Weight (0.0-1.0) used in the consensus scoring algorithm. Higher values indicate more authoritative sources.
    </ResponseField>

    <ResponseField name="cache_ttl_hours" type="integer">
      How long results from this source are cached, in hours.
    </ResponseField>

    <ResponseField name="fallback_only" type="boolean">
      If `true`, this source is only queried when all other sources return no match. Only applies to Gemini AI.
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="total" type="integer">
  Total number of available sources.
</ResponseField>

## Example Response

```json theme={"theme":"github-dark"}
{
  "sources": [
    {
      "id": "tnrs",
      "name": "Taxonomic Name Resolution Service (WFO)",
      "description": "World Flora Online taxonomic authority",
      "authority_weight": 1.0,
      "cache_ttl_hours": 720
    },
    {
      "id": "powo",
      "name": "Plants of the World Online",
      "description": "Royal Botanic Gardens, Kew",
      "authority_weight": 0.95,
      "cache_ttl_hours": 72
    },
    {
      "id": "gbif",
      "name": "Global Biodiversity Information Facility",
      "description": "Largest biodiversity database",
      "authority_weight": 0.85,
      "cache_ttl_hours": 24
    },
    {
      "id": "ala",
      "name": "Atlas of Living Australia",
      "description": "Australian biodiversity data",
      "authority_weight": 0.8,
      "cache_ttl_hours": 72
    },
    {
      "id": "inaturalist",
      "name": "iNaturalist",
      "description": "Community science observations",
      "authority_weight": 0.7,
      "cache_ttl_hours": 48
    },
    {
      "id": "ip_australia",
      "name": "IP Australia Plant Breeders Rights",
      "description": "Australian plant variety protection",
      "authority_weight": 0.75,
      "cache_ttl_hours": 168
    },
    {
      "id": "upov",
      "name": "UPOV Plant Variety Database",
      "description": "International plant variety protection",
      "authority_weight": 0.75,
      "cache_ttl_hours": 168
    },
    {
      "id": "eol",
      "name": "Encyclopedia of Life",
      "description": "Comprehensive species information",
      "authority_weight": 0.6,
      "cache_ttl_hours": 72
    },
    {
      "id": "wikidata",
      "name": "Wikidata",
      "description": "Structured knowledge base",
      "authority_weight": 0.65,
      "cache_ttl_hours": 168
    },
    {
      "id": "wikispecies",
      "name": "WikiSpecies",
      "description": "Wikimedia species directory",
      "authority_weight": 0.6,
      "cache_ttl_hours": 168
    },
    {
      "id": "wikipedia",
      "name": "Wikipedia",
      "description": "General encyclopedia",
      "authority_weight": 0.55,
      "cache_ttl_hours": 168
    },
    {
      "id": "gemini",
      "name": "Google Gemini AI",
      "description": "AI-powered fallback for unresolvable names (requires API key)",
      "authority_weight": 0.5,
      "cache_ttl_hours": 240,
      "fallback_only": true
    }
  ],
  "total": 12
}
```

## Source Authority Weights

Sources are ranked by authority in the consensus algorithm:

| Source       | Weight | Role                    |
| ------------ | ------ | ----------------------- |
| TNRS (WFO)   | 1.00   | Taxonomic authority     |
| POWO (Kew)   | 0.95   | Botanical authority     |
| GBIF         | 0.85   | Biodiversity database   |
| ALA          | 0.80   | Regional authority (AU) |
| IP Australia | 0.75   | Cultivar authority      |
| UPOV         | 0.75   | Variety authority       |
| iNaturalist  | 0.70   | Observations            |
| Wikidata     | 0.65   | Structured data         |
| WikiSpecies  | 0.60   | Species directory       |
| EOL          | 0.60   | Encyclopedia            |
| Wikipedia    | 0.55   | General reference       |
| Gemini AI    | 0.50   | AI fallback (only)      |

## Cache Strategy

Each source has a cache TTL tuned to its update frequency:

* **24 hours**: GBIF (observation data updates frequently)
* **48 hours**: iNaturalist (observation counts change regularly)
* **72 hours**: POWO, ALA, EOL (taxonomy relatively stable)
* **7 days**: IP Australia, UPOV, WikiSpecies, Wikidata, Wikipedia (data changes infrequently)
* **10 days**: Gemini AI (AI-generated data, stable period)
* **30 days**: TNRS/WFO (authoritative taxonomy, changes rarely)


## OpenAPI

````yaml GET /sources/taxonomic
openapi: 3.1.0
info:
  title: Superseeded API
  description: >-
    Modern nursery industry API for reconciling plant specifications, resolving
    equivalence and assessing logistical risks for plant stock.
  version: 1.0.0
  license:
    name: MIT
  contact:
    name: Superseeded Support
servers:
  - url: https://api.superseeded.ai/v1
    description: Production Server
security: []
tags:
  - name: Resolvers
    description: Endpoints for cleaning, normalizing, and interpreting messy nursery data.
  - name: Validation
    description: >-
      Endpoints for validating botanical species names against taxonomic
      databases.
  - name: Flowers
    description: >-
      Search flowers by color using spectral reflectance data from the Floral
      Reflectance Database (FReD).
  - name: System
    description: Health checks and service status.
  - name: Images
    description: Resolve public catalog image URLs for storefront and product integrations.
paths:
  /sources/taxonomic:
    get:
      tags:
        - Validation
      summary: List Taxonomic Sources
      description: >-
        Returns metadata about all 12 taxonomic data sources used by the species
        validation system, including authority weights and cache durations. No
        authentication required.
      operationId: listTaxonomicSources
      responses:
        '200':
          description: List of taxonomic sources
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TaxonomicSourcesResponse'
components:
  schemas:
    TaxonomicSourcesResponse:
      type: object
      properties:
        sources:
          type: array
          items:
            $ref: '#/components/schemas/TaxonomicSource'
        total:
          type: integer
          description: Total number of available sources
      example:
        sources:
          - id: tnrs
            name: Taxonomic Name Resolution Service (WFO)
            description: World Flora Online taxonomic authority
            authority_weight: 1
            cache_ttl_hours: 720
        total: 12
    TaxonomicSource:
      type: object
      properties:
        id:
          type: string
          description: Source identifier
        name:
          type: string
          description: Human-readable source name
        description:
          type: string
          description: Brief description of the source
        authority_weight:
          type: number
          minimum: 0
          maximum: 1
          description: Weight in consensus algorithm
        cache_ttl_hours:
          type: integer
          description: Cache duration in hours
        fallback_only:
          type: boolean
          description: >-
            If true, only used when all other sources return no match (Gemini AI
            only)

````