Quick Start
The GrowVPD Pro API is completely free and requires no authentication. All endpoints return JSON. Just send a GET request and you are ready to go.
# Calculate VPD for 25C and 60% humidity curl "https://api.growvpd.pro/v1/vpd?temp=25&humidity=60" # Get environment targets for mid-flower stage curl "https://api.growvpd.pro/v1/stage?stage=mid_flower&medium=coco"
const BASE = "https://api.growvpd.pro"; async function getVPD(temp, humidity) { const res = await fetch( `${BASE}/v1/vpd?temp=${temp}&humidity=${humidity}` ); return res.json(); } // Usage const data = await getVPD(25, 60); console.log(data.vpd_kpa); // 0.9088 console.log(data.status); // "vegetative"
import requests BASE = "https://api.growvpd.pro" def get_vpd(temp, humidity): r = requests.get(f"{BASE}/v1/vpd", params={ "temp": temp, "humidity": humidity }) return r.json() data = get_vpd(25, 60) print(data["vpd_kpa"]) # 0.9088 print(data["status"]) # "vegetative"
Core VPD
Calculate VPD (Vapor Pressure Deficit) from temperature and humidity. Returns VPD value, leaf VPD, status classification, and optimal ranges for all growth stages.
| Parameter | Type | Default | Description |
|---|---|---|---|
| temprequired | number | - | Air temperature |
| humidityrequired | number | - | Relative humidity (%) |
| leaf_offset | number | 2.0 | Leaf temperature offset below air temp |
| unit | string | c | Temperature unit: c (Celsius) or f (Fahrenheit) |
{
"vpd_kpa": 0.9088,
"vpd_psi": 0.1318,
"vpd_mbar": 9.09,
"status": "vegetative",
"status_label": "Vegetative Growth",
"status_color": "#4CAF50",
"air_temperature_c": 25.0,
"air_temperature_f": 77.0,
"leaf_temperature_c": 23.0,
"leaf_temperature_f": 73.4,
"leaf_offset_c": 2.0,
"humidity_pct": 60.0,
"svp_leaf_kpa": 2.8094,
"svp_air_kpa": 3.1678,
"avp_kpa": 1.9007,
"dewpoint_c": 16.7,
"dewpoint_f": 62.1,
"wet_bulb_c": 19.5,
"absolute_humidity_gm3": 13.81,
"mold_risk": {
"level": "low",
"score": 0,
"color": "#4CAF50",
"message": "Low mold risk. Conditions are favorable."
},
"stage_suitability": {
"clone": { "suitability": "too_high", "score": 58, "target_range_kpa": [0.4, 0.7], "optimal_kpa": 0.5 },
"seedling": { "suitability": "too_high", "score": 78, "target_range_kpa": [0.4, 0.8], "optimal_kpa": 0.6 },
"early_veg": { "suitability": "optimal", "score": 98, "target_range_kpa": [0.8, 1.0], "optimal_kpa": 0.9 },
"late_veg": { "suitability": "too_low", "score": 82, "target_range_kpa": [1.0, 1.2], "optimal_kpa": 1.1 },
"transition": { "suitability": "too_low", "score": 82, "target_range_kpa": [1.0, 1.3], "optimal_kpa": 1.15 },
"early_flower": { "suitability": "too_low", "score": 82, "target_range_kpa": [1.0, 1.4], "optimal_kpa": 1.2 },
"mid_flower": { "suitability": "too_low", "score": 42, "target_range_kpa": [1.2, 1.5], "optimal_kpa": 1.35 },
"late_flower": { "suitability": "too_low", "score": 22, "target_range_kpa": [1.3, 1.6], "optimal_kpa": 1.45 },
"drying": { "suitability": "too_low", "score": 82, "target_range_kpa": [1.0, 1.4], "optimal_kpa": 1.2 },
"curing": { "suitability": "optimal", "score": 91, "target_range_kpa": [0.8, 1.2], "optimal_kpa": 1.0 }
},
"advice": [
"Excellent range for vegetative growth.",
"Strong transpiration promotes nutrient uptake and healthy stems."
],
"powered_by": "GrowVPD Pro",
"app": "https://growvpd.pro",
"api_version": "2.1.0"
}
Reverse VPD calculator. Given a target VPD (or growth stage) and either temperature or humidity, calculates the missing variable. Useful for finding what humidity to aim for at a given temperature.
| Parameter | Type | Default | Description |
|---|---|---|---|
| vpd | number | - | Target VPD value (kPa). Provide this or stage. |
| stage | string | - | Growth stage (uses midpoint VPD). One of: clone, seedling, early_veg, late_veg, transition, early_flower, mid_flower, late_flower, drying, curing |
| temp | number | - | Known temperature (solves for humidity) |
| humidity | number | - | Known humidity (solves for temperature) |
| leaf_offset | number | 2.0 | Leaf temperature offset |
| unit | string | c | Temperature unit: c or f |
{
"given_temperature_c": 25.0,
"given_temperature_f": 77.0,
"required_humidity_pct": 50.8,
"achieved_vpd_kpa": 1.2002,
"dewpoint_c": 14.1,
"target_vpd_kpa": 1.2,
"leaf_offset_c": 2.0,
"powered_by": "GrowVPD Pro",
"app": "https://growvpd.pro",
"api_version": "2.1.0"
}
Generate a VPD heatmap data matrix. Returns a 2D grid of VPD values across a temperature and humidity range, with zone classifications. Perfect for building visual VPD charts.
| Parameter | Type | Default | Description |
|---|---|---|---|
| temp_min | number | 15 | Minimum temperature |
| temp_max | number | 35 | Maximum temperature |
| temp_step | number | 1 | Temperature step size |
| rh_min | number | 30 | Minimum relative humidity (%) |
| rh_max | number | 90 | Maximum relative humidity (%) |
| rh_step | number | 5 | Humidity step size |
| leaf_offset | number | 2 | Leaf temperature offset |
| stage | string | - | Growth stage for zone classification |
{
"chart": [
{
"temp_c": 18,
"temp_f": 64.4,
"values": [
{ "humidity": 30, "vpd": 1.1991, "status": "transition", "color": "#8BC34A", "in_target": false },
{ "humidity": 35, "vpd": 1.0959, "status": "transition", "color": "#8BC34A", "in_target": false },
// ... more humidity values
]
},
// ... more temperature rows
],
"leaf_offset_c": 2.0,
"temp_range": [18, 30],
"humidity_range": [30, 90],
"target_vpd_range": [1.2, 1.5],
"stage": "mid_flower",
"powered_by": "GrowVPD Pro",
"app": "https://growvpd.pro",
"api_version": "2.1.0"
}
Batch VPD calculations with aggregated statistics. Submit multiple temperature/humidity readings and receive individual VPD values plus min, max, average, and standard deviation across the set.
| Parameter | Type | Default | Description |
|---|---|---|---|
| readingsrequired | JSON array | - | Array of {"temp":N, "humidity":N} objects (URL-encoded) |
| leaf_offset | number | 2.0 | Leaf temperature offset |
{
"results": [
{
"index": 0,
"temp_c": 25.0,
"humidity": 60.0,
"vpd_kpa": 0.9088,
"status": "vegetative",
"color": "#4CAF50",
"dewpoint_c": 16.7
},
{
"index": 1,
"temp_c": 26.0,
"humidity": 55.0,
"vpd_kpa": 1.1351,
"status": "transition",
"color": "#8BC34A",
"dewpoint_c": 16.26
}
],
"statistics": {
"count": 2,
"min_vpd": 0.909,
"max_vpd": 1.135,
"avg_vpd": 1.022,
"range_vpd": 0.226,
"std_dev": 0.113,
"stability_score": 89,
"stability_label": "Excellent",
"trend": "stable"
},
"powered_by": "GrowVPD Pro",
"app": "https://growvpd.pro",
"api_version": "2.1.0"
}
Light & DLI
Daily Light Integral calculator. Compute DLI from PPFD and photoperiod (forward), or find the required PPFD to hit a target DLI (reverse).
| Parameter | Type | Default | Description |
|---|---|---|---|
| ppfd | number | - | Photosynthetic Photon Flux Density (umol/m2/s) |
| hours | number | - | Photoperiod in hours |
| dli | number | - | Target DLI (mol/m2/day) for reverse calculation |
{
"ppfd": 600.0,
"hours": 12.0,
"dli": 25.92,
"unit": "mol/m2/day",
"analysis": {
"status": "moderate",
"label": "Moderate - vegetative growth",
"suitable_for": ["vegetative stage", "leafy greens", "herbs"]
},
"equivalents": { "18h_ppfd": 400.0, "16h_ppfd": 450.0, "14h_ppfd": 514.0, "12h_ppfd": 600.0 },
"powered_by": "GrowVPD Pro",
"app": "https://growvpd.pro",
"api_version": "2.1.0"
}
Comprehensive light calculator. Estimates PPFD from wattage and area, calculates DLI, evaluates light intensity for a given growth stage, and provides efficiency metrics.
| Parameter | Type | Default | Description |
|---|---|---|---|
| ppfd | number | - | Known PPFD (if available) |
| hours | number | - | Photoperiod in hours |
| watts | number | - | Light wattage (for PPFD estimation) |
| efficiency | number | 2.5 | LED efficiency (umol/J) |
| area | number | - | Grow area in m2 |
| height | number | - | Light height in centimeters |
| stage | string | - | Growth stage for evaluation |
{
"estimated_ppfd": 1042.0,
"watts": 600.0,
"efficiency_umol_j": 2.5,
"area_m2": 1.44,
"note": "PPFD estimate based on efficiency rating. Actual varies by light model and height.",
"estimated_dli": 45.01,
"ppfd": 1042.0,
"hours": 12.0,
"dli": 45.01,
"dli_analysis": {
"status": "optimal",
"label": "Optimal - flowering stage",
"suitable_for": ["flowering", "fruiting plants", "high-light crops"]
},
"stage": "mid_flower",
"recommended_ppfd": [600, 900],
"recommended_dli": [30, 50],
"recommended_hours": 12,
"ppfd_status": "optimal",
"ppfd_advice": "PPFD is in good range for Mid Flower (Bud Formation).",
"powered_by": "GrowVPD Pro",
"app": "https://growvpd.pro",
"api_version": "2.1.0"
}
Growing Stages
Get comprehensive environment targets for a growth stage. Returns optimal ranges for VPD, temperature, humidity, PPFD, DLI, CO2, EC and pH. Optionally tailored to a growing medium.
| Parameter | Type | Default | Description |
|---|---|---|---|
| stage | string | - | Stage name or "all" for every stage. Options: clone, seedling, early_veg, late_veg, transition, early_flower, mid_flower, late_flower, drying, curing |
| medium | string | - | Growing medium: soil, coco, hydro, dwc |
{
"stage": "mid_flower",
"name": "Mid Flower (Bud Formation)",
"vpd_range_kpa": [1.2, 1.5],
"vpd_optimal_kpa": 1.35,
"temperature_day_c": [23, 26],
"temperature_day_f": [73.4, 78.8],
"temperature_night_c": [19, 22],
"temperature_night_f": [66.2, 71.6],
"humidity_pct": [45, 55],
"ppfd_range": [600, 900],
"dli_range": [30, 50],
"light_hours": 12,
"co2_ppm": [800, 1400],
"duration": "3-4",
"medium": "coco",
"ec_range": [1.4, 2.4],
"ppm_500_range": [700, 1200],
"ph_range": [5.5, 6.5],
"ph_optimal": 5.9,
"npk_ratio": { "N": 1, "P": 3, "K": 3 },
"cal_mag_need": "high",
"tips": [
"Peak nutrient demand",
"Support heavy branches",
"Watch for calcium/magnesium deficiency",
"Maintain good airflow around buds"
],
"powered_by": "GrowVPD Pro",
"app": "https://growvpd.pro",
"api_version": "2.1.0"
}
Generate a full grow timeline with week-by-week stage progression. Returns duration and environment targets for each stage, customized by plant type and growing medium.
| Parameter | Type | Default | Description |
|---|---|---|---|
| type | string | - | Plant type: photo (photoperiod) or auto (autoflower) |
| medium | string | - | Growing medium: soil, coco, hydro, dwc |
{
"type": "auto",
"type_label": "Autoflower",
"medium": "coco",
"total_duration": "10-12 (seed to harvest) + curing",
"light_schedule": "20/4 or 18/6 throughout (autoflower)",
"timeline": [
{
"week": 1,
"stage": "seedling",
"label": "Seedling",
"vpd_target": 0.6,
"vpd_range": [0.4, 0.8],
"temp_day_c": [24, 27],
"humidity_pct": [65, 80],
"ppfd": [100, 300],
"ec_range": [0.4, 0.8],
"ph_range": [5.5, 6.5],
"light_hours": 18,
"tips": [
"Start light high, lower gradually",
"Water in small circle around stem",
"No nutrients first week in soil",
"Watch for stretching (raise light if needed)"
]
},
// ... one entry per week
],
"powered_by": "GrowVPD Pro",
"app": "https://growvpd.pro",
"api_version": "2.1.0"
}
Diagnostics
Full environment diagnosis with a 0-100 health score. Analyzes temperature, humidity, VPD, pH, EC, PPFD, CO2, and night temperature. Returns issues found, severity levels, and actionable recommendations.
| Parameter | Type | Default | Description |
|---|---|---|---|
| temprequired | number | - | Air temperature |
| humidityrequired | number | - | Relative humidity (%) |
| stage | string | - | Growth stage for context-aware diagnosis |
| medium | string | - | Growing medium |
| ppfd | number | - | Current PPFD |
| ph | number | - | Nutrient solution pH |
| ec | number | - | Nutrient solution EC (mS/cm) |
| co2 | number | - | CO2 level (ppm) |
| night_temp | number | - | Night temperature |
| unit | string | c | Temperature unit: c or f |
{
"overall": "critical",
"health_score": 15,
"health_label": "Poor",
"stage": "late_flower",
"stage_name": "Late Flower (Ripening)",
"medium": "soil",
"vpd_kpa": 0.677,
"dewpoint_c": 27.0,
"issues": [
{
"param": "temperature",
"severity": "critical",
"message": "TEMPERATURE 32.0C is critically high (target: 22-25C)",
"fix": "Increase ventilation or add AC"
},
{
"param": "humidity",
"severity": "critical",
"message": "HUMIDITY 75% is critically high (target: 40-50%)",
"fix": "Dehumidifier + increase exhaust"
},
{
"param": "vpd",
"severity": "critical",
"message": "VPD 0.68 kPa is critically low (target: 1.3-1.6kPa)",
"fix": "Lower humidity or raise temp slightly"
}
],
"warnings": [
{
"param": "ph",
"severity": "warning",
"message": "PH 7.5 is slightly high (target: 6.0-7.0)",
"fix": "Lower pH towards 6.5"
}
],
"ok": [],
"priority_fix": "Increase ventilation or add AC",
"mold_risk": {
"level": "moderate",
"score": 35,
"color": "#FF9800",
"message": "Moderate mold risk. Monitor closely, especially in dense canopy areas."
},
"powered_by": "GrowVPD Pro",
"app": "https://growvpd.pro",
"api_version": "2.1.0"
}
Symptom-based nutrient deficiency diagnosis. Describe visible plant symptoms and get ranked possible deficiencies with confidence scores, affected nutrients, and treatment recommendations.
| Parameter | Type | Default | Description |
|---|---|---|---|
| symptomsrequired | string | - | Comma-separated symptom keywords. Examples: yellow_lower_leaves, brown_spots_new_growth, leaf_curl_up, purple_stems, slow_growth, burnt_tips |
| ph | number | - | Current pH (helps narrow diagnosis) |
| medium | string | - | Growing medium |
{
"input_symptoms": ["brown_spots", "yellow_lower_leaves"],
"diagnoses": [
{
"deficiency": "nitrogen",
"name": "Nitrogen (N)",
"confidence": "low",
"match_score": 20,
"matched_symptoms": ["yellow_lower_leaves"],
"all_symptoms": ["yellow_lower_leaves", "pale_green", "slow_growth", "small_leaves", "early_senescence"],
"visual_description": "Lower/older leaves turn uniformly yellow, starting from tips. Plant appears pale green overall.",
"mobility": "mobile",
"common_causes": ["low_ec", "ph_too_high", "root_problems", "overwatering", "cold_roots"],
"fix": "Increase nitrogen in feed. Use CalMag or fish emulsion for quick fix. Check pH.",
"severity_if_untreated": "Plant will cannibalize fan leaves. Yield loss 20-40%.",
"ph_lockout_likely": false
},
// ... more possible causes
],
"unmatched_symptoms": ["brown_spots"],
"medium": "soil",
"ph": 7.2,
"ph_status": "too_high",
"ph_advice": "pH 7.2 is above optimal 6.0-7.0 for soil. This can lock out iron, manganese, and zinc.",
"primary_diagnosis": "Nitrogen (N)",
"recommended_action": "Increase nitrogen in feed. Use CalMag or fish emulsion for quick fix. Check pH.",
"powered_by": "GrowVPD Pro",
"app": "https://growvpd.pro",
"api_version": "2.1.0"
}
Calculate dewpoint temperature and a mold/condensation risk assessment. Essential for preventing bud rot and mildew.
| Parameter | Type | Default | Description |
|---|---|---|---|
| temprequired | number | - | Air temperature |
| humidityrequired | number | - | Relative humidity (%) |
| unit | string | c | Temperature unit: c or f |
{
"air_temperature_c": 25.0,
"air_temperature_f": 77.0,
"humidity_pct": 70.0,
"dewpoint_c": 19.15,
"dewpoint_f": 66.5,
"wet_bulb_c": 20.9,
"wet_bulb_f": 69.6,
"absolute_humidity_gm3": 16.12,
"vpd_kpa": 0.592,
"frost_point_c": null,
"condensation_risk": [
{
"surface": "Walls",
"estimated_temp_c": 23.0,
"status": "safe",
"margin_c": 3.9,
"warning": "Safe. 3.9C above dewpoint."
},
{
"surface": "Windows",
"estimated_temp_c": 20.0,
"status": "safe",
"margin_c": 0.9,
"warning": "Safe. 0.9C above dewpoint."
},
// ... more surfaces
],
"mold_risk": {
"level": "moderate",
"score": 25,
"color": "#FF9800",
"message": "Moderate mold risk. Monitor closely, especially in dense canopy areas."
},
"dewpoint_adjustment_table": [
{ "dewpoint_c": 14, "humidity_needed": 50.5 },
{ "dewpoint_c": 15, "humidity_needed": 53.8 },
{ "dewpoint_c": 16, "humidity_needed": 57.4 },
// ... more rows
],
"powered_by": "GrowVPD Pro",
"app": "https://growvpd.pro",
"api_version": "2.1.0"
}
Nutrients & Feeding
Get EC, pH, and PPM targets for a given growth stage and medium. Includes medium-specific tips and adjustments based on your water source EC.
| Parameter | Type | Default | Description |
|---|---|---|---|
| stagerequired | string | - | Growth stage |
| medium | string | - | Growing medium: soil, coco, hydro, dwc |
| water_ec | number | - | Base water EC (mS/cm) for adjusted targets |
{
"stage": "mid_flower",
"stage_name": "Mid Flower (Bud Formation)",
"medium": "coco",
"ec_target": [1.4, 2.4],
"ec_adjusted_for_water": [1.1, 2.1],
"water_ec": 0.3,
"ppm_500_scale": [700, 1200],
"ppm_700_scale": [980, 1680],
"ph_range": [5.5, 6.5],
"ph_optimal": 5.9,
"npk_ratio": { "N": 1, "P": 3, "K": 3 },
"npk_description": "Heavy PK, reduce N",
"cal_mag_need": "high",
"feeding_tips": [
"Shift to high P-K nutrients",
"Reduce nitrogen in mid-late flower",
"Target EC: 1.4-2.4 mS/cm (700-1200 PPM @500)",
"PK booster in weeks 3-6 of flower",
"CalMag critical - bud growth demands calcium",
"Watch for tip burn = back off 10-20%"
],
"medium_notes": "Coco is inert - feed every watering. CalMag essential. Never let coco dry out completely.",
"powered_by": "GrowVPD Pro",
"app": "https://growvpd.pro",
"api_version": "2.1.0"
}
CO2 enrichment calculator. Determine how much CO2 gas is needed to reach a target concentration in your grow room, and get stage-appropriate CO2 recommendations.
| Parameter | Type | Default | Description |
|---|---|---|---|
| room_m3 | number | - | Room volume in cubic meters |
| target_ppm | number | 1200 | Target CO2 concentration (ppm) |
| current_ppm | number | 400 | Current ambient CO2 (ppm) |
| stage | string | - | Growth stage for recommendations |
{
"room_volume_m3": 2.5,
"room_volume_ft3": 88.3,
"current_ppm": 400.0,
"target_ppm": 1200.0,
"co2_needed_ppm": 800.0,
"co2_per_fill_liters": 2.0,
"co2_per_fill_grams": 4.0,
"estimated_daily_grams": 7.9,
"tank_20lb_duration_days": 1145,
"safety": {
"max_safe_ppm": 5000,
"osha_limit_8h": 5000,
"plant_toxic": "Above 2000ppm provides no benefit and wastes CO2",
"human_risk": "Above 5000ppm causes headaches. Above 30000ppm is life-threatening."
},
"stage": "mid_flower",
"recommended_co2": [800, 1400],
"recommended_ppfd": [600, 900],
"target_status": "optimal",
"powered_by": "GrowVPD Pro",
"app": "https://growvpd.pro",
"api_version": "2.1.0"
}
Watering volume and frequency calculator. Computes optimal water volume per pot based on pot size, medium, growth stage, and current environment conditions. Supports multiple plants.
| Parameter | Type | Default | Description |
|---|---|---|---|
| pot_sizerequired | number | - | Pot volume in liters |
| medium | string | - | Growing medium: soil, coco, hydro, dwc |
| stage | string | - | Growth stage |
| vpd | number | - | Current VPD (affects transpiration rate) |
| temp | number | - | Current temperature |
| plants | number | - | Number of plants (multiplies total) |
{
"pot_size_liters": 11.0,
"medium": "coco",
"stage": "mid_flower",
"stage_name": "Mid Flower (Bud Formation)",
"water_per_plant_ml": 1897,
"water_per_plant_with_runoff_ml": 2276,
"target_runoff_pct": 20,
"watering_frequency": "3-6x daily",
"num_plants": 4,
"daily_total_liters": 30.4,
"weekly_total_liters": 212.5,
"tips": [
"Never let coco dry out completely",
"Always water to 15-20% runoff to prevent salt buildup",
"Feed with every watering (fertigation)",
"Multiple small feeds per day is better than one large feed",
"Automated drip system highly recommended for coco"
],
"vpd_kpa": 1.3,
"vpd_adjustment": "+15% (higher VPD = more water)",
"powered_by": "GrowVPD Pro",
"app": "https://growvpd.pro",
"api_version": "2.1.0"
}
Equipment & Environment
Room equipment sizing calculator. Given your tent/room dimensions and light wattage, get recommended ventilation (CFM), humidifier/dehumidifier capacity, and fan sizing. Accounts for heat load from lights.
| Parameter | Type | Default | Description |
|---|---|---|---|
| lengthrequired | number | - | Room length in meters |
| widthrequired | number | - | Room width in meters |
| height | number | 2 | Room height in meters |
| lights_watts | number | - | Total light wattage |
| target_temp | number | 25 | Target temperature |
| ambient_temp | number | 22 | Ambient/intake temperature |
| plants | number | 4 | Number of plants |
| target_humidity | number | 55 | Target humidity (%) |
{
"room_dimensions": {
"length_m": 1.2,
"width_m": 1.2,
"height_m": 2.0,
"area_m2": 1.44,
"area_ft2": 15.5,
"volume_m3": 2.88,
"volume_ft3": 101.7
},
"extraction_fan": {
"recommended_cfm": 782,
"recommended_m3h": 1328,
"base_cfm": 102,
"light_heat_cfm": 467,
"includes_filter_resistance": true,
"duct_size": "10\" (250mm) or 12\" (300mm)",
"note": "CFM includes 25% for carbon filter and 10% for ducting resistance"
},
"climate_control": {
"ac_btu_needed": 2246,
"ac_note": "AC may not be needed with good ventilation",
"humidifier_liters_per_day": 7.4,
"dehumidifier_liters_per_day": 4.2,
"dehumidifier_note": "Mainly needed in mid-late flower when humidity must be kept low"
},
"lighting": {
"current_watts": 600.0,
"current_wperm2": 416.7,
"recommended_min_watts": 432,
"recommended_optimal_watts": 720,
"recommended_min_wperm2": 300,
"recommended_optimal_wperm2": 500,
"note": "Based on modern LED efficiency (~2.5 umol/J)"
},
"plants": { "num_plants": 4, "plants_per_m2": 2.8, "recommended_per_m2": "4-9 (SOG) or 1-4 (SCROG/LST)" },
"environmental_targets": { "target_temp_c": 25.0, "target_humidity_pct": 55.0, "target_vpd_kpa": 1.07 },
"powered_by": "GrowVPD Pro",
"app": "https://growvpd.pro",
"api_version": "2.1.0"
}
Drying and curing calculator. Estimate dry weight yield, optimal drying duration, and get step-by-step curing instructions based on wet harvest weight, environment, and trim method.
| Parameter | Type | Default | Description |
|---|---|---|---|
| wet_weightrequired | number | - | Wet harvest weight in grams |
| temp | number | - | Drying room temperature |
| humidity | number | - | Drying room humidity (%) |
| method | string | - | Drying method: hang, rack, or wet_trim |
{
"wet_weight_g": 500.0,
"estimated_dry_weight_g": { "min": 90, "max": 135, "typical": 110 },
"weight_loss_pct": "73-82%",
"estimated_drying_days": { "min": 8, "optimal": 10, "max": 14 },
"method": "hang",
"method_description": "Whole plant or branches hung upside down. Slowest, best quality.",
"ideal_conditions": {
"temperature_c": [18, 21],
"temperature_f": [64, 70],
"humidity_pct": [55, 62],
"vpd_kpa": [1.0, 1.4],
"light": "Complete darkness",
"airflow": "Gentle circulation, no direct fan on buds"
},
"readiness_indicators": [
"Small stems snap cleanly (not bend)",
"Outside of buds feel dry but not crispy",
"Larger stems still bend slightly",
"Buds feel slightly springy when squeezed",
"Target weight: ~110g from 500.0g wet"
],
"curing_guide": {
"jar_fill": "75% full (leave air space)",
"burping_week1": "Open jars 2-3x daily for 10-15 minutes",
"burping_week2": "Open jars 1-2x daily for 5-10 minutes",
"burping_week3_plus": "Open jars every 2-3 days",
"target_humidity_in_jar": "58-65% (use Boveda 62% packs)",
"minimum_cure_weeks": 2,
"optimal_cure_weeks": "4-8",
"storage": "Cool (18-22C), dark, airtight. Avoid plastic bags."
},
"current_conditions": { "temperature_c": 20.0, "humidity_pct": 60.0, "vpd_kpa": 0.66 },
"condition_status": "too_humid",
"condition_advice": "VPD too low for drying. Risk of mold. Increase airflow and lower humidity.",
"powered_by": "GrowVPD Pro",
"app": "https://growvpd.pro",
"api_version": "2.1.0"
}
Utilities
Multi-purpose unit converter for grow-related measurements. Converts between Celsius/Fahrenheit, EC/PPM (both 500 and 700 scale), PPFD/Lux, and VPD units. Provide any input and get all conversions.
| Parameter | Type | Default | Description |
|---|---|---|---|
| temp | number | - | Temperature value to convert |
| from | string | - | Source unit for temp: c or f |
| ec | number | - | EC value (mS/cm) to convert to PPM |
| ppm | number | - | PPM value to convert to EC |
| ppm_scale | string | - | PPM scale: 500 or 700 |
| ppfd | number | - | PPFD to convert to Lux |
| lux | number | - | Lux to convert to PPFD |
| vpd | number | - | VPD value for unit info |
{
"ec_ppm": {
"ec_ms_cm": 1.5,
"ec_us_cm": 1500.0,
"ppm_500": 750,
"ppm_700": 1050,
"tds_hanna": 750,
"tds_truncheon": 1050,
"note": "PPM 500 scale (Hanna, Milwaukee) or 700 scale (Truncheon, Bluelab)"
},
"powered_by": "GrowVPD Pro",
"app": "https://growvpd.pro",
"api_version": "2.1.0"
}
API health check endpoint. Returns current API status, version, uptime, and endpoint count. Use this to verify the API is operational before making other calls.
| Parameter | Type | Default | Description |
|---|---|---|---|
| No parameters required | |||
{
"status": "ok",
"uptime_seconds": 111382,
"uptime_human": "1d 6h 56m",
"requests_served": 1484,
"version": "2.1.0",
"endpoints": 18,
"powered_by": "GrowVPD Pro",
"app": "https://growvpd.pro",
"api_version": "2.1.0"
}