{
  "openapi": "3.0.4",
  "info": {
    "title": "TAS.Ecoach.WebApi",
    "description": "REST API for TAS Ecoach",
    "contact": {
      "name": "TAS AG",
      "email": "it@tasag.de"
    },
    "version": "1"
  },
  "paths": {
    "/api/auth/refresh": {
      "post": {
        "tags": [
          "Auth"
        ],
        "summary": "refresh JWTs",
        "description": "refresh JWTs",
        "operationId": "RefreshTokenEndpoint",
        "parameters": [
          {
            "name": "tenant",
            "in": "header",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RefreshTokenCommand"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TokenResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/auth": {
      "post": {
        "tags": [
          "Auth"
        ],
        "summary": "generate JWTs",
        "description": "generate JWTs",
        "operationId": "TokenGenerationEndpoint",
        "parameters": [
          {
            "name": "tenant",
            "in": "header",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TokenGenerationCommand"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TokenResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/coachings": {
      "post": {
        "tags": [
          "Coachings"
        ],
        "summary": "Creates a new coaching",
        "description": "Creates a new coaching",
        "operationId": "CreateCoachingEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCoachingCommand"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateCoachingResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/coachings/{id}": {
      "get": {
        "tags": [
          "Coachings"
        ],
        "summary": "Gets a coaching by id",
        "description": "Gets a coaching by id",
        "operationId": "GetCoachingEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetCoachingResponse"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Coachings"
        ],
        "summary": "Updates a coaching",
        "description": "Updates a coaching",
        "operationId": "UpdateCoachingEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCoachingCommand"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateCoachingResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/coachings/search": {
      "post": {
        "tags": [
          "Coachings"
        ],
        "summary": "Gets a paged list of coachings",
        "description": "Gets a paged list of coachings",
        "operationId": "GetCoachingListEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PagedRequestFilterWithSearch"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CoachingAsListItemDtoPagedList"
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/coachings/invite": {
      "post": {
        "tags": [
          "Coachings"
        ],
        "summary": "Send an invite to a coaching",
        "description": "Send an invite to a coaching",
        "operationId": "InviteToCoachingEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/InviteToCoachingCommand"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/InviteToCoachingResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/import/users/template": {
      "get": {
        "tags": [
          "Import"
        ],
        "summary": "Get an Excel file that can be used as template for User Import",
        "description": "Get an Excel file that can be used as template for User Import",
        "operationId": "GetUserImportTemplateEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/octet-stream": {
                "schema": {
                  "type": "string",
                  "format": "binary"
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/import/users/preview": {
      "post": {
        "tags": [
          "Import"
        ],
        "summary": "Upload User Import Excel. Users are not imported, instead a validation summary is returned.",
        "description": "Upload User Import Excel. Users are not imported, instead a validation summary is returned.",
        "operationId": "PreviewUserImportEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "required": [
                  "file"
                ],
                "type": "object",
                "properties": {
                  "file": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "file": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PreviewUserImportResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/import/users/import": {
      "post": {
        "tags": [
          "Import"
        ],
        "summary": "Upload User Import Excel. Users are imported.",
        "description": "Upload User Import Excel. Users are imported.",
        "operationId": "ImportUsersEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "required": [
                  "file"
                ],
                "type": "object",
                "properties": {
                  "file": {
                    "type": "string",
                    "format": "binary"
                  }
                }
              },
              "encoding": {
                "file": {
                  "style": "form"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/v{version}/monitorings": {
      "post": {
        "tags": [
          "Monitorings"
        ],
        "summary": "Create a new new monitoring",
        "description": "Create a new new monitoring",
        "operationId": "CreateMonitoringEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateMonitoringCommand"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateMonitoringResponse"
                }
              }
            }
          }
        }
      },
      "get": {
        "tags": [
          "Monitorings"
        ],
        "summary": "Get a list of monitorings",
        "description": "Get a list of monitorings",
        "operationId": "GetMonitoringListEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          },
          {
            "name": "MonitoredUserId",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "ProjectIds",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "PageNumber",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "PageSize",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "OrderBy",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MonitoringAsListItemDtoPagedList"
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/monitorings/{id}": {
      "get": {
        "tags": [
          "Monitorings"
        ],
        "summary": "Get a single monitoring by id",
        "description": "Get a single monitoring by id",
        "operationId": "GetMonitoringEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetMonitoringResponse"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Monitorings"
        ],
        "summary": "Updates a monitoring session",
        "description": "Updates a monitoring session",
        "operationId": "UpdateMonitoringSessionEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateMonitoringSessionCommand"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateMonitoringSessionResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/monitorings/contact-reasons/{id}": {
      "get": {
        "tags": [
          "Monitorings - Contact Reasons"
        ],
        "summary": "gets a contact reason by id",
        "description": "gets a contact reason by id",
        "operationId": "GetContactReasonEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetContactReasonResponse"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Monitorings - Contact Reasons"
        ],
        "summary": "Updates a contact reason",
        "description": "Updates a contact reason",
        "operationId": "UpdateContactReasonEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateContactReasonCommand"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateContactReasonResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/monitorings/contact-reasons/search": {
      "post": {
        "tags": [
          "Monitorings - Contact Reasons"
        ],
        "summary": "gets a list of contact reasons",
        "description": "gets a list contact reasons",
        "operationId": "GetContactReasonListEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/GetContactReasonListRequestFilter"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ContactReasonAsListItemDtoPagedList"
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/monitorings/contact-reasons": {
      "post": {
        "tags": [
          "Monitorings - Contact Reasons"
        ],
        "summary": "Creates a new contact reason",
        "description": "Creates a new contact reason",
        "operationId": "CreateContactReasonEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateContactReasonCommand"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateContactReasonResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/monitorings/contact-reasons/projects/link": {
      "post": {
        "tags": [
          "Monitorings - Contact Reasons"
        ],
        "summary": "Links a contact reason to a project",
        "description": "Links a contact reason to a project",
        "operationId": "CreateContactReasonProjectAssociationEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateContactReasonProjectAssociationCommand"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateContactReasonProjectAssociationResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/monitorings/contact-reasons/projects/unlink": {
      "delete": {
        "tags": [
          "Monitorings - Contact Reasons"
        ],
        "summary": "Removes link between a contact reason and a project",
        "description": "Removes link between a contact reason and a project",
        "operationId": "DeleteContactReasonProjectAssociationEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DeleteContactReasonProjectAssociationCommand"
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "No Content"
          }
        }
      }
    },
    "/api/v{version}/monitorings/methods": {
      "post": {
        "tags": [
          "Monitorings - Methods"
        ],
        "summary": "Creates a new method",
        "description": "Creates a new method",
        "operationId": "CreateMonitoringMethodEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateMonitoringMethodCommand"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateMonitoringMethodResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/monitorings/methods/{id}": {
      "get": {
        "tags": [
          "Monitorings - Methods"
        ],
        "summary": "gets method by id",
        "description": "gets method by id",
        "operationId": "GetMonitoringMethodEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetMonitoringMethodResponse"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Monitorings - Methods"
        ],
        "summary": "Updates a method",
        "description": "Updates a method",
        "operationId": "UpdateMonitoringMethodEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateMonitoringMethodCommand"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateMonitoringMethodResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request"
          }
        }
      },
      "delete": {
        "tags": [
          "Monitorings - Methods"
        ],
        "summary": "Deletes an unused method",
        "description": "Deletes an unused method",
        "operationId": "DeleteMonitoringMethodEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          }
        }
      }
    },
    "/api/v{version}/monitorings/methods/search": {
      "post": {
        "tags": [
          "Monitorings - Methods"
        ],
        "summary": "gets a list of methods with paging support",
        "description": "gets a list of methods with paging support",
        "operationId": "GetMonitoringMethodListEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PagedRequestFilterWithSearch"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MonitoringMethodAsListItemDtoPagedList"
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/monitorings/sessions": {
      "post": {
        "tags": [
          "Monitorings - Sessions"
        ],
        "summary": "Creates a new session for monitorings",
        "description": "Creates a new session for monitorings",
        "operationId": "CreateMonitoringSessionEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateMonitoringSessionCommand"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateMonitoringSessionResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/monitorings/sessions/search": {
      "post": {
        "tags": [
          "Monitorings - Sessions"
        ],
        "summary": "gets a list of monitoring sessions with paging support",
        "description": "gets a list of monitoring sessions with paging support",
        "operationId": "SearchMonitoringSessionsEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PagedRequestFilterWithSearch"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MonitoringSessionAsListItemDtoPagedList"
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/monitorings/sessions/{id}": {
      "get": {
        "tags": [
          "Monitorings - Sessions"
        ],
        "summary": "Gets a detailed view of a monitoring session by id",
        "description": "Gets a detailed view of a monitoring session by id",
        "operationId": "GetMonitoringSessionEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetMonitoringSessionResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/my-dashboard/score": {
      "get": {
        "tags": [
          "My Dashboard"
        ],
        "summary": "gets score",
        "description": "gets score",
        "operationId": "GetScoreEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          },
          {
            "name": "startDate",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "date"
            }
          },
          {
            "name": "endDate",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "date"
            }
          },
          {
            "name": "projectIds",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "format": "uuid"
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetScoreResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/my-dashboard/hints": {
      "get": {
        "tags": [
          "My Dashboard"
        ],
        "summary": "gets hints",
        "description": "gets hints",
        "operationId": "GetHintsEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetHintsResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/my-dashboard/stats": {
      "get": {
        "tags": [
          "My Dashboard"
        ],
        "summary": "gets stats",
        "description": "gets stats",
        "operationId": "GetStatsEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          },
          {
            "name": "projectIds",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "format": "uuid"
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetStatsResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/my-dashboard/monitorings/{id}": {
      "get": {
        "tags": [
          "My Dashboard"
        ],
        "summary": "Get a single monitoring",
        "description": "Get a single monitoring",
        "operationId": "MapGetMyMonitoringEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetMonitoringResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/my-dashboard/monitorings": {
      "get": {
        "tags": [
          "My Dashboard"
        ],
        "summary": "Get a list of own monitorings",
        "description": "Get a list of own monitorings",
        "operationId": "GetMyMonitoringListEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          },
          {
            "name": "projectIds",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "pageNumber",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/MonitoringAsListItemDtoPagedList"
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/my-dashboard/score-history": {
      "get": {
        "tags": [
          "My Dashboard"
        ],
        "summary": "gets score history",
        "description": "gets score history",
        "operationId": "GetScoreHistoryEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          },
          {
            "name": "projectIds",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "format": "uuid"
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetScoreHistoryResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/my-dashboard/my-projects": {
      "get": {
        "tags": [
          "My Dashboard"
        ],
        "summary": "gets a list of projects the user is associated with or has monitoring for",
        "description": "gets a list of projects the user is associated with or has monitoring for",
        "operationId": "GetMyProjectsEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ProjectAsListItemDto"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/my-dashboard/coachings": {
      "get": {
        "tags": [
          "My Dashboard"
        ],
        "summary": "Get a list of own coachings",
        "description": "Get a list of own coachings",
        "operationId": "GetMyCoachingListEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          },
          {
            "name": "projectIds",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "pageNumber",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CoachingAsListItemDtoPagedList"
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/my-dashboard/coachings/{id}": {
      "get": {
        "tags": [
          "My Dashboard"
        ],
        "summary": "Get own coaching",
        "description": "Get own coaching",
        "operationId": "GetMyCoachingEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetCoachingResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/projects": {
      "post": {
        "tags": [
          "Projects"
        ],
        "summary": "Creates a new project",
        "description": "Creates a new project",
        "operationId": "CreateProjectEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateProjectCommand"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateProjectResponse"
                }
              }
            }
          }
        }
      },
      "get": {
        "tags": [
          "Projects"
        ],
        "summary": "gets a list of projects with paging support",
        "description": "gets a list of projects with paging support",
        "operationId": "GetProjectListEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          },
          {
            "name": "pageNumber",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProjectAsListItemDtoPagedList"
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/projects/{id}": {
      "get": {
        "tags": [
          "Projects"
        ],
        "summary": "gets project by id",
        "description": "gets project by id",
        "operationId": "GetProjectEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetProjectResponse"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Projects"
        ],
        "summary": "Updates a project",
        "description": "Updates a project",
        "operationId": "UpdateProjectEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateProjectCommand"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateProjectResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request"
          }
        }
      },
      "delete": {
        "tags": [
          "Projects"
        ],
        "summary": "Deletes a project",
        "description": "Deletes a project",
        "operationId": "DeleteProjectEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          }
        }
      }
    },
    "/api/v{version}/projects/search": {
      "post": {
        "tags": [
          "Projects"
        ],
        "summary": "gets a list of projects with paging support",
        "description": "gets a list of projects with paging support",
        "operationId": "SearchProjectsEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PagedRequestFilterWithSearch"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProjectAsListItemDtoPagedList"
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/projects/{projectId}/users": {
      "post": {
        "tags": [
          "Projects"
        ],
        "summary": "Assigns an user to a project",
        "description": "Assigns an user to a project",
        "operationId": "CreateUserProjectCommand",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          },
          {
            "name": "projectId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateUserProjectCommand"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateUserProjectResponse"
                }
              }
            }
          }
        }
      },
      "get": {
        "tags": [
          "Projects"
        ],
        "summary": "gets a list of assigned users to a project",
        "description": "gets a list of assigned users to a project",
        "operationId": "MapGetUserProjectListByProjectIdEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          },
          {
            "name": "projectId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/UserProjectAsListItemDto"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/projects/{projectId}/users/{userId}": {
      "delete": {
        "tags": [
          "Projects"
        ],
        "summary": "Removes a user assignment",
        "description": "Removes a user assignment",
        "operationId": "DeleteProjectUserAssignmentEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          },
          {
            "name": "projectId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          }
        }
      }
    },
    "/api/v{version}/reports/historical-stats": {
      "get": {
        "tags": [
          "Reports"
        ],
        "summary": "gets historical stats",
        "description": "gets historical stats",
        "operationId": "GetHistoricalStatsEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          },
          {
            "name": "CreatedDateStart",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "date"
            }
          },
          {
            "name": "CreatedDateEnd",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "date"
            }
          },
          {
            "name": "ContactDateStart",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string",
              "format": "date"
            }
          },
          {
            "name": "ContactDateEnd",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string",
              "format": "date"
            }
          },
          {
            "name": "ProjectIds",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "TeamIds",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "UserIds",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "PeriodAggregationLevel",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "IsGroupedByProject",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "IsGroupedByUser",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "IsGroupedMyMonitoring",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetHistoricalStatsResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/reports/historical-stats/export": {
      "get": {
        "tags": [
          "Reports"
        ],
        "summary": "Export historical stats to CSV or Excel",
        "description": "Export historical stats to CSV or Excel",
        "operationId": "ExportHistoricalStatsCsvEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          },
          {
            "name": "CreatedDateStart",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "date"
            }
          },
          {
            "name": "CreatedDateEnd",
            "in": "query",
            "schema": {
              "type": "string",
              "format": "date"
            }
          },
          {
            "name": "ContactDateStart",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string",
              "format": "date"
            }
          },
          {
            "name": "ContactDateEnd",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string",
              "format": "date"
            }
          },
          {
            "name": "ProjectIds",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "TeamIds",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "UserIds",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "PeriodAggregationLevel",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "IsGroupedByProject",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "IsGroupedByUser",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "IsGroupedMyMonitoring",
            "in": "query",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "format",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "text/csv": {
                "schema": {
                  "type": "string",
                  "format": "binary"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request"
          }
        }
      }
    },
    "/api/roles/{id}": {
      "get": {
        "tags": [
          "Roles"
        ],
        "summary": "Get role details by ID",
        "description": "Retrieve the details of a role by its ID.",
        "operationId": "GetRoleByIdEndpoint",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RoleDto"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Roles"
        ],
        "summary": "Delete a role by ID",
        "description": "Remove a role from the system by its ID.",
        "operationId": "DeleteRole",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/roles": {
      "get": {
        "tags": [
          "Roles"
        ],
        "summary": "Get a list of all roles",
        "description": "Retrieve a list of all roles available in the system.",
        "operationId": "GetRolesEndpoint",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/RoleDto"
                  }
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Roles"
        ],
        "summary": "Create or update a role",
        "description": "Create a new role or update an existing role.",
        "operationId": "CreateOrUpdateRole",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateOrUpdateRoleCommand"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RoleDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/roles/{id}/permissions": {
      "get": {
        "tags": [
          "Roles"
        ],
        "summary": "get role permissions",
        "description": "get role permissions",
        "operationId": "GetRolePermissionsEndpoint",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RoleDto"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Roles"
        ],
        "summary": "update role permissions",
        "description": "update role permissions",
        "operationId": "UpdateRolePermissionsEndpoint",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdatePermissionsCommand"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/sso/entra-id/enabled": {
      "get": {
        "tags": [
          "SSO - Entra ID"
        ],
        "summary": "Check if Entra ID SSO is enabled.",
        "description": "Check if Entra ID SSO is configured and enabled for the current tenant.",
        "operationId": "MapIsEntraIdEnabledEndpoint",
        "parameters": [
          {
            "name": "tenant",
            "in": "header",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IsEntraIdEnabledResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": { }
              }
            }
          }
        }
      }
    },
    "/api/sso/entra-id/config": {
      "post": {
        "tags": [
          "SSO - Entra ID"
        ],
        "summary": "Create or Update Entra ID config.",
        "description": "Create or Update Entra ID config.",
        "operationId": "MapCreateOrUpdateEntraIdSsoConfigEndpoint",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateOrUpdateEntraIdSsoConfigCommand"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateOrUpdateEntraIdSsoConfigResponse"
                }
              }
            }
          }
        }
      },
      "get": {
        "tags": [
          "SSO - Entra ID"
        ],
        "summary": "Get current Entra ID config.",
        "description": "Get current Entra ID config. For security reasons the data is masked.",
        "operationId": "MapGetEntraIdSsoConfigEndpoint",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetEntraIdSsoConfigResponse"
                }
              }
            }
          },
          "204": {
            "description": "No Content"
          }
        }
      }
    },
    "/api/sso/entra-id/login": {
      "get": {
        "tags": [
          "SSO - Entra ID"
        ],
        "summary": "Initiate Entra ID SSO login.",
        "description": "Redirects to Microsoft Entra ID for authentication.",
        "operationId": "MapEntraIdLoginEndpoint",
        "parameters": [
          {
            "name": "tenant",
            "in": "header",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "302": {
            "description": "Found"
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": { }
              }
            }
          }
        }
      }
    },
    "/api/sso/entra-id/login-url": {
      "get": {
        "tags": [
          "SSO - Entra ID"
        ],
        "summary": "Get Entra ID SSO login URL (for testing).",
        "description": "Returns the Microsoft Entra ID login URL instead of redirecting. Useful for testing in Swagger.",
        "operationId": "MapEntraIdLoginUrlEndpoint",
        "parameters": [
          {
            "name": "tenant",
            "in": "header",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetLoginUrlResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/json": {
                "schema": { }
              }
            }
          }
        }
      }
    },
    "/api/sso/entra-id/callback": {
      "get": {
        "tags": [
          "SSO - Entra ID"
        ],
        "summary": "Handle Entra ID SSO callback.",
        "description": "Processes the callback from Microsoft Entra ID after authentication and redirects to client app.",
        "operationId": "MapEntraIdCallbackEndpoint",
        "parameters": [
          {
            "name": "code",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "state",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "error",
            "in": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "302": {
            "description": "Found"
          },
          "400": {
            "description": "Bad Request"
          }
        }
      }
    },
    "/api/v{version}/teams": {
      "post": {
        "tags": [
          "Teams"
        ],
        "summary": "Creates a new team",
        "description": "Creates a new team",
        "operationId": "CreateTeamEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTeamCommand"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateTeamResponse"
                }
              }
            }
          }
        }
      },
      "get": {
        "tags": [
          "Teams"
        ],
        "summary": "gets a list of teams with paging support",
        "description": "gets a list of teams with paging support",
        "operationId": "GetTeamListEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          },
          {
            "name": "PageNumber",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "PageSize",
            "in": "query",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "OrderBy",
            "in": "query",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TeamAsListItemDtoPagedList"
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/teams/{id}": {
      "get": {
        "tags": [
          "Teams"
        ],
        "summary": "gets team by id",
        "description": "gets team by id",
        "operationId": "GetTeamEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetTeamResponse"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Teams"
        ],
        "summary": "Updates a team",
        "description": "Updates a team",
        "operationId": "UpdateTeamEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateTeamCommand"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateTeamResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request"
          }
        }
      },
      "delete": {
        "tags": [
          "Teams"
        ],
        "summary": "Deletes a team",
        "description": "Deletes a team",
        "operationId": "DeleteTeamEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          }
        }
      }
    },
    "/api/v{version}/teams/search": {
      "post": {
        "tags": [
          "Teams"
        ],
        "summary": "searches for teams and returns a list of teams with paging support",
        "description": "searches for teams and returns a list of teams with paging support",
        "operationId": "SearchTeamsEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PagedRequestFilterWithSearch"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TeamAsListItemDtoPagedList"
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/teams/{teamId}/members": {
      "post": {
        "tags": [
          "Teams"
        ],
        "summary": "Adds a member to a team",
        "description": "Adds a member to a team",
        "operationId": "AddMemberCommand",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          },
          {
            "name": "teamId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AddMemberCommand"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AddMemberResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/teams/{teamId}/members/{userId}": {
      "delete": {
        "tags": [
          "Teams"
        ],
        "summary": "Removes a member from a team",
        "description": "Removes a member from a team",
        "operationId": "RemoveMemberEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          },
          {
            "name": "teamId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          }
        }
      }
    },
    "/api/v{version}/templates": {
      "post": {
        "tags": [
          "Templates"
        ],
        "summary": "Creates a new template",
        "description": "Creates a new template",
        "operationId": "CreateTemplateEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTemplateCommand"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateTemplateResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/templates/{id}": {
      "get": {
        "tags": [
          "Templates"
        ],
        "summary": "gets template by id",
        "description": "gets template by id",
        "operationId": "GetTemplateEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetTemplateResponse"
                }
              }
            }
          }
        }
      },
      "put": {
        "tags": [
          "Templates"
        ],
        "summary": "Updates a template",
        "description": "Updates a template",
        "operationId": "UpdateTemplateEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateTemplateCommand"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateTemplateResponse"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Templates"
        ],
        "summary": "Deletes a template",
        "description": "Deletes a template",
        "operationId": "DeleteTemplateEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          }
        }
      }
    },
    "/api/v{version}/templates/search": {
      "post": {
        "tags": [
          "Templates"
        ],
        "summary": "gets a list of templates with paging support",
        "description": "gets a list of templates with paging support",
        "operationId": "GetTemplateListEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PagedRequestFilterWithSearch"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TemplateAsListItemDtoPagedList"
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/templates/{id}/duplicate": {
      "post": {
        "tags": [
          "Templates"
        ],
        "summary": "duplicates template by id",
        "description": "duplicates template by id",
        "operationId": "CreateDuplicateOfTemplateEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateDuplicateOfTemplateResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/templates/publish": {
      "post": {
        "tags": [
          "Templates"
        ],
        "summary": "Publishes a template",
        "description": "Publishes a template",
        "operationId": "PublishTemplateEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PublishTemplateCommand"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PublishTemplateResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/templates/publish/revoke": {
      "post": {
        "tags": [
          "Templates"
        ],
        "summary": "Unpublishes a template",
        "description": "Unpublishes a template",
        "operationId": "RevokePublicationTemplateEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RevokePublicationTemplateCommand"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RevokePublicationTemplateResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/templates/questions/answer-options": {
      "post": {
        "tags": [
          "Templates - Answer Options for Questions"
        ],
        "summary": "Creates an answer option and adds it to the set of answer options of a question",
        "description": "Creates an answer option and adds it to the set of answer options of a question",
        "operationId": "CreateAnswerOptionEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateAnswerOptionCommand"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateAnswerOptionResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/templates/questions/answer-options/{id}": {
      "put": {
        "tags": [
          "Templates - Answer Options for Questions"
        ],
        "summary": "Updates an answer option",
        "description": "Updates an answer option",
        "operationId": "UpdateAnswerOptionEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateAnswerOptionCommand"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateAnswerOptionResponse"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Templates - Answer Options for Questions"
        ],
        "summary": "Deletes an answer option",
        "description": "Deletes an answer option",
        "operationId": "DeleteAnswerOptionEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          }
        }
      }
    },
    "/api/v{version}/templates/questions": {
      "post": {
        "tags": [
          "Templates - Questions and Question Sets"
        ],
        "summary": "Creates a new question within an existing question set",
        "description": "Creates a new question within an existing question set",
        "operationId": "CreateQuestionEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateQuestionCommand"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateQuestionResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/templates/questions/sets": {
      "post": {
        "tags": [
          "Templates - Questions and Question Sets"
        ],
        "summary": "Creates a new question set",
        "description": "Creates a new question set",
        "operationId": "CreateQuestionSetEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateQuestionSetCommand"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Created",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateQuestionSetResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/templates/questions/{id}": {
      "put": {
        "tags": [
          "Templates - Questions and Question Sets"
        ],
        "summary": "Updates a question or question set",
        "description": "Updates a question or question set",
        "operationId": "UpdateQuestionEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateQuestionCommand"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdateQuestionResponse"
                }
              }
            }
          },
          "400": {
            "description": "Bad Request"
          }
        }
      },
      "delete": {
        "tags": [
          "Templates - Questions and Question Sets"
        ],
        "summary": "Deletes an question or question set",
        "description": "Deletes an question or question set",
        "operationId": "DeleteQuestionEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          }
        }
      }
    },
    "/api/tenants": {
      "post": {
        "tags": [
          "Tenants"
        ],
        "summary": "creates a tenant",
        "description": "creates a tenant",
        "operationId": "CreateTenantEndpoint",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateTenantCommand"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateTenantResponse"
                }
              }
            }
          }
        }
      },
      "get": {
        "tags": [
          "Tenants"
        ],
        "summary": "get tenants",
        "description": "get tenants",
        "operationId": "GetTenantsEndpoint",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/TenantDetail"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/tenants/{identifier}": {
      "get": {
        "tags": [
          "Tenants"
        ],
        "summary": "get tenant by identifier",
        "description": "get tenant by identifier",
        "operationId": "GetTenantByIdentifierEndpoint",
        "parameters": [
          {
            "name": "identifier",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TenantDetail"
                }
              }
            }
          }
        }
      }
    },
    "/api/tenants/upgrade": {
      "post": {
        "tags": [
          "Tenants"
        ],
        "summary": "upgrade tenant subscription",
        "description": "upgrade tenant subscription",
        "operationId": "UpgradeSubscriptionEndpoint",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpgradeSubscriptionCommand"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpgradeSubscriptionResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/tenants/{identifier}/activate": {
      "post": {
        "tags": [
          "Tenants"
        ],
        "summary": "activate tenant",
        "description": "activate tenant",
        "operationId": "ActivateTenantEndpoint",
        "parameters": [
          {
            "name": "identifier",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ActivateTenantResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/tenants/{identifier}/deactivate": {
      "post": {
        "tags": [
          "Tenants"
        ],
        "summary": "deactivate tenant",
        "description": "deactivate tenant",
        "operationId": "DisableTenantEndpoint",
        "parameters": [
          {
            "name": "identifier",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DisableTenantResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/users/{userId}/teams": {
      "get": {
        "tags": [
          "User Associations"
        ],
        "summary": "Gets a list of teams an user is assigned to",
        "description": "Gets a list of teams an user is assigned to",
        "operationId": "GetUserTeamListEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          },
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/UserTeamAsListItemDto"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/v{version}/users/{userId}/projects": {
      "get": {
        "tags": [
          "User Associations"
        ],
        "summary": "gets a list of assigned projects to an user",
        "description": "gets a list of assigned projects to an user",
        "operationId": "MapGetUserProjectListByUserIdEndpoint",
        "parameters": [
          {
            "name": "version",
            "in": "path",
            "description": "The requested API version",
            "required": true,
            "schema": {
              "type": "string",
              "default": "1"
            }
          },
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/UserProjectAsListItemDto"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/api/users": {
      "post": {
        "tags": [
          "Users"
        ],
        "summary": "create an user",
        "description": "create an user",
        "operationId": "CreateUserEndpoint",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RegisterUserCommand"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RegisterUserResponse"
                }
              }
            }
          }
        }
      }
    },
    "/api/users/{userId}": {
      "get": {
        "tags": [
          "Users"
        ],
        "summary": "Get user profile by ID",
        "description": "Get another user's profile details by user ID.",
        "operationId": "GetUserEndpoint",
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserDetailDto"
                }
              }
            }
          },
          "404": {
            "description": "Not Found",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorized",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          },
          "403": {
            "description": "Forbidden",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Users"
        ],
        "summary": "delete user profile",
        "description": "delete user profile",
        "operationId": "DeleteUserEndpoint",
        "parameters": [
          {
            "name": "userId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/users/search": {
      "post": {
        "tags": [
          "Users"
        ],
        "summary": "get users list",
        "description": "get users list",
        "operationId": "GetUsersListEndpoint",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PagedRequestFilterWithSearch"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserDetailDtoPagedList"
                }
              }
            }
          }
        }
      }
    },
    "/api/users/profile": {
      "put": {
        "tags": [
          "Users"
        ],
        "summary": "update user profile",
        "description": "update user profile",
        "operationId": "UpdateUserEndpoint",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateUserCommand"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/users/{id}/roles": {
      "get": {
        "tags": [
          "Users"
        ],
        "summary": "get user roles",
        "description": "get user roles",
        "operationId": "GetUserRolesEndpoint",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/UserRoleDetailDto"
                  }
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Users"
        ],
        "summary": "assign roles",
        "description": "assign roles",
        "operationId": "AssignRolesToUserEndpoint",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AssignUserRoleCommand"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/users/{id}/toggle-status": {
      "post": {
        "tags": [
          "Users"
        ],
        "summary": "Toggle a user's active status",
        "description": "Toggle a user's active status",
        "operationId": "ToggleUserStatusEndpoint",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ToggleUserStatusCommand"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/users/change-password": {
      "post": {
        "tags": [
          "Users"
        ],
        "summary": "Changes password",
        "description": "Change password",
        "operationId": "ChangePasswordEndpoint",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ChangePasswordCommand"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/users/forgot-password": {
      "post": {
        "tags": [
          "Users"
        ],
        "summary": "Forgot password",
        "description": "Generates a password reset token and sends it via email.",
        "operationId": "ForgotPasswordEndpoint",
        "parameters": [
          {
            "name": "tenant",
            "in": "header",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ForgotPasswordCommand"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/users/email-reset-password": {
      "get": {
        "tags": [
          "Users"
        ],
        "summary": "Reset password",
        "description": "Resets the password using the token and new password provided.",
        "operationId": "EmailResetPasswordEndpoint",
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "email",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tenant",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/api/users/me": {
      "get": {
        "tags": [
          "Users"
        ],
        "summary": "Get current user information based on token",
        "description": "Get current user information based on token",
        "operationId": "GetCurrentUserEndpoint",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UserDetailDto"
                }
              }
            }
          }
        }
      }
    },
    "/api/users/me/permissions": {
      "get": {
        "tags": [
          "Users"
        ],
        "summary": "Get current user permissions",
        "description": "Get current user permissions",
        "operationId": "GetCurrentUserPermissionEndpoint",
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "ActivateTenantResponse": {
        "type": "object",
        "properties": {
          "status": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "AddMemberCommand": {
        "type": "object",
        "properties": {
          "teamId": {
            "type": "string",
            "format": "uuid",
            "example": "3fe59546-8dc7-4479-a3e5-ac3a86b06543"
          },
          "ecoachUserId": {
            "type": "string",
            "format": "uuid",
            "example": "55114d2a-3a1b-42f4-858b-ccf272b3d6c4"
          }
        },
        "additionalProperties": false
      },
      "AddMemberResponse": {
        "type": "object",
        "properties": {
          "ecoachUserId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "0b04c5eb-8231-4ee3-be79-90bee7feb010"
          }
        },
        "additionalProperties": false
      },
      "AnswerDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "671a91cc-09a6-43ea-95e5-6064e05697c5"
          },
          "questionId": {
            "type": "string",
            "format": "uuid",
            "example": "29c0852d-7ec5-4cbd-a272-4b1c248dffee"
          },
          "text": {
            "type": "string",
            "nullable": true
          },
          "value": {
            "type": "number",
            "format": "double",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "AssignUserRoleCommand": {
        "type": "object",
        "properties": {
          "userRoles": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/UserRoleDetailDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ChangePasswordCommand": {
        "type": "object",
        "properties": {
          "password": {
            "type": "string",
            "nullable": true
          },
          "newPassword": {
            "type": "string",
            "nullable": true
          },
          "confirmNewPassword": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CoachingAsListItemDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "ef65455d-9dda-4b26-badf-6cde4fde6cbd"
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "coach": {
            "$ref": "#/components/schemas/UserShortDto"
          },
          "coachedUser": {
            "$ref": "#/components/schemas/UserShortDto"
          },
          "monitoringSessionId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "68f225d6-d493-40b5-b1d9-74b386924c49"
          },
          "projectId": {
            "type": "string",
            "format": "uuid",
            "example": "b32368c1-b287-46a6-9813-3b2cf3684ada"
          },
          "projectTitle": {
            "type": "string",
            "nullable": true
          },
          "isPrepared": {
            "type": "boolean"
          },
          "preparedAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "isScheduled": {
            "type": "boolean"
          },
          "scheduledFor": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "isCompleted": {
            "type": "boolean"
          },
          "completedAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "evaluationScheduledFor": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "isEvaluated": {
            "type": "boolean"
          },
          "evaluatedAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "created": {
            "type": "string",
            "format": "date-time"
          },
          "createdBy": {
            "type": "string",
            "format": "uuid"
          }
        },
        "additionalProperties": false
      },
      "CoachingAsListItemDtoPagedList": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CoachingAsListItemDto"
            },
            "nullable": true
          },
          "pageNumber": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "totalCount": {
            "type": "integer",
            "format": "int32"
          },
          "totalPages": {
            "type": "integer",
            "format": "int32",
            "readOnly": true
          },
          "hasPrevious": {
            "type": "boolean",
            "readOnly": true
          },
          "hasNext": {
            "type": "boolean",
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "ContactReasonAsListItemDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "ac5d47c2-85f9-4166-8b8d-618cc72be111"
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "isActive": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "ContactReasonAsListItemDtoPagedList": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ContactReasonAsListItemDto"
            },
            "nullable": true
          },
          "pageNumber": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "totalCount": {
            "type": "integer",
            "format": "int32"
          },
          "totalPages": {
            "type": "integer",
            "format": "int32",
            "readOnly": true
          },
          "hasPrevious": {
            "type": "boolean",
            "readOnly": true
          },
          "hasNext": {
            "type": "boolean",
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "CreateAnswerOptionCommand": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "257c525b-f161-4b94-a1af-7483d5343f05"
          },
          "questionId": {
            "type": "string",
            "format": "uuid",
            "example": "1de550a4-6be4-45ba-bd6e-b93686a90341"
          },
          "text": {
            "type": "string",
            "nullable": true
          },
          "value": {
            "type": "number",
            "format": "double",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateAnswerOptionResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "cdd0e652-8d8f-40ac-8748-bea80b01af53"
          }
        },
        "additionalProperties": false
      },
      "CreateCoachingCommand": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "3a395615-b190-4aaf-8b28-5105414d19b7"
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "coachId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "fe3908d5-56c8-4790-8324-c0ac99c64005"
          },
          "coachedUserId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "90d2b8d4-f8c5-496c-ba29-a5e5df8e4116"
          },
          "monitoringSessionId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "ec8928da-4f70-4562-b9dc-18c8365ad862"
          },
          "projectId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "3487239b-280e-4f9a-94b9-c595a793fb0b"
          },
          "coachingReason": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateCoachingResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "5b45a485-0e0e-4f98-a52a-fb4d9cdfb0d0"
          }
        },
        "additionalProperties": false
      },
      "CreateContactReasonCommand": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateContactReasonProjectAssociationCommand": {
        "type": "object",
        "properties": {
          "contactReasonId": {
            "type": "string",
            "format": "uuid",
            "example": "15d8f1e0-e223-4ad8-b20a-6c30772036b3"
          },
          "projectId": {
            "type": "string",
            "format": "uuid",
            "example": "7ae65568-4f6a-429a-8866-053cc467bb82"
          }
        },
        "additionalProperties": false
      },
      "CreateContactReasonProjectAssociationResponse": {
        "type": "object",
        "properties": {
          "success": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "CreateContactReasonResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "2e5844d9-c49e-49ee-a261-f453356bf212"
          }
        },
        "additionalProperties": false
      },
      "CreateDuplicateOfTemplateResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "3601e2b4-8f67-468c-9f81-cf3f09620c39"
          }
        },
        "additionalProperties": false
      },
      "CreateMonitoringCommand": {
        "required": [
          "conversation",
          "monitoredCategories",
          "monitoringMethodId",
          "monitoringSessionId",
          "templateId",
          "templateRevision"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "32eaad69-3d89-4834-bb01-502543ee4204"
          },
          "comment": {
            "type": "string",
            "nullable": true
          },
          "created": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "hints": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "contactReasonId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "a20fded8-3e6d-43c5-8089-d16b7e2b7e7b"
          },
          "conversation": {
            "$ref": "#/components/schemas/MonitoredConversationDto"
          },
          "monitoredCategories": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MonitoredCategoryDto"
            },
            "nullable": true
          },
          "monitoringMethodId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "67ad2e19-2c17-4654-8722-f19743295316"
          },
          "monitoringSessionId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "5f94a5d6-f3e5-4815-b414-a77535cc1316"
          },
          "templateId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "5d6fd9d6-4140-4751-8c30-af6cf70f0ca4"
          },
          "templateRevision": {
            "type": "integer",
            "format": "int64"
          },
          "monitoringUserId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "263a0411-d4fd-4baa-9038-6aff896051c5"
          }
        },
        "additionalProperties": false
      },
      "CreateMonitoringMethodCommand": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateMonitoringMethodResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "b146bf6f-1554-4195-a5a3-10c3845a8cd9"
          }
        },
        "additionalProperties": false
      },
      "CreateMonitoringResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "4a085f49-594d-47ae-a5d5-41e24e73523c"
          }
        },
        "additionalProperties": false
      },
      "CreateMonitoringSessionCommand": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "95d18f51-5931-49e6-9b9b-1859ae18a6b9"
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "projectId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "f480a045-2185-4b76-8a6c-0bdf1224bcf3"
          },
          "monitoredUserId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "4606fe03-c987-4100-92a1-d9cf6074131a"
          },
          "comment": {
            "type": "string",
            "nullable": true
          },
          "created": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateMonitoringSessionResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "bb0d9b38-48e7-46a5-ae56-a00df749eb36"
          }
        },
        "additionalProperties": false
      },
      "CreateOrUpdateEntraIdSsoConfigCommand": {
        "required": [
          "clientId",
          "secretId",
          "secretValue",
          "tenantId"
        ],
        "type": "object",
        "properties": {
          "tenantId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "a223d4b1-e9d9-465f-8452-db26fc6db52c"
          },
          "clientId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "791e6f0c-bd0c-4530-b5ba-9b0b2e0f07a5"
          },
          "secretId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "09c321e2-7183-4170-a887-7ced57316412"
          },
          "secretValue": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateOrUpdateEntraIdSsoConfigResponse": {
        "required": [
          "clientId",
          "tenantId"
        ],
        "type": "object",
        "properties": {
          "tenantId": {
            "type": "string",
            "format": "uuid",
            "example": "11da7dda-0c64-4a53-902d-3a87b1bf0f21"
          },
          "clientId": {
            "type": "string",
            "format": "uuid",
            "example": "11e5aa8d-c9ec-4bf5-b57f-fd35bc832d5a"
          }
        },
        "additionalProperties": false
      },
      "CreateOrUpdateRoleCommand": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "d60f48cc-7677-43e4-9c34-102e57e32098"
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateProjectCommand": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "externalReference": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateProjectResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "4eb168d9-d5b0-44d3-af1e-0f68c23324a5"
          }
        },
        "additionalProperties": false
      },
      "CreateQuestionCommand": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "f31b60e7-3b6c-4823-a0eb-adf5ae727f4a"
          },
          "questionSetId": {
            "type": "string",
            "format": "uuid",
            "example": "01566bec-7326-41b2-b98b-659a47c508a9"
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "weight": {
            "type": "number",
            "format": "double"
          },
          "orderRank": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "CreateQuestionResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "e49701a3-b899-4adc-a6bb-0627b41e4ca7"
          }
        },
        "additionalProperties": false
      },
      "CreateQuestionSetCommand": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "77cde04b-f8f9-46ea-95c1-0a9c50e28d14"
          },
          "questionSetId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "282671b5-9f3b-418d-8cdb-9fcaf670edda"
          },
          "templateId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "5b436d11-16fd-4507-8ea8-2543b6b9bf2a"
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "weight": {
            "type": "number",
            "format": "double"
          },
          "orderRank": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "CreateQuestionSetResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "5884282e-483d-4cc7-8538-53fd12c2382f"
          }
        },
        "additionalProperties": false
      },
      "CreateTeamCommand": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateTeamResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "8b79740d-338e-4ea7-b702-5c4c5379e98e"
          }
        },
        "additionalProperties": false
      },
      "CreateTemplateCommand": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "4040dd59-d8fc-4f74-a870-b8a731ee1a1d"
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateTemplateResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "72b9a2d3-23e2-4195-904a-5fbb606aac4d"
          }
        },
        "additionalProperties": false
      },
      "CreateTenantCommand": {
        "type": "object",
        "properties": {
          "identifier": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "connectionString": {
            "type": "string",
            "nullable": true
          },
          "adminEmail": {
            "type": "string",
            "nullable": true
          },
          "issuer": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateTenantResponse": {
        "type": "object",
        "properties": {
          "identifier": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "CreateUserProjectCommand": {
        "type": "object",
        "properties": {
          "projectId": {
            "type": "string",
            "format": "uuid",
            "example": "d83be219-3b4e-4a79-8b1f-55d5f0b06c7a"
          },
          "ecoachUserId": {
            "type": "string",
            "format": "uuid",
            "example": "d39ddf33-6013-48e1-acd6-f44f6423b9d3"
          }
        },
        "additionalProperties": false
      },
      "CreateUserProjectResponse": {
        "type": "object",
        "properties": {
          "projectId": {
            "type": "string",
            "format": "uuid",
            "example": "7c689b74-acc0-42a4-9c56-42ac500e0f2b"
          },
          "ecoachUserId": {
            "type": "string",
            "format": "uuid",
            "example": "7797f2b0-fa7b-4a38-a2ec-b64439833d53"
          }
        },
        "additionalProperties": false
      },
      "DeleteContactReasonProjectAssociationCommand": {
        "type": "object",
        "properties": {
          "contactReasonId": {
            "type": "string",
            "format": "uuid",
            "example": "ee2c60ae-2db7-4637-b2e6-459ae94f4c01"
          },
          "projectId": {
            "type": "string",
            "format": "uuid",
            "example": "f508891b-f1ba-4574-b8d1-cc99b844a1e2"
          }
        },
        "additionalProperties": false
      },
      "DisableTenantResponse": {
        "type": "object",
        "properties": {
          "status": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "FileUploadCommand": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "nullable": true
          },
          "extension": {
            "type": "string",
            "nullable": true
          },
          "data": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "Filter": {
        "type": "object",
        "properties": {
          "logic": {
            "type": "string",
            "nullable": true
          },
          "filters": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Filter"
            },
            "nullable": true
          },
          "field": {
            "type": "string",
            "nullable": true
          },
          "operator": {
            "type": "string",
            "nullable": true
          },
          "value": {
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ForgotPasswordCommand": {
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GetCoachingResponse": {
        "required": [
          "coach",
          "coachedUser",
          "coachingReason",
          "completedAt",
          "created",
          "documentation",
          "evaluatedAt",
          "evaluationScheduledFor",
          "focusTopics",
          "id",
          "invitationSentAt",
          "invitationSentFor",
          "isCompleted",
          "isEvaluated",
          "isPrepared",
          "isScheduled",
          "monitoringSessionId",
          "objectiveAgreements",
          "plannedAt",
          "plannedTopics",
          "projectId",
          "projectTitle",
          "scheduledDurationMinutes",
          "scheduledFor",
          "title"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "b8485e66-5c5d-4108-890c-3acb3ceedf63"
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "coach": {
            "$ref": "#/components/schemas/UserShortDto"
          },
          "coachedUser": {
            "$ref": "#/components/schemas/UserShortDto"
          },
          "monitoringSessionId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "0a7c9e9f-b69e-4307-b80a-cbc523b5fad4"
          },
          "projectId": {
            "type": "string",
            "format": "uuid",
            "example": "90e3e54d-32e4-4907-b7e9-48d186baf83b"
          },
          "projectTitle": {
            "type": "string",
            "nullable": true
          },
          "coachingReason": {
            "type": "string",
            "nullable": true
          },
          "isPrepared": {
            "type": "boolean"
          },
          "plannedAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "plannedTopics": {
            "type": "string",
            "nullable": true
          },
          "isScheduled": {
            "type": "boolean"
          },
          "scheduledFor": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "scheduledDurationMinutes": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "invitationSentAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "invitationSentFor": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "isCompleted": {
            "type": "boolean"
          },
          "completedAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "documentation": {
            "type": "string",
            "nullable": true
          },
          "focusTopics": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "objectiveAgreements": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ObjectiveAgreementDto"
            },
            "nullable": true
          },
          "isEvaluated": {
            "type": "boolean"
          },
          "evaluationScheduledFor": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "evaluatedAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "created": {
            "type": "string",
            "format": "date-time"
          }
        },
        "additionalProperties": false
      },
      "GetContactReasonListRequestFilter": {
        "type": "object",
        "properties": {
          "advancedSearch": {
            "$ref": "#/components/schemas/SearchFilter"
          },
          "keyword": {
            "type": "string",
            "nullable": true
          },
          "advancedFilter": {
            "$ref": "#/components/schemas/Filter"
          },
          "pageNumber": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "orderBy": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "projectFilter": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GetContactReasonResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "b3551e5f-1147-4927-81e2-f6a2f9235c2a"
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "isActive": {
            "type": "boolean"
          },
          "projects": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GetEntraIdSsoConfigResponse": {
        "required": [
          "clientId",
          "secretId",
          "secretValue",
          "tenantId"
        ],
        "type": "object",
        "properties": {
          "tenantId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "696b2674-204c-4cf3-9ed0-5d0fe057c815"
          },
          "clientId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "d0450d1b-a3fd-428a-b5e6-547fe3951119"
          },
          "secretId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "6cd5b91a-4df6-459a-ad16-fdb60966c16d"
          },
          "secretValue": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GetHintsResponse": {
        "type": "object",
        "properties": {
          "hints": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/HintDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GetHistoricalStatsResponse": {
        "type": "object",
        "properties": {
          "rows": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/HistoricalStatDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GetLoginUrlResponse": {
        "required": [
          "loginUrl",
          "state"
        ],
        "type": "object",
        "properties": {
          "loginUrl": {
            "type": "string",
            "nullable": true
          },
          "state": {
            "type": "string",
            "nullable": true
          },
          "instructions": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GetMonitoredCategoryDto": {
        "required": [
          "created",
          "id",
          "monitoredCategories",
          "monitoredQuestions",
          "monitoringId",
          "parentCategoryId",
          "recursionLevel",
          "score",
          "title",
          "weight"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "b9a9fd6b-0802-4d6b-b98f-fb1780c675e9"
          },
          "created": {
            "type": "string",
            "format": "date-time"
          },
          "isOptOut": {
            "type": "boolean"
          },
          "isWithoutRating": {
            "type": "boolean"
          },
          "monitoringId": {
            "type": "string",
            "format": "uuid",
            "example": "50353c09-eebd-439e-9c9c-ee909bb250e6"
          },
          "parentCategoryId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "605a95c2-5e5a-420f-be72-5f52095b1384"
          },
          "monitoredCategories": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/GetMonitoredCategoryDto"
            },
            "nullable": true
          },
          "monitoredQuestions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/GetMonitoredQuestionDto"
            },
            "nullable": true
          },
          "recursionLevel": {
            "type": "integer",
            "format": "int32"
          },
          "score": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "weight": {
            "type": "number",
            "format": "double"
          }
        },
        "additionalProperties": false
      },
      "GetMonitoredQuestionDto": {
        "required": [
          "created",
          "id",
          "isOptOut",
          "isWithoutRating",
          "questionHistoricalDescription",
          "questionHistoricalTitle",
          "questionId",
          "selectedAnswerOptionId",
          "selectedAnswerOptionText",
          "selectedAnswerOptionValue",
          "weight"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "5ae0be91-fd79-47ba-989e-9106a42c33c4"
          },
          "created": {
            "type": "string",
            "format": "date-time"
          },
          "isOptOut": {
            "type": "boolean"
          },
          "isWithoutRating": {
            "type": "boolean"
          },
          "selectedAnswerOptionId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "671c8063-14c3-4b99-9b6c-fbda3b8d8832"
          },
          "selectedAnswerOptionText": {
            "type": "string",
            "nullable": true
          },
          "selectedAnswerOptionValue": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "questionId": {
            "type": "string",
            "format": "uuid",
            "example": "70e01c05-a3e7-4ed2-80f5-ae9b7e274e0f"
          },
          "questionHistoricalTitle": {
            "type": "string",
            "nullable": true
          },
          "questionHistoricalDescription": {
            "type": "string",
            "nullable": true
          },
          "weight": {
            "type": "number",
            "format": "double"
          }
        },
        "additionalProperties": false
      },
      "GetMonitoringMethodResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "03b3a5cb-945b-463a-bb0e-844a2d9d8bf5"
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "isActive": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "GetMonitoringResponse": {
        "required": [
          "comment",
          "contactEnd",
          "contactReasonHistoricalTitle",
          "contactReasonId",
          "contactStart",
          "created",
          "hints",
          "id",
          "monitoredCategories",
          "monitoredUserDisplayName",
          "monitoredUserId",
          "monitoredUserImageUrl",
          "monitoringMethodHistoricalTitle",
          "monitoringMethodId",
          "monitoringSessionId",
          "monitoringUserDisplayName",
          "monitoringUserId",
          "monitoringUserImageUrl",
          "projectHistoricalTitle",
          "projectId",
          "score",
          "templateHistoricalTitle",
          "templateId",
          "templateVersion"
        ],
        "type": "object",
        "properties": {
          "contactStart": {
            "type": "string",
            "format": "date-time"
          },
          "contactEnd": {
            "type": "string",
            "format": "date-time"
          },
          "contactReasonId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "f0424ba2-7eda-4353-b526-dc3f8be7132c"
          },
          "contactReasonHistoricalTitle": {
            "type": "string",
            "nullable": true
          },
          "created": {
            "type": "string",
            "format": "date-time"
          },
          "comment": {
            "type": "string",
            "nullable": true
          },
          "hints": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "fa359ba4-0c9f-4a83-b3a8-ad854edd24f5"
          },
          "monitoredCategories": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/GetMonitoredCategoryDto"
            },
            "nullable": true
          },
          "monitoredUserId": {
            "type": "string",
            "format": "uuid",
            "example": "6b98cf58-f390-4a41-871c-d179b2b6843b"
          },
          "monitoredUserDisplayName": {
            "type": "string",
            "nullable": true
          },
          "monitoredUserImageUrl": {
            "type": "string",
            "format": "uri",
            "nullable": true
          },
          "monitoringMethodId": {
            "type": "string",
            "format": "uuid",
            "example": "923b7699-5e5c-4ea1-a5e8-78e6971d76f3"
          },
          "monitoringMethodHistoricalTitle": {
            "type": "string",
            "nullable": true
          },
          "monitoringSessionId": {
            "type": "string",
            "format": "uuid",
            "example": "9c33870e-eccb-4610-8c5a-5d73c3f719e3"
          },
          "monitoringUserId": {
            "type": "string",
            "format": "uuid",
            "example": "6f54017b-355e-48a1-bc08-772d355c9cd7"
          },
          "monitoringUserDisplayName": {
            "type": "string",
            "nullable": true
          },
          "monitoringUserImageUrl": {
            "type": "string",
            "format": "uri",
            "nullable": true
          },
          "projectId": {
            "type": "string",
            "format": "uuid",
            "example": "8ed37f15-e424-4f72-940b-7e5931ae2387"
          },
          "projectHistoricalTitle": {
            "type": "string",
            "nullable": true
          },
          "score": {
            "type": "number",
            "format": "double"
          },
          "templateId": {
            "type": "string",
            "format": "uuid",
            "example": "bdc218fa-c889-4455-a759-b86b034a3b7c"
          },
          "templateHistoricalTitle": {
            "type": "string",
            "nullable": true
          },
          "templateVersion": {
            "type": "integer",
            "format": "int64"
          }
        },
        "additionalProperties": false
      },
      "GetMonitoringSessionResponse": {
        "required": [
          "closedAt",
          "closedByUserId",
          "coachingId",
          "comment",
          "createdAt",
          "id",
          "isMarkedForCoaching",
          "monitoredUser",
          "monitorings",
          "projectId",
          "projectTitle",
          "score",
          "title"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "01f4477e-2330-4196-9000-fd299a5e0392"
          },
          "projectId": {
            "type": "string",
            "format": "uuid",
            "example": "34b19135-b776-408c-8f9c-8f758ea607b2"
          },
          "projectTitle": {
            "type": "string",
            "nullable": true
          },
          "score": {
            "type": "number",
            "format": "double"
          },
          "monitoredUser": {
            "$ref": "#/components/schemas/UserShortDto"
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "closedAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "closedByUserId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "6a692188-d433-405e-8c8b-bad189cef2f6"
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "comment": {
            "type": "string",
            "nullable": true
          },
          "isMarkedForCoaching": {
            "type": "boolean"
          },
          "coachingId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "5562f84b-8359-497a-a108-2127b627b9b6"
          },
          "monitorings": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MonitoringShortDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GetProjectResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "71cb86d2-0456-4210-ad7c-fdcb927556a5"
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "externalReference": {
            "type": "string",
            "nullable": true
          },
          "isActive": {
            "type": "boolean",
            "nullable": true
          },
          "assignedUsers": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GetScoreHistoryResponse": {
        "required": [
          "dataPoints"
        ],
        "type": "object",
        "properties": {
          "dataPoints": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ScorePointDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GetScoreResponse": {
        "required": [
          "endDate",
          "scores",
          "startDate",
          "totalScore"
        ],
        "type": "object",
        "properties": {
          "startDate": {
            "type": "string",
            "format": "date"
          },
          "endDate": {
            "type": "string",
            "format": "date"
          },
          "totalScore": {
            "$ref": "#/components/schemas/ScoreDto"
          },
          "scores": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ScoreDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GetStatsResponse": {
        "required": [
          "filteredCompletedCoachingsCount",
          "filteredMonitoringsCount",
          "filteredProjectsCount",
          "nextCoaching",
          "nextCoachingTitle",
          "totalCompletedCoachingsCount",
          "totalMonitoringsCount",
          "totalProjectsCount"
        ],
        "type": "object",
        "properties": {
          "totalCompletedCoachingsCount": {
            "type": "integer",
            "format": "int32"
          },
          "filteredCompletedCoachingsCount": {
            "type": "integer",
            "format": "int32"
          },
          "filteredMonitoringsCount": {
            "type": "integer",
            "format": "int32"
          },
          "totalMonitoringsCount": {
            "type": "integer",
            "format": "int32"
          },
          "filteredProjectsCount": {
            "type": "integer",
            "format": "int32"
          },
          "totalProjectsCount": {
            "type": "integer",
            "format": "int32"
          },
          "nextCoachingTitle": {
            "type": "string",
            "nullable": true
          },
          "nextCoaching": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GetTeamResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "3de0a3f9-5163-4bc2-9cac-365cf7268189"
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "members": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "GetTemplateResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "3beea94d-e45a-463f-bc6a-4101028ed2bc"
          },
          "revision": {
            "type": "integer",
            "format": "int64",
            "nullable": true
          },
          "projectIds": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            },
            "nullable": true
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "isActive": {
            "type": "boolean",
            "nullable": true
          },
          "isPublished": {
            "type": "boolean",
            "nullable": true
          },
          "publishedAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "publishRevokedAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "created": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "questions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/QuestionDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "HintDto": {
        "required": [
          "context",
          "hint"
        ],
        "type": "object",
        "properties": {
          "context": {
            "type": "string",
            "nullable": true
          },
          "hint": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "HistoricalStatDto": {
        "type": "object",
        "properties": {
          "year": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "quarter": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "month": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "week": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "day": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "projectId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "fdb6a56f-8f26-4e84-bd83-c86fe5631387"
          },
          "teamId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "e9993d41-19e2-462f-9738-2f8789666e5d"
          },
          "userId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "012f004d-ea45-448b-9748-aae67ffabaee"
          },
          "monitoringsCreatedCount": {
            "type": "integer",
            "format": "int32"
          },
          "monitoredContactsCount": {
            "type": "integer",
            "format": "int32"
          },
          "minScore": {
            "type": "number",
            "format": "double"
          },
          "maxScore": {
            "type": "number",
            "format": "double"
          },
          "averageScore": {
            "type": "number",
            "format": "double"
          },
          "coachingsPlanned": {
            "type": "integer",
            "format": "int32"
          },
          "coachingsDone": {
            "type": "integer",
            "format": "int32"
          },
          "coachingsEvaluated": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "InviteToCoachingCommand": {
        "required": [
          "coachingId",
          "dateTime",
          "htmlBody",
          "subject"
        ],
        "type": "object",
        "properties": {
          "coachingId": {
            "type": "string",
            "format": "uuid",
            "example": "eb5121f3-1c6b-4419-887e-e4753ef9312d"
          },
          "subject": {
            "type": "string",
            "nullable": true
          },
          "htmlBody": {
            "type": "string",
            "nullable": true
          },
          "dateTime": {
            "type": "string",
            "format": "date-time"
          },
          "durationInMinutes": {
            "type": "integer",
            "format": "int32"
          },
          "additionalRequiredAttendeeMails": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "additionalOptionalAttendeeMails": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "InviteToCoachingResponse": {
        "type": "object",
        "properties": {
          "isSuccess": {
            "type": "boolean"
          },
          "message": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "IsEntraIdEnabledResponse": {
        "type": "object",
        "properties": {
          "isEnabled": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "MonitoredCategoryDto": {
        "type": "object",
        "properties": {
          "templateCategoryId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "6ec9d755-3c12-4665-99cc-077973320627"
          },
          "isWithoutRating": {
            "type": "boolean"
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "monitoredSubCategories": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MonitoredCategoryDto"
            },
            "nullable": true
          },
          "monitoredQuestions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MonitoredQuestionDto"
            },
            "nullable": true
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "weight": {
            "type": "number",
            "format": "double"
          },
          "isOptOut": {
            "type": "boolean",
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "MonitoredConversationDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "ef2b99e5-b58e-42b5-bd3d-95364f3ee4af"
          },
          "externalReference": {
            "type": "string",
            "nullable": true
          },
          "start": {
            "type": "string",
            "format": "date-time"
          },
          "end": {
            "type": "string",
            "format": "date-time"
          }
        },
        "additionalProperties": false
      },
      "MonitoredQuestionDto": {
        "type": "object",
        "properties": {
          "isOptOut": {
            "type": "boolean"
          },
          "isWithoutRating": {
            "type": "boolean"
          },
          "templateQuestionId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "8d6690fa-0464-4dea-a8f6-2b36439b166b"
          },
          "selectedTemplateAnswerOptionId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "4c606740-f700-4321-85e8-44c2aae7edae"
          },
          "weight": {
            "type": "number",
            "format": "double"
          },
          "score": {
            "type": "number",
            "format": "double",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "MonitoringAsListItemDto": {
        "required": [
          "contactAt",
          "contactReasonId",
          "contactReasonTitle",
          "createdAt",
          "hintsCount",
          "id",
          "monitoredUserDisplayName",
          "monitoredUserId",
          "monitoredUserImageUrl",
          "monitoringMethodId",
          "monitoringMethodTitle",
          "monitoringSessionId",
          "monitoringUserDisplayName",
          "monitoringUserId",
          "monitoringUserImageUrl",
          "projectId",
          "projectTitle",
          "score"
        ],
        "type": "object",
        "properties": {
          "contactAt": {
            "type": "string",
            "format": "date-time"
          },
          "contactReasonId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "ba5b8a21-eddb-40ce-ad77-b848de16b1e2"
          },
          "contactReasonTitle": {
            "type": "string",
            "nullable": true
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "hintsCount": {
            "type": "integer",
            "format": "int32"
          },
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "3c7f513d-9245-4a94-b0d1-50c82e00b197"
          },
          "monitoredUserId": {
            "type": "string",
            "format": "uuid",
            "example": "19b1431d-3522-4993-8e32-e4a9bc881323"
          },
          "monitoredUserDisplayName": {
            "type": "string",
            "nullable": true
          },
          "monitoredUserImageUrl": {
            "type": "string",
            "format": "uri",
            "nullable": true
          },
          "monitoringSessionId": {
            "type": "string",
            "format": "uuid",
            "example": "81aca6ea-973e-41bf-b339-0d5d611859d2"
          },
          "monitoringUserId": {
            "type": "string",
            "format": "uuid",
            "example": "cb4a2427-e1e4-4477-b363-256fa7de382e"
          },
          "monitoringUserDisplayName": {
            "type": "string",
            "nullable": true
          },
          "monitoringUserImageUrl": {
            "type": "string",
            "format": "uri",
            "nullable": true
          },
          "monitoringMethodId": {
            "type": "string",
            "format": "uuid",
            "example": "6abd2fa1-bc9d-4bf5-9868-97600c7e3cbb"
          },
          "monitoringMethodTitle": {
            "type": "string",
            "nullable": true
          },
          "projectId": {
            "type": "string",
            "format": "uuid",
            "example": "a3c2430e-15cd-407a-92fa-c2cb19cc8a30"
          },
          "projectTitle": {
            "type": "string",
            "nullable": true
          },
          "score": {
            "type": "number",
            "format": "double"
          }
        },
        "additionalProperties": false
      },
      "MonitoringAsListItemDtoPagedList": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MonitoringAsListItemDto"
            },
            "nullable": true
          },
          "pageNumber": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "totalCount": {
            "type": "integer",
            "format": "int32"
          },
          "totalPages": {
            "type": "integer",
            "format": "int32",
            "readOnly": true
          },
          "hasPrevious": {
            "type": "boolean",
            "readOnly": true
          },
          "hasNext": {
            "type": "boolean",
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "MonitoringMethodAsListItemDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "552758a3-0df2-466e-85b3-c845ed721086"
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "isActive": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "MonitoringMethodAsListItemDtoPagedList": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MonitoringMethodAsListItemDto"
            },
            "nullable": true
          },
          "pageNumber": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "totalCount": {
            "type": "integer",
            "format": "int32"
          },
          "totalPages": {
            "type": "integer",
            "format": "int32",
            "readOnly": true
          },
          "hasPrevious": {
            "type": "boolean",
            "readOnly": true
          },
          "hasNext": {
            "type": "boolean",
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "MonitoringSessionAsListItemDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "b3f70014-9925-4c2f-9eec-ccf72a214861"
          },
          "projectId": {
            "type": "string",
            "format": "uuid",
            "example": "616cb435-e590-48bf-a065-90d10a429e37"
          },
          "projectName": {
            "type": "string",
            "nullable": true
          },
          "monitoredUserId": {
            "type": "string",
            "format": "uuid",
            "example": "39ed0ae9-fd18-47ad-97bd-43104584a8f5"
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "score": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "templatesCount": {
            "type": "integer",
            "format": "int32"
          },
          "monitoringsCount": {
            "type": "integer",
            "format": "int32"
          },
          "monitoringUserIds": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "uuid"
            },
            "nullable": true
          },
          "firstMonitoringEventDateTime": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "lastMonitoringEventDateTime": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "firstMonitoringCreatedDateTime": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "lastMonitoringCreatedDateTime": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "isMarkedForCoaching": {
            "type": "boolean"
          },
          "created": {
            "type": "string",
            "format": "date-time"
          },
          "lastModified": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "comment": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "MonitoringSessionAsListItemDtoPagedList": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MonitoringSessionAsListItemDto"
            },
            "nullable": true
          },
          "pageNumber": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "totalCount": {
            "type": "integer",
            "format": "int32"
          },
          "totalPages": {
            "type": "integer",
            "format": "int32",
            "readOnly": true
          },
          "hasPrevious": {
            "type": "boolean",
            "readOnly": true
          },
          "hasNext": {
            "type": "boolean",
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "MonitoringShortDto": {
        "required": [
          "created",
          "id",
          "monitoringUser",
          "score",
          "templateId"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "d948309d-b0b9-4c62-8428-851850ac13fa"
          },
          "monitoringUser": {
            "$ref": "#/components/schemas/UserShortDto"
          },
          "created": {
            "type": "string",
            "format": "date-time"
          },
          "score": {
            "type": "number",
            "format": "double"
          },
          "templateId": {
            "type": "string",
            "format": "uuid",
            "example": "9ac9fb40-e442-48df-9cda-db9c1a4cd612"
          }
        },
        "additionalProperties": false
      },
      "ObjectiveAgreementDto": {
        "type": "object",
        "properties": {
          "objectiveText": {
            "type": "string",
            "nullable": true
          },
          "isFulfilled": {
            "type": "boolean",
            "nullable": true
          },
          "fulfillmentComment": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "PagedRequestFilterWithSearch": {
        "type": "object",
        "properties": {
          "advancedSearch": {
            "$ref": "#/components/schemas/SearchFilter"
          },
          "keyword": {
            "type": "string",
            "nullable": true
          },
          "advancedFilter": {
            "$ref": "#/components/schemas/Filter"
          },
          "pageNumber": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "orderBy": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "PreviewUserImportResponse": {
        "type": "object",
        "properties": {
          "totalRecords": {
            "type": "integer",
            "format": "int32"
          },
          "validRecords": {
            "type": "integer",
            "format": "int32"
          },
          "invalidRecords": {
            "type": "integer",
            "format": "int32"
          },
          "data": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/UserImportWithValidationDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ProblemDetails": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "nullable": true
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "detail": {
            "type": "string",
            "nullable": true
          },
          "instance": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": { }
      },
      "ProjectAsListItemDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "977a1766-c814-4a4f-8181-1d0f8da069fc"
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "externalReference": {
            "type": "string",
            "nullable": true
          },
          "isActive": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "ProjectAsListItemDtoPagedList": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ProjectAsListItemDto"
            },
            "nullable": true
          },
          "pageNumber": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "totalCount": {
            "type": "integer",
            "format": "int32"
          },
          "totalPages": {
            "type": "integer",
            "format": "int32",
            "readOnly": true
          },
          "hasPrevious": {
            "type": "boolean",
            "readOnly": true
          },
          "hasNext": {
            "type": "boolean",
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "PublishTemplateCommand": {
        "type": "object",
        "properties": {
          "templateId": {
            "type": "string",
            "format": "uuid",
            "example": "efba10ba-38af-4cb0-b0c1-e8d02c73e2d0"
          }
        },
        "additionalProperties": false
      },
      "PublishTemplateResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "16c3f196-b1d7-44d6-9f8e-eef90446d3d9"
          }
        },
        "additionalProperties": false
      },
      "QuestionDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "05f278a7-d2b0-4aa0-a48b-b15f244f64e9"
          },
          "templateId": {
            "type": "string",
            "format": "uuid",
            "example": "b0d24f3f-7394-43bd-a252-10b0f1a61aae"
          },
          "questionSetId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "97beef53-5434-4bcd-bbc7-a97d46945850"
          },
          "type": {
            "type": "string",
            "nullable": true
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "orderRank": {
            "type": "integer",
            "format": "int32"
          },
          "weight": {
            "type": "number",
            "format": "double"
          },
          "questions": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/QuestionDto"
            },
            "nullable": true
          },
          "answerSet": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AnswerDto"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "RefreshTokenCommand": {
        "type": "object",
        "properties": {
          "token": {
            "type": "string",
            "nullable": true
          },
          "refreshToken": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "RegisterUserCommand": {
        "type": "object",
        "properties": {
          "firstName": {
            "type": "string",
            "nullable": true
          },
          "lastName": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "userName": {
            "type": "string",
            "nullable": true
          },
          "password": {
            "type": "string",
            "nullable": true
          },
          "confirmPassword": {
            "type": "string",
            "nullable": true
          },
          "phoneNumber": {
            "type": "string",
            "nullable": true
          },
          "externalReference": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "RegisterUserResponse": {
        "type": "object",
        "properties": {
          "userId": {
            "type": "string",
            "format": "uuid",
            "example": "341b7abc-8e02-4784-ae38-2a9d42903eb0"
          }
        },
        "additionalProperties": false
      },
      "RevokePublicationTemplateCommand": {
        "type": "object",
        "properties": {
          "templateId": {
            "type": "string",
            "format": "uuid",
            "example": "6499f491-e752-46a7-bc18-c325b65a4c8e"
          }
        },
        "additionalProperties": false
      },
      "RevokePublicationTemplateResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "fbf3df01-1547-48bb-8df0-b53238bde599"
          }
        },
        "additionalProperties": false
      },
      "RoleDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "cf57d914-44c0-4c19-bd75-39eafdb40e7d"
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "permissions": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ScoreDto": {
        "required": [
          "category",
          "value"
        ],
        "type": "object",
        "properties": {
          "category": {
            "type": "string",
            "nullable": true
          },
          "value": {
            "type": "number",
            "format": "double",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ScorePointDto": {
        "required": [
          "created",
          "monitoringId",
          "projectId",
          "score"
        ],
        "type": "object",
        "properties": {
          "monitoringId": {
            "type": "string",
            "format": "uuid",
            "example": "dd968cc0-b773-4549-a5e4-aa534a61db3f"
          },
          "created": {
            "type": "string",
            "format": "date-time"
          },
          "projectId": {
            "type": "string",
            "format": "uuid",
            "example": "c27b7b93-2668-4e70-bcb6-f6c739c08c66"
          },
          "score": {
            "type": "number",
            "format": "double"
          }
        },
        "additionalProperties": false
      },
      "SearchFilter": {
        "type": "object",
        "properties": {
          "fields": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "keyword": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "TeamAsListItemDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "31a5d32f-2b8d-4fce-b59d-3b88a72d8a27"
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "memberCount": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "TeamAsListItemDtoPagedList": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TeamAsListItemDto"
            },
            "nullable": true
          },
          "pageNumber": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "totalCount": {
            "type": "integer",
            "format": "int32"
          },
          "totalPages": {
            "type": "integer",
            "format": "int32",
            "readOnly": true
          },
          "hasPrevious": {
            "type": "boolean",
            "readOnly": true
          },
          "hasNext": {
            "type": "boolean",
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "TemplateAsListItemDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "58b3546c-580b-4183-86dd-cc9b972b949b"
          },
          "revision": {
            "type": "integer",
            "format": "int64"
          },
          "projectId": {
            "type": "string",
            "format": "uuid",
            "example": "32f3f51c-9e9c-4d60-9acf-fab333b09c1c"
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "isActive": {
            "type": "boolean"
          },
          "isPublished": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "TemplateAsListItemDtoPagedList": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TemplateAsListItemDto"
            },
            "nullable": true
          },
          "pageNumber": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "totalCount": {
            "type": "integer",
            "format": "int32"
          },
          "totalPages": {
            "type": "integer",
            "format": "int32",
            "readOnly": true
          },
          "hasPrevious": {
            "type": "boolean",
            "readOnly": true
          },
          "hasNext": {
            "type": "boolean",
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "TenantDetail": {
        "type": "object",
        "properties": {
          "identifier": {
            "type": "string",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "connectionString": {
            "type": "string",
            "nullable": true
          },
          "adminEmail": {
            "type": "string",
            "nullable": true
          },
          "isActive": {
            "type": "boolean"
          },
          "validUpto": {
            "type": "string",
            "format": "date-time"
          },
          "issuer": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "ToggleUserStatusCommand": {
        "type": "object",
        "properties": {
          "activateUser": {
            "type": "boolean"
          },
          "userId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "0934a2df-b379-483d-93c3-271d8d0412ad"
          }
        },
        "additionalProperties": false
      },
      "TokenGenerationCommand": {
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "nullable": true
          },
          "password": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "TokenResponse": {
        "type": "object",
        "properties": {
          "token": {
            "type": "string",
            "nullable": true
          },
          "refreshToken": {
            "type": "string",
            "nullable": true
          },
          "refreshTokenExpiryTime": {
            "type": "string",
            "format": "date-time"
          }
        },
        "additionalProperties": false
      },
      "UpdateAnswerOptionCommand": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "05abd773-2cb4-4f4e-948f-ab05d00ddbb6"
          },
          "text": {
            "type": "string",
            "nullable": true
          },
          "value": {
            "type": "number",
            "format": "double",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateAnswerOptionResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "1bf12f52-8156-4c81-9a1a-637a04c81a9b"
          }
        },
        "additionalProperties": false
      },
      "UpdateCoachingCommand": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "b105e473-2e3f-42aa-85b6-b3fd83f041f8"
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "monitoringSessionId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "702c9595-638d-4120-86e0-871cc887f6a9"
          },
          "removeMonitoringSession": {
            "type": "boolean",
            "nullable": true
          },
          "projectId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "9b2c2e87-f0e7-47b7-ab1a-c7ef0ac3adcd"
          },
          "coachingReason": {
            "type": "string",
            "nullable": true
          },
          "plannedTopics": {
            "type": "string",
            "nullable": true
          },
          "scheduledFor": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "plannedDurationMinutes": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "documentation": {
            "type": "string",
            "nullable": true
          },
          "focusTopics": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          },
          "objectiveAgreements": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ObjectiveAgreementDto"
            },
            "nullable": true
          },
          "completedAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "evaluationScheduledFor": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "evaluatedAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateCoachingResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "cef3852e-1091-43d8-ad2c-b3cab2348760"
          }
        },
        "additionalProperties": false
      },
      "UpdateContactReasonCommand": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "3063f381-ac22-4376-b171-5a6a125368e2"
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateContactReasonResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "8402b04e-5017-4d5d-99fc-c4224b1de490"
          }
        },
        "additionalProperties": false
      },
      "UpdateMonitoringMethodCommand": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "f5806ef8-8adb-4483-8fa7-3e82d58de601"
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "isActive": {
            "type": "boolean",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateMonitoringMethodResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "3d14f999-d9ff-424d-88a6-937d3c69b55e"
          }
        },
        "additionalProperties": false
      },
      "UpdateMonitoringSessionCommand": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "376256b8-b8a8-4160-8e2b-05fd38725420"
          },
          "isMarkedForCoaching": {
            "type": "boolean",
            "nullable": true
          },
          "isActive": {
            "type": "boolean",
            "nullable": true
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "comment": {
            "type": "string",
            "nullable": true
          },
          "closedByUserId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "0c3c5924-64ad-4a3e-bc86-d7ebb04e5745"
          },
          "closedAt": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateMonitoringSessionResponse": {
        "type": "object",
        "properties": {
          "monitoringSessionId": {
            "type": "string",
            "format": "uuid",
            "example": "1c61f3a0-ff78-4388-84a0-5e1d283ff5b1"
          }
        },
        "additionalProperties": false
      },
      "UpdatePermissionsCommand": {
        "type": "object",
        "properties": {
          "roleId": {
            "type": "string",
            "format": "uuid",
            "example": "61880996-8da0-4a00-80e7-cb7982fe8556"
          },
          "permissions": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateProjectCommand": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "395de0e2-8565-4288-b087-5c922a1ce6eb"
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "externalReference": {
            "type": "string",
            "nullable": true
          },
          "isActive": {
            "type": "boolean",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateProjectResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "9e6a2e8a-78a2-40ec-a69d-017e90f0b84f"
          }
        },
        "additionalProperties": false
      },
      "UpdateQuestionCommand": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "b53ebca0-9337-4cc8-946c-011421af7e5d"
          },
          "categoryId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "659ad7fd-9063-4652-a91c-c79e6db3796a"
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "weight": {
            "type": "number",
            "format": "double",
            "nullable": true
          },
          "orderRank": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "isActive": {
            "type": "boolean",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateQuestionResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "c3a2cf9d-1fd9-4937-ae28-674a7bba842e"
          }
        },
        "additionalProperties": false
      },
      "UpdateTeamCommand": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "6c67c44c-fcfb-4d25-aa47-a4cddc722a42"
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateTeamResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "fb6568fb-8dc9-4d3c-8022-8847f6b28863"
          }
        },
        "additionalProperties": false
      },
      "UpdateTemplateCommand": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "6d87c196-58b2-4f6c-93f7-8a73f204bd15"
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UpdateTemplateResponse": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "5e593c74-0d02-42a8-a2ed-abc6000c141d"
          }
        },
        "additionalProperties": false
      },
      "UpdateUserCommand": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "1146df6c-0b9e-4b7e-9410-9b006aa34136"
          },
          "firstName": {
            "type": "string",
            "nullable": true
          },
          "lastName": {
            "type": "string",
            "nullable": true
          },
          "phoneNumber": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "externalReference": {
            "type": "string",
            "nullable": true
          },
          "image": {
            "$ref": "#/components/schemas/FileUploadCommand"
          },
          "deleteCurrentImage": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "UpgradeSubscriptionCommand": {
        "required": [
          "extendedExpiryDate",
          "identifier"
        ],
        "type": "object",
        "properties": {
          "identifier": {
            "type": "string",
            "nullable": true
          },
          "extendedExpiryDate": {
            "type": "string",
            "format": "date-time"
          }
        },
        "additionalProperties": false
      },
      "UpgradeSubscriptionResponse": {
        "type": "object",
        "properties": {
          "newValidity": {
            "type": "string",
            "format": "date-time"
          },
          "tenantIdentifier": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UserDetailDto": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "57d43c65-37e4-4fb9-b9d4-4bd528015dbe"
          },
          "userName": {
            "type": "string",
            "nullable": true
          },
          "firstName": {
            "type": "string",
            "nullable": true
          },
          "lastName": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "isActive": {
            "type": "boolean"
          },
          "emailConfirmed": {
            "type": "boolean"
          },
          "phoneNumber": {
            "type": "string",
            "nullable": true
          },
          "imageUrl": {
            "type": "string",
            "format": "uri",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UserDetailDtoPagedList": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/UserDetailDto"
            },
            "nullable": true
          },
          "pageNumber": {
            "type": "integer",
            "format": "int32"
          },
          "pageSize": {
            "type": "integer",
            "format": "int32"
          },
          "totalCount": {
            "type": "integer",
            "format": "int32"
          },
          "totalPages": {
            "type": "integer",
            "format": "int32",
            "readOnly": true
          },
          "hasPrevious": {
            "type": "boolean",
            "readOnly": true
          },
          "hasNext": {
            "type": "boolean",
            "readOnly": true
          }
        },
        "additionalProperties": false
      },
      "UserImportDto": {
        "type": "object",
        "properties": {
          "rowIndex": {
            "type": "integer",
            "format": "int32"
          },
          "firstName": {
            "type": "string",
            "nullable": true
          },
          "lastName": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "password": {
            "type": "string",
            "nullable": true
          },
          "externalReference": {
            "type": "string",
            "nullable": true
          },
          "role": {
            "type": "string",
            "nullable": true
          },
          "team": {
            "type": "string",
            "nullable": true
          },
          "project": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UserImportWithValidationDto": {
        "type": "object",
        "properties": {
          "userPreview": {
            "$ref": "#/components/schemas/UserImportDto"
          },
          "rowIndex": {
            "type": "integer",
            "format": "int32"
          },
          "isValid": {
            "type": "boolean"
          },
          "errors": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ValidationDetail"
            },
            "nullable": true
          },
          "infos": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ValidationDetail"
            },
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UserProjectAsListItemDto": {
        "type": "object",
        "properties": {
          "projectId": {
            "type": "string",
            "format": "uuid",
            "example": "cd04bb60-7f8c-43bb-8c2e-6787b54320c4"
          },
          "ecoachUserId": {
            "type": "string",
            "format": "uuid",
            "example": "3f2f7f2a-b1a7-4e72-a88d-7aae0b3da367"
          }
        },
        "additionalProperties": false
      },
      "UserRoleDetailDto": {
        "type": "object",
        "properties": {
          "roleId": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "example": "4ed2442b-f6ca-477f-a7f8-6d77ff88ff64"
          },
          "roleName": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "enabled": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "UserShortDto": {
        "required": [
          "firstname",
          "id",
          "lastname"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "example": "71eb53a8-df4d-4f46-aeb9-4d2dbb1ffd9c"
          },
          "firstname": {
            "type": "string",
            "nullable": true
          },
          "lastname": {
            "type": "string",
            "nullable": true
          },
          "displayName": {
            "type": "string",
            "nullable": true,
            "readOnly": true
          },
          "imageUrl": {
            "type": "string",
            "format": "uri",
            "nullable": true
          }
        },
        "additionalProperties": false
      },
      "UserTeamAsListItemDto": {
        "type": "object",
        "properties": {
          "userId": {
            "type": "string",
            "format": "uuid",
            "example": "e06e01ce-67de-482c-bc38-2d9d553dd2c1"
          },
          "teamId": {
            "type": "string",
            "format": "uuid",
            "example": "e11f5c89-5cf5-4ef1-8ca7-911599b3d158"
          }
        },
        "additionalProperties": false
      },
      "ValidationDetail": {
        "type": "object",
        "properties": {
          "field": {
            "type": "string",
            "nullable": true
          },
          "message": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": false
      }
    },
    "securitySchemes": {
      "bearerAuth": {
        "type": "http",
        "description": "JWT Authorization header using the Bearer scheme.",
        "scheme": "bearer",
        "bearerFormat": "JWT"
      }
    }
  },
  "security": [
    {
      "bearerAuth": [ ]
    }
  ]
}