soilsidekick 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (332) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +9 -0
  3. data/README.md +267 -0
  4. data/Rakefile +10 -0
  5. data/docs/AIAnalysis.md +22 -0
  6. data/docs/AIAnalysisRecommendationsInner.md +22 -0
  7. data/docs/AIServicesApi.md +327 -0
  8. data/docs/BeginnerGuidance.md +34 -0
  9. data/docs/BeginnerGuidanceDetailedExplanation.md +24 -0
  10. data/docs/BeginnerGuidanceMetadata.md +22 -0
  11. data/docs/BeginnerGuidanceRequest.md +24 -0
  12. data/docs/BeginnerGuidanceRequestLocation.md +20 -0
  13. data/docs/BeginnerGuidanceRequestPlantContext.md +20 -0
  14. data/docs/CalculateCarbonCreditsRequest.md +26 -0
  15. data/docs/CalculateEnvironmentalImpactRequest.md +26 -0
  16. data/docs/CalculateEnvironmentalImpactRequestProposedTreatmentsInner.md +18 -0
  17. data/docs/CalculateEnvironmentalImpactRequestSoilData.md +28 -0
  18. data/docs/CalculateEnvironmentalImpactRequestWaterBodyData.md +18 -0
  19. data/docs/CarbonApi.md +79 -0
  20. data/docs/CarbonCreditCalculation.md +22 -0
  21. data/docs/CarbonCreditCalculationCalculationDetails.md +28 -0
  22. data/docs/CarbonCreditCalculationCalculationDetailsMetadata.md +22 -0
  23. data/docs/CarbonCreditCalculationCreditRecord.md +26 -0
  24. data/docs/ConsumerPlantCareApi.md +247 -0
  25. data/docs/County.md +26 -0
  26. data/docs/CountyLookup200Response.md +18 -0
  27. data/docs/CountyLookupRequest.md +18 -0
  28. data/docs/DynamicCare.md +28 -0
  29. data/docs/DynamicCareCareRecommendations.md +24 -0
  30. data/docs/DynamicCareCareRecommendationsHumidity.md +22 -0
  31. data/docs/DynamicCareCareRecommendationsLight.md +22 -0
  32. data/docs/DynamicCareCareRecommendationsWatering.md +24 -0
  33. data/docs/DynamicCareCurrentConditions.md +26 -0
  34. data/docs/DynamicCareMetadata.md +22 -0
  35. data/docs/DynamicCarePlant.md +22 -0
  36. data/docs/DynamicCareRequest.md +28 -0
  37. data/docs/DynamicCareRequestContainerDetails.md +22 -0
  38. data/docs/DynamicCareRequestEnvironment.md +20 -0
  39. data/docs/DynamicCareRequestLocation.md +22 -0
  40. data/docs/EnvironmentalApi.md +87 -0
  41. data/docs/EnvironmentalImpact.md +22 -0
  42. data/docs/EnvironmentalImpactDetailedAnalysis.md +26 -0
  43. data/docs/EnvironmentalImpactDetailedAnalysisEcoAlternatives.md +18 -0
  44. data/docs/EnvironmentalImpactDetailedAnalysisEcoAlternativesAlternativesInner.md +26 -0
  45. data/docs/EnvironmentalImpactDetailedAnalysisRunoffRisk.md +22 -0
  46. data/docs/EnvironmentalImpactImpactAssessment.md +26 -0
  47. data/docs/Error.md +22 -0
  48. data/docs/GenerateSmartReportSummaryRequest.md +20 -0
  49. data/docs/GenerateVRTPrescriptionRequest.md +22 -0
  50. data/docs/GeographicApi.md +79 -0
  51. data/docs/GetAgriculturalIntelligenceRequest.md +20 -0
  52. data/docs/GetLiveAgriculturalDataRequest.md +24 -0
  53. data/docs/GetPlantingCalendarRequest.md +20 -0
  54. data/docs/GetSatelliteDataRequest.md +20 -0
  55. data/docs/GetSeasonalPlanningAssistantRequest.md +26 -0
  56. data/docs/GetSeasonalPlanningAssistantRequestLocation.md +22 -0
  57. data/docs/GetSoilDataRequest.md +18 -0
  58. data/docs/GetTerritorialWaterAnalyticsRequest.md +22 -0
  59. data/docs/GetTerritorialWaterAnalyticsRequestDateRange.md +20 -0
  60. data/docs/LeafEnginesApi.md +87 -0
  61. data/docs/LeafEnginesCompatibility.md +22 -0
  62. data/docs/LeafEnginesCompatibilityData.md +32 -0
  63. data/docs/LeafEnginesCompatibilityDataBreakdown.md +22 -0
  64. data/docs/LeafEnginesCompatibilityDataBreakdownSoil.md +22 -0
  65. data/docs/LeafEnginesCompatibilityDataMetadata.md +22 -0
  66. data/docs/LeafEnginesCompatibilityUsage.md +20 -0
  67. data/docs/LeafenginesQueryRequest.md +22 -0
  68. data/docs/LeafenginesQueryRequestLocation.md +24 -0
  69. data/docs/LeafenginesQueryRequestOptions.md +22 -0
  70. data/docs/LeafenginesQueryRequestPlant.md +24 -0
  71. data/docs/LeafenginesQueryRequestPlantCareRequirements.md +22 -0
  72. data/docs/LeafenginesQueryRequestPlantCareRequirementsSoilPhRange.md +20 -0
  73. data/docs/LiveAgriculturalData.md +30 -0
  74. data/docs/LiveAgriculturalDataData.md +24 -0
  75. data/docs/PlantingCalendar.md +26 -0
  76. data/docs/SafeIdentification.md +26 -0
  77. data/docs/SafeIdentificationConfidenceBreakdown.md +24 -0
  78. data/docs/SafeIdentificationIdentification.md +22 -0
  79. data/docs/SafeIdentificationIdentificationPrimaryMatch.md +24 -0
  80. data/docs/SafeIdentificationMetadata.md +22 -0
  81. data/docs/SafeIdentificationRequest.md +22 -0
  82. data/docs/SafeIdentificationRequestContext.md +22 -0
  83. data/docs/SafeIdentificationRequestLocation.md +22 -0
  84. data/docs/SafeIdentificationRequestLocationCoordinates.md +20 -0
  85. data/docs/SafeIdentificationSafetyAnalysis.md +24 -0
  86. data/docs/SafeIdentificationSafetyAnalysisLookalikesInner.md +24 -0
  87. data/docs/SatelliteData.md +26 -0
  88. data/docs/SatelliteDataApi.md +79 -0
  89. data/docs/SeasonalPlanningResponse.md +24 -0
  90. data/docs/SeasonalPlanningResponseRecommendations.md +22 -0
  91. data/docs/SeasonalPlanningResponseWeatherData.md +28 -0
  92. data/docs/SmartReportSummary.md +22 -0
  93. data/docs/SmartReportSummarySummary.md +24 -0
  94. data/docs/SoilAnalysisApi.md +231 -0
  95. data/docs/SoilData.md +38 -0
  96. data/docs/TerritorialWaterAnalytics.md +22 -0
  97. data/docs/TerritorialWaterAnalyticsAnalytics.md +24 -0
  98. data/docs/TurboQuantApi.md +87 -0
  99. data/docs/TurboQuantCapabilities.md +30 -0
  100. data/docs/TurboQuantCapabilitiesEstimatedLatencyMs.md +20 -0
  101. data/docs/TurboQuantCapabilitiesRequest.md +22 -0
  102. data/docs/VRTApi.md +79 -0
  103. data/docs/VRTPrescription.md +24 -0
  104. data/docs/VRTPrescriptionZonesInner.md +22 -0
  105. data/docs/VisualCropAnalysis.md +24 -0
  106. data/docs/VisualCropAnalysisAnalysis.md +26 -0
  107. data/docs/VisualCropAnalysisRequest.md +24 -0
  108. data/docs/VisualCropAnalysisRequestLocation.md +22 -0
  109. data/docs/WaterQuality.md +30 -0
  110. data/docs/WaterQualityApi.md +151 -0
  111. data/git_push.sh +57 -0
  112. data/lib/soilsidekick/api/ai_services_api.rb +378 -0
  113. data/lib/soilsidekick/api/carbon_api.rb +90 -0
  114. data/lib/soilsidekick/api/consumer_plant_care_api.rb +289 -0
  115. data/lib/soilsidekick/api/environmental_api.rb +111 -0
  116. data/lib/soilsidekick/api/geographic_api.rb +90 -0
  117. data/lib/soilsidekick/api/leaf_engines_api.rb +111 -0
  118. data/lib/soilsidekick/api/satellite_data_api.rb +90 -0
  119. data/lib/soilsidekick/api/soil_analysis_api.rb +247 -0
  120. data/lib/soilsidekick/api/turbo_quant_api.rb +111 -0
  121. data/lib/soilsidekick/api/vrt_api.rb +90 -0
  122. data/lib/soilsidekick/api/water_quality_api.rb +158 -0
  123. data/lib/soilsidekick/api_client.rb +397 -0
  124. data/lib/soilsidekick/api_error.rb +58 -0
  125. data/lib/soilsidekick/api_model_base.rb +88 -0
  126. data/lib/soilsidekick/configuration.rb +312 -0
  127. data/lib/soilsidekick/models/ai_analysis.rb +167 -0
  128. data/lib/soilsidekick/models/ai_analysis_recommendations_inner.rb +199 -0
  129. data/lib/soilsidekick/models/beginner_guidance.rb +228 -0
  130. data/lib/soilsidekick/models/beginner_guidance_detailed_explanation.rb +179 -0
  131. data/lib/soilsidekick/models/beginner_guidance_metadata.rb +165 -0
  132. data/lib/soilsidekick/models/beginner_guidance_request.rb +229 -0
  133. data/lib/soilsidekick/models/beginner_guidance_request_location.rb +156 -0
  134. data/lib/soilsidekick/models/beginner_guidance_request_plant_context.rb +158 -0
  135. data/lib/soilsidekick/models/calculate_carbon_credits_request.rb +264 -0
  136. data/lib/soilsidekick/models/calculate_environmental_impact_request.rb +247 -0
  137. data/lib/soilsidekick/models/calculate_environmental_impact_request_proposed_treatments_inner.rb +181 -0
  138. data/lib/soilsidekick/models/calculate_environmental_impact_request_soil_data.rb +238 -0
  139. data/lib/soilsidekick/models/calculate_environmental_impact_request_water_body_data.rb +147 -0
  140. data/lib/soilsidekick/models/carbon_credit_calculation.rb +165 -0
  141. data/lib/soilsidekick/models/carbon_credit_calculation_calculation_details.rb +192 -0
  142. data/lib/soilsidekick/models/carbon_credit_calculation_calculation_details_metadata.rb +167 -0
  143. data/lib/soilsidekick/models/carbon_credit_calculation_credit_record.rb +217 -0
  144. data/lib/soilsidekick/models/county.rb +183 -0
  145. data/lib/soilsidekick/models/county_lookup200_response.rb +149 -0
  146. data/lib/soilsidekick/models/county_lookup_request.rb +183 -0
  147. data/lib/soilsidekick/models/dynamic_care.rb +196 -0
  148. data/lib/soilsidekick/models/dynamic_care_care_recommendations.rb +175 -0
  149. data/lib/soilsidekick/models/dynamic_care_care_recommendations_humidity.rb +165 -0
  150. data/lib/soilsidekick/models/dynamic_care_care_recommendations_light.rb +165 -0
  151. data/lib/soilsidekick/models/dynamic_care_care_recommendations_watering.rb +208 -0
  152. data/lib/soilsidekick/models/dynamic_care_current_conditions.rb +183 -0
  153. data/lib/soilsidekick/models/dynamic_care_metadata.rb +165 -0
  154. data/lib/soilsidekick/models/dynamic_care_plant.rb +199 -0
  155. data/lib/soilsidekick/models/dynamic_care_request.rb +262 -0
  156. data/lib/soilsidekick/models/dynamic_care_request_container_details.rb +199 -0
  157. data/lib/soilsidekick/models/dynamic_care_request_environment.rb +203 -0
  158. data/lib/soilsidekick/models/dynamic_care_request_location.rb +194 -0
  159. data/lib/soilsidekick/models/environmental_impact.rb +167 -0
  160. data/lib/soilsidekick/models/environmental_impact_detailed_analysis.rb +183 -0
  161. data/lib/soilsidekick/models/environmental_impact_detailed_analysis_eco_alternatives.rb +149 -0
  162. data/lib/soilsidekick/models/environmental_impact_detailed_analysis_eco_alternatives_alternatives_inner.rb +183 -0
  163. data/lib/soilsidekick/models/environmental_impact_detailed_analysis_runoff_risk.rb +199 -0
  164. data/lib/soilsidekick/models/environmental_impact_impact_assessment.rb +183 -0
  165. data/lib/soilsidekick/models/error.rb +165 -0
  166. data/lib/soilsidekick/models/generate_smart_report_summary_request.rb +215 -0
  167. data/lib/soilsidekick/models/generate_vrt_prescription_request.rb +223 -0
  168. data/lib/soilsidekick/models/get_agricultural_intelligence_request.rb +225 -0
  169. data/lib/soilsidekick/models/get_live_agricultural_data_request.rb +277 -0
  170. data/lib/soilsidekick/models/get_planting_calendar_request.rb +201 -0
  171. data/lib/soilsidekick/models/get_satellite_data_request.rb +226 -0
  172. data/lib/soilsidekick/models/get_seasonal_planning_assistant_request.rb +245 -0
  173. data/lib/soilsidekick/models/get_seasonal_planning_assistant_request_location.rb +165 -0
  174. data/lib/soilsidekick/models/get_soil_data_request.rb +176 -0
  175. data/lib/soilsidekick/models/get_territorial_water_analytics_request.rb +201 -0
  176. data/lib/soilsidekick/models/get_territorial_water_analytics_request_date_range.rb +156 -0
  177. data/lib/soilsidekick/models/leaf_engines_compatibility.rb +165 -0
  178. data/lib/soilsidekick/models/leaf_engines_compatibility_data.rb +247 -0
  179. data/lib/soilsidekick/models/leaf_engines_compatibility_data_breakdown.rb +165 -0
  180. data/lib/soilsidekick/models/leaf_engines_compatibility_data_breakdown_soil.rb +169 -0
  181. data/lib/soilsidekick/models/leaf_engines_compatibility_data_metadata.rb +167 -0
  182. data/lib/soilsidekick/models/leaf_engines_compatibility_usage.rb +156 -0
  183. data/lib/soilsidekick/models/leafengines_query_request.rb +199 -0
  184. data/lib/soilsidekick/models/leafengines_query_request_location.rb +174 -0
  185. data/lib/soilsidekick/models/leafengines_query_request_options.rb +165 -0
  186. data/lib/soilsidekick/models/leafengines_query_request_plant.rb +174 -0
  187. data/lib/soilsidekick/models/leafengines_query_request_plant_care_requirements.rb +211 -0
  188. data/lib/soilsidekick/models/leafengines_query_request_plant_care_requirements_soil_ph_range.rb +156 -0
  189. data/lib/soilsidekick/models/live_agricultural_data.rb +237 -0
  190. data/lib/soilsidekick/models/live_agricultural_data_data.rb +174 -0
  191. data/lib/soilsidekick/models/planting_calendar.rb +185 -0
  192. data/lib/soilsidekick/models/safe_identification.rb +184 -0
  193. data/lib/soilsidekick/models/safe_identification_confidence_breakdown.rb +174 -0
  194. data/lib/soilsidekick/models/safe_identification_identification.rb +200 -0
  195. data/lib/soilsidekick/models/safe_identification_identification_primary_match.rb +175 -0
  196. data/lib/soilsidekick/models/safe_identification_metadata.rb +167 -0
  197. data/lib/soilsidekick/models/safe_identification_request.rb +183 -0
  198. data/lib/soilsidekick/models/safe_identification_request_context.rb +223 -0
  199. data/lib/soilsidekick/models/safe_identification_request_location.rb +205 -0
  200. data/lib/soilsidekick/models/safe_identification_request_location_coordinates.rb +156 -0
  201. data/lib/soilsidekick/models/safe_identification_safety_analysis.rb +215 -0
  202. data/lib/soilsidekick/models/safe_identification_safety_analysis_lookalikes_inner.rb +177 -0
  203. data/lib/soilsidekick/models/satellite_data.rb +185 -0
  204. data/lib/soilsidekick/models/seasonal_planning_response.rb +174 -0
  205. data/lib/soilsidekick/models/seasonal_planning_response_recommendations.rb +169 -0
  206. data/lib/soilsidekick/models/seasonal_planning_response_weather_data.rb +192 -0
  207. data/lib/soilsidekick/models/smart_report_summary.rb +165 -0
  208. data/lib/soilsidekick/models/smart_report_summary_summary.rb +178 -0
  209. data/lib/soilsidekick/models/soil_data.rb +239 -0
  210. data/lib/soilsidekick/models/territorial_water_analytics.rb +165 -0
  211. data/lib/soilsidekick/models/territorial_water_analytics_analytics.rb +174 -0
  212. data/lib/soilsidekick/models/turbo_quant_capabilities.rb +253 -0
  213. data/lib/soilsidekick/models/turbo_quant_capabilities_estimated_latency_ms.rb +156 -0
  214. data/lib/soilsidekick/models/turbo_quant_capabilities_request.rb +201 -0
  215. data/lib/soilsidekick/models/visual_crop_analysis.rb +174 -0
  216. data/lib/soilsidekick/models/visual_crop_analysis_analysis.rb +219 -0
  217. data/lib/soilsidekick/models/visual_crop_analysis_request.rb +234 -0
  218. data/lib/soilsidekick/models/visual_crop_analysis_request_location.rb +165 -0
  219. data/lib/soilsidekick/models/vrt_prescription.rb +176 -0
  220. data/lib/soilsidekick/models/vrt_prescription_zones_inner.rb +165 -0
  221. data/lib/soilsidekick/models/water_quality.rb +235 -0
  222. data/lib/soilsidekick/version.rb +15 -0
  223. data/lib/soilsidekick.rb +146 -0
  224. data/soilsidekick.gemspec +39 -0
  225. data/spec/api/ai_services_api_spec.rb +95 -0
  226. data/spec/api/carbon_api_spec.rb +47 -0
  227. data/spec/api/consumer_plant_care_api_spec.rb +80 -0
  228. data/spec/api/environmental_api_spec.rb +50 -0
  229. data/spec/api/geographic_api_spec.rb +47 -0
  230. data/spec/api/leaf_engines_api_spec.rb +50 -0
  231. data/spec/api/satellite_data_api_spec.rb +47 -0
  232. data/spec/api/soil_analysis_api_spec.rb +74 -0
  233. data/spec/api/turbo_quant_api_spec.rb +50 -0
  234. data/spec/api/vrt_api_spec.rb +47 -0
  235. data/spec/api/water_quality_api_spec.rb +59 -0
  236. data/spec/models/ai_analysis_recommendations_inner_spec.rb +52 -0
  237. data/spec/models/ai_analysis_spec.rb +48 -0
  238. data/spec/models/beginner_guidance_detailed_explanation_spec.rb +54 -0
  239. data/spec/models/beginner_guidance_metadata_spec.rb +48 -0
  240. data/spec/models/beginner_guidance_request_location_spec.rb +42 -0
  241. data/spec/models/beginner_guidance_request_plant_context_spec.rb +42 -0
  242. data/spec/models/beginner_guidance_request_spec.rb +58 -0
  243. data/spec/models/beginner_guidance_spec.rb +84 -0
  244. data/spec/models/calculate_carbon_credits_request_spec.rb +64 -0
  245. data/spec/models/calculate_environmental_impact_request_proposed_treatments_inner_spec.rb +40 -0
  246. data/spec/models/calculate_environmental_impact_request_soil_data_spec.rb +74 -0
  247. data/spec/models/calculate_environmental_impact_request_spec.rb +60 -0
  248. data/spec/models/calculate_environmental_impact_request_water_body_data_spec.rb +36 -0
  249. data/spec/models/carbon_credit_calculation_calculation_details_metadata_spec.rb +48 -0
  250. data/spec/models/carbon_credit_calculation_calculation_details_spec.rb +66 -0
  251. data/spec/models/carbon_credit_calculation_credit_record_spec.rb +64 -0
  252. data/spec/models/carbon_credit_calculation_spec.rb +48 -0
  253. data/spec/models/county_lookup200_response_spec.rb +36 -0
  254. data/spec/models/county_lookup_request_spec.rb +36 -0
  255. data/spec/models/county_spec.rb +60 -0
  256. data/spec/models/dynamic_care_care_recommendations_humidity_spec.rb +48 -0
  257. data/spec/models/dynamic_care_care_recommendations_light_spec.rb +48 -0
  258. data/spec/models/dynamic_care_care_recommendations_spec.rb +54 -0
  259. data/spec/models/dynamic_care_care_recommendations_watering_spec.rb +58 -0
  260. data/spec/models/dynamic_care_current_conditions_spec.rb +60 -0
  261. data/spec/models/dynamic_care_metadata_spec.rb +48 -0
  262. data/spec/models/dynamic_care_plant_spec.rb +52 -0
  263. data/spec/models/dynamic_care_request_container_details_spec.rb +52 -0
  264. data/spec/models/dynamic_care_request_environment_spec.rb +50 -0
  265. data/spec/models/dynamic_care_request_location_spec.rb +48 -0
  266. data/spec/models/dynamic_care_request_spec.rb +70 -0
  267. data/spec/models/dynamic_care_spec.rb +66 -0
  268. data/spec/models/environmental_impact_detailed_analysis_eco_alternatives_alternatives_inner_spec.rb +60 -0
  269. data/spec/models/environmental_impact_detailed_analysis_eco_alternatives_spec.rb +36 -0
  270. data/spec/models/environmental_impact_detailed_analysis_runoff_risk_spec.rb +52 -0
  271. data/spec/models/environmental_impact_detailed_analysis_spec.rb +60 -0
  272. data/spec/models/environmental_impact_impact_assessment_spec.rb +60 -0
  273. data/spec/models/environmental_impact_spec.rb +48 -0
  274. data/spec/models/error_spec.rb +48 -0
  275. data/spec/models/generate_smart_report_summary_request_spec.rb +46 -0
  276. data/spec/models/generate_vrt_prescription_request_spec.rb +52 -0
  277. data/spec/models/get_agricultural_intelligence_request_spec.rb +46 -0
  278. data/spec/models/get_live_agricultural_data_request_spec.rb +58 -0
  279. data/spec/models/get_planting_calendar_request_spec.rb +42 -0
  280. data/spec/models/get_satellite_data_request_spec.rb +42 -0
  281. data/spec/models/get_seasonal_planning_assistant_request_location_spec.rb +48 -0
  282. data/spec/models/get_seasonal_planning_assistant_request_spec.rb +64 -0
  283. data/spec/models/get_soil_data_request_spec.rb +36 -0
  284. data/spec/models/get_territorial_water_analytics_request_date_range_spec.rb +42 -0
  285. data/spec/models/get_territorial_water_analytics_request_spec.rb +52 -0
  286. data/spec/models/leaf_engines_compatibility_data_breakdown_soil_spec.rb +48 -0
  287. data/spec/models/leaf_engines_compatibility_data_breakdown_spec.rb +48 -0
  288. data/spec/models/leaf_engines_compatibility_data_metadata_spec.rb +48 -0
  289. data/spec/models/leaf_engines_compatibility_data_spec.rb +82 -0
  290. data/spec/models/leaf_engines_compatibility_spec.rb +48 -0
  291. data/spec/models/leaf_engines_compatibility_usage_spec.rb +42 -0
  292. data/spec/models/leafengines_query_request_location_spec.rb +54 -0
  293. data/spec/models/leafengines_query_request_options_spec.rb +48 -0
  294. data/spec/models/leafengines_query_request_plant_care_requirements_soil_ph_range_spec.rb +42 -0
  295. data/spec/models/leafengines_query_request_plant_care_requirements_spec.rb +56 -0
  296. data/spec/models/leafengines_query_request_plant_spec.rb +54 -0
  297. data/spec/models/leafengines_query_request_spec.rb +48 -0
  298. data/spec/models/live_agricultural_data_data_spec.rb +54 -0
  299. data/spec/models/live_agricultural_data_spec.rb +76 -0
  300. data/spec/models/planting_calendar_spec.rb +60 -0
  301. data/spec/models/safe_identification_confidence_breakdown_spec.rb +54 -0
  302. data/spec/models/safe_identification_identification_primary_match_spec.rb +54 -0
  303. data/spec/models/safe_identification_identification_spec.rb +52 -0
  304. data/spec/models/safe_identification_metadata_spec.rb +48 -0
  305. data/spec/models/safe_identification_request_context_spec.rb +60 -0
  306. data/spec/models/safe_identification_request_location_coordinates_spec.rb +42 -0
  307. data/spec/models/safe_identification_request_location_spec.rb +48 -0
  308. data/spec/models/safe_identification_request_spec.rb +48 -0
  309. data/spec/models/safe_identification_safety_analysis_lookalikes_inner_spec.rb +54 -0
  310. data/spec/models/safe_identification_safety_analysis_spec.rb +58 -0
  311. data/spec/models/safe_identification_spec.rb +60 -0
  312. data/spec/models/satellite_data_spec.rb +60 -0
  313. data/spec/models/seasonal_planning_response_recommendations_spec.rb +48 -0
  314. data/spec/models/seasonal_planning_response_spec.rb +54 -0
  315. data/spec/models/seasonal_planning_response_weather_data_spec.rb +66 -0
  316. data/spec/models/smart_report_summary_spec.rb +48 -0
  317. data/spec/models/smart_report_summary_summary_spec.rb +54 -0
  318. data/spec/models/soil_data_spec.rb +96 -0
  319. data/spec/models/territorial_water_analytics_analytics_spec.rb +54 -0
  320. data/spec/models/territorial_water_analytics_spec.rb +48 -0
  321. data/spec/models/turbo_quant_capabilities_estimated_latency_ms_spec.rb +42 -0
  322. data/spec/models/turbo_quant_capabilities_request_spec.rb +52 -0
  323. data/spec/models/turbo_quant_capabilities_spec.rb +80 -0
  324. data/spec/models/visual_crop_analysis_analysis_spec.rb +64 -0
  325. data/spec/models/visual_crop_analysis_request_location_spec.rb +48 -0
  326. data/spec/models/visual_crop_analysis_request_spec.rb +58 -0
  327. data/spec/models/visual_crop_analysis_spec.rb +54 -0
  328. data/spec/models/vrt_prescription_spec.rb +54 -0
  329. data/spec/models/vrt_prescription_zones_inner_spec.rb +48 -0
  330. data/spec/models/water_quality_spec.rb +76 -0
  331. data/spec/spec_helper.rb +111 -0
  332. metadata +543 -0
@@ -0,0 +1,22 @@
1
+ # SoilSidekick::CarbonCreditCalculation
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **success** | **Boolean** | | [optional] |
8
+ | **credit_record** | [**CarbonCreditCalculationCreditRecord**](CarbonCreditCalculationCreditRecord.md) | | [optional] |
9
+ | **calculation_details** | [**CarbonCreditCalculationCalculationDetails**](CarbonCreditCalculationCalculationDetails.md) | | [optional] |
10
+
11
+ ## Example
12
+
13
+ ```ruby
14
+ require 'soilsidekick'
15
+
16
+ instance = SoilSidekick::CarbonCreditCalculation.new(
17
+ success: null,
18
+ credit_record: null,
19
+ calculation_details: null
20
+ )
21
+ ```
22
+
@@ -0,0 +1,28 @@
1
+ # SoilSidekick::CarbonCreditCalculationCalculationDetails
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **credits_earned** | **Float** | | [optional] |
8
+ | **calculation_method** | **String** | | [optional] |
9
+ | **baseline_carbon** | **Float** | | [optional] |
10
+ | **enhanced_carbon** | **Float** | | [optional] |
11
+ | **verification_confidence** | **Float** | | [optional] |
12
+ | **metadata** | [**CarbonCreditCalculationCalculationDetailsMetadata**](CarbonCreditCalculationCalculationDetailsMetadata.md) | | [optional] |
13
+
14
+ ## Example
15
+
16
+ ```ruby
17
+ require 'soilsidekick'
18
+
19
+ instance = SoilSidekick::CarbonCreditCalculationCalculationDetails.new(
20
+ credits_earned: null,
21
+ calculation_method: null,
22
+ baseline_carbon: null,
23
+ enhanced_carbon: null,
24
+ verification_confidence: null,
25
+ metadata: null
26
+ )
27
+ ```
28
+
@@ -0,0 +1,22 @@
1
+ # SoilSidekick::CarbonCreditCalculationCalculationDetailsMetadata
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **calculation_factors** | **Object** | | [optional] |
8
+ | **data_sources** | **Array<String>** | | [optional] |
9
+ | **confidence_score** | **Float** | | [optional] |
10
+
11
+ ## Example
12
+
13
+ ```ruby
14
+ require 'soilsidekick'
15
+
16
+ instance = SoilSidekick::CarbonCreditCalculationCalculationDetailsMetadata.new(
17
+ calculation_factors: null,
18
+ data_sources: null,
19
+ confidence_score: null
20
+ )
21
+ ```
22
+
@@ -0,0 +1,26 @@
1
+ # SoilSidekick::CarbonCreditCalculationCreditRecord
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **id** | **String** | | [optional] |
8
+ | **field_name** | **String** | | [optional] |
9
+ | **field_size_acres** | **Float** | | [optional] |
10
+ | **credits_earned** | **Float** | | [optional] |
11
+ | **verification_status** | **String** | | [optional] |
12
+
13
+ ## Example
14
+
15
+ ```ruby
16
+ require 'soilsidekick'
17
+
18
+ instance = SoilSidekick::CarbonCreditCalculationCreditRecord.new(
19
+ id: null,
20
+ field_name: null,
21
+ field_size_acres: null,
22
+ credits_earned: null,
23
+ verification_status: null
24
+ )
25
+ ```
26
+
@@ -0,0 +1,247 @@
1
+ # SoilSidekick::ConsumerPlantCareApi
2
+
3
+ All URIs are relative to *https://wzgnxkoeqzvueypwzvyn.supabase.co/functions/v1*
4
+
5
+ | Method | HTTP request | Description |
6
+ | ------ | ------------ | ----------- |
7
+ | [**beginner_guidance**](ConsumerPlantCareApi.md#beginner_guidance) | **POST** /beginner-guidance | Beginner-friendly plant guidance without jargon |
8
+ | [**dynamic_care**](ConsumerPlantCareApi.md#dynamic_care) | **POST** /dynamic-care | Hyper-localized dynamic plant care recommendations |
9
+ | [**safe_identification**](ConsumerPlantCareApi.md#safe_identification) | **POST** /safe-identification | Safe plant identification with toxic lookalike warnings |
10
+
11
+
12
+ ## beginner_guidance
13
+
14
+ > <BeginnerGuidance> beginner_guidance(beginner_guidance_request, opts)
15
+
16
+ Beginner-friendly plant guidance without jargon
17
+
18
+ Judgment-free, accessible plant guidance that solves community gatekeeping issues. This endpoint: - Translates scientific jargon into plain language - Never makes users feel stupid for asking about common plants - Uses progressive disclosure (simple answer first, details on request) - Provides encouraging, supportive tone - Offers practical \"what do I do right now\" guidance
19
+
20
+ ### Examples
21
+
22
+ ```ruby
23
+ require 'time'
24
+ require 'soilsidekick'
25
+ # setup authorization
26
+ SoilSidekick.configure do |config|
27
+ # Configure API key authorization: ApiKeyAuth
28
+ config.api_key['x-api-key'] = 'YOUR API KEY'
29
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
30
+ # config.api_key_prefix['x-api-key'] = 'Bearer'
31
+ end
32
+
33
+ api_instance = SoilSidekick::ConsumerPlantCareApi.new
34
+ beginner_guidance_request = SoilSidekick::BeginnerGuidanceRequest.new({question: 'My plant has yellow leaves, what's wrong?'}) # BeginnerGuidanceRequest |
35
+ opts = {
36
+ x_tq_context_mode: 4096, # Integer | TurboQuant extended context window size (tokens). With 3-bit KV cache, context windows up to 24K tokens are feasible within the same memory budget as standard 4K.
37
+ x_tq_kv_cache_hint: 'none', # String | KV cache management hint. - `none`: No caching (default) - `reuse`: Reuse KV cache from previous request in same session (40-60% compute savings) - `persist`: Persist cache to disk for cross-session reuse
38
+ x_tq_model_tier: 'auto' # String | Preferred model tier for inference. - `auto`: Server selects optimal model based on device capabilities - `gemma-2b`: Lightweight model (~0.5GB KV with TQ) - `gemma-7b`: Full model, standard KV cache - `gemma-7b-tq`: Full model with TurboQuant 3-bit KV cache (~1.3GB)
39
+ }
40
+
41
+ begin
42
+ # Beginner-friendly plant guidance without jargon
43
+ result = api_instance.beginner_guidance(beginner_guidance_request, opts)
44
+ p result
45
+ rescue SoilSidekick::ApiError => e
46
+ puts "Error when calling ConsumerPlantCareApi->beginner_guidance: #{e}"
47
+ end
48
+ ```
49
+
50
+ #### Using the beginner_guidance_with_http_info variant
51
+
52
+ This returns an Array which contains the response data, status code and headers.
53
+
54
+ > <Array(<BeginnerGuidance>, Integer, Hash)> beginner_guidance_with_http_info(beginner_guidance_request, opts)
55
+
56
+ ```ruby
57
+ begin
58
+ # Beginner-friendly plant guidance without jargon
59
+ data, status_code, headers = api_instance.beginner_guidance_with_http_info(beginner_guidance_request, opts)
60
+ p status_code # => 2xx
61
+ p headers # => { ... }
62
+ p data # => <BeginnerGuidance>
63
+ rescue SoilSidekick::ApiError => e
64
+ puts "Error when calling ConsumerPlantCareApi->beginner_guidance_with_http_info: #{e}"
65
+ end
66
+ ```
67
+
68
+ ### Parameters
69
+
70
+ | Name | Type | Description | Notes |
71
+ | ---- | ---- | ----------- | ----- |
72
+ | **beginner_guidance_request** | [**BeginnerGuidanceRequest**](BeginnerGuidanceRequest.md) | | |
73
+ | **x_tq_context_mode** | **Integer** | TurboQuant extended context window size (tokens). With 3-bit KV cache, context windows up to 24K tokens are feasible within the same memory budget as standard 4K. | [optional][default to 4096] |
74
+ | **x_tq_kv_cache_hint** | **String** | KV cache management hint. - &#x60;none&#x60;: No caching (default) - &#x60;reuse&#x60;: Reuse KV cache from previous request in same session (40-60% compute savings) - &#x60;persist&#x60;: Persist cache to disk for cross-session reuse | [optional][default to &#39;none&#39;] |
75
+ | **x_tq_model_tier** | **String** | Preferred model tier for inference. - &#x60;auto&#x60;: Server selects optimal model based on device capabilities - &#x60;gemma-2b&#x60;: Lightweight model (~0.5GB KV with TQ) - &#x60;gemma-7b&#x60;: Full model, standard KV cache - &#x60;gemma-7b-tq&#x60;: Full model with TurboQuant 3-bit KV cache (~1.3GB) | [optional][default to &#39;auto&#39;] |
76
+
77
+ ### Return type
78
+
79
+ [**BeginnerGuidance**](BeginnerGuidance.md)
80
+
81
+ ### Authorization
82
+
83
+ [ApiKeyAuth](../README.md#ApiKeyAuth)
84
+
85
+ ### HTTP request headers
86
+
87
+ - **Content-Type**: application/json
88
+ - **Accept**: application/json
89
+
90
+
91
+ ## dynamic_care
92
+
93
+ > <DynamicCare> dynamic_care(dynamic_care_request, opts)
94
+
95
+ Hyper-localized dynamic plant care recommendations
96
+
97
+ Real-time, environment-aware care recommendations that solve the \"generic advice\" problem. Unlike static \"water every 7 days\" recommendations, this endpoint: - Adjusts watering based on current humidity, temperature, and recent rainfall - Considers container type, soil composition, and drainage - Factors in seasonal changes and indoor environment conditions - Accounts for plant maturity and growth phase - Provides actionable guidance, not rigid schedules
98
+
99
+ ### Examples
100
+
101
+ ```ruby
102
+ require 'time'
103
+ require 'soilsidekick'
104
+ # setup authorization
105
+ SoilSidekick.configure do |config|
106
+ # Configure API key authorization: ApiKeyAuth
107
+ config.api_key['x-api-key'] = 'YOUR API KEY'
108
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
109
+ # config.api_key_prefix['x-api-key'] = 'Bearer'
110
+ end
111
+
112
+ api_instance = SoilSidekick::ConsumerPlantCareApi.new
113
+ dynamic_care_request = SoilSidekick::DynamicCareRequest.new({plant_species: 'Monstera deliciosa', location: SoilSidekick::DynamicCareRequestLocation.new({county_fips: 'county_fips_example'})}) # DynamicCareRequest |
114
+ opts = {
115
+ x_tq_context_mode: 4096, # Integer | TurboQuant extended context window size (tokens). With 3-bit KV cache, context windows up to 24K tokens are feasible within the same memory budget as standard 4K.
116
+ x_tq_kv_cache_hint: 'none', # String | KV cache management hint. - `none`: No caching (default) - `reuse`: Reuse KV cache from previous request in same session (40-60% compute savings) - `persist`: Persist cache to disk for cross-session reuse
117
+ x_tq_model_tier: 'auto' # String | Preferred model tier for inference. - `auto`: Server selects optimal model based on device capabilities - `gemma-2b`: Lightweight model (~0.5GB KV with TQ) - `gemma-7b`: Full model, standard KV cache - `gemma-7b-tq`: Full model with TurboQuant 3-bit KV cache (~1.3GB)
118
+ }
119
+
120
+ begin
121
+ # Hyper-localized dynamic plant care recommendations
122
+ result = api_instance.dynamic_care(dynamic_care_request, opts)
123
+ p result
124
+ rescue SoilSidekick::ApiError => e
125
+ puts "Error when calling ConsumerPlantCareApi->dynamic_care: #{e}"
126
+ end
127
+ ```
128
+
129
+ #### Using the dynamic_care_with_http_info variant
130
+
131
+ This returns an Array which contains the response data, status code and headers.
132
+
133
+ > <Array(<DynamicCare>, Integer, Hash)> dynamic_care_with_http_info(dynamic_care_request, opts)
134
+
135
+ ```ruby
136
+ begin
137
+ # Hyper-localized dynamic plant care recommendations
138
+ data, status_code, headers = api_instance.dynamic_care_with_http_info(dynamic_care_request, opts)
139
+ p status_code # => 2xx
140
+ p headers # => { ... }
141
+ p data # => <DynamicCare>
142
+ rescue SoilSidekick::ApiError => e
143
+ puts "Error when calling ConsumerPlantCareApi->dynamic_care_with_http_info: #{e}"
144
+ end
145
+ ```
146
+
147
+ ### Parameters
148
+
149
+ | Name | Type | Description | Notes |
150
+ | ---- | ---- | ----------- | ----- |
151
+ | **dynamic_care_request** | [**DynamicCareRequest**](DynamicCareRequest.md) | | |
152
+ | **x_tq_context_mode** | **Integer** | TurboQuant extended context window size (tokens). With 3-bit KV cache, context windows up to 24K tokens are feasible within the same memory budget as standard 4K. | [optional][default to 4096] |
153
+ | **x_tq_kv_cache_hint** | **String** | KV cache management hint. - &#x60;none&#x60;: No caching (default) - &#x60;reuse&#x60;: Reuse KV cache from previous request in same session (40-60% compute savings) - &#x60;persist&#x60;: Persist cache to disk for cross-session reuse | [optional][default to &#39;none&#39;] |
154
+ | **x_tq_model_tier** | **String** | Preferred model tier for inference. - &#x60;auto&#x60;: Server selects optimal model based on device capabilities - &#x60;gemma-2b&#x60;: Lightweight model (~0.5GB KV with TQ) - &#x60;gemma-7b&#x60;: Full model, standard KV cache - &#x60;gemma-7b-tq&#x60;: Full model with TurboQuant 3-bit KV cache (~1.3GB) | [optional][default to &#39;auto&#39;] |
155
+
156
+ ### Return type
157
+
158
+ [**DynamicCare**](DynamicCare.md)
159
+
160
+ ### Authorization
161
+
162
+ [ApiKeyAuth](../README.md#ApiKeyAuth)
163
+
164
+ ### HTTP request headers
165
+
166
+ - **Content-Type**: application/json
167
+ - **Accept**: application/json
168
+
169
+
170
+ ## safe_identification
171
+
172
+ > <SafeIdentification> safe_identification(safe_identification_request, opts)
173
+
174
+ Safe plant identification with toxic lookalike warnings
175
+
176
+ Environmentally-contextualized plant identification that addresses misidentification concerns. Unlike generic plant ID, this endpoint: - Checks against a toxic lookalike database with visual similarity scores - Uses environmental context (soil, climate, regional flora) to weight identification probability - Provides confidence breakdowns showing why alternatives were considered - Issues explicit warnings for dangerous lookalikes (Poison Hemlock vs Wild Carrot) - Accounts for plant growth stage (seedling identification challenges)
177
+
178
+ ### Examples
179
+
180
+ ```ruby
181
+ require 'time'
182
+ require 'soilsidekick'
183
+ # setup authorization
184
+ SoilSidekick.configure do |config|
185
+ # Configure API key authorization: ApiKeyAuth
186
+ config.api_key['x-api-key'] = 'YOUR API KEY'
187
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
188
+ # config.api_key_prefix['x-api-key'] = 'Bearer'
189
+ end
190
+
191
+ api_instance = SoilSidekick::ConsumerPlantCareApi.new
192
+ safe_identification_request = SoilSidekick::SafeIdentificationRequest.new({image: 'image_example'}) # SafeIdentificationRequest |
193
+ opts = {
194
+ x_tq_context_mode: 4096, # Integer | TurboQuant extended context window size (tokens). With 3-bit KV cache, context windows up to 24K tokens are feasible within the same memory budget as standard 4K.
195
+ x_tq_kv_cache_hint: 'none', # String | KV cache management hint. - `none`: No caching (default) - `reuse`: Reuse KV cache from previous request in same session (40-60% compute savings) - `persist`: Persist cache to disk for cross-session reuse
196
+ x_tq_model_tier: 'auto' # String | Preferred model tier for inference. - `auto`: Server selects optimal model based on device capabilities - `gemma-2b`: Lightweight model (~0.5GB KV with TQ) - `gemma-7b`: Full model, standard KV cache - `gemma-7b-tq`: Full model with TurboQuant 3-bit KV cache (~1.3GB)
197
+ }
198
+
199
+ begin
200
+ # Safe plant identification with toxic lookalike warnings
201
+ result = api_instance.safe_identification(safe_identification_request, opts)
202
+ p result
203
+ rescue SoilSidekick::ApiError => e
204
+ puts "Error when calling ConsumerPlantCareApi->safe_identification: #{e}"
205
+ end
206
+ ```
207
+
208
+ #### Using the safe_identification_with_http_info variant
209
+
210
+ This returns an Array which contains the response data, status code and headers.
211
+
212
+ > <Array(<SafeIdentification>, Integer, Hash)> safe_identification_with_http_info(safe_identification_request, opts)
213
+
214
+ ```ruby
215
+ begin
216
+ # Safe plant identification with toxic lookalike warnings
217
+ data, status_code, headers = api_instance.safe_identification_with_http_info(safe_identification_request, opts)
218
+ p status_code # => 2xx
219
+ p headers # => { ... }
220
+ p data # => <SafeIdentification>
221
+ rescue SoilSidekick::ApiError => e
222
+ puts "Error when calling ConsumerPlantCareApi->safe_identification_with_http_info: #{e}"
223
+ end
224
+ ```
225
+
226
+ ### Parameters
227
+
228
+ | Name | Type | Description | Notes |
229
+ | ---- | ---- | ----------- | ----- |
230
+ | **safe_identification_request** | [**SafeIdentificationRequest**](SafeIdentificationRequest.md) | | |
231
+ | **x_tq_context_mode** | **Integer** | TurboQuant extended context window size (tokens). With 3-bit KV cache, context windows up to 24K tokens are feasible within the same memory budget as standard 4K. | [optional][default to 4096] |
232
+ | **x_tq_kv_cache_hint** | **String** | KV cache management hint. - &#x60;none&#x60;: No caching (default) - &#x60;reuse&#x60;: Reuse KV cache from previous request in same session (40-60% compute savings) - &#x60;persist&#x60;: Persist cache to disk for cross-session reuse | [optional][default to &#39;none&#39;] |
233
+ | **x_tq_model_tier** | **String** | Preferred model tier for inference. - &#x60;auto&#x60;: Server selects optimal model based on device capabilities - &#x60;gemma-2b&#x60;: Lightweight model (~0.5GB KV with TQ) - &#x60;gemma-7b&#x60;: Full model, standard KV cache - &#x60;gemma-7b-tq&#x60;: Full model with TurboQuant 3-bit KV cache (~1.3GB) | [optional][default to &#39;auto&#39;] |
234
+
235
+ ### Return type
236
+
237
+ [**SafeIdentification**](SafeIdentification.md)
238
+
239
+ ### Authorization
240
+
241
+ [ApiKeyAuth](../README.md#ApiKeyAuth)
242
+
243
+ ### HTTP request headers
244
+
245
+ - **Content-Type**: application/json
246
+ - **Accept**: application/json
247
+
data/docs/County.md ADDED
@@ -0,0 +1,26 @@
1
+ # SoilSidekick::County
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **id** | **String** | | [optional] |
8
+ | **county_name** | **String** | | [optional] |
9
+ | **state_name** | **String** | | [optional] |
10
+ | **state_code** | **String** | | [optional] |
11
+ | **fips_code** | **String** | | [optional] |
12
+
13
+ ## Example
14
+
15
+ ```ruby
16
+ require 'soilsidekick'
17
+
18
+ instance = SoilSidekick::County.new(
19
+ id: null,
20
+ county_name: null,
21
+ state_name: null,
22
+ state_code: null,
23
+ fips_code: null
24
+ )
25
+ ```
26
+
@@ -0,0 +1,18 @@
1
+ # SoilSidekick::CountyLookup200Response
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **counties** | [**Array&lt;County&gt;**](County.md) | | [optional] |
8
+
9
+ ## Example
10
+
11
+ ```ruby
12
+ require 'soilsidekick'
13
+
14
+ instance = SoilSidekick::CountyLookup200Response.new(
15
+ counties: null
16
+ )
17
+ ```
18
+
@@ -0,0 +1,18 @@
1
+ # SoilSidekick::CountyLookupRequest
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **term** | **String** | Search term (county name, state, or FIPS) | |
8
+
9
+ ## Example
10
+
11
+ ```ruby
12
+ require 'soilsidekick'
13
+
14
+ instance = SoilSidekick::CountyLookupRequest.new(
15
+ term: Miami-Dade
16
+ )
17
+ ```
18
+
@@ -0,0 +1,28 @@
1
+ # SoilSidekick::DynamicCare
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **success** | **Boolean** | | [optional] |
8
+ | **plant** | [**DynamicCarePlant**](DynamicCarePlant.md) | | [optional] |
9
+ | **current_conditions** | [**DynamicCareCurrentConditions**](DynamicCareCurrentConditions.md) | | [optional] |
10
+ | **care_recommendations** | [**DynamicCareCareRecommendations**](DynamicCareCareRecommendations.md) | | [optional] |
11
+ | **warnings** | **Array&lt;String&gt;** | Any urgent care warnings | [optional] |
12
+ | **metadata** | [**DynamicCareMetadata**](DynamicCareMetadata.md) | | [optional] |
13
+
14
+ ## Example
15
+
16
+ ```ruby
17
+ require 'soilsidekick'
18
+
19
+ instance = SoilSidekick::DynamicCare.new(
20
+ success: null,
21
+ plant: null,
22
+ current_conditions: null,
23
+ care_recommendations: null,
24
+ warnings: null,
25
+ metadata: null
26
+ )
27
+ ```
28
+
@@ -0,0 +1,24 @@
1
+ # SoilSidekick::DynamicCareCareRecommendations
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **watering** | [**DynamicCareCareRecommendationsWatering**](DynamicCareCareRecommendationsWatering.md) | | [optional] |
8
+ | **light** | [**DynamicCareCareRecommendationsLight**](DynamicCareCareRecommendationsLight.md) | | [optional] |
9
+ | **humidity** | [**DynamicCareCareRecommendationsHumidity**](DynamicCareCareRecommendationsHumidity.md) | | [optional] |
10
+ | **seasonal_notes** | **String** | Season-specific care adjustments | [optional] |
11
+
12
+ ## Example
13
+
14
+ ```ruby
15
+ require 'soilsidekick'
16
+
17
+ instance = SoilSidekick::DynamicCareCareRecommendations.new(
18
+ watering: null,
19
+ light: null,
20
+ humidity: null,
21
+ seasonal_notes: null
22
+ )
23
+ ```
24
+
@@ -0,0 +1,22 @@
1
+ # SoilSidekick::DynamicCareCareRecommendationsHumidity
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **current_level** | **String** | | [optional] |
8
+ | **ideal_range** | **String** | | [optional] |
9
+ | **adjustment_recommendation** | **String** | | [optional] |
10
+
11
+ ## Example
12
+
13
+ ```ruby
14
+ require 'soilsidekick'
15
+
16
+ instance = SoilSidekick::DynamicCareCareRecommendationsHumidity.new(
17
+ current_level: null,
18
+ ideal_range: null,
19
+ adjustment_recommendation: null
20
+ )
21
+ ```
22
+
@@ -0,0 +1,22 @@
1
+ # SoilSidekick::DynamicCareCareRecommendationsLight
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **current_assessment** | **String** | | [optional] |
8
+ | **adjustment_needed** | **Boolean** | | [optional] |
9
+ | **recommendation** | **String** | | [optional] |
10
+
11
+ ## Example
12
+
13
+ ```ruby
14
+ require 'soilsidekick'
15
+
16
+ instance = SoilSidekick::DynamicCareCareRecommendationsLight.new(
17
+ current_assessment: null,
18
+ adjustment_needed: null,
19
+ recommendation: null
20
+ )
21
+ ```
22
+
@@ -0,0 +1,24 @@
1
+ # SoilSidekick::DynamicCareCareRecommendationsWatering
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **action** | **String** | | [optional] |
8
+ | **reasoning** | **String** | | [optional] |
9
+ | **next_check_days** | **Integer** | | [optional] |
10
+ | **amount_guidance** | **String** | | [optional] |
11
+
12
+ ## Example
13
+
14
+ ```ruby
15
+ require 'soilsidekick'
16
+
17
+ instance = SoilSidekick::DynamicCareCareRecommendationsWatering.new(
18
+ action: null,
19
+ reasoning: null,
20
+ next_check_days: null,
21
+ amount_guidance: null
22
+ )
23
+ ```
24
+
@@ -0,0 +1,26 @@
1
+ # SoilSidekick::DynamicCareCurrentConditions
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **temperature_f** | **Float** | | [optional] |
8
+ | **humidity_percent** | **Float** | | [optional] |
9
+ | **recent_rainfall_inches** | **Float** | | [optional] |
10
+ | **season** | **String** | | [optional] |
11
+ | **days_since_watered** | **Integer** | | [optional] |
12
+
13
+ ## Example
14
+
15
+ ```ruby
16
+ require 'soilsidekick'
17
+
18
+ instance = SoilSidekick::DynamicCareCurrentConditions.new(
19
+ temperature_f: null,
20
+ humidity_percent: null,
21
+ recent_rainfall_inches: null,
22
+ season: null,
23
+ days_since_watered: null
24
+ )
25
+ ```
26
+
@@ -0,0 +1,22 @@
1
+ # SoilSidekick::DynamicCareMetadata
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **location_data_used** | **Boolean** | | [optional] |
8
+ | **weather_data_freshness** | **String** | | [optional] |
9
+ | **confidence** | **Float** | | [optional] |
10
+
11
+ ## Example
12
+
13
+ ```ruby
14
+ require 'soilsidekick'
15
+
16
+ instance = SoilSidekick::DynamicCareMetadata.new(
17
+ location_data_used: null,
18
+ weather_data_freshness: null,
19
+ confidence: null
20
+ )
21
+ ```
22
+
@@ -0,0 +1,22 @@
1
+ # SoilSidekick::DynamicCarePlant
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **common_name** | **String** | | [optional] |
8
+ | **scientific_name** | **String** | | [optional] |
9
+ | **care_difficulty** | **String** | | [optional] |
10
+
11
+ ## Example
12
+
13
+ ```ruby
14
+ require 'soilsidekick'
15
+
16
+ instance = SoilSidekick::DynamicCarePlant.new(
17
+ common_name: null,
18
+ scientific_name: null,
19
+ care_difficulty: null
20
+ )
21
+ ```
22
+
@@ -0,0 +1,28 @@
1
+ # SoilSidekick::DynamicCareRequest
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **plant_species** | **String** | Common or scientific plant name | |
8
+ | **location** | [**DynamicCareRequestLocation**](DynamicCareRequestLocation.md) | | |
9
+ | **environment** | [**DynamicCareRequestEnvironment**](DynamicCareRequestEnvironment.md) | | [optional] |
10
+ | **container_details** | [**DynamicCareRequestContainerDetails**](DynamicCareRequestContainerDetails.md) | | [optional] |
11
+ | **soil_type** | **String** | | [optional] |
12
+ | **last_watered** | **Date** | Date plant was last watered | [optional] |
13
+
14
+ ## Example
15
+
16
+ ```ruby
17
+ require 'soilsidekick'
18
+
19
+ instance = SoilSidekick::DynamicCareRequest.new(
20
+ plant_species: Monstera deliciosa,
21
+ location: null,
22
+ environment: null,
23
+ container_details: null,
24
+ soil_type: null,
25
+ last_watered: null
26
+ )
27
+ ```
28
+
@@ -0,0 +1,22 @@
1
+ # SoilSidekick::DynamicCareRequestContainerDetails
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **type** | **String** | | [optional] |
8
+ | **size_inches** | **Float** | | [optional] |
9
+ | **has_drainage** | **Boolean** | | [optional] |
10
+
11
+ ## Example
12
+
13
+ ```ruby
14
+ require 'soilsidekick'
15
+
16
+ instance = SoilSidekick::DynamicCareRequestContainerDetails.new(
17
+ type: null,
18
+ size_inches: null,
19
+ has_drainage: null
20
+ )
21
+ ```
22
+