Working with Seeds π±
Overview
The Seeds domain provides a comprehensive system for managing commercial seeds, their registrations, parameters, and associated product information. This domain enables organizations to track seed products, their characteristics, SKUs (stock keeping units), regulatory registrations, and agronomic parameters across different locations and markets.
Seeds can be canon (global, shared across all organizations) or custom (organization-specific). Canon seeds have no org_id and are available to all organizations, while custom seeds are associated with a specific org_id and are only visible to that organization.
Cardinality summary
- Seed β 1 Localized Crop (crop-location association)
- Seed β 0..1 Organization (defines canon vs custom scope)
- Seed β 0..* SKUs (product variants and packaging)
- Seed β 0..* External IDs (integration with external systems)
- Seed β 0..* Registrations (regulatory approvals)
- Seed β 0..* Parameters (agronomic characteristics)
Seed
βββ Localized Crop (1)
βββ Organization (0..1)
βββ SKUs (0..*)
βββ External IDs (0..*)
βββ Registrations (0..*)
βββ Seed Parameters (0..*)
Key Concepts
| Concept | Description |
|---|---|
| Seed | Commercial seed product with specific characteristics and brand information |
| Commercial Name | Marketing or trade name of the seed product |
| Localized Crop | Association with specific crop and geographic location |
| SKU (Stock Keeping Unit) | Product variant with packaging and measurement details |
| Seed Registration | Regulatory approval for Seed in specific markets |
| Seed Parameter | Agronomic or phenotypic characteristic (e.g., maturity group, disease resistance) |
| External ID | Identifier from external systems for integration purposes |
| Source | Data source or system of origin for seed information |
API Documentation
For complete API reference including request/response schemas, authentication, and interactive testing, visit:
π Seeds API Documentation - Interactive API documentation with request/response examples
Available Endpoints
| Method | Endpoint | Description |
|---|---|---|
| POST | /v2/catalog/seeds | Create a new seed variety with SKUs, registrations, and parameters |
| GET | /v2/catalog/seeds | List all seed varieties with pagination and filters (org_id, source, country, only_canon) |
| GET | /v2/catalog/seeds/{id} | Get a specific seed variety by UUID with optional filters and full details |
| PUT | /v2/catalog/seeds/{id} | Update an existing seed variety including SKUs, registrations, and parameters |
| DELETE | /v2/catalog/seeds/{id} | Soft delete a seed variety by UUID |
| POST | /v2/catalog/seeds/query | Advanced search for seeds by parameters with filtering and pagination |
Business Rules
Canon vs Custom Seeds
Seeds can be created with different visibility scopes:
Canon Seeds (Global)
- No
org_idspecified - Available to all organizations
- Typically represent widely-known commercial varieties
- Cannot be modified or deleted by individual organizations
- Ideal for standardized seed catalogs
Custom Seeds (Organization-Specific)
org_idspecified- Visible only to the associated organization
- Can be modified and deleted by the organization
- Ideal for proprietary varieties or organization-specific catalog entries
Commercial Name Uniqueness
Each Seed must have a unique commercial name within the same localized crop
Localized Crop Association
Seeds must be associated with a valid localized crop (crop-location combination)
SKU Limits
- Maximum 100 SKUs per Seed
- Each SKU must have a valid
unit_of_measurement
External ID Rules
- Maximum 100 external IDs per Seed
- Used for integrating with external systems
Error Codes
Seed Errors
| Code | Message | HTTP Status | When Triggered |
|---|---|---|---|
| ECSE001 | Seed with id {id} does not exist | 404 NOT_FOUND | Requested Seed ID not found during GET, UPDATE, or DELETE operations |
| ECSE002 | A seed with the name: {seedName} was already created for this localized crop | 400 BAD_REQUEST | Attempting to create or update seed with duplicate commercial name for same localized crop |
Seed Registration Errors
| Code | Message | HTTP Status | When Triggered |
|---|---|---|---|
| ECSR001 | Seed Registration with registration number {id} does not exist | 404 NOT_FOUND | Requested seed registration not found during GET, UPDATE, or DELETE operations |
Seed Parameter Errors
| Code | Message | HTTP Status | When Triggered |
|---|---|---|---|
| ECSP001 | Seed parameter with id {id} does not exist | 404 NOT_FOUND | Requested seed parameter ID not found during GET, UPDATE, or DELETE operations |
| ECSP002 | Some Seed Parameters Ids do not exist | 404 NOT_FOUND | One or more seed parameter IDs in a batch operation don't exist |
Typical Workflows
Basic Seed Management
- Create Seed - Register new commercial seed products with brand and localized crop information
- Update Seed - Modify seed properties like commercial name, brand, or positioning description
- Retrieve Seed - Get seed details with optional full information (registrations, parameters)
- List Seeds - Query seeds by organization, location, crop, source, or other filters
- Delete Seed - Soft delete seeds no longer available in the market
Search and Filtering
- Location-Based Search - Find seeds available in specific countries
- Crop Association - Filter seeds by crop type through localized crop relationship
- Organization Filtering - Query seeds by organization for multi-tenant scenarios
- Source Filtering - Filter by data source or system of origin
- Parameter-Based Search - Find seeds matching specific parameter criteria
Next Steps
After creating your seeds, you can: