{
  "openapi": "3.0.0",
  "info": {
    "title": "WT 20 API",
    "description": "This is a sample server Petstore server.\nYou can find out more about Swagger at\n[http://swagger.io](http://swagger.io) or on [irc.freenode.net, #swagger](http://swagger.io/irc/).\nFor this sample, you can use the api key `special-key` to test the authorization filters.\n\n# Introduction\nThis API is documented in **OpenAPI format** and is based on\n[Petstore sample](http://petstore.swagger.io/) provided by [swagger.io](http://swagger.io) team.\nIt was **extended** to illustrate features of [generator-openapi-repo](https://github.com/Rebilly/generator-openapi-repo)\ntool and [ReDoc](https://github.com/Redocly/redoc) documentation. In addition to standard\nOpenAPI syntax we use a few [vendor extensions](https://github.com/Redocly/redoc/blob/main/docs/redoc-vendor-extensions.md).\n\n# OpenAPI Specification\nThis API is documented in **OpenAPI format** and is based on\n[Petstore sample](http://petstore.swagger.io/) provided by [swagger.io](http://swagger.io) team.\nIt was **extended** to illustrate features of [generator-openapi-repo](https://github.com/Rebilly/generator-openapi-repo)\ntool and [ReDoc](https://github.com/Redocly/redoc) documentation. In addition to standard\nOpenAPI syntax we use a few [vendor extensions](https://github.com/Redocly/redoc/blob/main/docs/redoc-vendor-extensions.md).\n\n# Cross-Origin Resource Sharing\nThis API features Cross-Origin Resource Sharing (CORS) implemented in compliance with  [W3C spec](https://www.w3.org/TR/cors/).\nAnd that allows cross-domain communication from the browser.\nAll responses have a wildcard same-origin which makes them completely public and accessible to everyone, including any code on any site.\n\n# Authentication\n\nPetstore offers two forms of authentication:\n  - API Key\n  - OAuth2\nOAuth2 - an open protocol to allow secure authorization in a simple\nand standard method from web, mobile and desktop applications.\n\n<SecurityDefinitions />\n",
    "termsOfService": "http://hombach.de",
    "contact": {
      "name": "API Support",
      "url": "https://hombach.de/api/doc",
      "email": "info@hombach.de"
    },
    "license": {
      "name": "proprietary"
    },
    "version": "0.1.0"
  },
  "servers": [
    {
      "url": "//hombach.de/api",
      "description": "Hombach WT 20"
    }
  ],
  "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\"",
        "operationId": "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",
        "operationId": "help2",
        "parameters": [
          {
            "name": "query",
            "in": "path",
            "required": true,
            "schema": {
              "$ref": "#/components/schemas/mode"
            },
            "desciption": "Abzufragender Parameter"
          }
        ],
        "responses": {
          "200": {
            "description": "successful operation",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/mode"
                }
              }
            },
            "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"
              }
            ]
          }
        }
      }
    }
  },
  "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",
        "default": "wt",
        "example": "direktverdampfer",
        "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"
        ],
        "properties": {
          "lb": {
            "type": "number",
            "description": "Berippte/lichte Breite",
            "maximum": 5200.0,
            "minimum": 125.0,
            "example": "920"
          },
          "hb": {
            "type": "number",
            "description": "Berippte/lichte Höhe",
            "maximum": 2880.0,
            "minimum": 125.0,
            "example": "600"
          },
          "rohr_key": {
            "type": "string",
            "description": "Zu verwendendes Rohr",
            "example": [
              {
                "key": "C12x0.35"
              },
              {
                "key": "C9.5x0.3"
              }
            ]
          },
          "lam_key": {
            "type": "string",
            "description": "Zu verwendende Lamelle",
            "example": [
              {
                "key": "12:30x26v1"
              },
              {
                "key": "9.5:25x22v1"
              }
            ]
          },
          "lam_abst_fixed": {
            "type": "boolean",
            "description": "true, wenn Lamellenabstand vorgegeben werden soll",
            "allowEmptyValue": "true"
          },
          "lam_abst": {
            "type": "number",
            "description": "Lamellenabstand (mm). Wird berechnet, wenn lam_abst_fixed=false",
            "allowEmptyValue": "true"
          }
        }
      },
      "betrp": {
        "type": "object",
        "properties": {
          "t_ein": {
            "type": "number",
            "description": "T ein"
          }
        }
      }
    },
    "examples": {
      "geo": {
        "value": {
          "lb": "920",
          "hb": "600",
          "rohr_key": "C9.5x0.3",
          "lam_key": "9.5:25x22v1"
        }
      }
    },
    "securitySchemes": {
      "api_key": {
        "type": "apiKey",
        "description": "For this sample, you can use the api key `special-key` to test the authorization filters.\n",
        "name": "api_key",
        "in": "header"
      }
    }
  },
  "tags": [
    {
      "name": "Hilfe",
      "description": "Hilfe mit der API"
    },
    {
      "name": "Berechnung",
      "description": "Berechnung von Wärmeübertragern"
    },
    {
      "name": "geo",
      "description": "<SchemaDefinition schemaRef=\"#/components/schemas/geo\" />\n",
      "x-displayName": "Das Geometrie-Modell"
    },
    {
      "name": "betrp",
      "description": "<SchemaDefinition schemaRef=\"#/components/schemas/betrp\" />\n",
      "x-displayName": "Das Betriebspunkt-Modell"
    }
  ],
  "x-tagGroups": [
    {
      "name": "Hilfe"
    }
  ]
}