Changelog
The changelog lists all new features, resolved issues, and known issues of Cloud API in chronological order.
2025.06.01
version
2025-01-01
New operations
- Send weight samples:
/biology/biomass/weight-samples
2025.03.01
version
2025-01-01
New operations
- Register harvest results:
/biology/companies/:companyId/harvest/imports
- Get imported harvest:
/biology/companies/:companyId/harvest/imports/:harvestId
2025.01.01
version
2025-01-01
New version 2025-01-01
contains breaking changes and new features.
Breaking changes
Get company (/meta/company
)
- Query parameter: name change
$include
→include
.
Get site (/meta/site
)
- Query parameter: name change
$include
→include
. - Response:
info
,sites
,units
,silos
,additionalPropertyValues
are non-nullable now, but appear in response only when explicitly requested viainclude
parameter.
Get raw data (/time-series/retrieve
)
- Query parameter: name change
$includeDevice
→includeDevice
. - Query parameter: name change
$includeMetadata
→includeMetadata
. - Request:
siteIds
andunitIds
now useinteger
identifiers instead ofstring
. - Request:
pageIndex
andpageSize
are now non-nullable. - Request:
feedTypeId
is removed from request payload. - Response:
feedingDetails
is removed from response. - Response:
unitId
is nullable now.
Get available data types (/time-series/retrieve/data-types
)
- Request:
companyIds
,deviceIds
, andsiloIds
were removed. - Request:
siteIds
andunitIds
now use integer identifiers instead of strings.
Get unit aggregates (/time-series/retrieve/units/aggregate
)
- Query parameter: removed
$includeDevice
. - Query parameter: name change
$includeInvalid
→includeInvalid
. - Request:
siteIds
andunitIds
now useinteger
identifiers instead ofstring
. - Request:
fromTime
andtoTime
are now non-nullable. - Request:
companyIds
,deviceIds
,siloIds
, andfeedTypeId
fields were removed. - Response:
devices
,latest
,invalidReadingsCount
are removed from response payload. - Response:
unitId
is nullable now.
Get silo aggregates (/time-series/retrieve/silos/aggregate
)
- Query parameter: removed
$includeDevice
. - Query parameter: name change
$includeInvalid
→includeInvalid
. - Request:
siteIds
andsiloIds
now useinteger
identifiers instead ofstring
. - Request:
fromTime
andtoTime
are now non-nullable. - Request:
companyIds
,deviceIds
,unitIds
,dataTypes
,depth
,depthVariance
andfeedTypeId
fields were removed. - Response:
devices
,latest
,invalidReadingsCount
,averageDepth
are removed from response payload.
Changes in Environmental Data Types
The operations below support only new data types. Using old data types might lead to unexpected results:
- Get raw data:
/time-series/retrieve
- Get available data types:
/time-series/retrieve/data-types
- Get unit aggregates:
/time-series/retrieve/units/aggregate
Supported Environmental Data Types
Data Type | Description | Unit of Measurement |
---|---|---|
water_temperature | Temperature of the water | °C |
water_oxygen_percentage | Oxygen percentage in the water | % |
water_oxygen_umol | Oxygen in the water in μmol/l | μmol/l |
water_oxygen_mg_l | Oxygen in the water in milligrams per liter | mg/l |
water_salinity | Salinity of the water | PSU |
sensor_depth | Depth of the sensor | Meters |
sea_current_east | Sea current east | cm/s |
sea_current_north | Sea current north | cm/s |
sea_current_direction | Sea current direction | °M |
sea_current_absolute_speed | Sea current absolute speed | cm/s |
Support for nullable UnitId
If a data entity does not belong to a specific unit, both request and response will use null
instead of 0
.
Request body example
{
...
"unitIds": [null, 100],
...
}
The UnitId
property in the response now returns null
.
The following existing operations are affected by this change:
- Get raw data:
/time-series/retrieve
- Get unit aggregates:
/time-series/retrieve/units/aggregate
New operations
- Send environmental data:
/time-series/environment
- Send custom data:
/time-series/telemetry
Improvements
Get company (/meta/company
)
- Response:
sites
is non-nullable (should be requested viainclude
request parameter). - Response:
additionalPropertyValues
field is non-nullable (should be requested viainclude
request parameter). - Response:
sites[].info
andsites[].info[].timezone
are non-nullable now. - Response:
sites[].units
andsites[].silos
are non-nullable now.
Get site (/meta/site
)
- Response:
info
andinfo.timezone
are non-nullable now.
Get raw data /time-series/retrieve
- Response:
value
is non-nullable now. - Response:
siteId
is non-nullable now.
Get unit aggregates (/time-series/retrieve/units/aggregate
)
- Response:
items
is now non-nullable.
Get silo aggregates (/time-series/retrieve/silos/aggregate
)
- Response:
items
is now non-nullable.
Upgrade to 2025-01-01
- Requests must include
Scale-Version
header with value2025-01-01
. - Ensure that you are not using any outdated data types.
oxy_temp
→water_temperature
oxy_o2_percent
→water_oxygen_percentage
oxy_o2_umol
→water_oxygen_umol
oxy_o2_mg_l
→water_oxygen_mg_l
sal_salinity
→water_salinity
sc_abs_speed
→sea_current_absolute_speed
sc_direction
→sea_current_direction
sc_north
→sea_current_north
sc_east
→sea_current_east
depth
→sensor_depth
- Handle possible
null
values inUnitId
fields in request/responses. - Ensure that you have switched to newer formats of identifiers
siteId: string
→siteId: int64
unitId: string
→unitId: int64
siloId: string
→siloId: int64
siteIds: string[]
→siteIds: int64[]
unitIds: string[]
→unitIds: int64[]
siloIds: string[]
→siloIds: int64[]
- Ensure you are not using removed fields in request & response.
- Ensure that you are not using removed/renamed query parameters (f.e.
$include
).
2023.01.01
version
2023-01-01
New version 2023-01-01
contains breaking changes and new features.
Breaking changes
- New base url is changed to: https://api.scaleaq.com
- New authentication scheme: see Authentication guide for more details.
- New versioning scheme: see Versioning guide for more details.
- Operation URLs changes:
- Get company:
/api/organisation/company
→/meta/company
- Get site:
/api/organisation/sites/:siteId
→/meta/sites/:siteId
- Get raw data:
/api/production/iot/get
→/time-series/retrieve
- Get available data types:
/api/production/aggregate/get-available-data-types
→/time-series/retrieve/data-types
- Get unit aggregates:
/api/production/aggregate/get/unit
→/time-series/retrieve/units/aggregate
- Get silo aggregates:
/api/production/aggregate/get/silo
→/time-series/retrieve/silos/aggregate
- Get company:
Upgrade to 2023-01-01
- Requests must include
Scale-Version
header with value2023-01-01
. - Switch to new API operation URLs
- Use the new authentication method.
Unversioned
If you're using the legacy API (without a version), it will continue to work for now but will not be documented. Please upgrade to the latest version.