https://api.covercrop-ncalc.org/
(also available at https://developapi.covercrop-ncalc.org/ for testing)
GET /surfaceThe endpoint returns nitrogen mineralization estimates based on weather, soil, and crop traits.
| Parameter | Type | Units | Required | Description | Model |
|---|---|---|---|---|---|
| lat | number | degrees | ✅ | Latitude | both |
| lon | number | degrees | ✅ | Longitude | both |
| start | string | YYYY-MM-DD | ✅ | Start (planting) date | both |
| end | string | YYYY-MM-DD | ❌ | Termination date. Defaults to start + 90 days | both |
| n | number | % | ✅ | N concentration in cover crop | both |
| biomass | number | kg/ha | ✅ | Dry biomass at termination | both |
| lwc | number | g water/ g dry biomass | ❌ | Leaf water content (default: 4) | surface |
| carb | number | % | ❌ | Carbohydrate content (default: 24.7 + 10.5 * n) | both |
| cell | number | % | ❌ | Holocellulose (default: 69 - 10.2 * n) | both |
| lign | number | % | ❌ | Lignin (default: 100 - (carb + cell)) | both |
| om | number | % | ❌ | Organic matter (from SSURGO if omitted) | both |
| bd | number | g/cm³ | ❌ | Bulk density (from SSURGO if omitted) | both |
| in | number | ppm | ❌ | Inorganic N in soil (default: 10) | both |
| pmn | number | mg N/kg | ❌ | Potentially mineralizable N (default: 7) | both |
Default: JSON
To get CSV, add &output=csv to your request.
site=Field_A) — they will be echoed back in the output.Use the query string stream=true to enable streaming output for large batch queries (only available on POST requests).
This can help overcome Cloudflare's ~20s timeout due to lack of output activity. However, it will not bypass Cloudflare’s total timeout limit of 100 seconds.
To avoid timeouts, you can:
Single Site
{
"start": "2023-10-01",
"end": "2024-04-15",
"lat": 35.9,
"lon": -83.95,
"summary": true,
"stream": true,
"n": [2.6],
"biomass": [3000],
"carb": [50],
"cell": [45],
"lign": [5],
"site": ["TN_101"]
}
Multiple Sites
{
"start": "2023-10-01",
"end": "2024-04-15",
"lat": 35.9,
"lon": -83.95,
"summary": true,
"stream": true,
"site": ["TN_101", "TN_102"],
"n": [2.6, 3.1],
"biomass": [3000, 1800],
"carb": [50, 60],
"cell": [45, 35.5],
"lign": [5, 4.5]
}