diff --git a/api.yaml b/api.yaml
index 9933509..6db551b 100644
--- a/api.yaml
+++ b/api.yaml
@@ -1,359 +1,384 @@
-openapi: 3.0.0
-servers:
- - url: //hombach.de/api
- description: Hombach WT 20
-info:
- description: |
- # Introduction
- Diese Dokumentation beschreibt die Modelle und SChnittstellen der WT 20 API von Hombach. Mit dieser können Wärmeübertrager
- ausgelegt und nachgerechnet werden.
-
- *Diese Dokumentation ist momentan noch WIP*
-
- version: 0.1.0
- title: WT 20 API
- termsOfService: 'http://hombach.de'
- contact:
- name: API Support
- email: info@hombach.de
- url: https://hombach.de/api/doc
- license:
- name: proprietary
-tags:
- - name: Hilfe
- description: Hilfe mit der API
- - name: Berechnung
- description: Berechnung von Wärmeübertragern
- - name: geo
- x-displayName: Das Geometrie-Modell
- description: |
-
- - name: betrp
- x-displayName: Das Betriebspunkt-Modell
- description: |
-
-x-tagGroups:
- - name: Hilfe
- tags:
- - Hilfe
- - name: Berechnung
- tags:
- - Berechnung
-paths:
- /help:
- get:
- tags:
- - Hilfe
- summary: Liefert eine Hilfs-Übersicht der API
- description: Liefert einige mögliche Werte für den Parameter "command". Identisch mit "command":"help"
- responses:
- '200':
- description: successful operation
- content:
- application/json:
- schema:
- type: object
- minProperties: 2
- additionalProperties:
- type: string
- '/help/{query}':
- get:
- tags:
- - Hilfe
- summary: Auflistung Werte für einen Parameter
- description: Liefert eine Liste möglicher Werte für den abgefragten Parameter
- parameters:
- - name: query
- in: path
- desciption: Abzufragender Parameter
- required: true
- schema:
- $ref: '#/components/schemas/mode'
- responses:
- '200':
- description: successful operation
- example:
- - key: 22
- name: 22
- mat_key: Cu
- diameter: 22
- nenndurchmesser: DN 20
- thickness: 1.5
- - key: 28
- name: 28
- mat_key: Cu
- diameter: 28
- nenndurchmesser: DN 25
- thickness: 1.5
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/mode'
-components:
- schemas:
- ApiResponse:
- type: object
- properties:
- code:
- type: integer
- format: int32
- type:
- type: string
- message:
- type: string
- mode:
- type: string
- description: Das Kommando, mit dem die API angesprochen wird
- example: query_sam
- enum:
- - help
- - query_med
- - query_kmed
- - query_ansch_typ
- - query_lam
- - query_mat
- - query_rohr
- - query_sam
- - query_calc_options
- - query_baugr
- - query_dim
- - query_keys
- - query_keys_export
- command:
- type: string
- description: Das Kommando, mit dem die API angesprochen wird
- example: help
- enum:
- - auslegung
- - nachrechnung
- - reserve
- - abort
- kind:
- type: string
- description: Das Kommando, mit dem die Berechnungsmethode der API bestimmt wird
- example: direktverdampfer
- default: wt
- enum:
- - wt
- - direktverdampfer
- - verflüssiger
- - umkehrbetrieb
- geo:
- type: object
- description: Definiert die Ausführung (die Geometrie) des Wärmeübertragers
- required:
- - lb
- - hb
- - rohr_key
- - lam_key
- discriminator:
- propertyName: ^geoType
- mapping:
- WT: '#/components/schemas/geoWT'
- DV: '#/components/schemas/geoDV'
- VF: '#/components/schemas/geoVF'
- properties:
- lb:
- description: Berippte/lichte Breite
- type: number
- minimum: 125
- maximum: 5200
- example: 920
- hb:
- description: Berippte/lichte Höhe
- type: number
- minimum: 125
- maximum: 2880
- example: 600
- rohr_key:
- description: Zu verwendendes Rohr
- type: string
- example:
- - key: C12x0.35
- - key: C9.5x0.3
- Kreise_fixed:
- type: boolean
- description: true, wenn die Anzahl der Kreise vorgegeben werden soll
- default: false
- Kreise:
- type: integer
- description: Anzahl der Kreise. Wird berechnet, wenn Kreise_fixed=false
- allowEmptyValue: true
- example: 8
- lam_key:
- description: Zu verwendende Lamelle
- type: string
- example:
- - key: 12:30x26v1
- - key: 9.5:25x22v1
- lam_abst_fixed:
- type: boolean
- description: true, wenn Lamellenabstand vorgegeben werden soll
- default: false
- lam_abst:
- type: number
- description: Lamellenabstand (mm). Wird berechnet, wenn lam_abst_fixed=false
- allowEmptyValue: true
- example: 2.5
- teile:
- type: integer
- description: Anzahl der Teile des Wärmeübertragers,
- example: 1
- default: 1
- RR_fixed:
- type: boolean
- description: true, wenn die Anzahl der Rohrreihen vorgegeben werden soll
- default: false
- RR:
- type: integer
- description: Anzahl der Rohrreihen. Wird berechnet, wenn RR_fixed=false
- example: 6
- allowEmptyValue: true
- geoWT:
- description: Definiert die Ausführung (die Geometrie) eines Wasser/Sole Wärmeübertragers
- allOf:
- - $ref: '#/components/schemas/geo'
- - type: object
- properties:
- sam_fixed :
- type: boolean
- description: true, wenn der Sammlerdurchmesser vorgegeben werden soll
- default: false
- sammler_key :
- description: Zu verwendender Sammlerdurchmesser
- type: string
- example:
- - key: 28
- - key: 32
- geoDV:
- description: Definiert die Ausführung (die Geometrie) eines Direktverdampfers
- allOf:
- - $ref: '#/components/schemas/geo'
- - type: object
- properties:
- anz_med_kreise:
- type: integer
- description: Anzahl separater Kältekreise
- default: 1
- example: 2
- sam_fixed :
- type: boolean
- description: true, wenn die Sammlerdurchmesser vorgegeben werden sollen
- default: false
- sammler_key :
- description: Zu verwendende Sammlerdurchmesser
- type: string
- example:
- - key: 28
- - key: 32
- betrp:
- type: object
- description: Ein Betriebspunkt eines Wärmeübertragers
- required:
- - select_luftstrom
- - luft_temp_ein
- - select_FLE
- properties:
- select_luftstrom:
- type: integer
- description: |
- Gibt an in welcher Einheit der Luftstrom vorgegeben wird.
- * `0` für Luftvolumenstrom (m³/h)
- * `1` für Luftmassenstrom (kg/h)
- default: 0
- luft_volstrom_bez:
- type: number
- description: Vorgabe des Luftvolumenstroms bei Bezugsdichte (m³/h), wenn `"select_luftstrom":"0"`
- example: 6000
- luft_masstrom_feucht:
- type: number
- description: Vorgabe des feuchten Luftmassenstroms (kg/h), wenn `"select_luftstrom":"1"`
- example: 7200
- luft_temp_ein:
- type: number
- description: Lufttemperatur (°C) am Eintritt
- example: 32
- luft_temp_aus:
- type: number
- description: |
- **Erforlderlich für Auslegung**
- Lufttemperatur (°C) am Austritt
- example: 16
- select_FLE:
- type: integer
- description: |
- Gibt an in welcher Einheit die Luftfeuchtigkeit vorgegeben wird.
- * `0` für relative Feuchte (%)
- * `1` für absolute feuchte (g/kg)
- default: 0
- luft_relfeu_ein:
- type: number
- description: Relative Feuchte (%) der Luft am Eintritt
- example: 40
- luft_absfeu_ein:
- type: number
- description: Absolute Feuchte (g/kg) der Luft am Eintritt
- example: 10.6
- betrpWT:
- description: Definiert einen Betriebspunkt eines Wasser/Sole Wärmeübertragers
- allOf:
- - $ref: '#/components/schemas/betrp'
- - type: object
- required:
- - med_key
- - med_temp_ein
- properties:
- med_key:
- type: string
- description: Gibt an, welches Medium zu verwenden ist
- example:
- - wasser
- - Antifrogen N
- med_konz:
- type: number
- description: Konzentration (%) des Frostschutzmittels
- example: 34
- med_temp_ein:
- type: number
- description: Vorlauftemperatur (°C) des Mediums
- example: 6
- med_temp_aus:
- type: number
- description: Rücklauftemperatur (°C) des Mediums
- example: 12
- med_volstrom:
- type: number
- description: |
- **Erforderlich bei Nachrechnung und Reserve**
- Volumenstrom (L/h) des Mediums
- example: 3400
- med_masstrom:
- type: number
- description: |
- **Erforderlich bei Nachrechnung und Reserve**
- Massenstrom (kg/h) des Mediums
- example: 3400
- select_KA:
- type: integer
- description: |
- **Erforderlich bei Nachrechnung und Reserve**
- Gibt an in welcher Einheit der Mediumstrom vorgegeben wird.
- * `0` für Volumenstrom (L/h)
- * `1` für Massenstrom (kg/h)
- default: 0
- requestBodies:
- securitySchemes:
- api_key:
- description: >
- For this sample, you can use the api key `special-key` to test the
- authorization filters.
- type: apiKey
- name: api_key
- in: header
- examples:
- geo:
- value:
- lb: 920
- hb: 600
- rohr_key: C9.5x0.3
+openapi: 3.0.0
+servers:
+ - url: //hombach.de/api
+ description: Hombach WT 20
+info:
+ description: |
+ # Introduction
+ Diese Dokumentation beschreibt die Modelle und SChnittstellen der WT 20 API von Hombach. Mit dieser können Wärmeübertrager
+ ausgelegt und nachgerechnet werden.
+
+ *Diese Dokumentation ist momentan noch WIP*
+
+ version: 0.1.0
+ title: WT 20 API
+ termsOfService: 'http://hombach.de'
+ contact:
+ name: API Support
+ email: info@hombach.de
+ url: https://hombach.de/api/doc
+ license:
+ name: proprietary
+tags:
+ - name: Hilfe
+ description: Hilfe mit der API
+ - name: Berechnung
+ description: Berechnung von Wärmeübertragern
+ - name: geo
+ x-displayName: Das Geometrie-Modell
+ description: |
+
+ - name: betrp
+ x-displayName: Das Betriebspunkt-Modell
+ description: |
+
+x-tagGroups:
+ - name: Hilfe
+ tags:
+ - Hilfe
+ - name: Berechnung
+ tags:
+ - Berechnung
+paths:
+ /help:
+ get:
+ tags:
+ - Hilfe
+ summary: Liefert eine Hilfs-Übersicht der API
+ description: Liefert einige mögliche Werte für den Parameter "command". Identisch mit "command":"help"
+ responses:
+ '200':
+ description: successful operation
+ content:
+ application/json:
+ schema:
+ type: object
+ minProperties: 2
+ additionalProperties:
+ type: string
+ '/help/{query}':
+ get:
+ tags:
+ - Hilfe
+ summary: Auflistung Werte für einen Parameter
+ description: Liefert eine Liste möglicher Werte für den abgefragten Parameter
+ parameters:
+ - name: query
+ in: path
+ desciption: Abzufragender Parameter
+ required: true
+ schema:
+ $ref: '#/components/schemas/mode'
+ responses:
+ '200':
+ description: successful operation
+ example:
+ - key: 22
+ name: 22
+ mat_key: Cu
+ diameter: 22
+ nenndurchmesser: DN 20
+ thickness: 1.5
+ - key: 28
+ name: 28
+ mat_key: Cu
+ diameter: 28
+ nenndurchmesser: DN 25
+ thickness: 1.5
+ content:
+ application/json:
+ schema:
+ $ref: '#/components/schemas/mode'
+components:
+ schemas:
+ ApiResponse:
+ type: object
+ properties:
+ code:
+ type: integer
+ format: int32
+ type:
+ type: string
+ message:
+ type: string
+ mode:
+ type: string
+ description: Das Kommando, mit dem die API angesprochen wird
+ example: query_sam
+ enum:
+ - help
+ - query_med
+ - query_kmed
+ - query_ansch_typ
+ - query_lam
+ - query_mat
+ - query_rohr
+ - query_sam
+ - query_calc_options
+ - query_baugr
+ - query_dim
+ - query_keys
+ - query_keys_export
+ command:
+ type: string
+ description: Das Kommando, mit dem die API angesprochen wird
+ example: help
+ enum:
+ - auslegung
+ - nachrechnung
+ - reserve
+ - abort
+ kind:
+ type: string
+ description: Das Kommando, mit dem die Berechnungsmethode der API bestimmt wird
+ example: direktverdampfer
+ default: wt
+ enum:
+ - wt
+ - direktverdampfer
+ - verflüssiger
+ - umkehrbetrieb
+ geo:
+ type: object
+ description: Definiert die Ausführung (die Geometrie) des Wärmeübertragers
+ required:
+ - lb
+ - hb
+ - rohr_key
+ - lam_key
+ discriminator:
+ propertyName: geoType
+ mapping:
+ WT: '#/components/schemas/geoWT'
+ DV: '#/components/schemas/geoDV'
+ VF: '#/components/schemas/geoVF'
+ properties:
+ lb:
+ description: Berippte/lichte Breite
+ type: number
+ minimum: 125
+ maximum: 5200
+ example: 920
+ hb:
+ description: Berippte/lichte Höhe
+ type: number
+ minimum: 125
+ maximum: 2880
+ example: 600
+ rohr_key:
+ description: Zu verwendendes Rohr
+ type: string
+ example:
+ - key: C12x0.35
+ - key: C9.5x0.3
+ Kreise_fixed:
+ type: boolean
+ description: true, wenn die Anzahl der Kreise vorgegeben werden soll
+ default: false
+ Kreise:
+ type: integer
+ description: Anzahl der Kreise. Wird berechnet, wenn Kreise_fixed=false
+ allowEmptyValue: true
+ example: 8
+ lam_key:
+ description: Zu verwendende Lamelle
+ type: string
+ example:
+ - key: 12:30x26v1
+ - key: 9.5:25x22v1
+ lam_abst_fixed:
+ type: boolean
+ description: true, wenn Lamellenabstand vorgegeben werden soll
+ default: false
+ lam_abst:
+ type: number
+ description: Lamellenabstand (mm). Wird berechnet, wenn lam_abst_fixed=false
+ allowEmptyValue: true
+ example: 2.5
+ teile:
+ type: integer
+ description: Anzahl der Teile des Wärmeübertragers,
+ example: 1
+ default: 1
+ RR_fixed:
+ type: boolean
+ description: true, wenn die Anzahl der Rohrreihen vorgegeben werden soll
+ default: false
+ RR:
+ type: integer
+ description: Anzahl der Rohrreihen. Wird berechnet, wenn RR_fixed=false
+ example: 6
+ allowEmptyValue: true
+ geoWT:
+ description: Definiert die Ausführung (die Geometrie) eines Wasser/Sole Wärmeübertragers
+ allOf:
+ - $ref: '#/components/schemas/geo'
+ - type: object
+ properties:
+ sam_fixed :
+ type: boolean
+ description: true, wenn der Sammlerdurchmesser vorgegeben werden soll
+ default: false
+ sammler_key :
+ description: Zu verwendender Sammlerdurchmesser
+ type: string
+ example:
+ - key: 28
+ - key: 32
+ geoDV:
+ description: Definiert die Ausführung (die Geometrie) eines Direktverdampfers
+ allOf:
+ - $ref: '#/components/schemas/geo'
+ - type: object
+ properties:
+ anz_med_kreise:
+ type: integer
+ description: Anzahl separater Kältekreise
+ default: 1
+ example: 2
+ minimum: 1
+ maximum: 6
+ sam_fixed :
+ type: boolean
+ description: true, wenn die Sammlerdurchmesser vorgegeben werden sollen
+ default: false
+ sammler_key :
+ description: Zu verwendende Sammlerdurchmesser
+ type: string
+ example:
+ - key: 28
+ - key: 32
+ geoVF:
+ description: Definiert die Ausführung (die Geometrie) eines Verflüssigers
+ allOf:
+ - $ref: '#/components/schemas/geo'
+ - type: object
+ properties:
+ anz_med_kreise:
+ type: integer
+ description: Anzahl separater Kältekreise
+ default: 1
+ example: 2
+ minimum: 1
+ maximum: 6
+ sam_fixed :
+ type: boolean
+ description: true, wenn die Sammlerdurchmesser vorgegeben werden sollen
+ default: false
+ sammler_key :
+ description: Zu verwendende Sammlerdurchmesser
+ type: string
+ example:
+ - key: 28
+ - key: 32
+ betrp:
+ type: object
+ description: Ein Betriebspunkt eines Wärmeübertragers
+ required:
+ - select_luftstrom
+ - luft_temp_ein
+ - select_FLE
+ properties:
+ select_luftstrom:
+ type: integer
+ description: |
+ Gibt an in welcher Einheit der Luftstrom vorgegeben wird.
+ * `0` für Luftvolumenstrom (m³/h)
+ * `1` für Luftmassenstrom (kg/h)
+ default: 0
+ luft_volstrom_bez:
+ type: number
+ description: Vorgabe des Luftvolumenstroms bei Bezugsdichte (m³/h), wenn `"select_luftstrom":"0"`
+ example: 6000
+ luft_masstrom_feucht:
+ type: number
+ description: Vorgabe des feuchten Luftmassenstroms (kg/h), wenn `"select_luftstrom":"1"`
+ example: 7200
+ luft_temp_ein:
+ type: number
+ description: Lufttemperatur (°C) am Eintritt
+ example: 32
+ luft_temp_aus:
+ type: number
+ description: |
+ **Erforlderlich für Auslegung**
+ Lufttemperatur (°C) am Austritt
+ example: 16
+ select_FLE:
+ type: integer
+ description: |
+ Gibt an in welcher Einheit die Luftfeuchtigkeit vorgegeben wird.
+ * `0` für relative Feuchte (%)
+ * `1` für absolute feuchte (g/kg)
+ default: 0
+ luft_relfeu_ein:
+ type: number
+ description: Relative Feuchte (%) der Luft am Eintritt
+ example: 40
+ luft_absfeu_ein:
+ type: number
+ description: Absolute Feuchte (g/kg) der Luft am Eintritt
+ example: 10.6
+ betrpWT:
+ description: Definiert einen Betriebspunkt eines Wasser/Sole Wärmeübertragers
+ allOf:
+ - $ref: '#/components/schemas/betrp'
+ - type: object
+ required:
+ - med_key
+ - med_temp_ein
+ properties:
+ med_key:
+ type: string
+ description: Gibt an, welches Medium zu verwenden ist
+ example:
+ - wasser
+ - Antifrogen N
+ med_konz:
+ type: number
+ description: Konzentration (%) des Frostschutzmittels
+ example: 34
+ med_temp_ein:
+ type: number
+ description: Vorlauftemperatur (°C) des Mediums
+ example: 6
+ med_temp_aus:
+ type: number
+ description: Rücklauftemperatur (°C) des Mediums
+ example: 12
+ med_volstrom:
+ type: number
+ description: |
+ **Erforderlich bei Nachrechnung und Reserve**
+ Volumenstrom (L/h) des Mediums
+ example: 3400
+ med_masstrom:
+ type: number
+ description: |
+ **Erforderlich bei Nachrechnung und Reserve**
+ Massenstrom (kg/h) des Mediums
+ example: 3400
+ select_KA:
+ type: integer
+ description: |
+ **Erforderlich bei Nachrechnung und Reserve**
+ Gibt an in welcher Einheit der Mediumstrom vorgegeben wird.
+ * `0` für Volumenstrom (L/h)
+ * `1` für Massenstrom (kg/h)
+ default: 0
+ requestBodies:
+ securitySchemes:
+ api_key:
+ description: >
+ For this sample, you can use the api key `special-key` to test the
+ authorization filters.
+ type: apiKey
+ name: api_key
+ in: header
+ examples:
+ geo:
+ value:
+ lb: 920
+ hb: 600
+ rohr_key: C9.5x0.3
lam_key: 9.5:25x22v1
\ No newline at end of file