{
  "openapi" : "3.0.1",
  "info" : {
    "title" : "FLWS REST API",
    "version" : "v1"
  },
  "servers" : [ {
    "url" : "https://webprod.flexlink.com/flws/api"
  } ],
  "security" : [ {
    "bearerAuth" : [ ]
  } ],
  "paths" : {
    "/v1/auth/authenticate" : {
      "post" : {
        "tags" : [ "auth" ],
        "description" : "Authenticate a user by username and password",
        "operationId" : "authenticate_1",
        "requestBody" : {
          "content" : {
            "application/json; charset=UTF-8" : {
              "schema" : {
                "$ref" : "#/components/schemas/LoginRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "User successfully authenticated",
            "content" : {
              "application/json; charset=UTF-8" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Message"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "application/json; charset=UTF-8" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Message"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal server error",
            "content" : {
              "application/json; charset=UTF-8" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Message"
                }
              }
            }
          }
        }
      }
    },
    "/v1/customers/{customerNumber}/spare-parts-carts" : {
      "get" : {
        "tags" : [ "cart" ],
        "description" : "Get list of spare parts carts for a customer",
        "operationId" : "getSparePartsCarts_1",
        "parameters" : [ {
          "name" : "customerNumber",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "array",
                  "items" : {
                    "$ref" : "#/components/schemas/SparePartsCart"
                  }
                }
              }
            }
          },
          "500" : {
            "description" : "Internal server error",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Message"
                }
              }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "cart" ],
        "description" : "Create a new cart with spare parts for a customer",
        "operationId" : "createSparePartsCart_1",
        "parameters" : [ {
          "name" : "customerNumber",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateSparePartsCartRequest"
              }
            }
          }
        },
        "responses" : {
          "201" : {
            "description" : "Successfully created new cart",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "string"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Message"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal server error",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Message"
                }
              }
            }
          }
        }
      }
    },
    "/v1/licensemanager/renew" : {
      "post" : {
        "operationId" : "createVerificationRequest_1",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/RenewLicenseRequest"
              }
            }
          }
        },
        "responses" : {
          "default" : {
            "description" : "default response",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResponseEntityString"
                }
              }
            }
          }
        }
      }
    },
    "/v1/projectlist" : {
      "get" : {
        "tags" : [ "project" ],
        "description" : "List all projects",
        "operationId" : "getAllProjects_1",
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ProjectListResponse"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal server error",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Message"
                }
              }
            }
          }
        }
      }
    },
    "/v1/windchill/GetConfiguration" : {
      "post" : {
        "tags" : [ "WindChill config" ],
        "description" : "Find existing tactonmodel",
        "operationId" : "getConfigurationString_1",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/WindChillResponseDTO"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Success",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/WindChillResponseDTO"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/WindChillResponseDTO"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/WindChillResponseDTO"
                }
              }
            }
          },
          "404" : {
            "description" : "Not found",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/WindChillResponseDTO"
                }
              }
            }
          }
        }
      }
    },
    "/v1/customers/{customerNumber}/crm-contacts" : {
      "get" : {
        "tags" : [ "contact" ],
        "description" : "Get list of customer contacts from CRM",
        "operationId" : "getCustomerContacts_1",
        "parameters" : [ {
          "name" : "customerNumber",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "array",
                  "items" : {
                    "$ref" : "#/components/schemas/Contact"
                  }
                }
              }
            }
          },
          "500" : {
            "description" : "Internal server error",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Message"
                }
              }
            }
          }
        }
      }
    },
    "/v1/customer" : {
      "get" : {
        "tags" : [ "customer" ],
        "description" : "Get customer by customer number and company code",
        "operationId" : "getCustomers_1",
        "parameters" : [ {
          "name" : "customerNo",
          "in" : "query",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "companyCode",
          "in" : "query",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CustomerResponse"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal server error",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Message"
                }
              }
            }
          }
        }
      }
    },
    "/v1/support/installed-base" : {
      "get" : {
        "tags" : [ "support" ],
        "description" : "List all installed base",
        "operationId" : "getInstalledBase_1",
        "parameters" : [ {
          "name" : "start",
          "in" : "query",
          "schema" : {
            "type" : "integer",
            "format" : "int32"
          }
        }, {
          "name" : "limit",
          "in" : "query",
          "schema" : {
            "type" : "integer",
            "format" : "int32"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Ok",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "array",
                  "items" : {
                    "$ref" : "#/components/schemas/InstalledBaseDataExt"
                  }
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Message"
                }
              }
            }
          }
        }
      }
    },
    "/v1/support/installed-base-empty-projects" : {
      "get" : {
        "tags" : [ "support" ],
        "description" : "List projects without order info, installed base format",
        "operationId" : "getOtherProjectsHandler_1",
        "responses" : {
          "200" : {
            "description" : "Ok",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "array",
                  "items" : {
                    "$ref" : "#/components/schemas/InstalledBaseDataExt"
                  }
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Message"
                }
              }
            }
          }
        }
      }
    },
    "/v1/product/groups" : {
      "get" : {
        "tags" : [ "product" ],
        "description" : "List all product groups",
        "operationId" : "getProductGroups_1",
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "array",
                  "items" : {
                    "$ref" : "#/components/schemas/ProductGroupAlt"
                  }
                }
              }
            }
          },
          "500" : {
            "description" : "Internal server error",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Message"
                }
              }
            }
          }
        }
      }
    },
    "/v1/products/{productNumber}/spare-parts" : {
      "get" : {
        "tags" : [ "product" ],
        "description" : "Get spare parts for a product number",
        "operationId" : "getProductSpareParts_1",
        "parameters" : [ {
          "name" : "productNumber",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "array",
                  "items" : {
                    "$ref" : "#/components/schemas/SparePartData"
                  }
                }
              }
            }
          },
          "500" : {
            "description" : "Internal server error",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Message"
                }
              }
            }
          }
        }
      }
    },
    "/v1/product/types" : {
      "get" : {
        "tags" : [ "product" ],
        "description" : "List all product types",
        "operationId" : "getProductTypes_1",
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "array",
                  "items" : {
                    "$ref" : "#/components/schemas/ProductType"
                  }
                }
              }
            }
          },
          "500" : {
            "description" : "Internal server error",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Message"
                }
              }
            }
          }
        }
      }
    },
    "/v1/projectlist/{projectNumber}/products" : {
      "get" : {
        "tags" : [ "project" ],
        "description" : "List all products that have been ordered in the project",
        "operationId" : "getProjectProducts_1",
        "parameters" : [ {
          "name" : "projectNumber",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "array",
                  "items" : {
                    "$ref" : "#/components/schemas/CartItemProductInfo"
                  }
                }
              }
            }
          },
          "500" : {
            "description" : "Internal server error",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Message"
                }
              }
            }
          }
        }
      }
    },
    "/v1/projectlist/{projectNumber}" : {
      "get" : {
        "tags" : [ "project" ],
        "description" : "Search for projects with project numbers starting with path param",
        "operationId" : "getProjects_1",
        "parameters" : [ {
          "name" : "projectNumber",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ProjectListResponse"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal server error",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Message"
                }
              }
            }
          }
        }
      }
    },
    "/v1/products-conf/{configId}/spare-parts" : {
      "get" : {
        "tags" : [ "products-conf" ],
        "description" : "Get Spare parts based on a BOM of a configItem",
        "operationId" : "getSparePartsByConfigId_1",
        "parameters" : [ {
          "name" : "configId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "array",
                  "items" : {
                    "$ref" : "#/components/schemas/SparePartData"
                  }
                }
              }
            }
          },
          "500" : {
            "description" : "Internal server error",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Message"
                }
              }
            }
          }
        }
      }
    },
    "/v1/customers/{customerNumber}/spare-parts-carts/{cartId}" : {
      "get" : {
        "tags" : [ "cart" ],
        "description" : "Get cart with spare parts for a customer",
        "operationId" : "getSparePartsCartById_1",
        "parameters" : [ {
          "name" : "customerNumber",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "cartId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SparePartsCartWithProducts"
                }
              }
            }
          },
          "404" : {
            "description" : "Not found",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Message"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal server error",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Message"
                }
              }
            }
          }
        }
      },
      "delete" : {
        "tags" : [ "cart" ],
        "description" : "Remove a cart with spare parts for a customer",
        "operationId" : "removeSparePartsCart_1",
        "parameters" : [ {
          "name" : "customerNumber",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "cartId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        } ],
        "responses" : {
          "204" : {
            "description" : "Successful delete"
          },
          "404" : {
            "description" : "Not found",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Message"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal server error",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Message"
                }
              }
            }
          }
        }
      }
    },
    "/v1/messages" : {
      "get" : {
        "tags" : [ "messages" ],
        "description" : "Get temporary messages",
        "operationId" : "getTemporaryMessages_1",
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "array",
                  "items" : {
                    "$ref" : "#/components/schemas/TemporaryMessage"
                  }
                }
              }
            }
          },
          "404" : {
            "description" : "Not found",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Message"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal server error",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Message"
                }
              }
            }
          }
        }
      }
    },
    "/v1/userinfo" : {
      "get" : {
        "tags" : [ "user" ],
        "description" : "Get information about the current API user",
        "operationId" : "getUserInfo_1",
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/UserInfo"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal server error",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Message"
                }
              }
            }
          }
        }
      }
    },
    "/v1/auth/userinfo" : {
      "post" : {
        "tags" : [ "auth" ],
        "description" : "Find a user by username or email",
        "operationId" : "getUserInfoByUsernameOrEmail_1",
        "parameters" : [ {
          "name" : "X-Secret",
          "in" : "header",
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/UserInfoRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "User was found",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/UserInfo"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Message"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Message"
                }
              }
            }
          },
          "404" : {
            "description" : "Not found",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Message"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal server error",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Message"
                }
              }
            }
          }
        }
      }
    },
    "/v1/licensemanager/createlicense" : {
      "post" : {
        "tags" : [ "License manager" ],
        "description" : "create license in license manager, used by ols",
        "operationId" : "licenseManagerCreateLicense_1",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/LicenseMangerServiceDTO"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Success",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/LicenseMangerServiceDTO"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/LicenseMangerServiceDTO"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad request",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/LicenseMangerServiceDTO"
                }
              }
            }
          },
          "404" : {
            "description" : "Not found",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/LicenseMangerServiceDTO"
                }
              }
            }
          }
        }
      }
    },
    "/v1/auth/{userId}/reset-password" : {
      "post" : {
        "tags" : [ "auth" ],
        "description" : "Update password for user",
        "operationId" : "resetUserPassword_1",
        "parameters" : [ {
          "name" : "X-Secret",
          "in" : "header",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "userId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/UserPasswordResetRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "User password successfully updated",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Message"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Message"
                }
              }
            }
          },
          "404" : {
            "description" : "Not found",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Message"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal server error",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Message"
                }
              }
            }
          }
        }
      }
    },
    "/v1/tools/send-email" : {
      "post" : {
        "tags" : [ "tools" ],
        "description" : "send e-mail",
        "operationId" : "sendEmail_1",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/Email"
              }
            }
          }
        },
        "responses" : {
          "204" : {
            "description" : "Successfully send"
          },
          "400" : {
            "description" : "Bad request",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "string"
                }
              }
            }
          }
        }
      }
    },
    "/v1/upload/{cartId}" : {
      "post" : {
        "tags" : [ "cart" ],
        "description" : "Upload attachment for cart in ols",
        "operationId" : "uploadFile_1",
        "parameters" : [ {
          "name" : "cartId",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "multipart/form-data" : {
              "schema" : {
                "type" : "array",
                "items" : {
                  "$ref" : "#/components/schemas/Attachment"
                }
              }
            }
          }
        },
        "responses" : {
          "201" : {
            "description" : "Successfully send"
          },
          "400" : {
            "description" : "Bad request",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "string"
                }
              }
            }
          }
        }
      }
    }
  },
  "components" : {
    "schemas" : {
      "Message" : {
        "type" : "object",
        "properties" : {
          "message" : {
            "type" : "string"
          }
        }
      },
      "LoginRequest" : {
        "type" : "object",
        "properties" : {
          "username" : {
            "type" : "string"
          },
          "password" : {
            "type" : "string"
          }
        }
      },
      "CreateSparePartsCartRequest" : {
        "type" : "object",
        "properties" : {
          "products" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SparePartsCartProduct"
            }
          }
        }
      },
      "SparePartsCartProduct" : {
        "type" : "object",
        "properties" : {
          "productNumber" : {
            "type" : "string"
          },
          "quantity" : {
            "type" : "integer",
            "format" : "int64"
          }
        }
      },
      "HttpHeaders" : {
        "type" : "object",
        "properties" : {
          "empty" : {
            "type" : "boolean"
          },
          "location" : {
            "type" : "string",
            "format" : "uri"
          },
          "lastModified" : {
            "type" : "integer",
            "format" : "int64"
          },
          "all" : {
            "type" : "object",
            "additionalProperties" : {
              "type" : "string"
            },
            "writeOnly" : true
          },
          "contentLength" : {
            "type" : "integer",
            "format" : "int64"
          },
          "contentType" : {
            "$ref" : "#/components/schemas/MediaType"
          },
          "date" : {
            "type" : "integer",
            "format" : "int64"
          },
          "ifModifiedSince" : {
            "type" : "integer",
            "format" : "int64"
          },
          "connection" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "origin" : {
            "type" : "string"
          },
          "ifNotModifiedSince" : {
            "type" : "integer",
            "format" : "int64"
          },
          "etag" : {
            "type" : "string"
          },
          "accept" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/MediaType"
            }
          },
          "cacheControl" : {
            "type" : "string"
          },
          "acceptCharset" : {
            "type" : "array",
            "items" : {
              "type" : "object",
              "properties" : {
                "registered" : {
                  "type" : "boolean"
                }
              }
            }
          },
          "expires" : {
            "type" : "integer",
            "format" : "int64"
          },
          "ifNoneMatch" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "upgrade" : {
            "type" : "string"
          },
          "pragma" : {
            "type" : "string"
          },
          "allow" : {
            "uniqueItems" : true,
            "type" : "array",
            "items" : {
              "type" : "string",
              "enum" : [ "GET", "POST", "HEAD", "OPTIONS", "PUT", "PATCH", "DELETE", "TRACE" ]
            }
          }
        },
        "additionalProperties" : {
          "type" : "array",
          "items" : {
            "type" : "string"
          }
        }
      },
      "MediaType" : {
        "type" : "object",
        "properties" : {
          "type" : {
            "type" : "string"
          },
          "subtype" : {
            "type" : "string"
          },
          "parameters" : {
            "type" : "object",
            "additionalProperties" : {
              "type" : "string"
            }
          },
          "qualityValue" : {
            "type" : "number",
            "format" : "double"
          },
          "wildcardSubtype" : {
            "type" : "boolean"
          },
          "wildcardType" : {
            "type" : "boolean"
          },
          "charSet" : {
            "type" : "object",
            "properties" : {
              "registered" : {
                "type" : "boolean"
              }
            }
          },
          "concrete" : {
            "type" : "boolean"
          }
        }
      },
      "ResponseEntityString" : {
        "type" : "object",
        "properties" : {
          "headers" : {
            "type" : "object",
            "properties" : {
              "empty" : {
                "type" : "boolean"
              },
              "location" : {
                "type" : "string",
                "format" : "uri"
              },
              "lastModified" : {
                "type" : "integer",
                "format" : "int64"
              },
              "all" : {
                "type" : "object",
                "additionalProperties" : {
                  "type" : "string"
                },
                "writeOnly" : true
              },
              "contentLength" : {
                "type" : "integer",
                "format" : "int64"
              },
              "contentType" : {
                "$ref" : "#/components/schemas/MediaType"
              },
              "date" : {
                "type" : "integer",
                "format" : "int64"
              },
              "ifModifiedSince" : {
                "type" : "integer",
                "format" : "int64"
              },
              "connection" : {
                "type" : "array",
                "items" : {
                  "type" : "string"
                }
              },
              "origin" : {
                "type" : "string"
              },
              "ifNotModifiedSince" : {
                "type" : "integer",
                "format" : "int64"
              },
              "etag" : {
                "type" : "string"
              },
              "accept" : {
                "type" : "array",
                "items" : {
                  "$ref" : "#/components/schemas/MediaType"
                }
              },
              "cacheControl" : {
                "type" : "string"
              },
              "acceptCharset" : {
                "type" : "array",
                "items" : {
                  "type" : "object",
                  "properties" : {
                    "registered" : {
                      "type" : "boolean"
                    }
                  }
                }
              },
              "expires" : {
                "type" : "integer",
                "format" : "int64"
              },
              "ifNoneMatch" : {
                "type" : "array",
                "items" : {
                  "type" : "string"
                }
              },
              "upgrade" : {
                "type" : "string"
              },
              "pragma" : {
                "type" : "string"
              },
              "allow" : {
                "uniqueItems" : true,
                "type" : "array",
                "items" : {
                  "type" : "string",
                  "enum" : [ "GET", "POST", "HEAD", "OPTIONS", "PUT", "PATCH", "DELETE", "TRACE" ]
                }
              }
            },
            "additionalProperties" : {
              "type" : "array",
              "items" : {
                "type" : "string"
              }
            }
          },
          "body" : {
            "type" : "string"
          },
          "statusCode" : {
            "type" : "string",
            "enum" : [ "100", "101", "102", "103", "200", "201", "202", "203", "204", "205", "206", "207", "208", "226", "300", "301", "302", "302", "303", "304", "305", "307", "308", "400", "401", "402", "403", "404", "405", "406", "407", "408", "409", "410", "411", "412", "413", "413", "414", "414", "415", "416", "417", "418", "419", "420", "421", "422", "423", "424", "426", "428", "429", "431", "500", "501", "502", "503", "504", "505", "506", "507", "508", "509", "510", "511" ]
          }
        }
      },
      "RenewLicenseRequest" : {
        "type" : "object",
        "properties" : {
          "licenseSerialNumber" : {
            "type" : "string"
          },
          "orderNo" : {
            "type" : "string"
          },
          "userId" : {
            "type" : "string"
          }
        }
      },
      "Project" : {
        "type" : "object",
        "properties" : {
          "projectId" : {
            "type" : "integer",
            "format" : "int32"
          },
          "projectNumber" : {
            "type" : "string"
          },
          "projectName" : {
            "type" : "string"
          },
          "companyCode" : {
            "type" : "string"
          },
          "saleOrganization" : {
            "type" : "string"
          },
          "salesOrderNumber" : {
            "type" : "string"
          },
          "active" : {
            "type" : "boolean"
          },
          "createdTime" : {
            "type" : "string"
          },
          "customerNumber" : {
            "type" : "string"
          },
          "getpS_PSP_PNR" : {
            "type" : "string"
          },
          "companyName" : {
            "type" : "string"
          }
        }
      },
      "ProjectListResponse" : {
        "type" : "object",
        "properties" : {
          "projects" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Project"
            }
          }
        }
      },
      "WindChillResponseDTO" : {
        "type" : "object",
        "properties" : {
          "safestate" : {
            "type" : "string"
          },
          "secret" : {
            "type" : "string"
          },
          "userId" : {
            "type" : "string"
          }
        }
      },
      "WindChillDTO" : {
        "type" : "object",
        "properties" : {
          "status" : {
            "type" : "string"
          },
          "message" : {
            "type" : "string"
          },
          "flxc" : {
            "type" : "string"
          }
        }
      },
      "Contact" : {
        "type" : "object",
        "properties" : {
          "firstName" : {
            "type" : "string"
          },
          "lastName" : {
            "type" : "string"
          },
          "salutation" : {
            "type" : "string"
          },
          "title" : {
            "type" : "string"
          },
          "department" : {
            "type" : "string"
          },
          "email" : {
            "type" : "string"
          },
          "phone" : {
            "type" : "string"
          },
          "mobilePhone" : {
            "type" : "string"
          },
          "customerSeq" : {
            "type" : "integer",
            "format" : "int64"
          }
        }
      },
      "Address" : {
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string"
          },
          "name" : {
            "type" : "string"
          },
          "name2" : {
            "type" : "string"
          },
          "addressField1" : {
            "type" : "string"
          },
          "addressField2" : {
            "type" : "string"
          },
          "addressField3" : {
            "type" : "string"
          },
          "addressField4" : {
            "type" : "string"
          },
          "street1" : {
            "type" : "string"
          },
          "street2" : {
            "type" : "string"
          },
          "street3" : {
            "type" : "string"
          },
          "location" : {
            "type" : "string"
          },
          "zip" : {
            "type" : "string"
          },
          "city" : {
            "type" : "string"
          },
          "country" : {
            "type" : "string"
          },
          "countryCode" : {
            "type" : "string"
          },
          "addressType" : {
            "type" : "string"
          },
          "region" : {
            "type" : "string"
          },
          "defaultShipTo" : {
            "type" : "boolean"
          }
        }
      },
      "Customer" : {
        "type" : "object",
        "properties" : {
          "customerNo" : {
            "type" : "string"
          },
          "name" : {
            "type" : "string"
          },
          "name2" : {
            "type" : "string"
          },
          "deliveryTerms" : {
            "type" : "string"
          },
          "deliveryTerms2" : {
            "type" : "string"
          },
          "priceList" : {
            "type" : "string"
          },
          "secondaryPriceList" : {
            "type" : "string"
          },
          "currency" : {
            "type" : "string"
          },
          "warehouse" : {
            "type" : "string"
          },
          "facility" : {
            "type" : "string"
          },
          "statisticsIdentity1" : {
            "type" : "string"
          },
          "salesUnitCurrency" : {
            "type" : "string"
          },
          "salesUnitCountryCode" : {
            "type" : "string"
          },
          "salesUnitPriceList" : {
            "type" : "string"
          },
          "salesUnitCustomerNumber" : {
            "type" : "string"
          },
          "paymentTermsCode" : {
            "type" : "string"
          },
          "paymentTermsName" : {
            "type" : "string"
          },
          "thirdPriceList" : {
            "type" : "string"
          },
          "phone1" : {
            "type" : "string"
          },
          "phone2" : {
            "type" : "string"
          },
          "salesRepresentative" : {
            "type" : "string"
          },
          "reference1" : {
            "type" : "string"
          },
          "reference2" : {
            "type" : "string"
          },
          "flexlinkReference" : {
            "type" : "string"
          },
          "discountModel" : {
            "type" : "string"
          },
          "deliveryMethod" : {
            "type" : "string"
          },
          "deliveryMethodName" : {
            "type" : "string"
          },
          "crmSeq" : {
            "type" : "integer",
            "format" : "int64"
          },
          "custCrmId" : {
            "type" : "string"
          },
          "yomiName" : {
            "type" : "string"
          },
          "webSite" : {
            "type" : "string"
          },
          "fax" : {
            "type" : "string"
          },
          "primaryContact" : {
            "type" : "string"
          },
          "postalAddress1" : {
            "type" : "string"
          },
          "postalAddress2" : {
            "type" : "string"
          },
          "postalAddress3" : {
            "type" : "string"
          },
          "postalAddress4" : {
            "type" : "string"
          },
          "internalErp" : {
            "type" : "boolean"
          },
          "intUnitCountryCode" : {
            "type" : "string"
          },
          "addressId" : {
            "type" : "string"
          },
          "address1" : {
            "type" : "string"
          },
          "address2" : {
            "type" : "string"
          },
          "address3" : {
            "type" : "string"
          },
          "address4" : {
            "type" : "string"
          },
          "salesOrganization" : {
            "type" : "string"
          },
          "oldCustomerNumber" : {
            "type" : "string"
          },
          "sourceSystem" : {
            "type" : "string"
          },
          "createdBy" : {
            "type" : "string"
          },
          "deliveryAddress" : {
            "$ref" : "#/components/schemas/Address"
          },
          "billingAddress" : {
            "$ref" : "#/components/schemas/Address"
          },
          "visitingAddress" : {
            "$ref" : "#/components/schemas/Address"
          },
          "accountType" : {
            "type" : "string"
          },
          "vatNumber" : {
            "type" : "string"
          },
          "companyCode" : {
            "type" : "string"
          },
          "salesOffice" : {
            "type" : "string"
          },
          "shipToWeekdays" : {
            "type" : "array",
            "items" : {
              "type" : "integer",
              "format" : "int32"
            }
          },
          "discount" : {
            "type" : "number",
            "format" : "double"
          },
          "customerGroup" : {
            "type" : "string"
          },
          "countryCode" : {
            "type" : "string"
          },
          "status" : {
            "type" : "integer",
            "format" : "int32"
          },
          "internalFacility" : {
            "type" : "string"
          },
          "salesUnit" : {
            "type" : "boolean"
          },
          "interCustomerPlantDeliveryAddress" : {
            "$ref" : "#/components/schemas/Address"
          }
        }
      },
      "CustomerResponse" : {
        "type" : "object",
        "properties" : {
          "customer" : {
            "$ref" : "#/components/schemas/Customer"
          }
        }
      },
      "InstalledBaseDataExt" : {
        "type" : "object",
        "properties" : {
          "ci_no" : {
            "type" : "integer",
            "format" : "int32"
          },
          "product_no" : {
            "type" : "string"
          },
          "model" : {
            "type" : "string"
          },
          "sales_unit" : {
            "type" : "string"
          },
          "op_center" : {
            "type" : "string"
          },
          "su_erp_proj" : {
            "type" : "string"
          },
          "shcu_country" : {
            "type" : "string"
          },
          "shcu_street" : {
            "type" : "string"
          },
          "shcu_city" : {
            "type" : "string"
          },
          "shcu_name" : {
            "type" : "string"
          },
          "shcu_no" : {
            "type" : "string"
          },
          "shcu_zip" : {
            "type" : "string"
          },
          "eu_name" : {
            "type" : "string"
          },
          "eu_city" : {
            "type" : "string"
          },
          "Description" : {
            "type" : "string"
          },
          "GroupCode" : {
            "type" : "string"
          },
          "ProductGroup" : {
            "type" : "string"
          },
          "MaterialType" : {
            "type" : "string"
          },
          "MaterialGroup" : {
            "type" : "string"
          },
          "OrderNo" : {
            "type" : "string"
          },
          "CustomerNo" : {
            "type" : "string"
          },
          "CompanyCode" : {
            "type" : "string"
          },
          "Reference" : {
            "type" : "string"
          },
          "Email" : {
            "type" : "string"
          },
          "CompanyName" : {
            "type" : "string"
          },
          "Quantity" : {
            "type" : "integer",
            "format" : "int32"
          },
          "GKAM" : {
            "type" : "string"
          },
          "SalesOffice" : {
            "type" : "string"
          },
          "LinkedProject" : {
            "type" : "string"
          },
          "WarrantyDate" : {
            "type" : "string"
          },
          "SATDate" : {
            "type" : "string"
          },
          "AssetValue" : {
            "type" : "integer",
            "format" : "int64"
          },
          "Currency" : {
            "type" : "string"
          },
          "SalesOfficeKey" : {
            "type" : "string"
          },
          "country_key" : {
            "type" : "string"
          }
        }
      },
      "ProductGroupAlt" : {
        "type" : "object",
        "properties" : {
          "Name" : {
            "type" : "string"
          }
        }
      },
      "SparePartData" : {
        "type" : "object",
        "properties" : {
          "SparePartNo" : {
            "type" : "string"
          },
          "SparePartName" : {
            "type" : "string"
          },
          "ExistsInOLS" : {
            "type" : "integer",
            "format" : "int32"
          },
          "Active" : {
            "type" : "integer",
            "format" : "int32"
          },
          "Description" : {
            "type" : "string"
          },
          "ImageName" : {
            "type" : "string"
          },
          "ThumbName" : {
            "type" : "string"
          },
          "ThumbNameZoom" : {
            "type" : "string"
          },
          "ProductGroup" : {
            "type" : "string"
          },
          "MaterialType" : {
            "type" : "string"
          },
          "Recommended" : {
            "type" : "boolean"
          }
        }
      },
      "ProductType" : {
        "type" : "object",
        "properties" : {
          "keyId" : {
            "type" : "integer",
            "format" : "int32"
          },
          "id" : {
            "type" : "string"
          },
          "name" : {
            "type" : "string"
          },
          "languageCode" : {
            "type" : "string"
          }
        }
      },
      "CartItemProductInfo" : {
        "type" : "object",
        "properties" : {
          "ProductNo" : {
            "type" : "string"
          },
          "Name" : {
            "type" : "string"
          },
          "Description" : {
            "type" : "string"
          },
          "Packsize" : {
            "type" : "integer",
            "format" : "int32"
          },
          "Weight" : {
            "type" : "string"
          },
          "ProductGroup" : {
            "type" : "string"
          },
          "ImageName" : {
            "type" : "string"
          },
          "ThumbName" : {
            "type" : "string"
          },
          "ThumbNameZoom" : {
            "type" : "string"
          },
          "MaterialType" : {
            "type" : "string"
          },
          "Entries" : {
            "type" : "integer",
            "format" : "int32"
          },
          "SumQty" : {
            "type" : "integer",
            "format" : "int32"
          },
          "SpCount" : {
            "type" : "integer",
            "format" : "int32"
          },
          "Cfid" : {
            "type" : "string"
          }
        }
      },
      "SparePartsCartWithProducts" : {
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "integer",
            "format" : "int64"
          },
          "name" : {
            "type" : "string"
          },
          "createdDate" : {
            "type" : "string",
            "format" : "date"
          },
          "products" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SparePartsCartProduct"
            }
          }
        }
      },
      "SparePartsCart" : {
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "integer",
            "format" : "int64"
          },
          "name" : {
            "type" : "string"
          },
          "createdDate" : {
            "type" : "string",
            "format" : "date"
          }
        }
      },
      "TemporaryMessage" : {
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "integer",
            "format" : "int32"
          },
          "validFrom" : {
            "type" : "string",
            "format" : "date"
          },
          "validTo" : {
            "type" : "string",
            "format" : "date"
          },
          "message" : {
            "type" : "string"
          }
        }
      },
      "UserInfo" : {
        "type" : "object",
        "properties" : {
          "username" : {
            "type" : "string"
          },
          "name" : {
            "type" : "string"
          },
          "email" : {
            "type" : "string"
          },
          "locale" : {
            "type" : "string"
          },
          "customerNumber" : {
            "type" : "string"
          },
          "sapCustomerNumber" : {
            "type" : "string"
          },
          "country" : {
            "type" : "string"
          },
          "salesOrganization" : {
            "type" : "string"
          },
          "warehouse" : {
            "type" : "string"
          },
          "facility" : {
            "type" : "string"
          },
          "companyCode" : {
            "type" : "string"
          },
          "internal" : {
            "type" : "boolean"
          },
          "groups" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "userRoles" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        }
      },
      "UserInfoRequest" : {
        "type" : "object",
        "properties" : {
          "email" : {
            "type" : "string"
          },
          "username" : {
            "type" : "string"
          }
        }
      },
      "LicenseMangerServiceDTO" : {
        "type" : "object",
        "properties" : {
          "softwareProductNumber" : {
            "type" : "string"
          },
          "customerNumber" : {
            "type" : "string"
          },
          "customerEmail" : {
            "type" : "string"
          },
          "olsOrderNumber" : {
            "type" : "string"
          },
          "olsUserId" : {
            "type" : "string"
          },
          "productGroup" : {
            "type" : "string"
          },
          "softwareName" : {
            "type" : "string"
          },
          "customerName" : {
            "type" : "string"
          },
          "machineProductGrpMap" : {
            "type" : "object",
            "additionalProperties" : {
              "type" : "string"
            }
          },
          "quantity" : {
            "type" : "integer",
            "format" : "int64"
          }
        }
      },
      "UserPasswordResetRequest" : {
        "type" : "object",
        "properties" : {
          "password" : {
            "type" : "string"
          }
        }
      },
      "Email" : {
        "type" : "object",
        "properties" : {
          "To" : {
            "type" : "string"
          },
          "Subj" : {
            "type" : "string"
          },
          "Body" : {
            "type" : "string"
          }
        }
      },
      "Attachment" : {
        "type" : "object",
        "properties" : {
          "headers" : {
            "type" : "object",
            "additionalProperties" : {
              "type" : "array",
              "items" : {
                "type" : "string"
              }
            }
          },
          "object" : {
            "type" : "object"
          },
          "contentType" : {
            "type" : "object",
            "properties" : {
              "type" : {
                "type" : "string"
              },
              "subtype" : {
                "type" : "string"
              },
              "parameters" : {
                "type" : "object",
                "additionalProperties" : {
                  "type" : "string"
                }
              },
              "wildcardSubtype" : {
                "type" : "boolean"
              },
              "wildcardType" : {
                "type" : "boolean"
              }
            }
          },
          "contentDisposition" : {
            "$ref" : "#/components/schemas/ContentDisposition"
          },
          "contentId" : {
            "type" : "string"
          },
          "dataHandler" : {
            "type" : "object",
            "properties" : {
              "dataSource" : {
                "type" : "object",
                "properties" : {
                  "name" : {
                    "type" : "string"
                  },
                  "inputStream" : {
                    "type" : "object"
                  },
                  "contentType" : {
                    "type" : "string"
                  },
                  "outputStream" : {
                    "type" : "object"
                  }
                }
              },
              "name" : {
                "type" : "string"
              },
              "inputStream" : {
                "type" : "object"
              },
              "content" : {
                "type" : "object"
              },
              "contentType" : {
                "type" : "string"
              },
              "outputStream" : {
                "type" : "object"
              },
              "commandMap" : {
                "type" : "object",
                "properties" : {
                  "mimeTypes" : {
                    "type" : "array",
                    "items" : {
                      "type" : "string"
                    }
                  }
                },
                "writeOnly" : true
              },
              "transferDataFlavors" : {
                "type" : "array",
                "items" : {
                  "type" : "object",
                  "properties" : {
                    "mimeType" : {
                      "type" : "string"
                    },
                    "humanPresentableName" : {
                      "type" : "string"
                    },
                    "subType" : {
                      "type" : "string"
                    },
                    "mimeTypeSerializedObject" : {
                      "type" : "boolean"
                    },
                    "defaultRepresentationClassAsString" : {
                      "type" : "string"
                    },
                    "representationClassInputStream" : {
                      "type" : "boolean"
                    },
                    "representationClassReader" : {
                      "type" : "boolean"
                    },
                    "representationClassCharBuffer" : {
                      "type" : "boolean"
                    },
                    "representationClassByteBuffer" : {
                      "type" : "boolean"
                    },
                    "representationClassSerializable" : {
                      "type" : "boolean"
                    },
                    "representationClassRemote" : {
                      "type" : "boolean"
                    },
                    "flavorSerializedObjectType" : {
                      "type" : "boolean"
                    },
                    "flavorRemoteObjectType" : {
                      "type" : "boolean"
                    },
                    "flavorJavaFileListType" : {
                      "type" : "boolean"
                    },
                    "flavorTextType" : {
                      "type" : "boolean"
                    },
                    "primaryType" : {
                      "type" : "string"
                    }
                  }
                }
              },
              "preferredCommands" : {
                "type" : "array",
                "items" : {
                  "type" : "object",
                  "properties" : {
                    "commandName" : {
                      "type" : "string"
                    },
                    "commandClass" : {
                      "type" : "string"
                    }
                  }
                }
              },
              "allCommands" : {
                "type" : "array",
                "items" : {
                  "type" : "object",
                  "properties" : {
                    "commandName" : {
                      "type" : "string"
                    },
                    "commandClass" : {
                      "type" : "string"
                    }
                  }
                }
              }
            }
          }
        }
      },
      "ContentDisposition" : {
        "type" : "object",
        "properties" : {
          "type" : {
            "type" : "string"
          },
          "parameters" : {
            "type" : "object",
            "additionalProperties" : {
              "type" : "string"
            }
          },
          "filename" : {
            "type" : "string"
          }
        }
      }
    },
    "securitySchemes" : {
      "bearerAuth" : {
        "type" : "http",
        "name" : "Authorization",
        "in" : "header",
        "scheme" : "bearer",
        "bearerFormat" : "JWT"
      }
    }
  }
}