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,24 @@
1
+ # SoilSidekick::SafeIdentificationSafetyAnalysis
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **toxicity_level** | **String** | | [optional] |
8
+ | **toxic_to** | **Array<String>** | List of animals/people this is toxic to (e.g., cats, dogs, children) | [optional] |
9
+ | **lookalikes** | [**Array<SafeIdentificationSafetyAnalysisLookalikesInner>**](SafeIdentificationSafetyAnalysisLookalikesInner.md) | | [optional] |
10
+ | **warnings** | **Array<String>** | | [optional] |
11
+
12
+ ## Example
13
+
14
+ ```ruby
15
+ require 'soilsidekick'
16
+
17
+ instance = SoilSidekick::SafeIdentificationSafetyAnalysis.new(
18
+ toxicity_level: null,
19
+ toxic_to: null,
20
+ lookalikes: null,
21
+ warnings: null
22
+ )
23
+ ```
24
+
@@ -0,0 +1,24 @@
1
+ # SoilSidekick::SafeIdentificationSafetyAnalysisLookalikesInner
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **plant_name** | **String** | | [optional] |
8
+ | **visual_similarity** | **Float** | Visual similarity score (0-100) | [optional] |
9
+ | **toxicity_level** | **String** | | [optional] |
10
+ | **distinguishing_features** | **Array<String>** | | [optional] |
11
+
12
+ ## Example
13
+
14
+ ```ruby
15
+ require 'soilsidekick'
16
+
17
+ instance = SoilSidekick::SafeIdentificationSafetyAnalysisLookalikesInner.new(
18
+ plant_name: null,
19
+ visual_similarity: null,
20
+ toxicity_level: null,
21
+ distinguishing_features: null
22
+ )
23
+ ```
24
+
@@ -0,0 +1,26 @@
1
+ # SoilSidekick::SatelliteData
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **ndvi** | **Float** | Normalized Difference Vegetation Index | [optional] |
8
+ | **evi** | **Float** | Enhanced Vegetation Index | [optional] |
9
+ | **soil_moisture** | **Float** | | [optional] |
10
+ | **temperature** | **Float** | | [optional] |
11
+ | **cloud_cover** | **Float** | | [optional] |
12
+
13
+ ## Example
14
+
15
+ ```ruby
16
+ require 'soilsidekick'
17
+
18
+ instance = SoilSidekick::SatelliteData.new(
19
+ ndvi: null,
20
+ evi: null,
21
+ soil_moisture: null,
22
+ temperature: null,
23
+ cloud_cover: null
24
+ )
25
+ ```
26
+
@@ -0,0 +1,79 @@
1
+ # SoilSidekick::SatelliteDataApi
2
+
3
+ All URIs are relative to *https://wzgnxkoeqzvueypwzvyn.supabase.co/functions/v1*
4
+
5
+ | Method | HTTP request | Description |
6
+ | ------ | ------------ | ----------- |
7
+ | [**get_satellite_data**](SatelliteDataApi.md#get_satellite_data) | **POST** /alpha-earth-environmental-enhancement | Get satellite environmental data |
8
+
9
+
10
+ ## get_satellite_data
11
+
12
+ > <SatelliteData> get_satellite_data(get_satellite_data_request)
13
+
14
+ Get satellite environmental data
15
+
16
+ AlphaEarth satellite intelligence integration
17
+
18
+ ### Examples
19
+
20
+ ```ruby
21
+ require 'time'
22
+ require 'soilsidekick'
23
+ # setup authorization
24
+ SoilSidekick.configure do |config|
25
+ # Configure API key authorization: ApiKeyAuth
26
+ config.api_key['x-api-key'] = 'YOUR API KEY'
27
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
28
+ # config.api_key_prefix['x-api-key'] = 'Bearer'
29
+ end
30
+
31
+ api_instance = SoilSidekick::SatelliteDataApi.new
32
+ get_satellite_data_request = SoilSidekick::GetSatelliteDataRequest.new({latitude: 3.56, longitude: 3.56}) # GetSatelliteDataRequest |
33
+
34
+ begin
35
+ # Get satellite environmental data
36
+ result = api_instance.get_satellite_data(get_satellite_data_request)
37
+ p result
38
+ rescue SoilSidekick::ApiError => e
39
+ puts "Error when calling SatelliteDataApi->get_satellite_data: #{e}"
40
+ end
41
+ ```
42
+
43
+ #### Using the get_satellite_data_with_http_info variant
44
+
45
+ This returns an Array which contains the response data, status code and headers.
46
+
47
+ > <Array(<SatelliteData>, Integer, Hash)> get_satellite_data_with_http_info(get_satellite_data_request)
48
+
49
+ ```ruby
50
+ begin
51
+ # Get satellite environmental data
52
+ data, status_code, headers = api_instance.get_satellite_data_with_http_info(get_satellite_data_request)
53
+ p status_code # => 2xx
54
+ p headers # => { ... }
55
+ p data # => <SatelliteData>
56
+ rescue SoilSidekick::ApiError => e
57
+ puts "Error when calling SatelliteDataApi->get_satellite_data_with_http_info: #{e}"
58
+ end
59
+ ```
60
+
61
+ ### Parameters
62
+
63
+ | Name | Type | Description | Notes |
64
+ | ---- | ---- | ----------- | ----- |
65
+ | **get_satellite_data_request** | [**GetSatelliteDataRequest**](GetSatelliteDataRequest.md) | | |
66
+
67
+ ### Return type
68
+
69
+ [**SatelliteData**](SatelliteData.md)
70
+
71
+ ### Authorization
72
+
73
+ [ApiKeyAuth](../README.md#ApiKeyAuth)
74
+
75
+ ### HTTP request headers
76
+
77
+ - **Content-Type**: application/json
78
+ - **Accept**: application/json
79
+
@@ -0,0 +1,24 @@
1
+ # SoilSidekick::SeasonalPlanningResponse
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **success** | **Boolean** | | [optional] |
8
+ | **recommendations** | [**SeasonalPlanningResponseRecommendations**](SeasonalPlanningResponseRecommendations.md) | | [optional] |
9
+ | **weather_data** | [**SeasonalPlanningResponseWeatherData**](SeasonalPlanningResponseWeatherData.md) | | [optional] |
10
+ | **model_used** | **String** | | [optional] |
11
+
12
+ ## Example
13
+
14
+ ```ruby
15
+ require 'soilsidekick'
16
+
17
+ instance = SoilSidekick::SeasonalPlanningResponse.new(
18
+ success: null,
19
+ recommendations: null,
20
+ weather_data: null,
21
+ model_used: null
22
+ )
23
+ ```
24
+
@@ -0,0 +1,22 @@
1
+ # SoilSidekick::SeasonalPlanningResponseRecommendations
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **seasonal_tasks** | **Array&lt;Object&gt;** | | [optional] |
8
+ | **crop_recommendations** | **Array&lt;String&gt;** | | [optional] |
9
+ | **timing_guidance** | **Object** | | [optional] |
10
+
11
+ ## Example
12
+
13
+ ```ruby
14
+ require 'soilsidekick'
15
+
16
+ instance = SoilSidekick::SeasonalPlanningResponseRecommendations.new(
17
+ seasonal_tasks: null,
18
+ crop_recommendations: null,
19
+ timing_guidance: null
20
+ )
21
+ ```
22
+
@@ -0,0 +1,28 @@
1
+ # SoilSidekick::SeasonalPlanningResponseWeatherData
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **current_season** | **String** | | [optional] |
8
+ | **temperature** | **String** | | [optional] |
9
+ | **rainfall** | **String** | | [optional] |
10
+ | **frost_dates** | **Object** | | [optional] |
11
+ | **growing_season** | **String** | | [optional] |
12
+ | **zone** | **String** | | [optional] |
13
+
14
+ ## Example
15
+
16
+ ```ruby
17
+ require 'soilsidekick'
18
+
19
+ instance = SoilSidekick::SeasonalPlanningResponseWeatherData.new(
20
+ current_season: null,
21
+ temperature: null,
22
+ rainfall: null,
23
+ frost_dates: null,
24
+ growing_season: null,
25
+ zone: null
26
+ )
27
+ ```
28
+
@@ -0,0 +1,22 @@
1
+ # SoilSidekick::SmartReportSummary
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **success** | **Boolean** | | [optional] |
8
+ | **summary** | [**SmartReportSummarySummary**](SmartReportSummarySummary.md) | | [optional] |
9
+ | **model_used** | **String** | | [optional] |
10
+
11
+ ## Example
12
+
13
+ ```ruby
14
+ require 'soilsidekick'
15
+
16
+ instance = SoilSidekick::SmartReportSummary.new(
17
+ success: null,
18
+ summary: null,
19
+ model_used: null
20
+ )
21
+ ```
22
+
@@ -0,0 +1,24 @@
1
+ # SoilSidekick::SmartReportSummarySummary
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **executive_summary** | **String** | | [optional] |
8
+ | **key_findings** | **Array&lt;String&gt;** | | [optional] |
9
+ | **recommendations** | **Array&lt;String&gt;** | | [optional] |
10
+ | **risk_assessment** | **String** | | [optional] |
11
+
12
+ ## Example
13
+
14
+ ```ruby
15
+ require 'soilsidekick'
16
+
17
+ instance = SoilSidekick::SmartReportSummarySummary.new(
18
+ executive_summary: null,
19
+ key_findings: null,
20
+ recommendations: null,
21
+ risk_assessment: null
22
+ )
23
+ ```
24
+
@@ -0,0 +1,231 @@
1
+ # SoilSidekick::SoilAnalysisApi
2
+
3
+ All URIs are relative to *https://wzgnxkoeqzvueypwzvyn.supabase.co/functions/v1*
4
+
5
+ | Method | HTTP request | Description |
6
+ | ------ | ------------ | ----------- |
7
+ | [**get_live_agricultural_data**](SoilAnalysisApi.md#get_live_agricultural_data) | **POST** /live-agricultural-data | Get live agricultural data |
8
+ | [**get_planting_calendar**](SoilAnalysisApi.md#get_planting_calendar) | **POST** /multi-parameter-planting-calendar | Get planting calendar recommendations |
9
+ | [**get_soil_data**](SoilAnalysisApi.md#get_soil_data) | **POST** /get-soil-data | Get soil analysis data |
10
+
11
+
12
+ ## get_live_agricultural_data
13
+
14
+ > <LiveAgriculturalData> get_live_agricultural_data(get_live_agricultural_data_request)
15
+
16
+ Get live agricultural data
17
+
18
+ Fetch real-time agricultural data from multiple federal sources (NOAA, USDA, EPA)
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::SoilAnalysisApi.new
34
+ get_live_agricultural_data_request = SoilSidekick::GetLiveAgriculturalDataRequest.new({county_fips: 'county_fips_example', data_types: ['weather'], state_code: 'state_code_example', county_name: 'county_name_example'}) # GetLiveAgriculturalDataRequest |
35
+
36
+ begin
37
+ # Get live agricultural data
38
+ result = api_instance.get_live_agricultural_data(get_live_agricultural_data_request)
39
+ p result
40
+ rescue SoilSidekick::ApiError => e
41
+ puts "Error when calling SoilAnalysisApi->get_live_agricultural_data: #{e}"
42
+ end
43
+ ```
44
+
45
+ #### Using the get_live_agricultural_data_with_http_info variant
46
+
47
+ This returns an Array which contains the response data, status code and headers.
48
+
49
+ > <Array(<LiveAgriculturalData>, Integer, Hash)> get_live_agricultural_data_with_http_info(get_live_agricultural_data_request)
50
+
51
+ ```ruby
52
+ begin
53
+ # Get live agricultural data
54
+ data, status_code, headers = api_instance.get_live_agricultural_data_with_http_info(get_live_agricultural_data_request)
55
+ p status_code # => 2xx
56
+ p headers # => { ... }
57
+ p data # => <LiveAgriculturalData>
58
+ rescue SoilSidekick::ApiError => e
59
+ puts "Error when calling SoilAnalysisApi->get_live_agricultural_data_with_http_info: #{e}"
60
+ end
61
+ ```
62
+
63
+ ### Parameters
64
+
65
+ | Name | Type | Description | Notes |
66
+ | ---- | ---- | ----------- | ----- |
67
+ | **get_live_agricultural_data_request** | [**GetLiveAgriculturalDataRequest**](GetLiveAgriculturalDataRequest.md) | | |
68
+
69
+ ### Return type
70
+
71
+ [**LiveAgriculturalData**](LiveAgriculturalData.md)
72
+
73
+ ### Authorization
74
+
75
+ [ApiKeyAuth](../README.md#ApiKeyAuth)
76
+
77
+ ### HTTP request headers
78
+
79
+ - **Content-Type**: application/json
80
+ - **Accept**: application/json
81
+
82
+
83
+ ## get_planting_calendar
84
+
85
+ > <PlantingCalendar> get_planting_calendar(get_planting_calendar_request, opts)
86
+
87
+ Get planting calendar recommendations
88
+
89
+ Multi-parameter planting calendar with climate and soil factors
90
+
91
+ ### Examples
92
+
93
+ ```ruby
94
+ require 'time'
95
+ require 'soilsidekick'
96
+ # setup authorization
97
+ SoilSidekick.configure do |config|
98
+ # Configure API key authorization: ApiKeyAuth
99
+ config.api_key['x-api-key'] = 'YOUR API KEY'
100
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
101
+ # config.api_key_prefix['x-api-key'] = 'Bearer'
102
+ end
103
+
104
+ api_instance = SoilSidekick::SoilAnalysisApi.new
105
+ get_planting_calendar_request = SoilSidekick::GetPlantingCalendarRequest.new({county_fips: 'county_fips_example', crop_type: 'corn'}) # GetPlantingCalendarRequest |
106
+ opts = {
107
+ 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.
108
+ 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
109
+ 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)
110
+ }
111
+
112
+ begin
113
+ # Get planting calendar recommendations
114
+ result = api_instance.get_planting_calendar(get_planting_calendar_request, opts)
115
+ p result
116
+ rescue SoilSidekick::ApiError => e
117
+ puts "Error when calling SoilAnalysisApi->get_planting_calendar: #{e}"
118
+ end
119
+ ```
120
+
121
+ #### Using the get_planting_calendar_with_http_info variant
122
+
123
+ This returns an Array which contains the response data, status code and headers.
124
+
125
+ > <Array(<PlantingCalendar>, Integer, Hash)> get_planting_calendar_with_http_info(get_planting_calendar_request, opts)
126
+
127
+ ```ruby
128
+ begin
129
+ # Get planting calendar recommendations
130
+ data, status_code, headers = api_instance.get_planting_calendar_with_http_info(get_planting_calendar_request, opts)
131
+ p status_code # => 2xx
132
+ p headers # => { ... }
133
+ p data # => <PlantingCalendar>
134
+ rescue SoilSidekick::ApiError => e
135
+ puts "Error when calling SoilAnalysisApi->get_planting_calendar_with_http_info: #{e}"
136
+ end
137
+ ```
138
+
139
+ ### Parameters
140
+
141
+ | Name | Type | Description | Notes |
142
+ | ---- | ---- | ----------- | ----- |
143
+ | **get_planting_calendar_request** | [**GetPlantingCalendarRequest**](GetPlantingCalendarRequest.md) | | |
144
+ | **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] |
145
+ | **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;] |
146
+ | **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;] |
147
+
148
+ ### Return type
149
+
150
+ [**PlantingCalendar**](PlantingCalendar.md)
151
+
152
+ ### Authorization
153
+
154
+ [ApiKeyAuth](../README.md#ApiKeyAuth)
155
+
156
+ ### HTTP request headers
157
+
158
+ - **Content-Type**: application/json
159
+ - **Accept**: application/json
160
+
161
+
162
+ ## get_soil_data
163
+
164
+ > <SoilData> get_soil_data(get_soil_data_request)
165
+
166
+ Get soil analysis data
167
+
168
+ Retrieve comprehensive soil analysis for a specific county
169
+
170
+ ### Examples
171
+
172
+ ```ruby
173
+ require 'time'
174
+ require 'soilsidekick'
175
+ # setup authorization
176
+ SoilSidekick.configure do |config|
177
+ # Configure API key authorization: ApiKeyAuth
178
+ config.api_key['x-api-key'] = 'YOUR API KEY'
179
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
180
+ # config.api_key_prefix['x-api-key'] = 'Bearer'
181
+ end
182
+
183
+ api_instance = SoilSidekick::SoilAnalysisApi.new
184
+ get_soil_data_request = SoilSidekick::GetSoilDataRequest.new({county_fips: '12345'}) # GetSoilDataRequest |
185
+
186
+ begin
187
+ # Get soil analysis data
188
+ result = api_instance.get_soil_data(get_soil_data_request)
189
+ p result
190
+ rescue SoilSidekick::ApiError => e
191
+ puts "Error when calling SoilAnalysisApi->get_soil_data: #{e}"
192
+ end
193
+ ```
194
+
195
+ #### Using the get_soil_data_with_http_info variant
196
+
197
+ This returns an Array which contains the response data, status code and headers.
198
+
199
+ > <Array(<SoilData>, Integer, Hash)> get_soil_data_with_http_info(get_soil_data_request)
200
+
201
+ ```ruby
202
+ begin
203
+ # Get soil analysis data
204
+ data, status_code, headers = api_instance.get_soil_data_with_http_info(get_soil_data_request)
205
+ p status_code # => 2xx
206
+ p headers # => { ... }
207
+ p data # => <SoilData>
208
+ rescue SoilSidekick::ApiError => e
209
+ puts "Error when calling SoilAnalysisApi->get_soil_data_with_http_info: #{e}"
210
+ end
211
+ ```
212
+
213
+ ### Parameters
214
+
215
+ | Name | Type | Description | Notes |
216
+ | ---- | ---- | ----------- | ----- |
217
+ | **get_soil_data_request** | [**GetSoilDataRequest**](GetSoilDataRequest.md) | | |
218
+
219
+ ### Return type
220
+
221
+ [**SoilData**](SoilData.md)
222
+
223
+ ### Authorization
224
+
225
+ [ApiKeyAuth](../README.md#ApiKeyAuth)
226
+
227
+ ### HTTP request headers
228
+
229
+ - **Content-Type**: application/json
230
+ - **Accept**: application/json
231
+
data/docs/SoilData.md ADDED
@@ -0,0 +1,38 @@
1
+ # SoilSidekick::SoilData
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **id** | **String** | | [optional] |
8
+ | **county_fips** | **String** | | [optional] |
9
+ | **county_name** | **String** | | [optional] |
10
+ | **state_code** | **String** | | [optional] |
11
+ | **ph_level** | **Float** | | [optional] |
12
+ | **organic_matter** | **Float** | | [optional] |
13
+ | **nitrogen_level** | **String** | | [optional] |
14
+ | **phosphorus_level** | **String** | | [optional] |
15
+ | **potassium_level** | **String** | | [optional] |
16
+ | **recommendations** | **String** | | [optional] |
17
+ | **analysis_data** | **Hash&lt;String, Object&gt;** | | [optional] |
18
+
19
+ ## Example
20
+
21
+ ```ruby
22
+ require 'soilsidekick'
23
+
24
+ instance = SoilSidekick::SoilData.new(
25
+ id: null,
26
+ county_fips: null,
27
+ county_name: null,
28
+ state_code: null,
29
+ ph_level: null,
30
+ organic_matter: null,
31
+ nitrogen_level: null,
32
+ phosphorus_level: null,
33
+ potassium_level: null,
34
+ recommendations: null,
35
+ analysis_data: null
36
+ )
37
+ ```
38
+
@@ -0,0 +1,22 @@
1
+ # SoilSidekick::TerritorialWaterAnalytics
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **success** | **Boolean** | | [optional] |
8
+ | **analytics** | [**TerritorialWaterAnalyticsAnalytics**](TerritorialWaterAnalyticsAnalytics.md) | | [optional] |
9
+ | **generated_at** | **Time** | | [optional] |
10
+
11
+ ## Example
12
+
13
+ ```ruby
14
+ require 'soilsidekick'
15
+
16
+ instance = SoilSidekick::TerritorialWaterAnalytics.new(
17
+ success: null,
18
+ analytics: null,
19
+ generated_at: null
20
+ )
21
+ ```
22
+
@@ -0,0 +1,24 @@
1
+ # SoilSidekick::TerritorialWaterAnalyticsAnalytics
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **territorial_coverage** | **Object** | | [optional] |
8
+ | **water_quality_metrics** | **Object** | | [optional] |
9
+ | **regional_insights** | **Object** | | [optional] |
10
+ | **compliance_status** | **Object** | | [optional] |
11
+
12
+ ## Example
13
+
14
+ ```ruby
15
+ require 'soilsidekick'
16
+
17
+ instance = SoilSidekick::TerritorialWaterAnalyticsAnalytics.new(
18
+ territorial_coverage: null,
19
+ water_quality_metrics: null,
20
+ regional_insights: null,
21
+ compliance_status: null
22
+ )
23
+ ```
24
+
@@ -0,0 +1,87 @@
1
+ # SoilSidekick::TurboQuantApi
2
+
3
+ All URIs are relative to *https://wzgnxkoeqzvueypwzvyn.supabase.co/functions/v1*
4
+
5
+ | Method | HTTP request | Description |
6
+ | ------ | ------------ | ----------- |
7
+ | [**turbo_quant_capabilities**](TurboQuantApi.md#turbo_quant_capabilities) | **POST** /turbo-quant-capabilities | Query TurboQuant device capabilities |
8
+
9
+
10
+ ## turbo_quant_capabilities
11
+
12
+ > <TurboQuantCapabilities> turbo_quant_capabilities(turbo_quant_capabilities_request, opts)
13
+
14
+ Query TurboQuant device capabilities
15
+
16
+ Returns hardware-specific model recommendations and estimated performance based on detected device capabilities. Use this to determine the optimal local inference configuration for the end-user's device. **Tier requirement:** Pro or Enterprise
17
+
18
+ ### Examples
19
+
20
+ ```ruby
21
+ require 'time'
22
+ require 'soilsidekick'
23
+ # setup authorization
24
+ SoilSidekick.configure do |config|
25
+ # Configure API key authorization: ApiKeyAuth
26
+ config.api_key['x-api-key'] = 'YOUR API KEY'
27
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
28
+ # config.api_key_prefix['x-api-key'] = 'Bearer'
29
+ end
30
+
31
+ api_instance = SoilSidekick::TurboQuantApi.new
32
+ turbo_quant_capabilities_request = SoilSidekick::TurboQuantCapabilitiesRequest.new # TurboQuantCapabilitiesRequest |
33
+ opts = {
34
+ 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.
35
+ 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
36
+ 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)
37
+ }
38
+
39
+ begin
40
+ # Query TurboQuant device capabilities
41
+ result = api_instance.turbo_quant_capabilities(turbo_quant_capabilities_request, opts)
42
+ p result
43
+ rescue SoilSidekick::ApiError => e
44
+ puts "Error when calling TurboQuantApi->turbo_quant_capabilities: #{e}"
45
+ end
46
+ ```
47
+
48
+ #### Using the turbo_quant_capabilities_with_http_info variant
49
+
50
+ This returns an Array which contains the response data, status code and headers.
51
+
52
+ > <Array(<TurboQuantCapabilities>, Integer, Hash)> turbo_quant_capabilities_with_http_info(turbo_quant_capabilities_request, opts)
53
+
54
+ ```ruby
55
+ begin
56
+ # Query TurboQuant device capabilities
57
+ data, status_code, headers = api_instance.turbo_quant_capabilities_with_http_info(turbo_quant_capabilities_request, opts)
58
+ p status_code # => 2xx
59
+ p headers # => { ... }
60
+ p data # => <TurboQuantCapabilities>
61
+ rescue SoilSidekick::ApiError => e
62
+ puts "Error when calling TurboQuantApi->turbo_quant_capabilities_with_http_info: #{e}"
63
+ end
64
+ ```
65
+
66
+ ### Parameters
67
+
68
+ | Name | Type | Description | Notes |
69
+ | ---- | ---- | ----------- | ----- |
70
+ | **turbo_quant_capabilities_request** | [**TurboQuantCapabilitiesRequest**](TurboQuantCapabilitiesRequest.md) | | |
71
+ | **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] |
72
+ | **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;] |
73
+ | **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;] |
74
+
75
+ ### Return type
76
+
77
+ [**TurboQuantCapabilities**](TurboQuantCapabilities.md)
78
+
79
+ ### Authorization
80
+
81
+ [ApiKeyAuth](../README.md#ApiKeyAuth)
82
+
83
+ ### HTTP request headers
84
+
85
+ - **Content-Type**: application/json
86
+ - **Accept**: application/json
87
+