{"openapi":"3.1.0","info":{"title":"Garden Calculators","version":"1.0.0","description":"Garden math for agents: growing degree days, plant spacing, bed soil, drip irrigation, fertilizer, compost balance, frost risk and planting dates. One call, one computed answer, no accounts or API keys. Machine-payable over x402.","x-guidance":"Garden Calculators: Garden math for agents: growing degree days, plant spacing and seeds, bed soil, drip irrigation, fertilizer rates, compost balance, frost risk and planting dates. Use /growing-degree-days to total heat units from daily temperatures, /plant-spacing for plant counts and seed quantity, /soil-volume for raised bed soil in cubic feet, yards, litres and bags, /drip-irrigation for emitter flow, supply limits and run time, /fertilizer-rate for how much product delivers a nitrogen target, /compost-cn-ratio for the carbon to nitrogen ratio of a compost mix or the browns-to-greens balance, /frost-risk for the frost or freeze class of a forecast low against a plant's hardiness and the calendar, and /planting-dates for dates counted from the last frost. Each paid GET returns a computed verdict with the reasons, the source and what was NOT checked. A verdict of UNVERIFIED means a lookup failed: treat it as unknown. No account or key: pay per call in USDC over x402."},"servers":[{"url":"https://garden-calc.x402tookit.com"}],"paths":{"/compost-cn-ratio":{"get":{"operationId":"compost_cn_ratio","summary":"Carbon-to-nitrogen ratio of a compost mix by the Cornell formula, or the greens-to-browns amounts that reach a target ratio.","description":"Carbon-to-nitrogen ratio of a compost mix by the Cornell formula, or the greens-to-browns amounts that reach a target ratio.","tags":["garden","compost","carbon-nitrogen","soil","calculator"],"parameters":[{"name":"ingredients","in":"query","required":false,"description":"Mix mode: lines name:mass[:moisturePercent[:cn[:nitrogenPercent]]] separated by semicolons, for example 'grass clippings:10:80; leaves:6:30'. Names in the table need no C:N; moisture defaults to 50","schema":{"type":"string"}},{"name":"green","in":"query","required":false,"description":"Balance mode: a nitrogen-rich ingredient (grass clippings, food waste, cow manure, horse manure, digested sewage sludge) or any name with greenCn","schema":{"type":"string"}},{"name":"brown","in":"query","required":false,"description":"Balance mode: a carbon-rich ingredient (leaves, bark, paper, sawdust) or any name with brownCn","schema":{"type":"string"}},{"name":"greenCn","in":"query","required":false,"description":"C:N of the green if not in the table, 5 to 60","schema":{"type":"number"}},{"name":"brownCn","in":"query","required":false,"description":"C:N of the brown if not in the table, 30 to 1000","schema":{"type":"number"}},{"name":"targetCn","in":"query","required":false,"description":"Balance mode target C:N, 15 to 50 (default 30)","schema":{"type":"number"}}],"responses":{"200":{"description":"The answer.","content":{"application/json":{"schema":{"type":"object","properties":{"verdict":{"type":["null","string"]},"summary":{"type":["null","string"]},"reasons":{"type":["array","null"],"items":{"type":"string"}},"cnRatio":{"type":["null","number"]},"ratioText":{"type":["null","string"]},"targetRange":{"type":["null","string"]},"ingredients":{"type":["array","null"],"items":{"type":"object","properties":{"ingredient":{"type":["null","string"]},"asIsMass":{"type":["null","number"]},"moisturePercent":{"type":["null","number"]},"cn":{"type":["null","number"]},"carbonPercentDry":{"type":["null","number"]},"nitrogenPercentDry":{"type":["null","number"]},"dryMass":{"type":["null","number"]},"cnSource":{"type":["null","string"]}}}},"degraded":{"type":["boolean","null"]},"notChecked":{"type":["array","null"],"items":{"type":"string"}},"source":{"type":["null","string"]},"asOf":{"type":["null","string"]},"disclaimer":{"type":["null","string"]}}},"example":{"verdict":"WITHIN_COMMON_RANGE","summary":"The mix has a C:N ratio of 35.4:1 (within common range; about 25 to 30 is the usual start, below about 20 can smell of ammonia, above about 40 composts slowly).","reasons":["Cornell formula: R = sum(mass x carbon% x (100 - moisture)/100) / sum(mass x nitrogen% x (100 - moisture)/100).","Ingredients with only a C:N ratio use 45% carbon of dry mass."],"cnRatio":35.375,"ratioText":"35.4:1","targetRange":"about 25:1 to 30:1 at the start (Cornell: about 30:1)","ingredients":[{"ingredient":"grass clippings","asIsMass":10,"moisturePercent":80,"cn":19,"carbonPercentDry":45,"nitrogenPercentDry":2.368,"dryMass":2,"cnSource":"Cornell table (midpoint of range)"},{"ingredient":"leaves","asIsMass":6,"moisturePercent":30,"cn":60,"carbonPercentDry":45,"nitrogenPercentDry":0.75,"dryMass":4.2,"cnSource":"Cornell table (midpoint of range)"}],"degraded":false,"notChecked":["real ingredient values: C:N and moisture vary a lot between batches; get a lab figure or adjust by smell and temperature (too wet and smelly means more browns, slow and dry means more greens)","carbon that is not readily available (woody lignin) breaks down slowly, so effective C:N is higher for chips and sawdust than the table suggests","…2 more"],"source":"computed locally","asOf":"2026-10-11T20:20:02.207Z","disclaimer":"Screening signal computed from the named public source. Not financial, legal or investment advice; provided as is. Verify at the source before acting."}}}},"400":{"description":"A parameter was missing or out of range."},"402":{"description":"Payment Required"},"502":{"description":"The upstream source failed or timed out."}},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.0200"},"protocols":[{"x402":{"network":"eip155:8453","scheme":"exact","currency":"USDC","endpoint":"https://garden-calc.x402tookit.com/compost-cn-ratio"}},{"x402":{"network":"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp","scheme":"exact","currency":"USDC","endpoint":"https://garden-calc.x402tookit.com/compost-cn-ratio"}},{"x402":{"network":"eip155:137","scheme":"exact","currency":"USDC","endpoint":"https://garden-calc.x402tookit.com/compost-cn-ratio"}},{"x402":{"network":"eip155:42161","scheme":"exact","currency":"USDC","endpoint":"https://garden-calc.x402tookit.com/compost-cn-ratio"}}]}}},"/drip-irrigation":{"get":{"operationId":"drip_irrigation","summary":"Drip irrigation math: gallons for inches of water over an area, emitter flow, supply limit and run time per watering.","description":"Drip irrigation math: gallons for inches of water over an area, emitter flow, supply limit and run time per watering.","tags":["garden","irrigation","drip","water","calculator"],"parameters":[{"name":"areaSqFt","in":"query","required":true,"description":"Area to water in square feet, 1 to 1,000,000","schema":{"type":"number"}},{"name":"inchesPerWeek","in":"query","required":true,"description":"Water to apply per week in inches, 0.1 to 6 (about 1 inch a week is a common vegetable-garden target)","schema":{"type":"number"}},{"name":"emitterCount","in":"query","required":true,"description":"Number of emitters, 1 to 5000","schema":{"type":"integer"}},{"name":"emitterGph","in":"query","required":true,"description":"Flow of each emitter in gallons per hour, 0.1 to 60 (common drippers are 0.5, 1 and 2)","schema":{"type":"number"}},{"name":"wateringsPerWeek","in":"query","required":false,"description":"Waterings a week, 1 to 14 (default 3)","schema":{"type":"integer"}},{"name":"supplyGpm","in":"query","required":false,"description":"Measured flow of your faucet or zone in gallons per minute, to check the limit","schema":{"type":"number"}},{"name":"efficiencyPercent","in":"query","required":false,"description":"Share of the water that reaches the root zone, 50 to 100 (default 90 for drip)","schema":{"type":"number"}}],"responses":{"200":{"description":"The answer.","content":{"application/json":{"schema":{"type":"object","properties":{"verdict":{"type":["null","string"]},"summary":{"type":["null","string"]},"reasons":{"type":["array","null"],"items":{"type":"string"}},"weeklyWaterGallons":{"type":["null","number"]},"weeklyWaterGallonsAfterLosses":{"type":["null","number"]},"weeklyLitres":{"type":["null","number"]},"gallonsPerWatering":{"type":["null","number"]},"systemFlowGph":{"type":["null","number"]},"systemFlowGpm":{"type":["null","number"]},"minutesPerWatering":{"type":["null","number"]},"hoursPerWatering":{"type":["null","number"]},"hoursPerWeek":{"type":["null","number"]},"wateringsPerWeek":{"type":["null","number"]},"efficiencyPercent":{"type":["null","number"]},"inchesPerHourApplied":{"type":["null","number"]},"gallonsPerSqFtPerInch":{"type":["null","number"]},"supplyGpm":{"type":["null","number"]},"usableSupplyGpmAt80Percent":{"type":["null","number"]},"maxEmittersOnThisSupply":{"type":["null","number"]},"systemFlowWithinSupply":{"type":["boolean","null"]},"degraded":{"type":["boolean","null"]},"notChecked":{"type":["array","null"],"items":{"type":"string"}},"source":{"type":["null","string"]},"asOf":{"type":["null","string"]},"disclaimer":{"type":["null","string"]}}},"example":{"verdict":"COMPUTED","summary":"100 sq ft at 1 inch a week needs 62.3 gallons (69.3 with 10% losses). 25 emitters at 1 gph deliver 25 gph, so 3 waterings take about 55 minutes each. The 0.42 gpm system fits within 80% of the 5 gpm s…","reasons":["1 inch of water over 1 square foot is 144 cubic inches = 0.6234 gallons.","Run time = water per watering / system flow; keep a zone's flow under 80% of the measured supply flow."],"weeklyWaterGallons":62.3,"weeklyWaterGallonsAfterLosses":69.3,"weeklyLitres":262,"gallonsPerWatering":23.1,"systemFlowGph":25,"systemFlowGpm":0.417,"minutesPerWatering":55,"hoursPerWatering":0.92,"hoursPerWeek":2.77,"wateringsPerWeek":3,"efficiencyPercent":90,"inchesPerHourApplied":0.3609,"gallonsPerSqFtPerInch":0.6234,"supplyGpm":5,"usableSupplyGpmAt80Percent":4,"maxEmittersOnThisSupply":240,"systemFlowWithinSupply":true,"degraded":false,"notChecked":["rain: subtract the rain that fell (a 1 inch a week target includes rainfall)","soil type, plant size and weather, which change the real need by a factor of two or more across the season","…2 more"],"source":"computed locally","asOf":"2026-10-11T20:20:02.470Z","disclaimer":"Screening signal computed from the named public source. Not financial, legal or investment advice; provided as is. Verify at the source before acting."}}}},"400":{"description":"A parameter was missing or out of range."},"402":{"description":"Payment Required"},"502":{"description":"The upstream source failed or timed out."}},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.0200"},"protocols":[{"x402":{"network":"eip155:8453","scheme":"exact","currency":"USDC","endpoint":"https://garden-calc.x402tookit.com/drip-irrigation"}},{"x402":{"network":"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp","scheme":"exact","currency":"USDC","endpoint":"https://garden-calc.x402tookit.com/drip-irrigation"}},{"x402":{"network":"eip155:137","scheme":"exact","currency":"USDC","endpoint":"https://garden-calc.x402tookit.com/drip-irrigation"}},{"x402":{"network":"eip155:42161","scheme":"exact","currency":"USDC","endpoint":"https://garden-calc.x402tookit.com/drip-irrigation"}}]}}},"/fertilizer-rate":{"get":{"operationId":"fertilizer_rate","summary":"Fertilizer product needed for a nutrient target per 1000 sq ft from its N-P-K analysis, with the P and K delivered and bags.","description":"Fertilizer product needed for a nutrient target per 1000 sq ft from its N-P-K analysis, with the P and K delivered and bags.","tags":["garden","fertilizer","npk","lawn","calculator"],"parameters":[{"name":"analysis","in":"query","required":true,"description":"Fertilizer N-P-K analysis on the bag, for example 10-10-10 or 46-0-0 (percent N, P2O5, K2O)","schema":{"type":"string"}},{"name":"areaSqFt","in":"query","required":true,"description":"Area to fertilize in square feet, 1 to 10,000,000","schema":{"type":"number"}},{"name":"targetLbPer1000SqFt","in":"query","required":true,"description":"Pounds of the target nutrient wanted per 1000 sq ft, 0.05 to 10 (lawns often use 0.5 to 1 pound of N per application)","schema":{"type":"number"}},{"name":"nutrient","in":"query","required":false,"description":"Target nutrient: n (default), p2o5 or k2o","schema":{"type":"string"}},{"name":"bagLb","in":"query","required":false,"description":"Bag size in pounds, to count bags (default 50)","schema":{"type":"number"}}],"responses":{"200":{"description":"The answer.","content":{"application/json":{"schema":{"type":"object","properties":{"verdict":{"type":["null","string"]},"summary":{"type":["null","string"]},"reasons":{"type":["array","null"],"items":{"type":"string"}},"analysis":{"type":["null","string"]},"nutrient":{"type":["null","string"]},"areaSqFt":{"type":["null","number"]},"targetLbPer1000SqFt":{"type":["null","number"]},"productLbPer1000SqFt":{"type":["null","number"]},"totalProductLb":{"type":["null","number"]},"totalProductKg":{"type":["null","number"]},"bagsNeeded":{"type":["null","number"]},"productOzPer100SqFt":{"type":["null","number"]},"deliveredPer1000SqFt":{"type":["null","object"],"properties":{"nLb":{"type":["null","number"]},"p2o5Lb":{"type":["null","number"]},"k2oLb":{"type":["null","number"]},"elementalPLb":{"type":["null","number"]},"elementalKLb":{"type":["null","number"]}}},"totalDelivered":{"type":["null","object"],"properties":{"nLb":{"type":["null","number"]},"p2o5Lb":{"type":["null","number"]},"k2oLb":{"type":["null","number"]}}},"targetKgPerHectare":{"type":["null","number"]},"productKgPerHectare":{"type":["null","number"]},"degraded":{"type":["boolean","null"]},"notChecked":{"type":["array","null"],"items":{"type":"string"}},"source":{"type":["null","string"]},"asOf":{"type":["null","string"]},"disclaimer":{"type":["null","string"]}}},"example":{"verdict":"COMPUTED","summary":"To apply 1 lb of nitrogen per 1000 sq ft with 10-10-10, spread 10 lb of product per 1000 sq ft: 25 lb (0.5 bags of 50 lb) over 2500 sq ft. That delivers 1 lb N, 1 lb P2O5 and 1 lb K2O per 1000 sq ft.","reasons":["Product = target nutrient / (analysis % / 100). The analysis lists N, P2O5 and K2O (oxides), not elemental P and K.","Elemental P = P2O5 x 0.4364; elemental K = K2O x 0.8301."],"analysis":"10-10-10","nutrient":"nitrogen","areaSqFt":2500,"targetLbPer1000SqFt":1,"productLbPer1000SqFt":10,"totalProductLb":25,"totalProductKg":11.34,"bagsNeeded":1,"productOzPer100SqFt":16,"deliveredPer1000SqFt":{"nLb":1,"p2o5Lb":1,"k2oLb":1,"elementalPLb":0.436,"elementalKLb":0.83},"totalDelivered":{"nLb":2.5,"p2o5Lb":2.5,"k2oLb":2.5},"targetKgPerHectare":48.8,"productKgPerHectare":488.2,"degraded":false,"notChecked":["your soil's actual needs: only a soil test shows what to add (phosphorus and potassium are often not needed on established lawns and gardens)","slow-release versus quick-release products and the maximum safe single application on the label (fast nitrogen over about 1 pound N per 1000 sq ft can burn turf)","…2 more"],"source":"computed locally","asOf":"2026-10-11T20:20:02.734Z","disclaimer":"Screening signal computed from the named public source. Not financial, legal or investment advice; provided as is. Verify at the source before acting."}}}},"400":{"description":"A parameter was missing or out of range."},"402":{"description":"Payment Required"},"502":{"description":"The upstream source failed or timed out."}},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.0200"},"protocols":[{"x402":{"network":"eip155:8453","scheme":"exact","currency":"USDC","endpoint":"https://garden-calc.x402tookit.com/fertilizer-rate"}},{"x402":{"network":"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp","scheme":"exact","currency":"USDC","endpoint":"https://garden-calc.x402tookit.com/fertilizer-rate"}},{"x402":{"network":"eip155:137","scheme":"exact","currency":"USDC","endpoint":"https://garden-calc.x402tookit.com/fertilizer-rate"}},{"x402":{"network":"eip155:42161","scheme":"exact","currency":"USDC","endpoint":"https://garden-calc.x402tookit.com/fertilizer-rate"}}]}}},"/frost-risk":{"get":{"operationId":"frost_risk","summary":"Frost or freeze class of a forecast low against plant hardiness, plus where a date sits against your average frost dates.","description":"Frost or freeze class of a forecast low against plant hardiness, plus where a date sits against your average frost dates.","tags":["garden","frost","freeze","planting","calculator"],"parameters":[{"name":"lowTemp","in":"query","required":true,"description":"Forecast overnight low","schema":{"type":"number"}},{"name":"unit","in":"query","required":false,"description":"f (default) or c","schema":{"type":"string"}},{"name":"hardiness","in":"query","required":false,"description":"tender (default), half-hardy or hardy: how well the plant takes cold","schema":{"type":"string"}},{"name":"date","in":"query","required":false,"description":"The date as YYYY-MM-DD, for the calendar position","schema":{"type":"string"}},{"name":"averageLastFrost","in":"query","required":false,"description":"Your average last spring frost date, YYYY-MM-DD (any year; month and day matter)","schema":{"type":"string"}},{"name":"averageFirstFrost","in":"query","required":false,"description":"Your average first fall frost date, YYYY-MM-DD","schema":{"type":"string"}}],"responses":{"200":{"description":"The answer.","content":{"application/json":{"schema":{"type":"object","properties":{"verdict":{"type":["null","string"]},"summary":{"type":["null","string"]},"reasons":{"type":["array","null"],"items":{"type":"string"}},"lowF":{"type":["null","number"]},"lowC":{"type":["null","number"]},"freezeClass":{"type":["null","string"]},"freezeBand":{"type":["null","string"]},"hardiness":{"type":["null","string"]},"typicalDamageThresholdF":{"type":["null","number"]},"belowThreshold":{"type":["boolean","null"]},"protectionAdvice":{"type":["null","string"]},"dateIsDaysBeforeAverageLastFrost":{"type":["null","number"]},"averageLastFrostThisYear":{"type":["null","string"]},"springPosition":{"type":["null","string"]},"degraded":{"type":["boolean","null"]},"notChecked":{"type":["array","null"],"items":{"type":"string"}},"source":{"type":["null","string"]},"asOf":{"type":["null","string"]},"disclaimer":{"type":["null","string"]}}},"example":{"verdict":"DAMAGE_LIKELY","summary":"A low of 31 F (-0.6 C) is light freeze (29 to 32 F, almanac convention). For tender plants: damage likely. 11 days before the average last frost (2026-05-01).","reasons":["light freeze (29 to 32 F, almanac convention).","tender plants (tomato, pepper, basil, squash, cucumber, beans) are hurt by frost and killed by a freeze (typical examples; varieties differ).","…1 more"],"lowF":31,"lowC":-0.6,"freezeClass":"LIGHT_FREEZE","freezeBand":"29-32 F","hardiness":"tender","typicalDamageThresholdF":33,"belowThreshold":true,"protectionAdvice":"cover with frost cloth or sheets before sunset, water the soil, or bring containers inside","dateIsDaysBeforeAverageLastFrost":11,"averageLastFrostThisYear":"2026-05-01","springPosition":"BEFORE_AVERAGE_LAST_FROST","degraded":false,"notChecked":["your microclimate: low spots, cold air drainage, nearby buildings, water and wind change the night's low by 5 F or more from the forecast","the actual hardiness of the variety and stage (seedlings, blossoms and new growth are far more sensitive than mature leaves)","…2 more"],"source":"computed locally","asOf":"2026-10-11T20:20:02.999Z","disclaimer":"Screening signal computed from the named public source. Not financial, legal or investment advice; provided as is. Verify at the source before acting."}}}},"400":{"description":"A parameter was missing or out of range."},"402":{"description":"Payment Required"},"502":{"description":"The upstream source failed or timed out."}},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.0200"},"protocols":[{"x402":{"network":"eip155:8453","scheme":"exact","currency":"USDC","endpoint":"https://garden-calc.x402tookit.com/frost-risk"}},{"x402":{"network":"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp","scheme":"exact","currency":"USDC","endpoint":"https://garden-calc.x402tookit.com/frost-risk"}},{"x402":{"network":"eip155:137","scheme":"exact","currency":"USDC","endpoint":"https://garden-calc.x402tookit.com/frost-risk"}},{"x402":{"network":"eip155:42161","scheme":"exact","currency":"USDC","endpoint":"https://garden-calc.x402tookit.com/frost-risk"}}]}}},"/growing-degree-days":{"get":{"operationId":"growing_degree_days","summary":"Growing degree days from daily lows and highs with a base temperature and upper cutoff: daily and cumulative totals.","description":"Growing degree days from daily lows and highs with a base temperature and upper cutoff: daily and cumulative totals.","tags":["garden","gdd","agriculture","temperature","calculator"],"parameters":[{"name":"days","in":"query","required":true,"description":"Daily minimum:maximum pairs separated by semicolons or new lines, for example '48:72; 52:80; 55:88' (up to 400 days)","schema":{"type":"string"}},{"name":"unit","in":"query","required":false,"description":"f (default) or c for the temperatures and results","schema":{"type":"string"}},{"name":"crop","in":"query","required":false,"description":"Preset base temperature: corn, warm-season, cool-season or wheat (or give baseTemp)","schema":{"type":"string"}},{"name":"baseTemp","in":"query","required":false,"description":"Base temperature in the chosen unit (below it plants make no growth), -10 to 80 F or -23 to 27 C","schema":{"type":"number"}},{"name":"upperTemp","in":"query","required":false,"description":"Upper cutoff temperature in the chosen unit (default 86 F or 30 C)","schema":{"type":"number"}},{"name":"targetGdd","in":"query","required":false,"description":"A GDD total to reach, to find the day it is passed","schema":{"type":"number"}}],"responses":{"200":{"description":"The answer.","content":{"application/json":{"schema":{"type":"object","properties":{"verdict":{"type":["null","string"]},"summary":{"type":["null","string"]},"reasons":{"type":["array","null"],"items":{"type":"string"}},"unit":{"type":["null","string"]},"baseTemp":{"type":["null","number"]},"upperTemp":{"type":["null","number"]},"method":{"type":["null","string"]},"totalGdd":{"type":["null","number"]},"dayCount":{"type":["null","number"]},"averageGddPerDay":{"type":["null","number"]},"days":{"type":["array","null"],"items":{"type":"object","properties":{"day":{"type":["null","number"]},"min":{"type":["null","number"]},"max":{"type":["null","number"]},"gdd":{"type":["null","number"]},"simpleAverageGdd":{"type":["null","number"]},"cumulativeGdd":{"type":["null","number"]}}}},"daysTruncatedToLast60":{"type":["boolean","null"]},"baseNote":{"type":["null","string"]},"degraded":{"type":["boolean","null"]},"notChecked":{"type":["array","null"],"items":{"type":"string"}},"source":{"type":["null","string"]},"asOf":{"type":["null","string"]},"disclaimer":{"type":["null","string"]}}},"example":{"verdict":"COMPUTED","summary":"4 day(s) add up to 57.5 GDDF with a base of 50 F.","reasons":["Each day's GDD = (daily max, capped at the cutoff, + daily min, raised to the base) / 2 - base, and not below zero.","Converting: 1 Celsius GDD = 1.8 Fahrenheit GDD."],"unit":"f","baseTemp":50,"upperTemp":86,"method":"modified (cutoff): minimum raised to the base, maximum capped at the upper limit, GDD = (max + min)/2 - base, never below 0","totalGdd":57.5,"dayCount":4,"averageGddPerDay":14.375,"days":[{"day":1,"min":48,"max":72,"gdd":11,"simpleAverageGdd":10,"cumulativeGdd":11},{"day":2,"min":52,"max":80,"gdd":16,"simpleAverageGdd":16,"cumulativeGdd":27}],"daysTruncatedToLast60":false,"baseNote":"corn: 50 F base, 86 F cutoff (standard extension convention)","degraded":false,"notChecked":["hourly temperature swings: daily min and max understate or overstate heat accumulation on days with unusual curves","soil temperature, day length, moisture and plant stress, which also control development","…2 more"],"source":"computed locally","asOf":"2026-10-11T20:20:03.262Z","disclaimer":"Screening signal computed from the named public source. Not financial, legal or investment advice; provided as is. Verify at the source before acting."}}}},"400":{"description":"A parameter was missing or out of range."},"402":{"description":"Payment Required"},"502":{"description":"The upstream source failed or timed out."}},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.0200"},"protocols":[{"x402":{"network":"eip155:8453","scheme":"exact","currency":"USDC","endpoint":"https://garden-calc.x402tookit.com/growing-degree-days"}},{"x402":{"network":"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp","scheme":"exact","currency":"USDC","endpoint":"https://garden-calc.x402tookit.com/growing-degree-days"}},{"x402":{"network":"eip155:137","scheme":"exact","currency":"USDC","endpoint":"https://garden-calc.x402tookit.com/growing-degree-days"}},{"x402":{"network":"eip155:42161","scheme":"exact","currency":"USDC","endpoint":"https://garden-calc.x402tookit.com/growing-degree-days"}}]}}},"/plant-spacing":{"get":{"operationId":"plant_spacing","summary":"Plants that fit a bed at a spacing (grid or offset rows) and seeds to sow from germination rate, per bed and per square foot.","description":"Plants that fit a bed at a spacing (grid or offset rows) and seeds to sow from germination rate, per bed and per square foot.","tags":["garden","spacing","seeds","planting","calculator"],"parameters":[{"name":"lengthFt","in":"query","required":false,"description":"Bed length in feet (with widthFt), or give areaSqFt","schema":{"type":"number"}},{"name":"widthFt","in":"query","required":false,"description":"Bed width in feet","schema":{"type":"number"}},{"name":"areaSqFt","in":"query","required":false,"description":"Or the planted area in square feet","schema":{"type":"number"}},{"name":"spacingIn","in":"query","required":true,"description":"Spacing between plants in a row, inches, 1 to 120","schema":{"type":"number"}},{"name":"rowSpacingIn","in":"query","required":false,"description":"Distance between rows in inches (default: same as spacingIn)","schema":{"type":"number"}},{"name":"layout","in":"query","required":false,"description":"grid (default) or offset (triangular, rows staggered; row distance is 0.866 x spacing)","schema":{"type":"string"}},{"name":"germinationPercent","in":"query","required":false,"description":"Seed germination rate, 10 to 100 (default 85)","schema":{"type":"number"}},{"name":"seedsPerHole","in":"query","required":false,"description":"Seeds sown per planting spot, 1 to 6 (default 1)","schema":{"type":"integer"}}],"responses":{"200":{"description":"The answer.","content":{"application/json":{"schema":{"type":"object","properties":{"verdict":{"type":["null","string"]},"summary":{"type":["null","string"]},"reasons":{"type":["array","null"],"items":{"type":"string"}},"areaSqFt":{"type":["null","number"]},"spacingIn":{"type":["null","number"]},"rowSpacingIn":{"type":["null","number"]},"layout":{"type":["null","string"]},"plantsPerSqFt":{"type":["null","number"]},"plantsByAreaDivision":{"type":["null","number"]},"plantsByRowAndPlantCount":{"type":["null","number"]},"rowsFitting":{"type":["null","number"]},"plantsPerRow":{"type":["null","number"]},"plantsEstimate":{"type":["null","number"]},"germinationPercent":{"type":["null","number"]},"seedsNeededOnePerSpotToFill":{"type":["null","number"]},"seedsPerHole":{"type":["null","number"]},"seedsToSowAtThatRate":{"type":["null","number"]},"expectedSeedlingsFromSowing":{"type":["null","number"]},"expectedFillPercentOnePerHole":{"type":["null","number"]},"squareFootGardeningNote":{"type":["null","string"]},"degraded":{"type":["boolean","null"]},"notChecked":{"type":["array","null"],"items":{"type":"string"}},"source":{"type":["null","string"]},"asOf":{"type":["null","string"]},"disclaimer":{"type":["null","string"]}}},"example":{"verdict":"COMPUTED","summary":"32 sq ft at 6 x 6 in (grid) holds 128 plants (4 per sq ft). With 80% germination, sowing 160 seeds (one per spot) should fill them; sowing 1 per spot uses 128 seeds.","reasons":["Grid count = floor(length / spacing) x floor(width / row spacing), leaving half a spacing at each edge; the area method divides area by the footprint of one plant.","Offset rows pack plants about 15% denser than a square grid at the same in-row spacing."],"areaSqFt":32,"spacingIn":6,"rowSpacingIn":6,"layout":"grid","plantsPerSqFt":4,"plantsByAreaDivision":128,"plantsByRowAndPlantCount":128,"rowsFitting":8,"plantsPerRow":16,"plantsEstimate":128,"germinationPercent":80,"seedsNeededOnePerSpotToFill":160,"seedsPerHole":1,"seedsToSowAtThatRate":128,"expectedSeedlingsFromSowing":102.4,"expectedFillPercentOnePerHole":80,"squareFootGardeningNote":"4 plants per square foot (square-foot gardening uses 1, 4, 9 or 16)","degraded":false,"notChecked":["the right spacing for the crop and variety: use the seed packet or extension guide (this calculator does not know what the plant needs)","paths, edges and trellises that remove planting area","…2 more"],"source":"computed locally","asOf":"2026-10-11T20:20:03.525Z","disclaimer":"Screening signal computed from the named public source. Not financial, legal or investment advice; provided as is. Verify at the source before acting."}}}},"400":{"description":"A parameter was missing or out of range."},"402":{"description":"Payment Required"},"502":{"description":"The upstream source failed or timed out."}},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.0200"},"protocols":[{"x402":{"network":"eip155:8453","scheme":"exact","currency":"USDC","endpoint":"https://garden-calc.x402tookit.com/plant-spacing"}},{"x402":{"network":"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp","scheme":"exact","currency":"USDC","endpoint":"https://garden-calc.x402tookit.com/plant-spacing"}},{"x402":{"network":"eip155:137","scheme":"exact","currency":"USDC","endpoint":"https://garden-calc.x402tookit.com/plant-spacing"}},{"x402":{"network":"eip155:42161","scheme":"exact","currency":"USDC","endpoint":"https://garden-calc.x402tookit.com/plant-spacing"}}]}}},"/planting-dates":{"get":{"operationId":"planting_dates","summary":"Planting calendar from your frost date: dates for tasks given as weeks before or after, such as seeds indoors 6 weeks before.","description":"Planting calendar from your frost date: dates for tasks given as weeks before or after, such as seeds indoors 6 weeks before.","tags":["garden","planting","calendar","frost","calculator"],"parameters":[{"name":"frostDate","in":"query","required":true,"description":"Your average last spring frost (or first fall frost) date, YYYY-MM-DD","schema":{"type":"string"}},{"name":"tasks","in":"query","required":true,"description":"Lines task:weeks separated by semicolons; negative weeks are before the frost date, positive after, for example 'tomato seeds indoors:-6; tomato transplant:2; lettuce:-4'","schema":{"type":"string"}}],"responses":{"200":{"description":"The answer.","content":{"application/json":{"schema":{"type":"object","properties":{"verdict":{"type":["null","string"]},"summary":{"type":["null","string"]},"reasons":{"type":["array","null"],"items":{"type":"string"}},"frostDate":{"type":["null","string"]},"earliest":{"type":["null","string"]},"latest":{"type":["null","string"]},"spanDays":{"type":["null","number"]},"schedule":{"type":["array","null"],"items":{"type":"object","properties":{"task":{"type":["null","string"]},"weeksFromFrost":{"type":["null","number"]},"daysFromFrost":{"type":["null","number"]},"date":{"type":["null","string"]},"weekday":{"type":["null","string"]},"relation":{"type":["null","string"]}}}},"degraded":{"type":["boolean","null"]},"notChecked":{"type":["array","null"],"items":{"type":"string"}},"source":{"type":["null","string"]},"asOf":{"type":["null","string"]},"disclaimer":{"type":["null","string"]}}},"example":{"verdict":"COMPUTED","summary":"Frost date 2027-05-01: tomato seeds indoors 2027-03-20; lettuce seeds outdoors 2027-04-03; bean seeds 2027-05-08; tomato transplant 2027-05-15.","reasons":["Each date is the frost date plus (weeks x 7) days; the list is sorted by date.","Tender plants usually go out about one to two weeks after the average last frost; hardy crops can go in several weeks before it."],"frostDate":"2027-05-01","earliest":"2027-03-20","latest":"2027-05-15","spanDays":56,"schedule":[{"task":"tomato seeds indoors","weeksFromFrost":-6,"daysFromFrost":-42,"date":"2027-03-20","weekday":"Saturday","relation":"before the frost date"},{"task":"lettuce seeds outdoors","weeksFromFrost":-4,"daysFromFrost":-28,"date":"2027-04-03","weekday":"Saturday","relation":"before the frost date"}],"degraded":false,"notChecked":["the weeks themselves: they come from you or your seed packet (this calculator does not know when to plant a crop)","the real frost date: the average is the median, so a frost after it happens in about half of years","…2 more"],"source":"computed locally","asOf":"2026-10-11T20:20:03.798Z","disclaimer":"Screening signal computed from the named public source. Not financial, legal or investment advice; provided as is. Verify at the source before acting."}}}},"400":{"description":"A parameter was missing or out of range."},"402":{"description":"Payment Required"},"502":{"description":"The upstream source failed or timed out."}},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.0200"},"protocols":[{"x402":{"network":"eip155:8453","scheme":"exact","currency":"USDC","endpoint":"https://garden-calc.x402tookit.com/planting-dates"}},{"x402":{"network":"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp","scheme":"exact","currency":"USDC","endpoint":"https://garden-calc.x402tookit.com/planting-dates"}},{"x402":{"network":"eip155:137","scheme":"exact","currency":"USDC","endpoint":"https://garden-calc.x402tookit.com/planting-dates"}},{"x402":{"network":"eip155:42161","scheme":"exact","currency":"USDC","endpoint":"https://garden-calc.x402tookit.com/planting-dates"}}]}}},"/soil-volume":{"get":{"operationId":"soil_volume","summary":"Soil or mulch for a rectangular or round bed: cubic feet, yards, litres, bags, settling allowance and a mix split by parts.","description":"Soil or mulch for a rectangular or round bed: cubic feet, yards, litres, bags, settling allowance and a mix split by parts.","tags":["garden","soil","raised-bed","mulch","calculator"],"parameters":[{"name":"shape","in":"query","required":true,"description":"rectangle or circle","schema":{"type":"string"}},{"name":"lengthOrDiameter","in":"query","required":true,"description":"Length of a rectangle, or diameter of a circle, in the chosen unit","schema":{"type":"number"}},{"name":"width","in":"query","required":false,"description":"Width of a rectangle (needed for rectangle)","schema":{"type":"number"}},{"name":"depth","in":"query","required":true,"description":"Fill depth in the chosen unit","schema":{"type":"number"}},{"name":"unit","in":"query","required":false,"description":"ft (default), in, m or cm for the dimensions","schema":{"type":"string"}},{"name":"settlingPercent","in":"query","required":false,"description":"Extra for settling, 0 to 40 (default 10)","schema":{"type":"number"}},{"name":"bagCuFt","in":"query","required":false,"description":"Bag size in cubic feet, 0.25 to 80 (default 1.5)","schema":{"type":"number"}},{"name":"mix","in":"query","required":false,"description":"Mix as name:parts separated by semicolons, for example 'topsoil:5; compost:3; perlite:2'","schema":{"type":"string"}}],"responses":{"200":{"description":"The answer.","content":{"application/json":{"schema":{"type":"object","properties":{"verdict":{"type":["null","string"]},"summary":{"type":["null","string"]},"reasons":{"type":["array","null"],"items":{"type":"string"}},"shape":{"type":["null","string"]},"areaSqFt":{"type":["null","number"]},"depthFt":{"type":["null","number"]},"volumeCuFt":{"type":["null","number"]},"volumeCuYd":{"type":["null","number"]},"volumeLitres":{"type":["null","number"]},"volumeM3":{"type":["null","number"]},"settlingPercent":{"type":["null","number"]},"volumeWithSettlingCuFt":{"type":["null","number"]},"volumeWithSettlingCuYd":{"type":["null","number"]},"volumeWithSettlingLitres":{"type":["null","number"]},"bagCuFt":{"type":["null","number"]},"bagsNeeded":{"type":["null","number"]},"coverageSqFtPerCuYdAtThisDepth":{"type":["null","number"]},"mix":{"type":["array","null"],"items":{"type":"object","properties":{"name":{"type":["null","string"]},"parts":{"type":["null","number"]},"percent":{"type":["null","number"]},"cuFt":{"type":["null","number"]},"cuYd":{"type":["null","number"]},"litres":{"type":["null","number"]},"bags":{"type":["null","number"]}}}},"degraded":{"type":["boolean","null"]},"notChecked":{"type":["array","null"],"items":{"type":"string"}},"source":{"type":["null","string"]},"asOf":{"type":["null","string"]},"disclaimer":{"type":["null","string"]}}},"example":{"verdict":"COMPUTED","summary":"8 x 4 ft bed at 1 ft deep holds 32 cubic feet (1.19 cubic yards, 906 litres); with 10% for settling order 35.2 cubic feet, 24 bags of 1.5.","reasons":["Volume = area x depth; 1 cubic yard = 27 cubic feet = 764.6 litres.","A cubic yard covers 324 square feet one inch deep."],"shape":"rectangle","areaSqFt":32,"depthFt":1,"volumeCuFt":32,"volumeCuYd":1.185,"volumeLitres":906.1,"volumeM3":0.9061,"settlingPercent":10,"volumeWithSettlingCuFt":35.2,"volumeWithSettlingCuYd":1.304,"volumeWithSettlingLitres":996.8,"bagCuFt":1.5,"bagsNeeded":24,"coverageSqFtPerCuYdAtThisDepth":27,"mix":[{"name":"topsoil","parts":5,"percent":50,"cuFt":17.6,"cuYd":0.652,"litres":498.4,"bags":12},{"name":"compost","parts":3,"percent":30,"cuFt":10.56,"cuYd":0.391,"litres":299,"bags":8}],"degraded":false,"notChecked":["real bed shape: sloped sides, mounds and tapered beds change the volume (split an odd bed into rectangles and circles and add them)","how much the soil compacts: settling varies from 5% (screened soil) to 25% (loose compost)","…2 more"],"source":"computed locally","asOf":"2026-10-11T20:20:04.052Z","disclaimer":"Screening signal computed from the named public source. Not financial, legal or investment advice; provided as is. Verify at the source before acting."}}}},"400":{"description":"A parameter was missing or out of range."},"402":{"description":"Payment Required"},"502":{"description":"The upstream source failed or timed out."}},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.0200"},"protocols":[{"x402":{"network":"eip155:8453","scheme":"exact","currency":"USDC","endpoint":"https://garden-calc.x402tookit.com/soil-volume"}},{"x402":{"network":"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp","scheme":"exact","currency":"USDC","endpoint":"https://garden-calc.x402tookit.com/soil-volume"}},{"x402":{"network":"eip155:137","scheme":"exact","currency":"USDC","endpoint":"https://garden-calc.x402tookit.com/soil-volume"}},{"x402":{"network":"eip155:42161","scheme":"exact","currency":"USDC","endpoint":"https://garden-calc.x402tookit.com/soil-volume"}}]}}}}}