Module: SoilSidekick

Defined in:
lib/soilsidekick/version.rb,
lib/soilsidekick.rb,
lib/soilsidekick/api_error.rb,
lib/soilsidekick/api_client.rb,
lib/soilsidekick/api/vrt_api.rb,
lib/soilsidekick/models/error.rb,
lib/soilsidekick/configuration.rb,
lib/soilsidekick/models/county.rb,
lib/soilsidekick/api/carbon_api.rb,
lib/soilsidekick/api_model_base.rb,
lib/soilsidekick/models/soil_data.rb,
lib/soilsidekick/api/geographic_api.rb,
lib/soilsidekick/models/ai_analysis.rb,
lib/soilsidekick/api/ai_services_api.rb,
lib/soilsidekick/api/turbo_quant_api.rb,
lib/soilsidekick/models/dynamic_care.rb,
lib/soilsidekick/api/leaf_engines_api.rb,
lib/soilsidekick/models/water_quality.rb,
lib/soilsidekick/api/environmental_api.rb,
lib/soilsidekick/api/soil_analysis_api.rb,
lib/soilsidekick/api/water_quality_api.rb,
lib/soilsidekick/models/satellite_data.rb,
lib/soilsidekick/api/satellite_data_api.rb,
lib/soilsidekick/models/vrt_prescription.rb,
lib/soilsidekick/models/beginner_guidance.rb,
lib/soilsidekick/models/planting_calendar.rb,
lib/soilsidekick/models/dynamic_care_plant.rb,
lib/soilsidekick/models/safe_identification.rb,
lib/soilsidekick/api/consumer_plant_care_api.rb,
lib/soilsidekick/models/dynamic_care_request.rb,
lib/soilsidekick/models/environmental_impact.rb,
lib/soilsidekick/models/smart_report_summary.rb,
lib/soilsidekick/models/visual_crop_analysis.rb,
lib/soilsidekick/models/county_lookup_request.rb,
lib/soilsidekick/models/dynamic_care_metadata.rb,
lib/soilsidekick/models/get_soil_data_request.rb,
lib/soilsidekick/models/live_agricultural_data.rb,
lib/soilsidekick/models/turbo_quant_capabilities.rb,
lib/soilsidekick/models/beginner_guidance_request.rb,
lib/soilsidekick/models/carbon_credit_calculation.rb,
lib/soilsidekick/models/county_lookup200_response.rb,
lib/soilsidekick/models/leafengines_query_request.rb,
lib/soilsidekick/models/beginner_guidance_metadata.rb,
lib/soilsidekick/models/get_satellite_data_request.rb,
lib/soilsidekick/models/leaf_engines_compatibility.rb,
lib/soilsidekick/models/seasonal_planning_response.rb,
lib/soilsidekick/models/live_agricultural_data_data.rb,
lib/soilsidekick/models/safe_identification_request.rb,
lib/soilsidekick/models/territorial_water_analytics.rb,
lib/soilsidekick/models/safe_identification_metadata.rb,
lib/soilsidekick/models/smart_report_summary_summary.rb,
lib/soilsidekick/models/visual_crop_analysis_request.rb,
lib/soilsidekick/models/vrt_prescription_zones_inner.rb,
lib/soilsidekick/models/dynamic_care_request_location.rb,
lib/soilsidekick/models/get_planting_calendar_request.rb,
lib/soilsidekick/models/visual_crop_analysis_analysis.rb,
lib/soilsidekick/models/dynamic_care_current_conditions.rb,
lib/soilsidekick/models/leaf_engines_compatibility_data.rb,
lib/soilsidekick/models/leafengines_query_request_plant.rb,
lib/soilsidekick/models/calculate_carbon_credits_request.rb,
lib/soilsidekick/models/dynamic_care_request_environment.rb,
lib/soilsidekick/models/leaf_engines_compatibility_usage.rb,
lib/soilsidekick/models/turbo_quant_capabilities_request.rb,
lib/soilsidekick/models/ai_analysis_recommendations_inner.rb,
lib/soilsidekick/models/dynamic_care_care_recommendations.rb,
lib/soilsidekick/models/generate_vrt_prescription_request.rb,
lib/soilsidekick/models/leafengines_query_request_options.rb,
lib/soilsidekick/models/beginner_guidance_request_location.rb,
lib/soilsidekick/models/get_live_agricultural_data_request.rb,
lib/soilsidekick/models/leafengines_query_request_location.rb,
lib/soilsidekick/models/safe_identification_identification.rb,
lib/soilsidekick/models/safe_identification_request_context.rb,
lib/soilsidekick/models/safe_identification_safety_analysis.rb,
lib/soilsidekick/models/safe_identification_request_location.rb,
lib/soilsidekick/models/generate_smart_report_summary_request.rb,
lib/soilsidekick/models/get_agricultural_intelligence_request.rb,
lib/soilsidekick/models/territorial_water_analytics_analytics.rb,
lib/soilsidekick/models/visual_crop_analysis_request_location.rb,
lib/soilsidekick/models/beginner_guidance_detailed_explanation.rb,
lib/soilsidekick/models/calculate_environmental_impact_request.rb,
lib/soilsidekick/models/dynamic_care_request_container_details.rb,
lib/soilsidekick/models/environmental_impact_detailed_analysis.rb,
lib/soilsidekick/models/environmental_impact_impact_assessment.rb,
lib/soilsidekick/models/beginner_guidance_request_plant_context.rb,
lib/soilsidekick/models/carbon_credit_calculation_credit_record.rb,
lib/soilsidekick/models/dynamic_care_care_recommendations_light.rb,
lib/soilsidekick/models/get_seasonal_planning_assistant_request.rb,
lib/soilsidekick/models/get_territorial_water_analytics_request.rb,
lib/soilsidekick/models/seasonal_planning_response_weather_data.rb,
lib/soilsidekick/models/leaf_engines_compatibility_data_metadata.rb,
lib/soilsidekick/models/safe_identification_confidence_breakdown.rb,
lib/soilsidekick/models/leaf_engines_compatibility_data_breakdown.rb,
lib/soilsidekick/models/dynamic_care_care_recommendations_humidity.rb,
lib/soilsidekick/models/dynamic_care_care_recommendations_watering.rb,
lib/soilsidekick/models/seasonal_planning_response_recommendations.rb,
lib/soilsidekick/models/carbon_credit_calculation_calculation_details.rb,
lib/soilsidekick/models/turbo_quant_capabilities_estimated_latency_ms.rb,
lib/soilsidekick/models/leaf_engines_compatibility_data_breakdown_soil.rb,
lib/soilsidekick/models/calculate_environmental_impact_request_soil_data.rb,
lib/soilsidekick/models/get_seasonal_planning_assistant_request_location.rb,
lib/soilsidekick/models/safe_identification_identification_primary_match.rb,
lib/soilsidekick/models/safe_identification_request_location_coordinates.rb,
lib/soilsidekick/models/leafengines_query_request_plant_care_requirements.rb,
lib/soilsidekick/models/environmental_impact_detailed_analysis_runoff_risk.rb,
lib/soilsidekick/models/get_territorial_water_analytics_request_date_range.rb,
lib/soilsidekick/models/safe_identification_safety_analysis_lookalikes_inner.rb,
lib/soilsidekick/models/calculate_environmental_impact_request_water_body_data.rb,
lib/soilsidekick/models/carbon_credit_calculation_calculation_details_metadata.rb,
lib/soilsidekick/models/environmental_impact_detailed_analysis_eco_alternatives.rb,
lib/soilsidekick/models/leafengines_query_request_plant_care_requirements_soil_ph_range.rb,
lib/soilsidekick/models/calculate_environmental_impact_request_proposed_treatments_inner.rb,
lib/soilsidekick/models/environmental_impact_detailed_analysis_eco_alternatives_alternatives_inner.rb

Overview

#SoilSidekick Pro API

#Agricultural intelligence and soil analysis API with tier-based access control. ## What’s New in 1.2.0 - **Consumer Plant Care APIs**: Three new endpoints addressing top pain points in plant ID apps: - ‘/safe-identification`: Toxic lookalike warnings and environmental context - `/dynamic-care`: Hyper-localized, real-time care recommendations - `/beginner-guidance`: Judgment-free, jargon-free plant guidance ## Authentication All endpoints require an API key passed via the `x-api-key` header: “` x-api-key: ak_your_api_key_here “` API keys are generated through the dashboard and use the `ak_*` format. ## Rate Limiting Rate limits are enforced based on your subscription tier: - Free: 10 req/min, 100 req/hour, 1,000 req/day - Starter: 30 req/min, 500 req/hour, 5,000 req/day - Pro: 100 req/min, 2,000 req/hour, 25,000 req/day - Enterprise: 500 req/min, 10,000 req/hour, 100,000 req/day Rate limit information is returned in response headers: - `X-RateLimit-Limit`: Maximum requests in window - `X-RateLimit-Remaining`: Remaining requests in window - `X-RateLimit-Reset`: Unix timestamp when limit resets ## Response Time SLAs All endpoints return response time headers for performance monitoring: - `X-Response-Time`: Human-readable response time (e.g., "245ms") - `X-Response-Time-Ms`: Response time in milliseconds - `X-Response-Time-Target`: Target response time for this endpoint - `X-Response-Time-Max`: Maximum acceptable response time - `X-Response-Time-Status`: Performance status (`optimal`, `acceptable`, `exceeded`) ### Response Time Targets by Category | Category | Target | Maximum | Endpoints | |———-|——–|———|———–| | Fast | 200ms | 500ms | county-lookup, check-subscription | | Standard | 500ms | 1,500ms | get-soil-data, territorial-water-quality | | Complex | 2,000ms | 5,000ms | agricultural-intelligence, gpt5-chat, visual-crop-analysis | | Heavy | 5,000ms | 15,000ms | live-agricultural-data, generate-vrt-prescription |

The version of the OpenAPI document: 3.0.0 Contact: support@soilsidekickpro.com Generated by: openapi-generator.tech Generator version: 7.23.0

Defined Under Namespace

Classes: AIAnalysis, AIAnalysisRecommendationsInner, AIServicesApi, ApiClient, ApiError, ApiModelBase, BeginnerGuidance, BeginnerGuidanceDetailedExplanation, BeginnerGuidanceMetadata, BeginnerGuidanceRequest, BeginnerGuidanceRequestLocation, BeginnerGuidanceRequestPlantContext, CalculateCarbonCreditsRequest, CalculateEnvironmentalImpactRequest, CalculateEnvironmentalImpactRequestProposedTreatmentsInner, CalculateEnvironmentalImpactRequestSoilData, CalculateEnvironmentalImpactRequestWaterBodyData, CarbonApi, CarbonCreditCalculation, CarbonCreditCalculationCalculationDetails, CarbonCreditCalculationCalculationDetailsMetadata, CarbonCreditCalculationCreditRecord, Configuration, ConsumerPlantCareApi, County, CountyLookup200Response, CountyLookupRequest, DynamicCare, DynamicCareCareRecommendations, DynamicCareCareRecommendationsHumidity, DynamicCareCareRecommendationsLight, DynamicCareCareRecommendationsWatering, DynamicCareCurrentConditions, DynamicCareMetadata, DynamicCarePlant, DynamicCareRequest, DynamicCareRequestContainerDetails, DynamicCareRequestEnvironment, DynamicCareRequestLocation, EnvironmentalApi, EnvironmentalImpact, EnvironmentalImpactDetailedAnalysis, EnvironmentalImpactDetailedAnalysisEcoAlternatives, EnvironmentalImpactDetailedAnalysisEcoAlternativesAlternativesInner, EnvironmentalImpactDetailedAnalysisRunoffRisk, EnvironmentalImpactImpactAssessment, Error, GenerateSmartReportSummaryRequest, GenerateVRTPrescriptionRequest, GeographicApi, GetAgriculturalIntelligenceRequest, GetLiveAgriculturalDataRequest, GetPlantingCalendarRequest, GetSatelliteDataRequest, GetSeasonalPlanningAssistantRequest, GetSeasonalPlanningAssistantRequestLocation, GetSoilDataRequest, GetTerritorialWaterAnalyticsRequest, GetTerritorialWaterAnalyticsRequestDateRange, LeafEnginesApi, LeafEnginesCompatibility, LeafEnginesCompatibilityData, LeafEnginesCompatibilityDataBreakdown, LeafEnginesCompatibilityDataBreakdownSoil, LeafEnginesCompatibilityDataMetadata, LeafEnginesCompatibilityUsage, LeafenginesQueryRequest, LeafenginesQueryRequestLocation, LeafenginesQueryRequestOptions, LeafenginesQueryRequestPlant, LeafenginesQueryRequestPlantCareRequirements, LeafenginesQueryRequestPlantCareRequirementsSoilPhRange, LiveAgriculturalData, LiveAgriculturalDataData, PlantingCalendar, SafeIdentification, SafeIdentificationConfidenceBreakdown, SafeIdentificationIdentification, SafeIdentificationIdentificationPrimaryMatch, SafeIdentificationMetadata, SafeIdentificationRequest, SafeIdentificationRequestContext, SafeIdentificationRequestLocation, SafeIdentificationRequestLocationCoordinates, SafeIdentificationSafetyAnalysis, SafeIdentificationSafetyAnalysisLookalikesInner, SatelliteData, SatelliteDataApi, SeasonalPlanningResponse, SeasonalPlanningResponseRecommendations, SeasonalPlanningResponseWeatherData, SmartReportSummary, SmartReportSummarySummary, SoilAnalysisApi, SoilData, TerritorialWaterAnalytics, TerritorialWaterAnalyticsAnalytics, TurboQuantApi, TurboQuantCapabilities, TurboQuantCapabilitiesEstimatedLatencyMs, TurboQuantCapabilitiesRequest, VRTApi, VRTPrescription, VRTPrescriptionZonesInner, VisualCropAnalysis, VisualCropAnalysisAnalysis, VisualCropAnalysisRequest, VisualCropAnalysisRequestLocation, WaterQuality, WaterQualityApi

Constant Summary collapse

VERSION =
'3.0.0'

Class Method Summary collapse

Class Method Details

.configureObject

Customize default settings for the SDK using block.

SoilSidekick.configure do |config|
  config.username = "xxx"
  config.password = "xxx"
end

If no block given, return the default Configuration object.



138
139
140
141
142
143
144
# File 'lib/soilsidekick.rb', line 138

def configure
  if block_given?
    yield(Configuration.default)
  else
    Configuration.default
  end
end