Versions Compared
compared with
Key
- This line was added.
- This line was removed.
- Formatting was changed.
Test
Sandbox
Beskrivning
Tjänsten listar mätdata beroende på vilken kategori som anges.
Livscykelstatus
DesignProduktion
Lösningsbeskrivning
<Infoga en Gliffy-bild som visuellt beskriver lösningen>Gliffy | ||||||
---|---|---|---|---|---|---|
|
Hantering av personuppgifter
<Vilka Inga personuppgifter hanteras och varför?>i tjänsten.
API specifikation
Draft 1:
Swagger ui |
---|
---
openapi: 3.0.2
info:
title: MeasurementData API
description: "API for fetching measurement-data"
version: 1.0.0
tags:
- name: MeasurementData API endpoints
paths:
/measurmentdata:
get:
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/GetMeasurementDataRequest'
required: true
responses:
"200":
description: Successful operation
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/ElectricityData'
- $ref: '#/components/schemas/BroadbandData'
- $ref: '#/components/schemas/ElectricityData'
- $ref: '#/components/schemas/DistrictHeatingData'
- $ref: '#/components/schemas/WasteManagementData'
discriminator:
propertyName: objectType
mapping:
electricityData: '#/components/schemas/ElectricityData'
broadbandData: '#/components/schemas/BroadbandData'
districtHeatingData: '#/components/schemas/DistrictHeatingData'
wasteManagementgData: '#/components/schemas/WasteManagementData'
"400":
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceErrorResponse'
"500":
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceErrorResponse'
components:
schemas:
GetMeasurementDataRequest:
type: object
properties:
personId:
type: string
description: Person ID
example: '81471222-5798-11e9-ae24-57fa13b361e1'
category:
type: string
description: Category
example: 'ELECTRICITY'
facilityId:
type: string
description: Facility ID
example: '112233'
fromDate:
type: string
format: date
description: From-date
example: '2022-01-01'
toDate:
type: string
format: date
description: To-date
example: '2022-03-01'
resolution:
$ref: '#/components/schemas/Resolution'
BroadbandData:
type: object
description: Broadband data measurments
required:
- objectType
- installationId
- resolution
properties:
objectType:
type: string
example: 'broadbandData'
installationId:
type: string
example: '1112233'
resolution:
$ref: '#/components/schemas/Resolution'
measurements:
type: array
description: Measurement
items:
type: object
properties:
resolutionPeriod:
type: string
format: date-time
example: '2022-01-02 23:59:00'
value:
type: number
format: float
example: '22.43'
unit:
type: string
example: 'GB'
ElectricityData:
type: object
description: Electricity measurments
required:
- objectType
- installationId
- resolution
properties:
objectType:
type: string
example: 'electricityData'
installationId:
type: string
example: '1112233'
resolution:
$ref: '#/components/schemas/Resolution'
measurements:
type: array
description: Measurement
items:
type: object
properties:
resolutionPeriod:
type: string
format: date-time
example: '2022-01-01 00:00:00'
readingType:
type: string
example: 'Aktiv'
value:
type: number
format: float
example: '6.10000'
unit:
type: string
example: 'kWh'
WasteManagementData:
type: object
description: WasteManagement measurments
required:
- objectType
- installationId
- resolution
properties:
objectType:
type: string
example: 'wasteManagementData'
installationId:
type: string
example: '1112233'
resolution:
$ref: '#/components/schemas/Resolution'
measurements:
type: array
description: Measurement
items:
type: object
properties:
resolutionPeriod:
type: string
format: date-time
example: '2022-01-02 23:59:00'
value:
type: number
format: float
example: '6.10000'
unit:
type: string
example: 'ton'
productId:
type: string
example: '1063-1380-0-0-0'
location:
type: string
example: 'Blåberget'
externalId:
type: string
example: '1302069'
reference:
type: string
example: 'ABC123'
DistrictHeatingData:
type: object
description: DistrictHeating measurments
required:
- objectType
- installationId
- resolution
properties:
objectType:
type: string
example: 'districtHeatingData'
installationId:
type: string
example: '1112233'
resolution:
$ref: '#/components/schemas/Resolution'
measurements:
type: array
description: Measurement
items:
type: object
properties:
resolutionPeriod:
type: string
format: date-time
example: '2022-01-01 00:00:00'
energy:
type: number
format: float
example: '4.160000'
energyUnit:
type: string
example: 'MWh'
volume:
type: number
format: float
example: '96.10000'
volumeUnit:
type: string
example: 'm3'
flowTemprature:
type: number
format: float
example: '76.5'
returnTemprature:
type: string
example: '57.2'
ServiceErrorResponse:
type: object
properties:
httpCode:
format: int32
type: integer
message:
type: string
technicalDetails:
$ref: '#/components/schemas/TechnicalDetails'
TechnicalDetails:
type: object
properties:
rootCode:
format: int32
type: integer
rootCause:
type: string
serviceId:
type: string
requestId:
type: string
details:
type: array
items:
type: string
Resolution:
type: string
enum:
- Hour
- Day
- Month
- Year |
Draft 2:
Swagger ui |
---|
openapi: 3.0.2
info:
title: MeasurementData API
description: "API for fetching measurement-data"
version: 1.0.0
tags:
- name: MeasurementData API endpoints
paths:
/measurmentdata:
get:
parameters:
- in: query
name: personId
schema:
type: string
description: Person ID
example: '81471222-5798-11e9-ae24-57fa13b361e1'
required: true
- in: query
name: category
schema:
$ref: '#/components/schemas/Category'
description: Category of data
example: 'ELECTRICITY'
required: true
- in: query
name: facilityId
schema:
type: string
description: Facility ID
example: '112233'
required: true
- in: query
name: fromDate
schema:
type: string
format: date
description: From date
example: '2022-01-31'
required: true
- in: query
name: toDate
schema:
type: string
format: date
description: To date
example: '2022-03-31'
required: true
- in: query
name: resolution
schema:
$ref: '#/components/schemas/Resolution'
required: true
responses:
"200":
description: Successful operation
content:
application/json:
schema:
$ref: '#/components/schemas/Data'
"400":
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceErrorResponse'
"500":
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceErrorResponse'
components:
schemas:
Data:
type: object
required:
- category
- installationId
- resolution
properties:
category:
$ref: '#/components/schemas/Category'
installationId:
type: string
example: '1112233'
resolution:
$ref: '#/components/schemas/Resolution'
measurementSeries:
type: array
description: Measurement series from different measurement points
items:
type: object
properties:
unit:
type: string
description: Unit for all measurement points
example: 'm3'
measurementType:
type: string
description: Type of measurement
example: 'volume'
metaData:
type: array
description: Meta data for a serie
items:
type: object
properties:
key:
type: string
example: 'refid'
value:
type: string
example: '123'
measurementPoints:
type: array
items:
type: object
properties:
value:
type: number
format: float
example: '22.312'
date:
type: string
format: date-time
ServiceErrorResponse:
type: object
properties:
httpCode:
format: int32
type: integer
message:
type: string
technicalDetails:
$ref: '#/components/schemas/TechnicalDetails'
TechnicalDetails:
type: object
properties:
rootCode:
format: int32
type: integer
rootCause:
type: string
serviceId:
type: string
requestId:
type: string
details:
type: array
items:
type: string
Category:
type: string
enum:
- DISTRICT_HEATING
- ELECTRICITY
- BROADBAND
- WASTE
Resolution:
type: string
enum:
- Hour
- Day
- Month
- Year |
Säkerhetsklassning
Säkerhetsklass <0, 1, 2, 3, 4>
Autentiseringsmetod: <API Key, Oauth2>
(Ref: Säkerhetsklassning av APIer )
API-ägare
<Kontaktuppgifter till den verksamhet som äger APIets livscykel>
Teknisk ägare
<Kontaktuppgifter till utvecklare/teknisk förvaltare>
Länkar
<Länkar till dev-portal;
Open api | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||
Säkerhetsklassning
Säkerhetsklass 1
Autentiseringsmetod: Oauth2
Teknisk ägare
Team Unmasked
teamunmasked@sundsvall.se
Källkod
FAQ
<FAQ>