{"components":{"schemas":{"handlers.EquipmentTelemetryRow":{"properties":{"credentialName":{"description":"Name of the data source that reported the sample.","example":"Volvo Connect","type":"string"},"delta":{"description":"Difference from the previous reading of the same type. Reserved;\ncurrently always \"0.00\" for this report.","example":"0.00","type":"string"},"digitalEquipmentID":{"description":"The identifier of the digital equipment the data source is bound to.","example":"k28f3lt","type":"string"},"measurementType":{"description":"Name of the measurement. One of the values listed under `enum`.","enum":["DEFRemainingPercent","activeRegenerationHoursLast24","averageLoadFactorLast24Percent","batteryLevelPercent","batteryVoltage","carbonEmissionLast24","corporateUsageDistanceDelta","corporateUsageDistanceLast24","cumulativeActiveRegenerationHours","cumulativeCorporateUsageDistance","cumulativeDrillHoles","cumulativeDrillHours","cumulativeDrillMeter","cumulativeEnergyACCharged","cumulativeEnergyCharged","cumulativeEnergyDCCharged","cumulativeEnergyUsed","cumulativeEnergyUsedPerChargingCycle","cumulativeFuelUsedGaseous","cumulativeIdleEnergyUsed","cumulativeIdleEnergyUsedPerChargingCycle","cumulativeIdleFuelUsed","cumulativeIdleFuelUsedGaseous","cumulativeIdleHours","cumulativeIdleNonOperatingHours","cumulativeLoadCount","cumulativeNonproductiveIdleHours","cumulativeOperatingEnergyUsed","cumulativeOperatingEnergyUsedPerChargingCycle","cumulativeOperatingHours","cumulativePayloadTotals","cumulativePowerTakeOffHours","cumulativePrivateUsageDistance","cumulativeProductiveHours","distance","distanceLast24","distanceMetreDelta","drillHolesLast24","drillHoursLast24","drillMeterLast24","energyChargedLast24","energyChargedWattHourDelta","energyUsedLast24","energyUsedWattHourDelta","engineStatus","fuelRemainingPercent","fuelUsed","fuelUsedGaseousDelta","fuelUsedGaseousLast24","fuelUsedLast24","fuelUsedMillilitreDelta","idleEnergyUsedLast24","idleEnergyUsedWattHourDelta","idleFuelUsedGaseousLast24","idleFuelUsedLast24","idleHoursLast24","idleMinutesDelta","idleNonOperatingHoursLast24","loadCountLast24","location","maximumSpeedLast24","nonproductiveIdleHoursLast24","operatingEnergyUsedLast24","operatingEnergyUsedWattHourDelta","operatingHoursLast24","operatingMinutesDelta","payloadTotalsDelta","payloadTotalsLast24","powerTakeOffHoursLast24","privateUsageDistanceDelta","privateUsageDistanceLast24","productiveHoursDelta","productiveHoursLast24","utilizationLast24"],"example":"fuelRemainingPercent","type":"string"},"originalValue":{"description":"Value as read from the original source.","example":"72.00","type":"string"},"reportTime":{"description":"When the reading was reported.","example":"2024-03-01T08:15:00Z","type":"string"},"value":{"description":"Value after Fremby has normalized and corrected for errors and anomalies.","example":"72.00","type":"string"}},"type":"object"},"handlers.FleetItem":{"properties":{"category":{"example":"Excavator","type":"string"},"department":{"example":"Site North","type":"string"},"equipmentID":{"example":"Demo Excavator #05","type":"string"},"fuelType":{"example":"Diesel","type":"string"},"id":{"example":"k28f3lt","type":"string"},"make":{"example":"Volvo","type":"string"},"model":{"example":"EC220E","type":"string"},"pin":{"type":"string"},"serialNumber":{"example":"VCE0EC22L00012345","type":"string"},"unitInstallDateTime":{"example":"2022-06-14T00:00:00Z","type":"string"}},"type":"object"},"handlers.FleetItemV5":{"properties":{"category":{"example":"Excavator","type":"string"},"department":{"example":"Site North","type":"string"},"emissionStage":{"example":"Stage V","type":"string"},"equipmentID":{"example":"Demo Excavator #05","type":"string"},"fuelType":{"example":"Diesel","type":"string"},"id":{"example":"k28f3lt","type":"string"},"make":{"example":"Volvo","type":"string"},"model":{"example":"EC220E","type":"string"},"plateNumber":{"example":"DR12345","type":"string"},"serialNumber":{"example":"VCE0EC22L00012345","type":"string"},"uneceCategory":{"example":"N3","type":"string"},"unitInstallDateTime":{"example":"2022-06-14T00:00:00Z","type":"string"},"vin":{"example":"YV2RT40A8FB123456","type":"string"}},"type":"object"},"handlers.FleetSnapshotRecord":{"properties":{"category":{"example":"Excavator","type":"string"},"cumulativeOperatingHours":{"description":"Latest cumulative operating hours.","example":"5123.50","type":"string"},"department":{"description":"Owning department.","example":"Site North","type":"string"},"distance":{"description":"Latest cumulative distance, in kilometers.","example":"184302.10","type":"string"},"fuelUsed":{"description":"Latest cumulative fuel used, in liters.","example":"21874.00","type":"string"},"id":{"description":"The identifier of the equipment.","example":"k28f3lt","type":"string"},"locationDatetime":{"description":"When the last known location was recorded.","example":"2024-03-01T08:15:00Z","type":"string"},"locationLatitude":{"description":"Latitude of the last known location (decimal degrees, WGS84).","example":"59.9139","type":"string"},"locationLongitude":{"description":"Longitude of the last known location (decimal degrees, WGS84).","example":"10.7522","type":"string"},"make":{"description":"Manufacturer (OEM) name.","example":"Volvo","type":"string"},"model":{"example":"EC220E","type":"string"}},"type":"object"},"handlers.HTTPError":{"properties":{"detail":{"description":"A human-readable explanation specific to this occurrence of the problem.","type":"string"},"status":{"description":"The HTTP status code for this occurrence of the problem.","type":"integer"},"title":{"description":"Title is a short, human-readable summary of the problem type. This title\nSHOULD NOT change from occurrence to occurrence of the problem, except for\npurposes of localization.","type":"string"},"type":{"description":"Type contains a URI that identifies the problem type. This URI will,\nideally, contain human-readable documentation for the problem when\ndereferenced.","type":"string"}},"type":"object"},"handlers.LocationFeature":{"properties":{"geometry":{"additionalProperties":{},"description":"GeoJSON Point geometry: {\"type\":\"Point\",\"coordinates\":[longitude,latitude]}.","type":"object"},"id":{"description":"The identifier of the equipment.","example":"k28f3lt","type":"string"},"properties":{"additionalProperties":{},"description":"Non-spatial attributes, e.g. {\"timestamp\":\"2024-03-01T08:15:00Z\"}.","type":"object"},"type":{"description":"GeoJSON object type; always \"Feature\".","example":"Feature","type":"string"}},"type":"object"},"handlers.TelemetryValue":{"properties":{"id":{"description":"The identifier of the equipment.","example":"k28f3lt","type":"string"},"timestamp":{"description":"When the reading was taken.","example":"2024-03-01T08:15:00Z","type":"string"},"type":{"description":"Measurement type, named after the metric (e.g. distance, fuelUsed,\ncumulativeOperatingHours) — the same string as this series' CSV column.","example":"distance","type":"string"},"unit":{"description":"Unit of the value, when known (e.g. km, h, L, %).","example":"km","type":"string"},"value":{"description":"Measured value, sent as a string.","example":"184302.10","type":"string"}},"type":"object"}},"securitySchemes":{"bearerauth":{"description":"JWT Bearer token for authentication. Send it as: Authorization: Bearer \u003ctoken\u003e","scheme":"bearer","type":"http"}}},"externalDocs":{"description":"Fremby ProAPI guide","url":"https://www.fremby.no/fremby-blogg"},"info":{"contact":{"email":"hello@fremby.no","name":"API Support","url":"https://www.fremby.no/fremby-blogg"},"description":"The Fremby ProAPI gives you programmatic, read-only access to your fleet's\ntelemetry and daily aggregates — the same data that powers Fremby dashboards\nand the Microsoft Power BI / Power Flow integrations.\n\n## Response formats\nEndpoints return JSON or CSV. Where an endpoint supports more than one format, select it\nwith the `Accept` header:\n- `Accept: application/json` → a JSON array of records.\n- `Accept: application/stream+json` → the same records as a newline-delimited JSON stream,\nfriendlier for very large fleets.\n- `Accept: text/csv` → a CSV download whose first row is the column header.\n\nNot every endpoint offers every format: some are JSON-only (e.g. the project listings) and\nsome are CSV-only (e.g. raw equipment telemetry). For endpoints that support CSV, a request\nwith no `Accept` header returns CSV.\n\n## Authentication\nAll endpoints require a JWT **Bearer** token: `Authorization: Bearer \u003ctoken\u003e`.\nTokens are issued per organization. If you authenticate with a *personal* token that\nspans more than one organization, also pass the `orgID` query parameter to select which\norganization to read. With an organization-scoped token, `orgID` is not needed.\n\n## Identifiers\nObject identifiers (`equipmentProfileID`, `projectID`, `locationID`, `shareContractID`, …)\nare read from API responses and passed back unchanged.\n\n## Dates, ranges and time zones\nAll timestamps are **UTC**, formatted as RFC 3339 / ISO 8601. Reports accept a\n`rangeStart` and `rangeEnd` (both inclusive); when omitted, default to the last 7 days (project/fleet listings to all history).\nPass `fullRange=true` to ignore the range and return the entire available history.\n\n## Versioning\nEndpoints are versioned in the path (`/bi/v1/…` … `/bi/v6/…`). Always prefer the\nhighest version available for a given report; lower versions are kept for compatibility\nand are marked deprecated.\n\n## Errors\nA failed request returns the matching 4xx/5xx status with an RFC 7807 problem\nbody (`application/problem+json`): `{\"type\": …, \"title\": …, \"status\": …, \"detail\": …}`.","license":{"name":"Apache 2.0","url":"http://www.apache.org/licenses/LICENSE-2.0.html"},"termsOfService":"https://fremby.no/terms","title":"Fremby ProAPI Data Service","version":"Commit: eb1f045ba Version: 1.99.1 Date: 2026-10-29T16:05:10Z"},"openapi":"3.1.0","paths":{"/bi/v1/digitalEquipment/telemetry":{"get":{"description":"Get the telemetry data report for a given DigitalEquipment (credential), keyed by equipment_credential_refer","operationId":"biV1DigitalEquipmentTelemetry","parameters":[{"description":"DigitalEquipment ID, to query the data for","in":"query","name":"digitalEquipmentID","required":true,"schema":{"type":"string"}},{"description":"Date since (Inclusive) Example: 2021-08-01 =\u003e 2021-08-01T00:00:00Z Default: -7 Days","in":"query","name":"rangeStart","schema":{"type":"string"}},{"description":"Date until (Inclusive) Example: 2021-09-01 =\u003e 2021-09-01T23:59:59Z","in":"query","name":"rangeEnd","schema":{"type":"string"}},{"description":"Gets the data for the entire range - rangeStart and rangeEnd are ignored if set","in":"query","name":"fullRange","schema":{"type":"boolean"}}],"responses":{"200":{"content":{"text/csv":{"example":"measurementType,credentialName,reportTime,originalValue,value,delta,digitalEquipmentID\nfuelRemainingPercent,Volvo Connect,2024-03-01T08:15:00Z,72.00,72.00,0.00,k28f3lt","schema":{"type":"string"}}},"description":"Telemetry samples as CSV (header row followed by one row per sample)."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Missing or malformed parameters, e.g. an invalid equipmentProfileID."},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or credentials invalid."},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Equipment not found."},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Unexpected server error."}},"security":[{"bearerauth":[]}],"tags":["Telemetry"]}},"/bi/v1/equipment/telemetry":{"get":{"description":"Returns every raw telemetry sample reported for a single equipment within a date range.\nEach record is one measurement (e.g. fuel level, engine speed) from one data source (credential),\nordered by report time. See the `EquipmentTelemetryRow` schema for the columns/fields.\n\nTip: leave `rangeStart`/`rangeEnd` empty to get the last 7 days, or pass `fullRange=true` for all history.","operationId":"biV1EquipmentTelemetry","parameters":[{"description":"The identifier of the equipment — the `id` from a fleet (`/bi/v5/fleet`) or project-equipment (`/v1/project/fleet`) listing, passed back verbatim.","example":"k28f3lt","in":"query","name":"equipmentProfileID","required":true,"schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}},{"description":"When `true`, ignore `rangeStart` and `rangeEnd` and return the entire available history.","in":"query","name":"fullRange","schema":{"default":false,"type":"boolean"}},{"description":"Organization identifier. Required only when using a token that has access to more than one organization.","in":"query","name":"orgID","schema":{"type":"string"}}],"responses":{"200":{"content":{"text/csv":{"example":"measurementType,credentialName,reportTime,originalValue,value,delta,digitalEquipmentID\nfuelRemainingPercent,Volvo Connect,2024-03-01T08:15:00Z,72.00,72.00,0.00,k28f3lt","schema":{"type":"string"}}},"description":"Telemetry samples as CSV (header row followed by one row per sample)."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Missing or malformed parameters, e.g. an invalid equipmentProfileID."},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or credentials invalid."},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Equipment not found."},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Unexpected server error."}},"security":[{"bearerauth":[]}],"summary":"Equipment telemetry report","tags":["Telemetry"]}},"/bi/v1/fleet":{"get":{"deprecated":true,"description":"Every equipment that has belonged to the fleet, with its current identity attributes (make, model, serial number, category and more).","operationId":"biV1Fleet","parameters":[{"description":"Organization identifier. Required only when using a token that has access to more than one organization.","in":"query","name":"orgID","schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/handlers.FleetItem"},"type":"array"}},"application/stream+json":{"schema":{"items":{"$ref":"#/components/schemas/handlers.FleetItem"},"type":"array"}},"text/csv":{"example":"id,unitInstallDateTime,make,model,equipmentID,serialNumber,pin,category,fuelType,department\nk28f3lt,2022-06-14T00:00:00Z,Volvo,EC220E,Demo Excavator #05,VCE0EC22L00012345,,Excavator,Diesel,Site North","schema":{"type":"string"}}},"description":"Fleet equipment records (JSON array, or CSV with a header row by default)."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Fleet list export","tags":["Fleet"]}},"/bi/v1/fleet/snapshot":{"get":{"description":"One record per equipment combining its identity, last known location and the latest value of each\ntelemetry metric. See the `FleetSnapshotRecord` schema; the response header row / JSON keys are the\nauthoritative column list.","operationId":"biV1FleetSnapshot","parameters":[{"description":"Organization identifier. Required only when using a token that has access to more than one organization.","in":"query","name":"orgID","schema":{"type":"string"}}],"responses":{"200":{"content":{"text/csv":{"example":"id,make,model,category,department,locationDatetime,locationLatitude,locationLongitude,cumulativeOperatingHours,distance,fuelUsed\nk28f3lt,Volvo,EC220E,Excavator,Site North,2024-03-01T08:15:00Z,59.9139,10.7522,5123.50,184302.10,21874.00","schema":{"type":"string"}}},"description":"Fleet snapshot records as CSV; the first row is the column header."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Fleet snapshot (latest values per equipment)","tags":["Fleet"]}},"/bi/v1/location/timeseries/dailylast24snapshot":{"get":{"description":"Last-24h values for each equipment present at the location — one row per equipment per day it was on site, including its enter/exit times.","operationId":"biV1LocationTimeseriesDailylast24snapshot","parameters":[{"description":"The identifier of the location. The short token form (e.g. `k282ght`) is also accepted.","example":"acme/geofence/depot-lillehammer","in":"query","name":"locationID","required":true,"schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}},{"description":"When `true`, ignore `rangeStart` and `rangeEnd` and return the entire available history.","in":"query","name":"fullRange","schema":{"default":false,"type":"boolean"}}],"responses":{"200":{"content":{"text/csv":{"example":"id,timestamp,activeRegenerationHoursName,idleHoursLast24,idleNonOperatingHoursLast24,operatingHoursLast24,powerTakeOffHoursLast24,distanceLast24,payloadTotalsLast24,fuelUsedLast24,loadCountLast24,maximumSpeedLast24,averageLoadFactorLast24Percent,energyChargedLast24,firstEnter,lastExit,exitCount,durationInSec,productiveHoursLast24","schema":{"type":"string"}}},"description":"Daily last-24h records as CSV; the first row is the column header."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Daily last-24h snapshot for a location","tags":["Daily snapshots"]}},"/bi/v1/location/timeseries/dailysnapshot":{"get":{"deprecated":true,"description":"Daily per-equipment snapshot (equipment at a location): last-24h + cumulative values, one row per equipment per day. Plus on-site presence.","operationId":"biV1LocationTimeseriesDailysnapshot","parameters":[{"description":"The identifier of the location. The short token form (e.g. `k282ght`) is also accepted.","example":"acme/geofence/depot-lillehammer","in":"query","name":"locationID","required":true,"schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}},{"description":"When `true`, ignore `rangeStart` and `rangeEnd` and return the entire available history.","in":"query","name":"fullRange","schema":{"default":false,"type":"boolean"}}],"responses":{"200":{"content":{"text/csv":{"schema":{"type":"string"}}},"description":"Daily snapshot records as CSV; the first row is the column header."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Daily snapshot for a location","tags":["Daily snapshots"]}},"/bi/v1/location/timeseries/dailysummarizedsnapshot":{"get":{"description":"One row per location: its id and the summed last-24h values of the equipment present there over the range (totalled across equipment and days, no per-equipment or per-day breakdown). Covers every location for the organization — takes no locationID.","operationId":"biV1LocationTimeseriesDailysummarizedsnapshot","parameters":[{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}},{"description":"When `true`, ignore `rangeStart` and `rangeEnd` and return the entire available history.","in":"query","name":"fullRange","schema":{"default":false,"type":"boolean"}}],"responses":{"200":{"content":{"text/csv":{"example":"id,activeRegenerationHours,idleHours,idleNonOperatingHours,operatingHours,powerTakeOffHours,distance,payloadTotals,fuelUsed,loadCount,averageLoadFactor,energyChargedLast24,productiveHours","schema":{"type":"string"}}},"description":"Summarized daily records as CSV; the first row is the column header."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Summarized totals per location","tags":["Daily snapshots"]}},"/bi/v1/project/timeseries/equipmentdailysnapshot":{"get":{"deprecated":true,"description":"Daily per-equipment snapshot (the equipment in one project): last-24h + cumulative values, one row per equipment per day.","operationId":"biV1ProjectTimeseriesEquipmentdailysnapshot","parameters":[{"description":"The identifier of the project (also listed by `/projects`). The short token form (e.g. `k28nj0h`) is also accepted.","example":"acme/projects/project-lillehammer","in":"query","name":"projectID","required":true,"schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}},{"description":"When `true`, ignore `rangeStart` and `rangeEnd` and return the entire available history.","in":"query","name":"fullRange","schema":{"default":false,"type":"boolean"}},{"description":"If `true`, cumulative values are excluded; only daily (last 24h) values are included.","in":"query","name":"onlyLast24","schema":{"default":false,"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"type":"object"},"type":"array"}},"application/stream+json":{"schema":{"items":{"type":"object"},"type":"array"}},"text/csv":{"schema":{"type":"string"}}},"description":"Daily snapshot records (JSON array, or CSV with a header row by default)."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Daily snapshot for a project's equipment","tags":["Daily snapshots","Projects"]}},"/bi/v1/projects/timeseries/dailysnapshot":{"get":{"deprecated":true,"description":"Daily per-project snapshot across the organization's projects: the values of each project's equipment summed, one row per project per day.","operationId":"biV1ProjectsTimeseriesDailysnapshot","parameters":[{"description":"Organization identifier. Required only when using a token that has access to more than one organization.","in":"query","name":"orgID","schema":{"type":"string"}},{"description":"List of Project IDs (e.g. id1,id2)","in":"query","name":"projectIdList","schema":{"items":{"type":"string"},"type":"array"},"style":"form"},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}}],"responses":{"200":{"content":{"text/csv":{"schema":{"type":"string"}}},"description":"Daily snapshot records as CSV; the first row is the column header."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Daily snapshot across projects","tags":["Daily snapshots","Projects"]}},"/bi/v1/share-contract/timeseries/dailysnapshot":{"get":{"deprecated":true,"description":"Daily per-equipment snapshot (equipment under one share contract): last-24h + cumulative values, one row per equipment per day.","operationId":"biV1SharecontractTimeseriesDailysnapshot","parameters":[{"description":"The identifier of the share contract. The short token form (e.g. `k2859mp`) is also accepted. Provide exactly one of `shareContractID` or `shareConnectorID`.","example":"acme/share-contract/lillehammer-rental","in":"query","name":"shareContractID","schema":{"type":"string"}},{"description":"The identifier of the share connector. The short token form (e.g. `k28gi69`) is also accepted. Provide exactly one of `shareContractID` or `shareConnectorID`.","example":"acme/share-connector/lillehammer-feed","in":"query","name":"shareConnectorID","schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}},{"description":"When `true`, ignore `rangeStart` and `rangeEnd` and return the entire available history.","in":"query","name":"fullRange","schema":{"default":false,"type":"boolean"}}],"responses":{"200":{"content":{"text/csv":{"schema":{"type":"string"}}},"description":"Daily snapshot records as CSV; the first row is the column header."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Daily snapshot for a share contract","tags":["Daily snapshots","Sharing"]}},"/bi/v1/timeseries/cumulativeactiveregenerationhours":{"get":{"description":"Diesel-particulate-filter active-regeneration time per equipment as a running lifetime total, in hours.","operationId":"biV1TimeseriesCumulativeactiveregenerationhours","parameters":[{"description":"Organization identifier. Required only when using a token that has access to more than one organization.","in":"query","name":"orgID","schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/handlers.TelemetryValue"},"type":"array"}},"application/stream+json":{"schema":{"items":{"$ref":"#/components/schemas/handlers.TelemetryValue"},"type":"array"}},"text/csv":{"example":"id,timestamp,type,\u003cmetric\u003e\nk28f3lt,2024-03-01T08:15:00Z,distance,184302.10","schema":{"type":"string"}}},"description":"Time series samples (JSON array, or CSV with a header row by default)."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Active regeneration hours (cumulative)","tags":["Telemetry"]}},"/bi/v1/timeseries/cumulativedistance":{"get":{"description":"Distance travelled per equipment as a running lifetime total, in kilometers.","operationId":"biV1TimeseriesCumulativedistance","parameters":[{"description":"Organization identifier. Required only when using a token that has access to more than one organization.","in":"query","name":"orgID","schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/handlers.TelemetryValue"},"type":"array"}},"application/stream+json":{"schema":{"items":{"$ref":"#/components/schemas/handlers.TelemetryValue"},"type":"array"}},"text/csv":{"example":"id,timestamp,type,\u003cmetric\u003e\nk28f3lt,2024-03-01T08:15:00Z,distance,184302.10","schema":{"type":"string"}}},"description":"Time series samples (JSON array, or CSV with a header row by default)."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Distance (cumulative)","tags":["Telemetry"]}},"/bi/v1/timeseries/cumulativeenergyaccharged":{"get":{"description":"AC energy charged per equipment, lifetime total, in kWh.","operationId":"biV1TimeseriesCumulativeenergyaccharged","parameters":[{"description":"Organization identifier. Required only when using a token that has access to more than one organization.","in":"query","name":"orgID","schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/handlers.TelemetryValue"},"type":"array"}},"application/stream+json":{"schema":{"items":{"$ref":"#/components/schemas/handlers.TelemetryValue"},"type":"array"}},"text/csv":{"example":"id,timestamp,type,\u003cmetric\u003e\nk28f3lt,2024-03-01T08:15:00Z,distance,184302.10","schema":{"type":"string"}}},"description":"Time series samples (JSON array, or CSV with a header row by default)."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"AC energy charged (cumulative)","tags":["Telemetry"]}},"/bi/v1/timeseries/cumulativeenergycharged":{"get":{"description":"Energy charged into the battery per equipment, lifetime total, in kWh.","operationId":"biV1TimeseriesCumulativeenergycharged","parameters":[{"description":"Organization identifier. Required only when using a token that has access to more than one organization.","in":"query","name":"orgID","schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/handlers.TelemetryValue"},"type":"array"}},"application/stream+json":{"schema":{"items":{"$ref":"#/components/schemas/handlers.TelemetryValue"},"type":"array"}},"text/csv":{"example":"id,timestamp,type,\u003cmetric\u003e\nk28f3lt,2024-03-01T08:15:00Z,distance,184302.10","schema":{"type":"string"}}},"description":"Time series samples (JSON array, or CSV with a header row by default)."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Energy charged (cumulative)","tags":["Telemetry"]}},"/bi/v1/timeseries/cumulativeenergydccharged":{"get":{"description":"DC energy charged per equipment, lifetime total, in kWh.","operationId":"biV1TimeseriesCumulativeenergydccharged","parameters":[{"description":"Organization identifier. Required only when using a token that has access to more than one organization.","in":"query","name":"orgID","schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/handlers.TelemetryValue"},"type":"array"}},"application/stream+json":{"schema":{"items":{"$ref":"#/components/schemas/handlers.TelemetryValue"},"type":"array"}},"text/csv":{"example":"id,timestamp,type,\u003cmetric\u003e\nk28f3lt,2024-03-01T08:15:00Z,distance,184302.10","schema":{"type":"string"}}},"description":"Time series samples (JSON array, or CSV with a header row by default)."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"DC energy charged (cumulative)","tags":["Telemetry"]}},"/bi/v1/timeseries/cumulativeenergyused":{"get":{"description":"Electrical energy used per equipment, lifetime total, in kWh.","operationId":"biV1TimeseriesCumulativeenergyused","parameters":[{"description":"Organization identifier. Required only when using a token that has access to more than one organization.","in":"query","name":"orgID","schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/handlers.TelemetryValue"},"type":"array"}},"application/stream+json":{"schema":{"items":{"$ref":"#/components/schemas/handlers.TelemetryValue"},"type":"array"}},"text/csv":{"example":"id,timestamp,type,\u003cmetric\u003e\nk28f3lt,2024-03-01T08:15:00Z,distance,184302.10","schema":{"type":"string"}}},"description":"Time series samples (JSON array, or CSV with a header row by default)."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Energy used (cumulative)","tags":["Telemetry"]}},"/bi/v1/timeseries/cumulativefuelused":{"get":{"description":"Fuel consumed per equipment as a running lifetime total, in liters.","operationId":"biV1TimeseriesCumulativefuelused","parameters":[{"description":"Organization identifier. Required only when using a token that has access to more than one organization.","in":"query","name":"orgID","schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/handlers.TelemetryValue"},"type":"array"}},"application/stream+json":{"schema":{"items":{"$ref":"#/components/schemas/handlers.TelemetryValue"},"type":"array"}},"text/csv":{"example":"id,timestamp,type,\u003cmetric\u003e\nk28f3lt,2024-03-01T08:15:00Z,distance,184302.10","schema":{"type":"string"}}},"description":"Time series samples (JSON array, or CSV with a header row by default)."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Fuel used (cumulative)","tags":["Telemetry"]}},"/bi/v1/timeseries/cumulativeidlehours":{"get":{"description":"Engine idle time per equipment as a running lifetime total, in hours.","operationId":"biV1TimeseriesCumulativeidlehours","parameters":[{"description":"Organization identifier. Required only when using a token that has access to more than one organization.","in":"query","name":"orgID","schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/handlers.TelemetryValue"},"type":"array"}},"application/stream+json":{"schema":{"items":{"$ref":"#/components/schemas/handlers.TelemetryValue"},"type":"array"}},"text/csv":{"example":"id,timestamp,type,\u003cmetric\u003e\nk28f3lt,2024-03-01T08:15:00Z,distance,184302.10","schema":{"type":"string"}}},"description":"Time series samples (JSON array, or CSV with a header row by default)."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Idle hours (cumulative)","tags":["Telemetry"]}},"/bi/v1/timeseries/cumulativeloadcount":{"get":{"description":"Number of load cycles per equipment, lifetime total.","operationId":"biV1TimeseriesCumulativeloadcount","parameters":[{"description":"Organization identifier. Required only when using a token that has access to more than one organization.","in":"query","name":"orgID","schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/handlers.TelemetryValue"},"type":"array"}},"application/stream+json":{"schema":{"items":{"$ref":"#/components/schemas/handlers.TelemetryValue"},"type":"array"}},"text/csv":{"example":"id,timestamp,type,\u003cmetric\u003e\nk28f3lt,2024-03-01T08:15:00Z,distance,184302.10","schema":{"type":"string"}}},"description":"Time series samples (JSON array, or CSV with a header row by default)."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Load count (cumulative)","tags":["Telemetry"]}},"/bi/v1/timeseries/cumulativenonproductiveidlehours":{"get":{"description":"Idle time outside productive operation per equipment, lifetime total, in hours.","operationId":"biV1TimeseriesCumulativenonproductiveidlehours","parameters":[{"description":"Organization identifier. Required only when using a token that has access to more than one organization.","in":"query","name":"orgID","schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/handlers.TelemetryValue"},"type":"array"}},"application/stream+json":{"schema":{"items":{"$ref":"#/components/schemas/handlers.TelemetryValue"},"type":"array"}},"text/csv":{"example":"id,timestamp,type,\u003cmetric\u003e\nk28f3lt,2024-03-01T08:15:00Z,distance,184302.10","schema":{"type":"string"}}},"description":"Time series samples (JSON array, or CSV with a header row by default)."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Non-productive idle hours (cumulative)","tags":["Telemetry"]}},"/bi/v1/timeseries/cumulativeoperatinghours":{"get":{"description":"Operating time per equipment as a running lifetime total, in hours.","operationId":"biV1TimeseriesCumulativeoperatinghours","parameters":[{"description":"Organization identifier. Required only when using a token that has access to more than one organization.","in":"query","name":"orgID","schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/handlers.TelemetryValue"},"type":"array"}},"application/stream+json":{"schema":{"items":{"$ref":"#/components/schemas/handlers.TelemetryValue"},"type":"array"}},"text/csv":{"example":"id,timestamp,type,\u003cmetric\u003e\nk28f3lt,2024-03-01T08:15:00Z,distance,184302.10","schema":{"type":"string"}}},"description":"Time series samples (JSON array, or CSV with a header row by default)."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Operating hours (cumulative)","tags":["Telemetry"]}},"/bi/v1/timeseries/cumulativepayloadtotal":{"get":{"description":"Payload moved per equipment as a running lifetime total.","operationId":"biV1TimeseriesCumulativepayloadtotal","parameters":[{"description":"Organization identifier. Required only when using a token that has access to more than one organization.","in":"query","name":"orgID","schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/handlers.TelemetryValue"},"type":"array"}},"application/stream+json":{"schema":{"items":{"$ref":"#/components/schemas/handlers.TelemetryValue"},"type":"array"}},"text/csv":{"example":"id,timestamp,type,\u003cmetric\u003e\nk28f3lt,2024-03-01T08:15:00Z,distance,184302.10","schema":{"type":"string"}}},"description":"Time series samples (JSON array, or CSV with a header row by default)."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Payload totals (cumulative)","tags":["Telemetry"]}},"/bi/v1/timeseries/cumulativepowertakeoffhours":{"get":{"description":"Power-take-off engaged time per equipment, lifetime total, in hours.","operationId":"biV1TimeseriesCumulativepowertakeoffhours","parameters":[{"description":"Organization identifier. Required only when using a token that has access to more than one organization.","in":"query","name":"orgID","schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/handlers.TelemetryValue"},"type":"array"}},"application/stream+json":{"schema":{"items":{"$ref":"#/components/schemas/handlers.TelemetryValue"},"type":"array"}},"text/csv":{"example":"id,timestamp,type,\u003cmetric\u003e\nk28f3lt,2024-03-01T08:15:00Z,distance,184302.10","schema":{"type":"string"}}},"description":"Time series samples (JSON array, or CSV with a header row by default)."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Power-take-off hours (cumulative)","tags":["Telemetry"]}},"/bi/v1/timeseries/dailyaverageengineloadfactor":{"get":{"description":"Average engine load factor per equipment over the preceding 24 hours, as a percentage (0-100).","operationId":"biV1TimeseriesDailyaverageengineloadfactor","parameters":[{"description":"Organization identifier. Required only when using a token that has access to more than one organization.","in":"query","name":"orgID","schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/handlers.TelemetryValue"},"type":"array"}},"application/stream+json":{"schema":{"items":{"$ref":"#/components/schemas/handlers.TelemetryValue"},"type":"array"}},"text/csv":{"example":"id,timestamp,type,\u003cmetric\u003e\nk28f3lt,2024-03-01T08:15:00Z,distance,184302.10","schema":{"type":"string"}}},"description":"Time series samples (JSON array, or CSV with a header row by default)."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Average engine load factor (daily)","tags":["Daily snapshots"]}},"/bi/v1/timeseries/dailyfuelused":{"get":{"description":"Fuel consumed per equipment over the preceding 24 hours, in liters.","operationId":"biV1TimeseriesDailyfuelused","parameters":[{"description":"Organization identifier. Required only when using a token that has access to more than one organization.","in":"query","name":"orgID","schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/handlers.TelemetryValue"},"type":"array"}},"application/stream+json":{"schema":{"items":{"$ref":"#/components/schemas/handlers.TelemetryValue"},"type":"array"}},"text/csv":{"example":"id,timestamp,type,\u003cmetric\u003e\nk28f3lt,2024-03-01T08:15:00Z,distance,184302.10","schema":{"type":"string"}}},"description":"Time series samples (JSON array, or CSV with a header row by default)."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Fuel used (daily)","tags":["Daily snapshots"]}},"/bi/v1/timeseries/dailypeakspeed":{"get":{"description":"Peak speed per equipment over the preceding 24 hours, in km/h.","operationId":"biV1TimeseriesDailypeakspeed","parameters":[{"description":"Organization identifier. Required only when using a token that has access to more than one organization.","in":"query","name":"orgID","schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/handlers.TelemetryValue"},"type":"array"}},"application/stream+json":{"schema":{"items":{"$ref":"#/components/schemas/handlers.TelemetryValue"},"type":"array"}},"text/csv":{"example":"id,timestamp,type,\u003cmetric\u003e\nk28f3lt,2024-03-01T08:15:00Z,distance,184302.10","schema":{"type":"string"}}},"description":"Time series samples (JSON array, or CSV with a header row by default)."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Peak speed (daily)","tags":["Daily snapshots"]}},"/bi/v1/timeseries/dailysnapshot":{"get":{"deprecated":true,"description":"Daily per-equipment snapshot (the active fleet): last-24h + cumulative values, one row per equipment per day.","operationId":"biV1TimeseriesDailysnapshot","parameters":[{"description":"Organization identifier. Required only when using a token that has access to more than one organization.","in":"query","name":"orgID","schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}},{"description":"If `true`, cumulative values are excluded; only daily (last 24h) values are included.","in":"query","name":"onlyLast24","schema":{"default":false,"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"type":"object"},"type":"array"}},"application/stream+json":{"schema":{"items":{"type":"object"},"type":"array"}},"text/csv":{"schema":{"type":"string"}}},"description":"Daily snapshot records (JSON array, or CSV with a header row by default)."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Daily snapshot (active fleet)","tags":["Daily snapshots"]}},"/bi/v1/timeseries/defremaining":{"get":{"deprecated":true,"description":"Get DEF remaining TimeSeries data\n\n**Note:** this series type is not yet implemented and currently returns an error.","operationId":"biV1TimeseriesDefremaining","parameters":[{"description":"Organization identifier. Required only when using a token that has access to more than one organization.","in":"query","name":"orgID","schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}}],"responses":{"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"},"501":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Not implemented: this series type is not yet available."}},"security":[{"bearerauth":[]}],"summary":"DEF remaining (not yet implemented)","tags":["Telemetry"]}},"/bi/v1/timeseries/enginecondition":{"get":{"deprecated":true,"description":"Get engine condition TimeSeries data\n\n**Note:** this series type is not yet implemented and currently returns an error.","operationId":"biV1TimeseriesEnginecondition","parameters":[{"description":"Organization identifier. Required only when using a token that has access to more than one organization.","in":"query","name":"orgID","schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}}],"responses":{"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"},"501":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Not implemented: this series type is not yet available."}},"security":[{"bearerauth":[]}],"summary":"Engine condition (not yet implemented)","tags":["Telemetry"]}},"/bi/v1/timeseries/faults":{"get":{"deprecated":true,"description":"Get faults TimeSeries data\n\n**Note:** this series type is not yet implemented and currently returns an error.","operationId":"biV1TimeseriesFaults","parameters":[{"description":"Organization identifier. Required only when using a token that has access to more than one organization.","in":"query","name":"orgID","schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}}],"responses":{"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"},"501":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Not implemented: this series type is not yet available."}},"security":[{"bearerauth":[]}],"summary":"Faults (not yet implemented)","tags":["Telemetry"]}},"/bi/v1/timeseries/fuelremainingratio":{"get":{"deprecated":true,"description":"Get fuel remaining ratio TimeSeries data\n\n**Note:** this series type is not yet implemented and currently returns an error.","operationId":"biV1TimeseriesFuelremainingratio","parameters":[{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}}],"responses":{"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"},"501":{"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Not implemented: this series type is not yet available."}},"security":[{"bearerauth":[]}],"summary":"Fuel remaining ratio (not yet implemented)","tags":["Telemetry"]}},"/bi/v1/timeseries/locations":{"get":{"description":"Last-known location per equipment as a time series. With `Accept: application/json` each item is a GeoJSON Feature; CSV is flat lat/lon/altitude columns.","operationId":"biV1TimeseriesLocations","parameters":[{"description":"Organization identifier. Required only when using a token that has access to more than one organization.","in":"query","name":"orgID","schema":{"type":"string"}},{"description":"The identifier of the equipment — the `id` from a fleet (`/bi/v5/fleet`) or project-equipment (`/v1/project/fleet`) listing, passed back verbatim.","example":"k28f3lt","in":"query","name":"equipmentID","schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}},{"description":"When `true`, ignore `rangeStart` and `rangeEnd` and return the entire available history.","in":"query","name":"fullRange","schema":{"default":false,"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/handlers.LocationFeature"},"type":"array"}},"application/stream+json":{"schema":{"items":{"$ref":"#/components/schemas/handlers.LocationFeature"},"type":"array"}},"text/csv":{"example":"id,timestamp,type,locationLatitude,locationLongitude,locationAltitude","schema":{"type":"string"}}},"description":"Location samples. As JSON each item is a GeoJSON Feature (geometry coordinates are [longitude, latitude]); as CSV the columns are id, timestamp, type, locationLatitude, locationLongitude, locationAltitude (see the text/csv example)."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Equipment locations","tags":["Telemetry"]}},"/bi/v1/work-site/timeseries/dailysnapshot":{"get":{"deprecated":true,"description":"Daily per-equipment snapshot (equipment at one work site): last-24h + cumulative values, one row per equipment per day.","operationId":"biV1WorksiteTimeseriesDailysnapshot","parameters":[{"description":"The identifier of the work site. The short token form (e.g. `k286o75`) is also accepted.","example":"acme/work-site/quarry-in-lillehammer","in":"query","name":"workSiteID","required":true,"schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}},{"description":"When `true`, ignore `rangeStart` and `rangeEnd` and return the entire available history.","in":"query","name":"fullRange","schema":{"default":false,"type":"boolean"}},{"description":"If `true`, cumulative values are excluded; only daily (last 24h) values are included.","in":"query","name":"onlyLast24","schema":{"default":false,"type":"boolean"}}],"responses":{"200":{"content":{"text/csv":{"schema":{"type":"string"}}},"description":"Daily snapshot records as CSV; the first row is the column header."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Daily snapshot for a work site","tags":["Daily snapshots","Sharing"]}},"/bi/v2/location/timeseries/dailysnapshot":{"get":{"description":"Daily per-equipment snapshot (equipment at a location): last-24h + cumulative values, one row per equipment per day. Plus on-site presence.","operationId":"biV2LocationTimeseriesDailysnapshot","parameters":[{"description":"The identifier of the location. The short token form (e.g. `k282ght`) is also accepted.","example":"acme/geofence/depot-lillehammer","in":"query","name":"locationID","required":true,"schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}},{"description":"When `true`, ignore `rangeStart` and `rangeEnd` and return the entire available history.","in":"query","name":"fullRange","schema":{"default":false,"type":"boolean"}}],"responses":{"200":{"content":{"text/csv":{"example":"id,timestamp,cumulativeActiveRegenerationHours,cumulativeIdleHours,expectedOperatingHours,idleHoursLast24,cumulativeIdleNonOperatingHours,cumulativeOperatingHours,operatingHoursLast24,cumulativePowerTakeOffHours,distance,distanceLast24,cumulativePayloadTotals,payloadTotalsLast24,fuelUsed,fuelUsedLast24,cumulativeLoadCount,loadCountLast24,maximumSpeedLast24,averageLoadFactorLast24Percent,cumulativeEnergyCharged,energyChargedLast24,locationLongitude,locationLatitude,locationAltitude,firstEnter,lastExit,exitCount,durationInSec,cumulativeIdleEnergyUsed,idleEnergyUsedLast24,cumulativeIdleFuelUsed,idleFuelUsedLast24,cumulativeIdleFuelUsedGaseous,idleFuelUsedGaseousLast24,cumulativeProductiveHours,productiveHoursLast24","schema":{"type":"string"}}},"description":"Daily snapshot as CSV; the first row is the column header. Exact columns vary by API version."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Daily snapshot for a location","tags":["Daily snapshots"]}},"/bi/v2/project/timeseries/equipmentdailysnapshot":{"get":{"deprecated":true,"description":"Daily per-equipment snapshot (the equipment in one project): last-24h + cumulative values, one row per equipment per day.","operationId":"biV2ProjectTimeseriesEquipmentdailysnapshot","parameters":[{"description":"The identifier of the project (also listed by `/projects`). The short token form (e.g. `k28nj0h`) is also accepted.","example":"acme/projects/project-lillehammer","in":"query","name":"projectID","required":true,"schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}},{"description":"When `true`, ignore `rangeStart` and `rangeEnd` and return the entire available history.","in":"query","name":"fullRange","schema":{"default":false,"type":"boolean"}},{"description":"If `true`, cumulative values are excluded; only daily (last 24h) values are included.","in":"query","name":"onlyLast24","schema":{"default":false,"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"type":"object"},"type":"array"}},"application/stream+json":{"schema":{"items":{"type":"object"},"type":"array"}},"text/csv":{"schema":{"type":"string"}}},"description":"Daily snapshot records (JSON array, or CSV with a header row by default)."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Daily snapshot for a project's equipment","tags":["Daily snapshots","Projects"]}},"/bi/v2/projects/timeseries/dailysnapshot":{"get":{"deprecated":true,"description":"Daily per-project snapshot across the organization's projects: the values of each project's equipment summed, one row per project per day.","operationId":"biV2ProjectsTimeseriesDailysnapshot","parameters":[{"description":"Organization identifier. Required only when using a token that has access to more than one organization.","in":"query","name":"orgID","schema":{"type":"string"}},{"description":"List of Project IDs (e.g. id1,id2)","in":"query","name":"projectIdList","schema":{"items":{"type":"string"},"type":"array"},"style":"form"},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}}],"responses":{"200":{"content":{"text/csv":{"schema":{"type":"string"}}},"description":"Daily snapshot records as CSV; the first row is the column header."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Daily snapshot across projects","tags":["Daily snapshots","Projects"]}},"/bi/v2/share-contract/timeseries/dailysnapshot":{"get":{"deprecated":true,"description":"Daily per-equipment snapshot (equipment under one share contract): last-24h + cumulative values, one row per equipment per day.","operationId":"biV2SharecontractTimeseriesDailysnapshot","parameters":[{"description":"The identifier of the share contract. The short token form (e.g. `k2859mp`) is also accepted. Provide exactly one of `shareContractID` or `shareConnectorID`.","example":"acme/share-contract/lillehammer-rental","in":"query","name":"shareContractID","schema":{"type":"string"}},{"description":"The identifier of the share connector. The short token form (e.g. `k28gi69`) is also accepted. Provide exactly one of `shareContractID` or `shareConnectorID`.","example":"acme/share-connector/lillehammer-feed","in":"query","name":"shareConnectorID","schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}},{"description":"When `true`, ignore `rangeStart` and `rangeEnd` and return the entire available history.","in":"query","name":"fullRange","schema":{"default":false,"type":"boolean"}},{"description":"If `true`, cumulative values are excluded; only daily (last 24h) values are included.","in":"query","name":"onlyLast24","schema":{"default":false,"type":"boolean"}}],"responses":{"200":{"content":{"text/csv":{"schema":{"type":"string"}}},"description":"Daily snapshot records as CSV; the first row is the column header."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Daily snapshot for a share contract","tags":["Daily snapshots","Sharing"]}},"/bi/v2/timeseries/dailysnapshot":{"get":{"deprecated":true,"description":"Daily per-equipment snapshot (the active fleet): last-24h + cumulative values, one row per equipment per day.","operationId":"biV2TimeseriesDailysnapshot","parameters":[{"description":"Organization identifier. Required only when using a token that has access to more than one organization.","in":"query","name":"orgID","schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}},{"description":"If `true`, cumulative values are excluded; only daily (last 24h) values are included.","in":"query","name":"onlyLast24","schema":{"default":false,"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"type":"object"},"type":"array"}},"application/stream+json":{"schema":{"items":{"type":"object"},"type":"array"}},"text/csv":{"schema":{"type":"string"}}},"description":"Daily snapshot records (JSON array, or CSV with a header row by default)."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Daily snapshot (active fleet)","tags":["Daily snapshots"]}},"/bi/v2/work-site/timeseries/dailysnapshot":{"get":{"deprecated":true,"description":"Daily per-equipment snapshot (equipment at one work site): last-24h + cumulative values, one row per equipment per day.","operationId":"biV2WorksiteTimeseriesDailysnapshot","parameters":[{"description":"The identifier of the work site. The short token form (e.g. `k286o75`) is also accepted.","example":"acme/work-site/quarry-in-lillehammer","in":"query","name":"workSiteID","required":true,"schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}},{"description":"When `true`, ignore `rangeStart` and `rangeEnd` and return the entire available history.","in":"query","name":"fullRange","schema":{"default":false,"type":"boolean"}},{"description":"If `true`, cumulative values are excluded; only daily (last 24h) values are included.","in":"query","name":"onlyLast24","schema":{"default":false,"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"type":"object"},"type":"array"}},"application/stream+json":{"schema":{"items":{"type":"object"},"type":"array"}},"text/csv":{"schema":{"type":"string"}}},"description":"Daily snapshot records as CSV; the first row is the column header."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Daily snapshot for a work site","tags":["Daily snapshots","Sharing"]}},"/bi/v3/project/timeseries/equipmentdailysnapshot":{"get":{"deprecated":true,"description":"Daily per-equipment snapshot (the equipment in one project): last-24h + cumulative values, one row per equipment per day.","operationId":"biV3ProjectTimeseriesEquipmentdailysnapshot","parameters":[{"description":"The identifier of the project (also listed by `/projects`). The short token form (e.g. `k28nj0h`) is also accepted.","example":"acme/projects/project-lillehammer","in":"query","name":"projectID","required":true,"schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}},{"description":"When `true`, ignore `rangeStart` and `rangeEnd` and return the entire available history.","in":"query","name":"fullRange","schema":{"default":false,"type":"boolean"}},{"description":"If `true`, cumulative values are excluded; only daily (last 24h) values are included.","in":"query","name":"onlyLast24","schema":{"default":false,"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"type":"object"},"type":"array"}},"application/stream+json":{"schema":{"items":{"type":"object"},"type":"array"}},"text/csv":{"schema":{"type":"string"}}},"description":"Daily snapshot records (JSON array, or CSV with a header row by default)."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Daily snapshot for a project's equipment","tags":["Daily snapshots","Projects"]}},"/bi/v3/projects/timeseries/dailysnapshot":{"get":{"deprecated":true,"description":"Daily per-project snapshot across the organization's projects: the values of each project's equipment summed, one row per project per day.","operationId":"biV3ProjectsTimeseriesDailysnapshot","parameters":[{"description":"Organization identifier. Required only when using a token that has access to more than one organization.","in":"query","name":"orgID","schema":{"type":"string"}},{"description":"List of project ids (csv, e.g. id1,id2)","in":"query","name":"projectIdList","schema":{"items":{"type":"string"},"type":"array"},"style":"form"},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}}],"responses":{"200":{"content":{"text/csv":{"schema":{"type":"string"}}},"description":"Daily snapshot records as CSV; the first row is the column header."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Daily snapshot across projects","tags":["Daily snapshots","Projects"]}},"/bi/v3/share-contract/timeseries/dailysnapshot":{"get":{"deprecated":true,"description":"Daily per-equipment snapshot (equipment under one share contract): last-24h + cumulative values, one row per equipment per day.","operationId":"biV3SharecontractTimeseriesDailysnapshot","parameters":[{"description":"The identifier of the share contract. The short token form (e.g. `k2859mp`) is also accepted. Provide exactly one of `shareContractID` or `shareConnectorID`.","example":"acme/share-contract/lillehammer-rental","in":"query","name":"shareContractID","schema":{"type":"string"}},{"description":"The identifier of the share connector. The short token form (e.g. `k28gi69`) is also accepted. Provide exactly one of `shareContractID` or `shareConnectorID`.","example":"acme/share-connector/lillehammer-feed","in":"query","name":"shareConnectorID","schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}},{"description":"When `true`, ignore `rangeStart` and `rangeEnd` and return the entire available history.","in":"query","name":"fullRange","schema":{"default":false,"type":"boolean"}},{"description":"If `true`, cumulative values are excluded; only daily (last 24h) values are included.","in":"query","name":"onlyLast24","schema":{"default":false,"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"type":"object"},"type":"array"}},"application/stream+json":{"schema":{"items":{"type":"object"},"type":"array"}},"text/csv":{"schema":{"type":"string"}}},"description":"Daily snapshot records as CSV; the first row is the column header."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Daily snapshot for a share contract","tags":["Daily snapshots","Sharing"]}},"/bi/v3/timeseries/dailysnapshot":{"get":{"deprecated":true,"description":"Daily per-equipment snapshot (the active fleet): last-24h + cumulative values, one row per equipment per day.","operationId":"biV3TimeseriesDailysnapshot","parameters":[{"description":"Organization identifier. Required only when using a token that has access to more than one organization.","in":"query","name":"orgID","schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}},{"description":"When `true`, ignore `rangeStart` and `rangeEnd` and return the entire available history.","in":"query","name":"fullRange","schema":{"default":false,"type":"boolean"}},{"description":"If `true`, cumulative values are excluded; only daily (last 24h) values are included.","in":"query","name":"onlyLast24","schema":{"default":false,"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"type":"object"},"type":"array"}},"application/stream+json":{"schema":{"items":{"type":"object"},"type":"array"}},"text/csv":{"schema":{"type":"string"}}},"description":"Daily snapshot records (JSON array, or CSV with a header row by default)."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Daily snapshot (active fleet)","tags":["Daily snapshots"]}},"/bi/v3/work-site/timeseries/dailysnapshot":{"get":{"deprecated":true,"description":"Daily per-equipment snapshot (equipment at one work site): last-24h + cumulative values, one row per equipment per day.","operationId":"biV3WorksiteTimeseriesDailysnapshot","parameters":[{"description":"The identifier of the work site. The short token form (e.g. `k286o75`) is also accepted.","example":"acme/work-site/quarry-in-lillehammer","in":"query","name":"workSiteID","required":true,"schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}},{"description":"When `true`, ignore `rangeStart` and `rangeEnd` and return the entire available history.","in":"query","name":"fullRange","schema":{"default":false,"type":"boolean"}},{"description":"If `true`, cumulative values are excluded; only daily (last 24h) values are included.","in":"query","name":"onlyLast24","schema":{"default":false,"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"type":"object"},"type":"array"}},"application/stream+json":{"schema":{"items":{"type":"object"},"type":"array"}},"text/csv":{"schema":{"type":"string"}}},"description":"Daily snapshot records as CSV; the first row is the column header."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Daily snapshot for a work site","tags":["Daily snapshots","Sharing"]}},"/bi/v4/fleet":{"get":{"deprecated":true,"description":"Every equipment that has belonged to the fleet, with its current identity attributes (make, model, serial number, category and more).","operationId":"biV4Fleet","parameters":[{"description":"Organization identifier. Required only when using a token that has access to more than one organization.","in":"query","name":"orgID","schema":{"type":"string"}},{"description":"Preferred language for localized names such as fuel type (BCP 47), e.g. `en-US` or `nb`.","example":"en-US","in":"header","name":"accept-language","schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/handlers.FleetItem"},"type":"array"}},"application/stream+json":{"schema":{"items":{"$ref":"#/components/schemas/handlers.FleetItem"},"type":"array"}},"text/csv":{"example":"id,unitInstallDateTime,make,model,equipmentID,serialNumber,pin,category,fuelType,department\nk28f3lt,2022-06-14T00:00:00Z,Volvo,EC220E,Demo Excavator #05,VCE0EC22L00012345,,Excavator,Diesel,Site North","schema":{"type":"string"}}},"description":"Fleet equipment records (JSON array, or CSV with a header row by default)."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Fleet list export","tags":["Fleet"]}},"/bi/v4/project/timeseries/equipmentdailysnapshot":{"get":{"deprecated":true,"description":"Daily per-equipment snapshot (the equipment in one project): last-24h + cumulative values, one row per equipment per day.","operationId":"biV4ProjectTimeseriesEquipmentdailysnapshot","parameters":[{"description":"The identifier of the project (also listed by `/projects`). The short token form (e.g. `k28nj0h`) is also accepted.","example":"acme/projects/project-lillehammer","in":"query","name":"projectID","required":true,"schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}},{"description":"When `true`, ignore `rangeStart` and `rangeEnd` and return the entire available history.","in":"query","name":"fullRange","schema":{"default":false,"type":"boolean"}},{"description":"If `true`, cumulative values are excluded; only daily (last 24h) values are included.","in":"query","name":"onlyLast24","schema":{"default":false,"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"type":"object"},"type":"array"}},"application/stream+json":{"schema":{"items":{"type":"object"},"type":"array"}},"text/csv":{"schema":{"type":"string"}}},"description":"Daily snapshot records (JSON array, or CSV with a header row by default)."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Daily snapshot for a project's equipment","tags":["Daily snapshots","Projects"]}},"/bi/v4/projects/timeseries/dailysnapshot":{"get":{"deprecated":true,"description":"Daily per-project snapshot across the organization's projects: the values of each project's equipment summed, one row per project per day.","operationId":"biV4ProjectsTimeseriesDailysnapshot","parameters":[{"description":"Organization identifier. Required only when using a token that has access to more than one organization.","in":"query","name":"orgID","schema":{"type":"string"}},{"description":"List of project ids (csv, e.g. id1,id2)","in":"query","name":"projectIdList","schema":{"items":{"type":"string"},"type":"array"},"style":"form"},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}}],"responses":{"200":{"content":{"text/csv":{"schema":{"type":"string"}}},"description":"Daily snapshot records as CSV; the first row is the column header."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Daily snapshot across projects","tags":["Daily snapshots","Projects"]}},"/bi/v4/share-contract/timeseries/dailysnapshot":{"get":{"deprecated":true,"description":"Daily per-equipment snapshot (equipment under one share contract): last-24h + cumulative values, one row per equipment per day.","operationId":"biV4SharecontractTimeseriesDailysnapshot","parameters":[{"description":"The identifier of the share contract. The short token form (e.g. `k2859mp`) is also accepted. Provide exactly one of `shareContractID` or `shareConnectorID`.","example":"acme/share-contract/lillehammer-rental","in":"query","name":"shareContractID","schema":{"type":"string"}},{"description":"The identifier of the share connector. The short token form (e.g. `k28gi69`) is also accepted. Provide exactly one of `shareContractID` or `shareConnectorID`.","example":"acme/share-connector/lillehammer-feed","in":"query","name":"shareConnectorID","schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}},{"description":"When `true`, ignore `rangeStart` and `rangeEnd` and return the entire available history.","in":"query","name":"fullRange","schema":{"default":false,"type":"boolean"}},{"description":"If `true`, cumulative values are excluded; only daily (last 24h) values are included.","in":"query","name":"onlyLast24","schema":{"default":false,"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"type":"object"},"type":"array"}},"application/stream+json":{"schema":{"items":{"type":"object"},"type":"array"}},"text/csv":{"schema":{"type":"string"}}},"description":"Daily snapshot records as CSV; the first row is the column header."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Daily snapshot for a share contract","tags":["Daily snapshots","Sharing"]}},"/bi/v4/timeseries/dailysnapshot":{"get":{"deprecated":true,"description":"Daily per-equipment snapshot (the active fleet): last-24h + cumulative values, one row per equipment per day.","operationId":"biV4TimeseriesDailysnapshot","parameters":[{"description":"Organization identifier. Required only when using a token that has access to more than one organization.","in":"query","name":"orgID","schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}},{"description":"When `true`, ignore `rangeStart` and `rangeEnd` and return the entire available history.","in":"query","name":"fullRange","schema":{"default":false,"type":"boolean"}},{"description":"If `true`, cumulative values are excluded; only daily (last 24h) values are included.","in":"query","name":"onlyLast24","schema":{"default":false,"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"type":"object"},"type":"array"}},"application/stream+json":{"schema":{"items":{"type":"object"},"type":"array"}},"text/csv":{"schema":{"type":"string"}}},"description":"Daily snapshot records (JSON array, or CSV with a header row by default)."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Daily snapshot (active fleet)","tags":["Daily snapshots"]}},"/bi/v4/work-site/timeseries/dailysnapshot":{"get":{"deprecated":true,"description":"Daily per-equipment snapshot (equipment at one work site): last-24h + cumulative values, one row per equipment per day.","operationId":"biV4WorksiteTimeseriesDailysnapshot","parameters":[{"description":"The identifier of the work site. The short token form (e.g. `k286o75`) is also accepted.","example":"acme/work-site/quarry-in-lillehammer","in":"query","name":"workSiteID","required":true,"schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}},{"description":"When `true`, ignore `rangeStart` and `rangeEnd` and return the entire available history.","in":"query","name":"fullRange","schema":{"default":false,"type":"boolean"}},{"description":"If `true`, cumulative values are excluded; only daily (last 24h) values are included.","in":"query","name":"onlyLast24","schema":{"default":false,"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"type":"object"},"type":"array"}},"application/stream+json":{"schema":{"items":{"type":"object"},"type":"array"}},"text/csv":{"schema":{"type":"string"}}},"description":"Daily snapshot records as CSV; the first row is the column header."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Daily snapshot for a work site","tags":["Daily snapshots","Sharing"]}},"/bi/v5/fleet":{"get":{"description":"Every equipment that has belonged to the fleet, with its current identity attributes (make, model, serial number, category and more).","operationId":"biV5Fleet","parameters":[{"description":"Organization identifier. Required only when using a token that has access to more than one organization.","in":"query","name":"orgID","schema":{"type":"string"}},{"description":"Preferred language for localized names such as fuel type (BCP 47), e.g. `en-US` or `nb`.","example":"en-US","in":"header","name":"accept-language","schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/handlers.FleetItemV5"},"type":"array"}},"application/stream+json":{"schema":{"items":{"$ref":"#/components/schemas/handlers.FleetItemV5"},"type":"array"}},"text/csv":{"example":"id,unitInstallDateTime,make,model,equipmentID,serialNumber,vin,category,fuelType,department,plateNumber,uneceCategory,emissionStage\nk28f3lt,2022-06-14T00:00:00Z,Volvo,EC220E,Demo Excavator #05,VCE0EC22L00012345,YV2RT40A8FB123456,Excavator,Diesel,Site North,DR12345,N3,Stage V","schema":{"type":"string"}}},"description":"Fleet equipment records (JSON array, or CSV with a header row by default)."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Fleet list export","tags":["Fleet"]}},"/bi/v5/project/timeseries/equipmentdailysnapshot":{"get":{"description":"Daily per-equipment snapshot (the equipment in one project): last-24h + cumulative values, one row per equipment per day.","operationId":"biV5ProjectTimeseriesEquipmentdailysnapshot","parameters":[{"description":"The identifier of the project (also listed by `/projects`). The short token form (e.g. `k28nj0h`) is also accepted.","example":"acme/projects/project-lillehammer","in":"query","name":"projectID","required":true,"schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}},{"description":"When `true`, ignore `rangeStart` and `rangeEnd` and return the entire available history.","in":"query","name":"fullRange","schema":{"default":false,"type":"boolean"}},{"description":"If `true`, cumulative values are excluded; only daily (last 24h) values are included.","in":"query","name":"onlyLast24","schema":{"default":false,"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"properties":{"activeRegenerationHoursLast24":{"example":0.5,"type":"number"},"averageLoadFactorLast24":{"example":63,"type":"number"},"carbonEmissionLast24":{"example":1.94,"type":"number"},"cumulativeActiveRegenerationHours":{"example":312.5,"type":"number"},"cumulativeDistance":{"example":184302.1,"type":"number"},"cumulativeEnergyCharged":{"type":"number"},"cumulativeEnergyUsed":{"example":74.71,"type":"number"},"cumulativeFuelUsed":{"example":21874,"type":"number"},"cumulativeFuelUsedGaseous":{"type":"number"},"cumulativeIdleEnergyUsed":{"type":"number"},"cumulativeIdleFuelUsed":{"example":410,"type":"number"},"cumulativeIdleFuelUsedGaseous":{"type":"number"},"cumulativeIdleHours":{"example":1840.25,"type":"number"},"cumulativeIdleNonOperatingHours":{"example":640.75,"type":"number"},"cumulativeLoadCount":{"example":4120,"type":"number"},"cumulativeOperatingHours":{"example":5123.5,"type":"number"},"cumulativePayloadTotals":{"example":98500,"type":"number"},"cumulativePowerTakeOffHours":{"example":210,"type":"number"},"cumulativeProductiveHours":{"example":1520.5,"type":"number"},"day":{"description":"Day of the telemetry reporting date (RFC3339 full-date)","example":"2024-03-01","type":"string"},"distanceLast24":{"example":42.3,"type":"number"},"electricalEnergyUsedEstimatedFromEnergyChargedLast24":{"type":"number"},"electricalEnergyUsedEstimatedFromOperatingHoursLast24":{"type":"number"},"energyChargedLast24":{"type":"number"},"energyUsedLast24":{"example":74.71,"type":"number"},"expectedOperatingHours":{"example":8,"type":"number"},"fuelUsedEstimatedFromOperatingHoursLast24":{"example":36,"type":"number"},"fuelUsedGaseousLast24":{"type":"number"},"fuelUsedLast24":{"example":35.4,"type":"number"},"id":{"description":"Internal immutable ProAPI identifier","example":"k28f3lt","type":"string"},"idleEnergyUsedLast24":{"type":"number"},"idleFuelUsedGaseousLast24":{"type":"number"},"idleFuelUsedLast24":{"example":0.8,"type":"number"},"idleHoursLast24":{"example":1.25,"type":"number"},"idleNonOperatingHoursLast24":{"example":0.75,"type":"number"},"loadCountLast24":{"example":12,"type":"number"},"location":{"type":"object"},"maximumSpeedLast24":{"example":34.2,"type":"number"},"operatingHoursLast24":{"example":8,"type":"number"},"payloadTotalsLast24":{"example":1200,"type":"number"},"powerTakeOffHoursLast24":{"type":"number"},"productiveHoursLast24":{"example":6.5,"type":"number"}},"type":"object"},"type":"array"}},"application/stream+json":{"schema":{"items":{"type":"object"},"type":"array"}},"text/csv":{"example":"id,timestamp,cumulativeActiveRegenerationHours,activeRegenerationHoursLast24,cumulativeIdleHours,expectedOperatingHours,idleHoursLast24,cumulativeIdleNonOperatingHours,idleNonOperatingHoursLast24,cumulativeOperatingHours,operatingHoursLast24,cumulativePowerTakeOffHours,powerTakeOffHoursLast24,distance,distanceLast24,cumulativePayloadTotals,payloadTotalsLast24,fuelUsed,carbonEmissionLast24,fuelUsedLast24,cumulativeLoadCount,loadCountLast24,cumulativeEnergyCharged,energyChargedLast24,cumulativeEnergyUsed,energyUsedLast24,maximumSpeedLast24,averageLoadFactorLast24Percent,locationLongitude,locationLatitude,locationAltitude,electricalEnergyUsedEstimatedFromEnergyChargedLast24,electricalEnergyUsedEstimatedFromOperatingHoursLast24,fuelUsedEstimatedFromOperatingHoursLast24,cumulativeFuelUsedGaseous,fuelUsedGaseousLast24,cumulativeIdleEnergyUsed,idleEnergyUsedLast24,cumulativeIdleFuelUsed,idleFuelUsedLast24,cumulativeIdleFuelUsedGaseous,idleFuelUsedGaseousLast24,cumulativeProductiveHours,productiveHoursLast24","schema":{"type":"string"}}},"description":"Daily snapshot records (JSON array, or CSV with a header row by default)."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Daily snapshot for a project's equipment","tags":["Daily snapshots","Projects"]}},"/bi/v5/projects/timeseries/dailysnapshot":{"get":{"description":"Daily per-project snapshot across the organization's projects: the values of each project's equipment summed, one row per project per day.","operationId":"biV5ProjectsTimeseriesDailysnapshot","parameters":[{"description":"Organization identifier. Required only when using a token that has access to more than one organization.","in":"query","name":"orgID","schema":{"type":"string"}},{"description":"List of project ids (csv, e.g. id1,id2)","in":"query","name":"projectIdList","schema":{"items":{"type":"string"},"type":"array"},"style":"form"},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}}],"responses":{"200":{"content":{"text/csv":{"example":"id,timestamp,operatingHoursLast24,electricOperatingHoursLast24,fuelUsedLast24,idleHoursLast24,distanceLast24,energyUsedLast24,idleNonOperatingHoursLast24,activeRegenerationHoursLast24,powerTakeOffHoursLast24,payloadTotalsLast24,loadCountLast24,averageLoadFactorLast24,equipmentCount,activeEquipmentCount,expectedOperatingHours,expectedEquipmentCount,operatingHoursFilteredByEquipmentWithIdleHoursLast24,operatingHoursFilteredByEquipmentWithFuelUsedLast24,operatingHoursFilteredByEquipmentWithElectricEnergyUsedLast24,expectedOperatingHoursFilteredByEquipmentWithOperatingHoursLast24,fuelUsedFilteredByEquipmentWithDistanceLast24,distanceFilteredByEquipmentWithFuelUsedLast24,energyChargedLast24,electricalEnergyUsedEstimatedFromEnergyChargedLast24,electricalEnergyUsedEstimatedFromOperatingHoursLast24,fuelUsedEstimatedFromOperatingHoursLast24,fuelUsedGaseousLast24,cumulativeIdleEnergyUsed,idleEnergyUsedLast24,cumulativeIdleFuelUsed,idleFuelUsedLast24,cumulativeIdleFuelUsedGaseous,idleFuelUsedGaseousLast24,cumulativeProductiveHours,productiveHoursLast24","schema":{"type":"string"}}},"description":"Daily snapshot records as CSV; the first row is the column header."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Daily snapshot across projects","tags":["Daily snapshots","Projects"]}},"/bi/v5/share-contract/timeseries/dailysnapshot":{"get":{"description":"Daily per-equipment snapshot (equipment under one share contract): last-24h + cumulative values, one row per equipment per day.","operationId":"biV5SharecontractTimeseriesDailysnapshot","parameters":[{"description":"The identifier of the share contract. The short token form (e.g. `k2859mp`) is also accepted. Provide exactly one of `shareContractID` or `shareConnectorID`.","example":"acme/share-contract/lillehammer-rental","in":"query","name":"shareContractID","schema":{"type":"string"}},{"description":"The identifier of the share connector. The short token form (e.g. `k28gi69`) is also accepted. Provide exactly one of `shareContractID` or `shareConnectorID`.","example":"acme/share-connector/lillehammer-feed","in":"query","name":"shareConnectorID","schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}},{"description":"When `true`, ignore `rangeStart` and `rangeEnd` and return the entire available history.","in":"query","name":"fullRange","schema":{"default":false,"type":"boolean"}},{"description":"If `true`, cumulative values are excluded; only daily (last 24h) values are included.","in":"query","name":"onlyLast24","schema":{"default":false,"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"properties":{"activeRegenerationHoursLast24":{"example":0.5,"type":"number"},"averageLoadFactorLast24":{"example":63,"type":"number"},"carbonEmissionLast24":{"example":1.94,"type":"number"},"cumulativeActiveRegenerationHours":{"example":312.5,"type":"number"},"cumulativeDistance":{"example":184302.1,"type":"number"},"cumulativeEnergyCharged":{"type":"number"},"cumulativeEnergyUsed":{"example":74.71,"type":"number"},"cumulativeFuelUsed":{"example":21874,"type":"number"},"cumulativeFuelUsedGaseous":{"type":"number"},"cumulativeIdleEnergyUsed":{"type":"number"},"cumulativeIdleFuelUsed":{"example":410,"type":"number"},"cumulativeIdleFuelUsedGaseous":{"type":"number"},"cumulativeIdleHours":{"example":1840.25,"type":"number"},"cumulativeIdleNonOperatingHours":{"example":640.75,"type":"number"},"cumulativeLoadCount":{"example":4120,"type":"number"},"cumulativeOperatingHours":{"example":5123.5,"type":"number"},"cumulativePayloadTotals":{"example":98500,"type":"number"},"cumulativePowerTakeOffHours":{"example":210,"type":"number"},"cumulativeProductiveHours":{"example":1520.5,"type":"number"},"day":{"description":"Day of the telemetry reporting date (RFC3339 full-date)","example":"2024-03-01","type":"string"},"distanceLast24":{"example":42.3,"type":"number"},"electricalEnergyUsedEstimatedFromEnergyChargedLast24":{"type":"number"},"electricalEnergyUsedEstimatedFromOperatingHoursLast24":{"type":"number"},"energyChargedLast24":{"type":"number"},"energyUsedLast24":{"example":74.71,"type":"number"},"expectedOperatingHours":{"example":8,"type":"number"},"fuelUsedEstimatedFromOperatingHoursLast24":{"example":36,"type":"number"},"fuelUsedGaseousLast24":{"type":"number"},"fuelUsedLast24":{"example":35.4,"type":"number"},"id":{"description":"Internal immutable ProAPI identifier","example":"k28f3lt","type":"string"},"idleEnergyUsedLast24":{"type":"number"},"idleFuelUsedGaseousLast24":{"type":"number"},"idleFuelUsedLast24":{"example":0.8,"type":"number"},"idleHoursLast24":{"example":1.25,"type":"number"},"idleNonOperatingHoursLast24":{"example":0.75,"type":"number"},"loadCountLast24":{"example":12,"type":"number"},"location":{"type":"object"},"maximumSpeedLast24":{"example":34.2,"type":"number"},"operatingHoursLast24":{"example":8,"type":"number"},"payloadTotalsLast24":{"example":1200,"type":"number"},"powerTakeOffHoursLast24":{"type":"number"},"productiveHoursLast24":{"example":6.5,"type":"number"}},"type":"object"},"type":"array"}},"application/stream+json":{"schema":{"items":{"type":"object"},"type":"array"}},"text/csv":{"example":"id,timestamp,cumulativeActiveRegenerationHours,activeRegenerationHoursLast24,cumulativeIdleHours,expectedOperatingHours,idleHoursLast24,cumulativeIdleNonOperatingHours,idleNonOperatingHoursLast24,cumulativeOperatingHours,operatingHoursLast24,cumulativePowerTakeOffHours,powerTakeOffHoursLast24,distance,distanceLast24,cumulativePayloadTotals,payloadTotalsLast24,fuelUsed,carbonEmissionLast24,fuelUsedLast24,cumulativeLoadCount,loadCountLast24,cumulativeEnergyCharged,energyChargedLast24,cumulativeEnergyUsed,energyUsedLast24,maximumSpeedLast24,averageLoadFactorLast24Percent,locationLongitude,locationLatitude,locationAltitude,electricalEnergyUsedEstimatedFromEnergyChargedLast24,electricalEnergyUsedEstimatedFromOperatingHoursLast24,fuelUsedEstimatedFromOperatingHoursLast24,cumulativeFuelUsedGaseous,fuelUsedGaseousLast24,cumulativeIdleEnergyUsed,idleEnergyUsedLast24,cumulativeIdleFuelUsed,idleFuelUsedLast24,cumulativeIdleFuelUsedGaseous,idleFuelUsedGaseousLast24,cumulativeProductiveHours,productiveHoursLast24","schema":{"type":"string"}}},"description":"Daily snapshot records. JSON array (Accept: application/json) or CSV (the default) with a header row; fields/columns vary with onlyLast24."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Daily snapshot for a share contract","tags":["Daily snapshots","Sharing"]}},"/bi/v5/timeseries/dailysnapshot":{"get":{"deprecated":true,"description":"Daily per-equipment snapshot (the active fleet): last-24h + cumulative values, one row per equipment per day.","operationId":"biV5TimeseriesDailysnapshot","parameters":[{"description":"Organization identifier. Required only when using a token that has access to more than one organization.","in":"query","name":"orgID","schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}},{"description":"When `true`, ignore `rangeStart` and `rangeEnd` and return the entire available history.","in":"query","name":"fullRange","schema":{"default":false,"type":"boolean"}},{"description":"If `true`, cumulative values are excluded; only daily (last 24h) values are included.","in":"query","name":"onlyLast24","schema":{"default":false,"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"type":"object"},"type":"array"}},"application/stream+json":{"schema":{"items":{"type":"object"},"type":"array"}},"text/csv":{"schema":{"type":"string"}}},"description":"Daily snapshot records (JSON array, or CSV with a header row by default)."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Daily snapshot (active fleet)","tags":["Daily snapshots"]}},"/bi/v5/work-site/timeseries/dailysnapshot":{"get":{"description":"Daily per-equipment snapshot (equipment at one work site): last-24h + cumulative values, one row per equipment per day.","operationId":"biV5WorksiteTimeseriesDailysnapshot","parameters":[{"description":"The identifier of the work site. The short token form (e.g. `k286o75`) is also accepted.","example":"acme/work-site/quarry-in-lillehammer","in":"query","name":"workSiteID","required":true,"schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}},{"description":"When `true`, ignore `rangeStart` and `rangeEnd` and return the entire available history.","in":"query","name":"fullRange","schema":{"default":false,"type":"boolean"}},{"description":"If `true`, cumulative values are excluded; only daily (last 24h) values are included.","in":"query","name":"onlyLast24","schema":{"default":false,"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"properties":{"activeRegenerationHoursLast24":{"example":0.5,"type":"number"},"averageLoadFactorLast24":{"example":63,"type":"number"},"carbonEmissionLast24":{"example":1.94,"type":"number"},"cumulativeActiveRegenerationHours":{"example":312.5,"type":"number"},"cumulativeDistance":{"example":184302.1,"type":"number"},"cumulativeEnergyCharged":{"type":"number"},"cumulativeEnergyUsed":{"example":74.71,"type":"number"},"cumulativeFuelUsed":{"example":21874,"type":"number"},"cumulativeFuelUsedGaseous":{"type":"number"},"cumulativeIdleEnergyUsed":{"type":"number"},"cumulativeIdleFuelUsed":{"example":410,"type":"number"},"cumulativeIdleFuelUsedGaseous":{"type":"number"},"cumulativeIdleHours":{"example":1840.25,"type":"number"},"cumulativeIdleNonOperatingHours":{"example":640.75,"type":"number"},"cumulativeLoadCount":{"example":4120,"type":"number"},"cumulativeOperatingHours":{"example":5123.5,"type":"number"},"cumulativePayloadTotals":{"example":98500,"type":"number"},"cumulativePowerTakeOffHours":{"example":210,"type":"number"},"cumulativeProductiveHours":{"example":1520.5,"type":"number"},"day":{"description":"Day of the telemetry reporting date (RFC3339 full-date)","example":"2024-03-01","type":"string"},"distanceLast24":{"example":42.3,"type":"number"},"electricalEnergyUsedEstimatedFromEnergyChargedLast24":{"type":"number"},"electricalEnergyUsedEstimatedFromOperatingHoursLast24":{"type":"number"},"energyChargedLast24":{"type":"number"},"energyUsedLast24":{"example":74.71,"type":"number"},"expectedOperatingHours":{"example":8,"type":"number"},"fuelUsedEstimatedFromOperatingHoursLast24":{"example":36,"type":"number"},"fuelUsedGaseousLast24":{"type":"number"},"fuelUsedLast24":{"example":35.4,"type":"number"},"id":{"description":"Internal immutable ProAPI identifier","example":"k28f3lt","type":"string"},"idleEnergyUsedLast24":{"type":"number"},"idleFuelUsedGaseousLast24":{"type":"number"},"idleFuelUsedLast24":{"example":0.8,"type":"number"},"idleHoursLast24":{"example":1.25,"type":"number"},"idleNonOperatingHoursLast24":{"example":0.75,"type":"number"},"loadCountLast24":{"example":12,"type":"number"},"location":{"type":"object"},"maximumSpeedLast24":{"example":34.2,"type":"number"},"operatingHoursLast24":{"example":8,"type":"number"},"payloadTotalsLast24":{"example":1200,"type":"number"},"powerTakeOffHoursLast24":{"type":"number"},"productiveHoursLast24":{"example":6.5,"type":"number"}},"type":"object"},"type":"array"}},"application/stream+json":{"schema":{"items":{"type":"object"},"type":"array"}},"text/csv":{"example":"id,timestamp,cumulativeActiveRegenerationHours,activeRegenerationHoursLast24,cumulativeIdleHours,expectedOperatingHours,idleHoursLast24,cumulativeIdleNonOperatingHours,idleNonOperatingHoursLast24,cumulativeOperatingHours,operatingHoursLast24,cumulativePowerTakeOffHours,powerTakeOffHoursLast24,distance,distanceLast24,cumulativePayloadTotals,payloadTotalsLast24,fuelUsed,carbonEmissionLast24,fuelUsedLast24,cumulativeLoadCount,loadCountLast24,cumulativeEnergyCharged,energyChargedLast24,cumulativeEnergyUsed,energyUsedLast24,maximumSpeedLast24,averageLoadFactorLast24Percent,locationLongitude,locationLatitude,locationAltitude,electricalEnergyUsedEstimatedFromEnergyChargedLast24,electricalEnergyUsedEstimatedFromOperatingHoursLast24,fuelUsedEstimatedFromOperatingHoursLast24,cumulativeFuelUsedGaseous,fuelUsedGaseousLast24,cumulativeIdleEnergyUsed,idleEnergyUsedLast24,cumulativeIdleFuelUsed,idleFuelUsedLast24,cumulativeIdleFuelUsedGaseous,idleFuelUsedGaseousLast24,cumulativeProductiveHours,productiveHoursLast24","schema":{"type":"string"}}},"description":"Daily snapshot records. JSON array (Accept: application/json) or CSV (the default) with a header row; fields/columns vary with onlyLast24."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Daily snapshot for a work site","tags":["Daily snapshots","Sharing"]}},"/bi/v6/timeseries/dailysnapshot":{"get":{"description":"Daily per-equipment snapshot (the active fleet): last-24h + cumulative values, one row per equipment per day.","operationId":"biV6TimeseriesDailysnapshot","parameters":[{"description":"Organization identifier. Required only when using a token that has access to more than one organization.","in":"query","name":"orgID","schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to 7 days ago.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}},{"description":"When `true`, ignore `rangeStart` and `rangeEnd` and return the entire available history.","in":"query","name":"fullRange","schema":{"default":false,"type":"boolean"}},{"description":"If `true`, cumulative values are excluded; only daily (last 24h) values are included.","in":"query","name":"onlyLast24","schema":{"default":false,"type":"boolean"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"properties":{"activeRegenerationHoursLast24":{"example":0.5,"type":"number"},"averageLoadFactorLast24":{"example":63,"type":"number"},"cumulativeActiveRegenerationHours":{"example":312.5,"type":"number"},"cumulativeDistance":{"example":184302.1,"type":"number"},"cumulativeEnergyCharged":{"type":"number"},"cumulativeEnergyUsed":{"example":74.71,"type":"number"},"cumulativeFuelUsed":{"example":21874,"type":"number"},"cumulativeFuelUsedGaseous":{"type":"number"},"cumulativeIdleEnergyUsed":{"type":"number"},"cumulativeIdleFuelUsed":{"example":410,"type":"number"},"cumulativeIdleFuelUsedGaseous":{"type":"number"},"cumulativeIdleHours":{"example":1840.25,"type":"number"},"cumulativeIdleNonOperatingHours":{"example":640.75,"type":"number"},"cumulativeLoadCount":{"example":4120,"type":"number"},"cumulativeOperatingHours":{"example":5123.5,"type":"number"},"cumulativePayloadTotals":{"example":98500,"type":"number"},"cumulativePowerTakeOffHours":{"example":210,"type":"number"},"cumulativeProductiveHours":{"example":1520.5,"type":"number"},"day":{"description":"Day of the telemetry reporting date (RFC3339 full-date)","example":"2024-03-01","type":"string"},"distanceLast24":{"example":42.3,"type":"number"},"electricalEnergyUsedEstimatedFromEnergyChargedLast24":{"type":"number"},"electricalEnergyUsedEstimatedFromOperatingHoursLast24":{"type":"number"},"energyChargedLast24":{"type":"number"},"energyUsedLast24":{"example":74.71,"type":"number"},"expectedOperatingHours":{"example":8,"type":"number"},"fuelUsedEstimatedFromOperatingHoursLast24":{"example":36,"type":"number"},"fuelUsedGaseousLast24":{"type":"number"},"fuelUsedLast24":{"example":35.4,"type":"number"},"id":{"description":"Internal immutable ProAPI identifier","example":"k28f3lt","type":"string"},"idleEnergyUsedLast24":{"type":"number"},"idleFuelUsedGaseousLast24":{"type":"number"},"idleFuelUsedLast24":{"example":0.8,"type":"number"},"idleHoursLast24":{"example":1.25,"type":"number"},"idleNonOperatingHoursLast24":{"example":0.75,"type":"number"},"loadCountLast24":{"example":12,"type":"number"},"location":{"type":"object"},"maximumSpeedLast24":{"example":34.2,"type":"number"},"operatingHoursLast24":{"example":8,"type":"number"},"payloadTotalsLast24":{"example":1200,"type":"number"},"powerTakeOffHoursLast24":{"type":"number"},"productiveHoursLast24":{"example":6.5,"type":"number"},"timestamp":{"description":"Report time at the end of the day, including timezone (RFC3339 date-time)","type":"string"}},"type":"object"},"type":"array"}},"application/stream+json":{"schema":{"items":{"type":"object"},"type":"array"}},"text/csv":{"example":"id,timestamp,type,locationLatitude,locationLongitude,locationAltitude,cumulativeActiveRegenerationHours,activeRegenerationHoursLast24,cumulativeIdleHours,expectedOperatingHours,idleHoursLast24,cumulativeIdleNonOperatingHours,idleNonOperatingHoursLast24,cumulativeOperatingHours,operatingHoursLast24,cumulativePowerTakeOffHours,powerTakeOffHoursLast24,distance,distanceLast24,cumulativePayloadTotals,payloadTotalsLast24,fuelUsed,carbonEmissionLast24,fuelUsedLast24,cumulativeLoadCount,loadCountLast24,cumulativeEnergyCharged,energyChargedLast24,cumulativeEnergyUsed,energyUsedLast24,maximumSpeedLast24,averageLoadFactorLast24Percent,fuelUsedEstimatedFromOperatingHoursLast24,electricalEnergyUsedEstimatedFromOperatingHoursLast24,cumulativeFuelUsedGaseous,fuelUsedGaseousLast24,cumulativeIdleEnergyUsed,idleEnergyUsedLast24,cumulativeIdleFuelUsed,idleFuelUsedLast24,cumulativeIdleFuelUsedGaseous,idleFuelUsedGaseousLast24,electricalEnergyUsedEstimatedFromEnergyChargedLast24,cumulativeProductiveHours,productiveHoursLast24","schema":{"type":"string"}}},"description":"Daily snapshot records (JSON array, or CSV with a header row by default)."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Daily snapshot (active fleet)","tags":["Daily snapshots"]}},"/v1/project/fleet":{"get":{"description":"Every equipment that has belonged to the given project, returned as a JSON array.","operationId":"v1ProjectFleet","parameters":[{"description":"The identifier of the project (also listed by `/projects`). The short token form (e.g. `k28nj0h`) is also accepted.","example":"acme/projects/project-lillehammer","in":"query","name":"projectID","required":true,"schema":{"type":"string"}},{"description":"Start date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the start of all available history.","example":"2024-03-01","in":"query","name":"rangeStart","schema":{"format":"date","type":"string"}},{"description":"End date of the range (`YYYY-MM-DD`), inclusive, interpreted as UTC. Defaults to the latest available data.","example":"2024-03-08","in":"query","name":"rangeEnd","schema":{"format":"date","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"properties":{"category":{"description":"Category of the equipment","example":"Excavator","type":"string"},"fuelType":{"description":"Fuel type of the equipment","example":"Diesel","type":"string"},"id":{"description":"Unique identifier of the equipment","example":"k28f3lt","type":"string"},"internalEquipmentId":{"description":"Internal identifier of the equipment","example":"Demo excavator #05","type":"string"},"make":{"description":"Make of the equipment","example":"Volvo","type":"string"},"model":{"description":"Model of the equipment","example":"EC220E","type":"string"},"serialNumber":{"description":"Serial number of the equipment","example":"VCE0EC22L00012345","type":"string"},"vin":{"description":"Vehicle identification number (VIN) of the equipment","example":"YV2RT40A8FB123456","type":"string"}},"type":"object"},"type":"array"}}},"description":"JSON array of equipment that belonged to the project."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"Equipment in a project","tags":["Projects"]}},"/v1/projects":{"get":{"deprecated":true,"description":"Every project that has ever belonged to the organization, returned as a JSON array.","operationId":"v1Projects","parameters":[{"description":"Organization identifier. Required only when using a token that has access to more than one organization.","in":"query","name":"orgID","schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"type":"object"},"type":"array"}}},"description":"JSON array of projects."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"List organization projects","tags":["Projects"]}},"/v2/projects":{"get":{"deprecated":true,"description":"Every project that has ever belonged to the organization, returned as a JSON array.","operationId":"v2Projects","parameters":[{"description":"Organization identifier. Required only when using a token that has access to more than one organization.","in":"query","name":"orgID","schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"type":"object"},"type":"array"}}},"description":"JSON array of projects."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"List organization projects","tags":["Projects"]}},"/v3/projects":{"get":{"description":"Every project that has ever belonged to the organization, returned as a JSON array.","operationId":"v3Projects","parameters":[{"description":"Organization identifier. Required only when using a token that has access to more than one organization.","in":"query","name":"orgID","schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"properties":{"description":{"description":"Further description of the project","type":"string"},"displayName":{"description":"Human-readable name of the project","example":"E6 North","type":"string"},"electricityCostPerKwh":{"description":"Electricity cost per kilowatt-hour","example":0.12,"type":"number"},"energyConversionEfficiencyCombustionEngine":{"description":"Energy conversion efficiency of the combustion engine","example":0.35,"type":"number"},"energyConversionEfficiencyElectricMotor":{"description":"Energy conversion efficiency of the electric motor","example":0.9,"type":"number"},"expectedCapacityUtilization":{"description":"Expected capacity utilization of the project","example":0.7,"type":"number"},"expectedElectricFraction":{"description":"Expected electric fraction of the project","example":0.1,"type":"number"},"expectedIdling":{"description":"Expected idling of the project","example":0.2,"type":"number"},"externalId":{"description":"External identifier of the project","type":"string"},"from":{"description":"Start time of the project","example":"2023-01-01T00:00:00Z","type":"string"},"fuelCostPerLiter":{"description":"Fuel cost per liter","example":1.85,"type":"number"},"gCo2EPerKwh":{"description":"CO2 emissions per kilowatt-hour","example":18.9,"type":"number"},"id":{"description":"Unique global identifier of the project","example":"k28nj0h","type":"string"},"internalId":{"description":"Internal identifier of the project","type":"string"},"kgCo2EPerLiterFuelUsed":{"description":"CO2 emissions per liter of fuel used","example":2.66,"type":"number"},"name":{"description":"Unique name of the project","example":"e6-north","type":"string"},"to":{"description":"End time of the project","example":"2024-12-31T00:00:00Z","type":"string"},"typeOfProject":{"description":"Type of the project","type":"string"}},"type":"object"},"type":"array"}}},"description":"JSON array of projects."},"400":{"content":{"application/problem+json":{"example":{"detail":"rangeStart is not a valid date","status":400,"title":"Bad Request","type":"https://app.fremby.no/error.html#invalid-argument"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Invalid input parameters or malformed request"},"401":{"content":{"application/problem+json":{"example":{"detail":"invalid authorization token","status":401,"title":"Unauthorized","type":"https://app.fremby.no/error.html#unauthenticated"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Authentication required or invalid credentials"},"404":{"content":{"application/problem+json":{"example":{"detail":"resource not found or permission denied","status":404,"title":"Not Found","type":"https://app.fremby.no/error.html#not-found"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Requested resource not found"},"500":{"content":{"application/problem+json":{"example":{"detail":"internal error","status":500,"title":"Internal Server Error","type":"https://app.fremby.no/error.html#internal"},"schema":{"$ref":"#/components/schemas/handlers.HTTPError"}}},"description":"Internal server error occurred"}},"security":[{"bearerauth":[]}],"summary":"List organization projects","tags":["Projects"]}}},"schemes":null,"servers":[{"description":"Production API","url":"https://proapi.fremby.no/api"}],"tags":[{"description":"Every equipment that has belonged to the fleet, with its current attributes.","name":"Fleet"},{"description":"Raw and per-sample measurement series for individual equipment and metrics.","name":"Telemetry"},{"description":"Pre-aggregated daily values (last-24h and cumulative) per equipment, location, project or work site.","name":"Daily snapshots"},{"description":"Project listings and project-scoped equipment reports.","name":"Projects"},{"description":"Share-contract, work-site and connector reports for shared equipment.","name":"Sharing"}]}