Skip to main content

Environment

The environment endpoints expose temperature analytics that combine AquaCloud sensor data with historical trends. All routes are read-only GET endpoints under the /v3/environment prefix and require the v3 authentication flow: send Authorization: Bearer <token> and, for non-premium farmer tiers, include the x-client-secret header issued for the integration. When filters yield no rows the API responds with 204 No Content.

Common query parameters

NameTypeDefaultDetails
from_datedateToday − 4 weeksFlexible parsing (ISO 2024-02-29, 29/02/2024, mai 2024, week 8 2024, today, etc.). Partial inputs resolve to the start of the period.
to_datedateTodaySame parsing rules; partial inputs resolve to the end of the period.
areaslist of stringsAll areasComma-separated AquaCloud area names (Norwegian or English) or IDs. Use % to explicitly request all areas.
offsetinteger ≥ 00Number of rows to skip for pagination.
limitinteger (0–1000)1000Maximum number of rows returned. Internally the service fetches limit + 1 to set pagination.has_more.

Response envelope

All endpoints return a JSON object with:

  • data: List of temperature records for the requested resource.
  • pagination: Contains offset, limit, and has_more where pagination applies.
  • metadata: Not populated by these routes but reserved by the shared response model.

Endpoints

Delivers multi-year temperature trends per production region.

FieldTypeDescription
weekstring (ISO date)Monday of the measured ISO week.
weeknum / yearintegerISO week number and calendar year.
area_id / area_nameinteger / stringSource area identifier from AquaCloud.
aquacloud_area_namestringFriendly name when available.
production_area_idsarrayProduction area IDs contributing to the region.
temperaturenumberWeekly average temperature.
trend, changenumberShort-term trend and change versus the previous week.
macro_trend, macro_change, macro_change_2numberLonger-term trend metrics.
prev_year, prev_year_2numberSame-week temperatures from one and two years prior.

Values are rounded to two decimal places by the API.

GET /v3/environment/temperature-depths-by-region

Breaks down temperatures by depth bands per production region.

FieldTypeDescription
datestring (ISO date)Observation date.
production_region_namestringProduction region label.
aquacloud_area_name, production_area_idsstring / arrayArea context.
temperature_measurement_countintegerTotal measurements aggregated into the row.
temperature_shallow / temperature_medium / temperature_deep / temperature_unknownnumberAverage temperatures at each depth band.
avg_temperature, min_temperature, max_temperaturenumberAggregated summary statistics.
sites_countintegerNumber of sites contributing measurements.

GET /v3/environment/temperature-by-week-and-region

Weekly average temperature statistics at the production-region level.

FieldTypeDescription
production_region_namestringRegion label.
measurement_week_datestringMonday of the ISO week.
avg_temperature / median_temperaturenumberBenchmark temperature values.
min_site_avg_temperature / max_site_avg_temperaturenumberExtremes among sites.
total_measurement_countintegerNumber of temperature measurements.
std_dev_avg_temperaturenumberStandard deviation across site averages.
aquacloud_area_name, production_area_idsstring / arrayOptional area metadata.

GET /v3/environment/temperature-by-production-area-and-week

More granular weekly statistics at the production-area level.

FieldTypeDescription
production_area_idintegerProduction area identifier.
production_region_namestringRegion containing the area.
measurement_week_datestringMonday of the ISO week.
avg_temperature, median_temperaturenumberBenchmark temperatures.
min_site_avg_temperature, max_site_avg_temperaturenumberSite extremes.
total_measurement_countnumberMeasurement count aggregated (may be decimal).
std_dev_avg_temperaturenumberStandard deviation of site averages.
is_current_week, is_previous_weekbooleanFlags highlighting the latest weeks.

GET /v3/environment/sea-temperature-analysis

Comprehensive sea-temperature dataset that blends weekly, monthly, and historical context.

FieldTypeDescription
week_date / week_year / week_numberdate / intISO week reference.
area_id, area_name, aquacloud_area_nameidentifiersArea metadata.
production_area_ids, production_region_namearray / stringGeographic context.
avg_temperature, median_temperature, min_temperature, max_temperaturenumberBaseline statistics.
avg_temperature_shallow / avg_temperature_medium / avg_temperature_deep / avg_temperature_unknownnumberDepth-specific averages.
total_measurement_count, avg_sites_count, days_with_datanumber / integerCoverage indicators.
rolling_4week_avg, rolling_12week_trend, macro_trendnumberRolling trend analytics.
week_over_week_change, temp_same_week_last_year, year_over_year_change, year_over_year_pct_changenumberComparative deltas.
current_month_avg, current_month_period_typenumber / stringCurrent-month aggregate.
month_avg_3year_historical, month_avg_5year_historicalnumberHistorical baselines.
current_month_vs_3year_diff, current_month_vs_5year_diffnumberGap versus history.
monthly_status_vs_3year, monthly_status_vs_5yearstringQualitative status labels.
is_current_week, is_previous_week, is_current_monthbooleanTemporal flags for highlighting.
month_name, seasonstringDescriptive labels for reporting.

All numeric measurements are rounded to two decimal places by the API.

Example request

GET /v3/environment/temperature-depths-by-region?areas=Midt&from_date=2024-01-01&to_date=2024-03-31&limit=200 HTTP/1.1
Host: api.aquacloud.io
Authorization: Bearer <token>
x-client-secret: <client-secret>

Successful responses include the temperature rows in data, pagination info when more results are available, and share a consistent structure across all environment endpoints.